@webitel/ui-datalist 1.0.6 → 1.0.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.
Files changed (74) hide show
  1. package/package.json +2 -2
  2. package/src/filters/classes/FiltersManager.ts +1 -1
  3. package/src/filters/components/filter-options/case-assignee/case-assignee-filter-value-preview.vue +36 -0
  4. package/src/filters/components/filter-options/{assignee → case-assignee}/config.js +0 -1
  5. package/src/filters/components/filter-options/case-author/case-author-filter-value-preview.vue +16 -0
  6. package/src/filters/components/filter-options/{author → case-author}/config.js +0 -1
  7. package/src/filters/components/filter-options/case-close-reason-groups/case-close-reason-groups-filter-value-preview.vue +15 -0
  8. package/src/filters/components/filter-options/{close-reason-groups-case → case-close-reason-groups}/config.js +0 -1
  9. package/src/filters/components/filter-options/case-impacted/case-impacted-filter-value-preview.vue +15 -0
  10. package/src/filters/components/filter-options/{reporter → case-impacted}/config.js +0 -1
  11. package/src/filters/components/filter-options/case-priority/case-priority-filter-value-preview.vue +15 -0
  12. package/src/filters/components/filter-options/{priority-case → case-priority}/config.js +0 -1
  13. package/src/filters/components/filter-options/case-reporter/case-reporter-filter-value-preview.vue +15 -0
  14. package/src/filters/components/filter-options/{impacted → case-reporter}/config.js +0 -1
  15. package/src/filters/components/filter-options/case-service/case-service-filter-value-preview.vue +18 -0
  16. package/src/filters/components/filter-options/{service-case → case-service}/config.js +1 -2
  17. package/src/filters/components/filter-options/case-sla/case-sla-filter-value-preview.vue +15 -0
  18. package/src/filters/components/filter-options/{sla → case-sla}/config.js +0 -1
  19. package/src/filters/components/filter-options/case-sla-condition/case-sla-condition-filter-value-preview.vue +15 -0
  20. package/src/filters/components/filter-options/{sla-condition → case-sla-condition}/config.js +0 -1
  21. package/src/filters/components/filter-options/case-source/case-source-filter-value-preview.vue +15 -0
  22. package/src/filters/components/filter-options/{source-case → case-source}/config.js +0 -1
  23. package/src/filters/components/filter-options/case-status/case-status-filter-value-preview.vue +15 -0
  24. package/src/filters/components/filter-options/{status-case → case-status}/config.js +0 -1
  25. package/src/filters/components/filter-options/contact/config.js +0 -1
  26. package/src/filters/components/filter-options/contact-group/config.js +0 -1
  27. package/src/filters/components/filter-options/contact-group/contact-group-filter-value-preview.vue +20 -22
  28. package/src/filters/components/filter-options/gateway/config.js +0 -1
  29. package/src/filters/components/filter-options/grantee/config.js +0 -1
  30. package/src/filters/components/filter-options/index.ts +184 -149
  31. package/src/filters/components/filter-options/queue/config.js +0 -1
  32. package/src/filters/components/filter-options/rated-by/config.js +0 -1
  33. package/src/filters/components/filter-options/team/config.js +0 -1
  34. package/src/filters/components/filter-options/user/config.js +0 -1
  35. package/src/filters/components/preview/dynamic-filter-preview.vue +3 -2
  36. package/src/filters/components/search-bar/dynamic-filter-search.vue +123 -0
  37. package/src/filters/components/search-bar/types/DynamicFilterSearch.d.ts +5 -0
  38. package/src/filters/enums/FilterOption.ts +3 -3
  39. package/src/filters/index.ts +1 -1
  40. package/src/filters/components/dynamic-filter-search.vue +0 -60
  41. package/src/filters/components/filter-options/assignee/assignee-filter-value-preview.vue +0 -36
  42. package/src/filters/components/filter-options/author/author-filter-value-preview.vue +0 -31
  43. package/src/filters/components/filter-options/close-reason-groups-case/close-reason-groups-case-filter-value-preview.vue +0 -34
  44. package/src/filters/components/filter-options/impacted/impacted-filter-value-preview.vue +0 -31
  45. package/src/filters/components/filter-options/priority-case/priority-case-filter-value-preview.vue +0 -31
  46. package/src/filters/components/filter-options/reporter/reporter-filter-value-preview.vue +0 -31
  47. package/src/filters/components/filter-options/service-case/service-case-filter-value-preview.vue +0 -34
  48. package/src/filters/components/filter-options/sla/sla-filter-value-preview.vue +0 -31
  49. package/src/filters/components/filter-options/sla-condition/sla-condition-filter-value-preview.vue +0 -37
  50. package/src/filters/components/filter-options/source-case/source-case-filter-value-preview.vue +0 -31
  51. package/src/filters/components/filter-options/status-case/status-case-filter-value-preview.vue +0 -37
  52. /package/src/filters/components/filter-options/{direction/direction-filter-value-field.vue → call-direction/call-direction-filter-value-field.vue} +0 -0
  53. /package/src/filters/components/filter-options/{direction/direction-filter-value-preview.vue → call-direction/call-direction-filter-value-preview.vue} +0 -0
  54. /package/src/filters/components/filter-options/{actual-reaction-time/actual-reaction-time-filter-value-field.vue → case-actual-reaction-time/case-actual-reaction-time-filter-value-field.vue} +0 -0
  55. /package/src/filters/components/filter-options/{actual-reaction-time/actual-reaction-time-filter-value-preview.vue → case-actual-reaction-time/case-actual-reaction-time-filter-value-preview.vue} +0 -0
  56. /package/src/filters/components/filter-options/{actual-resolution-time/actual-resolution-time-filter-value-field.vue → case-actual-resolution-time/case-actual-resolution-time-filter-value-field.vue} +0 -0
  57. /package/src/filters/components/filter-options/{actual-resolution-time/actual-resolution-time-filter-value-preview.vue → case-actual-resolution-time/case-actual-resolution-time-filter-value-preview.vue} +0 -0
  58. /package/src/filters/components/filter-options/{assignee/assignee-filter-value-field.vue → case-assignee/case-assignee-filter-value-field.vue} +0 -0
  59. /package/src/filters/components/filter-options/{author/author-filter-value-field.vue → case-author/case-author-filter-value-field.vue} +0 -0
  60. /package/src/filters/components/filter-options/{close-reason-groups-case/close-reason-groups-case-filter-value-field.vue → case-close-reason-groups/case-close-reason-groups-filter-value-field.vue} +0 -0
  61. /package/src/filters/components/filter-options/{impacted/impacted-filter-value-field.vue → case-impacted/case-impacted-filter-value-field.vue} +0 -0
  62. /package/src/filters/components/filter-options/{priority-case/priority-case-filter-value-field.vue → case-priority/case-priority-filter-value-field.vue} +0 -0
  63. /package/src/filters/components/filter-options/{reaction-time/reaction-time-filter-value-field.vue → case-reaction-time/case-reaction-time-filter-value-field.vue} +0 -0
  64. /package/src/filters/components/filter-options/{reaction-time/reaction-time-filter-value-preview.vue → case-reaction-time/case-reaction-time-filter-value-preview.vue} +0 -0
  65. /package/src/filters/components/filter-options/{reporter/reporter-filter-value-field.vue → case-reporter/case-reporter-filter-value-field.vue} +0 -0
  66. /package/src/filters/components/filter-options/{resolution-time/resolution-time-filter-value-field.vue → case-resolution-time/case-resolution-time-filter-value-field.vue} +0 -0
  67. /package/src/filters/components/filter-options/{resolution-time/resolution-time-filter-value-preview.vue → case-resolution-time/case-resolution-time-filter-value-preview.vue} +0 -0
  68. /package/src/filters/components/filter-options/{service-case/service-case-filter-value-field.vue → case-service/case-service-filter-value-field.vue} +0 -0
  69. /package/src/filters/components/filter-options/{sla/sla-filter-value-field.vue → case-sla/case-sla-filter-value-field.vue} +0 -0
  70. /package/src/filters/components/filter-options/{sla-condition/sla-condition-filter-value-field.vue → case-sla-condition/case-sla-condition-filter-value-field.vue} +0 -0
  71. /package/src/filters/components/filter-options/{source-case/source-case-filter-value-field.vue → case-source/case-source-filter-value-field.vue} +0 -0
  72. /package/src/filters/components/filter-options/{status-case/status-case-filter-value-field.vue → case-status/case-status-filter-value-field.vue} +0 -0
  73. /package/src/filters/components/filter-options/{cause/cause-filter-value-field.vue → hangup-cause/hangup-cause-filter-value-field.vue} +0 -0
  74. /package/src/filters/components/filter-options/{cause/cause-filter-value-preview.vue → hangup-cause/hangup-cause-filter-value-preview.vue} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webitel/ui-datalist",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Toolkit for building data lists in webitel ui system",
