@planningcenter/chat-react-native 3.32.1-rc.0 → 3.33.0-rc.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 (184) hide show
  1. package/build/components/conversation/message_form.d.ts.map +1 -1
  2. package/build/components/conversation/message_form.js +22 -1
  3. package/build/components/conversation/message_form.js.map +1 -1
  4. package/build/components/display/emoji_avatar.d.ts.map +1 -1
  5. package/build/components/display/emoji_avatar.js +2 -0
  6. package/build/components/display/emoji_avatar.js.map +1 -1
  7. package/build/components/display/icon_avatar.d.ts.map +1 -1
  8. package/build/components/display/icon_avatar.js +2 -0
  9. package/build/components/display/icon_avatar.js.map +1 -1
  10. package/build/components/display/utils/avatar_gradient_colors.d.ts +3 -0
  11. package/build/components/display/utils/avatar_gradient_colors.d.ts.map +1 -1
  12. package/build/components/display/utils/avatar_gradient_colors.js +8 -3
  13. package/build/components/display/utils/avatar_gradient_colors.js.map +1 -1
  14. package/build/components/page/error_boundary.d.ts.map +1 -1
  15. package/build/components/page/error_boundary.js +13 -10
  16. package/build/components/page/error_boundary.js.map +1 -1
  17. package/build/components/primitive/avatar_primitive.d.ts +3 -1
  18. package/build/components/primitive/avatar_primitive.d.ts.map +1 -1
  19. package/build/components/primitive/avatar_primitive.js +10 -2
  20. package/build/components/primitive/avatar_primitive.js.map +1 -1
  21. package/build/contexts/api_provider.d.ts.map +1 -1
  22. package/build/contexts/api_provider.js +2 -0
  23. package/build/contexts/api_provider.js.map +1 -1
  24. package/build/hooks/attachments/fallback_chat_configuration.d.ts +4 -0
  25. package/build/hooks/attachments/fallback_chat_configuration.d.ts.map +1 -0
  26. package/build/hooks/attachments/fallback_chat_configuration.js +59 -0
  27. package/build/hooks/attachments/fallback_chat_configuration.js.map +1 -0
  28. package/build/hooks/groups/use_groups_conversation_create.d.ts.map +1 -1
  29. package/build/hooks/groups/use_groups_conversation_create.js +1 -1
  30. package/build/hooks/groups/use_groups_conversation_create.js.map +1 -1
  31. package/build/hooks/services/use_find_or_create_services_conversation.d.ts +43 -11
  32. package/build/hooks/services/use_find_or_create_services_conversation.d.ts.map +1 -1
  33. package/build/hooks/services/use_find_or_create_services_conversation.js +5 -5
  34. package/build/hooks/services/use_find_or_create_services_conversation.js.map +1 -1
  35. package/build/hooks/use_attachment_uploader.d.ts.map +1 -1
  36. package/build/hooks/use_attachment_uploader.js +39 -14
  37. package/build/hooks/use_attachment_uploader.js.map +1 -1
  38. package/build/hooks/use_chat_configuration.d.ts +6 -0
  39. package/build/hooks/use_chat_configuration.d.ts.map +1 -0
  40. package/build/hooks/use_chat_configuration.js +41 -0
  41. package/build/hooks/use_chat_configuration.js.map +1 -0
  42. package/build/hooks/use_conversation_avatar_update.d.ts +26 -0
  43. package/build/hooks/use_conversation_avatar_update.d.ts.map +1 -0
  44. package/build/hooks/use_conversation_avatar_update.js +130 -0
  45. package/build/hooks/use_conversation_avatar_update.js.map +1 -0
  46. package/build/hooks/use_features.d.ts +1 -0
  47. package/build/hooks/use_features.d.ts.map +1 -1
  48. package/build/hooks/use_features.js +1 -0
  49. package/build/hooks/use_features.js.map +1 -1
  50. package/build/navigation/index.d.ts +16 -0
  51. package/build/navigation/index.d.ts.map +1 -1
  52. package/build/navigation/index.js +9 -0
  53. package/build/navigation/index.js.map +1 -1
  54. package/build/screens/avatar_picker/avatar_picker_screen.d.ts +12 -0
  55. package/build/screens/avatar_picker/avatar_picker_screen.d.ts.map +1 -0
  56. package/build/screens/avatar_picker/avatar_picker_screen.js +193 -0
  57. package/build/screens/avatar_picker/avatar_picker_screen.js.map +1 -0
  58. package/build/screens/avatar_picker/avatar_picker_state.d.ts +38 -0
  59. package/build/screens/avatar_picker/avatar_picker_state.d.ts.map +1 -0
  60. package/build/screens/avatar_picker/avatar_picker_state.js +101 -0
  61. package/build/screens/avatar_picker/avatar_picker_state.js.map +1 -0
  62. package/build/screens/avatar_picker/avatar_preview.d.ts +9 -0
  63. package/build/screens/avatar_picker/avatar_preview.d.ts.map +1 -0
  64. package/build/screens/avatar_picker/avatar_preview.js +39 -0
  65. package/build/screens/avatar_picker/avatar_preview.js.map +1 -0
  66. package/build/screens/avatar_picker/color_picker.d.ts +9 -0
  67. package/build/screens/avatar_picker/color_picker.d.ts.map +1 -0
  68. package/build/screens/avatar_picker/color_picker.js +53 -0
  69. package/build/screens/avatar_picker/color_picker.js.map +1 -0
  70. package/build/screens/avatar_picker/constants.d.ts +3 -0
  71. package/build/screens/avatar_picker/constants.d.ts.map +1 -0
  72. package/build/screens/avatar_picker/constants.js +53 -0
  73. package/build/screens/avatar_picker/constants.js.map +1 -0
  74. package/build/screens/avatar_picker/emoji_tab.d.ts +7 -0
  75. package/build/screens/avatar_picker/emoji_tab.d.ts.map +1 -0
  76. package/build/screens/avatar_picker/emoji_tab.js +55 -0
  77. package/build/screens/avatar_picker/emoji_tab.js.map +1 -0
  78. package/build/screens/avatar_picker/icon_grid.d.ts +8 -0
  79. package/build/screens/avatar_picker/icon_grid.d.ts.map +1 -0
  80. package/build/screens/avatar_picker/icon_grid.js +48 -0
  81. package/build/screens/avatar_picker/icon_grid.js.map +1 -0
  82. package/build/screens/avatar_picker/upload_tab.d.ts +9 -0
  83. package/build/screens/avatar_picker/upload_tab.d.ts.map +1 -0
  84. package/build/screens/avatar_picker/upload_tab.js +39 -0
  85. package/build/screens/avatar_picker/upload_tab.js.map +1 -0
  86. package/build/screens/conversation_details_screen.d.ts.map +1 -1
  87. package/build/screens/conversation_details_screen.js +37 -1
  88. package/build/screens/conversation_details_screen.js.map +1 -1
  89. package/build/screens/conversation_new/components/avatar_selection_row.d.ts +12 -0
  90. package/build/screens/conversation_new/components/avatar_selection_row.d.ts.map +1 -0
  91. package/build/screens/conversation_new/components/avatar_selection_row.js +60 -0
  92. package/build/screens/conversation_new/components/avatar_selection_row.js.map +1 -0
  93. package/build/screens/conversation_new/components/gender_filter_toggle.d.ts.map +1 -1
  94. package/build/screens/conversation_new/components/gender_filter_toggle.js +3 -9
  95. package/build/screens/conversation_new/components/gender_filter_toggle.js.map +1 -1
  96. package/build/screens/conversation_new/components/groups_form.d.ts +3 -1
  97. package/build/screens/conversation_new/components/groups_form.d.ts.map +1 -1
  98. package/build/screens/conversation_new/components/groups_form.js +22 -8
  99. package/build/screens/conversation_new/components/groups_form.js.map +1 -1
  100. package/build/screens/conversation_new/components/services_form.d.ts +3 -1
  101. package/build/screens/conversation_new/components/services_form.d.ts.map +1 -1
  102. package/build/screens/conversation_new/components/services_form.js +22 -8
  103. package/build/screens/conversation_new/components/services_form.js.map +1 -1
  104. package/build/screens/conversation_new/conversation_new_screen.d.ts +2 -0
  105. package/build/screens/conversation_new/conversation_new_screen.d.ts.map +1 -1
  106. package/build/screens/conversation_new/conversation_new_screen.js +3 -3
  107. package/build/screens/conversation_new/conversation_new_screen.js.map +1 -1
  108. package/build/screens/team_conversation_screen.d.ts.map +1 -1
  109. package/build/screens/team_conversation_screen.js +1 -1
  110. package/build/screens/team_conversation_screen.js.map +1 -1
  111. package/build/types/resources/chat_configuration_resource.d.ts +8 -0
  112. package/build/types/resources/chat_configuration_resource.d.ts.map +1 -0
  113. package/build/types/resources/chat_configuration_resource.js +2 -0
  114. package/build/types/resources/chat_configuration_resource.js.map +1 -0
  115. package/build/utils/auth_events.d.ts +7 -0
  116. package/build/utils/auth_events.d.ts.map +1 -0
  117. package/build/utils/auth_events.js +17 -0
  118. package/build/utils/auth_events.js.map +1 -0
  119. package/build/utils/native_adapters/configuration.d.ts +3 -0
  120. package/build/utils/native_adapters/configuration.d.ts.map +1 -1
  121. package/build/utils/native_adapters/configuration.js +8 -0
  122. package/build/utils/native_adapters/configuration.js.map +1 -1
  123. package/build/utils/native_adapters/document_picker.d.ts +21 -0
  124. package/build/utils/native_adapters/document_picker.d.ts.map +1 -0
  125. package/build/utils/native_adapters/document_picker.js +7 -0
  126. package/build/utils/native_adapters/document_picker.js.map +1 -0
  127. package/build/utils/native_adapters/image_picker.d.ts +7 -1
  128. package/build/utils/native_adapters/image_picker.d.ts.map +1 -1
  129. package/build/utils/native_adapters/image_picker.js.map +1 -1
  130. package/build/utils/native_adapters/index.d.ts +1 -0
  131. package/build/utils/native_adapters/index.d.ts.map +1 -1
  132. package/build/utils/native_adapters/index.js +1 -0
  133. package/build/utils/native_adapters/index.js.map +1 -1
  134. package/build/utils/request/get_chat_configuration.d.ts +10 -0
  135. package/build/utils/request/get_chat_configuration.d.ts.map +1 -0
  136. package/build/utils/request/get_chat_configuration.js +21 -0
  137. package/build/utils/request/get_chat_configuration.js.map +1 -0
  138. package/package.json +4 -3
  139. package/src/__tests__/hooks/use_attachment_uploader.test.tsx +219 -0
  140. package/src/__tests__/hooks/use_chat_configuration.test.tsx +80 -0
  141. package/src/__tests__/utils/native_adapters/configuration.ts +25 -1
  142. package/src/components/conversation/message_form.tsx +39 -1
  143. package/src/components/display/emoji_avatar.tsx +7 -2
  144. package/src/components/display/icon_avatar.tsx +7 -2
  145. package/src/components/display/utils/avatar_gradient_colors.ts +10 -3
  146. package/src/components/page/error_boundary.tsx +16 -9
  147. package/src/components/primitive/avatar_primitive.tsx +11 -2
  148. package/src/contexts/api_provider.tsx +3 -0
  149. package/src/hooks/attachments/fallback_chat_configuration.ts +61 -0
  150. package/src/hooks/groups/use_groups_conversation_create.ts +2 -1
  151. package/src/hooks/services/use_find_or_create_services_conversation.ts +7 -7
  152. package/src/hooks/use_attachment_uploader.ts +39 -15
  153. package/src/hooks/use_chat_configuration.ts +54 -0
  154. package/src/hooks/use_conversation_avatar_update.ts +163 -0
  155. package/src/hooks/use_features.ts +1 -0
  156. package/src/navigation/index.tsx +13 -0
  157. package/src/screens/avatar_picker/__tests__/avatar_picker_state.test.ts +157 -0
  158. package/src/screens/avatar_picker/avatar_picker_screen.tsx +312 -0
  159. package/src/screens/avatar_picker/avatar_picker_state.ts +141 -0
  160. package/src/screens/avatar_picker/avatar_preview.tsx +46 -0
  161. package/src/screens/avatar_picker/color_picker.tsx +91 -0
  162. package/src/screens/avatar_picker/constants.ts +53 -0
  163. package/src/screens/avatar_picker/emoji_tab.tsx +76 -0
  164. package/src/screens/avatar_picker/icon_grid.tsx +81 -0
  165. package/src/screens/avatar_picker/upload_tab.tsx +62 -0
  166. package/src/screens/conversation_details_screen.tsx +60 -1
  167. package/src/screens/conversation_new/components/avatar_selection_row.tsx +82 -0
  168. package/src/screens/conversation_new/components/gender_filter_toggle.tsx +3 -9
  169. package/src/screens/conversation_new/components/groups_form.tsx +33 -6
  170. package/src/screens/conversation_new/components/services_form.tsx +37 -6
  171. package/src/screens/conversation_new/conversation_new_screen.tsx +17 -3
  172. package/src/screens/team_conversation_screen.tsx +2 -1
  173. package/src/types/resources/chat_configuration_resource.ts +11 -0
  174. package/src/utils/auth_events.ts +21 -0
  175. package/src/utils/native_adapters/configuration.ts +10 -0
  176. package/src/utils/native_adapters/document_picker.ts +26 -0
  177. package/src/utils/native_adapters/image_picker.ts +8 -1
  178. package/src/utils/native_adapters/index.ts +1 -0
  179. package/src/utils/request/get_chat_configuration.ts +23 -0
  180. package/build/hooks/attachments/supported_extensions.d.ts +0 -2
  181. package/build/hooks/attachments/supported_extensions.d.ts.map +0 -1
  182. package/build/hooks/attachments/supported_extensions.js +0 -48
  183. package/build/hooks/attachments/supported_extensions.js.map +0 -1
  184. package/src/hooks/attachments/supported_extensions.ts +0 -47
