@concord-consortium/cloud-file-manager 2.1.0-pre.8 → 2.2.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 (280) hide show
  1. package/dist/347 +276 -0
  2. package/dist/autolaunch/autolaunch.js +1 -1
  3. package/dist/autolaunch/autolaunch.js.map +1 -1
  4. package/dist/cjs/app-options.d.ts +2 -0
  5. package/dist/cjs/client.d.ts +2 -1
  6. package/dist/cjs/client.js +54 -79
  7. package/dist/cjs/client.js.map +1 -1
  8. package/dist/cjs/cloud-file-manager.js +2 -2
  9. package/dist/cjs/cloud-file-manager.js.map +1 -1
  10. package/dist/cjs/create-react-factory.d.ts +1 -0
  11. package/dist/cjs/create-react-factory.js.map +1 -1
  12. package/dist/cjs/providers/document-store-provider.js +7 -10
  13. package/dist/cjs/providers/document-store-provider.js.map +1 -1
  14. package/dist/cjs/providers/document-store-share-provider.js +4 -4
  15. package/dist/cjs/providers/document-store-share-provider.js.map +1 -1
  16. package/dist/cjs/providers/google-drive-provider.js +30 -34
  17. package/dist/cjs/providers/google-drive-provider.js.map +1 -1
  18. package/dist/cjs/providers/interactive-api-provider.d.ts +5 -2
  19. package/dist/cjs/providers/interactive-api-provider.js +27 -21
  20. package/dist/cjs/providers/interactive-api-provider.js.map +1 -1
  21. package/dist/cjs/providers/lara-provider.js +18 -26
  22. package/dist/cjs/providers/lara-provider.js.map +1 -1
  23. package/dist/cjs/providers/legacy-google-drive-provider.js +21 -27
  24. package/dist/cjs/providers/legacy-google-drive-provider.js.map +1 -1
  25. package/dist/cjs/providers/localstorage-provider.js +11 -13
  26. package/dist/cjs/providers/localstorage-provider.js.map +1 -1
  27. package/dist/cjs/providers/patchable-content.js +1 -1
  28. package/dist/cjs/providers/patchable-content.js.map +1 -1
  29. package/dist/cjs/providers/post-message-provider.js +1 -1
  30. package/dist/cjs/providers/post-message-provider.js.map +1 -1
  31. package/dist/cjs/providers/provider-interface.d.ts +1 -2
  32. package/dist/cjs/providers/provider-interface.js +11 -14
  33. package/dist/cjs/providers/provider-interface.js.map +1 -1
  34. package/dist/cjs/providers/readonly-provider.js +6 -6
  35. package/dist/cjs/providers/readonly-provider.js.map +1 -1
  36. package/dist/cjs/providers/s3-provider.js +1 -2
  37. package/dist/cjs/providers/s3-provider.js.map +1 -1
  38. package/dist/cjs/providers/s3-share-provider.js +1 -1
  39. package/dist/cjs/providers/s3-share-provider.js.map +1 -1
  40. package/dist/cjs/providers/test-provider.js +5 -5
  41. package/dist/cjs/providers/test-provider.js.map +1 -1
  42. package/dist/cjs/providers/url-provider.js +1 -1
  43. package/dist/cjs/providers/url-provider.js.map +1 -1
  44. package/dist/cjs/ui.d.ts +2 -1
  45. package/dist/cjs/ui.js +5 -3
  46. package/dist/cjs/ui.js.map +1 -1
  47. package/dist/cjs/utils/focus-tracker.d.ts +3 -0
  48. package/dist/cjs/utils/focus-tracker.js +44 -0
  49. package/dist/cjs/utils/focus-tracker.js.map +1 -0
  50. package/dist/cjs/utils/ios-file-saver.d.ts +42 -0
  51. package/dist/cjs/utils/ios-file-saver.js +98 -0
  52. package/dist/cjs/utils/ios-file-saver.js.map +1 -0
  53. package/dist/cjs/utils/lang/en-US.json +9 -0
  54. package/dist/cjs/utils/s3-share-provider-token-service-helper.js +19 -13
  55. package/dist/cjs/utils/s3-share-provider-token-service-helper.js.map +1 -1
  56. package/dist/cjs/utils/url-params.js +1 -2
  57. package/dist/cjs/utils/url-params.js.map +1 -1
  58. package/dist/cjs/views/alert-dialog-view.d.ts +9 -3
  59. package/dist/cjs/views/alert-dialog-view.js +9 -24
  60. package/dist/cjs/views/alert-dialog-view.js.map +1 -1
  61. package/dist/cjs/views/app-view.d.ts +12 -5
  62. package/dist/cjs/views/app-view.js +167 -173
  63. package/dist/cjs/views/app-view.js.map +1 -1
  64. package/dist/cjs/views/blocking-modal-view.d.ts +9 -3
  65. package/dist/cjs/views/blocking-modal-view.js +8 -25
  66. package/dist/cjs/views/blocking-modal-view.js.map +1 -1
  67. package/dist/cjs/views/confirm-dialog-view.d.ts +14 -3
  68. package/dist/cjs/views/confirm-dialog-view.js +14 -31
  69. package/dist/cjs/views/confirm-dialog-view.js.map +1 -1
  70. package/dist/cjs/views/download-dialog-view.d.ts +12 -3
  71. package/dist/cjs/views/download-dialog-view.js +36 -63
  72. package/dist/cjs/views/download-dialog-view.js.map +1 -1
  73. package/dist/cjs/views/dropdown-anchors.d.ts +2 -2
  74. package/dist/cjs/views/dropdown-anchors.js +4 -10
  75. package/dist/cjs/views/dropdown-anchors.js.map +1 -1
  76. package/dist/cjs/views/dropdown-view.d.ts +20 -3
  77. package/dist/cjs/views/dropdown-view.js +40 -157
  78. package/dist/cjs/views/dropdown-view.js.map +1 -1
  79. package/dist/cjs/views/file-dialog-tab-view.d.ts +24 -2
  80. package/dist/cjs/views/file-dialog-tab-view.js +255 -315
  81. package/dist/cjs/views/file-dialog-tab-view.js.map +1 -1
  82. package/dist/cjs/views/icons/spin.d.ts +2 -2
  83. package/dist/cjs/views/icons/spin.js +2 -39
  84. package/dist/cjs/views/icons/spin.js.map +1 -1
  85. package/dist/cjs/views/import-tabbed-dialog-view.d.ts +12 -3
  86. package/dist/cjs/views/import-tabbed-dialog-view.js +33 -65
  87. package/dist/cjs/views/import-tabbed-dialog-view.js.map +1 -1
  88. package/dist/cjs/views/local-file-tab-list-view.d.ts +14 -3
  89. package/dist/cjs/views/local-file-tab-list-view.js +57 -66
  90. package/dist/cjs/views/local-file-tab-list-view.js.map +1 -1
  91. package/dist/cjs/views/local-file-tab-save-view.d.ts +32 -3
  92. package/dist/cjs/views/local-file-tab-save-view.js +125 -138
  93. package/dist/cjs/views/local-file-tab-save-view.js.map +1 -1
  94. package/dist/cjs/views/menu-bar-view.d.ts +58 -3
  95. package/dist/cjs/views/menu-bar-view.js +196 -183
  96. package/dist/cjs/views/menu-bar-view.js.map +1 -1
  97. package/dist/cjs/views/modal-dialog-view.js +7 -8
  98. package/dist/cjs/views/modal-dialog-view.js.map +1 -1
  99. package/dist/cjs/views/modal-tabbed-dialog-view.d.ts +15 -3
  100. package/dist/cjs/views/modal-tabbed-dialog-view.js +5 -17
  101. package/dist/cjs/views/modal-tabbed-dialog-view.js.map +1 -1
  102. package/dist/cjs/views/modal-view.d.ts +5 -32
  103. package/dist/cjs/views/modal-view.js +20 -64
  104. package/dist/cjs/views/modal-view.js.map +1 -1
  105. package/dist/cjs/views/provider-tabbed-dialog-view.d.ts +23 -3
  106. package/dist/cjs/views/provider-tabbed-dialog-view.js +43 -51
  107. package/dist/cjs/views/provider-tabbed-dialog-view.js.map +1 -1
  108. package/dist/cjs/views/rename-dialog-view.d.ts +8 -3
  109. package/dist/cjs/views/rename-dialog-view.js +25 -51
  110. package/dist/cjs/views/rename-dialog-view.js.map +1 -1
  111. package/dist/cjs/views/select-interactive-state-dialog-view.d.ts +1 -1
  112. package/dist/cjs/views/select-interactive-state-dialog-view.js +4 -30
  113. package/dist/cjs/views/select-interactive-state-dialog-view.js.map +1 -1
  114. package/dist/cjs/views/select-provider-dialog-tab-view.d.ts +6 -1
  115. package/dist/cjs/views/select-provider-dialog-tab-view.js +4 -12
  116. package/dist/cjs/views/select-provider-dialog-tab-view.js.map +1 -1
  117. package/dist/cjs/views/share-dialog-status-view.js +6 -13
  118. package/dist/cjs/views/share-dialog-status-view.js.map +1 -1
  119. package/dist/cjs/views/share-dialog-tabs-view.js +22 -61
  120. package/dist/cjs/views/share-dialog-tabs-view.js.map +1 -1
  121. package/dist/cjs/views/share-dialog-view.d.ts +1 -1
  122. package/dist/cjs/views/share-dialog-view.js +15 -21
  123. package/dist/cjs/views/share-dialog-view.js.map +1 -1
  124. package/dist/cjs/views/share-loading-view.d.ts +2 -2
  125. package/dist/cjs/views/share-loading-view.js +2 -4
  126. package/dist/cjs/views/share-loading-view.js.map +1 -1
  127. package/dist/cjs/views/tabbed-panel-view.d.ts +16 -3
  128. package/dist/cjs/views/tabbed-panel-view.js +25 -75
  129. package/dist/cjs/views/tabbed-panel-view.js.map +1 -1
  130. package/dist/cjs/views/url-tab-view.d.ts +12 -3
  131. package/dist/cjs/views/url-tab-view.js +31 -46
  132. package/dist/cjs/views/url-tab-view.js.map +1 -1
  133. package/dist/css/app.css +1 -1
  134. package/dist/css/app.css.map +1 -1
  135. package/dist/esm/app-options.d.ts +2 -0
  136. package/dist/esm/client.d.ts +2 -1
  137. package/dist/esm/client.js +54 -79
  138. package/dist/esm/client.js.map +1 -1
  139. package/dist/esm/cloud-file-manager.js +2 -2
  140. package/dist/esm/cloud-file-manager.js.map +1 -1
  141. package/dist/esm/create-react-factory.d.ts +1 -0
  142. package/dist/esm/create-react-factory.js.map +1 -1
  143. package/dist/esm/providers/document-store-provider.js +7 -10
  144. package/dist/esm/providers/document-store-provider.js.map +1 -1
  145. package/dist/esm/providers/document-store-share-provider.js +4 -4
  146. package/dist/esm/providers/document-store-share-provider.js.map +1 -1
  147. package/dist/esm/providers/google-drive-provider.js +30 -34
  148. package/dist/esm/providers/google-drive-provider.js.map +1 -1
  149. package/dist/esm/providers/interactive-api-provider.d.ts +5 -2
  150. package/dist/esm/providers/interactive-api-provider.js +25 -20
  151. package/dist/esm/providers/interactive-api-provider.js.map +1 -1
  152. package/dist/esm/providers/lara-provider.js +18 -26
  153. package/dist/esm/providers/lara-provider.js.map +1 -1
  154. package/dist/esm/providers/legacy-google-drive-provider.js +21 -27
  155. package/dist/esm/providers/legacy-google-drive-provider.js.map +1 -1
  156. package/dist/esm/providers/localstorage-provider.js +11 -13
  157. package/dist/esm/providers/localstorage-provider.js.map +1 -1
  158. package/dist/esm/providers/patchable-content.js +1 -1
  159. package/dist/esm/providers/patchable-content.js.map +1 -1
  160. package/dist/esm/providers/post-message-provider.js +1 -1
  161. package/dist/esm/providers/post-message-provider.js.map +1 -1
  162. package/dist/esm/providers/provider-interface.d.ts +1 -2
  163. package/dist/esm/providers/provider-interface.js +11 -14
  164. package/dist/esm/providers/provider-interface.js.map +1 -1
  165. package/dist/esm/providers/readonly-provider.js +6 -6
  166. package/dist/esm/providers/readonly-provider.js.map +1 -1
  167. package/dist/esm/providers/s3-provider.js +1 -2
  168. package/dist/esm/providers/s3-provider.js.map +1 -1
  169. package/dist/esm/providers/s3-share-provider.js +1 -1
  170. package/dist/esm/providers/s3-share-provider.js.map +1 -1
  171. package/dist/esm/providers/test-provider.js +5 -5
  172. package/dist/esm/providers/test-provider.js.map +1 -1
  173. package/dist/esm/providers/url-provider.js +1 -1
  174. package/dist/esm/providers/url-provider.js.map +1 -1
  175. package/dist/esm/ui.d.ts +2 -1
  176. package/dist/esm/ui.js +5 -3
  177. package/dist/esm/ui.js.map +1 -1
  178. package/dist/esm/utils/focus-tracker.d.ts +3 -0
  179. package/dist/esm/utils/focus-tracker.js +38 -0
  180. package/dist/esm/utils/focus-tracker.js.map +1 -0
  181. package/dist/esm/utils/ios-file-saver.d.ts +42 -0
  182. package/dist/esm/utils/ios-file-saver.js +91 -0
  183. package/dist/esm/utils/ios-file-saver.js.map +1 -0
  184. package/dist/esm/utils/lang/en-US.json +9 -0
  185. package/dist/esm/utils/s3-share-provider-token-service-helper.js +19 -10
  186. package/dist/esm/utils/s3-share-provider-token-service-helper.js.map +1 -1
  187. package/dist/esm/utils/url-params.js +1 -2
  188. package/dist/esm/utils/url-params.js.map +1 -1
  189. package/dist/esm/views/alert-dialog-view.d.ts +9 -3
  190. package/dist/esm/views/alert-dialog-view.js +10 -25
  191. package/dist/esm/views/alert-dialog-view.js.map +1 -1
  192. package/dist/esm/views/app-view.d.ts +12 -5
  193. package/dist/esm/views/app-view.js +176 -182
  194. package/dist/esm/views/app-view.js.map +1 -1
  195. package/dist/esm/views/blocking-modal-view.d.ts +9 -3
  196. package/dist/esm/views/blocking-modal-view.js +9 -26
  197. package/dist/esm/views/blocking-modal-view.js.map +1 -1
  198. package/dist/esm/views/confirm-dialog-view.d.ts +14 -3
  199. package/dist/esm/views/confirm-dialog-view.js +15 -32
  200. package/dist/esm/views/confirm-dialog-view.js.map +1 -1
  201. package/dist/esm/views/download-dialog-view.d.ts +12 -3
  202. package/dist/esm/views/download-dialog-view.js +36 -63
  203. package/dist/esm/views/download-dialog-view.js.map +1 -1
  204. package/dist/esm/views/dropdown-anchors.d.ts +2 -2
  205. package/dist/esm/views/dropdown-anchors.js +4 -7
  206. package/dist/esm/views/dropdown-anchors.js.map +1 -1
  207. package/dist/esm/views/dropdown-view.d.ts +20 -3
  208. package/dist/esm/views/dropdown-view.js +40 -154
  209. package/dist/esm/views/dropdown-view.js.map +1 -1
  210. package/dist/esm/views/file-dialog-tab-view.d.ts +24 -2
  211. package/dist/esm/views/file-dialog-tab-view.js +256 -316
  212. package/dist/esm/views/file-dialog-tab-view.js.map +1 -1
  213. package/dist/esm/views/icons/spin.d.ts +2 -2
  214. package/dist/esm/views/icons/spin.js +2 -36
  215. package/dist/esm/views/icons/spin.js.map +1 -1
  216. package/dist/esm/views/import-tabbed-dialog-view.d.ts +12 -3
  217. package/dist/esm/views/import-tabbed-dialog-view.js +36 -68
  218. package/dist/esm/views/import-tabbed-dialog-view.js.map +1 -1
  219. package/dist/esm/views/local-file-tab-list-view.d.ts +14 -3
  220. package/dist/esm/views/local-file-tab-list-view.js +57 -66
  221. package/dist/esm/views/local-file-tab-list-view.js.map +1 -1
  222. package/dist/esm/views/local-file-tab-save-view.d.ts +32 -3
  223. package/dist/esm/views/local-file-tab-save-view.js +125 -138
  224. package/dist/esm/views/local-file-tab-save-view.js.map +1 -1
  225. package/dist/esm/views/menu-bar-view.d.ts +58 -3
  226. package/dist/esm/views/menu-bar-view.js +198 -185
  227. package/dist/esm/views/menu-bar-view.js.map +1 -1
  228. package/dist/esm/views/modal-dialog-view.js +7 -8
  229. package/dist/esm/views/modal-dialog-view.js.map +1 -1
  230. package/dist/esm/views/modal-tabbed-dialog-view.d.ts +15 -3
  231. package/dist/esm/views/modal-tabbed-dialog-view.js +7 -19
  232. package/dist/esm/views/modal-tabbed-dialog-view.js.map +1 -1
  233. package/dist/esm/views/modal-view.d.ts +5 -32
  234. package/dist/esm/views/modal-view.js +21 -61
  235. package/dist/esm/views/modal-view.js.map +1 -1
  236. package/dist/esm/views/provider-tabbed-dialog-view.d.ts +23 -3
  237. package/dist/esm/views/provider-tabbed-dialog-view.js +46 -54
  238. package/dist/esm/views/provider-tabbed-dialog-view.js.map +1 -1
  239. package/dist/esm/views/rename-dialog-view.d.ts +8 -3
  240. package/dist/esm/views/rename-dialog-view.js +25 -51
  241. package/dist/esm/views/rename-dialog-view.js.map +1 -1
  242. package/dist/esm/views/select-interactive-state-dialog-view.d.ts +1 -1
  243. package/dist/esm/views/select-interactive-state-dialog-view.js +4 -30
  244. package/dist/esm/views/select-interactive-state-dialog-view.js.map +1 -1
  245. package/dist/esm/views/select-provider-dialog-tab-view.d.ts +6 -1
  246. package/dist/esm/views/select-provider-dialog-tab-view.js +4 -9
  247. package/dist/esm/views/select-provider-dialog-tab-view.js.map +1 -1
  248. package/dist/esm/views/share-dialog-status-view.js +6 -13
  249. package/dist/esm/views/share-dialog-status-view.js.map +1 -1
  250. package/dist/esm/views/share-dialog-tabs-view.js +22 -61
  251. package/dist/esm/views/share-dialog-tabs-view.js.map +1 -1
  252. package/dist/esm/views/share-dialog-view.d.ts +1 -1
  253. package/dist/esm/views/share-dialog-view.js +15 -21
  254. package/dist/esm/views/share-dialog-view.js.map +1 -1
  255. package/dist/esm/views/share-loading-view.d.ts +2 -2
  256. package/dist/esm/views/share-loading-view.js +2 -4
  257. package/dist/esm/views/share-loading-view.js.map +1 -1
  258. package/dist/esm/views/tabbed-panel-view.d.ts +16 -3
  259. package/dist/esm/views/tabbed-panel-view.js +25 -72
  260. package/dist/esm/views/tabbed-panel-view.js.map +1 -1
  261. package/dist/esm/views/url-tab-view.d.ts +12 -3
  262. package/dist/esm/views/url-tab-view.js +31 -46
  263. package/dist/esm/views/url-tab-view.js.map +1 -1
  264. package/dist/examples/codap3-local-file.html +42 -0
  265. package/dist/examples/index.html +2 -0
  266. package/dist/examples/local-json-save.html +36 -0
  267. package/dist/index.html +1 -1
  268. package/dist/js/app.js +1 -1
  269. package/dist/js/app.js.LICENSE.txt +41 -11
  270. package/dist/js/app.js.map +1 -1
  271. package/dist/js/globals.js +1 -1
  272. package/dist/js/globals.js.map +1 -1
  273. package/package.json +40 -36
  274. package/readme.md +4 -0
  275. package/dist/cjs/lib/file-saver.d.ts +0 -2
  276. package/dist/cjs/lib/file-saver.js +0 -164
  277. package/dist/cjs/lib/file-saver.js.map +0 -1
  278. package/dist/esm/lib/file-saver.d.ts +0 -2
  279. package/dist/esm/lib/file-saver.js +0 -164
  280. package/dist/esm/lib/file-saver.js.map +0 -1
