@codeleap/mobile 4.2.18 → 4.3.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 (200) hide show
  1. package/dist/components/ActivityIndicator/types.d.ts +1 -1
  2. package/dist/components/Autocomplete/index.js +2 -1
  3. package/dist/components/Autocomplete/index.js.map +1 -1
  4. package/dist/components/Autocomplete/types.d.ts +2 -1
  5. package/dist/components/Avatar/index.js +3 -1
  6. package/dist/components/Avatar/index.js.map +1 -1
  7. package/dist/components/Badge/index.js +1 -1
  8. package/dist/components/Badge/index.js.map +1 -1
  9. package/dist/components/Badge/types.d.ts +1 -1
  10. package/dist/components/Button/styles.d.ts +1 -1
  11. package/dist/components/Calendar/index.js +1 -1
  12. package/dist/components/Calendar/index.js.map +1 -1
  13. package/dist/components/Calendar/types.d.ts +1 -1
  14. package/dist/components/DatePickerModal/index.js +3 -1
  15. package/dist/components/DatePickerModal/index.js.map +1 -1
  16. package/dist/components/DatePickerModal/types.d.ts +2 -1
  17. package/dist/components/FileInput/index.js +1 -1
  18. package/dist/components/FileInput/index.js.map +1 -1
  19. package/dist/components/FileInput/types.d.ts +2 -1
  20. package/dist/components/Icon/index.js +2 -1
  21. package/dist/components/Icon/index.js.map +1 -1
  22. package/dist/components/Image/index.js +2 -1
  23. package/dist/components/Image/index.js.map +1 -1
  24. package/dist/components/Image/types.d.ts +1 -1
  25. package/dist/components/ImageView/Spotlight.js +3 -1
  26. package/dist/components/ImageView/Spotlight.js.map +1 -1
  27. package/dist/components/ImageView/component.d.ts +1 -1
  28. package/dist/components/ImageView/component.js +1 -1
  29. package/dist/components/ImageView/component.js.map +1 -1
  30. package/dist/components/InputBase/index.js +2 -1
  31. package/dist/components/InputBase/index.js.map +1 -1
  32. package/dist/components/InputBase/styles.js +1 -1
  33. package/dist/components/InputBase/styles.js.map +1 -1
  34. package/dist/components/InputBase/types.d.ts +1 -1
  35. package/dist/components/List/index.js +2 -1
  36. package/dist/components/List/index.js.map +1 -1
  37. package/dist/components/Modal/index.js +1 -1
  38. package/dist/components/Modal/index.js.map +1 -1
  39. package/dist/components/Modal/types.d.ts +1 -1
  40. package/dist/components/Navigation/Navigation.js +1 -1
  41. package/dist/components/Navigation/Navigation.js.map +1 -1
  42. package/dist/components/NumberIncrement/index.js +2 -1
  43. package/dist/components/NumberIncrement/index.js.map +1 -1
  44. package/dist/components/NumberIncrement/types.d.ts +2 -1
  45. package/dist/components/Pager/PagerDots.d.ts +1 -1
  46. package/dist/components/Pager/index.js +2 -1
  47. package/dist/components/Pager/index.js.map +1 -1
  48. package/dist/components/PaginationIndicator/index.js +1 -1
  49. package/dist/components/PaginationIndicator/index.js.map +1 -1
  50. package/dist/components/PlacesAutocomplete/index.js +1 -1
  51. package/dist/components/PlacesAutocomplete/index.js.map +1 -1
  52. package/dist/components/PlacesAutocomplete/types.d.ts +1 -1
  53. package/dist/components/RadioInput/index.js +1 -1
  54. package/dist/components/RadioInput/index.js.map +1 -1
  55. package/dist/components/RadioInput/types.d.ts +2 -1
  56. package/dist/components/Scroll/index.js +2 -1
  57. package/dist/components/Scroll/index.js.map +1 -1
  58. package/dist/components/SearchInput/index.js +1 -1
  59. package/dist/components/SearchInput/index.js.map +1 -1
  60. package/dist/components/SectionFilters/index.js +2 -1
  61. package/dist/components/SectionFilters/index.js.map +1 -1
  62. package/dist/components/SectionFilters/useSectionFilters.js +2 -1
  63. package/dist/components/SectionFilters/useSectionFilters.js.map +1 -1
  64. package/dist/components/Sections/index.js +2 -1
  65. package/dist/components/Sections/index.js.map +1 -1
  66. package/dist/components/SegmentedControl/Option.d.ts +1 -1
  67. package/dist/components/SegmentedControl/styles.d.ts +1 -1
  68. package/dist/components/SegmentedControl/types.d.ts +1 -1
  69. package/dist/components/Select/index.js +2 -1
  70. package/dist/components/Select/index.js.map +1 -1
  71. package/dist/components/Select/types.d.ts +2 -1
  72. package/dist/components/Slider/index.js +2 -1
  73. package/dist/components/Slider/index.js.map +1 -1
  74. package/dist/components/SortablePhotos/useSortablePhotos.d.ts +1 -1
  75. package/dist/components/SortablePhotos/useSortablePhotos.js +3 -3
  76. package/dist/components/SortablePhotos/useSortablePhotos.js.map +1 -1
  77. package/dist/components/Text/index.js +1 -1
  78. package/dist/components/Text/index.js.map +1 -1
  79. package/dist/components/Text/styles.d.ts +1 -1
  80. package/dist/components/TextInput/index.js +3 -1
  81. package/dist/components/TextInput/index.js.map +1 -1
  82. package/dist/components/TextInput/types.d.ts +2 -1
  83. package/dist/components/Touchable/index.js +3 -1
  84. package/dist/components/Touchable/index.js.map +1 -1
  85. package/dist/components/Touchable/types.d.ts +1 -1
  86. package/dist/components/View/types.d.ts +1 -1
  87. package/dist/modules/types/textInputMask.d.ts +1 -1
  88. package/dist/utils/KeyboardAware/keyboardHooks.js +1 -1
  89. package/dist/utils/KeyboardAware/keyboardHooks.js.map +1 -1
  90. package/dist/utils/MobilePermissionManager/Permission.d.ts +19 -0
  91. package/dist/utils/MobilePermissionManager/Permission.js +65 -0
  92. package/dist/utils/MobilePermissionManager/Permission.js.map +1 -0
  93. package/dist/utils/MobilePermissionManager/PermissionManager.d.ts +24 -0
  94. package/dist/utils/MobilePermissionManager/PermissionManager.js +84 -0
  95. package/dist/utils/MobilePermissionManager/PermissionManager.js.map +1 -0
  96. package/dist/utils/MobilePermissionManager/index.d.ts +3 -0
  97. package/dist/utils/MobilePermissionManager/index.js +5 -0
  98. package/dist/utils/MobilePermissionManager/index.js.map +1 -0
  99. package/dist/utils/MobilePermissionManager/types.d.ts +32 -0
  100. package/dist/utils/MobilePermissionManager/types.js +2 -0
  101. package/dist/utils/MobilePermissionManager/types.js.map +1 -0
  102. package/dist/utils/ModalManager/components.d.ts +1 -1
  103. package/dist/utils/ModalManager/components.js +1 -1
  104. package/dist/utils/ModalManager/components.js.map +1 -1
  105. package/dist/utils/ModalManager/context.d.ts +1 -1
  106. package/dist/utils/ModalManager/context.js +2 -1
  107. package/dist/utils/ModalManager/context.js.map +1 -1
  108. package/dist/utils/NotificationManager/index.d.ts +2 -2
  109. package/dist/utils/NotificationManager/index.js +1 -1
  110. package/dist/utils/NotificationManager/index.js.map +1 -1
  111. package/dist/utils/NotificationManager/types.d.ts +1 -1
  112. package/dist/utils/PermissionManager/context.d.ts +1 -1
  113. package/dist/utils/PermissionManager/context.js +2 -1
  114. package/dist/utils/PermissionManager/context.js.map +1 -1
  115. package/dist/utils/PermissionManager/types.d.ts +1 -1
  116. package/dist/utils/StorageManager.d.ts +1 -1
  117. package/dist/utils/hooks.js +3 -1
  118. package/dist/utils/hooks.js.map +1 -1
  119. package/dist/utils/misc.d.ts +1 -1
  120. package/dist/utils/misc.js +2 -1
  121. package/dist/utils/misc.js.map +1 -1
  122. package/dist/utils/useQueryListRefresh.d.ts +2 -1
  123. package/dist/utils/useQueryListRefresh.js +1 -1
  124. package/dist/utils/useQueryListRefresh.js.map +1 -1
  125. package/package.json +19 -5
  126. package/package.json.bak +18 -4
  127. package/src/components/ActivityIndicator/types.ts +1 -1
  128. package/src/components/Autocomplete/index.tsx +3 -1
  129. package/src/components/Autocomplete/types.ts +2 -1
  130. package/src/components/Avatar/index.tsx +3 -1
  131. package/src/components/Badge/index.tsx +2 -2
  132. package/src/components/Badge/types.ts +1 -1
  133. package/src/components/Button/index.tsx +1 -1
  134. package/src/components/Button/styles.ts +1 -1
  135. package/src/components/Calendar/index.tsx +1 -1
  136. package/src/components/Calendar/types.ts +1 -2
  137. package/src/components/DatePickerModal/index.tsx +3 -1
  138. package/src/components/DatePickerModal/types.ts +2 -1
  139. package/src/components/FileInput/index.tsx +2 -1
  140. package/src/components/FileInput/types.ts +2 -1
  141. package/src/components/Icon/index.tsx +2 -1
  142. package/src/components/Image/index.tsx +2 -1
  143. package/src/components/Image/types.ts +1 -1
  144. package/src/components/ImageView/Spotlight.tsx +3 -1
  145. package/src/components/ImageView/component.tsx +3 -1
  146. package/src/components/InputBase/index.tsx +2 -1
  147. package/src/components/InputBase/styles.ts +1 -1
  148. package/src/components/InputBase/types.ts +1 -1
  149. package/src/components/List/index.tsx +2 -1
  150. package/src/components/Modal/index.tsx +1 -1
  151. package/src/components/Modal/types.ts +1 -1
  152. package/src/components/Navigation/Navigation.tsx +1 -1
  153. package/src/components/NumberIncrement/index.tsx +2 -1
  154. package/src/components/NumberIncrement/types.ts +2 -1
  155. package/src/components/Pager/PagerDots.tsx +1 -1
  156. package/src/components/Pager/index.tsx +2 -1
  157. package/src/components/PaginationIndicator/index.tsx +1 -1
  158. package/src/components/PlacesAutocomplete/index.tsx +1 -1
  159. package/src/components/PlacesAutocomplete/types.ts +1 -1
  160. package/src/components/RadioInput/index.tsx +1 -1
  161. package/src/components/RadioInput/types.ts +2 -1
  162. package/src/components/Scroll/index.tsx +2 -1
  163. package/src/components/SearchInput/index.tsx +1 -1
  164. package/src/components/SectionFilters/index.tsx +2 -1
  165. package/src/components/SectionFilters/useSectionFilters.tsx +2 -1
  166. package/src/components/Sections/index.tsx +2 -1
  167. package/src/components/SegmentedControl/Option.tsx +1 -1
  168. package/src/components/SegmentedControl/styles.ts +1 -1
  169. package/src/components/SegmentedControl/types.ts +1 -1
  170. package/src/components/Select/index.tsx +3 -3
  171. package/src/components/Select/types.ts +2 -1
  172. package/src/components/Slider/index.tsx +2 -1
  173. package/src/components/SortablePhotos/useSortablePhotos.ts +3 -3
  174. package/src/components/Text/index.tsx +1 -1
  175. package/src/components/Text/styles.ts +1 -1
  176. package/src/components/TextInput/index.tsx +3 -1
  177. package/src/components/TextInput/types.ts +2 -1
  178. package/src/components/Touchable/index.tsx +3 -1
  179. package/src/components/Touchable/types.ts +1 -1
  180. package/src/components/View/types.ts +1 -1
  181. package/src/modules/types/textInputMask.ts +1 -1
  182. package/src/utils/KeyboardAware/keyboardHooks.ts +1 -1
  183. package/src/utils/MobilePermissionManager/Permission.ts +79 -0
  184. package/src/utils/MobilePermissionManager/PermissionManager.ts +124 -0
  185. package/src/utils/MobilePermissionManager/index.ts +3 -0
  186. package/src/utils/MobilePermissionManager/types.ts +44 -0
  187. package/src/utils/ModalManager/components.tsx +2 -1
  188. package/src/utils/ModalManager/context.tsx +2 -1
  189. package/src/utils/NotificationManager/index.ts +2 -1
  190. package/src/utils/NotificationManager/types.ts +1 -1
  191. package/src/utils/PermissionManager/context.tsx +3 -1
  192. package/src/utils/PermissionManager/types.ts +1 -1
  193. package/src/utils/StorageManager.ts +1 -1
  194. package/src/utils/hooks.ts +3 -1
  195. package/src/utils/misc.ts +2 -1
  196. package/src/utils/useQueryListRefresh.ts +2 -1
  197. package/dist/utils/deprecated/notifications.d.ts +0 -40
  198. package/dist/utils/deprecated/notifications.js +0 -167
  199. package/dist/utils/deprecated/notifications.js.map +0 -1
  200. package/src/utils/deprecated/notifications.ts +0 -213
