@firebase/firestore 4.7.8 → 4.7.9

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 (36) hide show
  1. package/dist/firestore/src/global_index.d.ts +9 -2
  2. package/dist/firestore/src/lite-api/database.d.ts +4 -0
  3. package/dist/firestore/src/lite-api/settings.d.ts +4 -0
  4. package/dist/firestore/src/lite-api/vector_value.d.ts +2 -2
  5. package/dist/firestore/test/integration/util/settings.d.ts +1 -0
  6. package/dist/index.cjs.js +108 -98
  7. package/dist/index.cjs.js.map +1 -1
  8. package/dist/index.d.ts +2 -2
  9. package/dist/index.esm2017.js +109 -99
  10. package/dist/index.esm2017.js.map +1 -1
  11. package/dist/index.node.cjs.js +17 -5
  12. package/dist/index.node.cjs.js.map +1 -1
  13. package/dist/index.node.mjs +18 -6
  14. package/dist/index.node.mjs.map +1 -1
  15. package/dist/index.rn.js +44 -34
  16. package/dist/index.rn.js.map +1 -1
  17. package/dist/internal.d.ts +9 -2
  18. package/dist/lite/firestore/src/lite-api/database.d.ts +4 -0
  19. package/dist/lite/firestore/src/lite-api/settings.d.ts +4 -0
  20. package/dist/lite/firestore/src/lite-api/vector_value.d.ts +2 -2
  21. package/dist/lite/firestore/test/integration/util/settings.d.ts +1 -0
  22. package/dist/lite/index.browser.esm2017.js +23 -13
  23. package/dist/lite/index.browser.esm2017.js.map +1 -1
  24. package/dist/lite/index.cjs.js +23 -13
  25. package/dist/lite/index.cjs.js.map +1 -1
  26. package/dist/lite/index.d.ts +2 -2
  27. package/dist/lite/index.node.cjs.js +17 -5
  28. package/dist/lite/index.node.cjs.js.map +1 -1
  29. package/dist/lite/index.node.mjs +18 -6
  30. package/dist/lite/index.node.mjs.map +1 -1
  31. package/dist/lite/index.rn.esm2017.js +43 -33
  32. package/dist/lite/index.rn.esm2017.js.map +1 -1
  33. package/dist/lite/internal.d.ts +9 -2
  34. package/dist/lite/private.d.ts +6 -2
  35. package/dist/private.d.ts +6 -2
  36. package/package.json +6 -6
@@ -2,11 +2,11 @@ import { _getProvider, getApp, _removeServiceInstance, _registerComponent, regis
2
2
  import { Component } from '@firebase/component';
3
3
  import { Logger, LogLevel } from '@firebase/logger';
4
4
  import { inspect } from 'util';
5
- import { FirebaseError, getDefaultEmulatorHostnameAndPort, createMockUserToken, getModularInstance, deepEqual } from '@firebase/util';
5
+ import { FirebaseError, getDefaultEmulatorHostnameAndPort, deepEqual, createMockUserToken, getModularInstance } from '@firebase/util';
6
6
  import { Integer } from '@firebase/webchannel-wrapper/bloom-blob';
7
7
  import { randomBytes as randomBytes$1 } from 'crypto';
8
8
 
9
- const version$1 = "4.7.8";
9
+ const version$1 = "4.7.9";
10
10
 
11
11
  /**
12
12
  * @license
@@ -59,7 +59,7 @@ User.GOOGLE_CREDENTIALS = new User('google-credentials-uid');
59
59
  User.FIRST_PARTY = new User('first-party-uid');
60
60
  User.MOCK_USER = new User('mock-user');
61
61
 
62
- const version = "11.3.1";
62
+ const version = "11.4.0";
63
63
 
64
64
  /**
65
65
  * @license
@@ -5674,6 +5674,7 @@ class Firestore {
5674
5674
  this._persistenceKey = '(lite)';
5675
5675
  this._settings = new FirestoreSettingsImpl({});
5676
5676
  this._settingsFrozen = false;
5677
+ this._emulatorOptions = {};
5677
5678
  // A task that is assigned when the terminate() is invoked and resolved when
5678
5679
  // all components have shut down. Otherwise, Firestore is not terminated,
5679
5680
  // which can mean either the FirestoreClient is in the process of starting,
@@ -5704,6 +5705,7 @@ class Firestore {
5704
5705
  'methods on a Firestore object.');
5705
5706
  }
5706
5707
  this._settings = new FirestoreSettingsImpl(settings);
5708
+ this._emulatorOptions = settings.emulatorOptions || {};
5707
5709
  if (settings.credentials !== undefined) {
5708
5710
  this._authCredentials = makeAuthCredentialsProvider(settings.credentials);
5709
5711
  }
@@ -5711,6 +5713,9 @@ class Firestore {
5711
5713
  _getSettings() {
5712
5714
  return this._settings;
5713
5715
  }
5716
+ _getEmulatorOptions() {
5717
+ return this._emulatorOptions;
5718
+ }
5714
5719
  _freezeSettings() {
5715
5720
  this._settingsFrozen = true;
5716
5721
  return this._settings;
@@ -5800,12 +5805,19 @@ function connectFirestoreEmulator(firestore, host, port, options = {}) {
5800
5805
  var _a;
5801
5806
  firestore = cast(firestore, Firestore);
5802
5807
  const settings = firestore._getSettings();
5808
+ const existingConfig = Object.assign(Object.assign({}, settings), { emulatorOptions: firestore._getEmulatorOptions() });
5803
5809
  const newHostSetting = `${host}:${port}`;
5804
5810
  if (settings.host !== DEFAULT_HOST && settings.host !== newHostSetting) {
5805
5811
  logWarn('Host has been set in both settings() and connectFirestoreEmulator(), emulator host ' +
5806
5812
  'will be used.');
5807
5813
  }
5808
- firestore._setSettings(Object.assign(Object.assign({}, settings), { host: newHostSetting, ssl: false }));
5814
+ const newConfig = Object.assign(Object.assign({}, settings), { host: newHostSetting, ssl: false, emulatorOptions: options });
5815
+ // No-op if the new configuration matches the current configuration. This supports SSR
5816
+ // enviornments which might call `connectFirestoreEmulator` multiple times as a standard practice.
5817
+ if (deepEqual(newConfig, existingConfig)) {
5818
+ return;
5819
+ }
5820
+ firestore._setSettings(newConfig);
5809
5821
  if (options.mockUserToken) {
5810
5822
  let token;
5811
5823
  let user;
@@ -6502,7 +6514,7 @@ function isPrimitiveArrayEqual(left, right) {
6502
6514
  */
6503
6515
  /**
6504
6516
  * Represents a vector type in Firestore documents.
6505
- * Create an instance with {@link FieldValue.vector}.
6517
+ * Create an instance with <code>{@link vector}</code>.
6506
6518
  *
6507
6519
  * @class VectorValue
6508
6520
  */
@@ -6522,7 +6534,7 @@ class VectorValue {
6522
6534
  return this._values.map(n => n);
6523
6535
  }
6524
6536
  /**
6525
- * Returns `true` if the two VectorValue has the same raw number arrays, returns `false` otherwise.
6537
+ * Returns `true` if the two `VectorValue` values have the same raw number arrays, returns `false` otherwise.
6526
6538
  */
6527
6539
  isEqual(other) {
6528
6540
  return isPrimitiveArrayEqual(this._values, other._values);