5
5
  "scripts": {
6
6
  "lint:fix": "eslint --fix ./src && prettier --write --check ./src",
@@ -35,7 +35,7 @@
35
35
  "dependencies": {
36
36
  "@vuelidate/core": "^2.0.3",
37
37
  "@vuelidate/validators": "^2.0.4",
38
- "@webitel/ui-sdk": "^25.4.55"
38
+ "@webitel/ui-sdk": "^25.4.59"
39
39
  },
40
40
  "devDependencies": {
41
41
  "vue-tsc": "^2.2.8",
@@ -55,7 +55,7 @@ class FiltersManager implements IFiltersManager {
55
55
  return filter;
56
56
  }
57
57
 
58
- deleteFilter({ name }: IFilter): IFilter {
58
+ deleteFilter({ name }: { name: FilterName }): IFilter {
59
59
  const filter = this.filters.get(name);
60
60
  this.filters.delete(name);
61
61
  return filter;
@@ -0,0 +1,36 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="{ ...props, value: shownValue }" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import {computed} from "vue";
7
+ import { useI18n } from 'vue-i18n';
8
+ import { WebitelContactsContact } from 'webitel-sdk';
9
+
10
+ import {IFilter} from "../../../types/Filter";
11
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
12
+
13
+ const props = defineProps<{
14
+ value: WebitelContactsContact[];
15
+ filter: IFilter,
16
+ }>();
17
+
18
+ const { t } = useI18n();
19
+
20
+ const rawValue = computed(() => {
21
+ return props.filter.value;
22
+ });
23
+
24
+ const shownValue = computed(() => {
25
+ const shownValue = [...props.value];
26
+ if (rawValue.value.unassigned) {
27
+ shownValue.unshift({
28
+ name: t('reusable.unassigned'),
29
+ id: 'unassigned',
30
+ });
31
+ }
32
+ return shownValue;
33
+ });
34
+ </script>
35
+
36
+ <style scoped></style>
@@ -1,4 +1,3 @@
1
1
  import ContactsAPI from '@webitel/ui-sdk/api/clients/сontacts/contacts';
2
2
 
3
3
  export const searchMethod = ContactsAPI.getLookup;
4
- export const localePath = '';
@@ -0,0 +1,16 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
7
+
8
+ const props = defineProps<{
9
+ /**
10
+ * would be great to use generated type for this
11
+ * */
12
+ value: Record<string, unknown>[];
13
+ }>();
14
+ </script>
15
+
16
+ <style scoped></style>
@@ -1,4 +1,3 @@
1
1
  import UsersAPI from '@webitel/ui-sdk/api/clients/users/users';
2
2
 
3
3
  export const searchMethod = UsersAPI.getLookup;
4
- export const localePath = '';
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { CasesCloseReasonGroup } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ value: CasesCloseReasonGroup[];
12
+ }>();
13
+ </script>
14
+
15
+ <style scoped></style>
@@ -4,4 +4,3 @@ import CaseCloseReasonsAPI from '@webitel/ui-sdk/api/clients/caseCloseReasons/ca
4
4
  export const caseCloseReasonsGroupsSearchMethod =
5
5
  CaseCloseReasonGroupsAPI.getLookup;
6
6
  export const caseCloseReasonsSearchMethod = CaseCloseReasonsAPI.getLookup;
7
- export const localePath = '';
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { WebitelContactsContact } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ value: WebitelContactsContact[];
12
+ }>();
13
+ </script>
14
+
15
+ <style scoped></style>
@@ -1,4 +1,3 @@
1
1
  import ContactsAPI from '@webitel/ui-sdk/api/clients/сontacts/contacts';
2
2
 
3
3
  export const searchMethod = ContactsAPI.getLookup;
4
- export const localePath = '';
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { CasesPriority } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ value: CasesPriority[];
12
+ }>();
13
+ </script>
14
+
15
+ <style scoped></style>
@@ -1,4 +1,3 @@
1
1
  import CasePrioritiesAPI from '@webitel/ui-sdk/api/clients/casePriorities/casePriorities';
2
2
 
3
3
  export const searchMethod = CasePrioritiesAPI.getLookup;
4
- export const localePath = '';
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { WebitelContactsContact } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ value: WebitelContactsContact[];
12
+ }>();
13
+ </script>
14
+
15
+ <style scoped></style>
@@ -1,4 +1,3 @@
1
1
  import ContactsAPI from '@webitel/ui-sdk/api/clients/сontacts/contacts';