@@ -12,13 +12,6 @@
12
12
  * Licensed under the MIT license.
13
13
  */
14
14
 
15
- /*!
16
- * The buffer module from node.js, for the browser.
17
- *
18
- * @author Feross Aboukhadijeh <http://feross.org>
19
- * @license MIT
20
- */
21
-
22
15
  /*! ../interactive-api-shared/types */
23
16
 
24
17
  /*! ../shared/accessibility */
@@ -65,6 +58,8 @@
65
58
 
66
59
  /*! ./parse.js */
67
60
 
61
+ /*! ./pubsub */
62
+
68
63
  /*! ./regex.js */
69
64
 
70
65
  /*! ./rng.js */
@@ -77,6 +72,8 @@
77
72
 
78
73
  /*! ./types */
79
74
 
75
+ /*! ./url-alphabet/index.js */
76
+
80
77
  /*! ./v1.js */
81
78
 
82
79
  /*! ./v3.js */
@@ -91,8 +88,6 @@
91
88
 
92
89
  /*! ./version.js */
93
90
 
94
- /*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
95
-
96
91
  /*! deep-freeze */
97
92
 
98
93
  /*! eventemitter2 */
@@ -103,12 +98,16 @@
103
98
 
104
99
  /*! exports provided: name, version, description, main, types, repository, author, license, bugs, homepage, dependencies, peerDependencies, default */
