@axelor/aos-mobile-helpdesk 7.1.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 (142) hide show
  1. package/README.md +44 -0
  2. package/lib/api/customer-api.d.ts +11 -0
  3. package/lib/api/customer-api.js +57 -0
  4. package/lib/api/customer-api.js.map +1 -0
  5. package/lib/api/helpdesk-config-api.d.ts +1 -0
  6. package/lib/api/helpdesk-config-api.js +23 -0
  7. package/lib/api/helpdesk-config-api.js.map +1 -0
  8. package/lib/api/project-api.d.ts +4 -0
  9. package/lib/api/project-api.js +31 -0
  10. package/lib/api/project-api.js.map +1 -0
  11. package/lib/api/ticket-api.d.ts +26 -0
  12. package/lib/api/ticket-api.js +99 -0
  13. package/lib/api/ticket-api.js.map +1 -0
  14. package/lib/api/timer-api.d.ts +6 -0
  15. package/lib/api/timer-api.js +44 -0
  16. package/lib/api/timer-api.js.map +1 -0
  17. package/lib/api/user-api.d.ts +4 -0
  18. package/lib/api/user-api.js +31 -0
  19. package/lib/api/user-api.js.map +1 -0
  20. package/lib/components/index.d.ts +2 -0
  21. package/lib/components/index.js +20 -0
  22. package/lib/components/index.js.map +1 -0
  23. package/lib/components/molecules/DurationFormInput/DurationFormInput.d.ts +8 -0
  24. package/lib/components/molecules/DurationFormInput/DurationFormInput.js +73 -0
  25. package/lib/components/molecules/DurationFormInput/DurationFormInput.js.map +1 -0
  26. package/lib/components/molecules/DurationFormInput/duration.helpers.d.ts +9 -0
  27. package/lib/components/molecules/DurationFormInput/duration.helpers.js +44 -0
  28. package/lib/components/molecules/DurationFormInput/duration.helpers.js.map +1 -0
  29. package/lib/components/molecules/ProgressFormInput/ProgressFormInput.d.ts +9 -0
  30. package/lib/components/molecules/ProgressFormInput/ProgressFormInput.js +31 -0
  31. package/lib/components/molecules/ProgressFormInput/ProgressFormInput.js.map +1 -0
  32. package/lib/components/molecules/TicketCard/TicketCard.d.ts +17 -0
  33. package/lib/components/molecules/TicketCard/TicketCard.js +87 -0
  34. package/lib/components/molecules/TicketCard/TicketCard.js.map +1 -0
  35. package/lib/components/molecules/index.d.ts +3 -0
  36. package/lib/components/molecules/index.js +21 -0
  37. package/lib/components/molecules/index.js.map +1 -0
  38. package/lib/components/templates/ContactPartnerSearchBar/ContactPartnerSearchBar.d.ts +15 -0
  39. package/lib/components/templates/ContactPartnerSearchBar/ContactPartnerSearchBar.js +56 -0
  40. package/lib/components/templates/ContactPartnerSearchBar/ContactPartnerSearchBar.js.map +1 -0
  41. package/lib/components/templates/CustomerSearchBar/CustomerSearchBar.d.ts +15 -0
  42. package/lib/components/templates/CustomerSearchBar/CustomerSearchBar.js +52 -0
  43. package/lib/components/templates/CustomerSearchBar/CustomerSearchBar.js.map +1 -0
  44. package/lib/components/templates/ProjectSearchBar/ProjectSearchBar.d.ts +15 -0
  45. package/lib/components/templates/ProjectSearchBar/ProjectSearchBar.js +52 -0
  46. package/lib/components/templates/ProjectSearchBar/ProjectSearchBar.js.map +1 -0
  47. package/lib/components/templates/TicketDropdownCards/DropdownGeneralView.d.ts +8 -0
  48. package/lib/components/templates/TicketDropdownCards/DropdownGeneralView.js +42 -0
  49. package/lib/components/templates/TicketDropdownCards/DropdownGeneralView.js.map +1 -0
  50. package/lib/components/templates/TicketDropdownCards/DropdownTimingView.d.ts +7 -0
  51. package/lib/components/templates/TicketDropdownCards/DropdownTimingView.js +46 -0
  52. package/lib/components/templates/TicketDropdownCards/DropdownTimingView.js.map +1 -0
  53. package/lib/components/templates/TicketDropdownCards/TicketDropdownCards.d.ts +2 -0
  54. package/lib/components/templates/TicketDropdownCards/TicketDropdownCards.js +51 -0
  55. package/lib/components/templates/TicketDropdownCards/TicketDropdownCards.js.map +1 -0
  56. package/lib/components/templates/TicketEditButton/TicketEditButton.d.ts +4 -0
  57. package/lib/components/templates/TicketEditButton/TicketEditButton.js +36 -0
  58. package/lib/components/templates/TicketEditButton/TicketEditButton.js.map +1 -0
  59. package/lib/components/templates/TicketHeader/TicketHeader.d.ts +2 -0
  60. package/lib/components/templates/TicketHeader/TicketHeader.js +75 -0
  61. package/lib/components/templates/TicketHeader/TicketHeader.js.map +1 -0
  62. package/lib/components/templates/TicketSearchBar/TicketSearchBar.d.ts +11 -0
  63. package/lib/components/templates/TicketSearchBar/TicketSearchBar.js +39 -0
  64. package/lib/components/templates/TicketSearchBar/TicketSearchBar.js.map +1 -0
  65. package/lib/components/templates/TicketTypeSearchBar/TicketTypeSearchBar.d.ts +15 -0
  66. package/lib/components/templates/TicketTypeSearchBar/TicketTypeSearchBar.js +52 -0
  67. package/lib/components/templates/TicketTypeSearchBar/TicketTypeSearchBar.js.map +1 -0
  68. package/lib/components/templates/TicketsStatusButton/TicketsStatusButton.d.ts +2 -0
  69. package/lib/components/templates/TicketsStatusButton/TicketsStatusButton.js +45 -0
  70. package/lib/components/templates/TicketsStatusButton/TicketsStatusButton.js.map +1 -0
  71. package/lib/components/templates/UserSearchBar/UserSearchBar.d.ts +15 -0
  72. package/lib/components/templates/UserSearchBar/UserSearchBar.js +53 -0
  73. package/lib/components/templates/UserSearchBar/UserSearchBar.js.map +1 -0
  74. package/lib/components/templates/index.d.ts +10 -0
  75. package/lib/components/templates/index.js +28 -0
  76. package/lib/components/templates/index.js.map +1 -0
  77. package/lib/features/customerSlice.d.ts +41 -0
  78. package/lib/features/customerSlice.js +85 -0
  79. package/lib/features/customerSlice.js.map +1 -0
  80. package/lib/features/helpdeskConfigSlice.d.ts +14 -0
  81. package/lib/features/helpdeskConfigSlice.js +49 -0
  82. package/lib/features/helpdeskConfigSlice.js.map +1 -0
  83. package/lib/features/index.d.ts +6 -0
  84. package/lib/features/index.js +24 -0
  85. package/lib/features/index.js.map +1 -0
  86. package/lib/features/projectSlice.d.ts +16 -0
  87. package/lib/features/projectSlice.js +49 -0
  88. package/lib/features/projectSlice.js.map +1 -0
  89. package/lib/features/ticketSlice.d.ts +81 -0
  90. package/lib/features/ticketSlice.js +175 -0
  91. package/lib/features/ticketSlice.js.map +1 -0
  92. package/lib/features/timerSlice.d.ts +26 -0
  93. package/lib/features/timerSlice.js +73 -0
  94. package/lib/features/timerSlice.js.map +1 -0
  95. package/lib/features/userSlice.d.ts +16 -0
  96. package/lib/features/userSlice.js +49 -0
  97. package/lib/features/userSlice.js.map +1 -0
  98. package/lib/hooks/use-helpdesk-header-actions.d.ts +1 -0
  99. package/lib/hooks/use-helpdesk-header-actions.js +35 -0
  100. package/lib/hooks/use-helpdesk-header-actions.js.map +1 -0
  101. package/lib/i18n/en.json +57 -0
  102. package/lib/i18n/fr.json +57 -0
  103. package/lib/index.d.ts +4 -0
  104. package/lib/index.js +67 -0
  105. package/lib/index.js.map +1 -0
  106. package/lib/models/index.d.ts +3 -0
  107. package/lib/models/index.js +21 -0
  108. package/lib/models/index.js.map +1 -0
  109. package/lib/models/objectFields.d.ts +2 -0
  110. package/lib/models/objectFields.js +72 -0
  111. package/lib/models/objectFields.js.map +1 -0
  112. package/lib/models/searchFields.d.ts +2 -0
  113. package/lib/models/searchFields.js +46 -0
  114. package/lib/models/searchFields.js.map +1 -0
  115. package/lib/models/sortFields.d.ts +2 -0
  116. package/lib/models/sortFields.js +26 -0
  117. package/lib/models/sortFields.js.map +1 -0
  118. package/lib/screens/MyTeamTicketListScreen.d.ts +4 -0
  119. package/lib/screens/MyTeamTicketListScreen.js +124 -0
  120. package/lib/screens/MyTeamTicketListScreen.js.map +1 -0
  121. package/lib/screens/MyTicketListScreen.d.ts +4 -0
  122. package/lib/screens/MyTicketListScreen.js +124 -0
  123. package/lib/screens/MyTicketListScreen.js.map +1 -0
  124. package/lib/screens/TicketDetailsScreen.d.ts +4 -0
  125. package/lib/screens/TicketDetailsScreen.js +95 -0
  126. package/lib/screens/TicketDetailsScreen.js.map +1 -0
  127. package/lib/screens/TicketFormScreen.d.ts +5 -0
  128. package/lib/screens/TicketFormScreen.js +127 -0
  129. package/lib/screens/TicketFormScreen.js.map +1 -0
  130. package/lib/screens/index.d.ts +40 -0
  131. package/lib/screens/index.js +50 -0
  132. package/lib/screens/index.js.map +1 -0
  133. package/lib/types/index.d.ts +1 -0
  134. package/lib/types/index.js +19 -0
  135. package/lib/types/index.js.map +1 -0
  136. package/lib/types/ticket.d.ts +53 -0
  137. package/lib/types/ticket.js +217 -0
  138. package/lib/types/ticket.js.map +1 -0
  139. package/lib/utils/displayers.d.ts +1 -0
  140. package/lib/utils/displayers.js +19 -0
  141. package/lib/utils/displayers.js.map +1 -0
  142. package/package.json +50 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/features/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,eAAe,IAAI,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAC,qBAAqB,IAAI,cAAc,EAAC,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAC,cAAc,IAAI,OAAO,EAAC,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAC,aAAa,IAAI,MAAM,EAAC,MAAM,eAAe,CAAC;AACtD,OAAO,EAAC,YAAY,IAAI,KAAK,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,eAAe,IAAI,QAAQ,EAAC,MAAM,aAAa,CAAC"}
