@nixweb/nixloc-ui 0.0.125 → 0.0.128

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 (111) hide show
  1. package/docs/src/component/template/ViewTemplateReportPreview.drawio +210 -0
  2. package/package.json +79 -77
  3. package/src/App.vue +13 -13
  4. package/src/component/forms/Button.vue +170 -169
  5. package/src/component/forms/CheckboxGroup.vue +72 -63
  6. package/src/component/forms/CheckboxSimple.vue +46 -27
  7. package/src/component/forms/Color.vue +38 -38
  8. package/src/component/forms/DateTime.vue +167 -177
  9. package/src/component/forms/Dropdown.vue +218 -224
  10. package/src/component/forms/EditorHtml.vue +126 -123
  11. package/src/component/forms/FileUpload.vue +185 -189
  12. package/src/component/forms/ImageUpload.vue +230 -0
  13. package/src/component/forms/IncrementDecrement.vue +101 -0
  14. package/src/component/forms/InputDecimal.vue +142 -137
  15. package/src/component/forms/InputNumber.vue +154 -149
  16. package/src/component/forms/InputPassword.vue +135 -135
  17. package/src/component/forms/InputText.vue +162 -157
  18. package/src/component/forms/Modal.vue +65 -60
  19. package/src/component/forms/RadioGroup.vue +50 -50
  20. package/src/component/forms/Select.vue +349 -337
  21. package/src/component/forms/SelectStatic.vue +127 -120
  22. package/src/component/forms/Slider.vue +18 -18
  23. package/src/component/forms/TextArea.vue +126 -126
  24. package/src/component/layout/Alert.vue +92 -92
  25. package/src/component/layout/Badge.vue +103 -103
  26. package/src/component/layout/FixedBar.vue +100 -68
  27. package/src/component/layout/Header.vue +38 -35
  28. package/src/component/layout/LoadingFullPage.vue +27 -27
  29. package/src/component/layout/Menu.vue +210 -214
  30. package/src/component/layout/Molded.vue +28 -27
  31. package/src/component/layout/Panel.vue +140 -142
  32. package/src/component/layout/Popover.vue +126 -126
  33. package/src/component/layout/ScrollBar.vue +42 -43
  34. package/src/component/layout/Tab.vue +135 -0
  35. package/src/component/layout/Tag.vue +3 -3
  36. package/src/component/layout/Wizard.vue +211 -213
  37. package/src/component/rental/DisplayPeriodRent.vue +81 -0
  38. package/src/component/rental/DisplayTotalization.vue +47 -0
  39. package/src/component/shared/Collapse.vue +131 -131
  40. package/src/component/shared/Confirmation.vue +2 -2
  41. package/src/component/shared/DocumentEditor.vue +1 -1
  42. package/src/component/shared/DocumentPreview.vue +1 -1
  43. package/src/component/shared/DocumentPublic.vue +34 -0
  44. package/src/component/shared/ExportExcel.vue +1 -8
  45. package/src/component/shared/ExportPDF.vue +116 -116
  46. package/src/component/shared/{HeaderPrint.vue → HeaderReport.vue} +4 -4
  47. package/src/component/shared/HorizontalFilter.vue +59 -59
  48. package/src/component/shared/Loading.vue +107 -107
  49. package/src/component/shared/LoadingMoreButton.vue +23 -23
  50. package/src/component/shared/Messages.vue +81 -83
  51. package/src/component/shared/PDFViewer.vue +22 -22
  52. package/src/component/shared/Pagination.vue +52 -53
  53. package/src/component/shared/{LegendaParametro.vue → ParameterLegend.vue} +22 -26
  54. package/src/component/shared/ProgressBar.vue +22 -21
  55. package/src/component/shared/QueryButton.vue +66 -66
  56. package/src/component/shared/Report.vue +187 -0
  57. package/src/component/shared/SaveCancel.vue +26 -5
  58. package/src/component/shared/Search.vue +154 -154
  59. package/src/component/shared/SelectOption.vue +146 -0
  60. package/src/component/shared/Table.vue +163 -243
  61. package/src/component/shared/TableButton.vue +36 -36
  62. package/src/component/shared/TableDraggable.vue +127 -0
  63. package/src/component/shared/TableItem.vue +177 -0
  64. package/src/component/shared/TableTotalRecords.vue +9 -10
  65. package/src/component/shared/TableTotalization.vue +47 -47
  66. package/src/component/shared/Tip.vue +42 -42
  67. package/src/component/shared/Toast.vue +54 -54
  68. package/src/component/shared/TotalizationReport.vue +59 -0
  69. package/src/component/shared/VerticalFilter.vue +97 -145
  70. package/src/component/shared/query-builder/AddRule.vue +181 -187
  71. package/src/component/shared/query-builder/ConvertToOdata.js +34 -43
  72. package/src/component/shared/query-builder/DynamicComponent.vue +21 -16
  73. package/src/component/shared/query-builder/DynamicComponentList.vue +73 -0
  74. package/src/component/shared/query-builder/Fields.vue +29 -63
  75. package/src/component/shared/query-builder/QueryBuilder.vue +69 -69
  76. package/src/component/shared/query-builder/Rules.vue +2 -14
  77. package/src/component/shared/query-builder/SelectRule.vue +15 -15
  78. package/src/component/shared/query-builder/Tags.vue +24 -8
  79. package/src/component/shared/query-builder/utilities.js +21 -21
  80. package/src/component/template/{ListViewWithHandlerData.vue → ListViewWithDataHandler.vue} +260 -231
  81. package/src/component/template/{AddEditReport.vue → ReportCreateUpdate.vue} +40 -22
  82. package/src/component/template/ViewTemplateConfiguration.vue +64 -69
  83. package/src/component/template/ViewTemplateDocumentView.vue +22 -25
  84. package/src/component/template/ViewTemplateReportList.vue +39 -57
  85. package/src/component/template/ViewTemplateReportPreview.vue +270 -341
  86. package/src/component/template/ViewTemplateReportPreviewCOPIASEGURANCA.vue +497 -0
  87. package/src/component/template/ViewTemplateSelectOption.vue +60 -0
  88. package/src/component/template/ViewTemplateWithSalveCancel.vue +32 -32
  89. package/src/component/template/ViewTemplateWithTable.vue +56 -49
  90. package/src/component/template/model/Report.js +2 -2
  91. package/src/component/value-objects/Address.js +11 -0
  92. package/src/component/value-objects/{Endereco.vue → Address.vue} +39 -40
  93. package/src/component/value-objects/{DadosContato.js → Contact.js} +2 -2
  94. package/src/component/value-objects/{DadosContato.vue → Contact.vue} +24 -17
  95. package/src/component/value-objects/Person.js +10 -0
  96. package/src/component/value-objects/{DadosPessoa.vue → Person.vue} +50 -35
  97. package/src/config/axios.js +9 -9
  98. package/src/config/dicas.js +14 -14
  99. package/src/config/router.js +13 -13
  100. package/src/config/token.js +14 -14
  101. package/src/main.js +23 -23
  102. package/src/store/modules/generic.js +512 -488
  103. package/src/store/modules/report.js +156 -127
  104. package/src/store/modules/user.js +6 -0
  105. package/src/store/modules/validation.js +38 -38
  106. package/src/store/store.js +13 -13
  107. package/docs/src/component/template/ModeloRelatorioView.drawio +0 -160
  108. package/src/component/shared/query-builder/ListDynamicComponent.vue +0 -42
  109. package/src/component/shared/query-builder/Totalization.vue +0 -38
  110. package/src/component/value-objects/DadosPessoa.js +0 -10
  111. package/src/component/value-objects/Endereco.js +0 -11