@@ -1,5 +1,6 @@
1
1
  import { StaticScreenProps } from '@react-navigation/native'
2
2
  import React from 'react'
3
+ import type { AvatarUpdatePayload } from '../../hooks/use_conversation_avatar_update'
3
4
  import { AppName } from '../../types/resources/app_name'
4
5
  import { GraphId } from '../../types/resources/group_resource'
5
6
  import { TeamFilterTypes } from '../conversation_filter_recipients/types'
@@ -15,16 +16,28 @@ type ConversationNewScreenProps = StaticScreenProps<{
15
16
  source_app_name: AppName
16
17
  chat_group_graph_id?: GraphId
17
18
  group_source_app_name?: AppName
19
+ avatar_selection?: AvatarUpdatePayload
18
20
  }>
19
21
 
20
22
  export const ConversationNewScreen = ({ route }: ConversationNewScreenProps) => {
21
- const { group_id, team_ids, source_app_name, plan_id, chat_group_graph_id, team_filter_type } =
22
- route.params
23
+ const {
24
+ group_id,
25
+ team_ids,
26
+ source_app_name,
27
+ plan_id,
28
+ chat_group_graph_id,
29
+ team_filter_type,
30
+ avatar_selection,
31
+ } = route.params
23
32
 
24
33
  switch (source_app_name) {
25
34
  case 'Groups':
26
35
  return group_id ? (
27
- <GroupsForm groupId={group_id} chat_group_graph_id={chat_group_graph_id} />
36
+ <GroupsForm
37
+ groupId={group_id}
38
+ chat_group_graph_id={chat_group_graph_id}
39
+ avatarSelection={avatar_selection}
40
+ />
28
41
  ) : (
29
42
  <SourceAppErrorCard />
30
43
  )
@@ -34,6 +47,7 @@ export const ConversationNewScreen = ({ route }: ConversationNewScreenProps) =>
34
47
  initialTeamIds={team_ids}
35
48
  initialPlanId={plan_id}
36
49
  teamFilterType={team_filter_type}
50
+ avatarSelection={avatar_selection}
37
51
  />
38
52
  )
39
53
  default:
@@ -22,7 +22,8 @@ export const TeamConversationScreen = ({ route }: TeamConversationScreenProps) =
22
22
  const teamAndPlanParams = buildTeamAndPlanParams(route.params.team_ids, route.params.plan_id)
23
23
  const { data: conversation } = useQuery({
24
24
  queryKey: ['team-conversation', route.params.team_ids, route.params.plan_id],
25
- queryFn: () => findOrCreateServicesConversation(apiClient, teamAndPlanParams),
25
+ queryFn: () =>
26
+ findOrCreateServicesConversation(apiClient, teamAndPlanParams).then(r => r.conversation),
26
27
  })
27
28
 
28
29
  useEffect(() => {
@@ -0,0 +1,11 @@
1
+ // Shape after transform_response flattens attributes and camelCases keys.
2
+ // The wire format uses snake_case nested under attributes (see the Rails
3
+ // ChatConfigurationVertex); the JS client transforms it before consumers
4
+ // see it.
5
+ export interface ChatConfigurationResource {
6
+ type: 'ChatConfiguration'
7
+ id: string
8
+ allowedFileExtensions: string[]
9
+ maxFileSizeInBytes: number
10
+ maxAttachmentsPerMessage: number
11
+ }
@@ -0,0 +1,21 @@
1
+ type Listener = () => void
2
+ const listeners = new Set<Listener>()
3
+
4
+ export function onAuthRefresh(listener: Listener) {
5
+ listeners.add(listener)
6
+ return () => {
7
+ listeners.delete(listener)
8
+ }
9
+ }
10
+
11
+ export function emitAuthRefresh() {
12
+ listeners.forEach(fn => fn())
13
+ }
14
+
15
+ export function __resetAuthRefreshListenersForTests() {
16
+ listeners.clear()
17
+ }
18
+
19
+ export function __getAuthRefreshListenerCountForTests() {
20
+ return listeners.size
21
+ }
@@ -2,6 +2,7 @@ import AsyncStorage from '@react-native-async-storage/async-storage'
2
2
  import { Linking as RNLinking } from 'react-native'
3
3
  import { AudioAdapter } from './audio'
4
4
  import { ClipboardAdapter } from './clipboard'
5
+ import { DocumentPickerAdapter } from './document_picker'
5
6
  import { HapticAdapter } from './haptic'
6
7
  import { ImagePickerAdapter } from './image_picker'
7
8
  import { LinkingAdapter } from './linking'
@@ -14,6 +15,7 @@ type ChatConfigurations = {
14
15
  audio: AudioAdapter
15
16
  video: VideoAdapter
16
17
  imagePicker: ImagePickerAdapter
18
+ documentPicker: DocumentPickerAdapter
17
19
  log?: LogAdapter
18
20
  linking?: LinkingAdapter
19
21
  haptic?: HapticAdapter
@@ -25,6 +27,7 @@ export class ChatAdapters {
25
27
  Audio = configurations.audio
26
28
  Video = configurations.video
27
29
  ImagePicker = configurations.imagePicker
30
+ DocumentPicker = configurations.documentPicker
28
31
  Log = configurations.log || new LogAdapter()
29
32
  Linking = configurations.linking || new LinkingAdapter(RNLinking)
30
33
  Haptic = configurations.haptic || new HapticAdapter()
@@ -71,6 +74,13 @@ export let ImagePicker: ImagePickerAdapter = new ImagePickerAdapter({
71
74
  },
72
75
  })
73
76
 
77
+ export let DocumentPicker: DocumentPickerAdapter = new DocumentPickerAdapter({
78
+ openAsync: async () => {
79
+ methodMissing()
80
+ return { canceled: true, assets: null }
81
+ },
82
+ })
83
+
74
84
  export let Log: LogAdapter = new LogAdapter()
75
85
 
76
86
  export let Linking: LinkingAdapter = new LinkingAdapter(RNLinking)
@@ -0,0 +1,26 @@
1
+ export type DocumentPickerAsset = {
2
+ uri: string
3
+ name: string
4
+ size?: number
5
+ mimeType?: string
6
+ }
7
+
8
+ type DocumentPickerSuccessResult = {
9
+ canceled: false
10
+ assets: DocumentPickerAsset[]
11
+ }
12
+
13
+ type DocumentPickerCanceledResult = {
14
+ canceled: true
15
+ assets: null
16
+ }
17
+
18
+ export type DocumentPickerResult = DocumentPickerSuccessResult | DocumentPickerCanceledResult
19
+
20
+ export class DocumentPickerAdapter {
21
+ openAsync: () => Promise<DocumentPickerResult>
22
+
23
+ constructor(methods: DocumentPickerAdapter) {
24
+ this.openAsync = methods.openAsync
25
+ }
26
+ }
@@ -20,9 +20,16 @@ type ImagePickerCanceledResult = {
20
20
 
21
21
  export type ImagePickerResult = ImagePickerSuccessResult | ImagePickerCanceledResult
22
22
 
23
+ export interface ImagePickerOptions {
24
+ selectionLimit?: number
25
+ allowsEditing?: boolean
26
+ allowsMultipleSelection?: boolean
27
+ mediaTypes?: Array<'images' | 'videos' | 'livePhotos'>
28
+ }
29
+
23
30
  export class ImagePickerAdapter {
24
31
  openCameraAsync: () => Promise<ImagePickerResult>
25
- openImageLibraryAsync: () => Promise<ImagePickerResult>
32
+ openImageLibraryAsync: (options?: ImagePickerOptions) => Promise<ImagePickerResult>
26
33
 
27
34
  constructor(methods: ImagePickerAdapter) {
28
35
  this.openCameraAsync = methods.openCameraAsync
@@ -1,6 +1,7 @@
1
1
  export * from './audio'
2
2
  export * from './clipboard'
3
3
  export * from './configuration'
4
+ export * from './document_picker'
4
5
  export * from './image_picker'
5
6
  export * from './linking'
6
7
  export * from './log'
@@ -0,0 +1,23 @@
1
+ import { getRequestQueryKey } from '../../hooks/use_suspense_api'
2
+
3
+ export const getChatConfigurationRequestArgs = () => {
4
+ const url = '/me/chat_configuration'
5
+
6
+ return {
7
+ url,
8
+ data: {
9
+ fields: {
10
+ ChatConfiguration: [
11
+ 'allowed_file_extensions',
12
+ 'max_file_size_in_bytes',
13
+ 'max_attachments_per_message',
14
+ ],
15
+ },
16
+ },
17
+ }
18
+ }
19
+
20
+ export const getChatConfigurationQueryKey = () => {
21
+ const requestArgs = getChatConfigurationRequestArgs()
22
+ return getRequestQueryKey(requestArgs)
23
+ }
@@ -1,2 +0,0 @@
1
- export declare const SUPPORTED_EXTENSIONS: string[];
2
- //# sourceMappingURL=supported_extensions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"supported_extensions.d.ts","sourceRoot":"","sources":["../../../src/hooks/attachments/supported_extensions.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,UA8ChC,CAAA"}
@@ -1,48 +0,0 @@
1
- export const SUPPORTED_EXTENSIONS = [
2
- '.3ga',
3
- '.3gp',
4
- '.aac',
5
- '.amr',
6
- '.avi',
7
- '.bmp',
8
- '.doc',
9
- '.docx',
10
- '.gif',
11
- '.h263',
12
- '.h264',
13
- '.heic',
14
- '.heif',
15
- '.jpeg',
16
- '.jpg',
17
- '.key',
18
- '.m4a',
19
- '.m4b',
20
- '.m4p',
21
- '.m4r',
22
- '.m4v',
23
- '.mkv',
24
- '.mov',
25
- '.mp3',
26
- '.mp4',
27
- '.mp4-latm',
28
- '.mpeg',
29
- '.mpeg4',
30
- '.mpg',
31
- '.numbers',
32
- '.ogg',
33
- '.pages',
34
- '.pdf',
35
- '.png',
36
- '.ppt',
37
- '.pptx',
38
- '.rtf',
39
- '.txt',
40
- '.vcf',
41
- '.wav',
42
- '.webm',
43
- '.webp',
44
- '.wmv',
45
- '.xls',
46
- '.xlsx',
47
- ];
48
- //# sourceMappingURL=supported_extensions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"supported_extensions.js","sourceRoot":"","sources":["../../../src/hooks/attachments/supported_extensions.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,WAAW;IACX,OAAO;IACP,QAAQ;IACR,MAAM;IACN,UAAU;IACV,MAAM;IACN,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;CACR,CAAA","sourcesContent":["export const SUPPORTED_EXTENSIONS = [\n '.3ga',\n '.3gp',\n '.aac',\n '.amr',\n '.avi',\n '.bmp',\n '.doc',\n '.docx',\n '.gif',\n '.h263',\n '.h264',\n '.heic',\n '.heif',\n '.jpeg',\n '.jpg',\n '.key',\n '.m4a',\n '.m4b',\n '.m4p',\n '.m4r',\n '.m4v',\n '.mkv',\n '.mov',\n '.mp3',\n '.mp4',\n '.mp4-latm',\n '.mpeg',\n '.mpeg4',\n '.mpg',\n '.numbers',\n '.ogg',\n '.pages',\n '.pdf',\n '.png',\n '.ppt',\n '.pptx',\n '.rtf',\n '.txt',\n '.vcf',\n '.wav',\n '.webm',\n '.webp',\n '.wmv',\n '.xls',\n '.xlsx',\n]\n"]}
@@ -1,47 +0,0 @@
1
- export const SUPPORTED_EXTENSIONS = [
2
- '.3ga',
3
- '.3gp',
4
- '.aac',
5
- '.amr',
6
- '.avi',
7
- '.bmp',
8
- '.doc',
9
- '.docx',
10
- '.gif',
11
- '.h263',
12
- '.h264',
13
- '.heic',
14
- '.heif',
15
- '.jpeg',
16
- '.jpg',
17
- '.key',
18
- '.m4a',
19
- '.m4b',
20
- '.m4p',
21
- '.m4r',
22
- '.m4v',
23
- '.mkv',
24
- '.mov',
25
- '.mp3',
26
- '.mp4',
27
- '.mp4-latm',
28
- '.mpeg',
29
- '.mpeg4',
30
- '.mpg',
31
- '.numbers',
32
- '.ogg',
33
- '.pages',
34
- '.pdf',
35
- '.png',
36
- '.ppt',
37
- '.pptx',
38
- '.rtf',
39
- '.txt',
40
- '.vcf',
41
- '.wav',
42
- '.webm',
43
- '.webp',
44
- '.wmv',
45
- '.xls',
46
- '.xlsx',
47
- ]