@webitel/ui-datalist 26.8.6 → 26.8.8
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.
- package/Readme.md +1 -0
- package/package.json +3 -2
- package/src/modules/filter-presets/components/apply-preset/apply-preset-action.vue +16 -4
- package/src/modules/filter-presets/components/save-preset/save-preset-action.vue +18 -4
- package/src/modules/filters/__tests__/createTableFiltersStore.spec.ts +38 -2
- package/src/modules/filters/components/column/column-filter-preview.vue +70 -0
- package/src/modules/filters/components/column/column-filter.vue +76 -0
- package/src/modules/filters/components/config/dynamic-view/dynamic-filter-config-form-value-input.vue +2 -0
- package/src/modules/filters/components/config/dynamic-view/dynamic-filter-config-form.vue +43 -5
- package/src/modules/filters/components/config/static-view/static-filter-field.vue +6 -21
- package/src/modules/filters/components/filters-actions-menu.vue +177 -0
- package/src/modules/filters/components/preview/dynamic-filter-preview.vue +5 -60
- package/src/modules/filters/components/table-filters-panel.vue +6 -28
- package/src/modules/filters/components/types/Filter.types.ts +5 -0
- package/src/modules/filters/composables/useColumnFilter.ts +116 -0
- package/src/modules/filters/composables/useFilterValueChange.ts +58 -0
- package/src/modules/filters/composables/useFilterValuePreview.ts +87 -0
- package/src/modules/filters/composables/useSelectedFilters.ts +64 -0
- package/src/modules/filters/createTableFiltersStore.ts +13 -5
- package/src/modules/filters/index.ts +4 -0
- package/src/modules/filters/modules/filterConfig/components/_custom/filterConfig.ts +1 -1
- package/src/modules/filters/modules/filterConfig/components/_custom/type-extension-filter-value-field.vue +9 -5
- package/src/modules/filters/modules/filterConfig/components/_shared/date-time-filter/date-time-filter-value-field.vue +7 -4
- package/src/modules/filters/modules/filterConfig/components/_shared/date-time-filter/date-time-options/date-time-options-filter-value-field.vue +7 -4
- package/src/modules/filters/modules/filterConfig/components/_shared/durations/duration-filter-value-field.vue +7 -4
- package/src/modules/filters/modules/filterConfig/components/_shared/string-filter/string-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/agent/agent-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/amd-result/amd-result-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/call-direction/call-direction-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/case-assignee/case-assignee-filter-value-field.vue +4 -4
- package/src/modules/filters/modules/filterConfig/components/case-author/case-author-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/case-close-reason-groups/case-close-reason-groups-filter-value-field.vue +7 -4
- package/src/modules/filters/modules/filterConfig/components/case-impacted/case-impacted-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/case-priority/case-priority-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/case-reporter/case-reporter-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/case-service/case-service-filter-value-field.vue +1 -32
- package/src/modules/filters/modules/filterConfig/components/case-sla/case-sla-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/case-sla-condition/case-sla-condition-filter-value-field.vue +7 -4
- package/src/modules/filters/modules/filterConfig/components/case-source/case-source-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/case-status/case-status-filter-value-field.vue +7 -4
- package/src/modules/filters/modules/filterConfig/components/contact/contact-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/contact-owner/contact-owner-filter-value-field.vue +3 -3
- package/src/modules/filters/modules/filterConfig/components/gateway/gateway-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/grantee/grantee-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/hangup-cause/hangup-cause-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/has-attachment/has-attachment-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/rated-by/rated-by-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/rating/rating-from-to-filter-value-field.vue +7 -4
- package/src/modules/filters/modules/filterConfig/components/score/score-from-to-filter-value-field.vue +4 -4
- package/src/modules/filters/modules/filterConfig/components/tag/tag-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/user/user-filter-value-field.vue +6 -3
- package/src/modules/filters/modules/filterConfig/components/variable/variable-filter-value-field.vue +6 -3
- package/src/modules/headers/__tests__/createTableHeadersStore.spec.ts +34 -2
- package/src/modules/headers/createTableHeadersStore.ts +19 -5
- package/src/modules/pagination/__tests__/createTablePaginationStore.spec.ts +27 -3
- package/src/modules/pagination/createTablePaginationStore.ts +23 -4
- package/src/modules/table/__tests__/createTableStore.spec.ts +26 -0
- package/src/modules/table/createTableStore.store.ts +34 -15
- package/src/modules/types/tableStore.types.ts +21 -2
- package/types/.tsbuildinfo +1 -1
- package/types/modules/filter-presets/components/apply-preset/apply-preset-action.vue.d.ts +15 -1
- package/types/modules/filter-presets/components/save-preset/save-preset-action.vue.d.ts +17 -1
- package/types/modules/filter-presets/stores/createFilterPresetsStore.d.ts +2 -35
- package/types/modules/filters/components/column/column-filter-preview.vue.d.ts +21 -0
- package/types/modules/filters/components/column/column-filter.vue.d.ts +36 -0
- package/types/modules/filters/components/config/dynamic-view/dynamic-filter-config-form-label.vue.d.ts +2 -2
- package/types/modules/filters/components/config/dynamic-view/dynamic-filter-config-form-value-input.vue.d.ts +3 -2
- package/types/modules/filters/components/config/dynamic-view/dynamic-filter-config-form.vue.d.ts +13 -1
- package/types/modules/filters/components/config/static-view/static-filter-field.vue.d.ts +2 -2
- package/types/modules/filters/components/filters-actions-menu.vue.d.ts +29 -0
- package/types/modules/filters/components/table-filters-panel.vue.d.ts +6 -6
- package/types/modules/filters/components/types/Filter.types.d.ts +4 -0
- package/types/modules/filters/composables/useColumnFilter.d.ts +27 -0
- package/types/modules/filters/composables/useFilterValueChange.d.ts +23 -0
- package/types/modules/filters/composables/useFilterValuePreview.d.ts +21 -0
- package/types/modules/filters/composables/useSelectedFilters.d.ts +22 -0
- package/types/modules/filters/createTableFiltersStore.d.ts +6 -2
- package/types/modules/filters/index.d.ts +3 -1
- package/types/modules/filters/modules/filterConfig/components/_custom/type-extension-filter-value-field.vue.d.ts +3 -2
- package/types/modules/filters/modules/filterConfig/components/_shared/date-time-filter/date-time-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/_shared/date-time-filter/date-time-options/date-time-options-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/_shared/durations/duration-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/_shared/string-filter/string-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/agent/agent-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/agent-status/agent-status-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/amd-result/amd-result-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/auditor/auditor-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/auditor/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/bucket/bucket-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/bucket/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/call-direction/call-direction-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/call-reporting-result/call-reporting-result-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/case-assignee/case-assignee-filter-value-field.vue.d.ts +3 -2
- package/types/modules/filters/modules/filterConfig/components/case-assignee/filterConfig.d.ts +4 -2
- package/types/modules/filters/modules/filterConfig/components/case-author/case-author-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/case-close-reason-groups/case-close-reason-groups-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/case-impacted/case-impacted-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/case-priority/case-priority-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/case-reporter/case-reporter-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/case-sla/case-sla-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/case-sla-condition/case-sla-condition-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/case-source/case-source-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/case-status/case-status-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/contact/contact-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/contact-group/contact-group-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/contact-group/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/contact-label/contact-label-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/contact-label/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/contact-owner/contact-owner-filter-value-field.vue.d.ts +3 -2
- package/types/modules/filters/modules/filterConfig/components/contact-owner/index.d.ts +4 -2
- package/types/modules/filters/modules/filterConfig/components/gateway/gateway-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/grantee/grantee-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/hangup-cause/hangup-cause-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/has-attachment/has-attachment-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/has-file/has-file-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/has-rating/has-rating-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/has-transcription/has-transcription-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/has-user/has-user-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/index.d.ts +24 -22
- package/types/modules/filters/modules/filterConfig/components/queue/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/queue/queue-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/queue-period/queue-period-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/queue-type/queue-type-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/rated-by/rated-by-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/rating/rating-from-to-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/region/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/region/region-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/score/score-from-to-filter-value-field.vue.d.ts +3 -2
- package/types/modules/filters/modules/filterConfig/components/skill/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/skill/skill-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/stop-cause/stop-cause-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/supervisor/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/supervisor/supervisor-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/tag/tag-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/tags/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/tags/tags-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/talk-duration/talk-duration-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/team/index.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/team/team-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/total-duration/total-duration-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/user/user-filter-value-field.vue.d.ts +8 -4
- package/types/modules/filters/modules/filterConfig/components/utilization-progress/utilization-progress-filter-value-field.vue.d.ts +2 -2
- package/types/modules/filters/modules/filterConfig/components/variable/variable-filter-value-field.vue.d.ts +8 -4
- package/types/modules/headers/createTableHeadersStore.d.ts +48 -20
- package/types/modules/pagination/createTablePaginationStore.d.ts +7 -3
- package/types/modules/permissions-page/stores/createPermissionsStore.d.ts +4 -70
- package/types/modules/table/createTableStore.store.d.ts +76 -141
- package/types/modules/types/tableStore.types.d.ts +20 -2
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
<wt-timepicker
|
|
4
4
|
:label="t('reusable.from')"
|
|
5
5
|
:model-value="value.from"
|
|
6
|
-
:v="vFrom"
|
|
6
|
+
:v="!disableValidation && vFrom"
|
|
7
7
|
format="hh:mm:ss"
|
|
8
8
|
@update:model-value="handleInput('from', $event)"
|
|
9
9
|
/>
|
|
10
10
|
<wt-timepicker
|
|
11
11
|
:label="t('reusable.to')"
|
|
12
12
|
:model-value="value.to"
|
|
13
|
-
:v="vTo"
|
|
13
|
+
:v="!disableValidation && vTo"
|
|
14
14
|
format="hh:mm:ss"
|
|
15
15
|
@update:model-value="handleInput('to', $event)"
|
|
16
16
|
/>
|
|
@@ -22,6 +22,10 @@ import { useVuelidate } from '@vuelidate/core';
|
|
|
22
22
|
import { computed, watch } from 'vue';
|
|
23
23
|
import { useI18n } from 'vue-i18n';
|
|
24
24
|
|
|
25
|
+
const props = defineProps<{
|
|
26
|
+
disableValidation?: boolean;
|
|
27
|
+
}>();
|
|
28
|
+
|
|
25
29
|
const { t } = useI18n();
|
|
26
30
|
|
|
27
31
|
type ModelValue = {
|
|
@@ -74,8 +78,7 @@ const v$ = useVuelidate<{
|
|
|
74
78
|
$autoDirty: true,
|
|
75
79
|
},
|
|
76
80
|
);
|
|
77
|
-
v$.value.$touch();
|
|
78
|
-
|
|
81
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
79
82
|
const vFrom = computed(() => {
|
|
80
83
|
const modelValidation = v$.value.model;
|
|
81
84
|
if (!modelValidation) return undefined;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-input-text
|
|
3
3
|
v-model:model-value="model"
|
|
4
4
|
:label="t('webitelUI.filters.filterValue')"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
/>
|
|
7
7
|
</template>
|
|
8
8
|
|
|
@@ -14,6 +14,10 @@ import { useI18n } from 'vue-i18n';
|
|
|
14
14
|
|
|
15
15
|
type ModelValue = string;
|
|
16
16
|
|
|
17
|
+
const props = defineProps<{
|
|
18
|
+
disableValidation?: boolean;
|
|
19
|
+
}>();
|
|
20
|
+
|
|
17
21
|
const model = defineModel<ModelValue>();
|
|
18
22
|
if (!model.value) {
|
|
19
23
|
model.value = '';
|
|
@@ -35,8 +39,7 @@ const v$ = useVuelidate(
|
|
|
35
39
|
},
|
|
36
40
|
);
|
|
37
41
|
|
|
38
|
-
v$.value.$touch();
|
|
39
|
-
|
|
42
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
40
43
|
const emit = defineEmits<{
|
|
41
44
|
'update:invalid': [
|
|
42
45
|
boolean,
|
package/src/modules/filters/modules/filterConfig/components/agent/agent-filter-value-field.vue
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
5
|
:model-value="model"
|
|
6
|
-
:v="v$.model"
|
|
6
|
+
:v="!disableValidation && v$.model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
9
9
|
/>
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -44,8 +48,7 @@ const v$ = useVuelidate(
|
|
|
44
48
|
},
|
|
45
49
|
);
|
|
46
50
|
|
|
47
|
-
v$.value.$touch();
|
|
48
|
-
|
|
51
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
49
52
|
watch(
|
|
50
53
|
() => v$.value.$invalid,
|
|
51
54
|
(invalid) => {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:options="AmdResultOptions"
|
|
5
5
|
v-model:model-value="selectValue"
|
|
6
|
-
:v="v$.model"
|
|
6
|
+
:v="!disableValidation && v$.model"
|
|
7
7
|
data-key="value"
|
|
8
8
|
option-value="value"
|
|
9
9
|
/>
|
|
@@ -25,6 +25,10 @@ import { AmdResultOptions } from '../../enums/options/AMDResultOptions';
|
|
|
25
25
|
|
|
26
26
|
const AMD_RESULT_EMPTY_VALUE = 'EMPTY';
|
|
27
27
|
|
|
28
|
+
const props = defineProps<{
|
|
29
|
+
disableValidation?: boolean;
|
|
30
|
+
}>();
|
|
31
|
+
|
|
28
32
|
const model = defineModel<string[]>();
|
|
29
33
|
const { t } = useI18n();
|
|
30
34
|
|
|
@@ -64,8 +68,7 @@ const v$ = useVuelidate(
|
|
|
64
68
|
},
|
|
65
69
|
);
|
|
66
70
|
|
|
67
|
-
v$.value.$touch();
|
|
68
|
-
|
|
71
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
69
72
|
const emit = defineEmits<{
|
|
70
73
|
'update:invalid': [
|
|
71
74
|
boolean,
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
:label="t('webitelUI.filters.filterValue')"
|
|
5
5
|
:options="CallDirectionFilterOptions"
|
|
6
6
|
v-model:model-value="model"
|
|
7
|
-
:v="v$.model"
|
|
7
|
+
:v="!disableValidation && v$.model"
|
|
8
8
|
data-key="value"
|
|
9
9
|
option-value="value"
|
|
10
10
|
/>
|
|
@@ -19,6 +19,10 @@ import { useI18n } from 'vue-i18n';
|
|
|
19
19
|
|
|
20
20
|
import { CallDirectionFilterOptions } from '../../enums/options/CallDirectionFilterOptions';
|
|
21
21
|
|
|
22
|
+
const props = defineProps<{
|
|
23
|
+
disableValidation?: boolean;
|
|
24
|
+
}>();
|
|
25
|
+
|
|
22
26
|
const model = defineModel<string>();
|
|
23
27
|
const { t } = useI18n();
|
|
24
28
|
|
|
@@ -36,8 +40,7 @@ const v$ = useVuelidate(
|
|
|
36
40
|
},
|
|
37
41
|
);
|
|
38
42
|
|
|
39
|
-
v$.value.$touch();
|
|
40
|
-
|
|
43
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
41
44
|
const emit = defineEmits<{
|
|
42
45
|
'update:invalid': [
|
|
43
46
|
boolean,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="props.filterConfig.searchRecords"
|
|
5
|
-
:v="vList"
|
|
5
|
+
:v="!disableValidation && vList"
|
|
6
6
|
:model-value="value.list"
|
|
7
7
|
data-key="id"
|
|
8
8
|
option-value="id"
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<wt-checkbox
|
|
12
12
|
:label="t('reusable.showUnassigned')"
|
|
13
13
|
:selected="value.unassigned"
|
|
14
|
-
:v="vUnassigned"
|
|
14
|
+
:v="!disableValidation && vUnassigned"
|
|
15
15
|
@update:selected="handleInput('unassigned', !!$event)"
|
|
16
16
|
/>
|
|
17
17
|
</template>
|
|
@@ -57,6 +57,7 @@ const handleInput = <K extends keyof ModelValue>(
|
|
|
57
57
|
|
|
58
58
|
const props = defineProps<{
|
|
59
59
|
filterConfig: CaseAssigneeFilterConfig;
|
|
60
|
+
disableValidation?: boolean;
|
|
60
61
|
}>();
|
|
61
62
|
|
|
62
63
|
const emit = defineEmits<{
|
|
@@ -87,8 +88,7 @@ const v$ = useVuelidate<{
|
|
|
87
88
|
$autoDirty: true,
|
|
88
89
|
},
|
|
89
90
|
);
|
|
90
|
-
v$.value.$touch();
|
|
91
|
-
|
|
91
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
92
92
|
const vList = computed(() => {
|
|
93
93
|
const modelValidation = v$.value.model;
|
|
94
94
|
if (!modelValidation) return undefined;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
:model-value="model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -42,8 +46,7 @@ const v$ = useVuelidate(
|
|
|
42
46
|
$autoDirty: true,
|
|
43
47
|
},
|
|
44
48
|
);
|
|
45
|
-
v$.value.$touch();
|
|
46
|
-
|
|
49
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
47
50
|
watch(
|
|
48
51
|
() => v$.value.$invalid,
|
|
49
52
|
(invalid) => {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
:show-clear="false"
|
|
5
5
|
:label="t('cases.reason')"
|
|
6
6
|
:search-method="caseCloseReasonsGroupsSearchMethod"
|
|
7
|
-
:v="vSelection"
|
|
7
|
+
:v="!disableValidation && vSelection"
|
|
8
8
|
:model-value="value.selection"
|
|
9
9
|
data-key="id"
|
|
10
10
|
option-value="id"
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
:disabled="!value.selection"
|
|
19
19
|
:label="t('webitelUI.filters.filterValue')"
|
|
20
20
|
:search-method="getConditionList"
|
|
21
|
-
:v="vConditions"
|
|
21
|
+
:v="!disableValidation && vConditions"
|
|
22
22
|
:model-value="value.conditions"
|
|
23
23
|
data-key="id"
|
|
24
24
|
option-value="id"
|
|
@@ -39,6 +39,10 @@ import {
|
|
|
39
39
|
caseCloseReasonsSearchMethod,
|
|
40
40
|
} from './config.js';
|
|
41
41
|
|
|
42
|
+
const props = defineProps<{
|
|
43
|
+
disableValidation?: boolean;
|
|
44
|
+
}>();
|
|
45
|
+
|
|
42
46
|
type ModelValue = {
|
|
43
47
|
selection: string;
|
|
44
48
|
conditions: string;
|
|
@@ -104,8 +108,7 @@ const v$ = useVuelidate<{
|
|
|
104
108
|
},
|
|
105
109
|
);
|
|
106
110
|
|
|
107
|
-
v$.value.$touch();
|
|
108
|
-
|
|
111
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
109
112
|
const vSelection = computed(() => {
|
|
110
113
|
const modelValidation = v$.value.model;
|
|
111
114
|
if (!modelValidation) return undefined;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
:model-value="model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -42,8 +46,7 @@ const v$ = useVuelidate(
|
|
|
42
46
|
$autoDirty: true,
|
|
43
47
|
},
|
|
44
48
|
);
|
|
45
|
-
v$.value.$touch();
|
|
46
|
-
|
|
49
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
47
50
|
watch(
|
|
48
51
|
() => v$.value.$invalid,
|
|
49
52
|
(invalid) => {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
:model-value="model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -43,8 +47,7 @@ const v$ = useVuelidate(
|
|
|
43
47
|
$autoDirty: true,
|
|
44
48
|
},
|
|
45
49
|
);
|
|
46
|
-
v$.value.$touch();
|
|
47
|
-
|
|
50
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
48
51
|
watch(
|
|
49
52
|
() => v$.value.$invalid,
|
|
50
53
|
(invalid) => {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
:model-value="model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -42,8 +46,7 @@ const v$ = useVuelidate(
|
|
|
42
46
|
$autoDirty: true,
|
|
43
47
|
},
|
|
44
48
|
);
|
|
45
|
-
v$.value.$touch();
|
|
46
|
-
|
|
49
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
47
50
|
watch(
|
|
48
51
|
() => v$.value.$invalid,
|
|
49
52
|
(invalid) => {
|
|
@@ -49,41 +49,10 @@ if (!model.value) {
|
|
|
49
49
|
onMounted(loadCatalogs);
|
|
50
50
|
</script>
|
|
51
51
|
|
|
52
|
-
<style lang="scss">
|
|
53
|
-
$form-width: 800px;
|
|
54
|
-
|
|
52
|
+
<style lang="scss" scoped>
|
|
55
53
|
.service-case-filter-value-field {
|
|
56
|
-
grid-area: value;
|
|
57
54
|
background: transparent;
|
|
58
|
-
height: 100%;
|
|
59
55
|
max-height: 350px;
|
|
60
56
|
overflow-y: auto;
|
|
61
57
|
}
|
|
62
|
-
|
|
63
|
-
.dynamic-filter-config-form {
|
|
64
|
-
&:has(.service-case-filter-value-field) {
|
|
65
|
-
display: grid;
|
|
66
|
-
grid-template-rows: 64px 1fr auto;
|
|
67
|
-
grid-template-columns: repeat(2, 1fr);
|
|
68
|
-
grid-template-areas:
|
|
69
|
-
'column label'
|
|
70
|
-
'value value'
|
|
71
|
-
'footer footer';
|
|
72
|
-
width: $form-width;
|
|
73
|
-
height: 500px;
|
|
74
|
-
|
|
75
|
-
.wt-select {
|
|
76
|
-
grid-area: column;
|
|
77
|
-
height: fit-content;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.wt-input-text {
|
|
81
|
-
grid-area: label;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
.dynamic-filter-config-form-footer {
|
|
85
|
-
grid-area: footer;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
58
|
</style>
|
package/src/modules/filters/modules/filterConfig/components/case-sla/case-sla-filter-value-field.vue
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
:model-value="model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -43,8 +47,7 @@ const v$ = useVuelidate(
|
|
|
43
47
|
$autoDirty: true,
|
|
44
48
|
},
|
|
45
49
|
);
|
|
46
|
-
v$.value.$touch();
|
|
47
|
-
|
|
50
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
48
51
|
watch(
|
|
49
52
|
() => v$.value.$invalid,
|
|
50
53
|
(invalid) => {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
:show-clear="false"
|
|
5
5
|
:label="t('cases.appliedSLA')"
|
|
6
6
|
:search-method="slasSearchMethod"
|
|
7
|
-
:v="vSelection"
|
|
7
|
+
:v="!disableValidation && vSelection"
|
|
8
8
|
:model-value="value.selection"
|
|
9
9
|
data-key="id"
|
|
10
10
|
option-value="id"
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
:disabled="!value.selection"
|
|
18
18
|
:label="t('webitelUI.filters.filterValue')"
|
|
19
19
|
:search-method="getConditionList"
|
|
20
|
-
:v="vConditions"
|
|
20
|
+
:v="!disableValidation && vConditions"
|
|
21
21
|
:model-value="value.conditions"
|
|
22
22
|
data-key="id"
|
|
23
23
|
option-value="id"
|
|
@@ -35,6 +35,10 @@ import { useI18n } from 'vue-i18n';
|
|
|
35
35
|
|
|
36
36
|
import { slasConditionsSearchMethod, slasSearchMethod } from './config.js';
|
|
37
37
|
|
|
38
|
+
const props = defineProps<{
|
|
39
|
+
disableValidation?: boolean;
|
|
40
|
+
}>();
|
|
41
|
+
|
|
38
42
|
type ModelValue = {
|
|
39
43
|
selection: string;
|
|
40
44
|
conditions: string;
|
|
@@ -100,8 +104,7 @@ const v$ = useVuelidate<{
|
|
|
100
104
|
},
|
|
101
105
|
);
|
|
102
106
|
|
|
103
|
-
v$.value.$touch();
|
|
104
|
-
|
|
107
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
105
108
|
const vSelection = computed(() => {
|
|
106
109
|
const modelValidation = v$.value.model;
|
|
107
110
|
if (!modelValidation) return undefined;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
:model-value="model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -43,8 +47,7 @@ const v$ = useVuelidate(
|
|
|
43
47
|
$autoDirty: true,
|
|
44
48
|
},
|
|
45
49
|
);
|
|
46
|
-
v$.value.$touch();
|
|
47
|
-
|
|
50
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
48
51
|
watch(
|
|
49
52
|
() => v$.value.$invalid,
|
|
50
53
|
(invalid) => {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
:show-clear="false"
|
|
5
5
|
:label="t('cases.status')"
|
|
6
6
|
:search-method="caseStatusesSearchMethod"
|
|
7
|
-
:v="vSelection"
|
|
7
|
+
:v="!disableValidation && vSelection"
|
|
8
8
|
:model-value="value.selection"
|
|
9
9
|
data-key="id"
|
|
10
10
|
option-value="id"
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
:disabled="!value.selection"
|
|
18
18
|
:label="t('webitelUI.filters.filterValue')"
|
|
19
19
|
:search-method="getConditionList"
|
|
20
|
-
:v="vConditions"
|
|
20
|
+
:v="!disableValidation && vConditions"
|
|
21
21
|
:model-value="value.conditions"
|
|
22
22
|
data-key="id"
|
|
23
23
|
option-value="id"
|
|
@@ -38,6 +38,10 @@ import {
|
|
|
38
38
|
caseStatusesSearchMethod,
|
|
39
39
|
} from './config.js';
|
|
40
40
|
|
|
41
|
+
const props = defineProps<{
|
|
42
|
+
disableValidation?: boolean;
|
|
43
|
+
}>();
|
|
44
|
+
|
|
41
45
|
type ModelValue = {
|
|
42
46
|
selection: string;
|
|
43
47
|
conditions: string;
|
|
@@ -103,8 +107,7 @@ const v$ = useVuelidate<{
|
|
|
103
107
|
},
|
|
104
108
|
);
|
|
105
109
|
|
|
106
|
-
v$.value.$touch();
|
|
107
|
-
|
|
110
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
108
111
|
const vSelection = computed(() => {
|
|
109
112
|
const modelValidation = v$.value.model;
|
|
110
113
|
if (!modelValidation) return undefined;
|
package/src/modules/filters/modules/filterConfig/components/contact/contact-filter-value-field.vue
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
5
|
:model-value="model"
|
|
6
|
-
:v="v$.model"
|
|
6
|
+
:v="!disableValidation && v$.model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
9
9
|
/>
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -42,8 +46,7 @@ const v$ = useVuelidate(
|
|
|
42
46
|
$autoDirty: true,
|
|
43
47
|
},
|
|
44
48
|
);
|
|
45
|
-
v$.value.$touch();
|
|
46
|
-
|
|
49
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
47
50
|
watch(
|
|
48
51
|
() => v$.value.$invalid,
|
|
49
52
|
(invalid) => {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="props.filterConfig.searchRecords"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
:model-value="model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
@@ -20,6 +20,7 @@ import { WtSysTypeFilterConfig } from '../../classes/FilterConfig';
|
|
|
20
20
|
|
|
21
21
|
const props = defineProps<{
|
|
22
22
|
filterConfig: WtSysTypeFilterConfig;
|
|
23
|
+
disableValidation?: boolean;
|
|
23
24
|
}>();
|
|
24
25
|
|
|
25
26
|
type ModelValue = number[];
|
|
@@ -46,8 +47,7 @@ const v$ = useVuelidate(
|
|
|
46
47
|
$autoDirty: true,
|
|
47
48
|
},
|
|
48
49
|
);
|
|
49
|
-
v$.value.$touch();
|
|
50
|
-
|
|
50
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
51
51
|
watch(
|
|
52
52
|
() => v$.value.$invalid,
|
|
53
53
|
(invalid) => {
|
package/src/modules/filters/modules/filterConfig/components/gateway/gateway-filter-value-field.vue
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<wt-multi-select
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchGateway"
|
|
5
|
-
:v="v$.model"
|
|
5
|
+
:v="!disableValidation && v$.model"
|
|
6
6
|
:model-value="model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -42,8 +46,7 @@ const v$ = useVuelidate(
|
|
|
42
46
|
$autoDirty: true,
|
|
43
47
|
},
|
|
44
48
|
);
|
|
45
|
-
v$.value.$touch();
|
|
46
|
-
|
|
49
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
47
50
|
const searchGateway = async (params: { search?: string }) => {
|
|
48
51
|
return params.search
|
|
49
52
|
? await searchMethod({
|
package/src/modules/filters/modules/filterConfig/components/grantee/grantee-filter-value-field.vue
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:search-method="searchMethod"
|
|
5
5
|
:model-value="model"
|
|
6
|
-
:v="v$.model"
|
|
6
|
+
:v="!disableValidation && v$.model"
|
|
7
7
|
option-value="id"
|
|
8
8
|
@update:model-value="handleInput"
|
|
9
9
|
/>
|
|
@@ -20,6 +20,10 @@ import { searchMethod } from './config.js';
|
|
|
20
20
|
|
|
21
21
|
type ModelValue = number[];
|
|
22
22
|
|
|
23
|
+
const props = defineProps<{
|
|
24
|
+
disableValidation?: boolean;
|
|
25
|
+
}>();
|
|
26
|
+
|
|
23
27
|
const model = defineModel<ModelValue>();
|
|
24
28
|
|
|
25
29
|
const emit = defineEmits<{
|
|
@@ -42,8 +46,7 @@ const v$ = useVuelidate(
|
|
|
42
46
|
$autoDirty: true,
|
|
43
47
|
},
|
|
44
48
|
);
|
|
45
|
-
v$.value.$touch();
|
|
46
|
-
|
|
49
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
47
50
|
watch(
|
|
48
51
|
() => v$.value.$invalid,
|
|
49
52
|
(invalid) => {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
:label="t('webitelUI.filters.filterValue')"
|
|
4
4
|
:options="HangupCauseOptions"
|
|
5
5
|
v-model:model-value="model"
|
|
6
|
-
:v="v$.model"
|
|
6
|
+
:v="!disableValidation && v$.model"
|
|
7
7
|
data-key="value"
|
|
8
8
|
option-value="value"
|
|
9
9
|
/>
|
|
@@ -18,6 +18,10 @@ import { useI18n } from 'vue-i18n';
|
|
|
18
18
|
|
|
19
19
|
import { HangupCauseOptions } from '../../enums/options/HangupCauseFilterOptions';
|
|
20
20
|
|
|
21
|
+
const props = defineProps<{
|
|
22
|
+
disableValidation?: boolean;
|
|
23
|
+
}>();
|
|
24
|
+
|
|
21
25
|
const model = defineModel<string>();
|
|
22
26
|
const { t } = useI18n();
|
|
23
27
|
|
|
@@ -35,8 +39,7 @@ const v$ = useVuelidate(
|
|
|
35
39
|
},
|
|
36
40
|
);
|
|
37
41
|
|
|
38
|
-
v$.value.$touch();
|
|
39
|
-
|
|
42
|
+
if (!props?.disableValidation) v$.value.$touch();
|
|
40
43
|
const emit = defineEmits<{
|
|
41
44
|
'update:invalid': [
|
|
42
45
|
boolean,
|