react-native-google-mobile-ads 8.1.0 → 8.1.2

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 (238) hide show
  1. package/android/src/main/java/io/invertase/googlemobileads/ReactNativeGoogleMobileAdsAdHelper.kt +17 -42
  2. package/ios_config.sh +3 -3
  3. package/lib/commonjs/AdEventType.js +1 -4
  4. package/lib/commonjs/AdEventType.js.map +1 -1
  5. package/lib/commonjs/AdsConsent.js +2 -25
  6. package/lib/commonjs/AdsConsent.js.map +1 -1
  7. package/lib/commonjs/AdsConsentDebugGeography.js +0 -3
  8. package/lib/commonjs/AdsConsentDebugGeography.js.map +1 -1
  9. package/lib/commonjs/AdsConsentPurposes.js +1 -4
  10. package/lib/commonjs/AdsConsentPurposes.js.map +1 -1
  11. package/lib/commonjs/AdsConsentSpecialFeatures.js +1 -4
  12. package/lib/commonjs/AdsConsentSpecialFeatures.js.map +1 -1
  13. package/lib/commonjs/AdsConsentStatus.js +0 -3
  14. package/lib/commonjs/AdsConsentStatus.js.map +1 -1
  15. package/lib/commonjs/BannerAdSize.js +1 -4
  16. package/lib/commonjs/BannerAdSize.js.map +1 -1
  17. package/lib/commonjs/GAMAdEventType.js +1 -4
  18. package/lib/commonjs/GAMAdEventType.js.map +1 -1
  19. package/lib/commonjs/MaxAdContentRating.js +1 -4
  20. package/lib/commonjs/MaxAdContentRating.js.map +1 -1
  21. package/lib/commonjs/MobileAds.js +0 -14
  22. package/lib/commonjs/MobileAds.js.map +1 -1
  23. package/lib/commonjs/RewardedAdEventType.js +1 -4
  24. package/lib/commonjs/RewardedAdEventType.js.map +1 -1
  25. package/lib/commonjs/TestIds.js +1 -2
  26. package/lib/commonjs/TestIds.js.map +1 -1
  27. package/lib/commonjs/ads/AppOpenAd.js +0 -14
  28. package/lib/commonjs/ads/AppOpenAd.js.map +1 -1
  29. package/lib/commonjs/ads/BannerAd.js +1 -6
  30. package/lib/commonjs/ads/BannerAd.js.map +1 -1
  31. package/lib/commonjs/ads/BaseAd.js +1 -20
  32. package/lib/commonjs/ads/BaseAd.js.map +1 -1
  33. package/lib/commonjs/ads/GAMBannerAd.js +1 -14
  34. package/lib/commonjs/ads/GAMBannerAd.js.map +1 -1
  35. package/lib/commonjs/ads/GAMInterstitialAd.js +0 -6
  36. package/lib/commonjs/ads/GAMInterstitialAd.js.map +1 -1
  37. package/lib/commonjs/ads/InterstitialAd.js +0 -14
  38. package/lib/commonjs/ads/InterstitialAd.js.map +1 -1
  39. package/lib/commonjs/ads/MobileAd.js +2 -55
  40. package/lib/commonjs/ads/MobileAd.js.map +1 -1
  41. package/lib/commonjs/ads/RewardedAd.js +0 -16
  42. package/lib/commonjs/ads/RewardedAd.js.map +1 -1
  43. package/lib/commonjs/ads/RewardedInterstitialAd.js +0 -16
  44. package/lib/commonjs/ads/RewardedInterstitialAd.js.map +1 -1
  45. package/lib/commonjs/common/Base64.js +4 -23
  46. package/lib/commonjs/common/Base64.js.map +1 -1
  47. package/lib/commonjs/common/MutatableParams.js +2 -12
  48. package/lib/commonjs/common/MutatableParams.js.map +1 -1
  49. package/lib/commonjs/common/ReferenceBase.js +2 -10
  50. package/lib/commonjs/common/ReferenceBase.js.map +1 -1
  51. package/lib/commonjs/common/deeps.js +1 -17
  52. package/lib/commonjs/common/deeps.js.map +1 -1
  53. package/lib/commonjs/common/id.js +7 -17
  54. package/lib/commonjs/common/id.js.map +1 -1
  55. package/lib/commonjs/common/index.js +2 -34
  56. package/lib/commonjs/common/index.js.map +1 -1
  57. package/lib/commonjs/common/path.js +9 -28
  58. package/lib/commonjs/common/path.js.map +1 -1
  59. package/lib/commonjs/common/promise.js +1 -7
  60. package/lib/commonjs/common/promise.js.map +1 -1
  61. package/lib/commonjs/common/serialize.js +4 -8
  62. package/lib/commonjs/common/serialize.js.map +1 -1
  63. package/lib/commonjs/common/validate.js +17 -44
  64. package/lib/commonjs/common/validate.js.map +1 -1
  65. package/lib/commonjs/declarations.d.js.map +1 -1
  66. package/lib/commonjs/hooks/useAppOpenAd.js +0 -6
  67. package/lib/commonjs/hooks/useAppOpenAd.js.map +1 -1
  68. package/lib/commonjs/hooks/useFullScreenAd.js +5 -16
  69. package/lib/commonjs/hooks/useFullScreenAd.js.map +1 -1
  70. package/lib/commonjs/hooks/useInterstitialAd.js +0 -6
  71. package/lib/commonjs/hooks/useInterstitialAd.js.map +1 -1
  72. package/lib/commonjs/hooks/useRewardedAd.js +0 -6
  73. package/lib/commonjs/hooks/useRewardedAd.js.map +1 -1
  74. package/lib/commonjs/hooks/useRewardedInterstitialAd.js +0 -6
  75. package/lib/commonjs/hooks/useRewardedInterstitialAd.js.map +1 -1
  76. package/lib/commonjs/index.js +1 -29
  77. package/lib/commonjs/index.js.map +1 -1
  78. package/lib/commonjs/internal/GoogleMobileAdsNativeEventEmitter.js +8 -20
  79. package/lib/commonjs/internal/GoogleMobileAdsNativeEventEmitter.js.map +1 -1
  80. package/lib/commonjs/internal/Module.js +2 -18
  81. package/lib/commonjs/internal/Module.js.map +1 -1
  82. package/lib/commonjs/internal/NativeError.js +2 -13
  83. package/lib/commonjs/internal/NativeError.js.map +1 -1
  84. package/lib/commonjs/internal/SharedEventEmitter.js +2 -3
  85. package/lib/commonjs/internal/SharedEventEmitter.js.map +1 -1
  86. package/lib/commonjs/internal/constants.js +1 -1
  87. package/lib/commonjs/internal/constants.js.map +1 -1
  88. package/lib/commonjs/internal/index.js +0 -5
  89. package/lib/commonjs/internal/index.js.map +1 -1
  90. package/lib/commonjs/internal/registry/nativeModule.js +13 -44
  91. package/lib/commonjs/internal/registry/nativeModule.js.map +1 -1
  92. package/lib/commonjs/types/AdEventListener.js.map +1 -1
  93. package/lib/commonjs/types/AdEventsListener.js.map +1 -1
  94. package/lib/commonjs/types/AdShowOptions.js.map +1 -1
  95. package/lib/commonjs/types/AdStates.js.map +1 -1
  96. package/lib/commonjs/types/AdapterStatus.js +3 -6
  97. package/lib/commonjs/types/AdapterStatus.js.map +1 -1
  98. package/lib/commonjs/types/AdsConsent.interface.js.map +1 -1
  99. package/lib/commonjs/types/AppEvent.js.map +1 -1
  100. package/lib/commonjs/types/BannerAdProps.js.map +1 -1
  101. package/lib/commonjs/types/GoogleMobileAdsNativeModule.js.map +1 -1
  102. package/lib/commonjs/types/MobileAd.interface.js.map +1 -1
  103. package/lib/commonjs/types/MobileAdsModule.interface.js.map +1 -1
  104. package/lib/commonjs/types/Module.interface.js.map +1 -1
  105. package/lib/commonjs/types/RequestConfiguration.js.map +1 -1
  106. package/lib/commonjs/types/RequestOptions.js.map +1 -1
  107. package/lib/commonjs/types/RewardedAdReward.js.map +1 -1
  108. package/lib/commonjs/types/index.js +0 -22
  109. package/lib/commonjs/types/index.js.map +1 -1
  110. package/lib/commonjs/validateAdRequestConfiguration.js +1 -13
  111. package/lib/commonjs/validateAdRequestConfiguration.js.map +1 -1
  112. package/lib/commonjs/validateAdRequestOptions.js +1 -29
  113. package/lib/commonjs/validateAdRequestOptions.js.map +1 -1
  114. package/lib/commonjs/validateAdShowOptions.js +1 -7
  115. package/lib/commonjs/validateAdShowOptions.js.map +1 -1
  116. package/lib/commonjs/version.js +1 -1
  117. package/lib/commonjs/version.js.map +1 -1
  118. package/lib/module/AdEventType.js +1 -1
  119. package/lib/module/AdEventType.js.map +1 -1
  120. package/lib/module/AdsConsent.js +2 -18
  121. package/lib/module/AdsConsent.js.map +1 -1
  122. package/lib/module/AdsConsentDebugGeography.js +0 -1
  123. package/lib/module/AdsConsentDebugGeography.js.map +1 -1
  124. package/lib/module/AdsConsentPurposes.js +1 -1
  125. package/lib/module/AdsConsentPurposes.js.map +1 -1
  126. package/lib/module/AdsConsentSpecialFeatures.js +1 -1
  127. package/lib/module/AdsConsentSpecialFeatures.js.map +1 -1
  128. package/lib/module/AdsConsentStatus.js +0 -1
  129. package/lib/module/AdsConsentStatus.js.map +1 -1
  130. package/lib/module/BannerAdSize.js +1 -1
  131. package/lib/module/BannerAdSize.js.map +1 -1
  132. package/lib/module/GAMAdEventType.js +1 -1
  133. package/lib/module/GAMAdEventType.js.map +1 -1
  134. package/lib/module/MaxAdContentRating.js +1 -1
  135. package/lib/module/MaxAdContentRating.js.map +1 -1
  136. package/lib/module/MobileAds.js +0 -8
  137. package/lib/module/MobileAds.js.map +1 -1
  138. package/lib/module/RewardedAdEventType.js +1 -1
  139. package/lib/module/RewardedAdEventType.js.map +1 -1
  140. package/lib/module/TestIds.js +1 -0
  141. package/lib/module/TestIds.js.map +1 -1
  142. package/lib/module/ads/AppOpenAd.js +1 -8
  143. package/lib/module/ads/AppOpenAd.js.map +1 -1
  144. package/lib/module/ads/BannerAd.js +2 -2
  145. package/lib/module/ads/BannerAd.js.map +1 -1
  146. package/lib/module/ads/BaseAd.js +1 -9
  147. package/lib/module/ads/BaseAd.js.map +1 -1
  148. package/lib/module/ads/GAMBannerAd.js +2 -7
  149. package/lib/module/ads/GAMBannerAd.js.map +1 -1
  150. package/lib/module/ads/GAMInterstitialAd.js +0 -3
  151. package/lib/module/ads/GAMInterstitialAd.js.map +1 -1
  152. package/lib/module/ads/InterstitialAd.js +1 -9
  153. package/lib/module/ads/InterstitialAd.js.map +1 -1
  154. package/lib/module/ads/MobileAd.js +3 -47
  155. package/lib/module/ads/MobileAd.js.map +1 -1
  156. package/lib/module/ads/RewardedAd.js +1 -10
  157. package/lib/module/ads/RewardedAd.js.map +1 -1
  158. package/lib/module/ads/RewardedInterstitialAd.js +1 -10
  159. package/lib/module/ads/RewardedInterstitialAd.js.map +1 -1
  160. package/lib/module/common/Base64.js +4 -17
  161. package/lib/module/common/Base64.js.map +1 -1
  162. package/lib/module/common/MutatableParams.js +3 -9
  163. package/lib/module/common/MutatableParams.js.map +1 -1
  164. package/lib/module/common/ReferenceBase.js +2 -8
  165. package/lib/module/common/ReferenceBase.js.map +1 -1
  166. package/lib/module/common/deeps.js +3 -15
  167. package/lib/module/common/deeps.js.map +1 -1
  168. package/lib/module/common/id.js +7 -16
  169. package/lib/module/common/id.js.map +1 -1
  170. package/lib/module/common/index.js +2 -11
  171. package/lib/module/common/index.js.map +1 -1
  172. package/lib/module/common/path.js +9 -19
  173. package/lib/module/common/path.js.map +1 -1
  174. package/lib/module/common/promise.js +3 -5
  175. package/lib/module/common/promise.js.map +1 -1
  176. package/lib/module/common/serialize.js +4 -4
  177. package/lib/module/common/serialize.js.map +1 -1
  178. package/lib/module/common/validate.js +17 -24
  179. package/lib/module/common/validate.js.map +1 -1
  180. package/lib/module/declarations.d.js.map +1 -1
  181. package/lib/module/hooks/useAppOpenAd.js +2 -1
  182. package/lib/module/hooks/useAppOpenAd.js.map +1 -1
  183. package/lib/module/hooks/useFullScreenAd.js +5 -11
  184. package/lib/module/hooks/useFullScreenAd.js.map +1 -1
  185. package/lib/module/hooks/useInterstitialAd.js +2 -1
  186. package/lib/module/hooks/useInterstitialAd.js.map +1 -1
  187. package/lib/module/hooks/useRewardedAd.js +2 -1
  188. package/lib/module/hooks/useRewardedAd.js.map +1 -1
  189. package/lib/module/hooks/useRewardedInterstitialAd.js +2 -1
  190. package/lib/module/hooks/useRewardedInterstitialAd.js.map +1 -1
  191. package/lib/module/index.js +3 -1
  192. package/lib/module/index.js.map +1 -1
  193. package/lib/module/internal/GoogleMobileAdsNativeEventEmitter.js +9 -18
  194. package/lib/module/internal/GoogleMobileAdsNativeEventEmitter.js.map +1 -1
  195. package/lib/module/internal/Module.js +3 -13
  196. package/lib/module/internal/Module.js.map +1 -1
  197. package/lib/module/internal/NativeError.js +2 -11
  198. package/lib/module/internal/NativeError.js.map +1 -1
  199. package/lib/module/internal/SharedEventEmitter.js +1 -0
  200. package/lib/module/internal/SharedEventEmitter.js.map +1 -1
  201. package/lib/module/internal/constants.js +1 -0
  202. package/lib/module/internal/constants.js.map +1 -1
  203. package/lib/module/internal/index.js +1 -0
  204. package/lib/module/internal/index.js.map +1 -1
  205. package/lib/module/internal/registry/nativeModule.js +13 -35
  206. package/lib/module/internal/registry/nativeModule.js.map +1 -1
  207. package/lib/module/types/AdEventListener.js.map +1 -1
  208. package/lib/module/types/AdEventsListener.js.map +1 -1
  209. package/lib/module/types/AdShowOptions.js.map +1 -1
  210. package/lib/module/types/AdStates.js.map +1 -1
  211. package/lib/module/types/AdapterStatus.js +1 -1
  212. package/lib/module/types/AdapterStatus.js.map +1 -1
  213. package/lib/module/types/AdsConsent.interface.js.map +1 -1
  214. package/lib/module/types/AppEvent.js.map +1 -1
  215. package/lib/module/types/BannerAdProps.js.map +1 -1
  216. package/lib/module/types/GoogleMobileAdsNativeModule.js.map +1 -1
  217. package/lib/module/types/MobileAd.interface.js.map +1 -1
  218. package/lib/module/types/MobileAdsModule.interface.js.map +1 -1
  219. package/lib/module/types/Module.interface.js.map +1 -1
  220. package/lib/module/types/RequestConfiguration.js.map +1 -1
  221. package/lib/module/types/RequestOptions.js.map +1 -1
  222. package/lib/module/types/RewardedAdReward.js.map +1 -1
  223. package/lib/module/types/index.js +1 -0
  224. package/lib/module/types/index.js.map +1 -1
  225. package/lib/module/validateAdRequestConfiguration.js +1 -10
  226. package/lib/module/validateAdRequestConfiguration.js.map +1 -1
  227. package/lib/module/validateAdRequestOptions.js +1 -27
  228. package/lib/module/validateAdRequestOptions.js.map +1 -1
  229. package/lib/module/validateAdShowOptions.js +1 -5
  230. package/lib/module/validateAdShowOptions.js.map +1 -1
  231. package/lib/module/version.js +1 -1
  232. package/lib/module/version.js.map +1 -1
  233. package/lib/typescript/common/Base64.d.ts +0 -1
  234. package/lib/typescript/index.d.ts +1 -1
  235. package/lib/typescript/version.d.ts +1 -1
  236. package/package.json +35 -29
  237. package/src/internal/registry/nativeModule.ts +2 -0
  238. package/src/version.ts +1 -1
