@dereekb/firebase-server 13.6.0 → 13.6.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.
package/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { DBX_FIREBASE_SERVER_NO_AUTH_ERROR_CODE, FIREBASE_AUTH_USER_NOT_FOUND_ERROR, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, FIREBASE_AUTH_PHONE_NUMBER_ALREADY_EXISTS_ERROR, FIREBASE_AUTH_EMAIL_ALREADY_EXISTS_ERROR, FIREBASE_AUTH_INVALID_PHONE_NUMBER_ERROR, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, FirestoreDocumentContextType, streamFromOnSnapshot, makeFirestoreQueryConstraintFunctionsDriver, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, firestoreContextFactory, firestoreField, optionalFirestoreField, setIdAndKeyFromKeyIdRefOnDocumentData, MODEL_FUNCTION_FIREBASE_CRUD_FUNCTION_SPECIFIER_DEFAULT, ScheduledFunctionDevelopmentFunctionTypeEnum, SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER, storageListFilesResultFactory, assertStorageUploadOptionsStringFormat, firebaseStorageContextFactory, inContextFirebaseModelsServiceFactory, useFirebaseModelsService } from '@dereekb/firebase';
2
- import { partialServerError, isServerError, randomNumberFactory, cachedGetter, filterNullAndUndefinedValues, asSet, AUTH_ADMIN_ROLE, AUTH_TOS_SIGNED_ROLE, forEachKeyValue, KeyValueTypleValueFilter, filterUndefinedValues, isThrottled, mapObjectMap, batch, objectToMap, serverError, asArray, containsAllValues, websiteUrlDetails, mergeObjects, cronExpressionRepeatingEveryNMinutes, mapIdentityFunction, slashPathName, toRelativeSlashPathStartType, fixMultiSlashesInSlashPath, SLASH_PATH_SEPARATOR, objectHasNoKeys, pushItemOrArrayItemsIntoArray, makeGetter, asGetter, build } from '@dereekb/util';
2
+ import { partialServerError, isServerError, randomNumberFactory, cachedGetter, filterNullAndUndefinedValues, asSet, AUTH_ADMIN_ROLE, AUTH_TOS_SIGNED_ROLE, forEachKeyValue, KeyValueTypleValueFilter, filterUndefinedValues, isThrottled, mapObjectMap, batch, objectToMap, serverError, asArray, containsAllValues, websiteUrlDetails, mergeObjects, cronExpressionRepeatingEveryNMinutes, mapIdentityFunction, slashPathName, toRelativeSlashPathStartType, fixMultiSlashesInSlashPath, SLASH_PATH_SEPARATOR, objectHasNoKeys, websiteUrlFromPaths, pushItemOrArrayItemsIntoArray, makeGetter, asGetter, build } from '@dereekb/util';
3
3
  import { HttpsError } from 'firebase-functions/https';
4
4
  import { hoursToMs, toISODateString } from '@dereekb/date';
5
5
  import { BaseError } from 'make-error';
