@nixweb/nixloc-ui 1.19.0 → 1.20.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 (110) hide show
  1. package/package.json +1 -1
  2. package/src/component/forms/ButtonFilter.vue +104 -104
  3. package/src/component/forms/ButtonGroup.vue +66 -66
  4. package/src/component/forms/ButtonGroupInline.vue +210 -210
  5. package/src/component/forms/ButtonSub.vue +97 -97
  6. package/src/component/forms/ButtonToggle.vue +76 -76
  7. package/src/component/forms/DateYearMonth.vue +192 -192
  8. package/src/component/forms/ImageUpload.vue +214 -214
  9. package/src/component/forms/IncrementDecrement.vue +151 -151
  10. package/src/component/forms/InputAddressGoogle.vue +171 -171
  11. package/src/component/forms/InputCallToAction.vue +135 -135
  12. package/src/component/forms/InputDecimalDiscount.vue +146 -146
  13. package/src/component/forms/InputTag.vue +124 -124
  14. package/src/component/forms/InputTextEdit.vue +69 -69
  15. package/src/component/forms/InputWhatsApp.vue +47 -47
  16. package/src/component/forms/SideBar.vue +99 -99
  17. package/src/component/forms/Toggle.vue +72 -72
  18. package/src/component/layout/Account.vue +131 -131
  19. package/src/component/layout/AnimatedPhrase.vue +68 -68
  20. package/src/component/layout/BarFloating.vue +67 -67
  21. package/src/component/layout/BottomActionsBar.vue +205 -205
  22. package/src/component/layout/ColorPicker.vue +175 -175
  23. package/src/component/layout/Gantt.vue +128 -128
  24. package/src/component/layout/HideShow.vue +61 -61
  25. package/src/component/layout/IconMolded.vue +58 -58
  26. package/src/component/layout/IconPicker.vue +161 -161
  27. package/src/component/layout/NewAccount.vue +136 -136
  28. package/src/component/layout/NewHeader.vue +59 -59
  29. package/src/component/layout/NewIconMolded.vue +70 -70
  30. package/src/component/layout/NewMenu.vue +472 -472
  31. package/src/component/layout/Tab.vue +259 -259
  32. package/src/component/layout/Tag.vue +97 -97
  33. package/src/component/layout/Tooltip.vue +155 -155
  34. package/src/component/layout/Zoom.vue +111 -111
  35. package/src/component/rental/DisplayCalculatePeriod.vue +48 -48
  36. package/src/component/rental/DisplayPeriodRent.vue +55 -55
  37. package/src/component/rental/DisplayTotalization.vue +86 -86
  38. package/src/component/report/Fields.vue +108 -108
  39. package/src/component/report/Report.vue +377 -377
  40. package/src/component/report/ReportTable.vue +111 -111
  41. package/src/component/report/Totalization.vue +33 -33
  42. package/src/component/shared/CodeEditor.vue +128 -128
  43. package/src/component/shared/Confirmation.vue +74 -74
  44. package/src/component/shared/DocumentEditor.vue +99 -99
  45. package/src/component/shared/DocumentPreview.vue +105 -105
  46. package/src/component/shared/DocumentPublic.vue +33 -33
  47. package/src/component/shared/ExportExcel.vue +56 -56
  48. package/src/component/shared/FullCalendar.vue +175 -175
  49. package/src/component/shared/HeaderReport.vue +47 -47
  50. package/src/component/shared/ListNotifications.vue +70 -70
  51. package/src/component/shared/Loading.vue +1 -4
  52. package/src/component/shared/LoadingCard.vue +64 -64
  53. package/src/component/shared/ParameterLegend.vue +169 -169
  54. package/src/component/shared/Report.vue +250 -250
  55. package/src/component/shared/SaveCancel.vue +99 -117
  56. package/src/component/shared/SelectOption.vue +162 -162
  57. package/src/component/shared/TableDraggable.vue +117 -117
  58. package/src/component/shared/TableImport.vue +93 -93
  59. package/src/component/shared/TableItem.vue +228 -228
  60. package/src/component/shared/TableTotalPerPage.vue +114 -114
  61. package/src/component/shared/TableTotalRecords.vue +44 -44
  62. package/src/component/shared/TimeLine.vue +41 -41
  63. package/src/component/shared/Timer.vue +77 -77
  64. package/src/component/shared/ToggleTheme.vue +127 -127
  65. package/src/component/shared/TotalizationReport.vue +86 -86
  66. package/src/component/shared/actions/ActionButtons.vue +53 -53
  67. package/src/component/shared/actions/ActionErrorContent.vue +103 -103
  68. package/src/component/shared/actions/ActionFooter.vue +93 -99
  69. package/src/component/shared/actions/ActionHeader.vue +110 -110
  70. package/src/component/shared/actions/ActionItemList.vue +143 -143
  71. package/src/component/shared/actions/ActionsOptions.vue +209 -209
  72. package/src/component/shared/actions/ActionsSelected.vue +262 -262
  73. package/src/component/shared/automation/ActivitiesList.vue +43 -43
  74. package/src/component/shared/automation/AddRule.vue +60 -60
  75. package/src/component/shared/automation/AutomationBuilder.vue +26 -26
  76. package/src/component/shared/automation/DynamicComponentList.vue +85 -85
  77. package/src/component/shared/automation/SelectRule.vue +97 -97
  78. package/src/component/shared/automation/components/BillingByRent.vue +97 -97
  79. package/src/component/shared/automation/components/SendEmail.vue +93 -93
  80. package/src/component/shared/file-manager/FileManager.vue +390 -390
  81. package/src/component/shared/filter-builder/FilterBuilder.vue +220 -220
  82. package/src/component/shared/filter-builder/FilterQuery.vue +95 -95
  83. package/src/component/shared/query-builder/ConvertToOdata.js +86 -86
  84. package/src/component/shared/query-builder/DynamicComponent.vue +161 -161
  85. package/src/component/shared/query-builder/Fields.vue +93 -93
  86. package/src/component/shared/query-builder/Rules.vue +68 -68
  87. package/src/component/shared/query-builder/SelectRule.vue +97 -97
  88. package/src/component/shared/query-builder/Tags.vue +59 -59
  89. package/src/component/signature/Payment.vue +160 -160
  90. package/src/component/signature/Warning.vue +75 -75
  91. package/src/component/template/ReportCreateUpdate.vue +110 -110
  92. package/src/component/template/ViewTemplateDocumentView.vue +213 -213
  93. package/src/component/template/ViewTemplateImportFile.vue +347 -347
  94. package/src/component/template/ViewTemplateReportList.vue +240 -240
  95. package/src/component/template/ViewTemplateReportPreview.vue +521 -521
  96. package/src/component/template/ViewTemplateSelectOption.vue +46 -46
  97. package/src/component/template/model/Report.js +5 -5
  98. package/src/component/training/Course.vue +343 -343
  99. package/src/component/training/CourseView.vue +198 -198
  100. package/src/component/value-objects/Address.js +10 -10
  101. package/src/component/value-objects/Address.vue +173 -173
  102. package/src/component/value-objects/Contact.js +6 -6
  103. package/src/component/value-objects/Contact.vue +106 -106
  104. package/src/component/value-objects/Person.js +10 -10
  105. package/src/component/value-objects/Person.vue +130 -130
  106. package/src/store/modules/automation.js +30 -30
  107. package/src/store/modules/generic.js +15 -1
  108. package/src/store/modules/report.js +277 -277
  109. package/src/store/modules/user.js +69 -69
  110. package/src/store/modules/util.js +25 -25