@@ -0,0 +1,16 @@
1
+ export const searchProject: import("@reduxjs/toolkit").AsyncThunk<any, void, {
2
+ state?: unknown;
3
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
4
+ extra?: unknown;
5
+ rejectValue?: unknown;
6
+ serializedErrorType?: unknown;
7
+ pendingMeta?: unknown;
8
+ fulfilledMeta?: unknown;
9
+ rejectedMeta?: unknown;
10
+ }>;
11
+ export const projectReducer: import("redux").Reducer<{
12
+ loadingProject: boolean;
13
+ moreLoading: boolean;
14
+ isListEnd: boolean;
15
+ projectList: any[];
16
+ }, import("redux").AnyAction>;
@@ -0,0 +1,49 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
19
+ import { handlerApiCall, generateInifiniteScrollCases, } from '@axelor/aos-mobile-core';
20
+ import { searchProject as _searchProject } from '../api/project-api';
21
+ export const searchProject = createAsyncThunk('Project/searchProject', async function (data, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: _searchProject,
24
+ data,
25
+ action: 'Helpdesk_SliceAction_FetchProjects',
26
+ getState,
27
+ responseOptions: { isArrayResponse: true },
28
+ });
29
+ });
30
+ const initialState = {
31
+ loadingProject: true,
32
+ moreLoading: false,
33
+ isListEnd: false,
34
+ projectList: [],
35
+ };
36
+ const projectSlice = createSlice({
37
+ name: 'project',
38
+ initialState,
39
+ extraReducers: builder => {
40
+ generateInifiniteScrollCases(builder, searchProject, {
41
+ loading: 'loadingProject',
42
+ moreLoading: 'moreLoading',
43
+ isListEnd: 'isListEnd',
44
+ list: 'projectList',
45
+ });
46
+ },
47
+ });
48
+ export const projectReducer = projectSlice.reducer;
49
+ //# sourceMappingURL=projectSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectSlice.js","sourceRoot":"","sources":["../../src/features/projectSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACL,cAAc,EACd,4BAA4B,GAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,aAAa,IAAI,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAEnE,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAgB,CAC3C,uBAAuB,EACvB,KAAK,WAAW,IAAI,EAAE,EAAC,QAAQ,EAAC;IAC9B,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,cAAc;QAC7B,IAAI;QACJ,MAAM,EAAE,oCAAoC;QAC5C,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,cAAc,EAAE,IAAI;IACpB,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,YAAY,GAAG,WAAW,CAAC;IAC/B,IAAI,EAAE,SAAS;IACf,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,4BAA4B,CAAC,OAAO,EAAE,aAAa,EAAE;YACnD,OAAO,EAAE,gBAAgB;YACzB,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,WAAW;YACtB,IAAI,EAAE,aAAa;SACpB,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC"}
@@ -0,0 +1,81 @@
1
+ export const fetchTickets: import("@reduxjs/toolkit").AsyncThunk<any, void, {
2
+ state?: unknown;
3
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
4
+ extra?: unknown;
5
+ rejectValue?: unknown;
6
+ serializedErrorType?: unknown;
7
+ pendingMeta?: unknown;
8
+ fulfilledMeta?: unknown;
9
+ rejectedMeta?: unknown;
10
+ }>;
11
+ export const fetchTicketType: import("@reduxjs/toolkit").AsyncThunk<any, void, {
12
+ state?: unknown;
13
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
14
+ extra?: unknown;
15
+ rejectValue?: unknown;
16
+ serializedErrorType?: unknown;
17
+ pendingMeta?: unknown;
18
+ fulfilledMeta?: unknown;
19
+ rejectedMeta?: unknown;
20
+ }>;
21
+ export const fetchTicketById: import("@reduxjs/toolkit").AsyncThunk<any, void, {
22
+ state?: unknown;
23
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
24
+ extra?: unknown;
25
+ rejectValue?: unknown;
26
+ serializedErrorType?: unknown;
27
+ pendingMeta?: unknown;
28
+ fulfilledMeta?: unknown;
29
+ rejectedMeta?: unknown;
30
+ }>;
31
+ export const updateTicketStatus: import("@reduxjs/toolkit").AsyncThunk<any, void, {
32
+ state?: unknown;
33
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
34
+ extra?: unknown;
35
+ rejectValue?: unknown;
36
+ serializedErrorType?: unknown;
37
+ pendingMeta?: unknown;
38
+ fulfilledMeta?: unknown;
39
+ rejectedMeta?: unknown;
40
+ }>;
41
+ export const searchTicketType: import("@reduxjs/toolkit").AsyncThunk<any, void, {
42
+ state?: unknown;
43
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
44
+ extra?: unknown;
45
+ rejectValue?: unknown;
46
+ serializedErrorType?: unknown;
47
+ pendingMeta?: unknown;
48
+ fulfilledMeta?: unknown;
49
+ rejectedMeta?: unknown;
50
+ }>;
51
+ export const updateTicket: import("@reduxjs/toolkit").AsyncThunk<any, void, {
52
+ state?: unknown;
53
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
54
+ extra?: unknown;
55
+ rejectValue?: unknown;
56
+ serializedErrorType?: unknown;
57
+ pendingMeta?: unknown;
58
+ fulfilledMeta?: unknown;
59
+ rejectedMeta?: unknown;
60
+ }>;
61
+ export const createTicket: import("@reduxjs/toolkit").AsyncThunk<any, void, {
62
+ state?: unknown;
63
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
64
+ extra?: unknown;
65
+ rejectValue?: unknown;
66
+ serializedErrorType?: unknown;
67
+ pendingMeta?: unknown;
68
+ fulfilledMeta?: unknown;
69
+ rejectedMeta?: unknown;
70
+ }>;
71
+ export const ticketReducer: import("redux").Reducer<{
72
+ loadingTicket: boolean;
73
+ moreLoading: boolean;
74
+ isListEnd: boolean;
75
+ ticketList: any[];
76
+ ticket: {};
77
+ loadingTicketType: boolean;
78
+ moreLoadingTicketType: boolean;
79
+ isListEndTicketType: boolean;
80
+ ticketTypeList: any[];
81
+ }, import("redux").AnyAction>;
@@ -0,0 +1,175 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
19
+ import { generateInifiniteScrollCases, handlerApiCall, updateAgendaItems, } from '@axelor/aos-mobile-core';
20
+ import { getTicket, getTicketType, searchTickets, updateStatusTicket, searchTicketType as _searchTicketType, updateTicket as _updateTicket, createTicket as _createTicket, } from '../api/ticket-api';
21
+ export const fetchTickets = createAsyncThunk('ticket/fetchTickets', async function (data, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: searchTickets,
24
+ data,
25
+ action: 'Helpdesk_SliceAction_FetchMyTicket',
26
+ getState,
27
+ responseOptions: { isArrayResponse: true },
28
+ });
29
+ });
30
+ export const fetchTicketType = createAsyncThunk('ticket/fetchTicketType', async function (data = {}, { getState }) {
31
+ return handlerApiCall({
32
+ fetchFunction: getTicketType,
33
+ data,
34
+ action: 'Helpdesk_SliceAction_FetchTicketType',
35
+ getState,
36
+ responseOptions: { isArrayResponse: true },
37
+ });
38
+ });
39
+ export const fetchTicketById = createAsyncThunk('ticket/fetchTicketById', async function (data = {}, { getState }) {
40
+ return handlerApiCall({
41
+ fetchFunction: getTicket,
42
+ data,
43
+ action: 'Helpdesk_SliceAction_FetchTicketById',
44
+ getState,
45
+ responseOptions: { isArrayResponse: false },
46
+ });
47
+ });
48
+ export const updateTicketStatus = createAsyncThunk('ticket/updateTicketStatus', async function (data = {}, { getState }) {
49
+ return handlerApiCall({
50
+ fetchFunction: updateStatusTicket,
51
+ data,
52
+ action: 'Helpdesk_SliceAction_UpdateTicketStatus',
53
+ getState,
54
+ responseOptions: { isArrayResponse: false },
55
+ }).then(() => {
56
+ return handlerApiCall({
57
+ fetchFunction: getTicket,
58
+ data: { ticketId: data?.ticketId },
59
+ action: 'Helpdesk_SliceAction_FetchTicketById',
60
+ getState,
61
+ responseOptions: { isArrayResponse: false },
62
+ });
63
+ });
64
+ });
65
+ export const searchTicketType = createAsyncThunk('ticket/searchTicketType', async function (data, { getState }) {
66
+ return handlerApiCall({
67
+ fetchFunction: _searchTicketType,
68
+ data,
69
+ action: 'Helpdesk_SliceAction_SearchTicketType',
70
+ getState,
71
+ responseOptions: { isArrayResponse: true },
72
+ });
73
+ });
74
+ export const updateTicket = createAsyncThunk('ticket/updateTicket', async function (data = {}, { getState }) {
75
+ return handlerApiCall({
76
+ fetchFunction: _updateTicket,
77
+ data,
78
+ action: 'Helpdesk_SliceAction_UpdateTicket',
79
+ getState,
80
+ responseOptions: { isArrayResponse: false, showToast: true },
81
+ }).then(() => {
82
+ return handlerApiCall({
83
+ fetchFunction: getTicket,
84
+ data: { ticketId: data?.ticket?.id },
85
+ action: 'Helpdesk_SliceAction_FetchTicketById',
86
+ getState,
87
+ responseOptions: { isArrayResponse: false },
88
+ });
89
+ });
90
+ });
91
+ export const createTicket = createAsyncThunk('ticket/createTicket', async function (data = {}, { getState }) {
92
+ return handlerApiCall({
93
+ fetchFunction: _createTicket,
94
+ data,
95
+ action: 'Helpdesk_SliceAction_CreateTicket',
96
+ getState,
97
+ responseOptions: { isArrayResponse: false, showToast: true },
98
+ }).then(() => {
99
+ return handlerApiCall({
100
+ fetchFunction: searchTickets,
101
+ data,
102
+ action: 'Helpdesk_SliceAction_FetchMyTicket',
103
+ getState,
104
+ responseOptions: { isArrayResponse: true },
105
+ });
106
+ });
107
+ });
108
+ const initialState = {
109
+ loadingTicket: true,
110
+ moreLoading: false,
111
+ isListEnd: false,
112
+ ticketList: [],
113
+ ticket: {},
114
+ loadingTicketType: true,
115
+ moreLoadingTicketType: false,
116
+ isListEndTicketType: false,
117
+ ticketTypeList: [],
118
+ };
119
+ const ticketSlice = createSlice({
120
+ name: 'ticket',
121
+ initialState,
122
+ extraReducers: builder => {
123
+ generateInifiniteScrollCases(builder, fetchTickets, {
124
+ loading: 'loadingTicket',
125
+ moreLoading: 'moreLoading',
126
+ isListEnd: 'isListEnd',
127
+ list: 'ticketList',
128
+ });
129
+ generateInifiniteScrollCases(builder, searchTicketType, {
130
+ loading: 'loadingTicketType',
131
+ moreLoading: 'moreLoadingTicketType',
132
+ isListEnd: 'isListEndTicketType',
133
+ list: 'ticketTypeList',
134
+ });
135
+ builder.addCase(fetchTicketType.pending, state => {
136
+ state.loadingTicketType = true;
137
+ });
138
+ builder.addCase(fetchTicketType.fulfilled, (state, action) => {
139
+ state.loadingTicketType = false;
140
+ state.ticketTypeList = action.payload;
141
+ });
142
+ builder.addCase(fetchTicketById.pending, (state, action) => {
143
+ state.loadingTicket = true;
144
+ });
145
+ builder.addCase(fetchTicketById.fulfilled, (state, action) => {
146
+ state.loadingTicket = false;
147
+ state.ticket = action.payload;
148
+ });
149
+ builder.addCase(updateTicketStatus.pending, (state, action) => {
150
+ state.loadingTicket = true;
151
+ });
152
+ builder.addCase(updateTicketStatus.fulfilled, (state, action) => {
153
+ state.loadingTicket = false;
154
+ state.ticket = action.payload;
155
+ state.ticketList = updateAgendaItems(state.ticketList, [action.payload]);
156
+ });
157
+ builder.addCase(updateTicket.pending, (state, action) => {
158
+ state.loadingTicket = true;
159
+ });
160
+ builder.addCase(updateTicket.fulfilled, (state, action) => {
161
+ state.loadingTicket = false;
162
+ state.ticket = action.payload;
163
+ state.ticketList = updateAgendaItems(state.ticketList, [action.payload]);
164
+ });
165
+ builder.addCase(createTicket.pending, (state, action) => {
166
+ state.loadingTicket = true;
167
+ });
168
+ builder.addCase(createTicket.fulfilled, (state, action) => {
169
+ state.loadingTicket = false;
170
+ state.ticketList = action.payload;
171
+ });
172
+ },
173
+ });
174
+ export const ticketReducer = ticketSlice.reducer;
175
+ //# sourceMappingURL=ticketSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticketSlice.js","sourceRoot":"","sources":["../../src/features/ticketSlice.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ export const fetchTimerById: import("@reduxjs/toolkit").AsyncThunk<any, void, {
2
+ state?: unknown;
3
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
4
+ extra?: unknown;
5
+ rejectValue?: unknown;
6
+ serializedErrorType?: unknown;
7
+ pendingMeta?: unknown;
8
+ fulfilledMeta?: unknown;
9
+ rejectedMeta?: unknown;
10
+ }>;
11
+ export const searchTimerHistoryById: import("@reduxjs/toolkit").AsyncThunk<any, void, {
12
+ state?: unknown;
13
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
14
+ extra?: unknown;
15
+ rejectValue?: unknown;
16
+ serializedErrorType?: unknown;
17
+ pendingMeta?: unknown;
18
+ fulfilledMeta?: unknown;
19
+ rejectedMeta?: unknown;
20
+ }>;
21
+ export const clearTimer: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"timer/clearTimer">;
22
+ export const timerReducer: import("redux").Reducer<import("immer/dist/internal").WritableDraft<{
23
+ loadingTimer: boolean;
24
+ timer: {};
25
+ timerHistory: any[];
26
+ }>, import("redux").AnyAction>;
@@ -0,0 +1,73 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
19
+ import { handlerApiCall } from '@axelor/aos-mobile-core';
20
+ import { getTimer, searchTimerHistoryWithId } from '../api/timer-api';
21
+ export const fetchTimerById = createAsyncThunk('timer/fetchTimerById', async function (data = {}, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: getTimer,
24
+ data,
25
+ action: 'Helpdesk_SliceAction_FetchTimerById',
26
+ getState,
27
+ responseOptions: { isArrayResponse: false },
28
+ });
29
+ });
30
+ export const searchTimerHistoryById = createAsyncThunk('timerHistory/searchTimerHistoryById', async function (data = {}, { getState }) {
31
+ return handlerApiCall({
32
+ fetchFunction: searchTimerHistoryWithId,
33
+ data,
34
+ action: 'Helpdesk_SliceAction_FetchTimerHistory',
35
+ getState,
36
+ responseOptions: { isArrayResponse: true },
37
+ });
38
+ });
39
+ const initialState = {
40
+ loadingTimer: true,
41
+ timer: {},
42
+ timerHistory: [],
43
+ };
44
+ const ticketSlice = createSlice({
45
+ name: 'timer',
46
+ initialState,
47
+ reducers: {
48
+ clearTimer: state => {
49
+ state.timer = {};
50
+ state.timerHistory = [];
51
+ },
52
+ },
53
+ extraReducers: builder => {
54
+ builder.addCase(fetchTimerById.pending, (state, action) => {
55
+ state.loadingTimer = true;
56
+ });
57
+ builder.addCase(fetchTimerById.fulfilled, (state, action) => {
58
+ state.loadingTimer = false;
59
+ state.timer = action.payload;
60
+ state.timerHistory = [];
61
+ });
62
+ builder.addCase(searchTimerHistoryById.pending, state => {
63
+ state.loadingTimer = true;
64
+ });
65
+ builder.addCase(searchTimerHistoryById.fulfilled, (state, action) => {
66
+ state.loadingTimer = false;
67
+ state.timerHistory = action.payload ?? [];
68
+ });
69
+ },
70
+ });
71
+ export const { clearTimer } = ticketSlice.actions;
72
+ export const timerReducer = ticketSlice.reducer;
73
+ //# sourceMappingURL=timerSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timerSlice.js","sourceRoot":"","sources":["../../src/features/timerSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAC,QAAQ,EAAE,wBAAwB,EAAC,MAAM,kBAAkB,CAAC;AAEpE,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAC5C,sBAAsB,EACtB,KAAK,WAAW,IAAI,GAAG,EAAE,EAAE,EAAC,QAAQ,EAAC;IACnC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,QAAQ;QACvB,IAAI;QACJ,MAAM,EAAE,qCAAqC;QAC7C,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,KAAK,EAAC;KAC1C,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,gBAAgB,CACpD,qCAAqC,EACrC,KAAK,WAAW,IAAI,GAAG,EAAE,EAAE,EAAC,QAAQ,EAAC;IACnC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,wBAAwB;QACvC,IAAI;QACJ,MAAM,EAAE,wCAAwC;QAChD,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,YAAY,EAAE,IAAI;IAClB,KAAK,EAAE,EAAE;IACT,YAAY,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,WAAW,GAAG,WAAW,CAAC;IAC9B,IAAI,EAAE,OAAO;IACb,YAAY;IACZ,QAAQ,EAAE;QACR,UAAU,EAAE,KAAK,CAAC,EAAE;YAClB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;QAC1B,CAAC;KACF;IACD,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACxD,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC1D,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC;YAC3B,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;YAC7B,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YACtD,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAClE,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC;YAC3B,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAC,UAAU,EAAC,GAAG,WAAW,CAAC,OAAO,CAAC;AAEhD,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC"}
@@ -0,0 +1,16 @@
1
+ export const searchUser: import("@reduxjs/toolkit").AsyncThunk<any, void, {
2
+ state?: unknown;
3
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
4
+ extra?: unknown;
5
+ rejectValue?: unknown;
6
+ serializedErrorType?: unknown;
7
+ pendingMeta?: unknown;
8
+ fulfilledMeta?: unknown;
9
+ rejectedMeta?: unknown;
10
+ }>;
11
+ export const userListReducer: import("redux").Reducer<{
12
+ loadingUser: boolean;
13
+ userList: any[];
14
+ moreLoading: boolean;
15
+ isListEnd: boolean;
16
+ }, import("redux").AnyAction>;
@@ -0,0 +1,49 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
19
+ import { generateInifiniteScrollCases, handlerApiCall, } from '@axelor/aos-mobile-core';
20
+ import { searchUser as _searchUser } from '../api/user-api';
21
+ export const searchUser = createAsyncThunk('user/searchUser', async function (data, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: _searchUser,
24
+ data,
25
+ action: 'Helpdesk_SliceAction_SearchUser',
26
+ getState,
27
+ responseOptions: { isArrayResponse: true },
28
+ });
29
+ });
30
+ const initialState = {
31
+ loadingUser: true,
32
+ userList: [],
33
+ moreLoading: false,
34
+ isListEnd: false,
35
+ };
36
+ const userSlice = createSlice({
37
+ name: 'user',
38
+ initialState,
39
+ extraReducers: builder => {
40
+ generateInifiniteScrollCases(builder, searchUser, {
41
+ loading: 'loadingUser',
42
+ moreLoading: 'moreLoading',
43
+ isListEnd: 'isListEnd',
44
+ list: 'userList',
45
+ });
46
+ },
47
+ });
48
+ export const userListReducer = userSlice.reducer;
49
+ //# sourceMappingURL=userSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userSlice.js","sourceRoot":"","sources":["../../src/features/userSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACL,4BAA4B,EAC5B,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,UAAU,IAAI,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAE1D,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CACxC,iBAAiB,EACjB,KAAK,WAAW,IAAI,EAAE,EAAC,QAAQ,EAAC;IAC9B,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,WAAW;QAC1B,IAAI;QACJ,MAAM,EAAE,iCAAiC;QACzC,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,WAAW,EAAE,IAAI;IACjB,QAAQ,EAAE,EAAE;IACZ,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;CACjB,CAAC;AAEF,MAAM,SAAS,GAAG,WAAW,CAAC;IAC5B,IAAI,EAAE,MAAM;IACZ,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,4BAA4B,CAAC,OAAO,EAAE,UAAU,EAAE;YAChD,OAAO,EAAE,aAAa;YACtB,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,WAAW;YACtB,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC,OAAO,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const useHelpdeskHeaders: () => void;
@@ -0,0 +1,35 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { headerActionsProvider, useSelector } from '@axelor/aos-mobile-core';
19
+ import { useEffect } from 'react';
20
+ const useHeldpeskTicketDetailsActions = () => {
21
+ const { mobileSettings } = useSelector((state) => state.config);
22
+ const { ticket } = useSelector((state) => state.ticket);
23
+ useEffect(() => {
24
+ headerActionsProvider.registerModel('helpdesk_ticket_details', {
25
+ model: 'com.axelor.apps.helpdesk.db.Ticket',
26
+ modelId: ticket?.id,
27
+ disableMailMessages: !mobileSettings?.isTrackerMessageEnabled,
28
+ attachedFileScreenTitle: ticket?.fullName,
29
+ });
30
+ }, [mobileSettings, ticket]);
31
+ };
32
+ export const useHelpdeskHeaders = () => {
33
+ useHeldpeskTicketDetailsActions();
34
+ };
35
+ //# sourceMappingURL=use-helpdesk-header-actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-helpdesk-header-actions.js","sourceRoot":"","sources":["../../src/hooks/use-helpdesk-header-actions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,qBAAqB,EAAE,WAAW,EAAC,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAEhC,MAAM,+BAA+B,GAAG,GAAG,EAAE;IAC3C,MAAM,EAAC,cAAc,EAAC,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnE,MAAM,EAAC,MAAM,EAAC,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE;QACb,qBAAqB,CAAC,aAAa,CAAC,yBAAyB,EAAE;YAC7D,KAAK,EAAE,oCAAoC;YAC3C,OAAO,EAAE,MAAM,EAAE,EAAE;YACnB,mBAAmB,EAAE,CAAC,cAAc,EAAE,uBAAuB;YAC7D,uBAAuB,EAAE,MAAM,EAAE,QAAQ;SAC1C,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,+BAA+B,EAAE,CAAC;AACpC,CAAC,CAAC"}
@@ -0,0 +1,57 @@
1
+ {
2
+ "Helpdesk_Helpdesk": "Helpdesk",
3
+ "Helpdesk_Ticket": "Ticket",
4
+ "Helpdesk_Progress": "Progress",
5
+ "Helpdesk_Duration": "Duration",
6
+ "Helpdesk_Deadline": "Deadline",
7
+ "Helpdesk_User_In_Charge": "User in charge",
8
+ "Helpdesk_Assigned_To": "Assigned to",
9
+ "Helpdesk_Status_New": "New",
10
+ "Helpdesk_Status_In_Progress": "In progress",
11
+ "Helpdesk_Status_Resolved": "Resolved",
12
+ "Helpdesk_Status_Closed": "Closed",
13
+ "Helpdesk_Priority": "Priority",
14
+ "Helpdesk_Priority_Low": "Low",
15
+ "Helpdesk_Priority_Normal": "Normal",
16
+ "Helpdesk_Priority_High": "High",
17
+ "Helpdesk_Priority_Urgent": "Urgent",
18
+ "Helpdesk_myTickets": "My tickets",
19
+ "Helpdesk_Status": "Status",
20
+ "Helpdesk_Type": "Type",
21
+ "Helpdesk_myTeamTickets": "My team tickets",
22
+ "helpdesk_createTicket": "Create ticket",
23
+ "Helpdesk_StartDate": "Start date",
24
+ "Helpdesk_EndDate": "End date",
25
+ "Helpdesk_Project": "Project",
26
+ "Helpdesk_CustomPartner": "Customer",
27
+ "Helpdesk_ContactPartner": "Customer contact",
28
+ "Helpdesk_GeneralInformations": "General informations",
29
+ "Helpdesk_Timing": "Timing",
30
+ "Helpdesk_Close": "Close",
31
+ "Helpdesk_Start": "Start",
32
+ "Helpdesk_Pause": "Pause",
33
+ "Helpdesk_Resolve": "Resolve",
34
+ "Helpdesk_Reset": "Reset",
35
+ "Hepdesk_Subject": "Subject",
36
+ "Helpdesk_NoGeneralInformation": "No general informations",
37
+ "Helpdesk_NoTimingInformation": "No timing informations",
38
+ "Helpdesk_AssignedToUser": "Assigned to",
39
+ "Helpdesk_ResponsibleUser": "User in charge",
40
+ "Helpdesk_DeadlineDate": "Deadline",
41
+ "Helpdesk_SliceAction_FetchMyTicket": "fetch my tickets",
42
+ "Helpdesk_SliceAction_FetchTicketType": "fetch ticket types",
43
+ "Helpdesk_SliceAction_FetchMyTeamTicket": "fetch my team tickets",
44
+ "Helpdesk_SliceAction_FetchTicketById": "fetch ticket by id",
45
+ "Helpdesk_SliceAction_FetchTimerById": "fetch timer by id",
46
+ "Helpdesk_SliceAction_FetchTimerHistory": "fetch timer history",
47
+ "Helpdesk_SliceAction_UpdateTicketStatus": "update ticket status",
48
+ "Helpdesk_SliceAction_FetchHelpdeskConfig": "fetch helpdesk config",
49
+ "Helpdesk_SliceAction_SearchUser": "fetch user",
50
+ "Helpdesk_SliceAction_FetchCustomer": "fetch customer",
51
+ "Helpdesk_SliceAction_FetchCustomerById": "fetch customer by id",
52
+ "Helpdesk_SliceAction_FetchProjects": "fetch projects",
53
+ "Helpdesk_SliceAction_SearchTicketType": "search ticket types",
54
+ "Helpdesk_SliceAction_UpdateTicket": "update ticket",
55
+ "Helpdesk_SliceAction_CreateTicket": "create ticket",
56
+ "Helpdesk_SliceAction_FetchCustomerContact": "fetch customer contact"
57
+ }