@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
@@ -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>