@@ -1,5 +1,4 @@
1
1
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
-
3
2
  /*
4
3
  * Copyright (c) 2016-present Invertase Limited & Contributors
5
4
  *
@@ -16,35 +15,30 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
16
15
  * limitations under the License.
17
16
  *
18
17
  */
18
+
19
19
  export class ReferenceBase {
20
20
  constructor(_path) {
21
21
  _defineProperty(this, "path", void 0);
22
-
23
22
  let path = _path;
24
-
25
23
  if (path) {
26
24
  path = path.length > 1 && path.endsWith('/') ? path.substring(0, path.length - 1) : path;
27
-
28
25
  if (path.startsWith('/') && path.length > 1) {
29
26
  path = path.substring(1, path.length);
30
27
  }
31
28
  } else {
32
29
  path = '/';
33
30
  }
34
-
35
31
  this.path = path;
36
32
  }
33
+
37
34
  /**
38
35
  * The last part of a Reference's path (after the last '/')
39
36
  * The key of a root Reference is null.
40
37
  * @type {String}
41
38
  * {@link https://firebase.google.com/docs/reference/js/firebase.database.Reference#key}
42
39
  */
43
-
44
-
45
40
  get key() {
46
41
  return this.path === '/' ? null : this.path.substring(this.path.lastIndexOf('/') + 1);
47
42
  }
48
-
49
43
  }
50
44
  //# sourceMappingURL=ReferenceBase.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ReferenceBase.ts"],"names":["ReferenceBase","constructor","_path","path","length","endsWith","substring","startsWith","key","lastIndexOf"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,OAAO,MAAMA,aAAN,CAAoB;AAGzBC,EAAAA,WAAW,CAACC,KAAD,EAAgB;AAAA;;AACzB,QAAIC,IAAI,GAAGD,KAAX;;AAEA,QAAIC,IAAJ,EAAU;AACRA,MAAAA,IAAI,GAAGA,IAAI,CAACC,MAAL,GAAc,CAAd,IAAmBD,IAAI,CAACE,QAAL,CAAc,GAAd,CAAnB,GAAwCF,IAAI,CAACG,SAAL,CAAe,CAAf,EAAkBH,IAAI,CAACC,MAAL,GAAc,CAAhC,CAAxC,GAA6ED,IAApF;;AACA,UAAIA,IAAI,CAACI,UAAL,CAAgB,GAAhB,KAAwBJ,IAAI,CAACC,MAAL,GAAc,CAA1C,EAA6C;AAC3CD,QAAAA,IAAI,GAAGA,IAAI,CAACG,SAAL,CAAe,CAAf,EAAkBH,IAAI,CAACC,MAAvB,CAAP;AACD;AACF,KALD,MAKO;AACLD,MAAAA,IAAI,GAAG,GAAP;AACD;;AAED,SAAKA,IAAL,GAAYA,IAAZ;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AACS,MAAHK,GAAG,GAAG;AACR,WAAO,KAAKL,IAAL,KAAc,GAAd,GAAoB,IAApB,GAA2B,KAAKA,IAAL,CAAUG,SAAV,CAAoB,KAAKH,IAAL,CAAUM,WAAV,CAAsB,GAAtB,IAA6B,CAAjD,CAAlC;AACD;;AA1BwB","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nexport class ReferenceBase {\n path: string;\n\n constructor(_path: string) {\n let path = _path;\n\n if (path) {\n path = path.length > 1 && path.endsWith('/') ? path.substring(0, path.length - 1) : path;\n if (path.startsWith('/') && path.length > 1) {\n path = path.substring(1, path.length);\n }\n } else {\n path = '/';\n }\n\n this.path = path;\n }\n\n /**\n * The last part of a Reference's path (after the last '/')\n * The key of a root Reference is null.\n * @type {String}\n * {@link https://firebase.google.com/docs/reference/js/firebase.database.Reference#key}\n */\n get key() {\n return this.path === '/' ? null : this.path.substring(this.path.lastIndexOf('/') + 1);\n }\n}\n"]}