2
2
 
3
3
  export const searchMethod = ContactsAPI.getLookup;
4
- export const localePath = '';
@@ -0,0 +1,18 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { CasesService } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ /**
12
+ * would be great to use generated type for this
13
+ * */
14
+ value: CasesService[];
15
+ }>();
16
+ </script>
17
+
18
+ <style scoped></style>
@@ -2,5 +2,4 @@ import ServiceCatalogsAPI from '@webitel/ui-sdk/api/clients/caseServiceCatalogs/
2
2
  import ServicesAPI from '@webitel/ui-sdk/api/clients/caseServices/services';
3
3
 
4
4
  export const searchMethod = ServiceCatalogsAPI.getList;
5
- export const servicesSearchMethod = ServicesAPI.getList;
6
- export const localePath = '';
5
+ export const servicesSearchMethod = ServicesAPI.getLookup;
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { CasesSLA } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ value: CasesSLA[];
12
+ }>();
13
+ </script>
14
+
15
+ <style scoped></style>
@@ -1,4 +1,3 @@
1
1
  import SlasAPI from '@webitel/ui-sdk/api/clients/slas/slas';
2
2
 
3
3
  export const searchMethod = SlasAPI.getLookup;
4
- export const localePath = '';
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { CasesSLACondition } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ value: CasesSLACondition[];
12
+ }>();
13
+ </script>
14
+
15
+ <style scoped></style>
@@ -3,4 +3,3 @@ import SlasAPI from '@webitel/ui-sdk/api/clients/slas/slas';
3
3
 