@@ -1,213 +0,0 @@
1
- import { FunctionType, silentLogger } from '@codeleap/common'
2
- // @ts-ignore
3
- import { firebase, FirebaseMessagingTypes } from '@react-native-firebase/messaging'
4
-
5
- const messaging = firebase.messaging
6
-
7
- const MODULE = 'Notifications'
8
-
9
- export type Message = FirebaseMessagingTypes.RemoteMessage
10
- export type MessageType = 'foreground' | 'background' | 'press' | 'initial'
11
-
12
- export type NotificationHandler = FunctionType<[message: Message, type: MessageType], any>
13
-
14
- export type HandleNotificationParam = {
15
- data: Message
16
- type: MessageType
17
- }
18
-
19
- export type NotificationStateChangeListener = FunctionType<[isInitialized: boolean, token?: string], any>
20
-
21
- /**
22
- * Class responsible for the notification system
23
- *
24
- * @deprecated Use the most updated version
25
- * @note check the documentation to make the migration
26
- */
27
- export class NotificationManager {
28
-
29
- stateChangeListeners:NotificationStateChangeListener[] = []
30
-
31
- messageListeners:NotificationHandler[] = []
32
-
33
- _initialized = false
34
-
35
- unsubscribeFromMessage = null
36
-
37
- unsubscribeFromBackgroundMessage = null
38
-
39
- unsubscribeFromPress = null
40
-
41
- _currentToken = null
42
-
43
- _initialNoficationHandled = false
44
-
45
- constructor(private logger = silentLogger, public autoHandleInitialNotification = true) {
46
- }
47
-
48
- async init() {
49
- // return
50
- if (this.initialized) return
51
-
52
- try {
53
-
54
- await messaging().registerDeviceForRemoteMessages()
55
- // logger.log('firebase registeted', '', MODULE)
56
-
57
- const token = await messaging().getToken()
58
- // logger.log('init token', { token }, MODULE)
59
-
60
- if (token) {
61
- this.currentToken = token
62
-
63
- this.initialized = true
64
- } else {
65
- this.currentToken = null
66
- this.initialized = false
67
- }
68
-
69
- messaging().onTokenRefresh(newToken => {
70
- // logger.log('onTokenRefresh', { newToken }, MODULE)
71
- if (token) {
72
- this.currentToken = newToken
73
-
74
- this.initialized = true
75
- } else {
76
- this.currentToken = null
77
- this.initialized = false
78
- }
79
-
80
- })
81
- // logger.log('init success', {}, MODULE)
82
- } catch (e) {
83
- this.logger.error('Failed to initialize notification services', e, MODULE)
84
- // OSAlert.error({ title: 'Failed to initialize notification services' })
85
- }
86
- }
87
-
88
- async deinit() {
89
- [
90
- this.unsubscribeFromMessage,
91
- this.unsubscribeFromBackgroundMessage,
92
- this.unsubscribeFromPress,
93
- ].forEach(unsubscribe => {
94
- if (unsubscribe) {
95
- unsubscribe()
96
- }
97
- })
98
-
99
- this.initialized = false
100
- }
101
-
102
- private async handleNotification(args:HandleNotificationParam) {
103
- for (const listener of this.messageListeners) {
104
- await listener(args.data, args.type)
105
- }
106
- }
107
-
108
- get currentToken() {
109
- return this._currentToken
110
- }
111
-
112
- set currentToken(token: string) {
113
- this._currentToken = token
114
- this.triggerStateChange()
115
- }
116
-
117
- get initialized() {
118
- return this._initialized
119
- }
120
-
121
- set initialized(to:boolean) {
122
-
123
- if (to) {
124
- this.logger.info('Initialized', '', MODULE)
125
- this.unsubscribeFromMessage = messaging().onMessage((msg) => {
126
- this.handleNotification({
127
- data: msg,
128
- type: 'foreground',
129
- })
130
- })
131
-
132
- this.unsubscribeFromBackgroundMessage = messaging().setBackgroundMessageHandler(async (msg) => {
133
- this.handleNotification({
134
- data: msg,
135
- type: 'background',
136
- })
137
- })
138
-
139
- this.unsubscribeFromPress = messaging().onNotificationOpenedApp(msg => {
140
- this.logger.info('Notification press', msg, MODULE)
141
- this.handleNotification({
142
- data: msg,
143
- type: 'press',
144
- })
145
- })
146
-
147
- if (!this._initialNoficationHandled && this.autoHandleInitialNotification) {
148
- this.getInitialNotification().then(msg => {
149
- if (!msg.data) return
150
- this.logger.info('Notification initial', msg, MODULE)
151
- this.handleNotification(msg).then(() => {
152
- this._initialNoficationHandled = true
153
- }).catch(e => {
154
- this._initialNoficationHandled = true
155
- this.logger.error('Error handling initial notification', e, MODULE)
156
- })
157
- })
158
- }
159
- } else {
160
- this.unsubscribeFromMessage = null
161
-
162
- this.unsubscribeFromBackgroundMessage = null
163
-
164
- this.unsubscribeFromPress = null
165
-
166
- this.logger.info('Deinitialized', '', MODULE)
167
- }
168
- this._initialized = to
169
-
170
- this.triggerStateChange()
171
- }
172
-
173
- onNotification(handler:NotificationHandler) {
174
- const newLen = this.messageListeners.push(handler)
175
-
176
- return () => {
177
- this.messageListeners.splice(newLen - 1, 1)
178
- }
179
- }
180
-
181
- private triggerStateChange() {
182
- this.stateChangeListeners.forEach(l => {
183
- l(this._initialized, this.currentToken)
184
- })
185
- }
186
-
187
- onStateChange(handler:NotificationStateChangeListener) {
188
- const newLen = this.stateChangeListeners.push(handler)
189
-
190
- return () => {
191
- this.stateChangeListeners.splice(newLen - 1, 1)
192
- }
193
-
194
- }
195
-
196
- async getInitialNotification():Promise<HandleNotificationParam> {
197
- try {
198
-
199
- const msg = await messaging().getInitialNotification()
200
- return {
201
- data: msg as Message,
202
- type: 'initial',
203
- }
204
-
205
- } catch (e) {
206
- return {
207
- data: null,
208
- type: 'initial',
209
- }
210
- }
211
- }
212
- }
213
-