1
+ {"version":3,"names":["ReferenceBase","constructor","_path","path","length","endsWith","substring","startsWith","key","lastIndexOf"],"sources":["ReferenceBase.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nexport class ReferenceBase {\n path: string;\n\n constructor(_path: string) {\n let path = _path;\n\n if (path) {\n path = path.length > 1 && path.endsWith('/') ? path.substring(0, path.length - 1) : path;\n if (path.startsWith('/') && path.length > 1) {\n path = path.substring(1, path.length);\n }\n } else {\n path = '/';\n }\n\n this.path = path;\n }\n\n /**\n * The last part of a Reference's path (after the last '/')\n * The key of a root Reference is null.\n * @type {String}\n * {@link https://firebase.google.com/docs/reference/js/firebase.database.Reference#key}\n */\n get key() {\n return this.path === '/' ? null : this.path.substring(this.path.lastIndexOf('/') + 1);\n }\n}\n"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,MAAMA,aAAa,CAAC;EAGzBC,WAAW,CAACC,KAAa,EAAE;IAAA;IACzB,IAAIC,IAAI,GAAGD,KAAK;IAEhB,IAAIC,IAAI,EAAE;MACRA,IAAI,GAAGA,IAAI,CAACC,MAAM,GAAG,CAAC,IAAID,IAAI,CAACE,QAAQ,CAAC,GAAG,CAAC,GAAGF,IAAI,CAACG,SAAS,CAAC,CAAC,EAAEH,IAAI,CAACC,MAAM,GAAG,CAAC,CAAC,GAAGD,IAAI;MACxF,IAAIA,IAAI,CAACI,UAAU,CAAC,GAAG,CAAC,IAAIJ,IAAI,CAACC,MAAM,GAAG,CAAC,EAAE;QAC3CD,IAAI,GAAGA,IAAI,CAACG,SAAS,CAAC,CAAC,EAAEH,IAAI,CAACC,MAAM,CAAC;MACvC;IACF,CAAC,MAAM;MACLD,IAAI,GAAG,GAAG;IACZ;IAEA,IAAI,CAACA,IAAI,GAAGA,IAAI;EAClB;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIK,GAAG,GAAG;IACR,OAAO,IAAI,CAACL,IAAI,KAAK,GAAG,GAAG,IAAI,GAAG,IAAI,CAACA,IAAI,CAACG,SAAS,CAAC,IAAI,CAACH,IAAI,CAACM,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;EACvF;AACF"}
@@ -14,7 +14,9 @@
14
14
  * limitations under the License.
15
15
  *
16
16
  */
17
+
17
18
  import { isArray, isObject } from './validate';
19
+
18
20
  /**
19
21
  * Deep get a value from an object.
20
22
  * @website https://github.com/Salakar/deeps
@@ -23,31 +25,25 @@ import { isArray, isObject } from './validate';
23
25
  * @param joiner
24
26
  * @returns {*}
25
27
  */
26
-
27
28
  export function deepGet(object, path) {
28
29
  let joiner = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '/';
29
-
30
30
  if (!isObject(object) && !Array.isArray(object)) {
31
31
  return undefined;
32
32
  }
33
-
34
33
  const keys = path.split(joiner);
35
34
  let i = 0;
36
35
  let value;
37
36
  const len = keys.length;
38
-
39
37
  while (i < len) {
40
38
  const key = keys[i++];
41
-
42
39
  if (!object || !Object.hasOwnProperty.call(object, key)) {
43
40
  return undefined;
44
41
  }
45
-
46
42
  value = object[key];
47
43
  }
48
-
49
44
  return value;
50
45
  }
46
+
51
47
  /**
52
48
  * Deep set a value
53
49
  * @param object
@@ -56,36 +52,28 @@ export function deepGet(object, path) {
56
52
  * @param initPaths
57
53
  * @param joiner
58
54
  */
59
-
60
55
  export function deepSet(object, path, value) {
61
56
  let initPaths = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
62
57
  let joiner = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : '.';
63
-
64
58
  if (!isObject(object)) {
65
59
  return false;
66
60
  }
67
-
68
61
  const keys = path.split(joiner);
69
62
  let i = 0;
70
63
  let _object = object;
71
64
  const len = keys.length - 1;
72
-
73
65
  while (i < len) {
74
66
  const key = keys[i++];
75
-
76
67
  if (initPaths && !Object.hasOwnProperty.call(object, key)) {
77
68
  _object[key] = {};
78
69
  }
79
-
80
70
  _object = _object[key];
81
71
  }
82
-
83
72
  if (isObject(_object) || isArray(_object) && !Number.isNaN(keys[i])) {
84
73
  _object[keys[i]] = value;
85
74
  } else {
86
75
  return false;
87
76
  }
88
-
89
77
  return true;
90
78
  }
91
79
  //# sourceMappingURL=deeps.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["deeps.ts"],"names":["isArray","isObject","deepGet","object","path","joiner","Array","undefined","keys","split","i","value","len","length","key","Object","hasOwnProperty","call","deepSet","initPaths","_object","Number","isNaN"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,SAASA,OAAT,EAAkBC,QAAlB,QAAkC,YAAlC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,OAAT,CAAiBC,MAAjB,EAAkDC,IAAlD,EAA8E;AAAA,MAAdC,MAAc,uEAAL,GAAK;;AACnF,MAAI,CAACJ,QAAQ,CAACE,MAAD,CAAT,IAAqB,CAACG,KAAK,CAACN,OAAN,CAAcG,MAAd,CAA1B,EAAiD;AAC/C,WAAOI,SAAP;AACD;;AACD,QAAMC,IAAI,GAAGJ,IAAI,CAACK,KAAL,CAAWJ,MAAX,CAAb;AAEA,MAAIK,CAAC,GAAG,CAAR;AACA,MAAIC,KAAJ;AACA,QAAMC,GAAG,GAAGJ,IAAI,CAACK,MAAjB;;AAEA,SAAOH,CAAC,GAAGE,GAAX,EAAgB;AACd,UAAME,GAAG,GAAGN,IAAI,CAACE,CAAC,EAAF,CAAhB;;AACA,QAAI,CAACP,MAAD,IAAW,CAACY,MAAM,CAACC,cAAP,CAAsBC,IAAtB,CAA2Bd,MAA3B,EAAmCW,GAAnC,CAAhB,EAAyD;AACvD,aAAOP,SAAP;AACD;;AACDI,IAAAA,KAAK,GAAGR,MAAM,CAACW,GAAD,CAAd;AACD;;AAED,SAAOH,KAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASO,OAAT,CACLf,MADK,EAELC,IAFK,EAGLO,KAHK,EAML;AAAA,MAFAQ,SAEA,uEAFY,IAEZ;AAAA,MADAd,MACA,uEADS,GACT;;AACA,MAAI,CAACJ,QAAQ,CAACE,MAAD,CAAb,EAAuB;AACrB,WAAO,KAAP;AACD;;AACD,QAAMK,IAAI,GAAGJ,IAAI,CAACK,KAAL,CAAWJ,MAAX,CAAb;AAEA,MAAIK,CAAC,GAAG,CAAR;AACA,MAAIU,OAAO,GAAGjB,MAAd;AACA,QAAMS,GAAG,GAAGJ,IAAI,CAACK,MAAL,GAAc,CAA1B;;AAEA,SAAOH,CAAC,GAAGE,GAAX,EAAgB;AACd,UAAME,GAAG,GAAGN,IAAI,CAACE,CAAC,EAAF,CAAhB;;AACA,QAAIS,SAAS,IAAI,CAACJ,MAAM,CAACC,cAAP,CAAsBC,IAAtB,CAA2Bd,MAA3B,EAAmCW,GAAnC,CAAlB,EAA2D;AACzDM,MAAAA,OAAO,CAACN,GAAD,CAAP,GAAe,EAAf;AACD;;AACDM,IAAAA,OAAO,GAAGA,OAAO,CAACN,GAAD,CAAjB;AACD;;AAED,MAAIb,QAAQ,CAACmB,OAAD,CAAR,IAAsBpB,OAAO,CAACoB,OAAD,CAAP,IAAoB,CAACC,MAAM,CAACC,KAAP,CAAad,IAAI,CAACE,CAAD,CAAjB,CAA/C,EAAuE;AACrEU,IAAAA,OAAO,CAACZ,IAAI,CAACE,CAAD,CAAL,CAAP,GAAmBC,KAAnB;AACD,GAFD,MAEO;AACL,WAAO,KAAP;AACD;;AAED,SAAO,IAAP;AACD","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { isArray, isObject } from './validate';\n\n/**\n * Deep get a value from an object.\n * @website https://github.com/Salakar/deeps\n * @param object\n * @param path\n * @param joiner\n * @returns {*}\n */\nexport function deepGet(object: Record<string, unknown>, path: string, joiner = '/') {\n if (!isObject(object) && !Array.isArray(object)) {\n return undefined;\n }\n const keys = path.split(joiner);\n\n let i = 0;\n let value;\n const len = keys.length;\n\n while (i < len) {\n const key = keys[i++];\n if (!object || !Object.hasOwnProperty.call(object, key)) {\n return undefined;\n }\n value = object[key];\n }\n\n return value;\n}\n\n/**\n * Deep set a value\n * @param object\n * @param path\n * @param value\n * @param initPaths\n * @param joiner\n */\nexport function deepSet(\n object: Record<string, unknown>,\n path: string,\n value: unknown,\n initPaths = true,\n joiner = '.',\n) {\n if (!isObject(object)) {\n return false;\n }\n const keys = path.split(joiner);\n\n let i = 0;\n let _object = object;\n const len = keys.length - 1;\n\n while (i < len) {\n const key = keys[i++];\n if (initPaths && !Object.hasOwnProperty.call(object, key)) {\n _object[key] = {};\n }\n _object = _object[key] as Record<string, unknown>;\n }\n\n if (isObject(_object) || (isArray(_object) && !Number.isNaN(keys[i]))) {\n _object[keys[i]] = value;\n } else {\n return false;\n }\n\n return true;\n}\n"]}
1
+ {"version":3,"names":["isArray","isObject","deepGet","object","path","joiner","Array","undefined","keys","split","i","value","len","length","key","Object","hasOwnProperty","call","deepSet","initPaths","_object","Number","isNaN"],"sources":["deeps.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { isArray, isObject } from './validate';\n\n/**\n * Deep get a value from an object.\n * @website https://github.com/Salakar/deeps\n * @param object\n * @param path\n * @param joiner\n * @returns {*}\n */\nexport function deepGet(object: Record<string, unknown>, path: string, joiner = '/') {\n if (!isObject(object) && !Array.isArray(object)) {\n return undefined;\n }\n const keys = path.split(joiner);\n\n let i = 0;\n let value;\n const len = keys.length;\n\n while (i < len) {\n const key = keys[i++];\n if (!object || !Object.hasOwnProperty.call(object, key)) {\n return undefined;\n }\n value = object[key];\n }\n\n return value;\n}\n\n/**\n * Deep set a value\n * @param object\n * @param path\n * @param value\n * @param initPaths\n * @param joiner\n */\nexport function deepSet(\n object: Record<string, unknown>,\n path: string,\n value: unknown,\n initPaths = true,\n joiner = '.',\n) {\n if (!isObject(object)) {\n return false;\n }\n const keys = path.split(joiner);\n\n let i = 0;\n let _object = object;\n const len = keys.length - 1;\n\n while (i < len) {\n const key = keys[i++];\n if (initPaths && !Object.hasOwnProperty.call(object, key)) {\n _object[key] = {};\n }\n _object = _object[key] as Record<string, unknown>;\n }\n\n if (isObject(_object) || (isArray(_object) && !Number.isNaN(keys[i]))) {\n _object[keys[i]] = value;\n } else {\n return false;\n }\n\n return true;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,OAAO,EAAEC,QAAQ,QAAQ,YAAY;;AAE9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,OAAO,CAACC,MAA+B,EAAEC,IAAY,EAAgB;EAAA,IAAdC,MAAM,uEAAG,GAAG;EACjF,IAAI,CAACJ,QAAQ,CAACE,MAAM,CAAC,IAAI,CAACG,KAAK,CAACN,OAAO,CAACG,MAAM,CAAC,EAAE;IAC/C,OAAOI,SAAS;EAClB;EACA,MAAMC,IAAI,GAAGJ,IAAI,CAACK,KAAK,CAACJ,MAAM,CAAC;EAE/B,IAAIK,CAAC,GAAG,CAAC;EACT,IAAIC,KAAK;EACT,MAAMC,GAAG,GAAGJ,IAAI,CAACK,MAAM;EAEvB,OAAOH,CAAC,GAAGE,GAAG,EAAE;IACd,MAAME,GAAG,GAAGN,IAAI,CAACE,CAAC,EAAE,CAAC;IACrB,IAAI,CAACP,MAAM,IAAI,CAACY,MAAM,CAACC,cAAc,CAACC,IAAI,CAACd,MAAM,EAAEW,GAAG,CAAC,EAAE;MACvD,OAAOP,SAAS;IAClB;IACAI,KAAK,GAAGR,MAAM,CAACW,GAAG,CAAC;EACrB;EAEA,OAAOH,KAAK;AACd;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASO,OAAO,CACrBf,MAA+B,EAC/BC,IAAY,EACZO,KAAc,EAGd;EAAA,IAFAQ,SAAS,uEAAG,IAAI;EAAA,IAChBd,MAAM,uEAAG,GAAG;EAEZ,IAAI,CAACJ,QAAQ,CAACE,MAAM,CAAC,EAAE;IACrB,OAAO,KAAK;EACd;EACA,MAAMK,IAAI,GAAGJ,IAAI,CAACK,KAAK,CAACJ,MAAM,CAAC;EAE/B,IAAIK,CAAC,GAAG,CAAC;EACT,IAAIU,OAAO,GAAGjB,MAAM;EACpB,MAAMS,GAAG,GAAGJ,IAAI,CAACK,MAAM,GAAG,CAAC;EAE3B,OAAOH,CAAC,GAAGE,GAAG,EAAE;IACd,MAAME,GAAG,GAAGN,IAAI,CAACE,CAAC,EAAE,CAAC;IACrB,IAAIS,SAAS,IAAI,CAACJ,MAAM,CAACC,cAAc,CAACC,IAAI,CAACd,MAAM,EAAEW,GAAG,CAAC,EAAE;MACzDM,OAAO,CAACN,GAAG,CAAC,GAAG,CAAC,CAAC;IACnB;IACAM,OAAO,GAAGA,OAAO,CAACN,GAAG,CAA4B;EACnD;EAEA,IAAIb,QAAQ,CAACmB,OAAO,CAAC,IAAKpB,OAAO,CAACoB,OAAO,CAAC,IAAI,CAACC,MAAM,CAACC,KAAK,CAACd,IAAI,CAACE,CAAC,CAAC,CAAE,EAAE;IACrEU,OAAO,CAACZ,IAAI,CAACE,CAAC,CAAC,CAAC,GAAGC,KAAK;EAC1B,CAAC,MAAM;IACL,OAAO,KAAK;EACd;EAEA,OAAO,IAAI;AACb"}
@@ -1,36 +1,34 @@
1
1
  const PUSH_CHARS = '-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz';
2
- const AUTO_ID_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; // timestamp of last push, used to prevent local collisions if you push twice in one ms.
2
+ const AUTO_ID_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
3
3
 
4
- let lastPushTime = 0; // we generate 72-bits of randomness which get turned into 12 characters and appended to the
4
+ // timestamp of last push, used to prevent local collisions if you push twice in one ms.
5
+ let lastPushTime = 0;
6
+
7
+ // we generate 72-bits of randomness which get turned into 12 characters and appended to the
5
8
  // timestamp to prevent collisions with other clients. We store the last characters we
6
9
  // generated because in the event of a collision, we'll use those same characters except
7
10
  // "incremented" by one.
8
-
9
11
  const lastRandChars = [];
12
+
10
13
  /**
11
14
  * Generate a firebase id - for use with ref().push(val, cb) - e.g. -KXMr7k2tXUFQqiaZRY4'
12
15
  * @param serverTimeOffset - pass in server time offset from native side
13
16
  * @returns {string}
14
17
  */
15
-
16
18
  export function generateDatabaseId() {
17
19
  let serverTimeOffset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
18
20
  const timeStampChars = new Array(8);
19
21
  let now = new Date().getTime() + serverTimeOffset;
20
22
  const duplicateTime = now === lastPushTime;
21
23
  lastPushTime = now;
22
-
23
24
  for (let i = 7; i >= 0; i -= 1) {
24
25
  timeStampChars[i] = PUSH_CHARS.charAt(now % 64);
25
26
  now = Math.floor(now / 64);
26
27
  }
27
-
28
28
  if (now !== 0) {
29
29
  throw new Error('We should have converted the entire timestamp.');
30
30
  }
31
-
32
31
  let id = timeStampChars.join('');
33
-
34
32
  if (!duplicateTime) {
35
33
  for (let i = 0; i < 12; i += 1) {
36
34
  lastRandChars[i] = Math.floor(Math.random() * 64);
@@ -39,36 +37,29 @@ export function generateDatabaseId() {
39
37
  // if the timestamp hasn't changed since last push,
40
38
  // use the same random number, but increment it by 1.
41
39
  let i;
42
-
43
40
  for (i = 11; i >= 0 && lastRandChars[i] === 63; i -= 1) {
44
41
  lastRandChars[i] = 0;
45
42
  }
46
-
47
43
  lastRandChars[i] += 1;
48
44
  }
49
-
50
45
  for (let i = 0; i < 12; i++) {
51
46
  id += PUSH_CHARS.charAt(lastRandChars[i]);
52
47
  }
53
-
54
48
  if (id.length !== 20) {
55
49
  throw new Error('Length should be 20.');
56
50
  }
57
-
58
51
  return id;
59
52
  }
53
+
60
54
  /**
61
55
  * Generate a firestore auto id for use with collection/document .add()
62
56
  * @return {string}
63
57
  */
64
-
65
58
  export function generateFirestoreId() {
66
59
  let autoId = '';
67
-
68
60
  for (let i = 0; i < 20; i++) {
69
61
  autoId += AUTO_ID_CHARS.charAt(Math.floor(Math.random() * AUTO_ID_CHARS.length));
70
62
  }
71
-
72
63
  return autoId;
73
64
  }
74
65
  //# sourceMappingURL=id.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["id.ts"],"names":["PUSH_CHARS","AUTO_ID_CHARS","lastPushTime","lastRandChars","generateDatabaseId","serverTimeOffset","timeStampChars","Array","now","Date","getTime","duplicateTime","i","charAt","Math","floor","Error","id","join","random","length","generateFirestoreId","autoId"],"mappings":"AAAA,MAAMA,UAAU,GAAG,kEAAnB;AAEA,MAAMC,aAAa,GAAG,gEAAtB,C,CAEA;;AACA,IAAIC,YAAY,GAAG,CAAnB,C,CAEA;AACA;AACA;AACA;;AACA,MAAMC,aAAuB,GAAG,EAAhC;AAEA;AACA;AACA;AACA;AACA;;AACA,OAAO,SAASC,kBAAT,GAAkD;AAAA,MAAtBC,gBAAsB,uEAAH,CAAG;AACvD,QAAMC,cAAc,GAAG,IAAIC,KAAJ,CAAU,CAAV,CAAvB;AACA,MAAIC,GAAG,GAAG,IAAIC,IAAJ,GAAWC,OAAX,KAAuBL,gBAAjC;AACA,QAAMM,aAAa,GAAGH,GAAG,KAAKN,YAA9B;AAEAA,EAAAA,YAAY,GAAGM,GAAf;;AAEA,OAAK,IAAII,CAAC,GAAG,CAAb,EAAgBA,CAAC,IAAI,CAArB,EAAwBA,CAAC,IAAI,CAA7B,EAAgC;AAC9BN,IAAAA,cAAc,CAACM,CAAD,CAAd,GAAoBZ,UAAU,CAACa,MAAX,CAAkBL,GAAG,GAAG,EAAxB,CAApB;AACAA,IAAAA,GAAG,GAAGM,IAAI,CAACC,KAAL,CAAWP,GAAG,GAAG,EAAjB,CAAN;AACD;;AAED,MAAIA,GAAG,KAAK,CAAZ,EAAe;AACb,UAAM,IAAIQ,KAAJ,CAAU,gDAAV,CAAN;AACD;;AAED,MAAIC,EAAE,GAAGX,cAAc,CAACY,IAAf,CAAoB,EAApB,CAAT;;AAEA,MAAI,CAACP,aAAL,EAAoB;AAClB,SAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG,EAApB,EAAwBA,CAAC,IAAI,CAA7B,EAAgC;AAC9BT,MAAAA,aAAa,CAACS,CAAD,CAAb,GAAmBE,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACK,MAAL,KAAgB,EAA3B,CAAnB;AACD;AACF,GAJD,MAIO;AACL;AACA;AACA,QAAIP,CAAJ;;AACA,SAAKA,CAAC,GAAG,EAAT,EAAaA,CAAC,IAAI,CAAL,IAAUT,aAAa,CAACS,CAAD,CAAb,KAAqB,EAA5C,EAAgDA,CAAC,IAAI,CAArD,EAAwD;AACtDT,MAAAA,aAAa,CAACS,CAAD,CAAb,GAAmB,CAAnB;AACD;;AAEDT,IAAAA,aAAa,CAACS,CAAD,CAAb,IAAoB,CAApB;AACD;;AAED,OAAK,IAAIA,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG,EAApB,EAAwBA,CAAC,EAAzB,EAA6B;AAC3BK,IAAAA,EAAE,IAAIjB,UAAU,CAACa,MAAX,CAAkBV,aAAa,CAACS,CAAD,CAA/B,CAAN;AACD;;AAED,MAAIK,EAAE,CAACG,MAAH,KAAc,EAAlB,EAAsB;AACpB,UAAM,IAAIJ,KAAJ,CAAU,sBAAV,CAAN;AACD;;AAED,SAAOC,EAAP;AACD;AAED;AACA;AACA;AACA;;AACA,OAAO,SAASI,mBAAT,GAA+B;AACpC,MAAIC,MAAM,GAAG,EAAb;;AAEA,OAAK,IAAIV,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG,EAApB,EAAwBA,CAAC,EAAzB,EAA6B;AAC3BU,IAAAA,MAAM,IAAIrB,aAAa,CAACY,MAAd,CAAqBC,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACK,MAAL,KAAgBlB,aAAa,CAACmB,MAAzC,CAArB,CAAV;AACD;;AACD,SAAOE,MAAP;AACD","sourcesContent":["const PUSH_CHARS = '-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz';\n\nconst AUTO_ID_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n\n// timestamp of last push, used to prevent local collisions if you push twice in one ms.\nlet lastPushTime = 0;\n\n// we generate 72-bits of randomness which get turned into 12 characters and appended to the\n// timestamp to prevent collisions with other clients. We store the last characters we\n// generated because in the event of a collision, we'll use those same characters except\n// \"incremented\" by one.\nconst lastRandChars: number[] = [];\n\n/**\n * Generate a firebase id - for use with ref().push(val, cb) - e.g. -KXMr7k2tXUFQqiaZRY4'\n * @param serverTimeOffset - pass in server time offset from native side\n * @returns {string}\n */\nexport function generateDatabaseId(serverTimeOffset = 0) {\n const timeStampChars = new Array(8);\n let now = new Date().getTime() + serverTimeOffset;\n const duplicateTime = now === lastPushTime;\n\n lastPushTime = now;\n\n for (let i = 7; i >= 0; i -= 1) {\n timeStampChars[i] = PUSH_CHARS.charAt(now % 64);\n now = Math.floor(now / 64);\n }\n\n if (now !== 0) {\n throw new Error('We should have converted the entire timestamp.');\n }\n\n let id = timeStampChars.join('');\n\n if (!duplicateTime) {\n for (let i = 0; i < 12; i += 1) {\n lastRandChars[i] = Math.floor(Math.random() * 64);\n }\n } else {\n // if the timestamp hasn't changed since last push,\n // use the same random number, but increment it by 1.\n let i;\n for (i = 11; i >= 0 && lastRandChars[i] === 63; i -= 1) {\n lastRandChars[i] = 0;\n }\n\n lastRandChars[i] += 1;\n }\n\n for (let i = 0; i < 12; i++) {\n id += PUSH_CHARS.charAt(lastRandChars[i]);\n }\n\n if (id.length !== 20) {\n throw new Error('Length should be 20.');\n }\n\n return id;\n}\n\n/**\n * Generate a firestore auto id for use with collection/document .add()\n * @return {string}\n */\nexport function generateFirestoreId() {\n let autoId = '';\n\n for (let i = 0; i < 20; i++) {\n autoId += AUTO_ID_CHARS.charAt(Math.floor(Math.random() * AUTO_ID_CHARS.length));\n }\n return autoId;\n}\n"]}
1
+ {"version":3,"names":["PUSH_CHARS","AUTO_ID_CHARS","lastPushTime","lastRandChars","generateDatabaseId","serverTimeOffset","timeStampChars","Array","now","Date","getTime","duplicateTime","i","charAt","Math","floor","Error","id","join","random","length","generateFirestoreId","autoId"],"sources":["id.ts"],"sourcesContent":["const PUSH_CHARS = '-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz';\n\nconst AUTO_ID_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n\n// timestamp of last push, used to prevent local collisions if you push twice in one ms.\nlet lastPushTime = 0;\n\n// we generate 72-bits of randomness which get turned into 12 characters and appended to the\n// timestamp to prevent collisions with other clients. We store the last characters we\n// generated because in the event of a collision, we'll use those same characters except\n// \"incremented\" by one.\nconst lastRandChars: number[] = [];\n\n/**\n * Generate a firebase id - for use with ref().push(val, cb) - e.g. -KXMr7k2tXUFQqiaZRY4'\n * @param serverTimeOffset - pass in server time offset from native side\n * @returns {string}\n */\nexport function generateDatabaseId(serverTimeOffset = 0) {\n const timeStampChars = new Array(8);\n let now = new Date().getTime() + serverTimeOffset;\n const duplicateTime = now === lastPushTime;\n\n lastPushTime = now;\n\n for (let i = 7; i >= 0; i -= 1) {\n timeStampChars[i] = PUSH_CHARS.charAt(now % 64);\n now = Math.floor(now / 64);\n }\n\n if (now !== 0) {\n throw new Error('We should have converted the entire timestamp.');\n }\n\n let id = timeStampChars.join('');\n\n if (!duplicateTime) {\n for (let i = 0; i < 12; i += 1) {\n lastRandChars[i] = Math.floor(Math.random() * 64);\n }\n } else {\n // if the timestamp hasn't changed since last push,\n // use the same random number, but increment it by 1.\n let i;\n for (i = 11; i >= 0 && lastRandChars[i] === 63; i -= 1) {\n lastRandChars[i] = 0;\n }\n\n lastRandChars[i] += 1;\n }\n\n for (let i = 0; i < 12; i++) {\n id += PUSH_CHARS.charAt(lastRandChars[i]);\n }\n\n if (id.length !== 20) {\n throw new Error('Length should be 20.');\n }\n\n return id;\n}\n\n/**\n * Generate a firestore auto id for use with collection/document .add()\n * @return {string}\n */\nexport function generateFirestoreId() {\n let autoId = '';\n\n for (let i = 0; i < 20; i++) {\n autoId += AUTO_ID_CHARS.charAt(Math.floor(Math.random() * AUTO_ID_CHARS.length));\n }\n return autoId;\n}\n"],"mappings":"AAAA,MAAMA,UAAU,GAAG,kEAAkE;AAErF,MAAMC,aAAa,GAAG,gEAAgE;;AAEtF;AACA,IAAIC,YAAY,GAAG,CAAC;;AAEpB;AACA;AACA;AACA;AACA,MAAMC,aAAuB,GAAG,EAAE;;AAElC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkB,GAAuB;EAAA,IAAtBC,gBAAgB,uEAAG,CAAC;EACrD,MAAMC,cAAc,GAAG,IAAIC,KAAK,CAAC,CAAC,CAAC;EACnC,IAAIC,GAAG,GAAG,IAAIC,IAAI,EAAE,CAACC,OAAO,EAAE,GAAGL,gBAAgB;EACjD,MAAMM,aAAa,GAAGH,GAAG,KAAKN,YAAY;EAE1CA,YAAY,GAAGM,GAAG;EAElB,KAAK,IAAII,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI,CAAC,EAAEA,CAAC,IAAI,CAAC,EAAE;IAC9BN,cAAc,CAACM,CAAC,CAAC,GAAGZ,UAAU,CAACa,MAAM,CAACL,GAAG,GAAG,EAAE,CAAC;IAC/CA,GAAG,GAAGM,IAAI,CAACC,KAAK,CAACP,GAAG,GAAG,EAAE,CAAC;EAC5B;EAEA,IAAIA,GAAG,KAAK,CAAC,EAAE;IACb,MAAM,IAAIQ,KAAK,CAAC,gDAAgD,CAAC;EACnE;EAEA,IAAIC,EAAE,GAAGX,cAAc,CAACY,IAAI,CAAC,EAAE,CAAC;EAEhC,IAAI,CAACP,aAAa,EAAE;IAClB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,EAAE,EAAEA,CAAC,IAAI,CAAC,EAAE;MAC9BT,aAAa,CAACS,CAAC,CAAC,GAAGE,IAAI,CAACC,KAAK,CAACD,IAAI,CAACK,MAAM,EAAE,GAAG,EAAE,CAAC;IACnD;EACF,CAAC,MAAM;IACL;IACA;IACA,IAAIP,CAAC;IACL,KAAKA,CAAC,GAAG,EAAE,EAAEA,CAAC,IAAI,CAAC,IAAIT,aAAa,CAACS,CAAC,CAAC,KAAK,EAAE,EAAEA,CAAC,IAAI,CAAC,EAAE;MACtDT,aAAa,CAACS,CAAC,CAAC,GAAG,CAAC;IACtB;IAEAT,aAAa,CAACS,CAAC,CAAC,IAAI,CAAC;EACvB;EAEA,KAAK,IAAIA,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,EAAE,EAAEA,CAAC,EAAE,EAAE;IAC3BK,EAAE,IAAIjB,UAAU,CAACa,MAAM,CAACV,aAAa,CAACS,CAAC,CAAC,CAAC;EAC3C;EAEA,IAAIK,EAAE,CAACG,MAAM,KAAK,EAAE,EAAE;IACpB,MAAM,IAAIJ,KAAK,CAAC,sBAAsB,CAAC;EACzC;EAEA,OAAOC,EAAE;AACX;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASI,mBAAmB,GAAG;EACpC,IAAIC,MAAM,GAAG,EAAE;EAEf,KAAK,IAAIV,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,EAAE,EAAEA,CAAC,EAAE,EAAE;IAC3BU,MAAM,IAAIrB,aAAa,CAACY,MAAM,CAACC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACK,MAAM,EAAE,GAAGlB,aAAa,CAACmB,MAAM,CAAC,CAAC;EAClF;EACA,OAAOE,MAAM;AACf"}
@@ -14,6 +14,7 @@
14
14
  * limitations under the License.
15
15
  *
16
16
  */
17
+
17
18
  import { Platform } from 'react-native';
18
19
  import * as Base64 from './Base64';
19
20
  import { isString, isUndefined } from './validate';
@@ -26,24 +27,19 @@ export { ReferenceBase } from './ReferenceBase';
26
27
  export function getDataUrlParts(dataUrlString) {
27
28
  const isBase64 = dataUrlString.includes(';base64');
28
29
  let [mediaType, base64String] = dataUrlString.split(',');
29
-
30
30
  if (!mediaType || !base64String) {
31
31
  return {
32
32
  base64String: undefined,
33
33
  mediaType: undefined
34
34
  };
35
35
  }
36
-
37
36
  mediaType = mediaType.replace('data:', '').replace(';base64', '');
38
-
39
37
  if (base64String && base64String.includes('%')) {
40
38
  base64String = decodeURIComponent(base64String);
41
39
  }
42
-
43
40
  if (!isBase64) {
44
41
  base64String = Base64.btoa(base64String);
45
42
  }
46
-
47
43
  return {
48
44
  base64String,
49
45
  mediaType
@@ -55,14 +51,11 @@ export function once(fn, context) {
55
51
  return function onceInner() {
56
52
  if (!ranOnce) {
57
53
  ranOnce = true;
58
-
59
54
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
60
55
  args[_key] = arguments[_key];
61
56
  }
62
-
63
57
  onceResult = fn.apply(context || this, args);
64
58
  }
65
-
66
59
  return onceResult;
67
60
  };
68
61
  }
@@ -70,7 +63,6 @@ export function isError(value) {
70
63
  if (Object.prototype.toString.call(value) === '[object Error]') {
71
64
  return true;
72
65
  }
73
-
74
66
  return value instanceof Error;
75
67
  }
76
68
  export function hasOwnProperty(target, property) {
@@ -79,18 +71,17 @@ export function hasOwnProperty(target, property) {
79
71
  export function isPropertySet(target, property) {
80
72
  return hasOwnProperty(target, property) && !isUndefined(target[property]);
81
73
  }
74
+
82
75
  /**
83
76
  * Remove a trailing forward slash from a string if it exists
84
77
  *
85
78
  * @param string
86
79
  * @returns {*}
87
80
  */
88
-
89
81
  export function stripTrailingSlash(string) {
90
82
  if (!isString(string)) {
91
83
  return string;
92
84
  }
93
-
94
85
  return string.endsWith('/') ? string.slice(0, -1) : string;
95
86
  }
96
87
  export const isIOS = Platform.OS === 'ios';
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":["Platform","Base64","isString","isUndefined","ReferenceBase","getDataUrlParts","dataUrlString","isBase64","includes","mediaType","base64String","split","undefined","replace","decodeURIComponent","btoa","once","fn","context","onceResult","ranOnce","onceInner","args","apply","isError","value","Object","prototype","toString","call","Error","hasOwnProperty","target","property","isPropertySet","stripTrailingSlash","string","endsWith","slice","isIOS","OS","isAndroid","tryJSONParse","JSON","parse","jsonError","tryJSONStringify","data","stringify"],"mappings":"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","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { Platform } from 'react-native';\nimport * as Base64 from './Base64';\nimport { isString, isUndefined } from './validate';\n\nexport * from './id';\nexport * from './path';\nexport * from './promise';\nexport * from './validate';\n\nexport { Base64 };\nexport { ReferenceBase } from './ReferenceBase';\n\nexport function getDataUrlParts(dataUrlString: string) {\n const isBase64 = dataUrlString.includes(';base64');\n let [mediaType, base64String] = dataUrlString.split(',');\n if (!mediaType || !base64String) {\n return { base64String: undefined, mediaType: undefined };\n }\n mediaType = mediaType.replace('data:', '').replace(';base64', '');\n if (base64String && base64String.includes('%')) {\n base64String = decodeURIComponent(base64String);\n }\n if (!isBase64) {\n base64String = Base64.btoa(base64String);\n }\n return { base64String, mediaType };\n}\n\nexport function once<T>(fn: () => void, context: unknown): (this: T, ...args: []) => void {\n let onceResult: unknown;\n let ranOnce = false;\n\n return function onceInner(...args: []) {\n if (!ranOnce) {\n ranOnce = true;\n onceResult = fn.apply(context || this, args);\n }\n\n return onceResult;\n };\n}\n\nexport function isError(value: unknown) {\n if (Object.prototype.toString.call(value) === '[object Error]') {\n return true;\n }\n\n return value instanceof Error;\n}\n\nexport function hasOwnProperty(target: unknown, property: PropertyKey) {\n return Object.hasOwnProperty.call(target, property);\n}\n\nexport function isPropertySet(target: unknown, property: PropertyKey) {\n return (\n hasOwnProperty(target, property) &&\n !isUndefined((target as Record<PropertyKey, unknown>)[property])\n );\n}\n\n/**\n * Remove a trailing forward slash from a string if it exists\n *\n * @param string\n * @returns {*}\n */\nexport function stripTrailingSlash(string: string) {\n if (!isString(string)) {\n return string;\n }\n return string.endsWith('/') ? string.slice(0, -1) : string;\n}\n\nexport const isIOS = Platform.OS === 'ios';\n\nexport const isAndroid = Platform.OS === 'android';\n\nexport function tryJSONParse(string: string) {\n try {\n return string && JSON.parse(string);\n } catch (jsonError) {\n return string;\n }\n}\n\nexport function tryJSONStringify(data: unknown) {\n try {\n return JSON.stringify(data);\n } catch (jsonError) {\n return null;\n }\n}\n"]}
1
+ {"version":3,"names":["Platform","Base64","isString","isUndefined","ReferenceBase","getDataUrlParts","dataUrlString","isBase64","includes","mediaType","base64String","split","undefined","replace","decodeURIComponent","btoa","once","fn","context","onceResult","ranOnce","onceInner","args","apply","isError","value","Object","prototype","toString","call","Error","hasOwnProperty","target","property","isPropertySet","stripTrailingSlash","string","endsWith","slice","isIOS","OS","isAndroid","tryJSONParse","JSON","parse","jsonError","tryJSONStringify","data","stringify"],"sources":["index.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { Platform } from 'react-native';\nimport * as Base64 from './Base64';\nimport { isString, isUndefined } from './validate';\n\nexport * from './id';\nexport * from './path';\nexport * from './promise';\nexport * from './validate';\n\nexport { Base64 };\nexport { ReferenceBase } from './ReferenceBase';\n\nexport function getDataUrlParts(dataUrlString: string) {\n const isBase64 = dataUrlString.includes(';base64');\n let [mediaType, base64String] = dataUrlString.split(',');\n if (!mediaType || !base64String) {\n return { base64String: undefined, mediaType: undefined };\n }\n mediaType = mediaType.replace('data:', '').replace(';base64', '');\n if (base64String && base64String.includes('%')) {\n base64String = decodeURIComponent(base64String);\n }\n if (!isBase64) {\n base64String = Base64.btoa(base64String);\n }\n return { base64String, mediaType };\n}\n\nexport function once<T>(fn: () => void, context: unknown): (this: T, ...args: []) => void {\n let onceResult: unknown;\n let ranOnce = false;\n\n return function onceInner(...args: []) {\n if (!ranOnce) {\n ranOnce = true;\n onceResult = fn.apply(context || this, args);\n }\n\n return onceResult;\n };\n}\n\nexport function isError(value: unknown) {\n if (Object.prototype.toString.call(value) === '[object Error]') {\n return true;\n }\n\n return value instanceof Error;\n}\n\nexport function hasOwnProperty(target: unknown, property: PropertyKey) {\n return Object.hasOwnProperty.call(target, property);\n}\n\nexport function isPropertySet(target: unknown, property: PropertyKey) {\n return (\n hasOwnProperty(target, property) &&\n !isUndefined((target as Record<PropertyKey, unknown>)[property])\n );\n}\n\n/**\n * Remove a trailing forward slash from a string if it exists\n *\n * @param string\n * @returns {*}\n */\nexport function stripTrailingSlash(string: string) {\n if (!isString(string)) {\n return string;\n }\n return string.endsWith('/') ? string.slice(0, -1) : string;\n}\n\nexport const isIOS = Platform.OS === 'ios';\n\nexport const isAndroid = Platform.OS === 'android';\n\nexport function tryJSONParse(string: string) {\n try {\n return string && JSON.parse(string);\n } catch (jsonError) {\n return string;\n }\n}\n\nexport function tryJSONStringify(data: unknown) {\n try {\n return JSON.stringify(data);\n } catch (jsonError) {\n return null;\n }\n}\n"],"mappings":"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"}
@@ -22,99 +22,89 @@ export function pathParent(path) {
22
22
  if (path.length === 0) {
23
23
  return null;
24
24
  }
25
-
26
25
  const index = path.lastIndexOf('/');
27
-
28
26
  if (index <= 0) {
29
27
  return null;
30
28
  }
31
-
32
29
  return path.slice(0, index);
33
30
  }
31
+
34
32
  /**
35
33
  * Joins a parent and a child path
36
34
  */
37
-
38
35
  export function pathChild(path, childPath) {
39
36
  const canonicalChildPath = pathPieces(childPath).join('/');
40
-
41
37
  if (path.length === 0) {
42
38
  return canonicalChildPath;
43
39
  }
44
-
45
40
  return `${path}/${canonicalChildPath}`;
46
41
  }
42
+
47
43
  /**
48
44
  * Returns the last component of a path, e.g /foo/bar.jpeg -> bar.jpeg
49
45
  */
50
-
51
46
  export function pathLastComponent(path) {
52
47
  const index = path.lastIndexOf('/', path.length - 2);
53
-
54
48
  if (index === -1) {
55
49
  return path;
56
50
  }
57
-
58
51
  return path.slice(index + 1);
59
52
  }
53
+
60
54
  /**
61
55
  * Returns all none empty pieces of the path
62
56
  * @param path
63
57
  * @returns {*}
64
58
  */
65
-
66
59
  export function pathPieces(path) {
67
60
  return path.split('/').filter($ => $.length > 0);
68
61
  }
62
+
69
63
  /**
70
64
  * Returns whether a given path is empty
71
65
  * @param path
72
66
  * @returns {boolean}
73
67
  */
74
-
75
68
  export function pathIsEmpty(path) {
76
69
  return !pathPieces(path).length;
77
70
  }
71
+
78
72
  /**
79
73
  * Converts a given path to a URL encoded string
80
74
  * @param path
81
75
  * @returns {string|string}
82
76
  */
83
-
84
77
  export function pathToUrlEncodedString(path) {
85
78
  const pieces = pathPieces(path);
86
79
  let pathString = '';
87
-
88
80
  for (let i = 0; i < pieces.length; i++) {
89
81
  pathString += `/${encodeURIComponent(String(pieces[i]))}`;
90
82
  }
91
-
92
83
  return pathString || '/';
93
- } // eslint-disable-next-line no-control-regex
84
+ }
94
85
 
86
+ // eslint-disable-next-line no-control-regex
95
87
  export const INVALID_PATH_REGEX = /[[\].#$\u0000-\u001F\u007F]/;
88
+
96
89
  /**
97
90
  * Ensures a given path is a valid Firebase path
98
91
  * @param path
99
92
  * @returns {boolean}
100
93
  */
101
-
102
94
  export function isValidPath(path) {
103
95
  return typeof path === 'string' && path.length !== 0 && !INVALID_PATH_REGEX.test(path);
104
96
  }
97
+
105
98
  /**
106
99
  * Converts a file path to a standardized string path
107
100
  * @param path
108
101
  * @returns {*}
109
102
  */
110
-
111
103
  export function toFilePath(path) {
112
104
  let _filePath = path.replace('file://', '');
113
-
114
105
  if (_filePath.includes('%')) {
115
106
  _filePath = decodeURIComponent(_filePath);
116
107
  }
117
-
118
108
  return _filePath;
119
109
  }
120
110
  //# sourceMappingURL=path.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["path.ts"],"names":["pathParent","path","length","index","lastIndexOf","slice","pathChild","childPath","canonicalChildPath","pathPieces","join","pathLastComponent","split","filter","$","pathIsEmpty","pathToUrlEncodedString","pieces","pathString","i","encodeURIComponent","String","INVALID_PATH_REGEX","isValidPath","test","toFilePath","_filePath","replace","includes","decodeURIComponent"],"mappings":"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","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\n/**\n * Returns the next parent of the path e.g. /foo/bar/car -> /foo/bar\n */\nexport function pathParent(path: string) {\n if (path.length === 0) {\n return null;\n }\n\n const index = path.lastIndexOf('/');\n if (index <= 0) {\n return null;\n }\n\n return path.slice(0, index);\n}\n\n/**\n * Joins a parent and a child path\n */\nexport function pathChild(path: string, childPath: string) {\n const canonicalChildPath = pathPieces(childPath).join('/');\n\n if (path.length === 0) {\n return canonicalChildPath;\n }\n\n return `${path}/${canonicalChildPath}`;\n}\n\n/**\n * Returns the last component of a path, e.g /foo/bar.jpeg -> bar.jpeg\n */\nexport function pathLastComponent(path: string) {\n const index = path.lastIndexOf('/', path.length - 2);\n if (index === -1) {\n return path;\n }\n\n return path.slice(index + 1);\n}\n\n/**\n * Returns all none empty pieces of the path\n * @param path\n * @returns {*}\n */\nexport function pathPieces(path: string) {\n return path.split('/').filter($ => $.length > 0);\n}\n\n/**\n * Returns whether a given path is empty\n * @param path\n * @returns {boolean}\n */\nexport function pathIsEmpty(path: string) {\n return !pathPieces(path).length;\n}\n\n/**\n * Converts a given path to a URL encoded string\n * @param path\n * @returns {string|string}\n */\nexport function pathToUrlEncodedString(path: string) {\n const pieces = pathPieces(path);\n let pathString = '';\n for (let i = 0; i < pieces.length; i++) {\n pathString += `/${encodeURIComponent(String(pieces[i]))}`;\n }\n return pathString || '/';\n}\n\n// eslint-disable-next-line no-control-regex\nexport const INVALID_PATH_REGEX = /[[\\].#$\\u0000-\\u001F\\u007F]/;\n\n/**\n * Ensures a given path is a valid Firebase path\n * @param path\n * @returns {boolean}\n */\nexport function isValidPath(path: unknown) {\n return typeof path === 'string' && path.length !== 0 && !INVALID_PATH_REGEX.test(path);\n}\n\n/**\n * Converts a file path to a standardized string path\n * @param path\n * @returns {*}\n */\nexport function toFilePath(path: string) {\n let _filePath = path.replace('file://', '');\n if (_filePath.includes('%')) {\n _filePath = decodeURIComponent(_filePath);\n }\n return _filePath;\n}\n"]}
1
+ {"version":3,"names":["pathParent","path","length","index","lastIndexOf","slice","pathChild","childPath","canonicalChildPath","pathPieces","join","pathLastComponent","split","filter","$","pathIsEmpty","pathToUrlEncodedString","pieces","pathString","i","encodeURIComponent","String","INVALID_PATH_REGEX","isValidPath","test","toFilePath","_filePath","replace","includes","decodeURIComponent"],"sources":["path.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\n/**\n * Returns the next parent of the path e.g. /foo/bar/car -> /foo/bar\n */\nexport function pathParent(path: string) {\n if (path.length === 0) {\n return null;\n }\n\n const index = path.lastIndexOf('/');\n if (index <= 0) {\n return null;\n }\n\n return path.slice(0, index);\n}\n\n/**\n * Joins a parent and a child path\n */\nexport function pathChild(path: string, childPath: string) {\n const canonicalChildPath = pathPieces(childPath).join('/');\n\n if (path.length === 0) {\n return canonicalChildPath;\n }\n\n return `${path}/${canonicalChildPath}`;\n}\n\n/**\n * Returns the last component of a path, e.g /foo/bar.jpeg -> bar.jpeg\n */\nexport function pathLastComponent(path: string) {\n const index = path.lastIndexOf('/', path.length - 2);\n if (index === -1) {\n return path;\n }\n\n return path.slice(index + 1);\n}\n\n/**\n * Returns all none empty pieces of the path\n * @param path\n * @returns {*}\n */\nexport function pathPieces(path: string) {\n return path.split('/').filter($ => $.length > 0);\n}\n\n/**\n * Returns whether a given path is empty\n * @param path\n * @returns {boolean}\n */\nexport function pathIsEmpty(path: string) {\n return !pathPieces(path).length;\n}\n\n/**\n * Converts a given path to a URL encoded string\n * @param path\n * @returns {string|string}\n */\nexport function pathToUrlEncodedString(path: string) {\n const pieces = pathPieces(path);\n let pathString = '';\n for (let i = 0; i < pieces.length; i++) {\n pathString += `/${encodeURIComponent(String(pieces[i]))}`;\n }\n return pathString || '/';\n}\n\n// eslint-disable-next-line no-control-regex\nexport const INVALID_PATH_REGEX = /[[\\].#$\\u0000-\\u001F\\u007F]/;\n\n/**\n * Ensures a given path is a valid Firebase path\n * @param path\n * @returns {boolean}\n */\nexport function isValidPath(path: unknown) {\n return typeof path === 'string' && path.length !== 0 && !INVALID_PATH_REGEX.test(path);\n}\n\n/**\n * Converts a file path to a standardized string path\n * @param path\n * @returns {*}\n */\nexport function toFilePath(path: string) {\n let _filePath = path.replace('file://', '');\n if (_filePath.includes('%')) {\n _filePath = decodeURIComponent(_filePath);\n }\n return _filePath;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,OAAO,SAASA,UAAU,CAACC,IAAY,EAAE;EACvC,IAAIA,IAAI,CAACC,MAAM,KAAK,CAAC,EAAE;IACrB,OAAO,IAAI;EACb;EAEA,MAAMC,KAAK,GAAGF,IAAI,CAACG,WAAW,CAAC,GAAG,CAAC;EACnC,IAAID,KAAK,IAAI,CAAC,EAAE;IACd,OAAO,IAAI;EACb;EAEA,OAAOF,IAAI,CAACI,KAAK,CAAC,CAAC,EAAEF,KAAK,CAAC;AAC7B;;AAEA;AACA;AACA;AACA,OAAO,SAASG,SAAS,CAACL,IAAY,EAAEM,SAAiB,EAAE;EACzD,MAAMC,kBAAkB,GAAGC,UAAU,CAACF,SAAS,CAAC,CAACG,IAAI,CAAC,GAAG,CAAC;EAE1D,IAAIT,IAAI,CAACC,MAAM,KAAK,CAAC,EAAE;IACrB,OAAOM,kBAAkB;EAC3B;EAEA,OAAQ,GAAEP,IAAK,IAAGO,kBAAmB,EAAC;AACxC;;AAEA;AACA;AACA;AACA,OAAO,SAASG,iBAAiB,CAACV,IAAY,EAAE;EAC9C,MAAME,KAAK,GAAGF,IAAI,CAACG,WAAW,CAAC,GAAG,EAAEH,IAAI,CAACC,MAAM,GAAG,CAAC,CAAC;EACpD,IAAIC,KAAK,KAAK,CAAC,CAAC,EAAE;IAChB,OAAOF,IAAI;EACb;EAEA,OAAOA,IAAI,CAACI,KAAK,CAACF,KAAK,GAAG,CAAC,CAAC;AAC9B;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASM,UAAU,CAACR,IAAY,EAAE;EACvC,OAAOA,IAAI,CAACW,KAAK,CAAC,GAAG,CAAC,CAACC,MAAM,CAACC,CAAC,IAAIA,CAAC,CAACZ,MAAM,GAAG,CAAC,CAAC;AAClD;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASa,WAAW,CAACd,IAAY,EAAE;EACxC,OAAO,CAACQ,UAAU,CAACR,IAAI,CAAC,CAACC,MAAM;AACjC;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASc,sBAAsB,CAACf,IAAY,EAAE;EACnD,MAAMgB,MAAM,GAAGR,UAAU,CAACR,IAAI,CAAC;EAC/B,IAAIiB,UAAU,GAAG,EAAE;EACnB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,MAAM,CAACf,MAAM,EAAEiB,CAAC,EAAE,EAAE;IACtCD,UAAU,IAAK,IAAGE,kBAAkB,CAACC,MAAM,CAACJ,MAAM,CAACE,CAAC,CAAC,CAAC,CAAE,EAAC;EAC3D;EACA,OAAOD,UAAU,IAAI,GAAG;AAC1B;;AAEA;AACA,OAAO,MAAMI,kBAAkB,GAAG,6BAA6B;;AAE/D;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAW,CAACtB,IAAa,EAAE;EACzC,OAAO,OAAOA,IAAI,KAAK,QAAQ,IAAIA,IAAI,CAACC,MAAM,KAAK,CAAC,IAAI,CAACoB,kBAAkB,CAACE,IAAI,CAACvB,IAAI,CAAC;AACxF;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASwB,UAAU,CAACxB,IAAY,EAAE;EACvC,IAAIyB,SAAS,GAAGzB,IAAI,CAAC0B,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;EAC3C,IAAID,SAAS,CAACE,QAAQ,CAAC,GAAG,CAAC,EAAE;IAC3BF,SAAS,GAAGG,kBAAkB,CAACH,SAAS,CAAC;EAC3C;EACA,OAAOA,SAAS;AAClB"}
@@ -14,11 +14,12 @@
14
14
  * limitations under the License.
15
15
  *
16
16
  */
17
+
17
18
  import { isFunction } from './validate';
19
+
18
20
  /**
19
21
  *
20
22
  */
21
-
22
23
  export function promiseDefer() {
23
24
  const deferred = {
24
25
  promise: null,
@@ -31,29 +32,26 @@ export function promiseDefer() {
31
32
  });
32
33
  return deferred;
33
34
  }
35
+
34
36
  /**
35
37
  * @param promise
36
38
  * @param callback
37
39
  */
38
-
39
40
  export function promiseWithOptionalCallback(promise, callback) {
40
41
  if (!isFunction(callback)) {
41
42
  return promise;
42
43
  }
43
-
44
44
  return promise.then(result => {
45
45
  if (callback && callback.length === 1) {
46
46
  callback(null);
47
47
  } else if (callback) {
48
48
  callback(null, result);
49
49
  }
50
-
51
50
  return result;
52
51
  }).catch(error => {
53
52
  if (callback) {
54
53
  callback(error);
55
54
  }
56
-
57
55
  return Promise.reject(error);
58
56
  });
59
57
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["promise.ts"],"names":["isFunction","promiseDefer","deferred","promise","resolve","reject","Promise","promiseWithOptionalCallback","callback","then","result","length","catch","error"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,SAASA,UAAT,QAA2B,YAA3B;AAEA;AACA;AACA;;AACA,OAAO,SAASC,YAAT,GAAwB;AAC7B,QAAMC,QAIL,GAAG;AAAEC,IAAAA,OAAO,EAAE,IAAX;AAAiBC,IAAAA,OAAO,EAAE,MAAM,CAAE,CAAlC;AAAoCC,IAAAA,MAAM,EAAE,MAAM,CAAE;AAApD,GAJJ;AAMAH,EAAAA,QAAQ,CAACC,OAAT,GAAmB,IAAIG,OAAJ,CAAY,CAACF,OAAD,EAAUC,MAAV,KAAqB;AAClDH,IAAAA,QAAQ,CAACE,OAAT,GAAmBA,OAAnB;AACAF,IAAAA,QAAQ,CAACG,MAAT,GAAkBA,MAAlB;AACD,GAHkB,CAAnB;AAKA,SAAOH,QAAP;AACD;AAED;AACA;AACA;AACA;;AACA,OAAO,SAASK,2BAAT,CACLJ,OADK,EAELK,QAFK,EAGL;AACA,MAAI,CAACR,UAAU,CAACQ,QAAD,CAAf,EAA2B;AACzB,WAAOL,OAAP;AACD;;AAED,SAAOA,OAAO,CACXM,IADI,CACCC,MAAM,IAAI;AACd,QAAIF,QAAQ,IAAIA,QAAQ,CAACG,MAAT,KAAoB,CAApC,EAAuC;AACrCH,MAAAA,QAAQ,CAAC,IAAD,CAAR;AACD,KAFD,MAEO,IAAIA,QAAJ,EAAc;AACnBA,MAAAA,QAAQ,CAAC,IAAD,EAAOE,MAAP,CAAR;AACD;;AAED,WAAOA,MAAP;AACD,GATI,EAUJE,KAVI,CAUEC,KAAK,IAAI;AACd,QAAIL,QAAJ,EAAc;AACZA,MAAAA,QAAQ,CAACK,KAAD,CAAR;AACD;;AACD,WAAOP,OAAO,CAACD,MAAR,CAAeQ,KAAf,CAAP;AACD,GAfI,CAAP;AAgBD","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { isFunction } from './validate';\n\n/**\n *\n */\nexport function promiseDefer() {\n const deferred: {\n promise: Promise<unknown> | null;\n resolve: (value: unknown) => void;\n reject: (value: unknown) => void;\n } = { promise: null, resolve: () => {}, reject: () => {} };\n\n deferred.promise = new Promise((resolve, reject) => {\n deferred.resolve = resolve;\n deferred.reject = reject;\n });\n\n return deferred;\n}\n\n/**\n * @param promise\n * @param callback\n */\nexport function promiseWithOptionalCallback(\n promise: Promise<unknown>,\n callback: (a: unknown, b?: unknown) => void,\n) {\n if (!isFunction(callback)) {\n return promise;\n }\n\n return promise\n .then(result => {\n if (callback && callback.length === 1) {\n callback(null);\n } else if (callback) {\n callback(null, result);\n }\n\n return result;\n })\n .catch(error => {\n if (callback) {\n callback(error);\n }\n return Promise.reject(error);\n });\n}\n"]}
1
+ {"version":3,"names":["isFunction","promiseDefer","deferred","promise","resolve","reject","Promise","promiseWithOptionalCallback","callback","then","result","length","catch","error"],"sources":["promise.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { isFunction } from './validate';\n\n/**\n *\n */\nexport function promiseDefer() {\n const deferred: {\n promise: Promise<unknown> | null;\n resolve: (value: unknown) => void;\n reject: (value: unknown) => void;\n } = { promise: null, resolve: () => {}, reject: () => {} };\n\n deferred.promise = new Promise((resolve, reject) => {\n deferred.resolve = resolve;\n deferred.reject = reject;\n });\n\n return deferred;\n}\n\n/**\n * @param promise\n * @param callback\n */\nexport function promiseWithOptionalCallback(\n promise: Promise<unknown>,\n callback: (a: unknown, b?: unknown) => void,\n) {\n if (!isFunction(callback)) {\n return promise;\n }\n\n return promise\n .then(result => {\n if (callback && callback.length === 1) {\n callback(null);\n } else if (callback) {\n callback(null, result);\n }\n\n return result;\n })\n .catch(error => {\n if (callback) {\n callback(error);\n }\n return Promise.reject(error);\n });\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,UAAU,QAAQ,YAAY;;AAEvC;AACA;AACA;AACA,OAAO,SAASC,YAAY,GAAG;EAC7B,MAAMC,QAIL,GAAG;IAAEC,OAAO,EAAE,IAAI;IAAEC,OAAO,EAAE,MAAM,CAAC,CAAC;IAAEC,MAAM,EAAE,MAAM,CAAC;EAAE,CAAC;EAE1DH,QAAQ,CAACC,OAAO,GAAG,IAAIG,OAAO,CAAC,CAACF,OAAO,EAAEC,MAAM,KAAK;IAClDH,QAAQ,CAACE,OAAO,GAAGA,OAAO;IAC1BF,QAAQ,CAACG,MAAM,GAAGA,MAAM;EAC1B,CAAC,CAAC;EAEF,OAAOH,QAAQ;AACjB;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASK,2BAA2B,CACzCJ,OAAyB,EACzBK,QAA2C,EAC3C;EACA,IAAI,CAACR,UAAU,CAACQ,QAAQ,CAAC,EAAE;IACzB,OAAOL,OAAO;EAChB;EAEA,OAAOA,OAAO,CACXM,IAAI,CAACC,MAAM,IAAI;IACd,IAAIF,QAAQ,IAAIA,QAAQ,CAACG,MAAM,KAAK,CAAC,EAAE;MACrCH,QAAQ,CAAC,IAAI,CAAC;IAChB,CAAC,MAAM,IAAIA,QAAQ,EAAE;MACnBA,QAAQ,CAAC,IAAI,EAAEE,MAAM,CAAC;IACxB;IAEA,OAAOA,MAAM;EACf,CAAC,CAAC,CACDE,KAAK,CAACC,KAAK,IAAI;IACd,IAAIL,QAAQ,EAAE;MACZA,QAAQ,CAACK,KAAK,CAAC;IACjB;IACA,OAAOP,OAAO,CAACD,MAAM,CAACQ,KAAK,CAAC;EAC9B,CAAC,CAAC;AACN"}
@@ -14,6 +14,7 @@
14
14
  * limitations under the License.
15
15
  *
16
16
  */
17
+
17
18
  import { tryJSONParse, tryJSONStringify } from './index';
18
19
  import { isObject } from './validate';
19
20
  export function serializeType(value) {
@@ -23,7 +24,6 @@ export function serializeType(value) {
23
24
  value: serializeObject(value)
24
25
  };
25
26
  }
26
-
27
27
  return {
28
28
  type: typeof value,
29
29
  value
@@ -32,10 +32,10 @@ export function serializeType(value) {
32
32
  export function serializeObject(object) {
33
33
  if (!isObject(object)) {
34
34
  return object;
35
- } // json stringify then parse it calls toString on Objects / Classes
36
- // that support it i.e new Date() becomes a ISO string.
37
-
35
+ }
38
36
 
37
+ // json stringify then parse it calls toString on Objects / Classes
38
+ // that support it i.e new Date() becomes a ISO string.
39
39
  return tryJSONParse(tryJSONStringify(object) || '');
40
40
  }
41
41
  //# sourceMappingURL=serialize.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["serialize.ts"],"names":["tryJSONParse","tryJSONStringify","isObject","serializeType","value","type","serializeObject","object"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,SAASA,YAAT,EAAuBC,gBAAvB,QAA+C,SAA/C;AACA,SAASC,QAAT,QAAyB,YAAzB;AAEA,OAAO,SAASC,aAAT,CAAuBC,KAAvB,EAAuC;AAC5C,MAAIF,QAAQ,CAACE,KAAD,CAAZ,EAAqB;AACnB,WAAO;AACLC,MAAAA,IAAI,EAAE,QADD;AAELD,MAAAA,KAAK,EAAEE,eAAe,CAACF,KAAD;AAFjB,KAAP;AAID;;AAED,SAAO;AACLC,IAAAA,IAAI,EAAE,OAAOD,KADR;AAELA,IAAAA;AAFK,GAAP;AAID;AAED,OAAO,SAASE,eAAT,CAAyBC,MAAzB,EAA0C;AAC/C,MAAI,CAACL,QAAQ,CAACK,MAAD,CAAb,EAAuB;AACrB,WAAOA,MAAP;AACD,GAH8C,CAK/C;AACA;;;AACA,SAAOP,YAAY,CAACC,gBAAgB,CAACM,MAAD,CAAhB,IAA4B,EAA7B,CAAnB;AACD","sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { tryJSONParse, tryJSONStringify } from './index';\nimport { isObject } from './validate';\n\nexport function serializeType(value: unknown) {\n if (isObject(value)) {\n return {\n type: 'object',\n value: serializeObject(value),\n };\n }\n\n return {\n type: typeof value,\n value,\n };\n}\n\nexport function serializeObject(object: unknown) {\n if (!isObject(object)) {\n return object;\n }\n\n // json stringify then parse it calls toString on Objects / Classes\n // that support it i.e new Date() becomes a ISO string.\n return tryJSONParse(tryJSONStringify(object) || '');\n}\n"]}
1
+ {"version":3,"names":["tryJSONParse","tryJSONStringify","isObject","serializeType","value","type","serializeObject","object"],"sources":["serialize.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-present Invertase Limited & Contributors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this library except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n */\n\nimport { tryJSONParse, tryJSONStringify } from './index';\nimport { isObject } from './validate';\n\nexport function serializeType(value: unknown) {\n if (isObject(value)) {\n return {\n type: 'object',\n value: serializeObject(value),\n };\n }\n\n return {\n type: typeof value,\n value,\n };\n}\n\nexport function serializeObject(object: unknown) {\n if (!isObject(object)) {\n return object;\n }\n\n // json stringify then parse it calls toString on Objects / Classes\n // that support it i.e new Date() becomes a ISO string.\n return tryJSONParse(tryJSONStringify(object) || '');\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,YAAY,EAAEC,gBAAgB,QAAQ,SAAS;AACxD,SAASC,QAAQ,QAAQ,YAAY;AAErC,OAAO,SAASC,aAAa,CAACC,KAAc,EAAE;EAC5C,IAAIF,QAAQ,CAACE,KAAK,CAAC,EAAE;IACnB,OAAO;MACLC,IAAI,EAAE,QAAQ;MACdD,KAAK,EAAEE,eAAe,CAACF,KAAK;IAC9B,CAAC;EACH;EAEA,OAAO;IACLC,IAAI,EAAE,OAAOD,KAAK;IAClBA;EACF,CAAC;AACH;AAEA,OAAO,SAASE,eAAe,CAACC,MAAe,EAAE;EAC/C,IAAI,CAACL,QAAQ,CAACK,MAAM,CAAC,EAAE;IACrB,OAAOA,MAAM;EACf;;EAEA;EACA;EACA,OAAOP,YAAY,CAACC,gBAAgB,CAACM,MAAM,CAAC,IAAI,EAAE,CAAC;AACrD"}