@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,36 +1,36 @@
1
- <template>
2
- <div>
3
- <Button
4
- v-if="obj.qualBotao == 'button'"
5
- :key="row.id"
6
- :title="obj.button.title"
7
- :type="obj.button.type"
8
- :size="obj.button.size"
9
- :classIcon="obj.button.classIcon"
10
- :eventName="obj.button.eventName"
11
- :eventData="row"
12
- />
13
- <Dropdown
14
- v-if="obj.qualBotao == 'botaodropdown'"
15
- :title="obj.button.title"
16
- :type="obj.button.type"
17
- :size="obj.button.size"
18
- :classIcon="obj.button.classIcon"
19
- :eventData="row"
20
- :items="obj.button.items"
21
- />
22
- </div>
23
- </template>
24
-
25
- <script>
26
- import Dropdown from "../forms/Dropdown";
27
- import Button from "../forms/Button";
28
- export default {
29
- name: "TableButton",
30
- components: { Button, Dropdown },
31
- props: {
32
- obj: Object,
33
- row: Object,
34
- },
35
- };
36
- </script>
1
+ <template>
2
+ <div>
3
+ <Button
4
+ v-if="obj.qualBotao == 'button'"
5
+ :key="row.id"
6
+ :title="obj.button.title"
7
+ :type="obj.button.type"
8
+ :size="obj.button.size"
9
+ :classIcon="obj.button.classIcon"
10
+ :eventName="obj.button.eventName"
11
+ :eventData="row"
12
+ />
13
+ <Dropdown
14
+ v-if="obj.qualBotao == 'botaodropdown'"
15
+ :title="obj.button.title"
16
+ :type="obj.button.type"
17
+ :size="obj.button.size"
18
+ :classIcon="obj.button.classIcon"
19
+ :eventData="row"
20
+ :items="obj.button.items"
21
+ />
22
+ </div>
23
+ </template>
24
+
25
+ <script>
26
+ import Dropdown from "../forms/Dropdown";
27
+ import Button from "../forms/Button";
28
+ export default {
29
+ name: "TableButton",
30
+ components: { Button, Dropdown },
31
+ props: {
32
+ obj: Object,
33
+ row: Object,
34
+ },
35
+ };
36
+ </script>
@@ -1,47 +1,47 @@
1
- <template>
2
- <div>
3
- <div
4
- class="badge-side-by-side text-center"
5
- v-for="item in totalization"
6
- :key="item.title"
7
- >
8
- <div class="badge-totalization" :class="item.classCss">
9
- <span>{{ item.title }}</span>
10
- <span>{{ item.value }}</span>
11
- </div>
12
- </div>
13
- </div>
14
- </template>
15
-
16
- <script>
17
- export default {
18
- name: "TableTotalization",
19
- props: {
20
- totalization: Array,
21
- },
22
- };
23
- </script>
24
-
25
- <style scoped>
26
- .badge-side-by-side {
27
- display: inline-block;
28
- margin-right: 3px;
29
- margin-bottom: 10px;
30
- }
31
-
32
- .badge-totalization {
33
- border: 1px solid #dbdee0;
34
- padding-left: 5px;
35
- padding-right: 5px;
36
- border-radius: 30px;
37
- font-size: 15px;
38
- }
39
-
40
- .receita {
41
- color: darkblue;
42
- }
43
-
44
- .despesa {
45
- color: red;
46
- }
47
- </style>
1
+ <template>
2
+ <div>
3
+ <div
4
+ class="badge-side-by-side text-center"
5
+ v-for="item in totalization"
6
+ :key="item.title"
7
+ >
8
+ <div class="badge-totalization" :class="item.classCss">
9
+ <span>{{ item.title }}</span>
10
+ <span>{{ item.value }}</span>
11
+ </div>
12
+ </div>
13
+ </div>
14
+ </template>
15
+
16
+ <script>
17
+ export default {
18
+ name: "TableTotalization",
19
+ props: {
20
+ totalization: Array,
21
+ },
22
+ };
23
+ </script>
24
+
25
+ <style scoped>
26
+ .badge-side-by-side {
27
+ display: inline-block;
28
+ margin-right: 3px;
29
+ margin-bottom: 10px;
30
+ }
31
+
32
+ .badge-totalization {
33
+ border: 1px solid #dbdee0;
34
+ padding-left: 5px;
35
+ padding-right: 5px;
36
+ border-radius: 30px;
37
+ font-size: 15px;
38
+ }
39
+
40
+ .receita {
41
+ color: darkblue;
42
+ }
43
+
44
+ .despesa {
45
+ color: red;
46
+ }
47
+ </style>
@@ -0,0 +1,47 @@
1
+ <template>
2
+ <div>
3
+ <Loading :center="false" v-if="loading" />
4
+ <div v-else>
5
+ <ScrollBar :minHeight="200" :maxHeight="300">
6
+ <Timeline
7
+ dateLocale="pt-BR"
8
+ order="desc"
9
+ :uniqueTimeline="true"
10
+ :timeline-items="timelineItems"
11
+ message-when-no-items="Nenhum registro encontrado!"
12
+ />
13
+ </ScrollBar>
14
+ </div>
15
+ </div>
16
+ </template>
17
+ <script>
18
+ import Loading from "@nixweb/nixloc-ui/src/component/shared/Loading.vue";
19
+ import ScrollBar from "@nixweb/nixloc-ui/src/component/layout/ScrollBar.vue";
20
+ import Timeline from "timeline-vuejs";
21
+
22
+ import { mapGetters, mapActions } from "vuex";
23
+
24
+ export default {
25
+ name: "TimeLine",
26
+ props: {
27
+ loading: Boolean,
28
+ timelineItems: Array,
29
+ },
30
+ components: {
31
+ Loading,
32
+ Timeline,
33
+ ScrollBar,
34
+ },
35
+ };
36
+ </script>
37
+ <style>
38
+ .timeline {
39
+ max-width: 1000px !important;
40
+ }
41
+
42
+ .timeline-item .date-item {
43
+ font-size: 14px !important;
44
+ letter-spacing: 1px !important;
45
+ font-weight: normal !important;
46
+ }
47
+ </style>
@@ -1,42 +1,42 @@
1
- <template>
2
- <span class="tip" v-if="title">
3
- <i
4
- class="fal fa-exclamation-circle"
5
- :title="title"
6
- v-b-popover.hover.top="description"
7
- ></i>
8
- </span>
9
- </template>
10
- <script>
11
- import { mapGetters } from "vuex";
12
-
13
- export default {
14
- name: "Tip",
15
- props: {
16
- field: String,
17
- formName: String,
18
- },
19
- data() {
20
- return {
21
- title: "",
22
- description: "",
23
- };
24
- },
25
- mounted() {
26
- let tip = this.tip({ field: this.field, formName: this.formName });
27
- if (tip) {
28
- this.title = tip.title;
29
- this.description = tip.description;
30
- }
31
- },
32
- computed: {
33
- ...mapGetters("generic", ["tip"]),
34
- },
35
- };
36
- </script>
37
-
38
- <style scoped>
39
- .tip {
40
- cursor: pointer;
41
- }
42
- </style>
1
+ <template>
2
+ <span class="tip" v-if="title">
3
+ <i
4
+ class="fal fa-exclamation-circle"
5
+ :title="title"
6
+ v-b-popover.hover.top="description"
7
+ ></i>
8
+ </span>
9
+ </template>
10
+ <script>
11
+ import { mapGetters } from "vuex";
12
+
13
+ export default {
14
+ name: "Tip",
15
+ props: {
16
+ field: String,
17
+ formName: String,
18
+ },
19
+ data() {
20
+ return {
21
+ title: "",
22
+ description: "",
23
+ };
24
+ },
25
+ mounted() {
26
+ let tip = this.tip({ field: this.field, formName: this.formName });
27
+ if (tip) {
28
+ this.title = tip.title;
29
+ this.description = tip.description;
30
+ }
31
+ },
32
+ computed: {
33
+ ...mapGetters("generic", ["tip"]),
34
+ },
35
+ };
36
+ </script>
37
+
38
+ <style scoped>
39
+ .tip {
40
+ cursor: pointer;
41
+ }
42
+ </style>
@@ -1,54 +1,54 @@
1
- <template></template>
2
-
3
- <script>
4
- import { mapState } from "vuex";
5
-
6
- export default {
7
- name: "Notificacao",
8
- computed: {
9
- ...mapState("generic", ["toast"]),
10
- },
11
- watch: {
12
- toast: {
13
- handler(value) {
14
- this.notifica(value);
15
- },
16
- deep: true,
17
- },
18
- },
19
- methods: {
20
- notifica(value) {
21
- if (value.type == "postApi" || value.type == "putApi")
22
- this.$toasted.show("Salvo com sucesso", {
23
- type: "success",
24
- });
25
- if (value.type == "postApiError" || value.type == "putApiErro") {
26
- this.$toasted.show("Ops! Algo deu errado", {
27
- type: "error",
28
- });
29
- this.voltarParaTopo();
30
- }
31
-
32
- if (value.type == "removerTodosApiSucesso")
33
- this.$toasted.show("Removido com sucesso", {
34
- type: "success",
35
- });
36
- if (value.type == "removerTodosApiErro") {
37
- this.$toasted.show("Ops! Algo deu errado", {
38
- type: "error",
39
- });
40
- this.voltarParaTopo();
41
- }
42
- if (value.type == "falhaGenerica") {
43
- this.$toasted.show("Ops! Algo deu errado", {
44
- type: "error",
45
- });
46
- this.voltarParaTopo();
47
- }
48
- },
49
- voltarParaTopo() {
50
- window.scrollTo(0, 0);
51
- },
52
- },
53
- };
54
- </script>
1
+ <template></template>
2
+
3
+ <script>
4
+ import { mapState } from "vuex";
5
+
6
+ export default {
7
+ name: "Notificacao",
8
+ computed: {
9
+ ...mapState("generic", ["toast"]),
10
+ },
11
+ watch: {
12
+ toast: {
13
+ handler(value) {
14
+ this.notifica(value);
15
+ },
16
+ deep: true,
17
+ },
18
+ },
19
+ methods: {
20
+ notifica(value) {
21
+ if (value.type == "postApi" || value.type == "putApi")
22
+ this.$toasted.show("Salvo com sucesso", {
23
+ type: "success",
24
+ });
25
+ if (value.type == "postApiError" || value.type == "putApiErro") {
26
+ this.$toasted.show("Ops! Algo deu errado", {
27
+ type: "error",
28
+ });
29
+ this.voltarParaTopo();
30
+ }
31
+
32
+ if (value.type == "removerTodosApiSucesso")
33
+ this.$toasted.show("Removido com sucesso", {
34
+ type: "success",
35
+ });
36
+ if (value.type == "removerTodosApiErro") {
37
+ this.$toasted.show("Ops! Algo deu errado", {
38
+ type: "error",
39
+ });
40
+ this.voltarParaTopo();
41
+ }
42
+ if (value.type == "falhaGenerica") {
43
+ this.$toasted.show("Ops! Algo deu errado", {
44
+ type: "error",
45
+ });
46
+ this.voltarParaTopo();
47
+ }
48
+ },
49
+ voltarParaTopo() {
50
+ window.scrollTo(0, 0);
51
+ },
52
+ },
53
+ };
54
+ </script>
@@ -1,97 +1,97 @@
1
- <template>
2
- <div>
3
- <div
4
- class="molded-button"
5
- :class="{ fechado: !showFilter, aberto: showFilter }"
6
- v-show="!showFilter"
7
- >
8
- <i class="fas fa-arrow-circle-left"></i>
9
- </div>
10
-
11
- <transition name="slide-fade">
12
- <div
13
- class="molded-button button-recolher"
14
- v-show="showFilter"
15
- @click="showFilter = false"
16
- >
17
- <i class="fas fa-arrow-circle-right"></i>
18
- </div>
19
- </transition>
20
-
21
- <transition name="slide-fade"> </transition>
22
- </div>
23
- </template>
24
-
25
- <script>
26
- import { mapMutations } from "vuex";
27
-
28
- export default {
29
- components: {},
30
- data() {
31
- return {
32
- showFilter: false,
33
- };
34
- },
35
- };
36
- </script>
37
-
38
- <style scoped>
39
- .molded {
40
- background: white;
41
- border-left: solid 1px #dbdee0;
42
- font-size: 13px;
43
- height: 100%;
44
- width: 350px;
45
- right: 0px;
46
- padding: 10px;
47
- position: fixed;
48
- -webkit-box-shadow: 20px 20px 20px 20px rgba(124, 125, 129, 0.53);
49
- box-shadow: 20px 20px 20px 20px rgba(124, 125, 129, 0.53);
50
- z-index: 999;
51
- }
52
-
53
- .molded-button {
54
- font-size: 18px;
55
- background: #ffffff;
56
- border: solid 1px #dbdfe9;
57
- border-radius: 5px;
58
- color: #577696;
59
- height: 40px;
60
- width: 80px;
61
- line-height: 32px;
62
- padding-top: 3px;
63
- padding-right: 35px;
64
- text-align: center;
65
- position: fixed;
66
- top: 160px;
67
- cursor: pointer;
68
- z-index: 999;
69
- }
70
-
71
- .button-recolher {
72
- padding-left: 12px;
73
- padding-right: 418px;
74
- right: -38px;
75
- }
76
-
77
- .aberto {
78
- right: 365px;
79
- }
80
-
81
- .fechado {
82
- right: -38px;
83
- color: #577696;
84
- }
85
-
86
- .slide-fade-enter-active {
87
- transition: all 0.2s ease;
88
- }
89
- .slide-fade-leave-active {
90
- transition: all 0.2s cubic-bezier(1, 0.5, 0.8, 1);
91
- }
92
- .slide-fade-enter,
93
- .slide-fade-leave-to {
94
- transform: translateX(200px);
95
- opacity: 0;
96
- }
97
- </style>
1
+ <template>
2
+ <div>
3
+ <div
4
+ class="molded-button"
5
+ :class="{ fechado: !showFilter, aberto: showFilter }"
6
+ v-show="!showFilter"
7
+ >
8
+ <i class="fas fa-arrow-circle-left"></i>
9
+ </div>
10
+
11
+ <transition name="slide-fade">
12
+ <div
13
+ class="molded-button button-recolher"
14
+ v-show="showFilter"
15
+ @click="showFilter = false"
16
+ >
17
+ <i class="fas fa-arrow-circle-right"></i>
18
+ </div>
19
+ </transition>
20
+
21
+ <transition name="slide-fade"> </transition>
22
+ </div>
23
+ </template>
24
+
25
+ <script>
26
+ import { mapMutations } from "vuex";
27
+
28
+ export default {
29
+ components: {},
30
+ data() {
31
+ return {
32
+ showFilter: false,
33
+ };
34
+ },
35
+ };
36
+ </script>
37
+
38
+ <style scoped>
39
+ .molded {
40
+ background: white;
41
+ border-left: solid 1px #dbdee0;
42
+ font-size: 13px;
43
+ height: 100%;
44
+ width: 350px;
45
+ right: 0px;
46
+ padding: 10px;
47
+ position: fixed;
48
+ -webkit-box-shadow: 20px 20px 20px 20px rgba(124, 125, 129, 0.53);
49
+ box-shadow: 20px 20px 20px 20px rgba(124, 125, 129, 0.53);
50
+ z-index: 999;
51
+ }
52
+
53
+ .molded-button {
54
+ font-size: 18px;
55
+ background: #ffffff;
56
+ border: solid 1px #dbdfe9;
57
+ border-radius: 5px;
58
+ color: #577696;
59
+ height: 40px;
60
+ width: 80px;
61
+ line-height: 32px;
62
+ padding-top: 3px;
63
+ padding-right: 35px;
64
+ text-align: center;
65
+ position: fixed;
66
+ top: 160px;
67
+ cursor: pointer;
68
+ z-index: 999;
69
+ }
70
+
71
+ .button-recolher {
72
+ padding-left: 12px;
73
+ padding-right: 418px;
74
+ right: -38px;
75
+ }
76
+
77
+ .aberto {
78
+ right: 365px;
79
+ }
80
+
81
+ .fechado {
82
+ right: -38px;
83
+ color: #577696;
84
+ }
85
+
86
+ .slide-fade-enter-active {
87
+ transition: all 0.2s ease;
88
+ }
89
+ .slide-fade-leave-active {
90
+ transition: all 0.2s cubic-bezier(1, 0.5, 0.8, 1);
91
+ }
92
+ .slide-fade-enter,
93
+ .slide-fade-leave-to {
94
+ transform: translateX(200px);
95
+ opacity: 0;
96
+ }
97
+ </style>