@@ -1,117 +1,99 @@
1
- <template>
2
- <div>
3
- <FixedBar
4
- :position="positionFixedBar"
5
- backgroundColor="#FAFAFC"
6
- v-show="formDirty && !modal.open && on || showFixed"
7
- >
8
- <div
9
- :class="{ collapsed: menuCollapsed, notCollapsed: !menuCollapsed }"
10
- :style="'margin-bottom:' + marginBottom + 'px'"
11
- >
12
- <Button
13
- _key="cancelSaveCancel"
14
- eventName="cancelSaveCancel"
15
- title="Cancelar"
16
- type="danger"
17
- size="small"
18
- :clicked="cancel"
19
- />
20
- <Button
21
- _key="saveSaveCancel"
22
- :eventName="eventName"
23
- classIcon="fa-solid fa-floppy-disk"
24
- title="Salvar"
25
- type="success"
26
- :disabled="!isFormValid(formName)"
27
- size="medium"
28
- />
29
- <slot></slot>
30
- </div>
31
- </FixedBar>
32
- </div>
33
- </template>
34
- <script>
35
- import FixedBar from "@nixweb/nixloc-ui/src/component/layout/FixedBar.vue";
36
- import Button from "@nixweb/nixloc-ui/src/component/forms/Button";
37
-
38
- import { mapState, mapMutations, mapGetters } from "vuex";
39
-
40
- export default {
41
- name: "SaveCancel",
42
- components: { FixedBar, Button },
43
- props: {
44
- formName: String,
45
- showFixed: {
46
- type: Boolean,
47
- default: false,
48
- },
49
- eventName: {
50
- type: String,
51
- default: "saveSaveCancel",
52
- },
53
- positionFixedBar: {
54
- type: String,
55
- default: "footer",
56
- },
57
- marginBottom: {
58
- type: Number,
59
- default: 0,
60
- },
61
- },
62
- data() {
63
- return {
64
- id: this.$route.params.id,
65
- on: false,
66
- };
67
- },
68
- mounted() {
69
- if (!this.id) {
70
- let self = this;
71
- setTimeout(function () {
72
- self.resetValidation(this.formName);
73
- self.updateFormDirty(false);
74
- self.removeLoading(["panel"]);
75
- }, 350);
76
- }
77
-
78
- let self = this;
79
- setTimeout(function () {
80
- self.updateFormDirty(false);
81
- self.on = true;
82
- }, 1000);
83
- },
84
- computed: {
85
- ...mapState("validation", ["formDirty"]),
86
- ...mapState("generic", ["loading"]),
87
- ...mapGetters("generic", ["event"]),
88
- ...mapGetters("validation", ["isFormValid"]),
89
- ...mapState("generic", ["modal", "menuCollapsed"]),
90
- },
91
- methods: {
92
- ...mapMutations("validation", ["updateFormDirty", "resetValidation"]),
93
- ...mapMutations("generic", ["removeLoading", "hideSideBar"]),
94
- cancel() {
95
- this.updateFormDirty(false);
96
- this.removeLoading(["cancelSaveCancel"]);
97
- this.hideSideBar();
98
- },
99
- },
100
- watch: {
101
- "modal.open": function () {
102
- this.updateFormDirty(false);
103
- },
104
- },
105
- };
106
- </script>
107
- <style scoped>
108
- .collapsed {
109
- margin-left: 0px;
110
- transition: all 0.4s ease;
111
- }
112
-
113
- .notCollapsed {
114
- margin-left: 130px;
115
- transition: all 0.4s ease;
116
- }
117
- </style>
1
+ <template>
2
+ <div>
3
+ <FixedBar :position="positionFixedBar" backgroundColor="#FAFAFC"
4
+ v-show="formDirty && !modal.open && on || showFixed">
5
+ <div :class="{ collapsed: menuCollapsed, notCollapsed: !menuCollapsed }"
6
+ :style="'margin-bottom:' + marginBottom + 'px'">
7
+ <Button _key="cancelSaveCancel" eventName="cancelSaveCancel" title="Cancelar" type="danger" size="small"
8
+ :clicked="cancel" />
9
+ <Button _key="saveSaveCancel" :eventName="eventName" classIcon="fa-solid fa-floppy-disk" title="Salvar"
10
+ type="success" :disabled="!isFormValid(formName)" size="medium" />
11
+ <slot></slot>
12
+ </div>
13
+ </FixedBar>
14
+ </div>
15
+ </template>
16
+ <script>
17
+ import FixedBar from "@nixweb/nixloc-ui/src/component/layout/FixedBar.vue";
18
+ import Button from "@nixweb/nixloc-ui/src/component/forms/Button";
19
+
20
+ import { mapState, mapMutations, mapGetters } from "vuex";
21
+
22
+ export default {
23
+ name: "SaveCancel",
24
+ components: { FixedBar, Button },
25
+ props: {
26
+ formName: String,
27
+ showFixed: {
28
+ type: Boolean,
29
+ default: false,
30
+ },
31
+ eventName: {
32
+ type: String,
33
+ default: "saveSaveCancel",
34
+ },
35
+ positionFixedBar: {
36
+ type: String,
37
+ default: "footer",
38
+ },
39
+ marginBottom: {
40
+ type: Number,
41
+ default: 0,
42
+ },
43
+ },
44
+ data() {
45
+ return {
46
+ id: this.$route.params.id,
47
+ on: false,
48
+ };
49
+ },
50
+ mounted() {
51
+ if (!this.id) {
52
+ let self = this;
53
+ setTimeout(function () {
54
+ self.resetValidation(this.formName);
55
+ self.updateFormDirty(false);
56
+ self.removeLoading(["panel"]);
57
+ }, 350);
58
+ }
59
+
60
+ let self = this;
61
+ setTimeout(function () {
62
+ self.updateFormDirty(false);
63
+ self.on = true;
64
+ }, 1000);
65
+ },
66
+ computed: {
67
+ ...mapState("validation", ["formDirty"]),
68
+ ...mapState("generic", ["loading"]),
69
+ ...mapGetters("generic", ["event"]),
70
+ ...mapGetters("validation", ["isFormValid"]),
71
+ ...mapState("generic", ["modal", "menuCollapsed"]),
72
+ },
73
+ methods: {
74
+ ...mapMutations("validation", ["updateFormDirty", "resetValidation"]),
75
+ ...mapMutations("generic", ["removeLoading", "hideSideBar"]),
76
+ cancel() {
77
+ this.updateFormDirty(false);
78
+ this.removeLoading(["cancelSaveCancel"]);
79
+ this.hideSideBar();
80
+ },
81
+ },
82
+ watch: {
83
+ "modal.open": function () {
84
+ this.updateFormDirty(false);
85
+ },
86
+ },
87
+ };
88
+ </script>
89
+ <style scoped>
90
+ .collapsed {
91
+ margin-left: 0px;
92
+ transition: all 0.4s ease;
93
+ }
94
+
95
+ .notCollapsed {
96
+ margin-left: 130px;
97
+ transition: all 0.4s ease;
98
+ }
99
+ </style>
@@ -1,162 +1,162 @@
1
- <template>
2
- <div class="div-main" :class="alignment">
3
- <div class="title" :style="'font-size:' + titleSize + 'px;'">
4
- {{ title }}
5
- </div>
6
- <div class="alignment" v-for="option in options">
7
- <div class="select-option" :style="'width:' + width + 'px; height:' + height + 'px'"
8
- :class="{ 'selected-option': option.value == selected }" @click="optionSelected(option.value)">
9
- <div class="text-center">
10
- <span class="title" :class="{ disabled: disabled }" :style="'font-size:' + option.titleSize + 'px;'">
11
- <i v-if="size === 'small'" :class="option.icon" :style="option.iconStyle"></i>
12
- {{ option.title }}
13
- </span>
14
- <div v-if="size === 'medium'" class="icon div-icon" :style="'font-size:' + option.iconSize + 'px;'">
15
- <i :class="option.icon" :style="option.iconStyle"></i>
16
- </div>
17
- </div>
18
- <div v-if="option.tipId">
19
- <i v-b-tooltip.hover :title="tip(option.tipId)" class="fas fa-question-circle"></i>
20
- </div>
21
- </div>
22
- </div>
23
- <div class="div-btn" v-if="showButtonNext">
24
- <Button _key="btnClickedNext" type="info" title="Avançar" :disabled="selected == null"
25
- :classIcon="buttonClassIcon" :size="buttonSize" :clicked="execute" />
26
- </div>
27
- </div>
28
- </template>
29
- <script>
30
- import Button from "@nixweb/nixloc-ui/src/component/forms/Button";
31
-
32
- import { mapMutations, mapGetters } from "vuex";
33
-
34
- export default {
35
- name: "SelectOption",
36
- components: {
37
- Button,
38
- },
39
- props: {
40
- title: String,
41
- titleSize: Number,
42
- fieldTarget: String,
43
- buttonSize: String,
44
- buttonClassIcon: String,
45
- showButtonNext: { type: Boolean, default: true },
46
- size: { type: String, default: "medium" },
47
- alignment: { type: String, default: "text-center" },
48
- disabled: Boolean,
49
- width: Number,
50
- height: Number,
51
- options: Array,
52
- initialValue: Number,
53
- value: Number,
54
- clickedNext: Function,
55
- },
56
- data() {
57
- return {
58
- selected: null,
59
- };
60
- },
61
- created() {
62
- this.selected = this.initialValue;
63
- },
64
- methods: {
65
- ...mapMutations("generic", ["addFilter", "removeLoading"]),
66
- optionSelected(value) {
67
- if (!this.disabled) {
68
- this.selected = value;
69
- this.$emit("input", value);
70
- this.executeFilter(value);
71
- }
72
- },
73
- executeFilter(value) {
74
- if (this.fieldTarget) {
75
- let obj = { fieldTarget: this.fieldTarget, value: value };
76
- this.addFilter(obj);
77
- }
78
- },
79
- execute() {
80
- let self = this;
81
- setTimeout(function () {
82
- self.removeLoading(["btnClickedNext"]);
83
- if (self.clickedNext) self.clickedNext();
84
- }, 350);
85
- },
86
- },
87
- computed: {
88
- ...mapGetters("generic", ["tip"]),
89
- },
90
- watch: {
91
- value: {
92
- handler(value) {
93
- this.selected = value;
94
- },
95
- deep: true,
96
- },
97
- }
98
- };
99
- </script>
100
- <style scoped>
101
- .div-main {
102
-
103
- padding: 0px;
104
- }
105
-
106
- .select-option {
107
- cursor: pointer;
108
- border: 1px solid #e5e4e8;
109
- background-color: white;
110
- border-radius: 8px;
111
- padding-left: 10px;
112
- padding-right: 7px;
113
- margin-right: 5px;
114
- margin-bottom: 5px;
115
- font-size: 16px;
116
- font-weight: normal;
117
- display: flex;
118
- align-items: center;
119
- justify-content: center;
120
- box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 2%);
121
- }
122
-
123
- .select-option:hover {
124
- background-color: white;
125
- }
126
-
127
- .alignment {
128
- display: inline-block;
129
- }
130
-
131
- .selected-option {
132
- background-color: white;
133
- border-color: #4680a5;
134
- }
135
-
136
- .icon {
137
- margin-top: 5px;
138
- color: #577696;
139
- }
140
-
141
- .text {
142
- font-size: 16px;
143
- margin-top: 8px;
144
- }
145
-
146
- .title {
147
- margin-bottom: 10px;
148
- }
149
-
150
- .div-btn {
151
- margin-top: 10px;
152
- }
153
-
154
- .disabled {
155
- color: grey;
156
- opacity: 0.5;
157
- }
158
-
159
- .div-icon {
160
- margin-right: 10px;
161
- }
162
- </style>
1
+ <template>
2
+ <div class="div-main" :class="alignment">
3
+ <div class="title" :style="'font-size:' + titleSize + 'px;'">
4
+ {{ title }}
5
+ </div>
6
+ <div class="alignment" v-for="option in options">
7
+ <div class="select-option" :style="'width:' + width + 'px; height:' + height + 'px'"
8
+ :class="{ 'selected-option': option.value == selected }" @click="optionSelected(option.value)">
9
+ <div class="text-center">
10
+ <span class="title" :class="{ disabled: disabled }" :style="'font-size:' + option.titleSize + 'px;'">
11
+ <i v-if="size === 'small'" :class="option.icon" :style="option.iconStyle"></i>
12
+ {{ option.title }}
13
+ </span>
14
+ <div v-if="size === 'medium'" class="icon div-icon" :style="'font-size:' + option.iconSize + 'px;'">
15
+ <i :class="option.icon" :style="option.iconStyle"></i>
16
+ </div>
17
+ </div>
18
+ <div v-if="option.tipId">
19
+ <i v-b-tooltip.hover :title="tip(option.tipId)" class="fas fa-question-circle"></i>
20
+ </div>
21
+ </div>
22
+ </div>
23
+ <div class="div-btn" v-if="showButtonNext">
24
+ <Button _key="btnClickedNext" type="info" title="Avançar" :disabled="selected == null"
25
+ :classIcon="buttonClassIcon" :size="buttonSize" :clicked="execute" />
26
+ </div>
27
+ </div>
28
+ </template>
29
+ <script>
30
+ import Button from "@nixweb/nixloc-ui/src/component/forms/Button";
31
+
32
+ import { mapMutations, mapGetters } from "vuex";
33
+
34
+ export default {
35
+ name: "SelectOption",
36
+ components: {
37
+ Button,
38
+ },
39
+ props: {
40
+ title: String,
41
+ titleSize: Number,
42
+ fieldTarget: String,
43
+ buttonSize: String,
44
+ buttonClassIcon: String,
45
+ showButtonNext: { type: Boolean, default: true },
46
+ size: { type: String, default: "medium" },
47
+ alignment: { type: String, default: "text-center" },
48
+ disabled: Boolean,
49
+ width: Number,
50
+ height: Number,
51
+ options: Array,
52
+ initialValue: Number,
53
+ value: Number,
54
+ clickedNext: Function,
55
+ },
56
+ data() {
57
+ return {
58
+ selected: null,
59
+ };
60
+ },
61
+ created() {
62
+ this.selected = this.initialValue;
63
+ },
64
+ methods: {
65
+ ...mapMutations("generic", ["addFilter", "removeLoading"]),
66
+ optionSelected(value) {
67
+ if (!this.disabled) {
68
+ this.selected = value;
69
+ this.$emit("input", value);
70
+ this.executeFilter(value);
71
+ }
72
+ },
73
+ executeFilter(value) {
74
+ if (this.fieldTarget) {
75
+ let obj = { fieldTarget: this.fieldTarget, value: value };
76
+ this.addFilter(obj);
77
+ }
78
+ },
79
+ execute() {
80
+ let self = this;
81
+ setTimeout(function () {
82
+ self.removeLoading(["btnClickedNext"]);
83
+ if (self.clickedNext) self.clickedNext();
84
+ }, 350);
85
+ },
86
+ },
87
+ computed: {
88
+ ...mapGetters("generic", ["tip"]),
89
+ },
90
+ watch: {
91
+ value: {
92
+ handler(value) {
93
+ this.selected = value;
94
+ },
95
+ deep: true,
96
+ },
97
+ }
98
+ };
99
+ </script>
100
+ <style scoped>
101
+ .div-main {
102
+
103
+ padding: 0px;
104
+ }
105
+
106
+ .select-option {
107
+ cursor: pointer;
108
+ border: 1px solid #e5e4e8;
109
+ background-color: white;
110
+ border-radius: 8px;
111
+ padding-left: 10px;
112
+ padding-right: 7px;
113
+ margin-right: 5px;
114
+ margin-bottom: 5px;
115
+ font-size: 16px;
116
+ font-weight: normal;
117
+ display: flex;
118
+ align-items: center;
119
+ justify-content: center;
120
+ box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 2%);
121
+ }
122
+
123
+ .select-option:hover {
124
+ background-color: white;
125
+ }
126
+
127
+ .alignment {
128
+ display: inline-block;
129
+ }
130
+
131
+ .selected-option {
132
+ background-color: white;
133
+ border-color: #4680a5;
134
+ }
135
+
136
+ .icon {
137
+ margin-top: 5px;
138
+ color: #577696;
139
+ }
140
+
141
+ .text {
142
+ font-size: 16px;
143
+ margin-top: 8px;
144
+ }
145
+
146
+ .title {
147
+ margin-bottom: 10px;
148
+ }
149
+
150
+ .div-btn {
151
+ margin-top: 10px;
152
+ }
153
+
154
+ .disabled {
155
+ color: grey;
156
+ opacity: 0.5;
157
+ }
158
+
159
+ .div-icon {
160
+ margin-right: 10px;
161
+ }
162
+ </style>