4
4
  export const slasConditionsSearchMethod = SLAConditionsAPI.getLookup;
5
5
  export const slasSearchMethod = SlasAPI.getLookup;
6
- export const localePath = '';
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import { CasesSource } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ value: CasesSource[];
12
+ }>();
13
+ </script>
14
+
15
+ <style scoped></style>
@@ -1,4 +1,3 @@
1
1
  import CaseSourcesAPI from '@webitel/ui-sdk/api/clients/caseSources/caseSources';
2
2
 
3
3
  export const searchMethod = CaseSourcesAPI.getLookup;
4
- export const localePath = '';
@@ -0,0 +1,15 @@
1
+ <template>
2
+ <lookup-filter-value-preview v-bind="props" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import type { WebitelcasesStatus } from 'webitel-sdk';
7
+
8
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
9
+
10
+ const props = defineProps<{
11
+ value: WebitelcasesStatus[];
12
+ }>();
13
+ </script>
14
+
15
+ <style scoped></style>
@@ -4,4 +4,3 @@ import CaseStatusesApi from '@webitel/ui-sdk/api/clients/caseStatuses/caseStatus
4
4
  export const caseStatusesSearchMethod = CaseStatusesApi.getLookup;
5
5
  export const caseStatusConditionsSearchMethod =
