@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,75 @@
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 React, { useMemo } from 'react';
19
+ import { StyleSheet, View } from 'react-native';
20
+ import { Text, useThemeColor, Badge, checkNullString, ProgressBar, } from '@axelor/aos-mobile-ui';
21
+ import { useTranslator, useSelector } from '@axelor/aos-mobile-core';
22
+ import { Ticket } from '../../../types/';
23
+ const TicketHeader = ({}) => {
24
+ const Colors = useThemeColor();
25
+ const I18n = useTranslator();
26
+ const { ticket, ticketTypeList } = useSelector(state => state.ticket);
27
+ const colorIndex = useMemo(() => ticketTypeList?.findIndex(status => status.id === ticket.ticketType?.id), [ticket, ticketTypeList]);
28
+ return (<View style={styles.headerContainer}>
29
+ <View style={styles.headerInfo}>
30
+ <View style={styles.textContainer}>
31
+ {!checkNullString(ticket.ticketSeq) && (<Text writingType="title">{ticket.ticketSeq}</Text>)}
32
+ {!checkNullString(ticket.subject) && <Text>{ticket.subject}</Text>}
33
+ </View>
34
+ <View style={styles.badgeContainer}>
35
+ <View style={styles.upperBadgesContainer}>
36
+ <Badge title={Ticket.getStatus(ticket.statusSelect, I18n)} color={Ticket.getStatusColor(ticket.statusSelect, Colors)}/>
37
+ {!checkNullString(ticket.ticketType?.name) && (<Badge title={ticket.ticketType?.name} color={Ticket.getTypeColor(colorIndex, Colors)}/>)}
38
+ </View>
39
+ {ticket.prioritySelect !== null && (<Badge title={Ticket.getPriority(ticket.prioritySelect, I18n)} color={Ticket.getPriorityColor(ticket.prioritySelect, Colors)}/>)}
40
+ </View>
41
+ </View>
42
+ <ProgressBar value={ticket.progressSelect} style={styles.progressBar}/>
43
+ </View>);
44
+ };
45
+ const styles = StyleSheet.create({
46
+ headerContainer: {
47
+ flexDirection: 'column',
48
+ marginHorizontal: 16,
49
+ },
50
+ headerInfo: {
51
+ flexDirection: 'row',
52
+ justifyContent: 'space-between',
53
+ marginBottom: 2,
54
+ },
55
+ textContainer: {
56
+ width: '50%',
57
+ },
58
+ badgeContainer: {
59
+ width: '50%',
60
+ flexDirection: 'column',
61
+ justifyContent: 'flex-start',
62
+ alignItems: 'center',
63
+ },
64
+ upperBadgesContainer: {
65
+ width: '100%',
66
+ flexDirection: 'row',
67
+ justifyContent: 'space-around',
68
+ alignItems: 'center',
69
+ },
70
+ progressBar: {
71
+ width: '100%',
72
+ },
73
+ });
74
+ export default TicketHeader;
75
+ //# sourceMappingURL=TicketHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TicketHeader.js","sourceRoot":"","sources":["../../../../src/components/templates/TicketHeader/TicketHeader.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export default TicketSearchBar;
2
+ declare function TicketSearchBar({ placeholderKey, defaultValue, onChange, showDetailsPopup, navigate, oneFilter, isFocus, team, }: {
3
+ placeholderKey?: string;
4
+ defaultValue?: string;
5
+ onChange?: () => void;
6
+ showDetailsPopup?: boolean;
7
+ navigate?: boolean;
8
+ oneFilter?: boolean;
9
+ isFocus?: boolean;
10
+ team?: boolean;
11
+ }): JSX.Element;
@@ -0,0 +1,39 @@
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 React, { useCallback } from 'react';
19
+ import { useDispatch, useSelector, useTranslator } from '@axelor/aos-mobile-core';
20
+ import { AutoCompleteSearch } from '@axelor/aos-mobile-ui';
21
+ import { fetchTickets } from '../../../features/ticketSlice';
22
+ const TicketSearchBar = ({ placeholderKey = 'Helpdesk_ticket', defaultValue = '', onChange = () => { }, showDetailsPopup = true, navigate = false, oneFilter = false, isFocus = false, team = false, }) => {
23
+ const I18n = useTranslator();
24
+ const dispatch = useDispatch();
25
+ const displayItemTicketSeq = item => item.ticketSeq;
26
+ const { ticketList, loadingTicket, moreLoading, isListEnd } = useSelector(state => state.ticket);
27
+ const { user } = useSelector(state => state.user);
28
+ const fetchTicketSearchBarAPI = useCallback(({ page = 0, searchValue }) => {
29
+ dispatch(fetchTickets({
30
+ page: page,
31
+ searchValue: searchValue,
32
+ userId: team ? null : user.id,
33
+ userTeam: team ? user.activeTeam : null,
34
+ }));
35
+ }, [dispatch, user, team]);
36
+ return (<AutoCompleteSearch objectList={ticketList} value={defaultValue} onChangeValue={onChange} fetchData={fetchTicketSearchBarAPI} displayValue={displayItemTicketSeq} placeholder={I18n.t(placeholderKey)} showDetailsPopup={showDetailsPopup} loadingList={loadingTicket} moreLoading={moreLoading} isListEnd={isListEnd} navigate={navigate} oneFilter={oneFilter} isFocus={isFocus}/>);
37
+ };
38
+ export default TicketSearchBar;
39
+ //# sourceMappingURL=TicketSearchBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TicketSearchBar.js","sourceRoot":"","sources":["../../../../src/components/templates/TicketSearchBar/TicketSearchBar.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAC,MAAM,OAAO,CAAC;AACzC,OAAO,EAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAE3D,MAAM,eAAe,GAAG,CAAC,EACvB,cAAc,GAAG,iBAAiB,EAClC,YAAY,GAAG,EAAE,EACjB,QAAQ,GAAG,GAAG,EAAE,GAAE,CAAC,EACnB,gBAAgB,GAAG,IAAI,EACvB,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,KAAK,EACf,IAAI,GAAG,KAAK,GACb,EAAE,EAAE;IACH,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,oBAAoB,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;IAEpD,MAAM,EAAC,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAC,GAAG,WAAW,CACrE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CACtB,CAAC;IACF,MAAM,EAAC,IAAI,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEhD,MAAM,uBAAuB,GAAG,WAAW,CACzC,CAAC,EAAC,IAAI,GAAG,CAAC,EAAE,WAAW,EAAC,EAAE,EAAE;QAC1B,QAAQ,CACN,YAAY,CAAC;YACX,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,WAAW;YACxB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YAC7B,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;SACxC,CAAC,CACH,CAAC;IACJ,CAAC,EACD,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CACvB,CAAC;IAEF,OAAO,CACL,CAAC,kBAAkB,CACjB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,KAAK,CAAC,CAAC,YAAY,CAAC,CACpB,aAAa,CAAC,CAAC,QAAQ,CAAC,CACxB,SAAS,CAAC,CAAC,uBAAuB,CAAC,CACnC,YAAY,CAAC,CAAC,oBAAoB,CAAC,CACnC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CACpC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC,WAAW,CAAC,CAAC,aAAa,CAAC,CAC3B,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,OAAO,CAAC,CAAC,OAAO,CAAC,EACjB,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -0,0 +1,15 @@
1
+ export default TicketTypeSearchBar;
2
+ declare function TicketTypeSearchBar({ placeholderKey, titleKey, defaultValue, onChange, showDetailsPopup, navigate, oneFilter, isFocus, style, styleTxt, showTitle, required, }: {
3
+ placeholderKey?: string;
4
+ titleKey?: string;
5
+ defaultValue?: any;
6
+ onChange?: () => void;
7
+ showDetailsPopup?: boolean;
8
+ navigate?: boolean;
9
+ oneFilter?: boolean;
10
+ isFocus?: boolean;
11
+ style: any;
12
+ styleTxt: any;
13
+ showTitle?: boolean;
14
+ required?: boolean;
15
+ }): JSX.Element;
@@ -0,0 +1,52 @@
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 React, { useCallback, useMemo } from 'react';
19
+ import { StyleSheet, View } from 'react-native';
20
+ import { displayItemName, useDispatch, useSelector, useTranslator, } from '@axelor/aos-mobile-core';
21
+ import { AutoCompleteSearch, Text, useThemeColor } from '@axelor/aos-mobile-ui';
22
+ import { searchTicketType } from '../../../features/ticketSlice';
23
+ import { Platform } from 'react-native';
24
+ const TicketTypeSearchBar = ({ placeholderKey = 'Helpdesk_Type', titleKey = 'Helpdesk_Type', defaultValue = null, onChange = () => { }, showDetailsPopup = true, navigate = false, oneFilter = false, isFocus = false, style, styleTxt, showTitle = true, required = false, }) => {
25
+ const I18n = useTranslator();
26
+ const Colors = useThemeColor();
27
+ const dispatch = useDispatch();
28
+ const { ticketTypeList, loadingTicketType, moreLoadingTicketType, isListEndTicketType, } = useSelector(state => state.ticket);
29
+ const styles = useMemo(() => getStyles(Colors), [Colors]);
30
+ const searchTicketTypeAPI = useCallback(({ page = 0, searchValue }) => {
31
+ dispatch(searchTicketType({ page, searchValue }));
32
+ }, [dispatch]);
33
+ return (<View style={[Platform.OS === 'ios' ? styles.container : null, style]}>
34
+ {showTitle && (<Text style={[styles.title, styleTxt]}>{I18n.t(titleKey)}</Text>)}
35
+ <AutoCompleteSearch style={[
36
+ defaultValue == null && required ? styles.requiredBorder : null,
37
+ ]} objectList={ticketTypeList} value={defaultValue} onChangeValue={onChange} fetchData={searchTicketTypeAPI} displayValue={displayItemName} placeholder={I18n.t(placeholderKey)} showDetailsPopup={showDetailsPopup} loadingList={loadingTicketType} moreLoading={moreLoadingTicketType} isListEnd={isListEndTicketType} navigate={navigate} oneFilter={oneFilter} isFocus={isFocus}/>
38
+ </View>);
39
+ };
40
+ const getStyles = Colors => StyleSheet.create({
41
+ container: {
42
+ zIndex: 41,
43
+ },
44
+ title: {
45
+ marginHorizontal: 24,
46
+ },
47
+ requiredBorder: {
48
+ borderColor: Colors.errorColor.background,
49
+ },
50
+ });
51
+ export default TicketTypeSearchBar;
52
+ //# sourceMappingURL=TicketTypeSearchBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TicketTypeSearchBar.js","sourceRoot":"","sources":["../../../../src/components/templates/TicketTypeSearchBar/TicketTypeSearchBar.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export default TicketsStatusButton;
2
+ declare function TicketsStatusButton({}: {}): JSX.Element;
@@ -0,0 +1,45 @@
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 React, { useCallback } from 'react';
19
+ import { useDispatch, useSelector, useTranslator, getNowDateZonesISOString, } from '@axelor/aos-mobile-core';
20
+ import { IconButton, useThemeColor } from '@axelor/aos-mobile-ui';
21
+ import { Ticket } from '../../../types';
22
+ import { updateTicketStatus } from '../../../features/ticketSlice';
23
+ const TicketsStatusButton = ({}) => {
24
+ const I18n = useTranslator();
25
+ const Colors = useThemeColor();
26
+ const dispatch = useDispatch();
27
+ const { ticket } = useSelector(state => state.ticket);
28
+ const updateStatus = useCallback(status => {
29
+ dispatch(updateTicketStatus({
30
+ version: ticket?.version,
31
+ dateTime: getNowDateZonesISOString(),
32
+ targetStatus: status,
33
+ ticketId: ticket?.id,
34
+ }));
35
+ }, [dispatch, ticket]);
36
+ if (ticket?.statusSelect === Ticket.status.New) {
37
+ return (<IconButton title={I18n.t('Helpdesk_Start')} iconName="play" onPress={() => updateStatus(Ticket.stopWatchStatus.start)} color={Colors.primaryColor}/>);
38
+ }
39
+ if (ticket?.statusSelect === Ticket.status.In_Progress) {
40
+ return (<IconButton title={I18n.t('Helpdesk_Resolve')} iconName="check" onPress={() => updateStatus(Ticket.stopWatchStatus.stop)}/>);
41
+ }
42
+ return null;
43
+ };
44
+ export default TicketsStatusButton;
45
+ //# sourceMappingURL=TicketsStatusButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TicketsStatusButton.js","sourceRoot":"","sources":["../../../../src/components/templates/TicketsStatusButton/TicketsStatusButton.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAC,MAAM,OAAO,CAAC;AACzC,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAC,kBAAkB,EAAC,MAAM,+BAA+B,CAAC;AAEjE,MAAM,mBAAmB,GAAG,CAAC,EAAE,EAAE,EAAE;IACjC,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,EAAC,MAAM,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpD,MAAM,YAAY,GAAG,WAAW,CAC9B,MAAM,CAAC,EAAE;QACP,QAAQ,CACN,kBAAkB,CAAC;YACjB,OAAO,EAAE,MAAM,EAAE,OAAO;YACxB,QAAQ,EAAE,wBAAwB,EAAE;YACpC,YAAY,EAAE,MAAM;YACpB,QAAQ,EAAE,MAAM,EAAE,EAAE;SACrB,CAAC,CACH,CAAC;IACJ,CAAC,EACD,CAAC,QAAQ,EAAE,MAAM,CAAC,CACnB,CAAC;IAEF,IAAI,MAAM,EAAE,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;QAC9C,OAAO,CACL,CAAC,UAAU,CACT,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAChC,QAAQ,CAAC,MAAM,CACf,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAC1D,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,EAC3B,CACH,CAAC;KACH;IAED,IAAI,MAAM,EAAE,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;QACtD,OAAO,CACL,CAAC,UAAU,CACT,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAClC,QAAQ,CAAC,OAAO,CAChB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EACzD,CACH,CAAC;KACH;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,15 @@
1
+ export default UserSearchBar;
2
+ declare function UserSearchBar({ placeholderKey, titleKey, defaultValue, onChange, showDetailsPopup, navigate, oneFilter, isFocus, style, styleTxt, showTitle, required, }: {
3
+ placeholderKey?: string;
4
+ titleKey?: string;
5
+ defaultValue?: any;
6
+ onChange?: () => void;
7
+ showDetailsPopup?: boolean;
8
+ navigate?: boolean;
9
+ oneFilter?: boolean;
10
+ isFocus?: boolean;
11
+ style: any;
12
+ styleTxt: any;
13
+ showTitle?: boolean;
14
+ required?: boolean;
15
+ }): JSX.Element;
@@ -0,0 +1,53 @@
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 React, { useCallback, useMemo } from 'react';
19
+ import { StyleSheet, View } from 'react-native';
20
+ import { useDispatch, useSelector, useTranslator } from '@axelor/aos-mobile-core';
21
+ import { AutoCompleteSearch, Text, useThemeColor } from '@axelor/aos-mobile-ui';
22
+ import { searchUser } from '../../../features/userSlice';
23
+ import { displayItemFullname } from '../../../utils/displayers';
24
+ import { Platform } from 'react-native';
25
+ const UserSearchBar = ({ placeholderKey = 'Helpdesk_User', titleKey = 'Helpdesk_User', defaultValue = null, onChange = () => { }, showDetailsPopup = true, navigate = false, oneFilter = false, isFocus = false, style, styleTxt, showTitle = true, required = false, }) => {
26
+ const I18n = useTranslator();
27
+ const Colors = useThemeColor();
28
+ const dispatch = useDispatch();
29
+ const { userList, loadingUser, moreLoading, isListEnd } = useSelector(state => state.userList);
30
+ const styles = useMemo(() => getStyles(Colors), [Colors]);
31
+ const searchUserTypeAPI = useCallback(({ page = 0, searchValue }) => {
32
+ dispatch(searchUser({ page, searchValue }));
33
+ }, [dispatch]);
34
+ return (<View style={[Platform.OS === 'ios' ? styles.container : null, style]}>
35
+ {showTitle && (<Text style={[styles.title, styleTxt]}>{I18n.t(titleKey)}</Text>)}
36
+ <AutoCompleteSearch style={[
37
+ defaultValue == null && required ? styles.requiredBorder : null,
38
+ ]} objectList={userList} value={defaultValue} onChangeValue={onChange} fetchData={searchUserTypeAPI} displayValue={displayItemFullname} placeholder={I18n.t(placeholderKey)} showDetailsPopup={showDetailsPopup} loadingList={loadingUser} moreLoading={moreLoading} isListEnd={isListEnd} navigate={navigate} oneFilter={oneFilter} isFocus={isFocus}/>
39
+ </View>);
40
+ };
41
+ const getStyles = Colors => StyleSheet.create({
42
+ container: {
43
+ zIndex: 41,
44
+ },
45
+ title: {
46
+ marginHorizontal: 24,
47
+ },
48
+ requiredBorder: {
49
+ borderColor: Colors.errorColor.background,
50
+ },
51
+ });
52
+ export default UserSearchBar;
53
+ //# sourceMappingURL=UserSearchBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserSearchBar.js","sourceRoot":"","sources":["../../../../src/components/templates/UserSearchBar/UserSearchBar.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export { default as ContactPartnerSearchBar } from "./ContactPartnerSearchBar/ContactPartnerSearchBar";
2
+ export { default as CustomerSearchBar } from "./CustomerSearchBar/CustomerSearchBar";
3
+ export { default as ProjectSearchBar } from "./ProjectSearchBar/ProjectSearchBar";
4
+ export { default as TicketDropdownCards } from "./TicketDropdownCards/TicketDropdownCards";
5
+ export { default as TicketEditButton } from "./TicketEditButton/TicketEditButton";
6
+ export { default as TicketHeader } from "./TicketHeader/TicketHeader";
7
+ export { default as TicketSearchBar } from "./TicketSearchBar/TicketSearchBar";
8
+ export { default as TicketsStatusButton } from "./TicketsStatusButton/TicketsStatusButton";
9
+ export { default as TicketTypeSearchBar } from "./TicketTypeSearchBar/TicketTypeSearchBar";
10
+ export { default as UserSearchBar } from "./UserSearchBar/UserSearchBar";
@@ -0,0 +1,28 @@
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
+ export { default as ContactPartnerSearchBar } from './ContactPartnerSearchBar/ContactPartnerSearchBar';
19
+ export { default as CustomerSearchBar } from './CustomerSearchBar/CustomerSearchBar';
20
+ export { default as ProjectSearchBar } from './ProjectSearchBar/ProjectSearchBar';
21
+ export { default as TicketDropdownCards } from './TicketDropdownCards/TicketDropdownCards';
22
+ export { default as TicketEditButton } from './TicketEditButton/TicketEditButton';
23
+ export { default as TicketHeader } from './TicketHeader/TicketHeader';
24
+ export { default as TicketSearchBar } from './TicketSearchBar/TicketSearchBar';
25
+ export { default as TicketsStatusButton } from './TicketsStatusButton/TicketsStatusButton';
26
+ export { default as TicketTypeSearchBar } from './TicketTypeSearchBar/TicketTypeSearchBar';
27
+ export { default as UserSearchBar } from './UserSearchBar/UserSearchBar';
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/templates/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,uBAAuB,EAAC,MAAM,mDAAmD,CAAC;AACrG,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,41 @@
1
+ export const searchCustomer: 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 searchCustomerContact: 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 getCustomerbyId: 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 customerReducer: import("redux").Reducer<{
32
+ loading: boolean;
33
+ moreLoading: boolean;
34
+ isListEnd: boolean;
35
+ customerList: any[];
36
+ customer: {};
37
+ loadingCustomerContact: boolean;
38
+ moreLoadingCustomerContact: boolean;
39
+ isListEndCustomerContact: boolean;
40
+ customerContactList: any[];
41
+ }, import("redux").AnyAction>;
@@ -0,0 +1,85 @@
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 { getCustomer, searchCustomer as _searchCustomer, searchCustomerContact as _searchCustomerContact, } from '../api/customer-api';
21
+ export const searchCustomer = createAsyncThunk('customer/searchCustomer', async function (data, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: _searchCustomer,
24
+ data,
25
+ action: 'Helpdesk_SliceAction_FetchCustomer',
26
+ getState,
27
+ responseOptions: { isArrayResponse: true },
28
+ });
29
+ });
30
+ export const searchCustomerContact = createAsyncThunk('customer/searchCustomerContact', async function (data, { getState }) {
31
+ return handlerApiCall({
32
+ fetchFunction: _searchCustomerContact,
33
+ data,
34
+ action: 'Helpdesk_SliceAction_FetchCustomerContact',
35
+ getState,
36
+ responseOptions: { isArrayResponse: true },
37
+ });
38
+ });
39
+ export const getCustomerbyId = createAsyncThunk('customer/getCustomerbyId', async function (data = {}, { getState }) {
40
+ return handlerApiCall({
41
+ fetchFunction: getCustomer,
42
+ data,
43
+ action: 'Helpdesk_SliceAction_FetchCustomerById',
44
+ getState,
45
+ responseOptions: { isArrayResponse: false },
46
+ });
47
+ });
48
+ const initialState = {
49
+ loading: false,
50
+ moreLoading: false,
51
+ isListEnd: false,
52
+ customerList: [],
53
+ customer: {},
54
+ loadingCustomerContact: false,
55
+ moreLoadingCustomerContact: false,
56
+ isListEndCustomerContact: false,
57
+ customerContactList: [],
58
+ };
59
+ const customerSlice = createSlice({
60
+ name: 'customer',
61
+ initialState,
62
+ extraReducers: builder => {
63
+ generateInifiniteScrollCases(builder, searchCustomer, {
64
+ loading: 'loading',
65
+ moreLoading: 'moreLoading',
66
+ isListEnd: 'isListEnd',
67
+ list: 'customerList',
68
+ });
69
+ generateInifiniteScrollCases(builder, searchCustomerContact, {
70
+ loading: 'loadingCustomerContact',
71
+ moreLoading: 'moreLoadingCustomerContact',
72
+ isListEnd: 'isListEndCustomerContact',
73
+ list: 'customerContactList',
74
+ });
75
+ builder.addCase(getCustomerbyId.pending, state => {
76
+ state.loading = true;
77
+ });
78
+ builder.addCase(getCustomerbyId.fulfilled, (state, action) => {
79
+ state.loading = false;
80
+ state.customer = action.payload;
81
+ });
82
+ },
83
+ });
84
+ export const customerReducer = customerSlice.reducer;
85
+ //# sourceMappingURL=customerSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customerSlice.js","sourceRoot":"","sources":["../../src/features/customerSlice.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,EACL,WAAW,EACX,cAAc,IAAI,eAAe,EACjC,qBAAqB,IAAI,sBAAsB,GAChD,MAAM,qBAAqB,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAC5C,yBAAyB,EACzB,KAAK,WAAW,IAAI,EAAE,EAAC,QAAQ,EAAC;IAC9B,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,eAAe;QAC9B,IAAI;QACJ,MAAM,EAAE,oCAAoC;QAC5C,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CACnD,gCAAgC,EAChC,KAAK,WAAW,IAAI,EAAE,EAAC,QAAQ,EAAC;IAC9B,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,sBAAsB;QACrC,IAAI;QACJ,MAAM,EAAE,2CAA2C;QACnD,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAC7C,0BAA0B,EAC1B,KAAK,WAAW,IAAI,GAAG,EAAE,EAAE,EAAC,QAAQ,EAAC;IACnC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,WAAW;QAC1B,IAAI;QACJ,MAAM,EAAE,wCAAwC;QAChD,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,KAAK,EAAC;KAC1C,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,OAAO,EAAE,KAAK;IACd,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE,EAAE;IACZ,sBAAsB,EAAE,KAAK;IAC7B,0BAA0B,EAAE,KAAK;IACjC,wBAAwB,EAAE,KAAK;IAC/B,mBAAmB,EAAE,EAAE;CACxB,CAAC;AAEF,MAAM,aAAa,GAAG,WAAW,CAAC;IAChC,IAAI,EAAE,UAAU;IAChB,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,4BAA4B,CAAC,OAAO,EAAE,cAAc,EAAE;YACpD,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,WAAW;YACtB,IAAI,EAAE,cAAc;SACrB,CAAC,CAAC;QACH,4BAA4B,CAAC,OAAO,EAAE,qBAAqB,EAAE;YAC3D,OAAO,EAAE,wBAAwB;YACjC,WAAW,EAAE,4BAA4B;YACzC,SAAS,EAAE,0BAA0B;YACrC,IAAI,EAAE,qBAAqB;SAC5B,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAC/C,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC3D,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC"}
@@ -0,0 +1,14 @@
1
+ export const fetchHelpdeskConfig: 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 helpdeskConfigReducer: import("redux").Reducer<{
12
+ loadingConfig: boolean;
13
+ helpdeskConfig: {};
14
+ }, 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 } from '@axelor/aos-mobile-core';
20
+ import { fetchHelpdeskConfig as _fetchHelpdeskConfig } from '../api/helpdesk-config-api';
21
+ export const fetchHelpdeskConfig = createAsyncThunk('AppHelpdesk/fetchHelpdeskConfig', async function (data = {}, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: _fetchHelpdeskConfig,
24
+ data,
25
+ action: 'Helpdesk_SliceAction_FetchHelpdeskConfig',
26
+ getState,
27
+ responseOptions: { isArrayResponse: false },
28
+ errorOptions: { showErrorToast: false, errorTracing: false },
29
+ });
30
+ });
31
+ const initialState = {
32
+ loadingConfig: false,
33
+ helpdeskConfig: {},
34
+ };
35
+ const helpdeskConfigSlice = createSlice({
36
+ name: 'helpdeskConfig',
37
+ initialState,
38
+ extraReducers: builder => {
39
+ builder.addCase(fetchHelpdeskConfig.pending, state => {
40
+ state.loadingConfig = true;
41
+ });
42
+ builder.addCase(fetchHelpdeskConfig.fulfilled, (state, action) => {
43
+ state.loadingConfig = false;
44
+ state.helpdeskConfig = action.payload;
45
+ });
46
+ },
47
+ });
48
+ export const helpdeskConfigReducer = helpdeskConfigSlice.reducer;
49
+ //# sourceMappingURL=helpdeskConfigSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpdeskConfigSlice.js","sourceRoot":"","sources":["../../src/features/helpdeskConfigSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAC,mBAAmB,IAAI,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AAEvF,MAAM,CAAC,MAAM,mBAAmB,GAAG,gBAAgB,CACjD,iCAAiC,EACjC,KAAK,WAAW,IAAI,GAAG,EAAE,EAAE,EAAC,QAAQ,EAAC;IACnC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,oBAAoB;QACnC,IAAI;QACJ,MAAM,EAAE,0CAA0C;QAClD,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,KAAK,EAAC;QACzC,YAAY,EAAE,EAAC,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAC;KAC3D,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,aAAa,EAAE,KAAK;IACpB,cAAc,EAAE,EAAE;CACnB,CAAC;AAEF,MAAM,mBAAmB,GAAG,WAAW,CAAC;IACtC,IAAI,EAAE,gBAAgB;IACtB,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YACnD,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC/D,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;YAC5B,KAAK,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC,OAAO,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { customerReducer as customer } from "./customerSlice";
2
+ export { helpdeskConfigReducer as helpdeskConfig } from "./helpdeskConfigSlice";
3
+ export { projectReducer as project } from "./projectSlice";
4
+ export { ticketReducer as ticket } from "./ticketSlice";
5
+ export { timerReducer as timer } from "./timerSlice";
6
+ export { userListReducer as userList } from "./userSlice";
@@ -0,0 +1,24 @@
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
+ export { customerReducer as customer } from './customerSlice';
19
+ export { helpdeskConfigReducer as helpdeskConfig } from './helpdeskConfigSlice';
20
+ export { projectReducer as project } from './projectSlice';
21
+ export { ticketReducer as ticket } from './ticketSlice';
22
+ export { timerReducer as timer } from './timerSlice';
23
+ export { userListReducer as userList } from './userSlice';
24
+ //# sourceMappingURL=index.js.map