105
100
 
106
- /*! exports provided: v1, v3, v4, v5, NIL, version, validate, stringify, parse */
101
+ /*! exports provided: nanoid, customAlphabet, customRandom, urlAlphabet, random */
107
102
 
108
- /*! https://mths.be/punycode v1.3.2 by @mathias */
103
+ /*! exports provided: urlAlphabet */
104
+
105
+ /*! exports provided: v1, v3, v4, v5, NIL, version, validate, stringify, parse */
109
106
 
110
107
  /*! iframe-phone */
111
108
 
109
+ /*! nanoid */
110
+
112
111
  /*! no static exports found */
113
112
 
114
113
  /*! react */
@@ -163,10 +162,18 @@
163
162
  !*** ./src/interactive-api-shared/types.ts ***!
164
163
  \*********************************************/
165
164
 
165
+ /*!**********************************************!*\
166
+ !*** ./node_modules/nanoid/index.browser.js ***!
167
+ \**********************************************/
168
+
166
169
  /*!**********************************************!*\
167
170
  !*** ./src/interactive-api-client/client.ts ***!
168
171
  \**********************************************/
169
172
 
173
+ /*!**********************************************!*\
174
+ !*** ./src/interactive-api-client/pubsub.ts ***!
175
+ \**********************************************/
176
+
170
177
  /*!************************************************!*\
171
178
  !*** ./node_modules/timers-browserify/main.js ***!
172
179
  \************************************************/