6
6
  CaseStatusConditionsAPI.getLookup;
7
- export const localePath = '';
@@ -1,4 +1,3 @@
1
1
  import ContactsAPI from '@webitel/ui-sdk/api/clients/сontacts/contacts';
2
2
 
3
3
  export const searchMethod = ContactsAPI.getLookup;
4
- export const localePath = '';
@@ -1,4 +1,3 @@
1
1
  import ContactGroupsAPI from '@webitel/ui-sdk/api/clients/contactGroups/contactGroups';
2
2
 
3
3
  export const searchMethod = ContactGroupsAPI.getLookup;
4
- export const localePath = '';
@@ -1,38 +1,36 @@
1
1
  <template>
2
- <div>
3
- <p v-if="props.value.unassigned">{{ t('reusable.unassigned') }}</p>
4
- <ul v-if="localValue">
5
- <li
6
- v-for="({ name }, index) of localValue"
7
- :key="index"
8
- >
9
- {{ name }}
10
- </li>
11
- </ul>
12
- </div>
2
+ <lookup-filter-value-preview v-bind="{ ...props, value: shownValue }" />
13
3
  </template>
14
4
 
15
5
  <script lang="ts" setup>
16
- import { ref } from 'vue';
6
+ import {computed} from "vue";
17
7
  import { useI18n } from 'vue-i18n';
8
+ import { WebitelContactsContact } from 'webitel-sdk';
18
9
 
19
- import { searchMethod } from './config.js';
10
+ import {IFilter} from "../../../types/Filter";
11
+ import LookupFilterValuePreview from '../_shared/lookup-filter-preview/lookup-filter-value-preview.vue';
20
12
 
21
13
  const props = defineProps<{
22
- value: number[];
14
+ value: WebitelContactsContact[];
15
+ filter: IFilter,
23
16
  }>();
24
17
 
25
- const localValue = ref([]);
26
18
  const { t } = useI18n();
27
19
 
28
- const getLocalValue = async () => {
29
- const { items } = await searchMethod({
30
- id: props.value.list,
31
- });
32
- localValue.value = items;
33
- };
20
+ const rawValue = computed(() => {
21
+ return props.filter.value;
22
+ });
34
23
 
35
- getLocalValue();
24
+ const shownValue = computed(() => {
25
+ const shownValue = [...props.value];
26
+ if (rawValue.value.unassigned) {
27
+ shownValue.unshift({
28
+ name: t('reusable.unassigned'),
29
+ id: 'unassigned',
30
+ });
31
+ }
32
+ return shownValue;
33
+ });
36
34
  </script>
37
35
 
38
36
  <style scoped></style>
@@ -1,4 +1,3 @@
1
1
  import GatewaysAPI from '@webitel/ui-sdk/api/clients/gateways/gateways';
2
2
 
3
3
  export const searchMethod = GatewaysAPI.getLookup;
4
- export const localePath = '';
@@ -1,4 +1,3 @@
1
1
  import RolesAPI from '@webitel/ui-sdk/api/clients/roles/roles';
2
2
 
3
3
  export const searchMethod = RolesAPI.getLookup;
4
- export const localePath = '';