@nixweb/nixloc-ui 0.0.128 → 0.0.130

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 (87) hide show
  1. package/package.json +87 -79
  2. package/src/App.vue +13 -13
  3. package/src/component/forms/Button.vue +178 -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 +52 -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/DocumentEditor.vue +19 -11
  47. package/src/component/shared/DocumentPreview.vue +5 -4
  48. package/src/component/shared/ExportPDF.vue +116 -116
  49. package/src/component/shared/FullCalendar.vue +168 -0
  50. package/src/component/shared/HorizontalFilter.vue +59 -59
  51. package/src/component/shared/Loading.vue +107 -107
  52. package/src/component/shared/LoadingMoreButton.vue +23 -23
  53. package/src/component/shared/Messages.vue +81 -81
  54. package/src/component/shared/PDFViewer.vue +22 -22
  55. package/src/component/shared/Pagination.vue +52 -52
  56. package/src/component/shared/ParameterLegend.vue +24 -17
  57. package/src/component/shared/ProgressBar.vue +22 -22
  58. package/src/component/shared/QueryButton.vue +66 -66
  59. package/src/component/shared/SaveCancel.vue +3 -2
  60. package/src/component/shared/Search.vue +154 -154
  61. package/src/component/shared/Table.vue +163 -163
  62. package/src/component/shared/TableButton.vue +36 -36
  63. package/src/component/shared/TableTotalization.vue +47 -47
  64. package/src/component/shared/TimeLine.vue +47 -0
  65. package/src/component/shared/Tip.vue +42 -42
  66. package/src/component/shared/Toast.vue +54 -54
  67. package/src/component/shared/VerticalFilter.vue +97 -97
  68. package/src/component/shared/query-builder/AddRule.vue +181 -181
  69. package/src/component/shared/query-builder/DynamicComponentList.vue +73 -73
  70. package/src/component/shared/query-builder/QueryBuilder.vue +69 -69
  71. package/src/component/shared/query-builder/utilities.js +21 -21
  72. package/src/component/template/ListViewWithDataHandler.vue +260 -260
  73. package/src/component/template/ViewTemplateConfiguration.vue +64 -64
  74. package/src/component/template/ViewTemplateDocumentView.vue +7 -2
  75. package/src/component/template/ViewTemplateReportList.vue +1 -1
  76. package/src/component/template/ViewTemplateReportPreview.vue +0 -1
  77. package/src/component/template/ViewTemplateWithSalveCancel.vue +32 -32
  78. package/src/component/template/ViewTemplateWithTable.vue +56 -56
  79. package/src/config/axios.js +9 -9
  80. package/src/config/dicas.js +14 -14
  81. package/src/config/router.js +13 -13
  82. package/src/config/token.js +14 -14
  83. package/src/main.js +23 -23
  84. package/src/store/modules/generic.js +563 -512
  85. package/src/store/modules/user.js +3 -0
  86. package/src/store/modules/validation.js +38 -38
  87. package/src/store/store.js +13 -13