@@ -1,145 +1,97 @@
1
- <template>
2
- <div>
3
- <div
4
- class="molded-button"
5
- :class="{ fechado: !showFilter, aberto: showFilter }"
6
- v-show="!showFilter"
7
- @click="mouseOver"
8
- >
9
- <i class="fas fa-arrow-circle-left"></i>
10
- </div>
11
-
12
- <transition name="slide-fade">
13
- <div
14
- class="molded-button button-recolher"
15
- v-show="showFilter"
16
- @click="showFilter = false"
17
- >
18
- <i class="fas fa-arrow-circle-right"></i>
19
- </div>
20
- </transition>
21
-
22
- <transition name="slide-fade">
23
- <div class="molded" v-show="showFilter">
24
- <div class="row">
25
- <div class="col-4 c-title-filter">
26
- <i class="fas fa-filter"></i>
27
- <span class="espaco-icon">FILTRO</span>
28
- </div>
29
- </div>
30
- <hr />
31
- <b-row v-if="mostrarSelecioneTotal">
32
- <b-col sm="6">
33
- <Select
34
- title="show"
35
- field="show"
36
- :required="false"
37
- url="/api/v1/util/total-por-pagina"
38
- v-model="totalPerPage"
39
- />
40
- </b-col>
41
- </b-row>
42
- <slot></slot>
43
- </div>
44
- </transition>
45
- </div>
46
- </template>
47
-
48
- <script>
49
- import Select from "../forms/Select";
50
-
51
- import { mapMutations } from "vuex";
52
-
53
- export default {
54
- props: {
55
- mostrarSelecioneTotal: {
56
- type: Boolean,
57
- default: true,
58
- },
59
- },
60
- components: { Select },
61
- data() {
62
- return {
63
- showFilter: false,
64
- };
65
- },
66
- computed: {
67
- totalPerPage: {
68
- get() {
69
- return this.$store.state.generic.totalPerPage;
70
- },
71
- set(value) {
72
- if (!value.content) value.content = 10;
73
- this.atualizaTotalPorPagina(value);
74
- },
75
- },
76
- },
77
- methods: {
78
- ...mapMutations("generic", ["atualizaTotalPorPagina"]),
79
- mouseOver: function () {
80
- this.showFilter = !this.showFilter;
81
- },
82
- },
83
- };
84
- </script>
85
-
86
- <style scoped>
87
- .molded {
88
- background: white;
89
- border-left: solid 1px #dbdee0;
90
- font-size: 13px;
91
- height: 100%;
92
- width: 350px;
93
- right: 0px;
94
- padding: 10px;
95
- position: fixed;
96
- -webkit-box-shadow: 20px 20px 20px 20px rgba(124, 125, 129, 0.53);
97
- box-shadow: 20px 20px 20px 20px rgba(124, 125, 129, 0.53);
98
- z-index: 999;
99
- }
100
-
101
- .molded-button {
102
- font-size: 18px;
103
- background: #ffffff;
104
- border: solid 1px #dbdfe9;
105
- border-radius: 5px;
106
- color: #577696;
107
- height: 40px;
108
- width: 80px;
109
- line-height: 32px;
110
- padding-top: 3px;
111
- padding-right: 35px;
112
- text-align: center;
113
- position: fixed;
114
- top: 160px;
115
- cursor: pointer;
116
- z-index: 999;
117
- }
118
-
119
- .button-recolher {
120
- padding-left: 12px;
121
- padding-right: 418px;
122
- right: -38px;
123
- }
124
-
125
- .aberto {
126
- right: 365px;
127
- }
128
-
129
- .fechado {
130
- right: -38px;
131
- color: #577696;
132
- }
133
-
134
- .slide-fade-enter-active {
135
- transition: all 0.2s ease;
136
- }
137
- .slide-fade-leave-active {
138
- transition: all 0.2s cubic-bezier(1, 0.5, 0.8, 1);
139
- }
140
- .slide-fade-enter,
141
- .slide-fade-leave-to {
142
- transform: translateX(200px);
143
- opacity: 0;
144
- }
145
- </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>
@@ -1,187 +1,181 @@
1
- <template>
2
- <div class="vqb-group card">
3
- <div class="vqb-group-body card-body">
4
- <div class="rule-actions form-inline">
5
- <div class="div-custom">
6
- <b-row>
7
- <b-col sm="6">
8
- <SelectRule :options="rules" class="select" v-model="selectedRule" />
9
- </b-col>
10
- <b-col sm="3">
11
- <RadioGroup
12
- :options="[
13
- { text: 'e', value: 'and' },
14
- { text: 'ou', value: 'or' },
15
- ]"
16
- v-model="andOr"
17
- />
18
- </b-col>
19
- <b-col sm="3">
20
- <button type="button" class="btn btn-secondary" @click="Add">
21
- + Adicionar
22
- </button>
23
- </b-col>
24
- </b-row>
25
- </div>
26
- </div>
27
- <ListDynamicComponent />
28
- </div>
29
- </div>
30
- </template>
31
-
32
- <script>
33
- import SelectRule from "./SelectRule.vue";
34
- import DynamicComponent from "./DynamicComponent.vue";
35
- import RadioGroup from "@nixweb/nixloc-ui/src/component/forms/RadioGroup.vue";
36
- import ListDynamicComponent from "@nixweb/nixloc-ui/src/component/shared/query-builder/ListDynamicComponent.vue";
37
-
38
- import deepClone from "./utilities.js";
39
-
40
- import { mapGetters, mapMutations } from "vuex";
41
-
42
- export default {
43
- name: "AddRule",
44
- components: {
45
- SelectRule,
46
- DynamicComponent,
47
- RadioGroup,
48
- ListDynamicComponent,
49
- },
50
- props: {
51
- query: Object,
52
- rules: Array,
53
- index: Number,
54
- maximaProfunidade: Number,
55
- profundidade: Number,
56
- titulos: Object,
57
- },
58
- data() {
59
- return {
60
- selectedRule: this.rules[0],
61
- andOr: "or",
62
- duplicidade: [],
63
- };
64
- },
65
- computed: {
66
- ...mapGetters("generic", ["event"]),
67
- },
68
- methods: {
69
- ...mapMutations("generic", ["addNotifications"]),
70
- ...mapMutations("report", ["addSelectedRules"]),
71
- add() {
72
- this.selectedRule.andOr = this.andOr;
73
- this.addRule();
74
- },
75
- addRule() {
76
- let consulta_atualizada = deepClone(this.query);
77
- let obj = this.montaFiltro();
78
-
79
- if (!this.jaExiste(obj.nome)) {
80
- this.addSelectedRules(obj);
81
- if (obj.naoPermitirDuplicidade) this.duplicidade.push(obj);
82
- } else {
83
- var erro = {
84
- property: "ERRO QUERY BUILDER",
85
- message: `Não é possível adicionar o filter ${obj.title} 2 vezes!`,
86
- };
87
- this.addNotifications([erro]);
88
- }
89
- },
90
- montaFiltro() {
91
- let obj = {
92
- id: this.geraId(),
93
- nome: this.selectedRule.nome,
94
- title: this.selectedRule.title,
95
- fieldType: this.selectedRule.fieldType,
96
- type: this.selectedRule.type,
97
- options: this.selectedRule.options,
98
- props: this.selectedRule.props,
99
- classCss: this.selectedRule.classCss,
100
- icon: this.selectedRule.icon,
101
- operators: this.selectedRule.operators,
102
- operator: null,
103
- andOr: this.selectedRule.andOr,
104
- isRequired: this.selectedRule.isRequired,
105
- naoPermitirDuplicidade: this.selectedRule.naoPermitirDuplicidade,
106
- valor: null,
107
- };
108
- return obj;
109
- },
110
- geraId() {
111
- return Math.random()
112
- .toString(36)
113
- .replace(/[^a-z]+/g, "")
114
- .substr(0, 5);
115
- },
116
- jaExiste(key) {
117
- var existe = this.duplicidade.find((item) => {
118
- return item.nome === key;
119
- });
120
- if (existe) return true;
121
- return false;
122
- },
123
- },
124
- watch: {
125
- event: {
126
- handler(event) {
127
- // Se a tag ou a rule que está selecionada foi removida, é necessário remove tambem do array "duplicidade" para liberar e adicionar novamente.
128
- if (event.nome == "tagRemovida" || event.nome == "selectedRuleRemovida") {
129
- var duplicidade = this.duplicidade.filter((item) => {
130
- return item.id != event.data.id;
131
- });
132
- this.duplicidade = duplicidade;
133
- }
134
- },
135
- deep: true,
136
- },
137
- },
138
- };
139
- </script>
140
-
141
- <style>
142
- .title-option {
143
- padding: 10px;
144
- }
145
-
146
- .div-custom {
147
- width: 100%;
148
- }
149
-
150
- .vue-query-builder .vqb-group .rule-actions {
151
- margin-bottom: 20px;
152
- }
153
-
154
- .vue-query-builder .vqb-rule {
155
- margin-top: 15px;
156
- margin-bottom: 15px;
157
- background-color: #f5f5f5;
158
- border-color: #ddd;
159
- padding: 15px;
160
- }
161
-
162
- .vue-query-builder .vqb-group.depth-1 .vqb-rule,
163
- .vue-query-builder .vqb-group.depth-2 {
164
- border-left: 2px solid #8bc34a;
165
- }
166
-
167
- .vue-query-builder .vqb-group.depth-2 .vqb-rule,
168
- .vue-query-builder .vqb-group.depth-3 {
169
- border-left: 2px solid #00bcd4;
170
- }
171
-
172
- .vue-query-builder .vqb-group.depth-3 .vqb-rule,
173
- .vue-query-builder .vqb-group.depth-4 {
174
- border-left: 2px solid #ff5722;
175
- }
176
-
177
- .vue-query-builder .close {
178
- opacity: 1;
179
- color: rgb(150, 150, 150);
180
- }
181
-
182
- @media (min-width: 768px) {
183
- .vue-query-builder .vqb-rule.form-inline .form-group {
184
- display: block;
185
- }
186
- }
187
- </style>
1
+ <template>
2
+ <div>
3
+ <div class="vqb-group card">
4
+ <div class="vqb-group-body card-body">
5
+ <div class="rule-actions form-inline">
6
+ <div class="div-custom">
7
+ <b-row>
8
+ <b-col sm="6">
9
+ <SelectRule :options="rules" class="select" v-model="selectedRule" />
10
+ </b-col>
11
+ <b-col sm="3">
12
+ <RadioGroup
13
+ :options="[
14
+ { text: 'e', value: 'and' },
15
+ { text: 'ou', value: 'or' },
16
+ ]"
17
+ v-model="andOr"
18
+ />
19
+ </b-col>
20
+ <b-col sm="3">
21
+ <button type="button" class="btn btn-secondary" @click="add">
22
+ + Adicionar
23
+ </button>
24
+ </b-col>
25
+ </b-row>
26
+ </div>
27
+ </div>
28
+ </div>
29
+ </div>
30
+ <DynamicComponentList />
31
+ </div>
32
+ </template>
33
+
34
+ <script>
35
+ import SelectRule from "./SelectRule.vue";
36
+ import DynamicComponent from "./DynamicComponent.vue";
37
+ import RadioGroup from "@nixweb/nixloc-ui/src/component/forms/RadioGroup.vue";
38
+ import DynamicComponentList from "@nixweb/nixloc-ui/src/component/shared/query-builder/DynamicComponentList.vue";
39
+
40
+ import { mapGetters, mapMutations } from "vuex";
41
+
42
+ export default {
43
+ name: "AddRule",
44
+ components: {
45
+ SelectRule,
46
+ DynamicComponent,
47
+ RadioGroup,
48
+ DynamicComponentList,
49
+ },
50
+ props: {
51
+ rules: Array,
52
+ },
53
+ data() {
54
+ return {
55
+ selectedRule: this.rules[0],
56
+ andOr: "or",
57
+ duplicate: [],
58
+ };
59
+ },
60
+ computed: {
61
+ ...mapGetters("generic", ["event"]),
62
+ },
63
+ methods: {
64
+ ...mapMutations("generic", ["addNotifications"]),
65
+ ...mapMutations("report", ["addSelectedRules"]),
66
+ add() {
67
+ this.selectedRule.andOr = this.andOr;
68
+ this.addRule();
69
+ },
70
+ addRule() {
71
+ let obj = this.mountObject();
72
+
73
+ if (!this.verifyIfExist(obj.name)) {
74
+ this.addSelectedRules(obj);
75
+ if (obj.notDuplicate) this.duplicate.push(obj);
76
+ } else {
77
+ var error = {
78
+ property: "ERRO QUERY BUILDER",
79
+ message: `Não é possível adicionar o filter ${obj.title} 2 vezes!`,
80
+ };
81
+ this.addNotifications([error]);
82
+ }
83
+ },
84
+ mountObject() {
85
+ let obj = {
86
+ id: this.generateId(),
87
+ name: this.selectedRule.name,
88
+ title: this.selectedRule.title,
89
+ typeField: this.selectedRule.typeField,
90
+ type: this.selectedRule.type,
91
+ options: this.selectedRule.options,
92
+ props: this.selectedRule.props,
93
+ classCss: this.selectedRule.classCss,
94
+ icon: this.selectedRule.icon,
95
+ operators: this.selectedRule.operators,
96
+ operator: null,
97
+ andOr: this.selectedRule.andOr,
98
+ isRequired: this.selectedRule.isRequired,
99
+ notDuplicate: this.selectedRule.notDuplicate,
100
+ value: null,
101
+ };
102
+ return obj;
103
+ },
104
+ generateId() {
105
+ return Math.random()
106
+ .toString(36)
107
+ .replace(/[^a-z]+/g, "")
108
+ .substr(0, 5);
109
+ },
110
+ verifyIfExist(name) {
111
+ var hasRule = this.duplicate.find((rule) => {
112
+ return rule.name === name;
113
+ });
114
+ if (hasRule) return true;
115
+ return false;
116
+ },
117
+ },
118
+ watch: {
119
+ event: {
120
+ handler(event) {
121
+ // se a tag ou a rule que está selecionada foi removida, é necessário remove tambem do array "duplicate" para liberar e adicionar novamente.
122
+ if (event.name == "tagRemoved" || event.name == "selectedRuleRemoved") {
123
+ var duplicate = this.duplicate.filter((item) => {
124
+ return item.id != event.data.id;
125
+ });
126
+ this.duplicate = duplicate;
127
+ }
128
+ },
129
+ deep: true,
130
+ },
131
+ },
132
+ };
133
+ </script>
134
+
135
+ <style>
136
+ .title-option {
137
+ padding: 10px;
138
+ }
139
+
140
+ .div-custom {
141
+ width: 100%;
142
+ }
143
+
144
+ .vue-query-builder .vqb-group .rule-actions {
145
+ margin-bottom: 20px;
146
+ }
147
+
148
+ .vue-query-builder .vqb-rule {
149
+ margin-top: 15px;
150
+ margin-bottom: 15px;
151
+ background-color: #f5f5f5;
152
+ border-color: #ddd;
153
+ padding: 15px;
154
+ }
155
+
156
+ .vue-query-builder .vqb-group.depth-1 .vqb-rule,
157
+ .vue-query-builder .vqb-group.depth-2 {
158
+ border-left: 2px solid #8bc34a;
159
+ }
160
+
161
+ .vue-query-builder .vqb-group.depth-2 .vqb-rule,
162
+ .vue-query-builder .vqb-group.depth-3 {
163
+ border-left: 2px solid #00bcd4;
164
+ }
165
+
166
+ .vue-query-builder .vqb-group.depth-3 .vqb-rule,
167
+ .vue-query-builder .vqb-group.depth-4 {
168
+ border-left: 2px solid #ff5722;
169
+ }
170
+
171
+ .vue-query-builder .close {
172
+ opacity: 1;
173
+ color: rgb(150, 150, 150);
174
+ }
175
+
176
+ @media (min-width: 768px) {
177
+ .vue-query-builder .vqb-rule.form-inline .form-group {
178
+ display: block;
179
+ }
180
+ }
181
+ </style>