@@ -7,6 +7,7 @@ import { SERVER_ENV_TOKEN, resolveEncryptionKey, encryptValue, decryptValue, mer
7
7
  import { from } from 'rxjs';
8
8
  import { FieldValue, FieldPath } from '@google-cloud/firestore';
9
9
  import { Injectable, Optional, Inject, Module, Logger, ForbiddenException, createParamDecorator } from '@nestjs/common';
10
+ import { ModuleRef, NestFactory } from '@nestjs/core';
10
11
  import { asAnalyticsEventData } from '@dereekb/analytics';
11
12
  import { SegmentService, SegmentServiceModule } from '@dereekb/analytics/nestjs';
12
13
  import { https, scheduler } from 'firebase-functions/v2';
@@ -15,11 +16,10 @@ import admin from 'firebase-admin';
15
16
  import { ApiError } from '@google-cloud/storage';
16
17
  import { addMilliseconds, addHours } from 'date-fns';
17
18
  import { isUint8Array, isArrayBuffer } from 'util/types';
18
- import { NestFactory } from '@nestjs/core';
19
19
  import { ExpressAdapter } from '@nestjs/platform-express';
20
20
  import express from 'express';
21
21
 
22
- function _define_property$t(obj, key, value) {
22
+ function _define_property$u(obj, key, value) {
23
23
  if (key in obj) {
24
24
  Object.defineProperty(obj, key, {
25
25
  value: value,
@@ -32,7 +32,7 @@ function _define_property$t(obj, key, value) {
32
32
  }
33
33
  return obj;
34
34
  }
35
- function _object_spread$g(target) {
35
+ function _object_spread$h(target) {
36
36
  for(var i = 1; i < arguments.length; i++){
37
37
  var source = arguments[i] != null ? arguments[i] : {};
38
38
  var ownKeys = Object.keys(source);
@@ -42,12 +42,12 @@ function _object_spread$g(target) {
42
42
  }));
43
43
  }
44
44
  ownKeys.forEach(function(key) {
45
- _define_property$t(target, key, source[key]);
45
+ _define_property$u(target, key, source[key]);
46
46
  });
47
47
  }
48
48
  return target;
49
49
  }
50
- function ownKeys$c(object, enumerableOnly) {
50
+ function ownKeys$d(object, enumerableOnly) {
51
51
  var keys = Object.keys(object);
52
52
  if (Object.getOwnPropertySymbols) {
53
53
  var symbols = Object.getOwnPropertySymbols(object);
@@ -55,12 +55,12 @@ function ownKeys$c(object, enumerableOnly) {
55
55
  }
56
56
  return keys;
57
57
  }
58
- function _object_spread_props$c(target, source) {
58
+ function _object_spread_props$d(target, source) {
59
59
  source = source != null ? source : {};
60
60
  if (Object.getOwnPropertyDescriptors) {
61
61
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
62
62
  } else {
63
- ownKeys$c(Object(source)).forEach(function(key) {
63
+ ownKeys$d(Object(source)).forEach(function(key) {
64
64
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
65
65
  });
66
66
  }
@@ -105,7 +105,7 @@ function _type_of$7(obj) {
105
105
  */ function unauthenticatedError(messageOrError) {
106
106
  var _serverError_message;
107
107
  var serverError = partialServerError(messageOrError);
108
- return new HttpsError('unauthenticated', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'unauthenticated', _object_spread_props$c(_object_spread$g({
108
+ return new HttpsError('unauthenticated', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'unauthenticated', _object_spread_props$d(_object_spread$h({
109
109
  status: 401,
110
110
  code: UNAUTHENTICATED_ERROR_CODE
111
111
  }, serverError), {
@@ -121,7 +121,7 @@ var FORBIDDEN_ERROR_CODE = 'FORBIDDEN';
121
121
  */ function forbiddenError(messageOrError) {
122
122
  var _serverError_message;
123
123
  var serverError = partialServerError(messageOrError);
124
- return new HttpsError('permission-denied', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'forbidden', _object_spread_props$c(_object_spread$g({
124
+ return new HttpsError('permission-denied', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'forbidden', _object_spread_props$d(_object_spread$h({
125
125
  status: 403,
126
126
  code: FORBIDDEN_ERROR_CODE
127
127
  }, serverError), {
@@ -137,7 +137,7 @@ var PERMISSION_DENIED_ERROR_CODE = 'PERMISSION_DENIED';
137
137
  */ function permissionDeniedError(messageOrError) {
138
138
  var _serverError_message;
139
139
  var serverError = partialServerError(messageOrError);
140
- return new HttpsError('permission-denied', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'permission denied', _object_spread_props$c(_object_spread$g({
140
+ return new HttpsError('permission-denied', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'permission denied', _object_spread_props$d(_object_spread$h({
141
141
  status: 403,
142
142
  code: PERMISSION_DENIED_ERROR_CODE
143
143
  }, serverError), {
@@ -153,7 +153,7 @@ var NOT_FOUND_ERROR_CODE = 'NOT_FOUND';
153
153
  */ function notFoundError(messageOrError) {
154
154
  var _serverError_message;
155
155
  var serverError = partialServerError(messageOrError);
156
- return new HttpsError('not-found', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'not found', _object_spread_props$c(_object_spread$g({
156
+ return new HttpsError('not-found', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'not found', _object_spread_props$d(_object_spread$h({
157
157
  status: 404,
158
158
  code: NOT_FOUND_ERROR_CODE
159
159
  }, serverError), {
@@ -169,7 +169,7 @@ var MODEL_NOT_AVAILABLE_ERROR_CODE = 'MODEL_NOT_AVAILABLE';
169
169
  */ function modelNotAvailableError(messageOrError) {
170
170
  var _serverError_message;
171
171
  var serverError = partialServerError(messageOrError);
172
- return new HttpsError('not-found', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'model was not available', _object_spread_props$c(_object_spread$g({
172
+ return new HttpsError('not-found', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'model was not available', _object_spread_props$d(_object_spread$h({
173
173
  status: 404,
174
174
  code: MODEL_NOT_AVAILABLE_ERROR_CODE
175
175
  }, serverError), {
@@ -185,7 +185,7 @@ var BAD_REQUEST_ERROR_CODE = 'BAD_REQUEST';
185
185
  */ function badRequestError(messageOrError) {
186
186
  var _serverError_message;
187
187
  var serverError = partialServerError(messageOrError);
188
- return new HttpsError('invalid-argument', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'bad request', _object_spread_props$c(_object_spread$g({
188
+ return new HttpsError('invalid-argument', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'bad request', _object_spread_props$d(_object_spread$h({
189
189
  status: 400,
190
190
  code: BAD_REQUEST_ERROR_CODE
191
191
  }, serverError), {
@@ -201,7 +201,7 @@ var CONFLICT_ERROR_CODE = 'CONFLICT';
201
201
  */ function preconditionConflictError(messageOrError) {
202
202
  var _serverError_message;
203
203
  var serverError = partialServerError(messageOrError);
204
- return new HttpsError('failed-precondition', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'conflict', _object_spread_props$c(_object_spread$g({
204
+ return new HttpsError('failed-precondition', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'conflict', _object_spread_props$d(_object_spread$h({
205
205
  status: 409,
206
206
  code: CONFLICT_ERROR_CODE
207
207
  }, serverError), {
@@ -217,7 +217,7 @@ var ALREADY_EXISTS_ERROR_CODE = 'ALREADY_EXISTS';
217
217
  */ function alreadyExistsError(messageOrError) {
218
218
  var _serverError_message;
219
219
  var serverError = partialServerError(messageOrError);
220
- return new HttpsError('already-exists', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'already exists', _object_spread_props$c(_object_spread$g({
220
+ return new HttpsError('already-exists', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'already exists', _object_spread_props$d(_object_spread$h({
221
221
  status: 409,
222
222
  code: ALREADY_EXISTS_ERROR_CODE
223
223
  }, serverError), {
@@ -233,7 +233,7 @@ var UNAVAILABLE_ERROR_CODE = 'UNAVAILABLE';
233
233
  */ function unavailableError(messageOrError) {
234
234
  var _serverError_message;
235
235
  var serverError = partialServerError(messageOrError);
236
- return new HttpsError('unavailable', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'service unavailable', _object_spread_props$c(_object_spread$g({
236
+ return new HttpsError('unavailable', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'service unavailable', _object_spread_props$d(_object_spread$h({
237
237
  status: 503,
238
238
  code: UNAVAILABLE_ERROR_CODE
239
239
  }, serverError), {
@@ -249,7 +249,7 @@ var UNAVAILABLE_OR_DEACTIVATED_FUNCTION_ERROR_CODE = 'UNAVAILABLE_OR_DEACTIVATED
249
249
  */ function unavailableOrDeactivatedFunctionError(messageOrError) {
250
250
  var _serverError_message;
251
251
  var serverError = partialServerError(messageOrError);
252
- return new HttpsError('unimplemented', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'the requested function is not available or has been deactivated for use', _object_spread_props$c(_object_spread$g({
252
+ return new HttpsError('unimplemented', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'the requested function is not available or has been deactivated for use', _object_spread_props$d(_object_spread$h({
253
253
  status: 501,
254
254
  code: UNAVAILABLE_OR_DEACTIVATED_FUNCTION_ERROR_CODE
255
255
  }, serverError), {
@@ -265,7 +265,7 @@ var INTERNAL_SERVER_ERROR_CODE = 'INTERNAL_ERROR';
265
265
  */ function internalServerError(messageOrError) {
266
266
  var _serverError_message;
267
267
  var serverError = partialServerError(messageOrError);
268
- return new HttpsError('internal', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'internal error', _object_spread_props$c(_object_spread$g({
268
+ return new HttpsError('internal', (_serverError_message = serverError.message) !== null && _serverError_message !== void 0 ? _serverError_message : 'internal error', _object_spread_props$d(_object_spread$h({
269
269
  status: 500,
270
270
  code: INTERNAL_SERVER_ERROR_CODE
271
271
  }, serverError), {
@@ -644,7 +644,7 @@ function _class_call_check$o(instance, Constructor) {
644
644
  throw new TypeError("Cannot call a class as a function");
645
645
  }
646
646
  }
647
- function _define_property$s(obj, key, value) {
647
+ function _define_property$t(obj, key, value) {
648
648
  if (key in obj) {
649
649
  Object.defineProperty(obj, key, {
650
650
  value: value,
@@ -722,7 +722,7 @@ function _is_native_reflect_construct$5() {
722
722
  var _this;
723
723
  _this = _call_super$5(this, FirebaseServerAuthUserExistsError, [
724
724
  "A user with the provided ".concat(identifierType, " already exists.")
725
- ]), _define_property$s(_this, "code", void 0), _define_property$s(_this, "identifierType", void 0), _define_property$s(_this, "identifierValue", void 0);
725
+ ]), _define_property$t(_this, "code", void 0), _define_property$t(_this, "identifierType", void 0), _define_property$t(_this, "identifierValue", void 0);
726
726
  _this.code = code;
727
727
  _this.identifierType = identifierType;
728
728
  _this.identifierValue = identifierValue;
@@ -751,7 +751,7 @@ function _is_native_reflect_construct$5() {
751
751
  var _this;
752
752
  _this = _call_super$5(this, FirebaseServerAuthUserBadInputError, [
753
753
  message !== null && message !== void 0 ? message : "Invalid input for user creation: ".concat(inputValue)
754
- ]), _define_property$s(_this, "code", void 0), _define_property$s(_this, "inputValue", void 0);
754
+ ]), _define_property$t(_this, "code", void 0), _define_property$t(_this, "inputValue", void 0);
755
755
  _this.code = code;
756
756
  _this.inputValue = inputValue;
757
757
  return _this;
@@ -779,7 +779,7 @@ function _is_native_reflect_construct$5() {
779
779
  var _this;
780
780
  _this = _call_super$5(this, FirebaseServerAuthNewUserSendSetupDetailsThrottleError, [
781
781
  "This user was recently sent details. Try again later."
782
- ]), _define_property$s(_this, "lastSentAt", void 0);
782
+ ]), _define_property$t(_this, "lastSentAt", void 0);
783
783
  _this.lastSentAt = lastSentAt;
784
784
  return _this;
785
785
  }
@@ -868,7 +868,7 @@ function _create_class$d(Constructor, protoProps, staticProps) {
868
868
  if (protoProps) _defineProperties$d(Constructor.prototype, protoProps);
869
869
  return Constructor;
870
870
  }
871
- function _define_property$r(obj, key, value) {
871
+ function _define_property$s(obj, key, value) {
872
872
  if (key in obj) {
873
873
  Object.defineProperty(obj, key, {
874
874
  value: value,
@@ -933,7 +933,7 @@ function _non_iterable_rest$3() {
933
933
  function _non_iterable_spread$7() {
934
934
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
935
935
  }
936
- function _object_spread$f(target) {
936
+ function _object_spread$g(target) {
937
937
  for(var i = 1; i < arguments.length; i++){
938
938
  var source = arguments[i] != null ? arguments[i] : {};
939
939
  var ownKeys = Object.keys(source);
@@ -943,7 +943,7 @@ function _object_spread$f(target) {
943
943
  }));
944
944
  }
945
945
  ownKeys.forEach(function(key) {
946
- _define_property$r(target, key, source[key]);
946
+ _define_property$s(target, key, source[key]);
947
947
  });
948
948
  }
949
949
  return target;
@@ -1120,9 +1120,9 @@ function _ts_generator$b(thisArg, body) {
1120
1120
  function AbstractFirebaseServerAuthUserContext(service, uid) {
1121
1121
  var _this = this;
1122
1122
  _class_call_check$n(this, AbstractFirebaseServerAuthUserContext);
1123
- _define_property$r(this, "_service", void 0);
1124
- _define_property$r(this, "_uid", void 0);
1125
- _define_property$r(this, "_loadRecord", cachedGetter(function() {
1123
+ _define_property$s(this, "_service", void 0);
1124
+ _define_property$s(this, "_uid", void 0);
1125
+ _define_property$s(this, "_loadRecord", cachedGetter(function() {
1126
1126
  return _this._service.auth.getUser(_this._uid);
1127
1127
  }));
1128
1128
  this._service = service;
@@ -1190,7 +1190,7 @@ function _ts_generator$b(thisArg, body) {
1190
1190
  switch(_state.label){
1191
1191
  case 0:
1192
1192
  password = this._generateResetPasswordKey();
1193
- passwordClaimsData = (_obj = {}, _define_property$r(_obj, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, password), _define_property$r(_obj, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, toISODateString(new Date())), _obj);
1193
+ passwordClaimsData = (_obj = {}, _define_property$s(_obj, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, password), _define_property$s(_obj, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, toISODateString(new Date())), _obj);
1194
1194
  // set the claims
1195
1195
  return [
1196
1196
  4,
@@ -1259,7 +1259,7 @@ function _ts_generator$b(thisArg, body) {
1259
1259
  // clear password reset claims
1260
1260
  return [
1261
1261
  4,
1262
- this.updateClaims((_obj = {}, _define_property$r(_obj, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, null), _define_property$r(_obj, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, null), _obj))
1262
+ this.updateClaims((_obj = {}, _define_property$s(_obj, FIREBASE_SERVER_AUTH_CLAIMS_RESET_PASSWORD_KEY, null), _define_property$s(_obj, FIREBASE_SERVER_AUTH_CLAIMS_RESET_LAST_COM_DATE_KEY, null), _obj))
1263
1263
  ];
1264
1264
  case 2:
1265
1265
  _state.sent();
@@ -1367,7 +1367,7 @@ function _ts_generator$b(thisArg, body) {
1367
1367
  return _async_to_generator$b(function() {
1368
1368
  var claims;
1369
1369
  return _ts_generator$b(this, function(_state) {
1370
- claims = _object_spread$f({}, claimsToRetain, this._claimsForRolesChange(_to_consumable_array$7(roles)));
1370
+ claims = _object_spread$g({}, claimsToRetain, this._claimsForRolesChange(_to_consumable_array$7(roles)));
1371
1371
  return [
1372
1372
  2,
1373
1373
  this.setClaims(claims)
@@ -1411,7 +1411,7 @@ function _ts_generator$b(thisArg, body) {
1411
1411
  ];
1412
1412
  case 1:
1413
1413
  currentClaims = _state.sent();
1414
- newClaims = _object_spread$f({}, currentClaims, filterUndefinedValues(claims, false));
1414
+ newClaims = _object_spread$g({}, currentClaims, filterUndefinedValues(claims, false));
1415
1415
  newClaims = filterNullAndUndefinedValues(newClaims);
1416
1416
  return [
1417
1417
  2,
@@ -1452,18 +1452,18 @@ function _ts_generator$b(thisArg, body) {
1452
1452
  function AbstractFirebaseServerAuthContext(service, context) {
1453
1453
  var _this = this;
1454
1454
  _class_call_check$n(this, AbstractFirebaseServerAuthContext);
1455
- _define_property$r(this, "_service", void 0);
1456
- _define_property$r(this, "_context", void 0);
1457
- _define_property$r(this, "_authRoles", cachedGetter(function() {
1455
+ _define_property$s(this, "_service", void 0);
1456
+ _define_property$s(this, "_context", void 0);
1457
+ _define_property$s(this, "_authRoles", cachedGetter(function() {
1458
1458
  return _this.service.readRoles(_this.claims);
1459
1459
  }));
1460
- _define_property$r(this, "_isAdmin", cachedGetter(function() {
1460
+ _define_property$s(this, "_isAdmin", cachedGetter(function() {
1461
1461
  return _this.service.isAdminInRoles(_this._authRoles());
1462
1462
  }));
1463
- _define_property$r(this, "_hasSignedTos", cachedGetter(function() {
1463
+ _define_property$s(this, "_hasSignedTos", cachedGetter(function() {
1464
1464
  return _this.service.hasSignedTosInRoles(_this._authRoles());
1465
1465
  }));
1466
- _define_property$r(this, "_userContext", cachedGetter(function() {
1466
+ _define_property$s(this, "_userContext", cachedGetter(function() {
1467
1467
  return _this.service.userContext(_this.context.auth.uid);
1468
1468
  }));
1469
1469
  this._service = service;
@@ -1570,11 +1570,11 @@ function _ts_generator$b(thisArg, body) {
1570
1570
  */ var AbstractFirebaseServerNewUserService = /*#__PURE__*/ function() {
1571
1571
  function AbstractFirebaseServerNewUserService(authService) {
1572
1572
  _class_call_check$n(this, AbstractFirebaseServerNewUserService);
1573
- _define_property$r(this, "_authService", void 0);
1573
+ _define_property$s(this, "_authService", void 0);
1574
1574
  /**
1575
1575
  * Minimum time between setup content sends. Defaults to {@link DEFAULT_SETUP_COM_THROTTLE_TIME} (1 hour).
1576
1576
  * Override in subclasses to customize the throttle window.
1577
- */ _define_property$r(this, "setupThrottleTime", DEFAULT_SETUP_COM_THROTTLE_TIME);
1577
+ */ _define_property$s(this, "setupThrottleTime", DEFAULT_SETUP_COM_THROTTLE_TIME);
1578
1578
  this._authService = authService;
1579
1579
  }
1580
1580
  _create_class$d(AbstractFirebaseServerNewUserService, [
@@ -1693,7 +1693,7 @@ function _ts_generator$b(thisArg, body) {
1693
1693
  userContext = userContextFromUid(this.authService, userContextOrUid);
1694
1694
  return [
1695
1695
  4,
1696
- userContext.updateClaims(_define_property$r({}, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, password))
1696
+ userContext.updateClaims(_define_property$s({}, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, password))
1697
1697
  ];
1698
1698
  case 1:
1699
1699
  _state.sent();
@@ -1953,10 +1953,10 @@ function _ts_generator$b(thisArg, body) {
1953
1953
  return [
1954
1954
  4,
1955
1955
  this.authService.auth.createUser({
1956
- uid: uid,
1957
- displayName: displayName,
1958
- email: email,
1959
- phoneNumber: phoneNumber,
1956
+ uid: uid !== null && uid !== void 0 ? uid : undefined,
1957
+ displayName: displayName !== null && displayName !== void 0 ? displayName : undefined,
1958
+ email: email !== null && email !== void 0 ? email : undefined,
1959
+ phoneNumber: phoneNumber !== null && phoneNumber !== void 0 ? phoneNumber : undefined,
1960
1960
  password: password
1961
1961
  })
1962
1962
  ];
@@ -2011,7 +2011,7 @@ function _ts_generator$b(thisArg, body) {
2011
2011
  case 0:
2012
2012
  return [
2013
2013
  4,
2014
- userContext.updateClaims((_obj = {}, _define_property$r(_obj, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, null), _define_property$r(_obj, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, null), _obj))
2014
+ userContext.updateClaims((_obj = {}, _define_property$s(_obj, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY, null), _define_property$s(_obj, FIREBASE_SERVER_AUTH_CLAIMS_SETUP_LAST_COM_DATE_KEY, null), _obj))
2015
2015
  ];
2016
2016
  case 1:
2017
2017
  _state.sent();
@@ -2105,7 +2105,7 @@ function _ts_generator$b(thisArg, body) {
2105
2105
  */ var AbstractFirebaseServerAuthService = /*#__PURE__*/ function() {
2106
2106
  function AbstractFirebaseServerAuthService(auth) {
2107
2107
  _class_call_check$n(this, AbstractFirebaseServerAuthService);
2108
- _define_property$r(this, "_auth", void 0);
2108
+ _define_property$s(this, "_auth", void 0);
2109
2109
  this._auth = auth;
2110
2110
  }
2111
2111
  _create_class$d(AbstractFirebaseServerAuthService, [
@@ -2292,7 +2292,7 @@ function _array_like_to_array$9(arr, len) {
2292
2292
  function _array_without_holes$6(arr) {
2293
2293
  if (Array.isArray(arr)) return _array_like_to_array$9(arr);
2294
2294
  }
2295
- function _define_property$q(obj, key, value) {
2295
+ function _define_property$r(obj, key, value) {
2296
2296
  if (key in obj) {
2297
2297
  Object.defineProperty(obj, key, {
2298
2298
  value: value,
@@ -2311,7 +2311,7 @@ function _iterable_to_array$6(iter) {
2311
2311
  function _non_iterable_spread$6() {
2312
2312
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2313
2313
  }
2314
- function _object_spread$e(target) {
2314
+ function _object_spread$f(target) {
2315
2315
  for(var i = 1; i < arguments.length; i++){
2316
2316
  var source = arguments[i] != null ? arguments[i] : {};
2317
2317
  var ownKeys = Object.keys(source);
@@ -2321,7 +2321,7 @@ function _object_spread$e(target) {
2321
2321
  }));
2322
2322
  }
2323
2323
  ownKeys.forEach(function(key) {
2324
- _define_property$q(target, key, source[key]);
2324
+ _define_property$r(target, key, source[key]);
2325
2325
  });
2326
2326
  }
2327
2327
  return target;
@@ -2367,7 +2367,7 @@ function _unsupported_iterable_to_array$9(o, minLen) {
2367
2367
  }
2368
2368
  return result;
2369
2369
  }
2370
- var updateData = _object_spread$e({}, createUpdatesWithArrayFunction(union, FieldValue.arrayUnion), createUpdatesWithArrayFunction(remove, FieldValue.arrayRemove));
2370
+ var updateData = _object_spread$f({}, createUpdatesWithArrayFunction(union, FieldValue.arrayUnion), createUpdatesWithArrayFunction(remove, FieldValue.arrayRemove));
2371
2371
  return updateData;
2372
2372
  }
2373
2373
 
@@ -2389,7 +2389,7 @@ function _create_class$c(Constructor, protoProps, staticProps) {
2389
2389
  if (protoProps) _defineProperties$c(Constructor.prototype, protoProps);
2390
2390
  return Constructor;
2391
2391
  }
2392
- function _define_property$p(obj, key, value) {
2392
+ function _define_property$q(obj, key, value) {
2393
2393
  if (key in obj) {
2394
2394
  Object.defineProperty(obj, key, {
2395
2395
  value: value,
@@ -2412,8 +2412,8 @@ function _define_property$p(obj, key, value) {
2412
2412
  */ var WriteBatchFirestoreDocumentDataAccessor = /*#__PURE__*/ function() {
2413
2413
  function WriteBatchFirestoreDocumentDataAccessor(batch, documentRef) {
2414
2414
  _class_call_check$l(this, WriteBatchFirestoreDocumentDataAccessor);
2415
- _define_property$p(this, "documentRef", void 0);
2416
- _define_property$p(this, "_batch", void 0);
2415
+ _define_property$q(this, "documentRef", void 0);
2416
+ _define_property$q(this, "_batch", void 0);
2417
2417
  this.documentRef = documentRef;
2418
2418
  this._batch = batch;
2419
2419
  }
@@ -2529,9 +2529,9 @@ function _define_property$p(obj, key, value) {
2529
2529
  */ var WriteBatchFirestoreDocumentContext = /*#__PURE__*/ function() {
2530
2530
  function WriteBatchFirestoreDocumentContext(batch) {
2531
2531
  _class_call_check$l(this, WriteBatchFirestoreDocumentContext);
2532
- _define_property$p(this, "_batch", void 0);
2533
- _define_property$p(this, "contextType", FirestoreDocumentContextType.BATCH);
2534
- _define_property$p(this, "accessorFactory", void 0);
2532
+ _define_property$q(this, "_batch", void 0);
2533
+ _define_property$q(this, "contextType", FirestoreDocumentContextType.BATCH);
2534
+ _define_property$q(this, "accessorFactory", void 0);
2535
2535
  this._batch = batch;
2536
2536
  this.accessorFactory = writeBatchAccessorFactory(batch);
2537
2537
  }
@@ -2572,7 +2572,7 @@ function _create_class$b(Constructor, protoProps, staticProps) {
2572
2572
  if (protoProps) _defineProperties$b(Constructor.prototype, protoProps);
2573
2573
  return Constructor;
2574
2574
  }
2575
- function _define_property$o(obj, key, value) {
2575
+ function _define_property$p(obj, key, value) {
2576
2576
  if (key in obj) {
2577
2577
  Object.defineProperty(obj, key, {
2578
2578
  value: value,
@@ -2594,7 +2594,7 @@ function _define_property$o(obj, key, value) {
2594
2594
  */ var DefaultFirestoreDocumentDataAccessor = /*#__PURE__*/ function() {
2595
2595
  function DefaultFirestoreDocumentDataAccessor(documentRef) {
2596
2596
  _class_call_check$k(this, DefaultFirestoreDocumentDataAccessor);
2597
- _define_property$o(this, "_documentRef", void 0);
2597
+ _define_property$p(this, "_documentRef", void 0);
2598
2598
  this._documentRef = documentRef;
2599
2599
  }
2600
2600
  _create_class$b(DefaultFirestoreDocumentDataAccessor, [
@@ -2722,7 +2722,7 @@ function _create_class$a(Constructor, protoProps, staticProps) {
2722
2722
  if (protoProps) _defineProperties$a(Constructor.prototype, protoProps);
2723
2723
  return Constructor;
2724
2724
  }
2725
- function _define_property$n(obj, key, value) {
2725
+ function _define_property$o(obj, key, value) {
2726
2726
  if (key in obj) {
2727
2727
  Object.defineProperty(obj, key, {
2728
2728
  value: value,
@@ -2745,8 +2745,8 @@ function _define_property$n(obj, key, value) {
2745
2745
  */ var TransactionFirestoreDocumentDataAccessor = /*#__PURE__*/ function() {
2746
2746
  function TransactionFirestoreDocumentDataAccessor(transaction, documentRef) {
2747
2747
  _class_call_check$j(this, TransactionFirestoreDocumentDataAccessor);
2748
- _define_property$n(this, "_transaction", void 0);
2749
- _define_property$n(this, "_documentRef", void 0);
2748
+ _define_property$o(this, "_transaction", void 0);
2749
+ _define_property$o(this, "_documentRef", void 0);
2750
2750
  this._transaction = transaction;
2751
2751
  this._documentRef = documentRef;
2752
2752
  }
@@ -2869,9 +2869,9 @@ function _define_property$n(obj, key, value) {
2869
2869
  */ var TransactionFirestoreDocumentContext = /*#__PURE__*/ function() {
2870
2870
  function TransactionFirestoreDocumentContext(transaction) {
2871
2871
  _class_call_check$j(this, TransactionFirestoreDocumentContext);
2872
- _define_property$n(this, "_transaction", void 0);
2873
- _define_property$n(this, "contextType", FirestoreDocumentContextType.TRANSACTION);
2874
- _define_property$n(this, "accessorFactory", void 0);
2872
+ _define_property$o(this, "_transaction", void 0);
2873
+ _define_property$o(this, "contextType", FirestoreDocumentContextType.TRANSACTION);
2874
+ _define_property$o(this, "accessorFactory", void 0);
2875
2875
  this._transaction = transaction;
2876
2876
  this.accessorFactory = transactionAccessorFactory(transaction);
2877
2877
  }
@@ -3195,7 +3195,7 @@ function _array_like_to_array$7(arr, len) {
3195
3195
  function _array_without_holes$5(arr) {
3196
3196
  if (Array.isArray(arr)) return _array_like_to_array$7(arr);
3197
3197
  }
3198
- function _define_property$m(obj, key, value) {
3198
+ function _define_property$n(obj, key, value) {
3199
3199
  if (key in obj) {
3200
3200
  Object.defineProperty(obj, key, {
3201
3201
  value: value,
@@ -3214,7 +3214,7 @@ function _iterable_to_array$5(iter) {
3214
3214
  function _non_iterable_spread$5() {
3215
3215
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
3216
3216
  }
3217
- function _object_spread$d(target) {
3217
+ function _object_spread$e(target) {
3218
3218
  for(var i = 1; i < arguments.length; i++){
3219
3219
  var source = arguments[i] != null ? arguments[i] : {};
3220
3220
  var ownKeys = Object.keys(source);
@@ -3224,12 +3224,12 @@ function _object_spread$d(target) {
3224
3224
  }));
3225
3225
  }
3226
3226
  ownKeys.forEach(function(key) {
3227
- _define_property$m(target, key, source[key]);
3227
+ _define_property$n(target, key, source[key]);
3228
3228
  });
3229
3229
  }
3230
3230
  return target;
3231
3231
  }
3232
- function ownKeys$b(object, enumerableOnly) {
3232
+ function ownKeys$c(object, enumerableOnly) {
3233
3233
  var keys = Object.keys(object);
3234
3234
  if (Object.getOwnPropertySymbols) {
3235
3235
  var symbols = Object.getOwnPropertySymbols(object);
@@ -3237,12 +3237,12 @@ function ownKeys$b(object, enumerableOnly) {
3237
3237
  }
3238
3238
  return keys;
3239
3239
  }
3240
- function _object_spread_props$b(target, source) {
3240
+ function _object_spread_props$c(target, source) {
3241
3241
  source = source != null ? source : {};
3242
3242
  if (Object.getOwnPropertyDescriptors) {
3243
3243
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
3244
3244
  } else {
3245
- ownKeys$b(Object(source)).forEach(function(key) {
3245
+ ownKeys$c(Object(source)).forEach(function(key) {
3246
3246
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
3247
3247
  });
3248
3248
  }
@@ -3265,31 +3265,31 @@ var _obj;
3265
3265
  * Maps each abstract query constraint type to its Google Cloud Firestore implementation.
3266
3266
  *
3267
3267
  * Used by {@link firestoreClientQueryConstraintFunctionsDriver} to build the server-side query driver.
3268
- */ var FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING = (_obj = {}, _define_property$m(_obj, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3268
+ */ var FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING = (_obj = {}, _define_property$n(_obj, FIRESTORE_LIMIT_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3269
3269
  return builder.limit(data.limit);
3270
- }), _define_property$m(_obj, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3270
+ }), _define_property$n(_obj, FIRESTORE_LIMIT_TO_LAST_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3271
3271
  return builder.limitToLast(data.limit);
3272
- }), _define_property$m(_obj, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3272
+ }), _define_property$n(_obj, FIRESTORE_ORDER_BY_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3273
3273
  return builder.orderBy(data.fieldPath, data.directionStr);
3274
- }), _define_property$m(_obj, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3274
+ }), _define_property$n(_obj, FIRESTORE_ORDER_BY_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3275
3275
  return builder.orderBy(FieldPath.documentId(), data.directionStr);
3276
- }), _define_property$m(_obj, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3276
+ }), _define_property$n(_obj, FIRESTORE_WHERE_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3277
3277
  return builder.where(data.fieldPath, data.opStr, data.value);
3278
- }), _define_property$m(_obj, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3278
+ }), _define_property$n(_obj, FIRESTORE_WHERE_DOCUMENT_ID_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3279
3279
  return builder.where(FieldPath.documentId(), data.opStr, data.value);
3280
- }), _define_property$m(_obj, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3280
+ }), _define_property$n(_obj, FIRESTORE_OFFSET_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3281
3281
  return builder.offset(data.offset);
3282
- }), _define_property$m(_obj, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3282
+ }), _define_property$n(_obj, FIRESTORE_START_AT_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3283
3283
  return builder.startAt(data.snapshot);
3284
- }), _define_property$m(_obj, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3284
+ }), _define_property$n(_obj, FIRESTORE_START_AT_VALUE_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3285
3285
  return (_builder = builder).startAt.apply(_builder, _to_consumable_array$5(data.fieldValues));
3286
- }), _define_property$m(_obj, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3286
+ }), _define_property$n(_obj, FIRESTORE_START_AFTER_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3287
3287
  return builder.startAfter(data.snapshot);
3288
- }), _define_property$m(_obj, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3288
+ }), _define_property$n(_obj, FIRESTORE_END_AT_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3289
3289
  return builder.endAt(data.snapshot);
3290
- }), _define_property$m(_obj, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3290
+ }), _define_property$n(_obj, FIRESTORE_END_AT_VALUE_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3291
3291
  return (_builder1 = builder).endAt.apply(_builder1, _to_consumable_array$5(data.fieldValues));
3292
- }), _define_property$m(_obj, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3292
+ }), _define_property$n(_obj, FIRESTORE_END_BEFORE_QUERY_CONSTRAINT_TYPE, function(builder, data) {
3293
3293
  return builder.endBefore(data.snapshot);
3294
3294
  }), _obj);
3295
3295
  /**
@@ -3326,7 +3326,7 @@ var _obj;
3326
3326
  * const queryDriver = googleCloudFirestoreQueryDriver();
3327
3327
  * ```
3328
3328
  */ function googleCloudFirestoreQueryDriver() {
3329
- return _object_spread_props$b(_object_spread$d({}, firestoreClientQueryConstraintFunctionsDriver()), {
3329
+ return _object_spread_props$c(_object_spread$e({}, firestoreClientQueryConstraintFunctionsDriver()), {
3330
3330
  countDocs: function countDocs(query) {
3331
3331
  return query.count().get().then(function(x) {
3332
3332
  return x.data().count;
@@ -3758,6 +3758,18 @@ function _class_call_check$i(instance, Constructor) {
3758
3758
  * Default injection token for the analytics service.
3759
3759
  * Apps provide this in their NestJS module to enable analytics in the onCall dispatch chain.
3760
3760
  */ var ON_CALL_MODEL_ANALYTICS_SERVICE = 'ON_CALL_MODEL_ANALYTICS_SERVICE';
3761
+ /**
3762
+ * Creates a no-op {@link OnCallModelAnalyticsService} that silently discards all events.
3763
+ *
3764
+ * Used as the default fallback by {@link OnCallModelAnalyticsResolver} when no analytics
3765
+ * service is registered.
3766
+ */ function noopOnCallModelAnalyticsService() {
3767
+ return {
3768
+ handleOnCallAnalyticsEvent: function handleOnCallAnalyticsEvent() {
3769
+ return undefined;
3770
+ }
3771
+ };
3772
+ }
3761
3773
  /**
3762
3774
  * @deprecated Use {@link ON_CALL_MODEL_ANALYTICS_SERVICE} instead.
3763
3775
  */ var ON_CALL_MODEL_ANALYTICS_HANDLER = ON_CALL_MODEL_ANALYTICS_SERVICE;
@@ -3820,7 +3832,7 @@ function _create_class$9(Constructor, protoProps, staticProps) {
3820
3832
  if (protoProps) _defineProperties$9(Constructor.prototype, protoProps);
3821
3833
  return Constructor;
3822
3834
  }
3823
- function _define_property$l(obj, key, value) {
3835
+ function _define_property$m(obj, key, value) {
3824
3836
  if (key in obj) {
3825
3837
  Object.defineProperty(obj, key, {
3826
3838
  value: value,
@@ -3902,7 +3914,7 @@ function _is_native_reflect_construct$3() {
3902
3914
  function FirebaseServerAnalyticsService(listener) {
3903
3915
  _class_call_check$g(this, FirebaseServerAnalyticsService);
3904
3916
  var _this;
3905
- _this = _call_super$3(this, FirebaseServerAnalyticsService), _define_property$l(_this, "_listener", void 0);
3917
+ _this = _call_super$3(this, FirebaseServerAnalyticsService), _define_property$m(_this, "_listener", void 0);
3906
3918
  if (listener) {
3907
3919
  _this._listener = listener;
3908
3920
  } else {
@@ -4780,7 +4792,7 @@ function resolveAnalyticsFromApiDetails(apiDetails, call, modelType, specifier)
4780
4792
  }));
4781
4793
  }
4782
4794
 
4783
- function _define_property$k(obj, key, value) {
4795
+ function _define_property$l(obj, key, value) {
4784
4796
  if (key in obj) {
4785
4797
  Object.defineProperty(obj, key, {
4786
4798
  value: value,
@@ -4793,7 +4805,7 @@ function _define_property$k(obj, key, value) {
4793
4805
  }
4794
4806
  return obj;
4795
4807
  }
4796
- function _object_spread$c(target) {
4808
+ function _object_spread$d(target) {
4797
4809
  for(var i = 1; i < arguments.length; i++){
4798
4810
  var source = arguments[i] != null ? arguments[i] : {};
4799
4811
  var ownKeys = Object.keys(source);
@@ -4803,12 +4815,12 @@ function _object_spread$c(target) {
4803
4815
  }));
4804
4816
  }
4805
4817
  ownKeys.forEach(function(key) {
4806
- _define_property$k(target, key, source[key]);
4818
+ _define_property$l(target, key, source[key]);
4807
4819
  });
4808
4820
  }
4809
4821
  return target;
4810
4822
  }
4811
- function ownKeys$a(object, enumerableOnly) {
4823
+ function ownKeys$b(object, enumerableOnly) {
4812
4824
  var keys = Object.keys(object);
4813
4825
  if (Object.getOwnPropertySymbols) {
4814
4826
  var symbols = Object.getOwnPropertySymbols(object);
@@ -4816,12 +4828,12 @@ function ownKeys$a(object, enumerableOnly) {
4816
4828
  }
4817
4829
  return keys;
4818
4830
  }
4819
- function _object_spread_props$a(target, source) {
4831
+ function _object_spread_props$b(target, source) {
4820
4832
  source = source != null ? source : {};
4821
4833
  if (Object.getOwnPropertyDescriptors) {
4822
4834
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
4823
4835
  } else {
4824
- ownKeys$a(Object(source)).forEach(function(key) {
4836
+ ownKeys$b(Object(source)).forEach(function(key) {
4825
4837
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
4826
4838
  });
4827
4839
  }
@@ -4852,22 +4864,26 @@ function _object_spread_props$a(target, source) {
4852
4864
  var _config_preAssert = config.preAssert, preAssert = _config_preAssert === void 0 ? function() {
4853
4865
  return undefined;
4854
4866
  } : _config_preAssert, analyticsToken = config.analyticsToken;
4855
- var resolvedToken = analyticsToken !== null && analyticsToken !== void 0 ? analyticsToken : ON_CALL_MODEL_ANALYTICS_SERVICE;
4856
4867
  // Aggregate _apiDetails from CRUD handlers in the map (built once at setup, not per-request)
4857
4868
  var aggregatedApiDetails = aggregateModelApiDetails(map);
4858
4869
  var modelApiDetails = aggregatedApiDetails !== null && aggregatedApiDetails !== void 0 ? aggregatedApiDetails : {};
4859
- // Resolve analytics service from NestContext per-request.
4870
+ // Resolve analytics service per-request via ModuleRef.get().
4860
4871
  // Not cached because the NestJS application instance may differ across test suites
4861
4872
  // when the onCallModel closure is shared as a module-level singleton.
4873
+ //
4874
+ // Uses ModuleRef.get() instead of app.get() because the NestFactory Proxy wraps
4875
+ // app.get() in ExceptionsZone, which calls process.exit(1) on missing providers
4876
+ // before any try/catch can intercept. ModuleRef.get() is not proxied and throws a
4877
+ // normal catchable exception. Falls back to a no-op service if not registered.
4862
4878
  function getAnalyticsService(request) {
4879
+ var token = analyticsToken !== null && analyticsToken !== void 0 ? analyticsToken : ON_CALL_MODEL_ANALYTICS_SERVICE;
4880
+ var moduleRef = request.nestApplication.get(ModuleRef);
4863
4881
  try {
4864
- var _request_nestApplication;
4865
- return request === null || request === void 0 ? void 0 : (_request_nestApplication = request.nestApplication) === null || _request_nestApplication === void 0 ? void 0 : _request_nestApplication.get(resolvedToken, {
4882
+ return moduleRef.get(token, {
4866
4883
  strict: false
4867
4884
  });
4868
4885
  } catch (unused) {
4869
- // silent — analytics is optional
4870
- return undefined;
4886
+ return noopOnCallModelAnalyticsService();
4871
4887
  }
4872
4888
  }
4873
4889
  var fn = function fn(request) {
@@ -4895,7 +4911,7 @@ function _object_spread_props$a(target, source) {
4895
4911
  // Resolve analytics from _apiDetails tree — callWithAnalytics handles undefined details
4896
4912
  var analyticsService = getAnalyticsService(request);
4897
4913
  var analyticsDetails = resolveAnalyticsFromApiDetails(modelApiDetails, call, modelType, specifier);
4898
- if (analyticsService && analyticsDetails) {
4914
+ if (analyticsDetails) {
4899
4915
  result = callWithAnalytics({
4900
4916
  service: analyticsService,
4901
4917
  details: analyticsDetails,
@@ -4966,7 +4982,7 @@ function _object_spread_props$a(target, source) {
4966
4982
  modelType: modelType,
4967
4983
  specifier: specifier
4968
4984
  });
4969
- return crudFn(_object_spread_props$a(_object_spread$c({}, request), {
4985
+ return crudFn(_object_spread_props$b(_object_spread$d({}, request), {
4970
4986
  specifier: specifier,
4971
4987
  data: request.data.data
4972
4988
  }));
@@ -5243,7 +5259,7 @@ function _create_class$8(Constructor, protoProps, staticProps) {
5243
5259
  if (protoProps) _defineProperties$8(Constructor.prototype, protoProps);
5244
5260
  return Constructor;
5245
5261
  }
5246
- function _define_property$j(obj, key, value) {
5262
+ function _define_property$k(obj, key, value) {
5247
5263
  if (key in obj) {
5248
5264
  Object.defineProperty(obj, key, {
5249
5265
  value: value,
@@ -5275,7 +5291,7 @@ function _inherits$2(subClass, superClass) {
5275
5291
  });
5276
5292
  if (superClass) _set_prototype_of$2(subClass, superClass);
5277
5293
  }
5278
- function _object_spread$b(target) {
5294
+ function _object_spread$c(target) {
5279
5295
  for(var i = 1; i < arguments.length; i++){
5280
5296
  var source = arguments[i] != null ? arguments[i] : {};
5281
5297
  var ownKeys = Object.keys(source);
@@ -5285,12 +5301,12 @@ function _object_spread$b(target) {
5285
5301
  }));
5286
5302
  }
5287
5303
  ownKeys.forEach(function(key) {
5288
- _define_property$j(target, key, source[key]);
5304
+ _define_property$k(target, key, source[key]);
5289
5305
  });
5290
5306
  }
5291
5307
  return target;
5292
5308
  }
5293
- function ownKeys$9(object, enumerableOnly) {
5309
+ function ownKeys$a(object, enumerableOnly) {
5294
5310
  var keys = Object.keys(object);
5295
5311
  if (Object.getOwnPropertySymbols) {
5296
5312
  var symbols = Object.getOwnPropertySymbols(object);
@@ -5298,12 +5314,12 @@ function ownKeys$9(object, enumerableOnly) {
5298
5314
  }
5299
5315
  return keys;
5300
5316
  }
5301
- function _object_spread_props$9(target, source) {
5317
+ function _object_spread_props$a(target, source) {
5302
5318
  source = source != null ? source : {};
5303
5319
  if (Object.getOwnPropertyDescriptors) {
5304
5320
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
5305
5321
  } else {
5306
- ownKeys$9(Object(source)).forEach(function(key) {
5322
+ ownKeys$a(Object(source)).forEach(function(key) {
5307
5323
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
5308
5324
  });
5309
5325
  }
@@ -5348,7 +5364,7 @@ function _is_native_reflect_construct$2() {
5348
5364
  function FirebaseServerAnalyticsSegmentListenerService(_segmentService) {
5349
5365
  _class_call_check$f(this, FirebaseServerAnalyticsSegmentListenerService);
5350
5366
  var _this;
5351
- _this = _call_super$2(this, FirebaseServerAnalyticsSegmentListenerService), _define_property$j(_this, "_segmentService", void 0);
5367
+ _this = _call_super$2(this, FirebaseServerAnalyticsSegmentListenerService), _define_property$k(_this, "_segmentService", void 0);
5352
5368
  _this._segmentService = _segmentService;
5353
5369
  return _this;
5354
5370
  }
@@ -5356,7 +5372,7 @@ function _is_native_reflect_construct$2() {
5356
5372
  {
5357
5373
  key: "handleOnCallAnalyticsEvent",
5358
5374
  value: function handleOnCallAnalyticsEvent(event) {
5359
- var properties = _object_spread$b(_object_spread_props$9(_object_spread$b({}, asAnalyticsEventData(event.properties)), {
5375
+ var properties = _object_spread$c(_object_spread_props$a(_object_spread$c({}, asAnalyticsEventData(event.properties)), {
5360
5376
  call: event.call,
5361
5377
  modelType: event.modelType,
5362
5378
  lifecycle: event.lifecycle
@@ -5473,7 +5489,7 @@ function _class_call_check$d(instance, Constructor) {
5473
5489
  throw new TypeError("Cannot call a class as a function");
5474
5490
  }
5475
5491
  }
5476
- function _define_property$i(obj, key, value) {
5492
+ function _define_property$j(obj, key, value) {
5477
5493
  if (key in obj) {
5478
5494
  Object.defineProperty(obj, key, {
5479
5495
  value: value,
@@ -5486,7 +5502,7 @@ function _define_property$i(obj, key, value) {
5486
5502
  }
5487
5503
  return obj;
5488
5504
  }
5489
- function _object_spread$a(target) {
5505
+ function _object_spread$b(target) {
5490
5506
  for(var i = 1; i < arguments.length; i++){
5491
5507
  var source = arguments[i] != null ? arguments[i] : {};
5492
5508
  var ownKeys = Object.keys(source);
@@ -5496,12 +5512,12 @@ function _object_spread$a(target) {
5496
5512
  }));
5497
5513
  }
5498
5514
  ownKeys.forEach(function(key) {
5499
- _define_property$i(target, key, source[key]);
5515
+ _define_property$j(target, key, source[key]);
5500
5516
  });
5501
5517
  }
5502
5518
  return target;
5503
5519
  }
5504
- function ownKeys$8(object, enumerableOnly) {
5520
+ function ownKeys$9(object, enumerableOnly) {
5505
5521
  var keys = Object.keys(object);
5506
5522
  if (Object.getOwnPropertySymbols) {
5507
5523
  var symbols = Object.getOwnPropertySymbols(object);
@@ -5509,12 +5525,12 @@ function ownKeys$8(object, enumerableOnly) {
5509
5525
  }
5510
5526
  return keys;
5511
5527
  }
5512
- function _object_spread_props$8(target, source) {
5528
+ function _object_spread_props$9(target, source) {
5513
5529
  source = source != null ? source : {};
5514
5530
  if (Object.getOwnPropertyDescriptors) {
5515
5531
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
5516
5532
  } else {
5517
- ownKeys$8(Object(source)).forEach(function(key) {
5533
+ ownKeys$9(Object(source)).forEach(function(key) {
5518
5534
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
5519
5535
  });
5520
5536
  }
@@ -5566,7 +5582,7 @@ FirebaseServerAuthModule = __decorate([
5566
5582
  */ function provideFirebaseServerAuthService(provider) {
5567
5583
  var _provider_inject;
5568
5584
  return [
5569
- _object_spread_props$8(_object_spread$a({}, provider), {
5585
+ _object_spread_props$9(_object_spread$b({}, provider), {
5570
5586
  inject: (_provider_inject = provider.inject) !== null && _provider_inject !== void 0 ? _provider_inject : [
5571
5587
  FIREBASE_AUTH_TOKEN
5572
5588
  ]
@@ -5713,7 +5729,7 @@ FirebaseServerAuthModule = __decorate([
5713
5729
  return claims[FIREBASE_SERVER_AUTH_CLAIMS_SETUP_PASSWORD_KEY] != null;
5714
5730
  }
5715
5731
 
5716
- function _define_property$h(obj, key, value) {
5732
+ function _define_property$i(obj, key, value) {
5717
5733
  if (key in obj) {
5718
5734
  Object.defineProperty(obj, key, {
5719
5735
  value: value,
@@ -5726,7 +5742,7 @@ function _define_property$h(obj, key, value) {
5726
5742
  }
5727
5743
  return obj;
5728
5744
  }
5729
- function _object_spread$9(target) {
5745
+ function _object_spread$a(target) {
5730
5746
  for(var i = 1; i < arguments.length; i++){
5731
5747
  var source = arguments[i] != null ? arguments[i] : {};
5732
5748
  var ownKeys = Object.keys(source);
@@ -5736,12 +5752,12 @@ function _object_spread$9(target) {
5736
5752
  }));
5737
5753
  }
5738
5754
  ownKeys.forEach(function(key) {
5739
- _define_property$h(target, key, source[key]);
5755
+ _define_property$i(target, key, source[key]);
5740
5756
  });
5741
5757
  }
5742
5758
  return target;
5743
5759
  }
5744
- function ownKeys$7(object, enumerableOnly) {
5760
+ function ownKeys$8(object, enumerableOnly) {
5745
5761
  var keys = Object.keys(object);
5746
5762
  if (Object.getOwnPropertySymbols) {
5747
5763
  var symbols = Object.getOwnPropertySymbols(object);
@@ -5749,12 +5765,12 @@ function ownKeys$7(object, enumerableOnly) {
5749
5765
  }
5750
5766
  return keys;
5751
5767
  }
5752
- function _object_spread_props$7(target, source) {
5768
+ function _object_spread_props$8(target, source) {
5753
5769
  source = source != null ? source : {};
5754
5770
  if (Object.getOwnPropertyDescriptors) {
5755
5771
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
5756
5772
  } else {
5757
- ownKeys$7(Object(source)).forEach(function(key) {
5773
+ ownKeys$8(Object(source)).forEach(function(key) {
5758
5774
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
5759
5775
  });
5760
5776
  }
@@ -5790,7 +5806,7 @@ function _object_spread_props$7(target, source) {
5790
5806
  request: request,
5791
5807
  specifier: specifier
5792
5808
  });
5793
- return devFn(_object_spread_props$7(_object_spread$9({}, request), {
5809
+ return devFn(_object_spread_props$8(_object_spread$a({}, request), {
5794
5810
  specifier: specifier,
5795
5811
  data: request.data.data
5796
5812
  }));
@@ -6188,7 +6204,7 @@ function _async_to_generator$6(fn) {
6188
6204
  });
6189
6205
  };
6190
6206
  }
6191
- function _define_property$g(obj, key, value) {
6207
+ function _define_property$h(obj, key, value) {
6192
6208
  if (key in obj) {
6193
6209
  Object.defineProperty(obj, key, {
6194
6210
  value: value,
@@ -6201,7 +6217,7 @@ function _define_property$g(obj, key, value) {
6201
6217
  }
6202
6218
  return obj;
6203
6219
  }
6204
- function _object_spread$8(target) {
6220
+ function _object_spread$9(target) {
6205
6221
  for(var i = 1; i < arguments.length; i++){
6206
6222
  var source = arguments[i] != null ? arguments[i] : {};
6207
6223
  var ownKeys = Object.keys(source);
@@ -6211,7 +6227,7 @@ function _object_spread$8(target) {
6211
6227
  }));
6212
6228
  }
6213
6229
  ownKeys.forEach(function(key) {
6214
- _define_property$g(target, key, source[key]);
6230
+ _define_property$h(target, key, source[key]);
6215
6231
  });
6216
6232
  }
6217
6233
  return target;
@@ -6342,7 +6358,7 @@ function _ts_generator$6(thisArg, body) {
6342
6358
  // eslint-disable-next-line @typescript-eslint/no-deprecated -- RunnableHttpFunction supports legacy gen 1 deployments
6343
6359
  var dev;
6344
6360
  if (enabled) {
6345
- var fullFunctionsMap = _object_spread$8({}, developerFunctionsMap);
6361
+ var fullFunctionsMap = _object_spread$9({}, developerFunctionsMap);
6346
6362
  if (allScheduledFunctions && disableDevelopmentScheduleFunction !== false) {
6347
6363
  fullFunctionsMap[SCHEDULED_FUNCTION_DEV_FUNCTION_SPECIFIER] = makeScheduledFunctionDevelopmentFunction({
6348
6364
  allScheduledFunctions: allScheduledFunctions
@@ -6397,7 +6413,7 @@ function _create_class$7(Constructor, protoProps, staticProps) {
6397
6413
  if (protoProps) _defineProperties$7(Constructor.prototype, protoProps);
6398
6414
  return Constructor;
6399
6415
  }
6400
- function _define_property$f(obj, key, value) {
6416
+ function _define_property$g(obj, key, value) {
6401
6417
  if (key in obj) {
6402
6418
  Object.defineProperty(obj, key, {
6403
6419
  value: value,
@@ -6464,7 +6480,7 @@ function _is_native_reflect_construct$1() {
6464
6480
  function DefaultFirebaseServerEnvService() {
6465
6481
  _class_call_check$c(this, DefaultFirebaseServerEnvService);
6466
6482
  var _this;
6467
- _this = _call_super$1(this, DefaultFirebaseServerEnvService, arguments), _define_property$f(_this, "_appUrlDetails", cachedGetter(function() {
6483
+ _this = _call_super$1(this, DefaultFirebaseServerEnvService, arguments), _define_property$g(_this, "_appUrlDetails", cachedGetter(function() {
6468
6484
  return _this.appUrl ? websiteUrlDetails(_this.appUrl) : undefined;
6469
6485
  }));
6470
6486
  return _this;
@@ -6485,6 +6501,24 @@ function _is_native_reflect_construct$1() {
6485
6501
  get: function get() {
6486
6502
  return this._appUrlDetails();
6487
6503
  }
6504
+ },
6505
+ {
6506
+ key: "appWebhookUrl",
6507
+ get: function get() {
6508
+ return this.env.appWebhookUrl;
6509
+ }
6510
+ },
6511
+ {
6512
+ key: "isApiEnabled",
6513
+ get: function get() {
6514
+ return Boolean(this.env.isApiEnabled);
6515
+ }
6516
+ },
6517
+ {
6518
+ key: "isWebhooksEnabled",
6519
+ get: function get() {
6520
+ return Boolean(this.env.isWebhooksEnabled);
6521
+ }
6488
6522
  }
6489
6523
  ]);
6490
6524
  return DefaultFirebaseServerEnvService;
@@ -6669,7 +6703,7 @@ FirebaseServerFirestoreContextModule = __decorate([
6669
6703
  };
6670
6704
  }
6671
6705
 
6672
- function _define_property$e(obj, key, value) {
6706
+ function _define_property$f(obj, key, value) {
6673
6707
  if (key in obj) {
6674
6708
  Object.defineProperty(obj, key, {
6675
6709
  value: value,
@@ -6682,7 +6716,7 @@ function _define_property$e(obj, key, value) {
6682
6716
  }
6683
6717
  return obj;
6684
6718
  }
6685
- function _object_spread$7(target) {
6719
+ function _object_spread$8(target) {
6686
6720
  for(var i = 1; i < arguments.length; i++){
6687
6721
  var source = arguments[i] != null ? arguments[i] : {};
6688
6722
  var ownKeys = Object.keys(source);
@@ -6692,12 +6726,12 @@ function _object_spread$7(target) {
6692
6726
  }));
6693
6727
  }
6694
6728
  ownKeys.forEach(function(key) {
6695
- _define_property$e(target, key, source[key]);
6729
+ _define_property$f(target, key, source[key]);
6696
6730
  });
6697
6731
  }
6698
6732
  return target;
6699
6733
  }
6700
- function ownKeys$6(object, enumerableOnly) {
6734
+ function ownKeys$7(object, enumerableOnly) {
6701
6735
  var keys = Object.keys(object);
6702
6736
  if (Object.getOwnPropertySymbols) {
6703
6737
  var symbols = Object.getOwnPropertySymbols(object);
@@ -6705,12 +6739,12 @@ function ownKeys$6(object, enumerableOnly) {
6705
6739
  }
6706
6740
  return keys;
6707
6741
  }
6708
- function _object_spread_props$6(target, source) {
6742
+ function _object_spread_props$7(target, source) {
6709
6743
  source = source != null ? source : {};
6710
6744
  if (Object.getOwnPropertyDescriptors) {
6711
6745
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
6712
6746
  } else {
6713
- ownKeys$6(Object(source)).forEach(function(key) {
6747
+ ownKeys$7(Object(source)).forEach(function(key) {
6714
6748
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
6715
6749
  });
6716
6750
  }
@@ -6767,7 +6801,7 @@ function _object_spread_props$6(target, source) {
6767
6801
  var handlerBuilder = function handlerBuilder(handler) {
6768
6802
  var fnHandler = function fnHandler(event) {
6769
6803
  return nestAppPromiseGetter().then(function(nestApplication) {
6770
- return handler(_object_spread_props$6(_object_spread$7({}, event), {
6804
+ return handler(_object_spread_props$7(_object_spread$8({}, event), {
6771
6805
  nestApplication: nestApplication,
6772
6806
  nest: makeNestContext(nestApplication)
6773
6807
  }));
@@ -6780,7 +6814,7 @@ function _object_spread_props$6(target, source) {
6780
6814
  };
6781
6815
  }
6782
6816
 
6783
- function _define_property$d(obj, key, value) {
6817
+ function _define_property$e(obj, key, value) {
6784
6818
  if (key in obj) {
6785
6819
  Object.defineProperty(obj, key, {
6786
6820
  value: value,
@@ -6793,7 +6827,7 @@ function _define_property$d(obj, key, value) {
6793
6827
  }
6794
6828
  return obj;
6795
6829
  }
6796
- function _object_spread$6(target) {
6830
+ function _object_spread$7(target) {
6797
6831
  for(var i = 1; i < arguments.length; i++){
6798
6832
  var source = arguments[i] != null ? arguments[i] : {};
6799
6833
  var ownKeys = Object.keys(source);
@@ -6803,12 +6837,12 @@ function _object_spread$6(target) {
6803
6837
  }));
6804
6838
  }
6805
6839
  ownKeys.forEach(function(key) {
6806
- _define_property$d(target, key, source[key]);
6840
+ _define_property$e(target, key, source[key]);
6807
6841
  });
6808
6842
  }
6809
6843
  return target;
6810
6844
  }
6811
- function ownKeys$5(object, enumerableOnly) {
6845
+ function ownKeys$6(object, enumerableOnly) {
6812
6846
  var keys = Object.keys(object);
6813
6847
  if (Object.getOwnPropertySymbols) {
6814
6848
  var symbols = Object.getOwnPropertySymbols(object);
@@ -6816,12 +6850,12 @@ function ownKeys$5(object, enumerableOnly) {
6816
6850
  }
6817
6851
  return keys;
6818
6852
  }
6819
- function _object_spread_props$5(target, source) {
6853
+ function _object_spread_props$6(target, source) {
6820
6854
  source = source != null ? source : {};
6821
6855
  if (Object.getOwnPropertyDescriptors) {
6822
6856
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
6823
6857
  } else {
6824
- ownKeys$5(Object(source)).forEach(function(key) {
6858
+ ownKeys$6(Object(source)).forEach(function(key) {
6825
6859
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
6826
6860
  });
6827
6861
  }
@@ -6849,9 +6883,9 @@ function _object_spread_props$5(target, source) {
6849
6883
  var defaultOpts = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
6850
6884
  return function(fn, opts) {
6851
6885
  return function(nestAppPromiseGetter) {
6852
- return https.onCall(_object_spread$6({}, defaultOpts, opts), function(request) {
6886
+ return https.onCall(_object_spread$7({}, defaultOpts, opts), function(request) {
6853
6887
  return nestAppPromiseGetter().then(function(nestApplication) {
6854
- return fn(_object_spread_props$5(_object_spread$6({}, request), {
6888
+ return fn(_object_spread_props$6(_object_spread$7({}, request), {
6855
6889
  nestApplication: nestApplication
6856
6890
  }));
6857
6891
  });
@@ -6887,7 +6921,7 @@ function _object_spread_props$5(target, source) {
6887
6921
  };
6888
6922
  }
6889
6923
 
6890
- function _define_property$c(obj, key, value) {
6924
+ function _define_property$d(obj, key, value) {
6891
6925
  if (key in obj) {
6892
6926
  Object.defineProperty(obj, key, {
6893
6927
  value: value,
@@ -6900,7 +6934,7 @@ function _define_property$c(obj, key, value) {
6900
6934
  }
6901
6935
  return obj;
6902
6936
  }
6903
- function _object_spread$5(target) {
6937
+ function _object_spread$6(target) {
6904
6938
  for(var i = 1; i < arguments.length; i++){
6905
6939
  var source = arguments[i] != null ? arguments[i] : {};
6906
6940
  var ownKeys = Object.keys(source);
@@ -6910,12 +6944,12 @@ function _object_spread$5(target) {
6910
6944
  }));
6911
6945
  }
6912
6946
  ownKeys.forEach(function(key) {
6913
- _define_property$c(target, key, source[key]);
6947
+ _define_property$d(target, key, source[key]);
6914
6948
  });
6915
6949
  }
6916
6950
  return target;
6917
6951
  }
6918
- function ownKeys$4(object, enumerableOnly) {
6952
+ function ownKeys$5(object, enumerableOnly) {
6919
6953
  var keys = Object.keys(object);
6920
6954
  if (Object.getOwnPropertySymbols) {
6921
6955
  var symbols = Object.getOwnPropertySymbols(object);
@@ -6923,12 +6957,12 @@ function ownKeys$4(object, enumerableOnly) {
6923
6957
  }
6924
6958
  return keys;
6925
6959
  }
6926
- function _object_spread_props$4(target, source) {
6960
+ function _object_spread_props$5(target, source) {
6927
6961
  source = source != null ? source : {};
6928
6962
  if (Object.getOwnPropertyDescriptors) {
6929
6963
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
6930
6964
  } else {
6931
- ownKeys$4(Object(source)).forEach(function(key) {
6965
+ ownKeys$5(Object(source)).forEach(function(key) {
6932
6966
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
6933
6967
  });
6934
6968
  }
@@ -6961,7 +6995,7 @@ function _object_spread_props$4(target, source) {
6961
6995
  var handlerBuilder = function handlerBuilder(handler) {
6962
6996
  var fnHandler = function fnHandler(event) {
6963
6997
  return nestAppPromiseGetter().then(function(nestApplication) {
6964
- return handler(_object_spread_props$4(_object_spread$5({}, event), {
6998
+ return handler(_object_spread_props$5(_object_spread$6({}, event), {
6965
6999
  nestApplication: nestApplication,
6966
7000
  nest: makeNestContext(nestApplication)
6967
7001
  }));
@@ -7063,7 +7097,7 @@ function _object_spread_props$4(target, source) {
7063
7097
  };
7064
7098
  }
7065
7099
 
7066
- function _define_property$b(obj, key, value) {
7100
+ function _define_property$c(obj, key, value) {
7067
7101
  if (key in obj) {
7068
7102
  Object.defineProperty(obj, key, {
7069
7103
  value: value,
@@ -7076,7 +7110,7 @@ function _define_property$b(obj, key, value) {
7076
7110
  }
7077
7111
  return obj;
7078
7112
  }
7079
- function _object_spread$4(target) {
7113
+ function _object_spread$5(target) {
7080
7114
  for(var i = 1; i < arguments.length; i++){
7081
7115
  var source = arguments[i] != null ? arguments[i] : {};
7082
7116
  var ownKeys = Object.keys(source);
@@ -7086,12 +7120,12 @@ function _object_spread$4(target) {
7086
7120
  }));
7087
7121
  }
7088
7122
  ownKeys.forEach(function(key) {
7089
- _define_property$b(target, key, source[key]);
7123
+ _define_property$c(target, key, source[key]);
7090
7124
  });
7091
7125
  }
7092
7126
  return target;
7093
7127
  }
7094
- function ownKeys$3(object, enumerableOnly) {
7128
+ function ownKeys$4(object, enumerableOnly) {
7095
7129
  var keys = Object.keys(object);
7096
7130
  if (Object.getOwnPropertySymbols) {
7097
7131
  var symbols = Object.getOwnPropertySymbols(object);
@@ -7099,12 +7133,12 @@ function ownKeys$3(object, enumerableOnly) {
7099
7133
  }
7100
7134
  return keys;
7101
7135
  }
7102
- function _object_spread_props$3(target, source) {
7136
+ function _object_spread_props$4(target, source) {
7103
7137
  source = source != null ? source : {};
7104
7138
  if (Object.getOwnPropertyDescriptors) {
7105
7139
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
7106
7140
  } else {
7107
- ownKeys$3(Object(source)).forEach(function(key) {
7141
+ ownKeys$4(Object(source)).forEach(function(key) {
7108
7142
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
7109
7143
  });
7110
7144
  }
@@ -7122,7 +7156,7 @@ function _object_spread_props$3(target, source) {
7122
7156
  var handlerBuilder = function handlerBuilder(handler) {
7123
7157
  var fnHandler = function fnHandler(taskRequest) {
7124
7158
  return nestAppPromiseGetter().then(function(nestApplication) {
7125
- return handler(_object_spread_props$3(_object_spread$4({}, taskRequest), {
7159
+ return handler(_object_spread_props$4(_object_spread$5({}, taskRequest), {
7126
7160
  nestApplication: nestApplication,
7127
7161
  nest: makeNestContext(nestApplication)
7128
7162
  }));
@@ -7169,7 +7203,7 @@ function _class_call_check$a(instance, Constructor) {
7169
7203
  throw new TypeError("Cannot call a class as a function");
7170
7204
  }
7171
7205
  }
7172
- function _define_property$a(obj, key, value) {
7206
+ function _define_property$b(obj, key, value) {
7173
7207
  if (key in obj) {
7174
7208
  Object.defineProperty(obj, key, {
7175
7209
  value: value,
@@ -7182,7 +7216,7 @@ function _define_property$a(obj, key, value) {
7182
7216
  }
7183
7217
  return obj;
7184
7218
  }
7185
- function _object_spread$3(target) {
7219
+ function _object_spread$4(target) {
7186
7220
  for(var i = 1; i < arguments.length; i++){
7187
7221
  var source = arguments[i] != null ? arguments[i] : {};
7188
7222
  var ownKeys = Object.keys(source);
@@ -7192,7 +7226,7 @@ function _object_spread$3(target) {
7192
7226
  }));
7193
7227
  }
7194
7228
  ownKeys.forEach(function(key) {
7195
- _define_property$a(target, key, source[key]);
7229
+ _define_property$b(target, key, source[key]);
7196
7230
  });
7197
7231
  }
7198
7232
  return target;
@@ -7315,7 +7349,7 @@ function _ts_generator$5(thisArg, body) {
7315
7349
  * @param options - Optional configuration for error logging behavior.
7316
7350
  * @returns A fully configured actions context.
7317
7351
  */ function firebaseServerActionsContext(options) {
7318
- return _object_spread$3({}, firebaseServerActionsTransformContext(options));
7352
+ return _object_spread$4({}, firebaseServerActionsTransformContext(options));
7319
7353
  }
7320
7354
  /**
7321
7355
  * Default error logger that writes validation error details to the console.
@@ -7404,7 +7438,7 @@ function _ts_generator$5(thisArg, body) {
7404
7438
  });
7405
7439
  }
7406
7440
 
7407
- function _define_property$9(obj, key, value) {
7441
+ function _define_property$a(obj, key, value) {
7408
7442
  if (key in obj) {
7409
7443
  Object.defineProperty(obj, key, {
7410
7444
  value: value,
@@ -7417,7 +7451,7 @@ function _define_property$9(obj, key, value) {
7417
7451
  }
7418
7452
  return obj;
7419
7453
  }
7420
- function _object_spread$2(target) {
7454
+ function _object_spread$3(target) {
7421
7455
  for(var i = 1; i < arguments.length; i++){
7422
7456
  var source = arguments[i] != null ? arguments[i] : {};
7423
7457
  var ownKeys = Object.keys(source);
@@ -7427,12 +7461,12 @@ function _object_spread$2(target) {
7427
7461
  }));
7428
7462
  }
7429
7463
  ownKeys.forEach(function(key) {
7430
- _define_property$9(target, key, source[key]);
7464
+ _define_property$a(target, key, source[key]);
7431
7465
  });
7432
7466
  }
7433
7467
  return target;
7434
7468
  }
7435
- function ownKeys$2(object, enumerableOnly) {
7469
+ function ownKeys$3(object, enumerableOnly) {
7436
7470
  var keys = Object.keys(object);
7437
7471
  if (Object.getOwnPropertySymbols) {
7438
7472
  var symbols = Object.getOwnPropertySymbols(object);
@@ -7440,12 +7474,12 @@ function ownKeys$2(object, enumerableOnly) {
7440
7474
  }
7441
7475
  return keys;
7442
7476
  }
7443
- function _object_spread_props$2(target, source) {
7477
+ function _object_spread_props$3(target, source) {
7444
7478
  source = source != null ? source : {};
7445
7479
  if (Object.getOwnPropertyDescriptors) {
7446
7480
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
7447
7481
  } else {
7448
- ownKeys$2(Object(source)).forEach(function(key) {
7482
+ ownKeys$3(Object(source)).forEach(function(key) {
7449
7483
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
7450
7484
  });
7451
7485
  }
@@ -7462,7 +7496,7 @@ function _object_spread_props$2(target, source) {
7462
7496
  * @param request - The base request to augment (must include the nestApplication reference).
7463
7497
  * @returns A new object combining the request properties with the nest context.
7464
7498
  */ function injectNestIntoRequest(nest, request) {
7465
- return _object_spread_props$2(_object_spread$2({}, request), {
7499
+ return _object_spread_props$3(_object_spread$3({}, request), {
7466
7500
  nest: nest
7467
7501
  });
7468
7502
  }
@@ -7476,7 +7510,7 @@ function _object_spread_props$2(target, source) {
7476
7510
  * @param request - The base request to augment.
7477
7511
  * @returns A new object combining the request properties with the application context.
7478
7512
  */ function injectNestApplicationContextIntoRequest(nestContext, request) {
7479
- return _object_spread_props$2(_object_spread$2({}, request), {
7513
+ return _object_spread_props$3(_object_spread$3({}, request), {
7480
7514
  nestApplication: nestContext
7481
7515
  });
7482
7516
  }
@@ -7486,7 +7520,7 @@ function _class_call_check$9(instance, Constructor) {
7486
7520
  throw new TypeError("Cannot call a class as a function");
7487
7521
  }
7488
7522
  }
7489
- function _define_property$8(obj, key, value) {
7523
+ function _define_property$9(obj, key, value) {
7490
7524
  if (key in obj) {
7491
7525
  Object.defineProperty(obj, key, {
7492
7526
  value: value,
@@ -7513,10 +7547,10 @@ function _define_property$8(obj, key, value) {
7513
7547
  * The global API route prefix applied to all controllers (e.g., `"api"`).
7514
7548
  *
7515
7549
  * When set, all controller routes are mounted under this prefix unless explicitly excluded.
7516
- */ _define_property$8(this, "globalApiRoutePrefix", void 0);
7550
+ */ _define_property$9(this, "globalApiRoutePrefix", void 0);
7517
7551
  /**
7518
7552
  * Routes excluded from the global prefix, such as webhook endpoints or health checks.
7519
- */ _define_property$8(this, "exclude", void 0);
7553
+ */ _define_property$9(this, "exclude", void 0);
7520
7554
  }
7521
7555
  ;
7522
7556
 
@@ -7567,7 +7601,7 @@ function _create_class$6(Constructor, protoProps, staticProps) {
7567
7601
  if (protoProps) _defineProperties$6(Constructor.prototype, protoProps);
7568
7602
  return Constructor;
7569
7603
  }
7570
- function _define_property$7(obj, key, value) {
7604
+ function _define_property$8(obj, key, value) {
7571
7605
  if (key in obj) {
7572
7606
  Object.defineProperty(obj, key, {
7573
7607
  value: value,
@@ -7693,7 +7727,7 @@ function _ts_generator$4(thisArg, body) {
7693
7727
  * When false (default), paths like `/api/webhook/*` are excluded from AppCheck.
7694
7728
  *
7695
7729
  * Defaults to false, otherwise webhook calls would be rejected.
7696
- */ _define_property$7(this, "protectGlobalWebhooksPath", void 0);
7730
+ */ _define_property$8(this, "protectGlobalWebhooksPath", void 0);
7697
7731
  /**
7698
7732
  * Whether to protect paths outside the global route prefix.
7699
7733
  *
@@ -7701,7 +7735,7 @@ function _ts_generator$4(thisArg, body) {
7701
7735
  * Paths like `/.well-known/*` or `/oidc/*` are not checked.
7702
7736
  *
7703
7737
  * Defaults to false, otherwise non-global paths would be rejected.
7704
- */ _define_property$7(this, "protectNonGlobalPaths", void 0);
7738
+ */ _define_property$8(this, "protectNonGlobalPaths", void 0);
7705
7739
  /**
7706
7740
  * Additional path patterns to protect with AppCheck verification.
7707
7741
  *
@@ -7710,7 +7744,7 @@ function _ts_generator$4(thisArg, body) {
7710
7744
  * is not allowed as a value since it is always protected.
7711
7745
  *
7712
7746
  * Defaults to an empty array.
7713
- */ _define_property$7(this, "protectedPaths", void 0);
7747
+ */ _define_property$8(this, "protectedPaths", void 0);
7714
7748
  };
7715
7749
  // MARK: Middleware
7716
7750
  /**
@@ -7723,7 +7757,7 @@ function _ts_generator$4(thisArg, body) {
7723
7757
  */ var FirebaseAppCheckMiddleware = /*#__PURE__*/ function() {
7724
7758
  function FirebaseAppCheckMiddleware() {
7725
7759
  _class_call_check$8(this, FirebaseAppCheckMiddleware);
7726
- _define_property$7(this, "logger", new Logger('FirebaseAppCheckMiddleware'));
7760
+ _define_property$8(this, "logger", new Logger('FirebaseAppCheckMiddleware'));
7727
7761
  }
7728
7762
  _create_class$6(FirebaseAppCheckMiddleware, [
7729
7763
  {
@@ -7846,7 +7880,7 @@ function _create_class$5(Constructor, protoProps, staticProps) {
7846
7880
  if (protoProps) _defineProperties$5(Constructor.prototype, protoProps);
7847
7881
  return Constructor;
7848
7882
  }
7849
- function _define_property$6(obj, key, value) {
7883
+ function _define_property$7(obj, key, value) {
7850
7884
  if (key in obj) {
7851
7885
  Object.defineProperty(obj, key, {
7852
7886
  value: value,
@@ -7885,9 +7919,9 @@ function _unsupported_iterable_to_array$2(o, minLen) {
7885
7919
  */ var ConfigureFirebaseAppCheckMiddlewareModule = /*#__PURE__*/ function() {
7886
7920
  function ConfigureFirebaseAppCheckMiddlewareModule(globalRoutePrefixConfig, config) {
7887
7921
  _class_call_check$7(this, ConfigureFirebaseAppCheckMiddlewareModule);
7888
- _define_property$6(this, "globalRoutePrefixConfig", void 0);
7889
- _define_property$6(this, "config", void 0);
7890
- _define_property$6(this, "logger", new Logger('ConfigureFirebaseAppCheckMiddlewareModule'));
7922
+ _define_property$7(this, "globalRoutePrefixConfig", void 0);
7923
+ _define_property$7(this, "config", void 0);
7924
+ _define_property$7(this, "logger", new Logger('ConfigureFirebaseAppCheckMiddlewareModule'));
7891
7925
  this.globalRoutePrefixConfig = globalRoutePrefixConfig;
7892
7926
  this.config = config;
7893
7927
  }
@@ -8165,7 +8199,7 @@ function _create_class$3(Constructor, protoProps, staticProps) {
8165
8199
  if (protoProps) _defineProperties$3(Constructor.prototype, protoProps);
8166
8200
  return Constructor;
8167
8201
  }
8168
- function _define_property$5(obj, key, value) {
8202
+ function _define_property$6(obj, key, value) {
8169
8203
  if (key in obj) {
8170
8204
  Object.defineProperty(obj, key, {
8171
8205
  value: value,
@@ -8185,7 +8219,7 @@ function _define_property$5(obj, key, value) {
8185
8219
  */ var ConfigureFirebaseWebhookMiddlewareModule = /*#__PURE__*/ function() {
8186
8220
  function ConfigureFirebaseWebhookMiddlewareModule() {
8187
8221
  _class_call_check$5(this, ConfigureFirebaseWebhookMiddlewareModule);
8188
- _define_property$5(this, "logger", new Logger('ConfigureFirebaseWebhookMiddlewareModule'));
8222
+ _define_property$6(this, "logger", new Logger('ConfigureFirebaseWebhookMiddlewareModule'));
8189
8223
  }
8190
8224
  _create_class$3(ConfigureFirebaseWebhookMiddlewareModule, [
8191
8225
  {
@@ -8231,7 +8265,7 @@ function _async_to_generator$2(fn) {
8231
8265
  });
8232
8266
  };
8233
8267
  }
8234
- function _define_property$4(obj, key, value) {
8268
+ function _define_property$5(obj, key, value) {
8235
8269
  if (key in obj) {
8236
8270
  Object.defineProperty(obj, key, {
8237
8271
  value: value,
@@ -8251,7 +8285,7 @@ function _instanceof(left, right) {
8251
8285
  return left instanceof right;
8252
8286
  }
8253
8287
  }
8254
- function _object_spread$1(target) {
8288
+ function _object_spread$2(target) {
8255
8289
  for(var i = 1; i < arguments.length; i++){
8256
8290
  var source = arguments[i] != null ? arguments[i] : {};
8257
8291
  var ownKeys = Object.keys(source);
@@ -8261,12 +8295,12 @@ function _object_spread$1(target) {
8261
8295
  }));
8262
8296
  }
8263
8297
  ownKeys.forEach(function(key) {
8264
- _define_property$4(target, key, source[key]);
8298
+ _define_property$5(target, key, source[key]);
8265
8299
  });
8266
8300
  }
8267
8301
  return target;
8268
8302
  }
8269
- function ownKeys$1(object, enumerableOnly) {
8303
+ function ownKeys$2(object, enumerableOnly) {
8270
8304
  var keys = Object.keys(object);
8271
8305
  if (Object.getOwnPropertySymbols) {
8272
8306
  var symbols = Object.getOwnPropertySymbols(object);
@@ -8274,12 +8308,12 @@ function ownKeys$1(object, enumerableOnly) {
8274
8308
  }
8275
8309
  return keys;
8276
8310
  }
8277
- function _object_spread_props$1(target, source) {
8311
+ function _object_spread_props$2(target, source) {
8278
8312
  source = source != null ? source : {};
8279
8313
  if (Object.getOwnPropertyDescriptors) {
8280
8314
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
8281
8315
  } else {
8282
- ownKeys$1(Object(source)).forEach(function(key) {
8316
+ ownKeys$2(Object(source)).forEach(function(key) {
8283
8317
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
8284
8318
  });
8285
8319
  }
@@ -8445,14 +8479,14 @@ function _ts_generator$2(thisArg, body) {
8445
8479
  */ function googleCloudStorageAccessorFile(storage, storagePath) {
8446
8480
  var file = googleCloudStorageFileForStorageFilePath(storage, storagePath);
8447
8481
  function makeDownloadOptions(maxDownloadSizeBytes) {
8448
- return _object_spread$1({}, maxDownloadSizeBytes ? {
8482
+ return _object_spread$2({}, maxDownloadSizeBytes ? {
8449
8483
  // end is inclusive
8450
8484
  end: maxDownloadSizeBytes - 1
8451
8485
  } : undefined);
8452
8486
  }
8453
8487
  function _configureMetadata(options) {
8454
8488
  var _options_metadata, _options_metadata1, _options_metadata2, _options_metadata3, _options_metadata4, _options_metadata5;
8455
- var customMetadata = filterUndefinedValues(_object_spread$1({}, (_options_metadata = options.metadata) === null || _options_metadata === void 0 ? void 0 : _options_metadata.customMetadata, options.customMetadata));
8489
+ var customMetadata = filterUndefinedValues(_object_spread$2({}, (_options_metadata = options.metadata) === null || _options_metadata === void 0 ? void 0 : _options_metadata.customMetadata, options.customMetadata));
8456
8490
  return filterUndefinedValues({
8457
8491
  cacheControl: (_options_metadata1 = options.metadata) === null || _options_metadata1 === void 0 ? void 0 : _options_metadata1.cacheControl,
8458
8492
  contentDisposition: (_options_metadata2 = options.metadata) === null || _options_metadata2 === void 0 ? void 0 : _options_metadata2.contentDisposition,
@@ -8468,13 +8502,13 @@ function _ts_generator$2(thisArg, body) {
8468
8502
  var _options_contentType;
8469
8503
  var _options_metadata;
8470
8504
  metadata = _configureMetadata({
8471
- metadata: _object_spread_props$1(_object_spread$1({}, options.metadata), {
8505
+ metadata: _object_spread_props$2(_object_spread$2({}, options.metadata), {
8472
8506
  contentType: (_options_contentType = options.contentType) !== null && _options_contentType !== void 0 ? _options_contentType : (_options_metadata = options.metadata) === null || _options_metadata === void 0 ? void 0 : _options_metadata.contentType
8473
8507
  }),
8474
8508
  customMetadata: options.customMetadata
8475
8509
  });
8476
8510
  }
8477
- return _object_spread$1({
8511
+ return _object_spread$2({
8478
8512
  // non-resumable
8479
8513
  resumable: false
8480
8514
  }, metadata ? {
@@ -8517,7 +8551,7 @@ function _ts_generator$2(thisArg, body) {
8517
8551
  return _ts_generator$2(this, function(_state) {
8518
8552
  switch(_state.label){
8519
8553
  case 0:
8520
- copyOptions = _object_spread$1({}, options);
8554
+ copyOptions = _object_spread$2({}, options);
8521
8555
  return [
8522
8556
  4,
8523
8557
  file.copy(newFile.reference, copyOptions)
@@ -8557,7 +8591,7 @@ function _ts_generator$2(thisArg, body) {
8557
8591
  return _ts_generator$2(this, function(_state) {
8558
8592
  expires = (_ref = input === null || input === void 0 ? void 0 : input.expiresAt) !== null && _ref !== void 0 ? _ref : (input === null || input === void 0 ? void 0 : input.expiresIn) != null ? addMilliseconds(new Date(), input.expiresIn) // use expiresIn if provided
8559
8593
  : addHours(new Date(), 1); // default expiration in 1 hour
8560
- config = _object_spread_props$1(_object_spread$1({}, input), {
8594
+ config = _object_spread_props$2(_object_spread$2({}, input), {
8561
8595
  action: (_ref1 = input === null || input === void 0 ? void 0 : input.action) !== null && _ref1 !== void 0 ? _ref1 : 'read',
8562
8596
  expires: expires,
8563
8597
  expiresIn: undefined,
@@ -8657,7 +8691,7 @@ function _ts_generator$2(thisArg, body) {
8657
8691
  case 0:
8658
8692
  newStoragePath = makeStoragePathForPath(newPath);
8659
8693
  newFile = googleCloudStorageAccessorFile(storage, newStoragePath);
8660
- moveOptions = _object_spread$1({}, options);
8694
+ moveOptions = _object_spread$2({}, options);
8661
8695
  return [
8662
8696
  4,
8663
8697
  file.moveFileAtomic(newFile.reference, moveOptions).catch(function(e) {
@@ -8758,7 +8792,7 @@ var googleCloudStorageListFilesResultFactory = storageListFilesResultFactory({
8758
8792
  },
8759
8793
  next: function next(param, result) {
8760
8794
  var options = param.options, folder = param.folder;
8761
- return folder.list(_object_spread$1({}, options, result.nextQuery));
8795
+ return folder.list(_object_spread$2({}, options, result.nextQuery));
8762
8796
  },
8763
8797
  file: function file(storage, fileResult) {
8764
8798
  return googleCloudStorageAccessorFile(storage, fileResult.storagePath);
@@ -8824,7 +8858,7 @@ var googleCloudStorageListFilesResultFactory = storageListFilesResultFactory({
8824
8858
  },
8825
8859
  list: function list(options) {
8826
8860
  var _ref = options !== null && options !== void 0 ? options : {}, maxResults = _ref.maxResults, pageToken = _ref.pageToken, listAll = _ref.includeNestedResults;
8827
- var listOptions = _object_spread$1({
8861
+ var listOptions = _object_spread$2({
8828
8862
  maxResults: maxResults,
8829
8863
  pageToken: pageToken,
8830
8864
  autoPaginate: false,
@@ -8914,7 +8948,7 @@ function _create_class$2(Constructor, protoProps, staticProps) {
8914
8948
  if (protoProps) _defineProperties$2(Constructor.prototype, protoProps);
8915
8949
  return Constructor;
8916
8950
  }
8917
- function _define_property$3(obj, key, value) {
8951
+ function _define_property$4(obj, key, value) {
8918
8952
  if (key in obj) {
8919
8953
  Object.defineProperty(obj, key, {
8920
8954
  value: value,
@@ -8941,7 +8975,7 @@ function _define_property$3(obj, key, value) {
8941
8975
  */ var FirebaseServerStorageService = /*#__PURE__*/ function() {
8942
8976
  function FirebaseServerStorageService(storageContext) {
8943
8977
  _class_call_check$4(this, FirebaseServerStorageService);
8944
- _define_property$3(this, "_storageContext", void 0);
8978
+ _define_property$4(this, "_storageContext", void 0);
8945
8979
  this._storageContext = storageContext;
8946
8980
  }
8947
8981
  _create_class$2(FirebaseServerStorageService, [
@@ -9007,7 +9041,7 @@ function _class_call_check$3(instance, Constructor) {
9007
9041
  throw new TypeError("Cannot call a class as a function");
9008
9042
  }
9009
9043
  }
9010
- function _define_property$2(obj, key, value) {
9044
+ function _define_property$3(obj, key, value) {
9011
9045
  if (key in obj) {
9012
9046
  Object.defineProperty(obj, key, {
9013
9047
  value: value,
@@ -9026,7 +9060,7 @@ function _iterable_to_array$1(iter) {
9026
9060
  function _non_iterable_spread$1() {
9027
9061
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
9028
9062
  }
9029
- function _object_spread(target) {
9063
+ function _object_spread$1(target) {
9030
9064
  for(var i = 1; i < arguments.length; i++){
9031
9065
  var source = arguments[i] != null ? arguments[i] : {};
9032
9066
  var ownKeys = Object.keys(source);
@@ -9036,12 +9070,12 @@ function _object_spread(target) {
9036
9070
  }));
9037
9071
  }
9038
9072
  ownKeys.forEach(function(key) {
9039
- _define_property$2(target, key, source[key]);
9073
+ _define_property$3(target, key, source[key]);
9040
9074
  });
9041
9075
  }
9042
9076
  return target;
9043
9077
  }
9044
- function ownKeys(object, enumerableOnly) {
9078
+ function ownKeys$1(object, enumerableOnly) {
9045
9079
  var keys = Object.keys(object);
9046
9080
  if (Object.getOwnPropertySymbols) {
9047
9081
  var symbols = Object.getOwnPropertySymbols(object);
@@ -9049,12 +9083,12 @@ function ownKeys(object, enumerableOnly) {
9049
9083
  }
9050
9084
  return keys;
9051
9085
  }
9052
- function _object_spread_props(target, source) {
9086
+ function _object_spread_props$1(target, source) {
9053
9087
  source = source != null ? source : {};
9054
9088
  if (Object.getOwnPropertyDescriptors) {
9055
9089
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
9056
9090
  } else {
9057
- ownKeys(Object(source)).forEach(function(key) {
9091
+ ownKeys$1(Object(source)).forEach(function(key) {
9058
9092
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
9059
9093
  });
9060
9094
  }
@@ -9177,7 +9211,7 @@ FirebaseServerStorageContextModule = __decorate([
9177
9211
  */ function provideFirebaseServerStorageService(provider) {
9178
9212
  var _provider_inject;
9179
9213
  var providers = [
9180
- _object_spread_props(_object_spread({}, provider), {
9214
+ _object_spread_props$1(_object_spread$1({}, provider), {
9181
9215
  inject: (_provider_inject = provider.inject) !== null && _provider_inject !== void 0 ? _provider_inject : [
9182
9216
  FIREBASE_STORAGE_CONTEXT_TOKEN
9183
9217
  ]
@@ -9232,12 +9266,59 @@ function _class_call_check$2(instance, Constructor) {
9232
9266
  throw new TypeError("Cannot call a class as a function");
9233
9267
  }
9234
9268
  }
9269
+ function _define_property$2(obj, key, value) {
9270
+ if (key in obj) {
9271
+ Object.defineProperty(obj, key, {
9272
+ value: value,
9273
+ enumerable: true,
9274
+ configurable: true,
9275
+ writable: true
9276
+ });
9277
+ } else {
9278
+ obj[key] = value;
9279
+ }
9280
+ return obj;
9281
+ }
9235
9282
  function _iterable_to_array(iter) {
9236
9283
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
9237
9284
  }
9238
9285
  function _non_iterable_spread() {
9239
9286
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
9240
9287
  }
9288
+ function _object_spread(target) {
9289
+ for(var i = 1; i < arguments.length; i++){
9290
+ var source = arguments[i] != null ? arguments[i] : {};
9291
+ var ownKeys = Object.keys(source);
9292
+ if (typeof Object.getOwnPropertySymbols === "function") {
9293
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
9294
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
9295
+ }));
9296
+ }
9297
+ ownKeys.forEach(function(key) {
9298
+ _define_property$2(target, key, source[key]);
9299
+ });
9300
+ }
9301
+ return target;
9302
+ }
9303
+ function ownKeys(object, enumerableOnly) {
9304
+ var keys = Object.keys(object);
9305
+ if (Object.getOwnPropertySymbols) {
9306
+ var symbols = Object.getOwnPropertySymbols(object);
9307
+ keys.push.apply(keys, symbols);
9308
+ }
9309
+ return keys;
9310
+ }
9311
+ function _object_spread_props(target, source) {
9312
+ source = source != null ? source : {};
9313
+ if (Object.getOwnPropertyDescriptors) {
9314
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
9315
+ } else {
9316
+ ownKeys(Object(source)).forEach(function(key) {
9317
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
9318
+ });
9319
+ }
9320
+ return target;
9321
+ }
9241
9322
  function _to_consumable_array(arr) {
9242
9323
  return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
9243
9324
  }
@@ -9274,10 +9355,29 @@ var FirebaseNestServerRootModule = function FirebaseNestServerRootModule() {
9274
9355
  if (config.firebaseAppGetter) {
9275
9356
  providers.push(firebaseServerAppTokenProvider(config.firebaseAppGetter));
9276
9357
  }
9358
+ // Global route prefix — resolved early so the env config can derive URLs from it
9359
+ var globalApiRoutePrefixConfig = typeof config.globalApiRoutePrefix === 'string' ? {
9360
+ globalApiRoutePrefix: config.globalApiRoutePrefix
9361
+ } : config.globalApiRoutePrefix;
9277
9362
  // Environment tokens and env service
9278
9363
  if (config.envConfig != null) {
9279
9364
  var _providers;
9280
- (_providers = providers).push.apply(_providers, _to_consumable_array(firebaseServerEnvTokenProviders(config.envConfig)));
9365
+ var _config_envConfig_isApiEnabled, _config_envConfig_isWebhooksEnabled, _config_envConfig_appApiUrl, _config_envConfig_appWebhookUrl;
9366
+ var appUrl = config.envConfig.appUrl;
9367
+ var apiPrefix = globalApiRoutePrefixConfig === null || globalApiRoutePrefixConfig === void 0 ? void 0 : globalApiRoutePrefixConfig.globalApiRoutePrefix;
9368
+ // Respect explicit overrides; only compute defaults when not already set on the config
9369
+ var isApiEnabled = (_config_envConfig_isApiEnabled = config.envConfig.isApiEnabled) !== null && _config_envConfig_isApiEnabled !== void 0 ? _config_envConfig_isApiEnabled : appUrl != null && apiPrefix != null;
9370
+ var isWebhooksEnabled = (_config_envConfig_isWebhooksEnabled = config.envConfig.isWebhooksEnabled) !== null && _config_envConfig_isWebhooksEnabled !== void 0 ? _config_envConfig_isWebhooksEnabled : appUrl != null && Boolean(config.configureWebhooks);
9371
+ var apiPrefixPath = apiPrefix ? apiPrefix.startsWith('/') ? apiPrefix : "/".concat(apiPrefix) : undefined;
9372
+ var appApiUrl = (_config_envConfig_appApiUrl = config.envConfig.appApiUrl) !== null && _config_envConfig_appApiUrl !== void 0 ? _config_envConfig_appApiUrl : isApiEnabled && appUrl && apiPrefixPath ? websiteUrlFromPaths(appUrl, apiPrefixPath) : undefined;
9373
+ var appWebhookUrl = (_config_envConfig_appWebhookUrl = config.envConfig.appWebhookUrl) !== null && _config_envConfig_appWebhookUrl !== void 0 ? _config_envConfig_appWebhookUrl : isWebhooksEnabled && appUrl ? websiteUrlFromPaths(appUrl, DEFAULT_BASE_WEBHOOK_PATH) : undefined;
9374
+ var augmentedEnvConfig = _object_spread_props(_object_spread({}, config.envConfig), {
9375
+ appApiUrl: appApiUrl,
9376
+ appWebhookUrl: appWebhookUrl,
9377
+ isApiEnabled: isApiEnabled,
9378
+ isWebhooksEnabled: isWebhooksEnabled
9379
+ });
9380
+ (_providers = providers).push.apply(_providers, _to_consumable_array(firebaseServerEnvTokenProviders(augmentedEnvConfig)));
9281
9381
  if (config.configureEnvService !== false) {
9282
9382
  providers.push({
9283
9383
  provide: FirebaseServerEnvService,
@@ -9307,10 +9407,6 @@ var FirebaseNestServerRootModule = function FirebaseNestServerRootModule() {
9307
9407
  forceBucket: config.forceStorageBucket
9308
9408
  }));
9309
9409
  }
9310
- // Global route prefix
9311
- var globalApiRoutePrefixConfig = typeof config.globalApiRoutePrefix === 'string' ? {
9312
- globalApiRoutePrefix: config.globalApiRoutePrefix
9313
- } : config.globalApiRoutePrefix;
9314
9410
  providers.push({
9315
9411
  provide: GlobalRoutePrefixConfig,
9316
9412
  useValue: globalApiRoutePrefixConfig !== null && globalApiRoutePrefixConfig !== void 0 ? globalApiRoutePrefixConfig : {}
@@ -9973,4 +10069,4 @@ function _define_property(obj, key, value) {
9973
10069
  }
9974
10070
  ();
9975
10071
 
9976
- export { ALREADY_EXISTS_ERROR_CODE, AbstractFirebaseNestContext, AbstractFirebaseServerActionsContext, AbstractFirebaseServerAuthContext, AbstractFirebaseServerAuthService, AbstractFirebaseServerAuthUserContext, AbstractFirebaseServerNewUserService, AbstractNestContext, AbstractServerFirebaseNestContext, BAD_REQUEST_ERROR_CODE, CONFLICT_ERROR_CODE, ConfigureFirebaseAppCheckMiddlewareModule, ConfigureFirebaseWebhookMiddlewareModule, DEFAULT_FIREBASE_PASSWORD_NUMBER_GENERATOR, DEFAULT_SETUP_COM_THROTTLE_TIME, DefaultFirebaseServerEnvService, FIREBASE_APP_TOKEN, FIREBASE_AUTH_TOKEN, FIREBASE_FIRESTORE_CONTEXT_TOKEN, FIREBASE_FIRESTORE_TOKEN, FIREBASE_SERVER_ENV_TOKEN, FIREBASE_SERVER_VALIDATION_ERROR_CODE, FIREBASE_STORAGE_CONTEXT_FACTORY_CONFIG_TOKEN, FIREBASE_STORAGE_CONTEXT_TOKEN, FIREBASE_STORAGE_TOKEN, FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING, FORBIDDEN_ERROR_CODE, FirebaseAppCheckMiddleware, FirebaseAppCheckMiddlewareConfig, FirebaseNestServerRootModule, FirebaseRawBodyMiddleware, FirebaseServerAnalyticsSegmentListenerService, FirebaseServerAnalyticsSegmentModule, FirebaseServerAnalyticsService, FirebaseServerAnalyticsServiceListener, FirebaseServerAuthModule, FirebaseServerAuthNewUserSendSetupDetailsNoSetupConfigError, FirebaseServerAuthNewUserSendSetupDetailsSendOnceError, FirebaseServerAuthNewUserSendSetupDetailsThrottleError, FirebaseServerAuthService, FirebaseServerAuthUserBadInputError, FirebaseServerAuthUserExistsError, FirebaseServerEnvService, FirebaseServerFirestoreContextModule, FirebaseServerFirestoreModule, FirebaseServerStorageContextModule, FirebaseServerStorageModule, FirebaseServerStorageService, GlobalRoutePrefixConfig, INTERNAL_SERVER_ERROR_CODE, MODEL_NOT_AVAILABLE_ERROR_CODE, NOT_FOUND_ERROR_CODE, NO_RUN_NAME_SPECIFIED_FOR_SCHEDULED_FUNCTION_DEVELOPMENT_FUNCTION_CODE, NoSetupContentFirebaseServerNewUserService, ON_CALL_MODEL_ANALYTICS_HANDLER, ON_CALL_MODEL_ANALYTICS_SERVICE, OnCallModelAnalyticsService, PERMISSION_DENIED_ERROR_CODE, PHONE_NUMBER_ALREADY_EXISTS_ERROR_CODE, SkipAppCheck, UNAUTHENTICATED_ERROR_CODE, UNAVAILABLE_ERROR_CODE, UNAVAILABLE_OR_DEACTIVATED_FUNCTION_ERROR_CODE, UNKNOWN_SCHEDULED_FUNCTION_DEVELOPMENT_FUNCTION_NAME_CODE, UNKNOWN_SCHEDULED_FUNCTION_DEVELOPMENT_FUNCTION_TYPE_CODE, _onCallWithCallTypeFunction, aggregateCrudModelApiDetails, aggregateModelApiDetails, aggregateSpecifierApiDetails, alreadyExistsError, appAnalyticsModuleMetadata, appFirestoreModuleMetadata, assertContextHasAuth, assertDocumentExists, assertHasRolesInRequest, assertHasSignedTosInRequest, assertIsAdminInRequest, assertIsAdminOrTargetUserInRequestData, assertIsContextWithAuthData, assertRequestRequiresAuthForFunction, assertSnapshotData, assertSnapshotDataWithKey, badRequestError, blockingFunctionHandlerWithNestContextFactory, buildNestServerRootModule, callWithAnalytics, cloudEventHandlerWithNestContextFactory, collectionRefForPath, createModelUnknownModelTypeError, defaultFirebaseServerActionsTransformFactoryLogErrorFunction, defaultProvideFirebaseServerStorageServiceSimple, deleteModelUnknownModelTypeError, developmentUnknownSpecifierError, docRefForPath, documentModelNotAvailableError, firebaseAuthTokenFromDecodedIdToken, firebaseServerActionsContext, firebaseServerActionsTransformContext, firebaseServerActionsTransformFactory, firebaseServerAppTokenProvider, firebaseServerAuthModuleMetadata, firebaseServerDevFunctions, firebaseServerEnvTokenProvider, firebaseServerEnvTokenProviders, firebaseServerErrorInfo, firebaseServerErrorInfoCodePair, firebaseServerErrorInfoServerErrorCodePair, firebaseServerErrorInfoServerErrorPair, firebaseServerStorageDefaultBucketIdTokenProvider, firebaseServerStorageModuleMetadata, firebaseServerValidationError, firebaseServerValidationServerError, firestoreClientQueryConstraintFunctionsDriver, firestoreEncryptedField, firestoreServerIncrementUpdateToUpdateData, forbiddenError, getAuthUserOrUndefined, getModelApiDetails, googleCloudFileMetadataToStorageMetadata, googleCloudFirebaseStorageContextFactory, googleCloudFirebaseStorageDrivers, googleCloudFirestoreAccessorDriver, googleCloudFirestoreContextFactory, googleCloudFirestoreDrivers, googleCloudFirestoreQueryDriver, googleCloudStorageAccessorFile, googleCloudStorageAccessorFolder, googleCloudStorageBucketForStorageFilePath, googleCloudStorageFileForStorageFilePath, googleCloudStorageFirebaseStorageAccessorDriver, googleCloudStorageFromFirebaseAdminStorage, googleCloudStorageListFilesResultFactory, handleFirebaseAuthError, handleFirebaseError, hasAuthRolesInRequest, hasNewUserSetupPasswordInRequest, hasSignedTosInRequest, inAuthContext, injectNestApplicationContextIntoRequest, injectNestIntoRequest, internalServerError, isActualSpecifier, isAdminInRequest, isAdminOrTargetUserInRequestData, isContextWithAuthData, isFirebaseError, isFirebaseHttpsError, isOnCallCrudModelApiDetails, isOnCallHandlerApiDetails, isOnCallModelTypeApiDetails, isOnCallSpecifierApiDetails, makeBlockingFunctionWithHandler, makeOnScheduleHandlerWithNestApplicationRequest, makeScheduledFunctionDevelopmentFunction, modelNotAvailableError, nestAppHasDevelopmentSchedulerEnabled, nestAppIsProductionEnvironment, nestFirebaseDoesNotExistError, nestFirebaseForbiddenPermissionError, nestServerInstance, noRunNameSpecifiedForScheduledFunctionDevelopmentFunction, noopFirebaseServerAnalyticsServiceListener, notFoundError, onCallAnalyticsEmitterInstance, onCallCreateModel, onCallDeleteModel, onCallDevelopmentFunction, onCallHandlerWithNestApplicationFactory, onCallHandlerWithNestContextFactory, onCallModel, onCallModelMissingCallTypeError, onCallModelUnknownCallTypeError, onCallReadModel, onCallSpecifierHandler, onCallUpdateModel, onScheduleHandlerWithNestApplicationFactory, onScheduleHandlerWithNestContextFactory, optionalAuthContext, optionalFirestoreEncryptedField, permissionDeniedError, phoneNumberAlreadyExistsError, preconditionConflictError, provideAppFirestoreCollections, provideFirebaseServerAuthService, provideFirebaseServerStorageService, readApiDetails, readModelUnknownModelTypeError, resolveAnalyticsFromApiDetails, setNestContextOnRequest, setNestContextOnScheduleRequest, taskQueueFunctionHandlerWithNestContextFactory, unauthenticatedContextHasNoAuthData, unauthenticatedContextHasNoUidError, unauthenticatedError, unavailableError, unavailableOrDeactivatedFunctionError, unknownModelCrudFunctionSpecifierError, unknownScheduledFunctionDevelopmentFunctionName, unknownScheduledFunctionDevelopmentFunctionType, updateModelUnknownModelTypeError, userContextFromUid, verifyAppCheckInRequest, withApiDetails };
10072
+ export { ALREADY_EXISTS_ERROR_CODE, AbstractFirebaseNestContext, AbstractFirebaseServerActionsContext, AbstractFirebaseServerAuthContext, AbstractFirebaseServerAuthService, AbstractFirebaseServerAuthUserContext, AbstractFirebaseServerNewUserService, AbstractNestContext, AbstractServerFirebaseNestContext, BAD_REQUEST_ERROR_CODE, CONFLICT_ERROR_CODE, ConfigureFirebaseAppCheckMiddlewareModule, ConfigureFirebaseWebhookMiddlewareModule, DEFAULT_FIREBASE_PASSWORD_NUMBER_GENERATOR, DEFAULT_SETUP_COM_THROTTLE_TIME, DefaultFirebaseServerEnvService, FIREBASE_APP_TOKEN, FIREBASE_AUTH_TOKEN, FIREBASE_FIRESTORE_CONTEXT_TOKEN, FIREBASE_FIRESTORE_TOKEN, FIREBASE_SERVER_ENV_TOKEN, FIREBASE_SERVER_VALIDATION_ERROR_CODE, FIREBASE_STORAGE_CONTEXT_FACTORY_CONFIG_TOKEN, FIREBASE_STORAGE_CONTEXT_TOKEN, FIREBASE_STORAGE_TOKEN, FIRESTORE_CLIENT_QUERY_CONSTRAINT_HANDLER_MAPPING, FORBIDDEN_ERROR_CODE, FirebaseAppCheckMiddleware, FirebaseAppCheckMiddlewareConfig, FirebaseNestServerRootModule, FirebaseRawBodyMiddleware, FirebaseServerAnalyticsSegmentListenerService, FirebaseServerAnalyticsSegmentModule, FirebaseServerAnalyticsService, FirebaseServerAnalyticsServiceListener, FirebaseServerAuthModule, FirebaseServerAuthNewUserSendSetupDetailsNoSetupConfigError, FirebaseServerAuthNewUserSendSetupDetailsSendOnceError, FirebaseServerAuthNewUserSendSetupDetailsThrottleError, FirebaseServerAuthService, FirebaseServerAuthUserBadInputError, FirebaseServerAuthUserExistsError, FirebaseServerEnvService, FirebaseServerFirestoreContextModule, FirebaseServerFirestoreModule, FirebaseServerStorageContextModule, FirebaseServerStorageModule, FirebaseServerStorageService, GlobalRoutePrefixConfig, INTERNAL_SERVER_ERROR_CODE, MODEL_NOT_AVAILABLE_ERROR_CODE, NOT_FOUND_ERROR_CODE, NO_RUN_NAME_SPECIFIED_FOR_SCHEDULED_FUNCTION_DEVELOPMENT_FUNCTION_CODE, NoSetupContentFirebaseServerNewUserService, ON_CALL_MODEL_ANALYTICS_HANDLER, ON_CALL_MODEL_ANALYTICS_SERVICE, OnCallModelAnalyticsService, PERMISSION_DENIED_ERROR_CODE, PHONE_NUMBER_ALREADY_EXISTS_ERROR_CODE, SkipAppCheck, UNAUTHENTICATED_ERROR_CODE, UNAVAILABLE_ERROR_CODE, UNAVAILABLE_OR_DEACTIVATED_FUNCTION_ERROR_CODE, UNKNOWN_SCHEDULED_FUNCTION_DEVELOPMENT_FUNCTION_NAME_CODE, UNKNOWN_SCHEDULED_FUNCTION_DEVELOPMENT_FUNCTION_TYPE_CODE, _onCallWithCallTypeFunction, aggregateCrudModelApiDetails, aggregateModelApiDetails, aggregateSpecifierApiDetails, alreadyExistsError, appAnalyticsModuleMetadata, appFirestoreModuleMetadata, assertContextHasAuth, assertDocumentExists, assertHasRolesInRequest, assertHasSignedTosInRequest, assertIsAdminInRequest, assertIsAdminOrTargetUserInRequestData, assertIsContextWithAuthData, assertRequestRequiresAuthForFunction, assertSnapshotData, assertSnapshotDataWithKey, badRequestError, blockingFunctionHandlerWithNestContextFactory, buildNestServerRootModule, callWithAnalytics, cloudEventHandlerWithNestContextFactory, collectionRefForPath, createModelUnknownModelTypeError, defaultFirebaseServerActionsTransformFactoryLogErrorFunction, defaultProvideFirebaseServerStorageServiceSimple, deleteModelUnknownModelTypeError, developmentUnknownSpecifierError, docRefForPath, documentModelNotAvailableError, firebaseAuthTokenFromDecodedIdToken, firebaseServerActionsContext, firebaseServerActionsTransformContext, firebaseServerActionsTransformFactory, firebaseServerAppTokenProvider, firebaseServerAuthModuleMetadata, firebaseServerDevFunctions, firebaseServerEnvTokenProvider, firebaseServerEnvTokenProviders, firebaseServerErrorInfo, firebaseServerErrorInfoCodePair, firebaseServerErrorInfoServerErrorCodePair, firebaseServerErrorInfoServerErrorPair, firebaseServerStorageDefaultBucketIdTokenProvider, firebaseServerStorageModuleMetadata, firebaseServerValidationError, firebaseServerValidationServerError, firestoreClientQueryConstraintFunctionsDriver, firestoreEncryptedField, firestoreServerIncrementUpdateToUpdateData, forbiddenError, getAuthUserOrUndefined, getModelApiDetails, googleCloudFileMetadataToStorageMetadata, googleCloudFirebaseStorageContextFactory, googleCloudFirebaseStorageDrivers, googleCloudFirestoreAccessorDriver, googleCloudFirestoreContextFactory, googleCloudFirestoreDrivers, googleCloudFirestoreQueryDriver, googleCloudStorageAccessorFile, googleCloudStorageAccessorFolder, googleCloudStorageBucketForStorageFilePath, googleCloudStorageFileForStorageFilePath, googleCloudStorageFirebaseStorageAccessorDriver, googleCloudStorageFromFirebaseAdminStorage, googleCloudStorageListFilesResultFactory, handleFirebaseAuthError, handleFirebaseError, hasAuthRolesInRequest, hasNewUserSetupPasswordInRequest, hasSignedTosInRequest, inAuthContext, injectNestApplicationContextIntoRequest, injectNestIntoRequest, internalServerError, isActualSpecifier, isAdminInRequest, isAdminOrTargetUserInRequestData, isContextWithAuthData, isFirebaseError, isFirebaseHttpsError, isOnCallCrudModelApiDetails, isOnCallHandlerApiDetails, isOnCallModelTypeApiDetails, isOnCallSpecifierApiDetails, makeBlockingFunctionWithHandler, makeOnScheduleHandlerWithNestApplicationRequest, makeScheduledFunctionDevelopmentFunction, modelNotAvailableError, nestAppHasDevelopmentSchedulerEnabled, nestAppIsProductionEnvironment, nestFirebaseDoesNotExistError, nestFirebaseForbiddenPermissionError, nestServerInstance, noRunNameSpecifiedForScheduledFunctionDevelopmentFunction, noopFirebaseServerAnalyticsServiceListener, noopOnCallModelAnalyticsService, notFoundError, onCallAnalyticsEmitterInstance, onCallCreateModel, onCallDeleteModel, onCallDevelopmentFunction, onCallHandlerWithNestApplicationFactory, onCallHandlerWithNestContextFactory, onCallModel, onCallModelMissingCallTypeError, onCallModelUnknownCallTypeError, onCallReadModel, onCallSpecifierHandler, onCallUpdateModel, onScheduleHandlerWithNestApplicationFactory, onScheduleHandlerWithNestContextFactory, optionalAuthContext, optionalFirestoreEncryptedField, permissionDeniedError, phoneNumberAlreadyExistsError, preconditionConflictError, provideAppFirestoreCollections, provideFirebaseServerAuthService, provideFirebaseServerStorageService, readApiDetails, readModelUnknownModelTypeError, resolveAnalyticsFromApiDetails, setNestContextOnRequest, setNestContextOnScheduleRequest, taskQueueFunctionHandlerWithNestContextFactory, unauthenticatedContextHasNoAuthData, unauthenticatedContextHasNoUidError, unauthenticatedError, unavailableError, unavailableOrDeactivatedFunctionError, unknownModelCrudFunctionSpecifierError, unknownScheduledFunctionDevelopmentFunctionName, unknownScheduledFunctionDevelopmentFunctionType, updateModelUnknownModelTypeError, userContextFromUid, verifyAppCheckInRequest, withApiDetails };