@firebase/auth 1.7.9 → 1.8.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 (435) hide show
  1. package/README.md +32 -1
  2. package/dist/auth-public.d.ts +22 -10
  3. package/dist/auth.d.ts +22 -10
  4. package/dist/browser-cjs/{index-e2e765e6.js → index-b60d3212.js} +393 -176
  5. package/dist/browser-cjs/index-b60d3212.js.map +1 -0
  6. package/dist/browser-cjs/index.js +1 -1
  7. package/dist/browser-cjs/internal.js +1 -1
  8. package/dist/browser-cjs/src/api/account_management/mfa.d.ts +5 -1
  9. package/dist/browser-cjs/src/api/authentication/mfa.d.ts +5 -1
  10. package/dist/browser-cjs/src/api/authentication/sms.d.ts +5 -1
  11. package/dist/browser-cjs/src/api/index.d.ts +7 -3
  12. package/dist/browser-cjs/src/platform_browser/providers/phone.d.ts +7 -5
  13. package/dist/browser-cjs/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  14. package/dist/browser-cjs/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  15. package/dist/browser-cjs/src/platform_browser/strategies/phone.d.ts +10 -6
  16. package/dist/cordova/auth-cordova-public.d.ts +7 -0
  17. package/dist/cordova/auth-cordova.d.ts +7 -0
  18. package/dist/cordova/index.js +6 -7
  19. package/dist/cordova/index.js.map +1 -1
  20. package/dist/cordova/internal.js +660 -985
  21. package/dist/cordova/internal.js.map +1 -1
  22. package/dist/cordova/popup_redirect-6fcd583a.js +9635 -0
  23. package/dist/cordova/popup_redirect-6fcd583a.js.map +1 -0
  24. package/dist/cordova/src/api/account_management/mfa.d.ts +5 -1
  25. package/dist/cordova/src/api/authentication/mfa.d.ts +5 -1
  26. package/dist/cordova/src/api/authentication/sms.d.ts +5 -1
  27. package/dist/cordova/src/api/index.d.ts +7 -3
  28. package/dist/cordova/src/platform_browser/providers/phone.d.ts +7 -5
  29. package/dist/cordova/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  30. package/dist/cordova/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  31. package/dist/cordova/src/platform_browser/strategies/phone.d.ts +10 -6
  32. package/dist/{esm5/src/api/account_management/mfa.test.d.ts → cordova/test/integration/flows/recaptcha_enterprise.test.d.ts} +1 -1
  33. package/dist/esm2017/{index-68602d24.js → index-a7d5cfcc.js} +393 -176
  34. package/dist/esm2017/index-a7d5cfcc.js.map +1 -0
  35. package/dist/esm2017/index.js +1 -1
  36. package/dist/esm2017/internal.js +2 -2
  37. package/dist/esm2017/src/api/account_management/mfa.d.ts +5 -1
  38. package/dist/esm2017/src/api/authentication/mfa.d.ts +5 -1
  39. package/dist/esm2017/src/api/authentication/sms.d.ts +5 -1
  40. package/dist/esm2017/src/api/index.d.ts +7 -3
  41. package/dist/esm2017/src/platform_browser/providers/phone.d.ts +7 -5
  42. package/dist/esm2017/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  43. package/dist/esm2017/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  44. package/dist/esm2017/src/platform_browser/strategies/phone.d.ts +10 -6
  45. package/dist/{esm5/src/api/account_management/email_and_password.test.d.ts → esm2017/test/integration/flows/recaptcha_enterprise.test.d.ts} +1 -1
  46. package/dist/index.webworker.js +7912 -0
  47. package/dist/index.webworker.js.map +1 -0
  48. package/dist/node/index.js +2 -3
  49. package/dist/node/index.js.map +1 -1
  50. package/dist/node/internal.js +555 -844
  51. package/dist/node/internal.js.map +1 -1
  52. package/dist/node/src/api/account_management/mfa.d.ts +5 -1
  53. package/dist/node/src/api/authentication/mfa.d.ts +5 -1
  54. package/dist/node/src/api/authentication/sms.d.ts +5 -1
  55. package/dist/node/src/api/index.d.ts +7 -3
  56. package/dist/node/src/platform_browser/providers/phone.d.ts +7 -5
  57. package/dist/node/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  58. package/dist/node/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  59. package/dist/node/src/platform_browser/strategies/phone.d.ts +10 -6
  60. package/dist/node/test/integration/flows/recaptcha_enterprise.test.d.ts +17 -0
  61. package/dist/node/totp-ab108bed.js +7582 -0
  62. package/dist/node/totp-ab108bed.js.map +1 -0
  63. package/dist/node-esm/index.js +1 -2
  64. package/dist/node-esm/index.js.map +1 -1
  65. package/dist/node-esm/internal.js +2 -3
  66. package/dist/node-esm/internal.js.map +1 -1
  67. package/dist/node-esm/src/api/account_management/mfa.d.ts +5 -1
  68. package/dist/node-esm/src/api/authentication/mfa.d.ts +5 -1
  69. package/dist/node-esm/src/api/authentication/sms.d.ts +5 -1
  70. package/dist/node-esm/src/api/index.d.ts +7 -3
  71. package/dist/node-esm/src/platform_browser/providers/phone.d.ts +7 -5
  72. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  73. package/dist/node-esm/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  74. package/dist/node-esm/src/platform_browser/strategies/phone.d.ts +10 -6
  75. package/dist/{esm5/scripts/run_node_tests.d.ts → node-esm/test/integration/flows/recaptcha_enterprise.test.d.ts} +1 -1
  76. package/dist/node-esm/{totp-219bb96f.js → totp-f311e20a.js} +170 -33
  77. package/dist/node-esm/totp-f311e20a.js.map +1 -0
  78. package/dist/rn/index-4d73adbf.js +8575 -0
  79. package/dist/rn/index-4d73adbf.js.map +1 -0
  80. package/dist/rn/index.js +45 -55
  81. package/dist/rn/index.js.map +1 -1
  82. package/dist/rn/internal.js +1195 -1890
  83. package/dist/rn/internal.js.map +1 -1
  84. package/dist/rn/src/api/account_management/mfa.d.ts +5 -1
  85. package/dist/rn/src/api/authentication/mfa.d.ts +5 -1
  86. package/dist/rn/src/api/authentication/sms.d.ts +5 -1
  87. package/dist/rn/src/api/index.d.ts +7 -3
  88. package/dist/rn/src/platform_browser/providers/phone.d.ts +7 -5
  89. package/dist/rn/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  90. package/dist/rn/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  91. package/dist/rn/src/platform_browser/strategies/phone.d.ts +10 -6
  92. package/dist/rn/test/integration/flows/recaptcha_enterprise.test.d.ts +17 -0
  93. package/dist/src/api/account_management/mfa.d.ts +5 -1
  94. package/dist/src/api/authentication/mfa.d.ts +5 -1
  95. package/dist/src/api/authentication/sms.d.ts +5 -1
  96. package/dist/src/api/index.d.ts +7 -3
  97. package/dist/src/platform_browser/providers/phone.d.ts +7 -5
  98. package/dist/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  99. package/dist/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  100. package/dist/src/platform_browser/strategies/phone.d.ts +10 -6
  101. package/dist/test/integration/flows/recaptcha_enterprise.test.d.ts +17 -0
  102. package/dist/web-extension-cjs/index.js +1 -1
  103. package/dist/web-extension-cjs/internal.js +115 -147
  104. package/dist/web-extension-cjs/internal.js.map +1 -1
  105. package/dist/web-extension-cjs/{register-674a8250.js → register-17c71bd5.js} +284 -31
  106. package/dist/web-extension-cjs/register-17c71bd5.js.map +1 -0
  107. package/dist/web-extension-cjs/src/api/account_management/mfa.d.ts +5 -1
  108. package/dist/web-extension-cjs/src/api/authentication/mfa.d.ts +5 -1
  109. package/dist/web-extension-cjs/src/api/authentication/sms.d.ts +5 -1
  110. package/dist/web-extension-cjs/src/api/index.d.ts +7 -3
  111. package/dist/web-extension-cjs/src/platform_browser/providers/phone.d.ts +7 -5
  112. package/dist/web-extension-cjs/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  113. package/dist/web-extension-cjs/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  114. package/dist/web-extension-cjs/src/platform_browser/strategies/phone.d.ts +10 -6
  115. package/dist/web-extension-cjs/test/integration/flows/recaptcha_enterprise.test.d.ts +17 -0
  116. package/dist/web-extension-esm2017/auth-web-extension-public.d.ts +7 -0
  117. package/dist/web-extension-esm2017/auth-web-extension.d.ts +7 -0
  118. package/dist/web-extension-esm2017/index.js +2 -2
  119. package/dist/web-extension-esm2017/internal.js +115 -147
  120. package/dist/web-extension-esm2017/internal.js.map +1 -1
  121. package/dist/web-extension-esm2017/{register-428f8789.js → register-77f1d56a.js} +281 -32
  122. package/dist/web-extension-esm2017/register-77f1d56a.js.map +1 -0
  123. package/dist/web-extension-esm2017/src/api/account_management/mfa.d.ts +5 -1
  124. package/dist/web-extension-esm2017/src/api/authentication/mfa.d.ts +5 -1
  125. package/dist/web-extension-esm2017/src/api/authentication/sms.d.ts +5 -1
  126. package/dist/web-extension-esm2017/src/api/index.d.ts +7 -3
  127. package/dist/web-extension-esm2017/src/platform_browser/providers/phone.d.ts +7 -5
  128. package/dist/web-extension-esm2017/src/platform_browser/recaptcha/recaptcha.d.ts +7 -0
  129. package/dist/web-extension-esm2017/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +4 -4
  130. package/dist/web-extension-esm2017/src/platform_browser/strategies/phone.d.ts +10 -6
  131. package/dist/web-extension-esm2017/test/integration/flows/recaptcha_enterprise.test.d.ts +17 -0
  132. package/internal/package.json +5 -3
  133. package/package.json +10 -11
  134. package/dist/browser-cjs/index-e2e765e6.js.map +0 -1
  135. package/dist/cordova/popup_redirect-abcbab4c.js +0 -11249
  136. package/dist/cordova/popup_redirect-abcbab4c.js.map +0 -1
  137. package/dist/esm2017/index-68602d24.js.map +0 -1
  138. package/dist/esm5/index-c0803b14.js +0 -12741
  139. package/dist/esm5/index-c0803b14.js.map +0 -1
  140. package/dist/esm5/index.cordova.d.ts +0 -32
  141. package/dist/esm5/index.d.ts +0 -37
  142. package/dist/esm5/index.doc.d.ts +0 -24
  143. package/dist/esm5/index.js +0 -7
  144. package/dist/esm5/index.js.map +0 -1
  145. package/dist/esm5/index.node.d.ts +0 -17
  146. package/dist/esm5/index.rn.d.ts +0 -40
  147. package/dist/esm5/index.shared.d.ts +0 -19
  148. package/dist/esm5/index.web-extension.d.ts +0 -31
  149. package/dist/esm5/index.webworker.d.ts +0 -21
  150. package/dist/esm5/internal/index.d.ts +0 -42
  151. package/dist/esm5/internal.js +0 -682
  152. package/dist/esm5/internal.js.map +0 -1
  153. package/dist/esm5/src/api/account_management/account.d.ts +0 -59
  154. package/dist/esm5/src/api/account_management/account.test.d.ts +0 -17
  155. package/dist/esm5/src/api/account_management/email_and_password.d.ts +0 -49
  156. package/dist/esm5/src/api/account_management/mfa.d.ts +0 -103
  157. package/dist/esm5/src/api/account_management/profile.d.ts +0 -29
  158. package/dist/esm5/src/api/account_management/profile.test.d.ts +0 -17
  159. package/dist/esm5/src/api/authentication/create_auth_uri.d.ts +0 -26
  160. package/dist/esm5/src/api/authentication/create_auth_uri.test.d.ts +0 -17
  161. package/dist/esm5/src/api/authentication/custom_token.d.ts +0 -26
  162. package/dist/esm5/src/api/authentication/custom_token.test.d.ts +0 -17
  163. package/dist/esm5/src/api/authentication/email_and_password.d.ts +0 -85
  164. package/dist/esm5/src/api/authentication/email_and_password.test.d.ts +0 -17
  165. package/dist/esm5/src/api/authentication/email_link.d.ts +0 -32
  166. package/dist/esm5/src/api/authentication/email_link.test.d.ts +0 -17
  167. package/dist/esm5/src/api/authentication/idp.d.ts +0 -40
  168. package/dist/esm5/src/api/authentication/idp.test.d.ts +0 -17
  169. package/dist/esm5/src/api/authentication/mfa.d.ts +0 -69
  170. package/dist/esm5/src/api/authentication/mfa.test.d.ts +0 -17
  171. package/dist/esm5/src/api/authentication/recaptcha.d.ts +0 -34
  172. package/dist/esm5/src/api/authentication/recaptcha.test.d.ts +0 -17
  173. package/dist/esm5/src/api/authentication/sign_up.d.ts +0 -34
  174. package/dist/esm5/src/api/authentication/sign_up.test.d.ts +0 -17
  175. package/dist/esm5/src/api/authentication/sms.d.ts +0 -50
  176. package/dist/esm5/src/api/authentication/sms.test.d.ts +0 -17
  177. package/dist/esm5/src/api/authentication/token.d.ts +0 -37
  178. package/dist/esm5/src/api/authentication/token.test.d.ts +0 -17
  179. package/dist/esm5/src/api/errors.d.ts +0 -128
  180. package/dist/esm5/src/api/index.d.ts +0 -97
  181. package/dist/esm5/src/api/index.test.d.ts +0 -17
  182. package/dist/esm5/src/api/password_policy/get_password_policy.d.ts +0 -48
  183. package/dist/esm5/src/api/password_policy/get_password_policy.test.d.ts +0 -17
  184. package/dist/esm5/src/api/project_config/get_project_config.d.ts +0 -25
  185. package/dist/esm5/src/api/project_config/get_project_config.test.d.ts +0 -17
  186. package/dist/esm5/src/core/action_code_url.d.ts +0 -73
  187. package/dist/esm5/src/core/action_code_url.test.d.ts +0 -17
  188. package/dist/esm5/src/core/auth/auth_event_manager.d.ts +0 -34
  189. package/dist/esm5/src/core/auth/auth_event_manager.test.d.ts +0 -17
  190. package/dist/esm5/src/core/auth/auth_impl.d.ts +0 -130
  191. package/dist/esm5/src/core/auth/auth_impl.test.d.ts +0 -17
  192. package/dist/esm5/src/core/auth/emulator.d.ts +0 -42
  193. package/dist/esm5/src/core/auth/emulator.test.d.ts +0 -17
  194. package/dist/esm5/src/core/auth/firebase_internal.d.ts +0 -35
  195. package/dist/esm5/src/core/auth/firebase_internal.test.d.ts +0 -17
  196. package/dist/esm5/src/core/auth/initialize.d.ts +0 -46
  197. package/dist/esm5/src/core/auth/initialize.test.d.ts +0 -17
  198. package/dist/esm5/src/core/auth/middleware.d.ts +0 -25
  199. package/dist/esm5/src/core/auth/middleware.test.d.ts +0 -17
  200. package/dist/esm5/src/core/auth/password_policy_impl.d.ts +0 -59
  201. package/dist/esm5/src/core/auth/password_policy_impl.test.d.ts +0 -17
  202. package/dist/esm5/src/core/auth/register.d.ts +0 -23
  203. package/dist/esm5/src/core/credentials/auth_credential.d.ts +0 -75
  204. package/dist/esm5/src/core/credentials/email.d.ts +0 -60
  205. package/dist/esm5/src/core/credentials/email.test.d.ts +0 -17
  206. package/dist/esm5/src/core/credentials/index.d.ts +0 -23
  207. package/dist/esm5/src/core/credentials/oauth.d.ts +0 -81
  208. package/dist/esm5/src/core/credentials/oauth.test.d.ts +0 -17
  209. package/dist/esm5/src/core/credentials/phone.d.ts +0 -52
  210. package/dist/esm5/src/core/credentials/phone.test.d.ts +0 -17
  211. package/dist/esm5/src/core/credentials/saml.d.ts +0 -52
  212. package/dist/esm5/src/core/credentials/saml.test.d.ts +0 -17
  213. package/dist/esm5/src/core/errors.d.ts +0 -325
  214. package/dist/esm5/src/core/errors.test.d.ts +0 -17
  215. package/dist/esm5/src/core/index.d.ts +0 -230
  216. package/dist/esm5/src/core/persistence/in_memory.d.ts +0 -35
  217. package/dist/esm5/src/core/persistence/in_memory.test.d.ts +0 -17
  218. package/dist/esm5/src/core/persistence/index.d.ts +0 -41
  219. package/dist/esm5/src/core/persistence/persistence_user_manager.d.ts +0 -45
  220. package/dist/esm5/src/core/persistence/persistence_user_manager.test.d.ts +0 -17
  221. package/dist/esm5/src/core/providers/email.d.ts +0 -83
  222. package/dist/esm5/src/core/providers/email.test.d.ts +0 -17
  223. package/dist/esm5/src/core/providers/facebook.d.ts +0 -93
  224. package/dist/esm5/src/core/providers/facebook.test.d.ts +0 -17
  225. package/dist/esm5/src/core/providers/federated.d.ts +0 -64
  226. package/dist/esm5/src/core/providers/federated.test.d.ts +0 -17
  227. package/dist/esm5/src/core/providers/github.d.ts +0 -89
  228. package/dist/esm5/src/core/providers/github.test.d.ts +0 -17
  229. package/dist/esm5/src/core/providers/google.d.ts +0 -96
  230. package/dist/esm5/src/core/providers/google.test.d.ts +0 -17
  231. package/dist/esm5/src/core/providers/oauth.d.ts +0 -151
  232. package/dist/esm5/src/core/providers/oauth.test.d.ts +0 -17
  233. package/dist/esm5/src/core/providers/saml.d.ts +0 -62
  234. package/dist/esm5/src/core/providers/saml.test.d.ts +0 -17
  235. package/dist/esm5/src/core/providers/twitter.d.ts +0 -103
  236. package/dist/esm5/src/core/providers/twitter.test.d.ts +0 -17
  237. package/dist/esm5/src/core/strategies/abstract_popup_redirect_operation.d.ts +0 -44
  238. package/dist/esm5/src/core/strategies/abstract_popup_redirect_operation.test.d.ts +0 -17
  239. package/dist/esm5/src/core/strategies/action_code_settings.d.ts +0 -19
  240. package/dist/esm5/src/core/strategies/action_code_settings.test.d.ts +0 -17
  241. package/dist/esm5/src/core/strategies/anonymous.d.ts +0 -32
  242. package/dist/esm5/src/core/strategies/anonymous.test.d.ts +0 -17
  243. package/dist/esm5/src/core/strategies/credential.d.ts +0 -64
  244. package/dist/esm5/src/core/strategies/credential.test.d.ts +0 -17
  245. package/dist/esm5/src/core/strategies/custom_token.d.ts +0 -37
  246. package/dist/esm5/src/core/strategies/custom_token.test.d.ts +0 -17
  247. package/dist/esm5/src/core/strategies/email.d.ts +0 -104
  248. package/dist/esm5/src/core/strategies/email.test.d.ts +0 -17
  249. package/dist/esm5/src/core/strategies/email_and_password.d.ts +0 -139
  250. package/dist/esm5/src/core/strategies/email_and_password.test.d.ts +0 -17
  251. package/dist/esm5/src/core/strategies/email_link.d.ts +0 -107
  252. package/dist/esm5/src/core/strategies/email_link.test.d.ts +0 -17
  253. package/dist/esm5/src/core/strategies/idp.d.ts +0 -32
  254. package/dist/esm5/src/core/strategies/idp.test.d.ts +0 -17
  255. package/dist/esm5/src/core/strategies/redirect.d.ts +0 -36
  256. package/dist/esm5/src/core/strategies/redirect.test.d.ts +0 -17
  257. package/dist/esm5/src/core/user/account_info.d.ts +0 -68
  258. package/dist/esm5/src/core/user/account_info.test.d.ts +0 -17
  259. package/dist/esm5/src/core/user/additional_user_info.d.ts +0 -31
  260. package/dist/esm5/src/core/user/additional_user_info.test.d.ts +0 -17
  261. package/dist/esm5/src/core/user/id_token_result.d.ts +0 -48
  262. package/dist/esm5/src/core/user/id_token_result.test.d.ts +0 -17
  263. package/dist/esm5/src/core/user/invalidation.d.ts +0 -18
  264. package/dist/esm5/src/core/user/invalidation.test.d.ts +0 -17
  265. package/dist/esm5/src/core/user/link_unlink.d.ts +0 -30
  266. package/dist/esm5/src/core/user/link_unlink.test.d.ts +0 -17
  267. package/dist/esm5/src/core/user/proactive_refresh.d.ts +0 -34
  268. package/dist/esm5/src/core/user/proactive_refresh.test.d.ts +0 -17
  269. package/dist/esm5/src/core/user/reauthenticate.d.ts +0 -20
  270. package/dist/esm5/src/core/user/reauthenticate.test.d.ts +0 -17
  271. package/dist/esm5/src/core/user/reload.d.ts +0 -29
  272. package/dist/esm5/src/core/user/reload.test.d.ts +0 -17
  273. package/dist/esm5/src/core/user/token_manager.d.ts +0 -50
  274. package/dist/esm5/src/core/user/token_manager.test.d.ts +0 -17
  275. package/dist/esm5/src/core/user/user_credential_impl.d.ts +0 -37
  276. package/dist/esm5/src/core/user/user_credential_impl.test.d.ts +0 -17
  277. package/dist/esm5/src/core/user/user_impl.d.ts +0 -74
  278. package/dist/esm5/src/core/user/user_impl.test.d.ts +0 -17
  279. package/dist/esm5/src/core/user/user_metadata.d.ts +0 -27
  280. package/dist/esm5/src/core/util/assert.d.ts +0 -94
  281. package/dist/esm5/src/core/util/assert.test.d.ts +0 -17
  282. package/dist/esm5/src/core/util/browser.d.ts +0 -50
  283. package/dist/esm5/src/core/util/browser.test.d.ts +0 -17
  284. package/dist/esm5/src/core/util/delay.d.ts +0 -31
  285. package/dist/esm5/src/core/util/delay.test.d.ts +0 -17
  286. package/dist/esm5/src/core/util/emulator.d.ts +0 -18
  287. package/dist/esm5/src/core/util/emulator.test.d.ts +0 -17
  288. package/dist/esm5/src/core/util/event_id.d.ts +0 -17
  289. package/dist/esm5/src/core/util/event_id.test.d.ts +0 -17
  290. package/dist/esm5/src/core/util/fetch_provider.d.ts +0 -25
  291. package/dist/esm5/src/core/util/handler.d.ts +0 -20
  292. package/dist/esm5/src/core/util/instantiator.d.ts +0 -28
  293. package/dist/esm5/src/core/util/instantiator.test.d.ts +0 -17
  294. package/dist/esm5/src/core/util/location.d.ts +0 -19
  295. package/dist/esm5/src/core/util/log.d.ts +0 -23
  296. package/dist/esm5/src/core/util/navigator.d.ts +0 -21
  297. package/dist/esm5/src/core/util/providers.d.ts +0 -23
  298. package/dist/esm5/src/core/util/resolver.d.ts +0 -25
  299. package/dist/esm5/src/core/util/time.d.ts +0 -17
  300. package/dist/esm5/src/core/util/validate_origin.d.ts +0 -18
  301. package/dist/esm5/src/core/util/validate_origin.test.d.ts +0 -17
  302. package/dist/esm5/src/core/util/version.d.ts +0 -31
  303. package/dist/esm5/src/core/util/version.test.d.ts +0 -17
  304. package/dist/esm5/src/index.d.ts +0 -18
  305. package/dist/esm5/src/mfa/assertions/totp.d.ts +0 -124
  306. package/dist/esm5/src/mfa/assertions/totp.test.d.ts +0 -17
  307. package/dist/esm5/src/mfa/index.d.ts +0 -18
  308. package/dist/esm5/src/mfa/mfa_assertion.d.ts +0 -27
  309. package/dist/esm5/src/mfa/mfa_error.d.ts +0 -35
  310. package/dist/esm5/src/mfa/mfa_info.d.ts +0 -36
  311. package/dist/esm5/src/mfa/mfa_info.test.d.ts +0 -17
  312. package/dist/esm5/src/mfa/mfa_resolver.d.ts +0 -41
  313. package/dist/esm5/src/mfa/mfa_resolver.test.d.ts +0 -17
  314. package/dist/esm5/src/mfa/mfa_session.d.ts +0 -39
  315. package/dist/esm5/src/mfa/mfa_session.test.d.ts +0 -17
  316. package/dist/esm5/src/mfa/mfa_user.d.ts +0 -38
  317. package/dist/esm5/src/mfa/mfa_user.test.d.ts +0 -17
  318. package/dist/esm5/src/model/application_verifier.d.ts +0 -23
  319. package/dist/esm5/src/model/auth.d.ts +0 -87
  320. package/dist/esm5/src/model/enum_maps.d.ts +0 -98
  321. package/dist/esm5/src/model/enums.d.ts +0 -74
  322. package/dist/esm5/src/model/id_token.d.ts +0 -87
  323. package/dist/esm5/src/model/password_policy.d.ts +0 -111
  324. package/dist/esm5/src/model/popup_redirect.d.ts +0 -94
  325. package/dist/esm5/src/model/public_types.d.ts +0 -1285
  326. package/dist/esm5/src/model/user.d.ts +0 -83
  327. package/dist/esm5/src/platform_browser/auth.test.d.ts +0 -17
  328. package/dist/esm5/src/platform_browser/auth_window.d.ts +0 -37
  329. package/dist/esm5/src/platform_browser/iframe/gapi.d.ts +0 -19
  330. package/dist/esm5/src/platform_browser/iframe/gapi.iframes.d.ts +0 -47
  331. package/dist/esm5/src/platform_browser/iframe/gapi.test.d.ts +0 -17
  332. package/dist/esm5/src/platform_browser/iframe/iframe.d.ts +0 -18
  333. package/dist/esm5/src/platform_browser/iframe/iframe.test.d.ts +0 -17
  334. package/dist/esm5/src/platform_browser/index.d.ts +0 -27
  335. package/dist/esm5/src/platform_browser/load_js.d.ts +0 -29
  336. package/dist/esm5/src/platform_browser/load_js.test.d.ts +0 -17
  337. package/dist/esm5/src/platform_browser/messagechannel/index.d.ts +0 -87
  338. package/dist/esm5/src/platform_browser/messagechannel/promise.d.ts +0 -33
  339. package/dist/esm5/src/platform_browser/messagechannel/promise.test.d.ts +0 -17
  340. package/dist/esm5/src/platform_browser/messagechannel/receiver.d.ts +0 -63
  341. package/dist/esm5/src/platform_browser/messagechannel/receiver.test.d.ts +0 -17
  342. package/dist/esm5/src/platform_browser/messagechannel/sender.d.ts +0 -46
  343. package/dist/esm5/src/platform_browser/messagechannel/sender.test.d.ts +0 -17
  344. package/dist/esm5/src/platform_browser/mfa/assertions/phone.d.ts +0 -59
  345. package/dist/esm5/src/platform_browser/mfa/assertions/phone.test.d.ts +0 -17
  346. package/dist/esm5/src/platform_browser/persistence/browser.d.ts +0 -27
  347. package/dist/esm5/src/platform_browser/persistence/browser.test.d.ts +0 -17
  348. package/dist/esm5/src/platform_browser/persistence/indexed_db.d.ts +0 -33
  349. package/dist/esm5/src/platform_browser/persistence/indexed_db.test.d.ts +0 -17
  350. package/dist/esm5/src/platform_browser/persistence/local_storage.d.ts +0 -25
  351. package/dist/esm5/src/platform_browser/persistence/local_storage.test.d.ts +0 -17
  352. package/dist/esm5/src/platform_browser/persistence/session_storage.d.ts +0 -24
  353. package/dist/esm5/src/platform_browser/persistence/session_storage.test.d.ts +0 -17
  354. package/dist/esm5/src/platform_browser/popup_redirect.d.ts +0 -27
  355. package/dist/esm5/src/platform_browser/popup_redirect.test.d.ts +0 -17
  356. package/dist/esm5/src/platform_browser/providers/phone.d.ts +0 -152
  357. package/dist/esm5/src/platform_browser/providers/phone.test.d.ts +0 -17
  358. package/dist/esm5/src/platform_browser/recaptcha/recaptcha.d.ts +0 -71
  359. package/dist/esm5/src/platform_browser/recaptcha/recaptcha.test.d.ts +0 -17
  360. package/dist/esm5/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.d.ts +0 -45
  361. package/dist/esm5/src/platform_browser/recaptcha/recaptcha_enterprise_verifier.test.d.ts +0 -17
  362. package/dist/esm5/src/platform_browser/recaptcha/recaptcha_loader.d.ts +0 -49
  363. package/dist/esm5/src/platform_browser/recaptcha/recaptcha_loader.test.d.ts +0 -17
  364. package/dist/esm5/src/platform_browser/recaptcha/recaptcha_mock.d.ts +0 -66
  365. package/dist/esm5/src/platform_browser/recaptcha/recaptcha_mock.test.d.ts +0 -17
  366. package/dist/esm5/src/platform_browser/recaptcha/recaptcha_verifier.d.ts +0 -92
  367. package/dist/esm5/src/platform_browser/recaptcha/recaptcha_verifier.test.d.ts +0 -17
  368. package/dist/esm5/src/platform_browser/strategies/phone.d.ts +0 -112
  369. package/dist/esm5/src/platform_browser/strategies/phone.test.d.ts +0 -17
  370. package/dist/esm5/src/platform_browser/strategies/popup.d.ts +0 -109
  371. package/dist/esm5/src/platform_browser/strategies/popup.test.d.ts +0 -17
  372. package/dist/esm5/src/platform_browser/strategies/redirect.d.ts +0 -176
  373. package/dist/esm5/src/platform_browser/strategies/redirect.test.d.ts +0 -17
  374. package/dist/esm5/src/platform_browser/util/popup.d.ts +0 -24
  375. package/dist/esm5/src/platform_browser/util/popup.test.d.ts +0 -17
  376. package/dist/esm5/src/platform_browser/util/worker.d.ts +0 -20
  377. package/dist/esm5/src/platform_cordova/plugins.d.ts +0 -42
  378. package/dist/esm5/src/platform_cordova/popup_redirect/events.d.ts +0 -39
  379. package/dist/esm5/src/platform_cordova/popup_redirect/events.test.d.ts +0 -17
  380. package/dist/esm5/src/platform_cordova/popup_redirect/popup_redirect.d.ts +0 -24
  381. package/dist/esm5/src/platform_cordova/popup_redirect/popup_redirect.test.d.ts +0 -17
  382. package/dist/esm5/src/platform_cordova/popup_redirect/utils.d.ts +0 -47
  383. package/dist/esm5/src/platform_cordova/popup_redirect/utils.test.d.ts +0 -17
  384. package/dist/esm5/src/platform_cordova/strategies/redirect.d.ts +0 -20
  385. package/dist/esm5/src/platform_node/index.d.ts +0 -50
  386. package/dist/esm5/src/platform_react_native/persistence/react_native.d.ts +0 -25
  387. package/dist/esm5/src/platform_react_native/persistence/react_native.test.d.ts +0 -17
  388. package/dist/esm5/test/helpers/api/helper.d.ts +0 -22
  389. package/dist/esm5/test/helpers/delay.d.ts +0 -20
  390. package/dist/esm5/test/helpers/erroring_unavailable_persistence.d.ts +0 -36
  391. package/dist/esm5/test/helpers/fake_service_worker.d.ts +0 -22
  392. package/dist/esm5/test/helpers/id_token_response.d.ts +0 -18
  393. package/dist/esm5/test/helpers/iframe_event.d.ts +0 -19
  394. package/dist/esm5/test/helpers/integration/emulator_rest_helpers.d.ts +0 -35
  395. package/dist/esm5/test/helpers/integration/helpers.d.ts +0 -32
  396. package/dist/esm5/test/helpers/integration/settings.d.ts +0 -23
  397. package/dist/esm5/test/helpers/jwt.d.ts +0 -17
  398. package/dist/esm5/test/helpers/mock_auth.d.ts +0 -47
  399. package/dist/esm5/test/helpers/mock_auth_credential.d.ts +0 -31
  400. package/dist/esm5/test/helpers/mock_fetch.d.ts +0 -30
  401. package/dist/esm5/test/helpers/mock_fetch.test.d.ts +0 -17
  402. package/dist/esm5/test/helpers/mock_popup_redirect_resolver.d.ts +0 -24
  403. package/dist/esm5/test/helpers/redirect_persistence.d.ts +0 -24
  404. package/dist/esm5/test/helpers/timeout_stub.d.ts +0 -34
  405. package/dist/esm5/test/integration/flows/anonymous.test.d.ts +0 -17
  406. package/dist/esm5/test/integration/flows/custom.local.test.d.ts +0 -17
  407. package/dist/esm5/test/integration/flows/email.test.d.ts +0 -17
  408. package/dist/esm5/test/integration/flows/idp.local.test.d.ts +0 -17
  409. package/dist/esm5/test/integration/flows/middleware_test_generator.d.ts +0 -18
  410. package/dist/esm5/test/integration/flows/oob.local.test.d.ts +0 -17
  411. package/dist/esm5/test/integration/flows/password_policy.test.d.ts +0 -17
  412. package/dist/esm5/test/integration/flows/phone.test.d.ts +0 -17
  413. package/dist/esm5/test/integration/flows/totp.test.d.ts +0 -17
  414. package/dist/esm5/test/integration/webdriver/anonymous.test.d.ts +0 -17
  415. package/dist/esm5/test/integration/webdriver/compat/firebaseui.test.d.ts +0 -17
  416. package/dist/esm5/test/integration/webdriver/persistence.test.d.ts +0 -17
  417. package/dist/esm5/test/integration/webdriver/popup.test.d.ts +0 -17
  418. package/dist/esm5/test/integration/webdriver/redirect.test.d.ts +0 -17
  419. package/dist/esm5/test/integration/webdriver/util/auth_driver.d.ts +0 -46
  420. package/dist/esm5/test/integration/webdriver/util/functions.d.ts +0 -81
  421. package/dist/esm5/test/integration/webdriver/util/idp_page.d.ts +0 -31
  422. package/dist/esm5/test/integration/webdriver/util/js_load_condition.d.ts +0 -25
  423. package/dist/esm5/test/integration/webdriver/util/test_runner.d.ts +0 -19
  424. package/dist/esm5/test/integration/webdriver/util/test_server.d.ts +0 -27
  425. package/dist/esm5/test/integration/webdriver/util/ui_page.d.ts +0 -33
  426. package/dist/index.webworker.esm5.js +0 -9265
  427. package/dist/index.webworker.esm5.js.map +0 -1
  428. package/dist/node/totp-259483a2.js +0 -8762
  429. package/dist/node/totp-259483a2.js.map +0 -1
  430. package/dist/node-esm/totp-219bb96f.js.map +0 -1
  431. package/dist/rn/index-2f66320e.js +0 -9819
  432. package/dist/rn/index-2f66320e.js.map +0 -1
  433. package/dist/web-extension-cjs/register-674a8250.js.map +0 -1
  434. package/dist/web-extension-esm2017/register-428f8789.js.map +0 -1
  435. /package/dist/{esm5/test/integration/flows/firebaseserverapp.test.d.ts → browser-cjs/test/integration/flows/recaptcha_enterprise.test.d.ts} +0 -0