@@ -0,0 +1,130 @@
1
+
2
+ <template>
3
+ <div>
4
+ <div v-if="tasks.length > 0">
5
+ <ButtonGroup :initialOption="initialOption" :options="options" />
6
+ <slot></slot>
7
+ <div class="gantt">
8
+ <svg ref="gantt" />
9
+ </div>
10
+ </div>
11
+ <div v-else>
12
+ Nenhum registro encontrado!
13
+ </div>
14
+ </div>
15
+ </template>
16
+
17
+ <script>
18
+ import ButtonGroup from "@nixweb/nixloc-ui/src/component/forms/ButtonGroup";
19
+
20
+ import { mapGetters } from "vuex";
21
+
22
+ export default {
23
+ name: "FrappeGantt",
24
+ components: {
25
+ ButtonGroup,
26
+ },
27
+ props: {
28
+ initialOption: String,
29
+ options: Array,
30
+ tasks: Array,
31
+ },
32
+ data() {
33
+ return {
34
+ gantt: {},
35
+ mode: "day",
36
+ viewMode: "",
37
+ };
38
+ },
39
+ mounted() {
40
+ this.setupGanttChart();
41
+ },
42
+ computed: {
43
+ ...mapGetters("generic", ["event"]),
44
+ },
45
+ methods: {
46
+ setupGanttChart() {
47
+ this.gantt = new Gantt(this.$refs.gantt, this.tasks, {
48
+ language: "ptBr",
49
+ date_format: "YYYY-MM-DD",
50
+ bar_corner_radius: 10,
51
+ on_click: (task) => {
52
+ this.$emit("task-updated", task);
53
+ },
54
+ on_date_change: (task, start, end) => {
55
+ this.$emit("task-date-updated", { task, start, end });
56
+ },
57
+ on_progress_change: (task, progress) => {
58
+ this.$emit("task-progress-updated", { task, progress });
59
+ },
60
+ //I doubt you will ever need this as the developer already knows what view mode they set.
61
+ on_view_change: (mode) => {
62
+ this.$emit("view-mode-updated", mode);
63
+ },
64
+ custom_popup_html: function (task) {
65
+ return `
66
+ <div class="details-container">
67
+ <p class="title-details">Nº Locação: ${task.number}</p>
68
+ <p class="title-details">${task.customer}</p>
69
+ <p class="title-details">Quantidade: ${task.name}</p>
70
+ <p class="title-details">${task.periodRentName}</p>
71
+ </div>
72
+ `;
73
+ },
74
+ });
75
+ this.updateTasks();
76
+ this.updateViewMode();
77
+ },
78
+
79
+ updateViewMode() {
80
+ this.gantt.change_view_mode(
81
+ this.viewMode[0].toUpperCase() + this.viewMode.substring(1)
82
+ );
83
+ },
84
+ updateTasks() {
85
+ this.gantt.refresh(this.tasks);
86
+ },
87
+ demoViewMode(viewMode) {
88
+ this.mode = viewMode;
89
+ this.viewMode = viewMode;
90
+ },
91
+ },
92
+ watch: {
93
+ viewMode() {
94
+ this.updateViewMode();
95
+ },
96
+ tasks() {
97
+ this.updateTasks();
98
+ },
99
+ event: {
100
+ handler(event) {
101
+ if (event.name == "demoViewMode") {
102
+ if (event.data.title == "Dia") this.demoViewMode("day");
103
+ if (event.data.title == "Semana") this.demoViewMode("week");
104
+ if (event.data.title == "Mês") this.demoViewMode("month");
105
+ }
106
+ },
107
+ deep: true,
108
+ },
109
+ },
110
+ };
111
+ </script>
112
+ <style>
113
+ .gantt {
114
+ margin-top: 10px;
115
+ }
116
+
117
+ .details-container {
118
+ background-color: white;
119
+ width: 400px;
120
+ padding: 10px;
121
+ border: 1px solid #eaedf3;
122
+ color: black;
123
+ box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 3%);
124
+ }
125
+
126
+ .title-details {
127
+ font-size: 14px;
128
+ }
129
+ </style>
130
+
@@ -1,38 +1,38 @@
1
- <template>
2
- <div>
3
- <div class="top" :style="'background-color:' + backgroundColor">
4
- <div class="side-by-side">
5
- <slot></slot>
6
- </div>
7
- </div>
8
- <br />
9
- </div>
10
- </template>
11
-
12
- <script>
13
- import { mapState, mapMutations } from "vuex";
14
-
15
- export default {
16
- name: "Top",
17
- props: {
18
- backgroundColor: {
19
- type: String,
20
- default: "#4680A5",
21
- },
22
- },
23
- };
24
- </script>
25
-
26
- <style scoped>
27
- .top {
28
- border-radius: 0px 0px 0px 0px;
29
- height: 50px;
30
- width: 100%;
31
- position: fixed;
32
- top: 0;
33
- left: 100px;
34
- z-index: 20;
35
- box-shadow: 0px 10px 30px -6px rgb(0 0 0 / 10%);
36
- border-bottom: 0px solid #eff0f1;
37
- }
38
- </style>
1
+ <template>
2
+ <div>
3
+ <div class="top" :style="'background-color:' + backgroundColor">
4
+ <div class="side-by-side">
5
+ <slot></slot>
6
+ </div>
7
+ </div>
8
+ <br />
9
+ </div>
10
+ </template>
11
+
12
+ <script>
13
+ import { mapState, mapMutations } from "vuex";
14
+
15
+ export default {
16
+ name: "Top",
17
+ props: {
18
+ backgroundColor: {
19
+ type: String,
20
+ default: "#4680A5",
21
+ },
22
+ },
23
+ };
24
+ </script>
25
+
26
+ <style scoped>
27
+ .top {
28
+ border-radius: 0px 0px 0px 0px;
29
+ height: 50px;
30
+ width: 100%;
31
+ position: fixed;
32
+ top: 0;
33
+ left: 100px;
34
+ z-index: 20;
35
+ box-shadow: 0px 10px 30px -6px rgb(0 0 0 / 10%);
36
+ border-bottom: 0px solid #eff0f1;
37
+ }
38
+ </style>
@@ -0,0 +1,48 @@
1
+ <template>
2
+ <div>
3
+ <div
4
+ v-for="icon in icons"
5
+ class="molded side-by-side"
6
+ @click="executeEvent(icon.eventName)"
7
+ v-b-tooltip.hover
8
+ :title="icon.tooltip"
9
+ >
10
+ <div class="icon-molded"><i :class="icon.icon"></i></div>
11
+ </div>
12
+ </div>
13
+ </template>
14
+
15
+ <script>
16
+ import { mapMutations } from "vuex";
17
+
18
+ export default {
19
+ name: "IconMolded",
20
+ props: {
21
+ icons: Array,
22
+ },
23
+ methods: {
24
+ ...mapMutations("generic", ["addEvent"]),
25
+ executeEvent(eventName) {
26
+ this.addEvent({
27
+ name: eventName,
28
+ });
29
+ },
30
+ },
31
+ };
32
+ </script>
33
+
34
+ <style scoped>
35
+ .molded {
36
+ height: 38px;
37
+ width: 38px;
38
+ margin-left: 10px;
39
+ margin-top: 4px;
40
+ cursor: pointer;
41
+ }
42
+
43
+ .icon-molded {
44
+ font-size: 20px;
45
+ margin-left: 10px;
46
+ color: white;
47
+ }
48
+ </style>
@@ -1,27 +1,27 @@
1
- <template>
2
- <div>
3
- <b-row>
4
- <b-col sm="12" class="text-center">
5
- <vue-loading
6
- type="bubbles"
7
- color="#577696"
8
- :size="{ width: '80px', height: '80px' }"
9
- ></vue-loading>
10
- </b-col>
11
- <b-col sm="12" class="text-center">
12
- <div class="message">Por favor aguarde, estamos trabalhando...</div>
13
- </b-col>
14
- </b-row>
15
- </div>
16
- </template>
17
- <script>
18
- export default {
19
- name: "LoadingFullPage",
20
- };
21
- </script>
22
- <style scoped>
23
- .message {
24
- font-size: 15px;
25
- margin-top: 5px;
26
- }
27
- </style>
1
+ <template>
2
+ <div>
3
+ <b-row>
4
+ <b-col sm="12" class="text-center">
5
+ <vue-loading
6
+ type="bubbles"
7
+ color="#577696"
8
+ :size="{ width: '80px', height: '80px' }"
9
+ ></vue-loading>
10
+ </b-col>
11
+ <b-col sm="12" class="text-center">
12
+ <div class="message">Por favor aguarde, estamos trabalhando...</div>
13
+ </b-col>
14
+ </b-row>
15
+ </div>
16
+ </template>
17
+ <script>
18
+ export default {
19
+ name: "LoadingFullPage",
20
+ };
21
+ </script>
22
+ <style scoped>
23
+ .message {
24
+ font-size: 15px;
25
+ margin-top: 5px;
26
+ }
27
+ </style>