@@ -195,6 +202,10 @@
195
202
  !*** ./node_modules/uuid/dist/esm-browser/v5.js ***!
196
203
  \**************************************************/
197
204
 
205
+ /*!***************************************************!*\
206
+ !*** ./node_modules/nanoid/url-alphabet/index.js ***!
207
+ \***************************************************/
208
+
198
209
  /*!***************************************************!*\
199
210
  !*** ./node_modules/setimmediate/setImmediate.js ***!
200
211
  \***************************************************/
@@ -275,6 +286,16 @@
275
286
  !*** ./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js ***!
276
287
  \*************************************************************************/
277
288
 
289
+ /**
290
+ * @license React
291
+ * use-sync-external-store-shim.production.js
292
+ *
293
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
294
+ *
295
+ * This source code is licensed under the MIT license found in the
296
+ * LICENSE file in the root directory of this source tree.
297
+ */
298
+
278
299
  /**
279
300
  * [js-sha256]{@link https://github.com/emn178/js-sha256}
280
301
  *
@@ -285,3 +306,12 @@
285
306
  */
286
307
 
287
308
  /** @license MIT License (c) copyright 2010-2014 original author or authors */
309
+
310
+ /** @license React v16.14.0
311
+ * react-jsx-runtime.production.min.js
312
+ *
313
+ * Copyright (c) Facebook, Inc. and its affiliates.
314
+ *
315
+ * This source code is licensed under the MIT license found in the
316
+ * LICENSE file in the root directory of this source tree.
317
+ */