@@ -1,682 +0,0 @@
1
- import { au as _isIOS, av as _isAndroid, aw as _fail, ax as _getRedirectUrl, ay as debugAssert, az as _getProjectConfig, aA as _isIOS7Or8, aB as _assert, aC as _createError, aD as AuthEventManager, aE as _getInstance, b as browserLocalPersistence, aF as _persistenceKeyName, aG as _clearRedirectOutcomes, a as browserSessionPersistence, aH as _getRedirectResult, aI as _overrideRedirectResult, aJ as _castAuth } from './index-c0803b14.js';
2
- export { A as ActionCodeOperation, ai as ActionCodeURL, L as AuthCredential, I as AuthErrorCodes, aL as AuthImpl, aO as AuthPopup, M as EmailAuthCredential, V as EmailAuthProvider, W as FacebookAuthProvider, F as FactorId, aP as FetchProvider, Y as GithubAuthProvider, X as GoogleAuthProvider, N as OAuthCredential, Z as OAuthProvider, O as OperationType, Q as PhoneAuthCredential, P as PhoneAuthProvider, m as PhoneMultiFactorGenerator, p as ProviderId, R as RecaptchaVerifier, aQ as SAMLAuthCredential, _ as SAMLAuthProvider, S as SignInMethod, T as TotpMultiFactorGenerator, n as TotpSecret, $ as TwitterAuthProvider, aK as UserImpl, aB as _assert, aJ as _castAuth, aw as _fail, aN as _generateEventId, aM as _getClientVersion, aE as _getInstance, aH as _getRedirectResult, aI as _overrideRedirectResult, aF as _persistenceKeyName, a7 as applyActionCode, x as beforeAuthStateChanged, b as browserLocalPersistence, k as browserPopupRedirectResolver, a as browserSessionPersistence, a8 as checkActionCode, a6 as confirmPasswordReset, K as connectAuthEmulator, aa as createUserWithEmailAndPassword, G as debugErrorMap, E as deleteUser, af as fetchSignInMethodsForEmail, aq as getAdditionalUserInfo, o as getAuth, an as getIdToken, ao as getIdTokenResult, as as getMultiFactorResolver, j as getRedirectResult, U as inMemoryPersistence, i as indexedDBLocalPersistence, J as initializeAuth, t as initializeRecaptchaConfig, ad as isSignInWithEmailLink, a2 as linkWithCredential, l as linkWithPhoneNumber, d as linkWithPopup, g as linkWithRedirect, at as multiFactor, y as onAuthStateChanged, w as onIdTokenChanged, aj as parseActionCodeURL, H as prodErrorMap, a3 as reauthenticateWithCredential, r as reauthenticateWithPhoneNumber, e as reauthenticateWithPopup, h as reauthenticateWithRedirect, ar as reload, D as revokeAccessToken, ag as sendEmailVerification, a5 as sendPasswordResetEmail, ac as sendSignInLinkToEmail, q as setPersistence, a0 as signInAnonymously, a1 as signInWithCredential, a4 as signInWithCustomToken, ab as signInWithEmailAndPassword, ae as signInWithEmailLink, s as signInWithPhoneNumber, c as signInWithPopup, f as signInWithRedirect, C as signOut, ap as unlink, B as updateCurrentUser, al as updateEmail, am as updatePassword, u as updatePhoneNumber, ak as updateProfile, z as useDeviceLanguage, v as validatePassword, ah as verifyBeforeUpdateEmail, a9 as verifyPasswordResetCode } from './index-c0803b14.js';
3
- import { __awaiter, __generator, __extends } from 'tslib';
4
- import { querystringDecode } from '@firebase/util';
5
- import '@firebase/app';
6
- import '@firebase/logger';
7
- import '@firebase/component';
8
-
9
- /**
10
- * @license
11
- * Copyright 2021 Google LLC
12
- *
13
- * Licensed under the Apache License, Version 2.0 (the "License");
14
- * you may not use this file except in compliance with the License.
15
- * You may obtain a copy of the License at
16
- *
17
- * http://www.apache.org/licenses/LICENSE-2.0
18
- *
19
- * Unless required by applicable law or agreed to in writing, software
20
- * distributed under the License is distributed on an "AS IS" BASIS,
21
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22
- * See the License for the specific language governing permissions and
23
- * limitations under the License.
24
- */
25
- function _cordovaWindow() {
26
- return window;
27
- }
28
-
29
- /**
30
- * @license
31
- * Copyright 2020 Google LLC
32
- *
33
- * Licensed under the Apache License, Version 2.0 (the "License");
34
- * you may not use this file except in compliance with the License.
35
- * You may obtain a copy of the License at
36
- *
37
- * http://www.apache.org/licenses/LICENSE-2.0
38
- *
39
- * Unless required by applicable law or agreed to in writing, software
40
- * distributed under the License is distributed on an "AS IS" BASIS,
41
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
42
- * See the License for the specific language governing permissions and
43
- * limitations under the License.
44
- */
45
- /**
46
- * How long to wait after the app comes back into focus before concluding that
47
- * the user closed the sign in tab.
48
- */
49
- var REDIRECT_TIMEOUT_MS = 2000;
50
- /**
51
- * Generates the URL for the OAuth handler.
52
- */
53
- function _generateHandlerUrl(auth, event, provider) {
54
- var _a;
55
- return __awaiter(this, void 0, void 0, function () {
56
- var BuildInfo, sessionDigest, additionalParams;
57
- return __generator(this, function (_b) {
58
- switch (_b.label) {
59
- case 0:
60
- BuildInfo = _cordovaWindow().BuildInfo;
61
- debugAssert(event.sessionId, 'AuthEvent did not contain a session ID');
62
- return [4 /*yield*/, computeSha256(event.sessionId)];
63
- case 1:
64
- sessionDigest = _b.sent();
65
- additionalParams = {};
66
- if (_isIOS()) {
67
- // iOS app identifier
68
- additionalParams['ibi'] = BuildInfo.packageName;
69
- }
70
- else if (_isAndroid()) {
71
- // Android app identifier
72
- additionalParams['apn'] = BuildInfo.packageName;
73
- }
74
- else {
75
- _fail(auth, "operation-not-supported-in-this-environment" /* AuthErrorCode.OPERATION_NOT_SUPPORTED */);
76
- }
77
- // Add the display name if available
78
- if (BuildInfo.displayName) {
79
- additionalParams['appDisplayName'] = BuildInfo.displayName;
80
- }
81
- // Attached the hashed session ID
82
- additionalParams['sessionId'] = sessionDigest;
83
- return [2 /*return*/, _getRedirectUrl(auth, provider, event.type, undefined, (_a = event.eventId) !== null && _a !== void 0 ? _a : undefined, additionalParams)];
84
- }
85
- });
86
- });
87
- }
88
- /**
89
- * Validates that this app is valid for this project configuration
90
- */
91
- function _validateOrigin(auth) {
92
- return __awaiter(this, void 0, void 0, function () {
93
- var BuildInfo, request;
94
- return __generator(this, function (_a) {
95
- switch (_a.label) {
96
- case 0:
97
- BuildInfo = _cordovaWindow().BuildInfo;
98
- request = {};
99
- if (_isIOS()) {
100
- request.iosBundleId = BuildInfo.packageName;
101
- }
102
- else if (_isAndroid()) {
103
- request.androidPackageName = BuildInfo.packageName;
104
- }
105
- else {
106
- _fail(auth, "operation-not-supported-in-this-environment" /* AuthErrorCode.OPERATION_NOT_SUPPORTED */);
107
- }
108
- // Will fail automatically if package name is not authorized
109
- return [4 /*yield*/, _getProjectConfig(auth, request)];
110
- case 1:
111
- // Will fail automatically if package name is not authorized
112
- _a.sent();
113
- return [2 /*return*/];
114
- }
115
- });
116
- });
117
- }
118
- function _performRedirect(handlerUrl) {
119
- // Get the cordova plugins
120
- var cordova = _cordovaWindow().cordova;
121
- return new Promise(function (resolve) {
122
- cordova.plugins.browsertab.isAvailable(function (browserTabIsAvailable) {
123
- var iabRef = null;
124
- if (browserTabIsAvailable) {
125
- cordova.plugins.browsertab.openUrl(handlerUrl);
126
- }
127
- else {
128
- // TODO: Return the inappbrowser ref that's returned from the open call
129
- iabRef = cordova.InAppBrowser.open(handlerUrl, _isIOS7Or8() ? '_blank' : '_system', 'location=yes');
130
- }
131
- resolve(iabRef);
132
- });
133
- });
134
- }
135
- /**
136
- * This function waits for app activity to be seen before resolving. It does
137
- * this by attaching listeners to various dom events. Once the app is determined
138
- * to be visible, this promise resolves. AFTER that resolution, the listeners
139
- * are detached and any browser tabs left open will be closed.
140
- */
141
- function _waitForAppResume(auth, eventListener, iabRef) {
142
- return __awaiter(this, void 0, void 0, function () {
143
- var cordova, cleanup;
144
- return __generator(this, function (_a) {
145
- switch (_a.label) {
146
- case 0:
147
- cordova = _cordovaWindow().cordova;
148
- cleanup = function () { };
149
- _a.label = 1;
150
- case 1:
151
- _a.trys.push([1, , 3, 4]);
152
- return [4 /*yield*/, new Promise(function (resolve, reject) {
153
- var onCloseTimer = null;
154
- // DEFINE ALL THE CALLBACKS =====
155
- function authEventSeen() {
156
- var _a;
157
- // Auth event was detected. Resolve this promise and close the extra
158
- // window if it's still open.
159
- resolve();
160
- var closeBrowserTab = (_a = cordova.plugins.browsertab) === null || _a === void 0 ? void 0 : _a.close;
161
- if (typeof closeBrowserTab === 'function') {
162
- closeBrowserTab();
163
- }
164
- // Close inappbrowser embedded webview in iOS7 and 8 case if still
165
- // open.
166
- if (typeof (iabRef === null || iabRef === void 0 ? void 0 : iabRef.close) === 'function') {
167
- iabRef.close();
168
- }
169
- }
170
- function resumed() {
171
- if (onCloseTimer) {
172
- // This code already ran; do not rerun.
173
- return;
174
- }
175
- onCloseTimer = window.setTimeout(function () {
176
- // Wait two seconds after resume then reject.
177
- reject(_createError(auth, "redirect-cancelled-by-user" /* AuthErrorCode.REDIRECT_CANCELLED_BY_USER */));
178
- }, REDIRECT_TIMEOUT_MS);
179
- }
180
- function visibilityChanged() {
181
- if ((document === null || document === void 0 ? void 0 : document.visibilityState) === 'visible') {
182
- resumed();
183
- }
184
- }
185
- // ATTACH ALL THE LISTENERS =====
186
- // Listen for the auth event
187
- eventListener.addPassiveListener(authEventSeen);
188
- // Listen for resume and visibility events
189
- document.addEventListener('resume', resumed, false);
190
- if (_isAndroid()) {
191
- document.addEventListener('visibilitychange', visibilityChanged, false);
192
- }
193
- // SETUP THE CLEANUP FUNCTION =====
194
- cleanup = function () {
195
- eventListener.removePassiveListener(authEventSeen);
196
- document.removeEventListener('resume', resumed, false);
197
- document.removeEventListener('visibilitychange', visibilityChanged, false);
198
- if (onCloseTimer) {
199
- window.clearTimeout(onCloseTimer);
200
- }
201
- };
202
- })];
203
- case 2:
204
- _a.sent();
205
- return [3 /*break*/, 4];
206
- case 3:
207
- cleanup();
208
- return [7 /*endfinally*/];
209
- case 4: return [2 /*return*/];
210
- }
211
- });
212
- });
213
- }
214
- /**
215
- * Checks the configuration of the Cordova environment. This has no side effect
216
- * if the configuration is correct; otherwise it throws an error with the
217
- * missing plugin.
218
- */
219
- function _checkCordovaConfiguration(auth) {
220
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
221
- var win = _cordovaWindow();
222
- // Check all dependencies installed.
223
- // https://github.com/nordnet/cordova-universal-links-plugin
224
- // Note that cordova-universal-links-plugin has been abandoned.
225
- // A fork with latest fixes is available at:
226
- // https://www.npmjs.com/package/cordova-universal-links-plugin-fix
227
- _assert(typeof ((_a = win === null || win === void 0 ? void 0 : win.universalLinks) === null || _a === void 0 ? void 0 : _a.subscribe) === 'function', auth, "invalid-cordova-configuration" /* AuthErrorCode.INVALID_CORDOVA_CONFIGURATION */, {
228
- missingPlugin: 'cordova-universal-links-plugin-fix'
229
- });
230
- // https://www.npmjs.com/package/cordova-plugin-buildinfo
231
- _assert(typeof ((_b = win === null || win === void 0 ? void 0 : win.BuildInfo) === null || _b === void 0 ? void 0 : _b.packageName) !== 'undefined', auth, "invalid-cordova-configuration" /* AuthErrorCode.INVALID_CORDOVA_CONFIGURATION */, {
232
- missingPlugin: 'cordova-plugin-buildInfo'
233
- });
234
- // https://github.com/google/cordova-plugin-browsertab
235
- _assert(typeof ((_e = (_d = (_c = win === null || win === void 0 ? void 0 : win.cordova) === null || _c === void 0 ? void 0 : _c.plugins) === null || _d === void 0 ? void 0 : _d.browsertab) === null || _e === void 0 ? void 0 : _e.openUrl) === 'function', auth, "invalid-cordova-configuration" /* AuthErrorCode.INVALID_CORDOVA_CONFIGURATION */, {
236
- missingPlugin: 'cordova-plugin-browsertab'
237
- });
238
- _assert(typeof ((_h = (_g = (_f = win === null || win === void 0 ? void 0 : win.cordova) === null || _f === void 0 ? void 0 : _f.plugins) === null || _g === void 0 ? void 0 : _g.browsertab) === null || _h === void 0 ? void 0 : _h.isAvailable) === 'function', auth, "invalid-cordova-configuration" /* AuthErrorCode.INVALID_CORDOVA_CONFIGURATION */, {
239
- missingPlugin: 'cordova-plugin-browsertab'
240
- });
241
- // https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-inappbrowser/
242
- _assert(typeof ((_k = (_j = win === null || win === void 0 ? void 0 : win.cordova) === null || _j === void 0 ? void 0 : _j.InAppBrowser) === null || _k === void 0 ? void 0 : _k.open) === 'function', auth, "invalid-cordova-configuration" /* AuthErrorCode.INVALID_CORDOVA_CONFIGURATION */, {
243
- missingPlugin: 'cordova-plugin-inappbrowser'
244
- });
245
- }
246
- /**
247
- * Computes the SHA-256 of a session ID. The SubtleCrypto interface is only
248
- * available in "secure" contexts, which covers Cordova (which is served on a file
249
- * protocol).
250
- */
251
- function computeSha256(sessionId) {
252
- return __awaiter(this, void 0, void 0, function () {
253
- var bytes, buf, arr;
254
- return __generator(this, function (_a) {
255
- switch (_a.label) {
256
- case 0:
257
- bytes = stringToArrayBuffer(sessionId);
258
- return [4 /*yield*/, crypto.subtle.digest('SHA-256', bytes)];
259
- case 1:
260
- buf = _a.sent();
261
- arr = Array.from(new Uint8Array(buf));
262
- return [2 /*return*/, arr.map(function (num) { return num.toString(16).padStart(2, '0'); }).join('')];
263
- }
264
- });
265
- });
266
- }
267
- function stringToArrayBuffer(str) {
268
- // This function is only meant to deal with an ASCII charset and makes
269
- // certain simplifying assumptions.
270
- debugAssert(/[0-9a-zA-Z]+/.test(str), 'Can only convert alpha-numeric strings');
271
- if (typeof TextEncoder !== 'undefined') {
272
- return new TextEncoder().encode(str);
273
- }
274
- var buff = new ArrayBuffer(str.length);
275
- var view = new Uint8Array(buff);
276
- for (var i = 0; i < str.length; i++) {
277
- view[i] = str.charCodeAt(i);
278
- }
279
- return view;
280
- }
281
-
282
- /**
283
- * @license
284
- * Copyright 2020 Google LLC
285
- *
286
- * Licensed under the Apache License, Version 2.0 (the "License");
287
- * you may not use this file except in compliance with the License.
288
- * You may obtain a copy of the License at
289
- *
290
- * http://www.apache.org/licenses/LICENSE-2.0
291
- *
292
- * Unless required by applicable law or agreed to in writing, software
293
- * distributed under the License is distributed on an "AS IS" BASIS,
294
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
295
- * See the License for the specific language governing permissions and
296
- * limitations under the License.
297
- */
298
- var SESSION_ID_LENGTH = 20;
299
- /** Custom AuthEventManager that adds passive listeners to events */
300
- var CordovaAuthEventManager = /** @class */ (function (_super) {
301
- __extends(CordovaAuthEventManager, _super);
302
- function CordovaAuthEventManager() {
303
- var _this = _super !== null && _super.apply(this, arguments) || this;
304
- _this.passiveListeners = new Set();
305
- _this.initPromise = new Promise(function (resolve) {
306
- _this.resolveInitialized = resolve;
307
- });
308
- return _this;
309
- }
310
- CordovaAuthEventManager.prototype.addPassiveListener = function (cb) {
311
- this.passiveListeners.add(cb);
312
- };
313
- CordovaAuthEventManager.prototype.removePassiveListener = function (cb) {
314
- this.passiveListeners.delete(cb);
315
- };
316
- // In a Cordova environment, this manager can live through multiple redirect
317
- // operations
318
- CordovaAuthEventManager.prototype.resetRedirect = function () {
319
- this.queuedRedirectEvent = null;
320
- this.hasHandledPotentialRedirect = false;
321
- };
322
- /** Override the onEvent method */
323
- CordovaAuthEventManager.prototype.onEvent = function (event) {
324
- this.resolveInitialized();
325
- this.passiveListeners.forEach(function (cb) { return cb(event); });
326
- return _super.prototype.onEvent.call(this, event);
327
- };
328
- CordovaAuthEventManager.prototype.initialized = function () {
329
- return __awaiter(this, void 0, void 0, function () {
330
- return __generator(this, function (_a) {
331
- switch (_a.label) {
332
- case 0: return [4 /*yield*/, this.initPromise];
333
- case 1:
334
- _a.sent();
335
- return [2 /*return*/];
336
- }
337
- });
338
- });
339
- };
340
- return CordovaAuthEventManager;
341
- }(AuthEventManager));
342
- /**
343
- * Generates a (partial) {@link AuthEvent}.
344
- */
345
- function _generateNewEvent(auth, type, eventId) {
346
- if (eventId === void 0) { eventId = null; }
347
- return {
348
- type: type,
349
- eventId: eventId,
350
- urlResponse: null,
351
- sessionId: generateSessionId(),
352
- postBody: null,
353
- tenantId: auth.tenantId,
354
- error: _createError(auth, "no-auth-event" /* AuthErrorCode.NO_AUTH_EVENT */)
355
- };
356
- }
357
- function _savePartialEvent(auth, event) {
358
- return storage()._set(persistenceKey(auth), event);
359
- }
360
- function _getAndRemoveEvent(auth) {
361
- return __awaiter(this, void 0, void 0, function () {
362
- var event;
363
- return __generator(this, function (_a) {
364
- switch (_a.label) {
365
- case 0: return [4 /*yield*/, storage()._get(persistenceKey(auth))];
366
- case 1:
367
- event = (_a.sent());
368
- if (!event) return [3 /*break*/, 3];
369
- return [4 /*yield*/, storage()._remove(persistenceKey(auth))];
370
- case 2:
371
- _a.sent();
372
- _a.label = 3;
373
- case 3: return [2 /*return*/, event];
374
- }
375
- });
376
- });
377
- }
378
- function _eventFromPartialAndUrl(partialEvent, url) {
379
- var _a, _b;
380
- // Parse the deep link within the dynamic link URL.
381
- var callbackUrl = _getDeepLinkFromCallback(url);
382
- // Confirm it is actually a callback URL.
383
- // Currently the universal link will be of this format:
384
- // https://<AUTH_DOMAIN>/__/auth/callback<OAUTH_RESPONSE>
385
- // This is a fake URL but is not intended to take the user anywhere
386
- // and just redirect to the app.
387
- if (callbackUrl.includes('/__/auth/callback')) {
388
- // Check if there is an error in the URL.
389
- // This mechanism is also used to pass errors back to the app:
390
- // https://<AUTH_DOMAIN>/__/auth/callback?firebaseError=<STRINGIFIED_ERROR>
391
- var params = searchParamsOrEmpty(callbackUrl);
392
- // Get the error object corresponding to the stringified error if found.
393
- var errorObject = params['firebaseError']
394
- ? parseJsonOrNull(decodeURIComponent(params['firebaseError']))
395
- : null;
396
- var code = (_b = (_a = errorObject === null || errorObject === void 0 ? void 0 : errorObject['code']) === null || _a === void 0 ? void 0 : _a.split('auth/')) === null || _b === void 0 ? void 0 : _b[1];
397
- var error = code ? _createError(code) : null;
398
- if (error) {
399
- return {
400
- type: partialEvent.type,
401
- eventId: partialEvent.eventId,
402
- tenantId: partialEvent.tenantId,
403
- error: error,
404
- urlResponse: null,
405
- sessionId: null,
406
- postBody: null
407
- };
408
- }
409
- else {
410
- return {
411
- type: partialEvent.type,
412
- eventId: partialEvent.eventId,
413
- tenantId: partialEvent.tenantId,
414
- sessionId: partialEvent.sessionId,
415
- urlResponse: callbackUrl,
416
- postBody: null
417
- };
418
- }
419
- }
420
- return null;
421
- }
422
- function generateSessionId() {
423
- var chars = [];
424
- var allowedChars = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
425
- for (var i = 0; i < SESSION_ID_LENGTH; i++) {
426
- var idx = Math.floor(Math.random() * allowedChars.length);
427
- chars.push(allowedChars.charAt(idx));
428
- }
429
- return chars.join('');
430
- }
431
- function storage() {
432
- return _getInstance(browserLocalPersistence);
433
- }
434
- function persistenceKey(auth) {
435
- return _persistenceKeyName("authEvent" /* KeyName.AUTH_EVENT */, auth.config.apiKey, auth.name);
436
- }
437
- function parseJsonOrNull(json) {
438
- try {
439
- return JSON.parse(json);
440
- }
441
- catch (e) {
442
- return null;
443
- }
444
- }
445
- // Exported for testing
446
- function _getDeepLinkFromCallback(url) {
447
- var params = searchParamsOrEmpty(url);
448
- var link = params['link'] ? decodeURIComponent(params['link']) : undefined;
449
- // Double link case (automatic redirect)
450
- var doubleDeepLink = searchParamsOrEmpty(link)['link'];
451
- // iOS custom scheme links.
452
- var iOSDeepLink = params['deep_link_id']
453
- ? decodeURIComponent(params['deep_link_id'])
454
- : undefined;
455
- var iOSDoubleDeepLink = searchParamsOrEmpty(iOSDeepLink)['link'];
456
- return iOSDoubleDeepLink || iOSDeepLink || doubleDeepLink || link || url;
457
- }
458
- /**
459
- * Optimistically tries to get search params from a string, or else returns an
460
- * empty search params object.
461
- */
462
- function searchParamsOrEmpty(url) {
463
- if (!(url === null || url === void 0 ? void 0 : url.includes('?'))) {
464
- return {};
465
- }
466
- var _a = url.split('?'); _a[0]; var rest = _a.slice(1);
467
- return querystringDecode(rest.join('?'));
468
- }
469
-
470
- /**
471
- * @license
472
- * Copyright 2021 Google LLC
473
- *
474
- * Licensed under the Apache License, Version 2.0 (the "License");
475
- * you may not use this file except in compliance with the License.
476
- * You may obtain a copy of the License at
477
- *
478
- * http://www.apache.org/licenses/LICENSE-2.0
479
- *
480
- * Unless required by applicable law or agreed to in writing, software
481
- * distributed under the License is distributed on an "AS IS" BASIS,
482
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
483
- * See the License for the specific language governing permissions and
484
- * limitations under the License.
485
- */
486
- /**
487
- * How long to wait for the initial auth event before concluding no
488
- * redirect pending
489
- */
490
- var INITIAL_EVENT_TIMEOUT_MS = 500;
491
- var CordovaPopupRedirectResolver = /** @class */ (function () {
492
- function CordovaPopupRedirectResolver() {
493
- this._redirectPersistence = browserSessionPersistence;
494
- this._shouldInitProactively = true; // This is lightweight for Cordova
495
- this.eventManagers = new Map();
496
- this.originValidationPromises = {};
497
- this._completeRedirectFn = _getRedirectResult;
498
- this._overrideRedirectResult = _overrideRedirectResult;
499
- }
500
- CordovaPopupRedirectResolver.prototype._initialize = function (auth) {
501
- return __awaiter(this, void 0, void 0, function () {
502
- var key, manager;
503
- return __generator(this, function (_a) {
504
- key = auth._key();
505
- manager = this.eventManagers.get(key);
506
- if (!manager) {
507
- manager = new CordovaAuthEventManager(auth);
508
- this.eventManagers.set(key, manager);
509
- this.attachCallbackListeners(auth, manager);
510
- }
511
- return [2 /*return*/, manager];
512
- });
513
- });
514
- };
515
- CordovaPopupRedirectResolver.prototype._openPopup = function (auth) {
516
- _fail(auth, "operation-not-supported-in-this-environment" /* AuthErrorCode.OPERATION_NOT_SUPPORTED */);
517
- };
518
- CordovaPopupRedirectResolver.prototype._openRedirect = function (auth, provider, authType, eventId) {
519
- return __awaiter(this, void 0, void 0, function () {
520
- var manager, event, url, iabRef;
521
- return __generator(this, function (_a) {
522
- switch (_a.label) {
523
- case 0:
524
- _checkCordovaConfiguration(auth);
525
- return [4 /*yield*/, this._initialize(auth)];
526
- case 1:
527
- manager = _a.sent();
528
- return [4 /*yield*/, manager.initialized()];
529
- case 2:
530
- _a.sent();
531
- // Reset the persisted redirect states. This does not matter on Web where
532
- // the redirect always blows away application state entirely. On Cordova,
533
- // the app maintains control flow through the redirect.
534
- manager.resetRedirect();
535
- _clearRedirectOutcomes();
536
- return [4 /*yield*/, this._originValidation(auth)];
537
- case 3:
538
- _a.sent();
539
- event = _generateNewEvent(auth, authType, eventId);
540
- return [4 /*yield*/, _savePartialEvent(auth, event)];
541
- case 4:
542
- _a.sent();
543
- return [4 /*yield*/, _generateHandlerUrl(auth, event, provider)];
544
- case 5:
545
- url = _a.sent();
546
- return [4 /*yield*/, _performRedirect(url)];
547
- case 6:
548
- iabRef = _a.sent();
549
- return [2 /*return*/, _waitForAppResume(auth, manager, iabRef)];
550
- }
551
- });
552
- });
553
- };
554
- CordovaPopupRedirectResolver.prototype._isIframeWebStorageSupported = function (_auth, _cb) {
555
- throw new Error('Method not implemented.');
556
- };
557
- CordovaPopupRedirectResolver.prototype._originValidation = function (auth) {
558
- var key = auth._key();
559
- if (!this.originValidationPromises[key]) {
560
- this.originValidationPromises[key] = _validateOrigin(auth);
561
- }
562
- return this.originValidationPromises[key];
563
- };
564
- CordovaPopupRedirectResolver.prototype.attachCallbackListeners = function (auth, manager) {
565
- var _this = this;
566
- // Get the global plugins
567
- var _a = _cordovaWindow(), universalLinks = _a.universalLinks, handleOpenURL = _a.handleOpenURL, BuildInfo = _a.BuildInfo;
568
- var noEventTimeout = setTimeout(function () { return __awaiter(_this, void 0, void 0, function () {
569
- return __generator(this, function (_a) {
570
- switch (_a.label) {
571
- case 0:
572
- // We didn't see that initial event. Clear any pending object and
573
- // dispatch no event
574
- return [4 /*yield*/, _getAndRemoveEvent(auth)];
575
- case 1:
576
- // We didn't see that initial event. Clear any pending object and
577
- // dispatch no event
578
- _a.sent();
579
- manager.onEvent(generateNoEvent());
580
- return [2 /*return*/];
581
- }
582
- });
583
- }); }, INITIAL_EVENT_TIMEOUT_MS);
584
- var universalLinksCb = function (eventData) { return __awaiter(_this, void 0, void 0, function () {
585
- var partialEvent, finalEvent;
586
- return __generator(this, function (_a) {
587
- switch (_a.label) {
588
- case 0:
589
- // We have an event so we can clear the no event timeout
590
- clearTimeout(noEventTimeout);
591
- return [4 /*yield*/, _getAndRemoveEvent(auth)];
592
- case 1:
593
- partialEvent = _a.sent();
594
- finalEvent = null;
595
- if (partialEvent && (eventData === null || eventData === void 0 ? void 0 : eventData['url'])) {
596
- finalEvent = _eventFromPartialAndUrl(partialEvent, eventData['url']);
597
- }
598
- // If finalEvent is never filled, trigger with no event
599
- manager.onEvent(finalEvent || generateNoEvent());
600
- return [2 /*return*/];
601
- }
602
- });
603
- }); };
604
- // Universal links subscriber doesn't exist for iOS, so we need to check
605
- if (typeof universalLinks !== 'undefined' &&
606
- typeof universalLinks.subscribe === 'function') {
607
- universalLinks.subscribe(null, universalLinksCb);
608
- }
609
- // iOS 7 or 8 custom URL schemes.
610
- // This is also the current default behavior for iOS 9+.
611
- // For this to work, cordova-plugin-customurlscheme needs to be installed.
612
- // https://github.com/EddyVerbruggen/Custom-URL-scheme
613
- // Do not overwrite the existing developer's URL handler.
614
- var existingHandleOpenURL = handleOpenURL;
615
- var packagePrefix = "".concat(BuildInfo.packageName.toLowerCase(), "://");
616
- _cordovaWindow().handleOpenURL = function (url) { return __awaiter(_this, void 0, void 0, function () {
617
- return __generator(this, function (_a) {
618
- if (url.toLowerCase().startsWith(packagePrefix)) {
619
- // We want this intentionally to float
620
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
621
- universalLinksCb({ url: url });
622
- }
623
- // Call the developer's handler if it is present.
624
- if (typeof existingHandleOpenURL === 'function') {
625
- try {
626
- existingHandleOpenURL(url);
627
- }
628
- catch (e) {
629
- // This is a developer error. Don't stop the flow of the SDK.
630
- console.error(e);
631
- }
632
- }
633
- return [2 /*return*/];
634
- });
635
- }); };
636
- };
637
- return CordovaPopupRedirectResolver;
638
- }());
639
- /**
640
- * An implementation of {@link PopupRedirectResolver} suitable for Cordova
641
- * based applications.
642
- *
643
- * @public
644
- */
645
- var cordovaPopupRedirectResolver = CordovaPopupRedirectResolver;
646
- function generateNoEvent() {
647
- return {
648
- type: "unknown" /* AuthEventType.UNKNOWN */,
649
- eventId: null,
650
- sessionId: null,
651
- urlResponse: null,
652
- postBody: null,
653
- tenantId: null,
654
- error: _createError("no-auth-event" /* AuthErrorCode.NO_AUTH_EVENT */)
655
- };
656
- }
657
-
658
- /**
659
- * @license
660
- * Copyright 2017 Google LLC
661
- *
662
- * Licensed under the Apache License, Version 2.0 (the "License");
663
- * you may not use this file except in compliance with the License.
664
- * You may obtain a copy of the License at
665
- *
666
- * http://www.apache.org/licenses/LICENSE-2.0
667
- *
668
- * Unless required by applicable law or agreed to in writing, software
669
- * distributed under the License is distributed on an "AS IS" BASIS,
670
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
671
- * See the License for the specific language governing permissions and
672
- * limitations under the License.
673
- */
674
- // This function should only be called by frameworks (e.g. FirebaseUI-web) to log their usage.
675
- // It is not intended for direct use by developer apps. NO jsdoc here to intentionally leave it out
676
- // of autogenerated documentation pages to reduce accidental misuse.
677
- function addFrameworkForLogging(auth, framework) {
678
- _castAuth(auth)._logFramework(framework);
679
- }
680
-
681
- export { addFrameworkForLogging, cordovaPopupRedirectResolver };
682
- //# sourceMappingURL=internal.js.map