firebase-tools 11.14.0 → 11.14.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/lib/accountExporter.js +0 -1
- package/lib/accountImporter.js +0 -1
- package/lib/api.js +0 -1
- package/lib/apiv2.js +0 -1
- package/lib/appdistribution/client.js +0 -1
- package/lib/appdistribution/distribution.js +0 -1
- package/lib/appdistribution/options-parser-util.js +0 -1
- package/lib/archiveDirectory.js +0 -1
- package/lib/auth.js +0 -1
- package/lib/bin/firebase.js +3 -4
- package/lib/checkMinRequiredVersion.js +0 -1
- package/lib/checkValidTargetFilters.js +0 -1
- package/lib/command.js +0 -1
- package/lib/commands/appdistribution-distribute.js +0 -1
- package/lib/commands/appdistribution-testers-add.js +0 -1
- package/lib/commands/appdistribution-testers-remove.js +0 -1
- package/lib/commands/apps-android-sha-create.js +0 -1
- package/lib/commands/apps-android-sha-delete.js +0 -1
- package/lib/commands/apps-android-sha-list.js +0 -1
- package/lib/commands/apps-create.js +0 -1
- package/lib/commands/apps-list.js +0 -1
- package/lib/commands/apps-sdkconfig.js +0 -1
- package/lib/commands/auth-export.js +0 -1
- package/lib/commands/auth-import.js +0 -1
- package/lib/commands/crashlytics-mappingfile-generateid.js +0 -1
- package/lib/commands/crashlytics-mappingfile-upload.js +0 -1
- package/lib/commands/crashlytics-symbols-upload.js +0 -1
- package/lib/commands/database-get.js +0 -1
- package/lib/commands/database-instances-create.js +0 -1
- package/lib/commands/database-instances-list.js +0 -1
- package/lib/commands/database-profile.js +0 -1
- package/lib/commands/database-push.js +0 -1
- package/lib/commands/database-remove.js +0 -1
- package/lib/commands/database-rules-canary.js +0 -1
- package/lib/commands/database-rules-get.js +0 -1
- package/lib/commands/database-rules-list.js +0 -1
- package/lib/commands/database-rules-release.js +0 -1
- package/lib/commands/database-rules-stage.js +0 -1
- package/lib/commands/database-set.js +0 -1
- package/lib/commands/database-settings-get.js +0 -1
- package/lib/commands/database-settings-set.js +0 -1
- package/lib/commands/database-update.js +0 -1
- package/lib/commands/deploy.js +3 -4
- package/lib/commands/emulators-exec.js +0 -1
- package/lib/commands/emulators-export.js +0 -1
- package/lib/commands/emulators-start.js +20 -17
- package/lib/commands/experimental-functions-shell.js +0 -1
- package/lib/commands/experiments-describe.js +0 -1
- package/lib/commands/experiments-disable.js +0 -1
- package/lib/commands/experiments-enable.js +0 -1
- package/lib/commands/experiments-list.js +0 -1
- package/lib/commands/ext-configure.js +0 -1
- package/lib/commands/ext-dev-deprecate.js +0 -1
- package/lib/commands/ext-dev-emulators-exec.js +0 -1
- package/lib/commands/ext-dev-emulators-start.js +0 -1
- package/lib/commands/ext-dev-extension-delete.js +0 -1
- package/lib/commands/ext-dev-init.js +0 -1
- package/lib/commands/ext-dev-list.js +0 -1
- package/lib/commands/ext-dev-publish.js +0 -1
- package/lib/commands/ext-dev-register.js +0 -1
- package/lib/commands/ext-dev-undeprecate.js +0 -1
- package/lib/commands/ext-dev-unpublish.js +0 -1
- package/lib/commands/ext-dev-usage.js +0 -1
- package/lib/commands/ext-export.js +0 -1
- package/lib/commands/ext-info.js +0 -1
- package/lib/commands/ext-install.js +0 -1
- package/lib/commands/ext-list.js +0 -1
- package/lib/commands/ext-sources-create.js +0 -1
- package/lib/commands/ext-uninstall.js +0 -1
- package/lib/commands/ext-update.js +0 -1
- package/lib/commands/ext.js +0 -1
- package/lib/commands/firestore-delete.js +0 -1
- package/lib/commands/firestore-indexes-list.js +0 -1
- package/lib/commands/functions-config-clone.js +0 -1
- package/lib/commands/functions-config-export.js +0 -1
- package/lib/commands/functions-config-get.js +0 -1
- package/lib/commands/functions-config-set.js +0 -1
- package/lib/commands/functions-config-unset.js +0 -1
- package/lib/commands/functions-delete.js +0 -1
- package/lib/commands/functions-deletegcfartifacts.js +0 -1
- package/lib/commands/functions-list.js +0 -1
- package/lib/commands/functions-log.js +0 -1
- package/lib/commands/functions-secrets-access.js +0 -1
- package/lib/commands/functions-secrets-destroy.js +0 -1
- package/lib/commands/functions-secrets-get.js +0 -1
- package/lib/commands/functions-secrets-prune.js +0 -1
- package/lib/commands/functions-secrets-set.js +0 -1
- package/lib/commands/functions-shell.js +0 -1
- package/lib/commands/help.js +0 -1
- package/lib/commands/hosting-channel-create.js +0 -1
- package/lib/commands/hosting-channel-delete.js +0 -1
- package/lib/commands/hosting-channel-deploy.js +0 -1
- package/lib/commands/hosting-channel-list.js +0 -1
- package/lib/commands/hosting-channel-open.js +0 -1
- package/lib/commands/hosting-clone.js +0 -1
- package/lib/commands/hosting-disable.js +0 -1
- package/lib/commands/hosting-sites-create.js +0 -1
- package/lib/commands/hosting-sites-delete.js +0 -1
- package/lib/commands/hosting-sites-get.js +0 -1
- package/lib/commands/hosting-sites-list.js +0 -1
- package/lib/commands/index.js +0 -1
- package/lib/commands/init.js +0 -1
- package/lib/commands/login-add.js +0 -1
- package/lib/commands/login-ci.js +0 -1
- package/lib/commands/login-list.js +0 -1
- package/lib/commands/login-use.js +0 -1
- package/lib/commands/login.js +0 -1
- package/lib/commands/logout.js +0 -1
- package/lib/commands/open.js +0 -1
- package/lib/commands/projects-addfirebase.js +0 -1
- package/lib/commands/projects-create.js +0 -1
- package/lib/commands/projects-list.js +0 -1
- package/lib/commands/remoteconfig-get.js +0 -1
- package/lib/commands/remoteconfig-rollback.js +0 -1
- package/lib/commands/remoteconfig-versions-list.js +0 -1
- package/lib/commands/serve.js +0 -1
- package/lib/commands/setup-emulators-database.js +0 -1
- package/lib/commands/setup-emulators-firestore.js +0 -1
- package/lib/commands/setup-emulators-pubsub.js +0 -1
- package/lib/commands/setup-emulators-storage.js +0 -1
- package/lib/commands/setup-emulators-ui.js +0 -1
- package/lib/commands/target-apply.js +0 -1
- package/lib/commands/target-clear.js +0 -1
- package/lib/commands/target-remove.js +0 -1
- package/lib/commands/target.js +0 -1
- package/lib/commands/use.js +0 -1
- package/lib/config.js +0 -1
- package/lib/configstore.js +0 -1
- package/lib/crashlytics/buildToolsJarHelper.js +0 -1
- package/lib/database/api.js +0 -1
- package/lib/database/listRemote.js +0 -1
- package/lib/database/metadata.js +0 -1
- package/lib/database/remove.js +0 -1
- package/lib/database/removeRemote.js +0 -1
- package/lib/database/rulesConfig.js +0 -1
- package/lib/database/settings.js +0 -1
- package/lib/defaultCredentials.js +0 -1
- package/lib/deploy/database/deploy.js +0 -1
- package/lib/deploy/database/index.js +0 -1
- package/lib/deploy/database/prepare.js +0 -1
- package/lib/deploy/database/release.js +0 -1
- package/lib/deploy/extensions/args.js +0 -1
- package/lib/deploy/extensions/deploy.js +0 -1
- package/lib/deploy/extensions/deploymentSummary.js +0 -1
- package/lib/deploy/extensions/errors.js +0 -1
- package/lib/deploy/extensions/index.js +0 -1
- package/lib/deploy/extensions/planner.js +0 -1
- package/lib/deploy/extensions/prepare.js +0 -1
- package/lib/deploy/extensions/release.js +0 -1
- package/lib/deploy/extensions/secrets.js +0 -1
- package/lib/deploy/extensions/tasks.js +0 -1
- package/lib/deploy/extensions/validate.js +0 -1
- package/lib/deploy/firestore/deploy.js +0 -1
- package/lib/deploy/firestore/index.js +0 -1
- package/lib/deploy/firestore/prepare.js +0 -1
- package/lib/deploy/firestore/release.js +0 -1
- package/lib/deploy/functions/args.js +0 -1
- package/lib/deploy/functions/backend.js +0 -1
- package/lib/deploy/functions/build.js +0 -1
- package/lib/deploy/functions/cache/applyHash.js +0 -1
- package/lib/deploy/functions/cache/hash.js +0 -1
- package/lib/deploy/functions/cel.js +0 -1
- package/lib/deploy/functions/checkIam.js +0 -1
- package/lib/deploy/functions/containerCleaner.js +0 -1
- package/lib/deploy/functions/deploy.js +0 -1
- package/lib/deploy/functions/ensure.js +0 -1
- package/lib/deploy/functions/ensureCloudBuildEnabled.js +0 -1
- package/lib/deploy/functions/functionsDeployHelper.js +0 -1
- package/lib/deploy/functions/index.js +0 -1
- package/lib/deploy/functions/params.js +9 -2
- package/lib/deploy/functions/prepare.js +0 -1
- package/lib/deploy/functions/prepareFunctionsUpload.js +0 -1
- package/lib/deploy/functions/pricing.js +0 -1
- package/lib/deploy/functions/prompts.js +0 -1
- package/lib/deploy/functions/release/executor.js +0 -1
- package/lib/deploy/functions/release/fabricator.js +1 -1
- package/lib/deploy/functions/release/index.js +0 -1
- package/lib/deploy/functions/release/planner.js +0 -1
- package/lib/deploy/functions/release/reporter.js +0 -1
- package/lib/deploy/functions/release/sourceTokenScraper.js +0 -1
- package/lib/deploy/functions/release/timer.js +0 -1
- package/lib/deploy/functions/runtimes/discovery/index.js +0 -1
- package/lib/deploy/functions/runtimes/discovery/mockDiscoveryServer.js +0 -1
- package/lib/deploy/functions/runtimes/discovery/parsing.js +0 -1
- package/lib/deploy/functions/runtimes/discovery/v1alpha1.js +0 -1
- package/lib/deploy/functions/runtimes/golang/gomod.js +0 -1
- package/lib/deploy/functions/runtimes/golang/index.js +0 -1
- package/lib/deploy/functions/runtimes/index.js +0 -1
- package/lib/deploy/functions/runtimes/node/extractTriggers.js +0 -1
- package/lib/deploy/functions/runtimes/node/index.js +0 -1
- package/lib/deploy/functions/runtimes/node/parseRuntimeAndValidateSDK.js +0 -1
- package/lib/deploy/functions/runtimes/node/parseTriggers.js +0 -1
- package/lib/deploy/functions/runtimes/node/triggerParser.js +0 -1
- package/lib/deploy/functions/runtimes/node/validate.js +0 -1
- package/lib/deploy/functions/runtimes/node/versioning.js +0 -1
- package/lib/deploy/functions/services/auth.js +0 -1
- package/lib/deploy/functions/services/database.js +0 -1
- package/lib/deploy/functions/services/firebaseAlerts.js +0 -1
- package/lib/deploy/functions/services/index.js +0 -1
- package/lib/deploy/functions/services/remoteConfig.js +0 -1
- package/lib/deploy/functions/services/storage.js +0 -1
- package/lib/deploy/functions/services/testLab.js +0 -1
- package/lib/deploy/functions/triggerRegionHelper.js +0 -1
- package/lib/deploy/functions/validate.js +0 -1
- package/lib/deploy/hosting/args.js +0 -1
- package/lib/deploy/hosting/context.js +0 -1
- package/lib/deploy/hosting/convertConfig.js +24 -7
- package/lib/deploy/hosting/deploy.js +5 -1
- package/lib/deploy/hosting/hashcache.js +0 -1
- package/lib/deploy/hosting/index.js +0 -1
- package/lib/deploy/hosting/prepare.js +0 -1
- package/lib/deploy/hosting/release.js +0 -1
- package/lib/deploy/hosting/uploader.js +0 -1
- package/lib/deploy/index.js +10 -1
- package/lib/deploy/lifecycleHooks.js +0 -1
- package/lib/deploy/remoteconfig/deploy.js +0 -1
- package/lib/deploy/remoteconfig/functions.js +0 -1
- package/lib/deploy/remoteconfig/index.js +0 -1
- package/lib/deploy/remoteconfig/prepare.js +0 -1
- package/lib/deploy/remoteconfig/release.js +0 -1
- package/lib/deploy/storage/deploy.js +0 -1
- package/lib/deploy/storage/index.js +0 -1
- package/lib/deploy/storage/prepare.js +0 -1
- package/lib/deploy/storage/release.js +0 -1
- package/lib/deploymentTool.js +0 -1
- package/lib/detectProjectRoot.js +0 -1
- package/lib/downloadUtils.js +0 -1
- package/lib/dynamicImport.js +10 -7
- package/lib/emulator/ExpressBasedEmulator.js +92 -0
- package/lib/emulator/adminSdkConfig.js +0 -1
- package/lib/emulator/auth/apiSpec.js +0 -1
- package/lib/emulator/auth/cloudFunctions.js +3 -13
- package/lib/emulator/auth/errors.js +0 -1
- package/lib/emulator/auth/handlers.js +0 -1
- package/lib/emulator/auth/index.js +10 -5
- package/lib/emulator/auth/operations.js +0 -1
- package/lib/emulator/auth/schema.js +0 -1
- package/lib/emulator/auth/server.js +15 -2
- package/lib/emulator/auth/state.js +0 -1
- package/lib/emulator/auth/types.js +0 -1
- package/lib/emulator/auth/utils.js +1 -2
- package/lib/emulator/auth/widget_ui.js +0 -1
- package/lib/emulator/commandUtils.js +21 -45
- package/lib/emulator/constants.js +2 -10
- package/lib/emulator/controller.js +135 -133
- package/lib/emulator/databaseEmulator.js +3 -9
- package/lib/emulator/dns.js +49 -0
- package/lib/emulator/download.js +0 -1
- package/lib/emulator/downloadableEmulators.js +19 -14
- package/lib/emulator/emulatorLogger.js +14 -8
- package/lib/emulator/env.js +35 -0
- package/lib/emulator/eventarcEmulator.js +2 -9
- package/lib/emulator/events/types.js +0 -1
- package/lib/emulator/extensions/postinstall.js +8 -9
- package/lib/emulator/extensions/validation.js +0 -1
- package/lib/emulator/extensionsEmulator.js +7 -8
- package/lib/emulator/firestoreEmulator.js +5 -12
- package/lib/emulator/functionsEmulator.js +24 -61
- package/lib/emulator/functionsEmulatorRuntime.js +0 -1
- package/lib/emulator/functionsEmulatorShared.js +5 -4
- package/lib/emulator/functionsEmulatorShell.js +1 -2
- package/lib/emulator/functionsEmulatorUtils.js +0 -1
- package/lib/emulator/functionsRuntimeWorker.js +0 -1
- package/lib/emulator/hostingEmulator.js +0 -1
- package/lib/emulator/hub.js +50 -59
- package/lib/emulator/hubClient.js +24 -11
- package/lib/emulator/hubExport.js +3 -12
- package/lib/emulator/loggingEmulator.js +0 -1
- package/lib/emulator/portUtils.js +208 -30
- package/lib/emulator/pubsubEmulator.js +11 -13
- package/lib/emulator/registry.js +11 -21
- package/lib/emulator/shared/request.js +0 -1
- package/lib/emulator/storage/apis/firebase.js +0 -1
- package/lib/emulator/storage/apis/gcloud.js +3 -7
- package/lib/emulator/storage/cloudFunctions.js +2 -8
- package/lib/emulator/storage/crc.js +0 -1
- package/lib/emulator/storage/errors.js +0 -1
- package/lib/emulator/storage/files.js +0 -1
- package/lib/emulator/storage/index.js +0 -1
- package/lib/emulator/storage/metadata.js +11 -6
- package/lib/emulator/storage/multipart.js +0 -1
- package/lib/emulator/storage/persistence.js +0 -1
- package/lib/emulator/storage/rules/config.js +0 -1
- package/lib/emulator/storage/rules/expressionValue.js +0 -1
- package/lib/emulator/storage/rules/manager.js +0 -1
- package/lib/emulator/storage/rules/runtime.js +1 -7
- package/lib/emulator/storage/rules/types.js +0 -1
- package/lib/emulator/storage/rules/utils.js +0 -1
- package/lib/emulator/storage/server.js +0 -1
- package/lib/emulator/storage/upload.js +0 -1
- package/lib/emulator/types.js +0 -1
- package/lib/emulator/ui.js +6 -8
- package/lib/emulator/workQueue.js +0 -1
- package/lib/ensureApiEnabled.js +0 -1
- package/lib/ensureCloudResourceLocation.js +0 -1
- package/lib/error.js +0 -1
- package/lib/errorOut.js +0 -1
- package/lib/experiments.js +10 -2
- package/lib/extensions/askUserForConsent.js +0 -1
- package/lib/extensions/askUserForEventsConfig.js +0 -1
- package/lib/extensions/askUserForParam.js +0 -1
- package/lib/extensions/billingMigrationHelper.js +0 -1
- package/lib/extensions/change-log.js +0 -1
- package/lib/extensions/checkProjectBilling.js +0 -1
- package/lib/extensions/diagnose.js +0 -1
- package/lib/extensions/displayExtensionInfo.js +43 -7
- package/lib/extensions/emulator/optionsHelper.js +0 -1
- package/lib/extensions/emulator/specHelper.js +0 -1
- package/lib/extensions/emulator/triggerHelper.js +0 -1
- package/lib/extensions/etags.js +0 -1
- package/lib/extensions/export.js +0 -1
- package/lib/extensions/extensionsApi.js +0 -1
- package/lib/extensions/extensionsHelper.js +0 -1
- package/lib/extensions/listExtensions.js +0 -1
- package/lib/extensions/localHelper.js +0 -1
- package/lib/extensions/manifest.js +0 -1
- package/lib/extensions/metricsTypeDef.js +0 -1
- package/lib/extensions/metricsUtils.js +0 -1
- package/lib/extensions/paramHelper.js +0 -1
- package/lib/extensions/provisioningHelper.js +0 -1
- package/lib/extensions/publishHelpers.js +0 -1
- package/lib/extensions/refs.js +0 -1
- package/lib/extensions/resolveSource.js +0 -1
- package/lib/extensions/secretsUtils.js +2 -2
- package/lib/extensions/types.js +0 -1
- package/lib/extensions/updateHelper.js +0 -1
- package/lib/extensions/utils.js +0 -1
- package/lib/extensions/versionHelper.js +0 -1
- package/lib/extensions/warnings.js +0 -1
- package/lib/fetchMOTD.js +0 -1
- package/lib/fetchWebSetup.js +0 -1
- package/lib/filterTargets.js +0 -1
- package/lib/firebaseConfig.js +0 -1
- package/lib/firebaseConfigValidate.js +0 -1
- package/lib/firestore/checkDatabaseType.js +0 -1
- package/lib/firestore/delete.js +0 -1
- package/lib/firestore/encodeFirestoreValue.js +0 -1
- package/lib/firestore/indexes-api.js +0 -1
- package/lib/firestore/indexes-sort.js +0 -1
- package/lib/firestore/indexes-spec.js +0 -1
- package/lib/firestore/indexes.js +0 -1
- package/lib/firestore/util.js +0 -1
- package/lib/firestore/validator.js +0 -1
- package/lib/frameworks/angular/index.js +1 -2
- package/lib/frameworks/express/index.js +1 -2
- package/lib/frameworks/index.js +33 -18
- package/lib/frameworks/lit/index.js +0 -1
- package/lib/frameworks/next/index.js +1 -2
- package/lib/frameworks/nuxt/index.js +1 -2
- package/lib/frameworks/preact/index.js +0 -1
- package/lib/frameworks/react/index.js +0 -1
- package/lib/frameworks/svelte/index.js +0 -1
- package/lib/frameworks/vite/index.js +1 -2
- package/lib/fsAsync.js +0 -1
- package/lib/fsutils.js +0 -1
- package/lib/functional.js +0 -1
- package/lib/functions/constants.js +0 -1
- package/lib/functions/ensureTargeted.js +21 -0
- package/lib/functions/env.js +33 -20
- package/lib/functions/events/index.js +0 -1
- package/lib/functions/events/v1.js +0 -1
- package/lib/functions/events/v2.js +0 -1
- package/lib/functions/functionslog.js +0 -1
- package/lib/functions/projectConfig.js +0 -1
- package/lib/functions/runtimeConfigExport.js +0 -1
- package/lib/functions/secrets.js +0 -1
- package/lib/functionsConfig.js +0 -1
- package/lib/functionsConfigClone.js +0 -1
- package/lib/functionsShellCommandAction.js +12 -6
- package/lib/gcp/artifactregistry.js +0 -1
- package/lib/gcp/auth.js +0 -1
- package/lib/gcp/cloudbilling.js +0 -1
- package/lib/gcp/cloudfunctions.js +0 -1
- package/lib/gcp/cloudfunctionsv2.js +0 -1
- package/lib/gcp/cloudlogging.js +0 -1
- package/lib/gcp/cloudmonitoring.js +0 -1
- package/lib/gcp/cloudscheduler.js +0 -1
- package/lib/gcp/cloudtasks.js +0 -1
- package/lib/gcp/docker.js +0 -1
- package/lib/gcp/firedata.js +0 -1
- package/lib/gcp/firestore.js +0 -1
- package/lib/gcp/iam.js +0 -1
- package/lib/gcp/identityPlatform.js +0 -1
- package/lib/gcp/index.js +0 -1
- package/lib/gcp/location.js +0 -1
- package/lib/gcp/proto.js +0 -1
- package/lib/gcp/pubsub.js +0 -1
- package/lib/gcp/resourceManager.js +0 -1
- package/lib/gcp/rules.js +0 -1
- package/lib/gcp/run.js +0 -2
- package/lib/gcp/runtimeconfig.js +0 -1
- package/lib/gcp/secretManager.js +0 -1
- package/lib/gcp/serviceusage.js +0 -1
- package/lib/gcp/storage.js +0 -1
- package/lib/getDefaultDatabaseInstance.js +0 -1
- package/lib/getDefaultHostingSite.js +0 -1
- package/lib/getProjectNumber.js +0 -1
- package/lib/handlePreviewToggles.js +2 -3
- package/lib/hosting/api.js +0 -1
- package/lib/hosting/cloudRunProxy.js +0 -1
- package/lib/hosting/config.js +4 -4
- package/lib/hosting/expireUtils.js +0 -1
- package/lib/hosting/functionsProxy.js +2 -4
- package/lib/hosting/implicitInit.js +2 -12
- package/lib/hosting/initMiddleware.js +0 -1
- package/lib/hosting/options.js +0 -1
- package/lib/hosting/proxy.js +0 -1
- package/lib/hosting/runTags.js +3 -5
- package/lib/index.js +0 -1
- package/lib/init/features/account.js +0 -1
- package/lib/init/features/database.js +0 -1
- package/lib/init/features/emulators.js +0 -1
- package/lib/init/features/firestore/index.js +0 -1
- package/lib/init/features/firestore/indexes.js +0 -1
- package/lib/init/features/firestore/rules.js +0 -1
- package/lib/init/features/functions/golang.js +0 -1
- package/lib/init/features/functions/index.js +0 -1
- package/lib/init/features/functions/javascript.js +0 -1
- package/lib/init/features/functions/npm-dependencies.js +0 -1
- package/lib/init/features/functions/typescript.js +0 -1
- package/lib/init/features/hosting/github.js +0 -1
- package/lib/init/features/hosting/index.js +0 -1
- package/lib/init/features/index.js +0 -1
- package/lib/init/features/project.js +0 -1
- package/lib/init/features/remoteconfig.js +0 -1
- package/lib/init/features/storage.js +0 -1
- package/lib/init/index.js +0 -1
- package/lib/listFiles.js +0 -1
- package/lib/loadCJSON.js +0 -1
- package/lib/localFunction.js +0 -1
- package/lib/logError.js +0 -1
- package/lib/logger.js +0 -1
- package/lib/management/apps.js +0 -1
- package/lib/management/database.js +0 -1
- package/lib/management/projects.js +0 -1
- package/lib/metaprogramming.js +0 -1
- package/lib/operation-poller.js +0 -1
- package/lib/options.js +0 -1
- package/lib/parseBoltRules.js +0 -1
- package/lib/profileReport.js +0 -1
- package/lib/profiler.js +0 -1
- package/lib/projectPath.js +0 -1
- package/lib/projectUtils.js +0 -1
- package/lib/prompt.js +0 -1
- package/lib/rc.js +0 -1
- package/lib/remoteconfig/get.js +0 -1
- package/lib/remoteconfig/interfaces.js +0 -1
- package/lib/remoteconfig/rollback.js +0 -1
- package/lib/remoteconfig/versionslist.js +0 -1
- package/lib/requireAuth.js +0 -1
- package/lib/requireConfig.js +0 -1
- package/lib/requireDatabaseInstance.js +0 -1
- package/lib/requireHostingSite.js +0 -1
- package/lib/requireInteractive.js +0 -1
- package/lib/requirePermissions.js +0 -1
- package/lib/responseToError.js +0 -1
- package/lib/rtdb.js +0 -1
- package/lib/rulesDeploy.js +0 -1
- package/lib/scopes.js +0 -1
- package/lib/serve/functions.js +8 -11
- package/lib/serve/hosting.js +10 -5
- package/lib/serve/index.js +2 -3
- package/lib/shortenUrl.js +0 -1
- package/lib/throttler/errors/retries-exhausted-error.js +0 -1
- package/lib/throttler/errors/task-error.js +0 -1
- package/lib/throttler/errors/timeout-error.js +0 -1
- package/lib/throttler/queue.js +0 -1
- package/lib/throttler/stack.js +0 -1
- package/lib/throttler/throttler.js +0 -1
- package/lib/track.js +0 -1
- package/lib/utils.js +14 -2
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
- package/templates/hosting/init.js +3 -2
- package/lib/accountExporter.js.map +0 -1
- package/lib/accountImporter.js.map +0 -1
- package/lib/api.js.map +0 -1
- package/lib/apiv2.js.map +0 -1
- package/lib/appdistribution/client.js.map +0 -1
- package/lib/appdistribution/distribution.js.map +0 -1
- package/lib/appdistribution/options-parser-util.js.map +0 -1
- package/lib/archiveDirectory.js.map +0 -1
- package/lib/auth.js.map +0 -1
- package/lib/bin/firebase.js.map +0 -1
- package/lib/checkMinRequiredVersion.js.map +0 -1
- package/lib/checkValidTargetFilters.js.map +0 -1
- package/lib/command.js.map +0 -1
- package/lib/commands/appdistribution-distribute.js.map +0 -1
- package/lib/commands/appdistribution-testers-add.js.map +0 -1
- package/lib/commands/appdistribution-testers-remove.js.map +0 -1
- package/lib/commands/apps-android-sha-create.js.map +0 -1
- package/lib/commands/apps-android-sha-delete.js.map +0 -1
- package/lib/commands/apps-android-sha-list.js.map +0 -1
- package/lib/commands/apps-create.js.map +0 -1
- package/lib/commands/apps-list.js.map +0 -1
- package/lib/commands/apps-sdkconfig.js.map +0 -1
- package/lib/commands/auth-export.js.map +0 -1
- package/lib/commands/auth-import.js.map +0 -1
- package/lib/commands/crashlytics-mappingfile-generateid.js.map +0 -1
- package/lib/commands/crashlytics-mappingfile-upload.js.map +0 -1
- package/lib/commands/crashlytics-symbols-upload.js.map +0 -1
- package/lib/commands/database-get.js.map +0 -1
- package/lib/commands/database-instances-create.js.map +0 -1
- package/lib/commands/database-instances-list.js.map +0 -1
- package/lib/commands/database-profile.js.map +0 -1
- package/lib/commands/database-push.js.map +0 -1
- package/lib/commands/database-remove.js.map +0 -1
- package/lib/commands/database-rules-canary.js.map +0 -1
- package/lib/commands/database-rules-get.js.map +0 -1
- package/lib/commands/database-rules-list.js.map +0 -1
- package/lib/commands/database-rules-release.js.map +0 -1
- package/lib/commands/database-rules-stage.js.map +0 -1
- package/lib/commands/database-set.js.map +0 -1
- package/lib/commands/database-settings-get.js.map +0 -1
- package/lib/commands/database-settings-set.js.map +0 -1
- package/lib/commands/database-update.js.map +0 -1
- package/lib/commands/deploy.js.map +0 -1
- package/lib/commands/emulators-exec.js.map +0 -1
- package/lib/commands/emulators-export.js.map +0 -1
- package/lib/commands/emulators-start.js.map +0 -1
- package/lib/commands/experimental-functions-shell.js.map +0 -1
- package/lib/commands/experiments-describe.js.map +0 -1
- package/lib/commands/experiments-disable.js.map +0 -1
- package/lib/commands/experiments-enable.js.map +0 -1
- package/lib/commands/experiments-list.js.map +0 -1
- package/lib/commands/ext-configure.js.map +0 -1
- package/lib/commands/ext-dev-deprecate.js.map +0 -1
- package/lib/commands/ext-dev-emulators-exec.js.map +0 -1
- package/lib/commands/ext-dev-emulators-start.js.map +0 -1
- package/lib/commands/ext-dev-extension-delete.js.map +0 -1
- package/lib/commands/ext-dev-init.js.map +0 -1
- package/lib/commands/ext-dev-list.js.map +0 -1
- package/lib/commands/ext-dev-publish.js.map +0 -1
- package/lib/commands/ext-dev-register.js.map +0 -1
- package/lib/commands/ext-dev-undeprecate.js.map +0 -1
- package/lib/commands/ext-dev-unpublish.js.map +0 -1
- package/lib/commands/ext-dev-usage.js.map +0 -1
- package/lib/commands/ext-export.js.map +0 -1
- package/lib/commands/ext-info.js.map +0 -1
- package/lib/commands/ext-install.js.map +0 -1
- package/lib/commands/ext-list.js.map +0 -1
- package/lib/commands/ext-sources-create.js.map +0 -1
- package/lib/commands/ext-uninstall.js.map +0 -1
- package/lib/commands/ext-update.js.map +0 -1
- package/lib/commands/ext.js.map +0 -1
- package/lib/commands/firestore-delete.js.map +0 -1
- package/lib/commands/firestore-indexes-list.js.map +0 -1
- package/lib/commands/functions-config-clone.js.map +0 -1
- package/lib/commands/functions-config-export.js.map +0 -1
- package/lib/commands/functions-config-get.js.map +0 -1
- package/lib/commands/functions-config-set.js.map +0 -1
- package/lib/commands/functions-config-unset.js.map +0 -1
- package/lib/commands/functions-delete.js.map +0 -1
- package/lib/commands/functions-deletegcfartifacts.js.map +0 -1
- package/lib/commands/functions-list.js.map +0 -1
- package/lib/commands/functions-log.js.map +0 -1
- package/lib/commands/functions-secrets-access.js.map +0 -1
- package/lib/commands/functions-secrets-destroy.js.map +0 -1
- package/lib/commands/functions-secrets-get.js.map +0 -1
- package/lib/commands/functions-secrets-prune.js.map +0 -1
- package/lib/commands/functions-secrets-set.js.map +0 -1
- package/lib/commands/functions-shell.js.map +0 -1
- package/lib/commands/help.js.map +0 -1
- package/lib/commands/hosting-channel-create.js.map +0 -1
- package/lib/commands/hosting-channel-delete.js.map +0 -1
- package/lib/commands/hosting-channel-deploy.js.map +0 -1
- package/lib/commands/hosting-channel-list.js.map +0 -1
- package/lib/commands/hosting-channel-open.js.map +0 -1
- package/lib/commands/hosting-clone.js.map +0 -1
- package/lib/commands/hosting-disable.js.map +0 -1
- package/lib/commands/hosting-sites-create.js.map +0 -1
- package/lib/commands/hosting-sites-delete.js.map +0 -1
- package/lib/commands/hosting-sites-get.js.map +0 -1
- package/lib/commands/hosting-sites-list.js.map +0 -1
- package/lib/commands/index.js.map +0 -1
- package/lib/commands/init.js.map +0 -1
- package/lib/commands/login-add.js.map +0 -1
- package/lib/commands/login-ci.js.map +0 -1
- package/lib/commands/login-list.js.map +0 -1
- package/lib/commands/login-use.js.map +0 -1
- package/lib/commands/login.js.map +0 -1
- package/lib/commands/logout.js.map +0 -1
- package/lib/commands/open.js.map +0 -1
- package/lib/commands/projects-addfirebase.js.map +0 -1
- package/lib/commands/projects-create.js.map +0 -1
- package/lib/commands/projects-list.js.map +0 -1
- package/lib/commands/remoteconfig-get.js.map +0 -1
- package/lib/commands/remoteconfig-rollback.js.map +0 -1
- package/lib/commands/remoteconfig-versions-list.js.map +0 -1
- package/lib/commands/serve.js.map +0 -1
- package/lib/commands/setup-emulators-database.js.map +0 -1
- package/lib/commands/setup-emulators-firestore.js.map +0 -1
- package/lib/commands/setup-emulators-pubsub.js.map +0 -1
- package/lib/commands/setup-emulators-storage.js.map +0 -1
- package/lib/commands/setup-emulators-ui.js.map +0 -1
- package/lib/commands/target-apply.js.map +0 -1
- package/lib/commands/target-clear.js.map +0 -1
- package/lib/commands/target-remove.js.map +0 -1
- package/lib/commands/target.js.map +0 -1
- package/lib/commands/use.js.map +0 -1
- package/lib/config.js.map +0 -1
- package/lib/configstore.js.map +0 -1
- package/lib/crashlytics/buildToolsJarHelper.js.map +0 -1
- package/lib/database/api.js.map +0 -1
- package/lib/database/listRemote.js.map +0 -1
- package/lib/database/metadata.js.map +0 -1
- package/lib/database/remove.js.map +0 -1
- package/lib/database/removeRemote.js.map +0 -1
- package/lib/database/rulesConfig.js.map +0 -1
- package/lib/database/settings.js.map +0 -1
- package/lib/defaultCredentials.js.map +0 -1
- package/lib/deploy/database/deploy.js.map +0 -1
- package/lib/deploy/database/index.js.map +0 -1
- package/lib/deploy/database/prepare.js.map +0 -1
- package/lib/deploy/database/release.js.map +0 -1
- package/lib/deploy/extensions/args.js.map +0 -1
- package/lib/deploy/extensions/deploy.js.map +0 -1
- package/lib/deploy/extensions/deploymentSummary.js.map +0 -1
- package/lib/deploy/extensions/errors.js.map +0 -1
- package/lib/deploy/extensions/index.js.map +0 -1
- package/lib/deploy/extensions/planner.js.map +0 -1
- package/lib/deploy/extensions/prepare.js.map +0 -1
- package/lib/deploy/extensions/release.js.map +0 -1
- package/lib/deploy/extensions/secrets.js.map +0 -1
- package/lib/deploy/extensions/tasks.js.map +0 -1
- package/lib/deploy/extensions/validate.js.map +0 -1
- package/lib/deploy/firestore/deploy.js.map +0 -1
- package/lib/deploy/firestore/index.js.map +0 -1
- package/lib/deploy/firestore/prepare.js.map +0 -1
- package/lib/deploy/firestore/release.js.map +0 -1
- package/lib/deploy/functions/args.js.map +0 -1
- package/lib/deploy/functions/backend.js.map +0 -1
- package/lib/deploy/functions/build.js.map +0 -1
- package/lib/deploy/functions/cache/applyHash.js.map +0 -1
- package/lib/deploy/functions/cache/hash.js.map +0 -1
- package/lib/deploy/functions/cel.js.map +0 -1
- package/lib/deploy/functions/checkIam.js.map +0 -1
- package/lib/deploy/functions/containerCleaner.js.map +0 -1
- package/lib/deploy/functions/deploy.js.map +0 -1
- package/lib/deploy/functions/ensure.js.map +0 -1
- package/lib/deploy/functions/ensureCloudBuildEnabled.js.map +0 -1
- package/lib/deploy/functions/functionsDeployHelper.js.map +0 -1
- package/lib/deploy/functions/index.js.map +0 -1
- package/lib/deploy/functions/params.js.map +0 -1
- package/lib/deploy/functions/prepare.js.map +0 -1
- package/lib/deploy/functions/prepareFunctionsUpload.js.map +0 -1
- package/lib/deploy/functions/pricing.js.map +0 -1
- package/lib/deploy/functions/prompts.js.map +0 -1
- package/lib/deploy/functions/release/executor.js.map +0 -1
- package/lib/deploy/functions/release/fabricator.js.map +0 -1
- package/lib/deploy/functions/release/index.js.map +0 -1
- package/lib/deploy/functions/release/planner.js.map +0 -1
- package/lib/deploy/functions/release/reporter.js.map +0 -1
- package/lib/deploy/functions/release/sourceTokenScraper.js.map +0 -1
- package/lib/deploy/functions/release/timer.js.map +0 -1
- package/lib/deploy/functions/runtimes/discovery/index.js.map +0 -1
- package/lib/deploy/functions/runtimes/discovery/mockDiscoveryServer.js.map +0 -1
- package/lib/deploy/functions/runtimes/discovery/parsing.js.map +0 -1
- package/lib/deploy/functions/runtimes/discovery/v1alpha1.js.map +0 -1
- package/lib/deploy/functions/runtimes/golang/gomod.js.map +0 -1
- package/lib/deploy/functions/runtimes/golang/index.js.map +0 -1
- package/lib/deploy/functions/runtimes/index.js.map +0 -1
- package/lib/deploy/functions/runtimes/node/extractTriggers.js.map +0 -1
- package/lib/deploy/functions/runtimes/node/index.js.map +0 -1
- package/lib/deploy/functions/runtimes/node/parseRuntimeAndValidateSDK.js.map +0 -1
- package/lib/deploy/functions/runtimes/node/parseTriggers.js.map +0 -1
- package/lib/deploy/functions/runtimes/node/triggerParser.js.map +0 -1
- package/lib/deploy/functions/runtimes/node/validate.js.map +0 -1
- package/lib/deploy/functions/runtimes/node/versioning.js.map +0 -1
- package/lib/deploy/functions/services/auth.js.map +0 -1
- package/lib/deploy/functions/services/database.js.map +0 -1
- package/lib/deploy/functions/services/firebaseAlerts.js.map +0 -1
- package/lib/deploy/functions/services/index.js.map +0 -1
- package/lib/deploy/functions/services/remoteConfig.js.map +0 -1
- package/lib/deploy/functions/services/storage.js.map +0 -1
- package/lib/deploy/functions/services/testLab.js.map +0 -1
- package/lib/deploy/functions/triggerRegionHelper.js.map +0 -1
- package/lib/deploy/functions/validate.js.map +0 -1
- package/lib/deploy/hosting/args.js.map +0 -1
- package/lib/deploy/hosting/context.js.map +0 -1
- package/lib/deploy/hosting/convertConfig.js.map +0 -1
- package/lib/deploy/hosting/deploy.js.map +0 -1
- package/lib/deploy/hosting/hashcache.js.map +0 -1
- package/lib/deploy/hosting/index.js.map +0 -1
- package/lib/deploy/hosting/prepare.js.map +0 -1
- package/lib/deploy/hosting/release.js.map +0 -1
- package/lib/deploy/hosting/uploader.js.map +0 -1
- package/lib/deploy/index.js.map +0 -1
- package/lib/deploy/lifecycleHooks.js.map +0 -1
- package/lib/deploy/remoteconfig/deploy.js.map +0 -1
- package/lib/deploy/remoteconfig/functions.js.map +0 -1
- package/lib/deploy/remoteconfig/index.js.map +0 -1
- package/lib/deploy/remoteconfig/prepare.js.map +0 -1
- package/lib/deploy/remoteconfig/release.js.map +0 -1
- package/lib/deploy/storage/deploy.js.map +0 -1
- package/lib/deploy/storage/index.js.map +0 -1
- package/lib/deploy/storage/prepare.js.map +0 -1
- package/lib/deploy/storage/release.js.map +0 -1
- package/lib/deploymentTool.js.map +0 -1
- package/lib/detectProjectRoot.js.map +0 -1
- package/lib/downloadUtils.js.map +0 -1
- package/lib/emulator/adminSdkConfig.js.map +0 -1
- package/lib/emulator/auth/apiSpec.js.map +0 -1
- package/lib/emulator/auth/cloudFunctions.js.map +0 -1
- package/lib/emulator/auth/errors.js.map +0 -1
- package/lib/emulator/auth/handlers.js.map +0 -1
- package/lib/emulator/auth/index.js.map +0 -1
- package/lib/emulator/auth/operations.js.map +0 -1
- package/lib/emulator/auth/schema.js.map +0 -1
- package/lib/emulator/auth/server.js.map +0 -1
- package/lib/emulator/auth/state.js.map +0 -1
- package/lib/emulator/auth/types.js.map +0 -1
- package/lib/emulator/auth/utils.js.map +0 -1
- package/lib/emulator/auth/widget_ui.js.map +0 -1
- package/lib/emulator/commandUtils.js.map +0 -1
- package/lib/emulator/constants.js.map +0 -1
- package/lib/emulator/controller.js.map +0 -1
- package/lib/emulator/databaseEmulator.js.map +0 -1
- package/lib/emulator/download.js.map +0 -1
- package/lib/emulator/downloadableEmulators.js.map +0 -1
- package/lib/emulator/emulatorLogger.js.map +0 -1
- package/lib/emulator/emulatorServer.js +0 -30
- package/lib/emulator/emulatorServer.js.map +0 -1
- package/lib/emulator/eventarcEmulator.js.map +0 -1
- package/lib/emulator/events/types.js.map +0 -1
- package/lib/emulator/extensions/postinstall.js.map +0 -1
- package/lib/emulator/extensions/validation.js.map +0 -1
- package/lib/emulator/extensionsEmulator.js.map +0 -1
- package/lib/emulator/firestoreEmulator.js.map +0 -1
- package/lib/emulator/functionsEmulator.js.map +0 -1
- package/lib/emulator/functionsEmulatorRuntime.js.map +0 -1
- package/lib/emulator/functionsEmulatorShared.js.map +0 -1
- package/lib/emulator/functionsEmulatorShell.js.map +0 -1
- package/lib/emulator/functionsEmulatorUtils.js.map +0 -1
- package/lib/emulator/functionsRuntimeWorker.js.map +0 -1
- package/lib/emulator/hostingEmulator.js.map +0 -1
- package/lib/emulator/hub.js.map +0 -1
- package/lib/emulator/hubClient.js.map +0 -1
- package/lib/emulator/hubExport.js.map +0 -1
- package/lib/emulator/loggingEmulator.js.map +0 -1
- package/lib/emulator/portUtils.js.map +0 -1
- package/lib/emulator/pubsubEmulator.js.map +0 -1
- package/lib/emulator/registry.js.map +0 -1
- package/lib/emulator/shared/request.js.map +0 -1
- package/lib/emulator/storage/apis/firebase.js.map +0 -1
- package/lib/emulator/storage/apis/gcloud.js.map +0 -1
- package/lib/emulator/storage/cloudFunctions.js.map +0 -1
- package/lib/emulator/storage/crc.js.map +0 -1
- package/lib/emulator/storage/errors.js.map +0 -1
- package/lib/emulator/storage/files.js.map +0 -1
- package/lib/emulator/storage/index.js.map +0 -1
- package/lib/emulator/storage/metadata.js.map +0 -1
- package/lib/emulator/storage/multipart.js.map +0 -1
- package/lib/emulator/storage/persistence.js.map +0 -1
- package/lib/emulator/storage/rules/config.js.map +0 -1
- package/lib/emulator/storage/rules/expressionValue.js.map +0 -1
- package/lib/emulator/storage/rules/manager.js.map +0 -1
- package/lib/emulator/storage/rules/runtime.js.map +0 -1
- package/lib/emulator/storage/rules/types.js.map +0 -1
- package/lib/emulator/storage/rules/utils.js.map +0 -1
- package/lib/emulator/storage/server.js.map +0 -1
- package/lib/emulator/storage/upload.js.map +0 -1
- package/lib/emulator/types.js.map +0 -1
- package/lib/emulator/ui.js.map +0 -1
- package/lib/emulator/workQueue.js.map +0 -1
- package/lib/ensureApiEnabled.js.map +0 -1
- package/lib/ensureCloudResourceLocation.js.map +0 -1
- package/lib/error.js.map +0 -1
- package/lib/errorOut.js.map +0 -1
- package/lib/experiments.js.map +0 -1
- package/lib/extensions/askUserForConsent.js.map +0 -1
- package/lib/extensions/askUserForEventsConfig.js.map +0 -1
- package/lib/extensions/askUserForParam.js.map +0 -1
- package/lib/extensions/billingMigrationHelper.js.map +0 -1
- package/lib/extensions/change-log.js.map +0 -1
- package/lib/extensions/checkProjectBilling.js.map +0 -1
- package/lib/extensions/diagnose.js.map +0 -1
- package/lib/extensions/displayExtensionInfo.js.map +0 -1
- package/lib/extensions/emulator/optionsHelper.js.map +0 -1
- package/lib/extensions/emulator/specHelper.js.map +0 -1
- package/lib/extensions/emulator/triggerHelper.js.map +0 -1
- package/lib/extensions/etags.js.map +0 -1
- package/lib/extensions/export.js.map +0 -1
- package/lib/extensions/extensionsApi.js.map +0 -1
- package/lib/extensions/extensionsHelper.js.map +0 -1
- package/lib/extensions/listExtensions.js.map +0 -1
- package/lib/extensions/localHelper.js.map +0 -1
- package/lib/extensions/manifest.js.map +0 -1
- package/lib/extensions/metricsTypeDef.js.map +0 -1
- package/lib/extensions/metricsUtils.js.map +0 -1
- package/lib/extensions/paramHelper.js.map +0 -1
- package/lib/extensions/provisioningHelper.js.map +0 -1
- package/lib/extensions/publishHelpers.js.map +0 -1
- package/lib/extensions/refs.js.map +0 -1
- package/lib/extensions/resolveSource.js.map +0 -1
- package/lib/extensions/secretsUtils.js.map +0 -1
- package/lib/extensions/types.js.map +0 -1
- package/lib/extensions/updateHelper.js.map +0 -1
- package/lib/extensions/utils.js.map +0 -1
- package/lib/extensions/versionHelper.js.map +0 -1
- package/lib/extensions/warnings.js.map +0 -1
- package/lib/fetchMOTD.js.map +0 -1
- package/lib/fetchWebSetup.js.map +0 -1
- package/lib/filterTargets.js.map +0 -1
- package/lib/firebaseConfig.js.map +0 -1
- package/lib/firebaseConfigValidate.js.map +0 -1
- package/lib/firestore/checkDatabaseType.js.map +0 -1
- package/lib/firestore/delete.js.map +0 -1
- package/lib/firestore/encodeFirestoreValue.js.map +0 -1
- package/lib/firestore/indexes-api.js.map +0 -1
- package/lib/firestore/indexes-sort.js.map +0 -1
- package/lib/firestore/indexes-spec.js.map +0 -1
- package/lib/firestore/indexes.js.map +0 -1
- package/lib/firestore/util.js.map +0 -1
- package/lib/firestore/validator.js.map +0 -1
- package/lib/frameworks/angular/index.js.map +0 -1
- package/lib/frameworks/express/index.js.map +0 -1
- package/lib/frameworks/index.js.map +0 -1
- package/lib/frameworks/lit/index.js.map +0 -1
- package/lib/frameworks/next/index.js.map +0 -1
- package/lib/frameworks/nuxt/index.js.map +0 -1
- package/lib/frameworks/preact/index.js.map +0 -1
- package/lib/frameworks/react/index.js.map +0 -1
- package/lib/frameworks/svelte/index.js.map +0 -1
- package/lib/frameworks/vite/index.js.map +0 -1
- package/lib/fsAsync.js.map +0 -1
- package/lib/fsutils.js.map +0 -1
- package/lib/functional.js.map +0 -1
- package/lib/functions/constants.js.map +0 -1
- package/lib/functions/env.js.map +0 -1
- package/lib/functions/events/index.js.map +0 -1
- package/lib/functions/events/v1.js.map +0 -1
- package/lib/functions/events/v2.js.map +0 -1
- package/lib/functions/functionslog.js.map +0 -1
- package/lib/functions/projectConfig.js.map +0 -1
- package/lib/functions/runtimeConfigExport.js.map +0 -1
- package/lib/functions/secrets.js.map +0 -1
- package/lib/functionsConfig.js.map +0 -1
- package/lib/functionsConfigClone.js.map +0 -1
- package/lib/functionsShellCommandAction.js.map +0 -1
- package/lib/gcp/artifactregistry.js.map +0 -1
- package/lib/gcp/auth.js.map +0 -1
- package/lib/gcp/cloudbilling.js.map +0 -1
- package/lib/gcp/cloudfunctions.js.map +0 -1
- package/lib/gcp/cloudfunctionsv2.js.map +0 -1
- package/lib/gcp/cloudlogging.js.map +0 -1
- package/lib/gcp/cloudmonitoring.js.map +0 -1
- package/lib/gcp/cloudscheduler.js.map +0 -1
- package/lib/gcp/cloudtasks.js.map +0 -1
- package/lib/gcp/docker.js.map +0 -1
- package/lib/gcp/firedata.js.map +0 -1
- package/lib/gcp/firestore.js.map +0 -1
- package/lib/gcp/iam.js.map +0 -1
- package/lib/gcp/identityPlatform.js.map +0 -1
- package/lib/gcp/index.js.map +0 -1
- package/lib/gcp/location.js.map +0 -1
- package/lib/gcp/proto.js.map +0 -1
- package/lib/gcp/pubsub.js.map +0 -1
- package/lib/gcp/resourceManager.js.map +0 -1
- package/lib/gcp/rules.js.map +0 -1
- package/lib/gcp/run.js.map +0 -1
- package/lib/gcp/runtimeconfig.js.map +0 -1
- package/lib/gcp/secretManager.js.map +0 -1
- package/lib/gcp/serviceusage.js.map +0 -1
- package/lib/gcp/storage.js.map +0 -1
- package/lib/getDefaultDatabaseInstance.js.map +0 -1
- package/lib/getDefaultHostingSite.js.map +0 -1
- package/lib/getProjectNumber.js.map +0 -1
- package/lib/handlePreviewToggles.js.map +0 -1
- package/lib/hosting/api.js.map +0 -1
- package/lib/hosting/cloudRunProxy.js.map +0 -1
- package/lib/hosting/config.js.map +0 -1
- package/lib/hosting/expireUtils.js.map +0 -1
- package/lib/hosting/functionsProxy.js.map +0 -1
- package/lib/hosting/implicitInit.js.map +0 -1
- package/lib/hosting/initMiddleware.js.map +0 -1
- package/lib/hosting/options.js.map +0 -1
- package/lib/hosting/proxy.js.map +0 -1
- package/lib/hosting/runTags.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/init/features/account.js.map +0 -1
- package/lib/init/features/database.js.map +0 -1
- package/lib/init/features/emulators.js.map +0 -1
- package/lib/init/features/firestore/index.js.map +0 -1
- package/lib/init/features/firestore/indexes.js.map +0 -1
- package/lib/init/features/firestore/rules.js.map +0 -1
- package/lib/init/features/functions/golang.js.map +0 -1
- package/lib/init/features/functions/index.js.map +0 -1
- package/lib/init/features/functions/javascript.js.map +0 -1
- package/lib/init/features/functions/npm-dependencies.js.map +0 -1
- package/lib/init/features/functions/typescript.js.map +0 -1
- package/lib/init/features/hosting/github.js.map +0 -1
- package/lib/init/features/hosting/index.js.map +0 -1
- package/lib/init/features/index.js.map +0 -1
- package/lib/init/features/project.js.map +0 -1
- package/lib/init/features/remoteconfig.js.map +0 -1
- package/lib/init/features/storage.js.map +0 -1
- package/lib/init/index.js.map +0 -1
- package/lib/listFiles.js.map +0 -1
- package/lib/loadCJSON.js.map +0 -1
- package/lib/localFunction.js.map +0 -1
- package/lib/logError.js.map +0 -1
- package/lib/logger.js.map +0 -1
- package/lib/management/apps.js.map +0 -1
- package/lib/management/database.js.map +0 -1
- package/lib/management/projects.js.map +0 -1
- package/lib/metaprogramming.js.map +0 -1
- package/lib/operation-poller.js.map +0 -1
- package/lib/options.js.map +0 -1
- package/lib/parseBoltRules.js.map +0 -1
- package/lib/profileReport.js.map +0 -1
- package/lib/profiler.js.map +0 -1
- package/lib/projectPath.js.map +0 -1
- package/lib/projectUtils.js.map +0 -1
- package/lib/prompt.js.map +0 -1
- package/lib/rc.js.map +0 -1
- package/lib/remoteconfig/get.js.map +0 -1
- package/lib/remoteconfig/interfaces.js.map +0 -1
- package/lib/remoteconfig/rollback.js.map +0 -1
- package/lib/remoteconfig/versionslist.js.map +0 -1
- package/lib/requireAuth.js.map +0 -1
- package/lib/requireConfig.js.map +0 -1
- package/lib/requireDatabaseInstance.js.map +0 -1
- package/lib/requireHostingSite.js.map +0 -1
- package/lib/requireInteractive.js.map +0 -1
- package/lib/requirePermissions.js.map +0 -1
- package/lib/responseToError.js.map +0 -1
- package/lib/rtdb.js.map +0 -1
- package/lib/rulesDeploy.js.map +0 -1
- package/lib/scopes.js.map +0 -1
- package/lib/serve/functions.js.map +0 -1
- package/lib/serve/hosting.js.map +0 -1
- package/lib/serve/index.js.map +0 -1
- package/lib/shortenUrl.js.map +0 -1
- package/lib/throttler/errors/retries-exhausted-error.js.map +0 -1
- package/lib/throttler/errors/task-error.js.map +0 -1
- package/lib/throttler/errors/timeout-error.js.map +0 -1
- package/lib/throttler/queue.js.map +0 -1
- package/lib/throttler/stack.js.map +0 -1
- package/lib/throttler/throttler.js.map +0 -1
- package/lib/track.js.map +0 -1
- package/lib/utils.js.map +0 -1
|
@@ -27,7 +27,6 @@ const ui_1 = require("./ui");
|
|
|
27
27
|
const loggingEmulator_1 = require("./loggingEmulator");
|
|
28
28
|
const dbRulesConfig = require("../database/rulesConfig");
|
|
29
29
|
const emulatorLogger_1 = require("./emulatorLogger");
|
|
30
|
-
const portUtils = require("./portUtils");
|
|
31
30
|
const hubClient_1 = require("./hubClient");
|
|
32
31
|
const prompt_1 = require("../prompt");
|
|
33
32
|
const commandUtils_1 = require("./commandUtils");
|
|
@@ -41,87 +40,8 @@ const projectConfig_1 = require("../functions/projectConfig");
|
|
|
41
40
|
const downloadableEmulators_1 = require("./downloadableEmulators");
|
|
42
41
|
const frameworks_1 = require("../frameworks");
|
|
43
42
|
const experiments = require("../experiments");
|
|
43
|
+
const portUtils_1 = require("./portUtils");
|
|
44
44
|
const START_LOGGING_EMULATOR = utils.envOverride("START_LOGGING_EMULATOR", "false", (val) => val === "true");
|
|
45
|
-
async function getAndCheckAddress(emulator, options) {
|
|
46
|
-
var _a, _b, _c, _d;
|
|
47
|
-
if (emulator === types_1.Emulators.EXTENSIONS) {
|
|
48
|
-
emulator = types_1.Emulators.FUNCTIONS;
|
|
49
|
-
}
|
|
50
|
-
let host = ((_b = (_a = options.config.src.emulators) === null || _a === void 0 ? void 0 : _a[emulator]) === null || _b === void 0 ? void 0 : _b.host) || constants_1.Constants.getDefaultHost();
|
|
51
|
-
if (host === "localhost" && utils.isRunningInWSL()) {
|
|
52
|
-
host = "127.0.0.1";
|
|
53
|
-
}
|
|
54
|
-
const portVal = (_d = (_c = options.config.src.emulators) === null || _c === void 0 ? void 0 : _c[emulator]) === null || _d === void 0 ? void 0 : _d.port;
|
|
55
|
-
let port;
|
|
56
|
-
let findAvailablePort = false;
|
|
57
|
-
if (portVal) {
|
|
58
|
-
port = parseInt(`${portVal}`, 10);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
port = constants_1.Constants.getDefaultPort(emulator);
|
|
62
|
-
findAvailablePort = constants_1.FIND_AVAILBLE_PORT_BY_DEFAULT[emulator];
|
|
63
|
-
}
|
|
64
|
-
const loggerForEmulator = emulatorLogger_1.EmulatorLogger.forEmulator(emulator);
|
|
65
|
-
const portOpen = await portUtils.checkPortOpen(port, host);
|
|
66
|
-
if (!portOpen) {
|
|
67
|
-
if (findAvailablePort) {
|
|
68
|
-
const newPort = await portUtils.findAvailablePort(host, port);
|
|
69
|
-
if (newPort !== port) {
|
|
70
|
-
loggerForEmulator.logLabeled("WARN", emulator, `${constants_1.Constants.description(emulator)} unable to start on port ${port}, starting on ${newPort} instead.`);
|
|
71
|
-
port = newPort;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
await cleanShutdown();
|
|
76
|
-
const description = constants_1.Constants.description(emulator);
|
|
77
|
-
loggerForEmulator.logLabeled("WARN", emulator, `Port ${port} is not open on ${host}, could not start ${description}.`);
|
|
78
|
-
loggerForEmulator.logLabeled("WARN", emulator, `To select a different host/port, specify that host/port in a firebase.json config file:
|
|
79
|
-
{
|
|
80
|
-
// ...
|
|
81
|
-
"emulators": {
|
|
82
|
-
"${emulator}": {
|
|
83
|
-
"host": "${clc.yellow("HOST")}",
|
|
84
|
-
"port": "${clc.yellow("PORT")}"
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}`);
|
|
88
|
-
return utils.reject(`Could not start ${description}, port taken.`, {});
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
if (portUtils.isRestricted(port)) {
|
|
92
|
-
const suggested = portUtils.suggestUnrestricted(port);
|
|
93
|
-
loggerForEmulator.logLabeled("WARN", emulator, `Port ${port} is restricted by some web browsers, including Chrome. You may want to choose a different port such as ${suggested}.`);
|
|
94
|
-
}
|
|
95
|
-
return { host, port };
|
|
96
|
-
}
|
|
97
|
-
async function getFirestoreWebSocketPort(host, port, emulator) {
|
|
98
|
-
let websocketPort;
|
|
99
|
-
if (port) {
|
|
100
|
-
const portOpen = await portUtils.checkPortOpen(port, host);
|
|
101
|
-
if (!portOpen) {
|
|
102
|
-
await cleanShutdown();
|
|
103
|
-
const logger = emulatorLogger_1.EmulatorLogger.forEmulator(emulator);
|
|
104
|
-
logger.logLabeled("WARN", emulator, `Port ${port} is not open on ${host}, could not start websocket server for Firestore emulator.`);
|
|
105
|
-
logger.logLabeled("WARN", emulator, `To select a different port, specify that port in a firebase.json config file:
|
|
106
|
-
{
|
|
107
|
-
// ...
|
|
108
|
-
"emulators": {
|
|
109
|
-
"${emulator}": {
|
|
110
|
-
"host": "${clc.yellow("HOST")}",
|
|
111
|
-
...
|
|
112
|
-
"websocketPort": "${clc.yellow("WEBSOCKET_PORT")}"
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}`);
|
|
116
|
-
return utils.reject(`Could not start websocket, port taken.`, {});
|
|
117
|
-
}
|
|
118
|
-
websocketPort = port;
|
|
119
|
-
}
|
|
120
|
-
else {
|
|
121
|
-
websocketPort = await portUtils.findAvailablePort(host, 9150);
|
|
122
|
-
}
|
|
123
|
-
return websocketPort;
|
|
124
|
-
}
|
|
125
45
|
async function exportOnExit(options) {
|
|
126
46
|
const exportOnExitDir = options.exportOnExit;
|
|
127
47
|
if (exportOnExitDir) {
|
|
@@ -232,9 +152,11 @@ function findExportMetadata(importPath) {
|
|
|
232
152
|
}
|
|
233
153
|
}
|
|
234
154
|
async function startAll(options, showUI = true) {
|
|
235
|
-
var _a, _b, _c, _d, _e;
|
|
155
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
236
156
|
const targets = filterEmulatorTargets(options);
|
|
237
157
|
options.targets = targets;
|
|
158
|
+
const singleProjectModeEnabled = ((_a = options.config.src.emulators) === null || _a === void 0 ? void 0 : _a.singleProjectMode) === undefined ||
|
|
159
|
+
((_b = options.config.src.emulators) === null || _b === void 0 ? void 0 : _b.singleProjectMode);
|
|
238
160
|
if (targets.length === 0) {
|
|
239
161
|
throw new error_1.FirebaseError(`No emulators to start, run ${clc.bold("firebase init emulators")} to get started.`);
|
|
240
162
|
}
|
|
@@ -266,6 +188,60 @@ async function startAll(options, showUI = true) {
|
|
|
266
188
|
}
|
|
267
189
|
}
|
|
268
190
|
}
|
|
191
|
+
const emulatableBackends = [];
|
|
192
|
+
let extensionEmulator = undefined;
|
|
193
|
+
if (shouldStart(options, types_1.Emulators.EXTENSIONS)) {
|
|
194
|
+
const projectNumber = isDemoProject
|
|
195
|
+
? constants_1.Constants.FAKE_PROJECT_NUMBER
|
|
196
|
+
: await (0, projectUtils_1.needProjectNumber)(options);
|
|
197
|
+
const aliases = (0, projectUtils_1.getAliases)(options, projectId);
|
|
198
|
+
extensionEmulator = new extensionsEmulator_1.ExtensionsEmulator({
|
|
199
|
+
projectId,
|
|
200
|
+
projectDir: options.config.projectDir,
|
|
201
|
+
projectNumber,
|
|
202
|
+
aliases,
|
|
203
|
+
extensions: options.config.get("extensions"),
|
|
204
|
+
});
|
|
205
|
+
const extensionsBackends = await extensionEmulator.getExtensionBackends();
|
|
206
|
+
const filteredExtensionsBackends = extensionEmulator.filterUnemulatedTriggers(options, extensionsBackends);
|
|
207
|
+
emulatableBackends.push(...filteredExtensionsBackends);
|
|
208
|
+
}
|
|
209
|
+
const listenConfig = {};
|
|
210
|
+
if (emulatableBackends.length) {
|
|
211
|
+
listenConfig[types_1.Emulators.FUNCTIONS] = getListenConfig(options, types_1.Emulators.FUNCTIONS);
|
|
212
|
+
listenConfig[types_1.Emulators.EVENTARC] = getListenConfig(options, types_1.Emulators.EVENTARC);
|
|
213
|
+
}
|
|
214
|
+
for (const emulator of types_1.ALL_EMULATORS) {
|
|
215
|
+
if (emulator === types_1.Emulators.FUNCTIONS ||
|
|
216
|
+
emulator === types_1.Emulators.EVENTARC ||
|
|
217
|
+
emulator === types_1.Emulators.EXTENSIONS ||
|
|
218
|
+
(emulator === types_1.Emulators.UI && !showUI)) {
|
|
219
|
+
continue;
|
|
220
|
+
}
|
|
221
|
+
if (shouldStart(options, emulator) ||
|
|
222
|
+
(emulator === types_1.Emulators.LOGGING &&
|
|
223
|
+
((showUI && shouldStart(options, types_1.Emulators.UI)) || START_LOGGING_EMULATOR))) {
|
|
224
|
+
const config = getListenConfig(options, emulator);
|
|
225
|
+
listenConfig[emulator] = config;
|
|
226
|
+
if (emulator === types_1.Emulators.FIRESTORE) {
|
|
227
|
+
const wsPortConfig = (_d = (_c = options.config.src.emulators) === null || _c === void 0 ? void 0 : _c.firestore) === null || _d === void 0 ? void 0 : _d.websocketPort;
|
|
228
|
+
listenConfig["firestore.websocket"] = {
|
|
229
|
+
host: config.host,
|
|
230
|
+
port: wsPortConfig || 9150,
|
|
231
|
+
portFixed: !!wsPortConfig,
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
let listenForEmulator = await (0, portUtils_1.resolveHostAndAssignPorts)(listenConfig);
|
|
237
|
+
hubLogger.log("DEBUG", "assigned listening specs for emulators", { user: listenForEmulator });
|
|
238
|
+
function legacyGetFirstAddr(name) {
|
|
239
|
+
const firstSpec = listenForEmulator[name][0];
|
|
240
|
+
return {
|
|
241
|
+
host: firstSpec.address,
|
|
242
|
+
port: firstSpec.port,
|
|
243
|
+
};
|
|
244
|
+
}
|
|
269
245
|
function startEmulator(instance) {
|
|
270
246
|
const name = instance.getName();
|
|
271
247
|
void (0, track_1.track)("Emulator Run", name);
|
|
@@ -275,9 +251,12 @@ async function startAll(options, showUI = true) {
|
|
|
275
251
|
});
|
|
276
252
|
return registry_1.EmulatorRegistry.start(instance);
|
|
277
253
|
}
|
|
278
|
-
if (
|
|
279
|
-
const
|
|
280
|
-
|
|
254
|
+
if (listenForEmulator.hub) {
|
|
255
|
+
const hub = new hub_1.EmulatorHub({
|
|
256
|
+
projectId,
|
|
257
|
+
listen: listenForEmulator[types_1.Emulators.HUB],
|
|
258
|
+
listenForEmulator,
|
|
259
|
+
});
|
|
281
260
|
void (0, track_1.track)("emulators:start", "hub");
|
|
282
261
|
await startEmulator(hub);
|
|
283
262
|
}
|
|
@@ -304,15 +283,18 @@ async function startAll(options, showUI = true) {
|
|
|
304
283
|
experiments.assertEnabled("webframeworks", "emulate a web framework");
|
|
305
284
|
const emulators = [];
|
|
306
285
|
if (experiments.isEnabled("webframeworks")) {
|
|
307
|
-
for (const e of types_1.
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
286
|
+
for (const e of types_1.ALL_SERVICE_EMULATORS) {
|
|
287
|
+
if (listenForEmulator[e]) {
|
|
288
|
+
emulators.push({
|
|
289
|
+
name: e,
|
|
290
|
+
host: utils.connectableHostname(listenForEmulator[e][0].address),
|
|
291
|
+
port: listenForEmulator[e][0].port,
|
|
292
|
+
});
|
|
293
|
+
}
|
|
311
294
|
}
|
|
312
295
|
}
|
|
313
296
|
await (0, frameworks_1.prepareFrameworks)(targets, options, options, emulators);
|
|
314
297
|
}
|
|
315
|
-
const emulatableBackends = [];
|
|
316
298
|
const projectDir = (options.extDevDir || options.config.projectDir);
|
|
317
299
|
if (shouldStart(options, types_1.Emulators.FUNCTIONS)) {
|
|
318
300
|
const functionsCfg = (0, projectConfig_1.normalizeAndValidate)(options.config.src.functions);
|
|
@@ -329,26 +311,18 @@ async function startAll(options, showUI = true) {
|
|
|
329
311
|
});
|
|
330
312
|
}
|
|
331
313
|
}
|
|
332
|
-
if (
|
|
333
|
-
const projectNumber = isDemoProject
|
|
334
|
-
? constants_1.Constants.FAKE_PROJECT_NUMBER
|
|
335
|
-
: await (0, projectUtils_1.needProjectNumber)(options);
|
|
336
|
-
const aliases = (0, projectUtils_1.getAliases)(options, projectId);
|
|
337
|
-
const extensionEmulator = new extensionsEmulator_1.ExtensionsEmulator({
|
|
338
|
-
projectId,
|
|
339
|
-
projectDir: options.config.projectDir,
|
|
340
|
-
projectNumber,
|
|
341
|
-
aliases,
|
|
342
|
-
extensions: options.config.get("extensions"),
|
|
343
|
-
});
|
|
344
|
-
const extensionsBackends = await extensionEmulator.getExtensionBackends();
|
|
345
|
-
const filteredExtensionsBackends = extensionEmulator.filterUnemulatedTriggers(options, extensionsBackends);
|
|
346
|
-
emulatableBackends.push(...filteredExtensionsBackends);
|
|
314
|
+
if (extensionEmulator) {
|
|
347
315
|
await startEmulator(extensionEmulator);
|
|
348
316
|
}
|
|
349
317
|
if (emulatableBackends.length) {
|
|
318
|
+
if (!listenForEmulator.functions || !listenForEmulator.eventarc) {
|
|
319
|
+
listenForEmulator = await (0, portUtils_1.resolveHostAndAssignPorts)(Object.assign(Object.assign({}, listenForEmulator), { functions: (_e = listenForEmulator.functions) !== null && _e !== void 0 ? _e : getListenConfig(options, types_1.Emulators.FUNCTIONS), eventarc: (_f = listenForEmulator.eventarc) !== null && _f !== void 0 ? _f : getListenConfig(options, types_1.Emulators.EVENTARC) }));
|
|
320
|
+
hubLogger.log("DEBUG", "late-assigned ports for functions and eventarc emulators", {
|
|
321
|
+
user: listenForEmulator,
|
|
322
|
+
});
|
|
323
|
+
}
|
|
350
324
|
const functionsLogger = emulatorLogger_1.EmulatorLogger.forEmulator(types_1.Emulators.FUNCTIONS);
|
|
351
|
-
const functionsAddr =
|
|
325
|
+
const functionsAddr = legacyGetFirstAddr(types_1.Emulators.FUNCTIONS);
|
|
352
326
|
const projectId = (0, projectUtils_1.needProjectId)(options);
|
|
353
327
|
let inspectFunctions;
|
|
354
328
|
if (options.inspectFunctions) {
|
|
@@ -356,7 +330,7 @@ async function startAll(options, showUI = true) {
|
|
|
356
330
|
functionsLogger.logLabeled("WARN", "functions", `You are running the Functions emulator in debug mode (port=${inspectFunctions}). This means that functions will execute in sequence rather than in parallel.`);
|
|
357
331
|
}
|
|
358
332
|
const emulatorsNotRunning = types_1.ALL_SERVICE_EMULATORS.filter((e) => {
|
|
359
|
-
return e !== types_1.Emulators.FUNCTIONS && !
|
|
333
|
+
return e !== types_1.Emulators.FUNCTIONS && !listenForEmulator[e];
|
|
360
334
|
});
|
|
361
335
|
if (emulatorsNotRunning.length > 0 && !constants_1.Constants.isDemoProject(projectId)) {
|
|
362
336
|
functionsLogger.logLabeled("WARN", "functions", `The following emulators are not running, calls to these services from the Functions emulator will affect production: ${clc.bold(emulatorsNotRunning.join(", "))}`);
|
|
@@ -373,18 +347,17 @@ async function startAll(options, showUI = true) {
|
|
|
373
347
|
projectAlias: options.projectAlias,
|
|
374
348
|
});
|
|
375
349
|
await startEmulator(functionsEmulator);
|
|
376
|
-
const eventarcAddr =
|
|
350
|
+
const eventarcAddr = legacyGetFirstAddr(types_1.Emulators.EVENTARC);
|
|
377
351
|
const eventarcEmulator = new eventarcEmulator_1.EventarcEmulator({
|
|
378
352
|
host: eventarcAddr.host,
|
|
379
353
|
port: eventarcAddr.port,
|
|
380
354
|
});
|
|
381
355
|
await startEmulator(eventarcEmulator);
|
|
382
356
|
}
|
|
383
|
-
if (
|
|
357
|
+
if (listenForEmulator.firestore) {
|
|
384
358
|
const firestoreLogger = emulatorLogger_1.EmulatorLogger.forEmulator(types_1.Emulators.FIRESTORE);
|
|
385
|
-
const firestoreAddr =
|
|
386
|
-
const
|
|
387
|
-
const websocketPort = await getFirestoreWebSocketPort(firestoreAddr.host, portVal, types_1.Emulators.FIRESTORE);
|
|
359
|
+
const firestoreAddr = legacyGetFirstAddr(types_1.Emulators.FIRESTORE);
|
|
360
|
+
const websocketPort = legacyGetFirstAddr("firestore.websocket").port;
|
|
388
361
|
const args = {
|
|
389
362
|
host: firestoreAddr.host,
|
|
390
363
|
port: firestoreAddr.port,
|
|
@@ -404,7 +377,7 @@ async function startAll(options, showUI = true) {
|
|
|
404
377
|
});
|
|
405
378
|
}
|
|
406
379
|
const config = options.config;
|
|
407
|
-
const rulesLocalPath = (
|
|
380
|
+
const rulesLocalPath = (_g = config.src.firestore) === null || _g === void 0 ? void 0 : _g.rules;
|
|
408
381
|
let rulesFileFound = false;
|
|
409
382
|
if (rulesLocalPath) {
|
|
410
383
|
const rules = config.path(rulesLocalPath);
|
|
@@ -422,8 +395,7 @@ async function startAll(options, showUI = true) {
|
|
|
422
395
|
if (!rulesFileFound) {
|
|
423
396
|
firestoreLogger.logLabeled("WARN", "firestore", "The emulator will default to allowing all reads and writes. Learn more about this option: https://firebase.google.com/docs/emulator-suite/install_and_configure#security_rules_configuration.");
|
|
424
397
|
}
|
|
425
|
-
if (
|
|
426
|
-
((_e = options.config.src.emulators) === null || _e === void 0 ? void 0 : _e.singleProjectMode)) {
|
|
398
|
+
if (singleProjectModeEnabled) {
|
|
427
399
|
if (projectId) {
|
|
428
400
|
args.single_project_mode = true;
|
|
429
401
|
args.single_project_mode_error = false;
|
|
@@ -436,14 +408,15 @@ async function startAll(options, showUI = true) {
|
|
|
436
408
|
await startEmulator(firestoreEmulator);
|
|
437
409
|
firestoreLogger.logLabeled("SUCCESS", types_1.Emulators.FIRESTORE, `Firestore Emulator UI websocket is running on ${websocketPort}.`);
|
|
438
410
|
}
|
|
439
|
-
if (
|
|
411
|
+
if (listenForEmulator.database) {
|
|
440
412
|
const databaseLogger = emulatorLogger_1.EmulatorLogger.forEmulator(types_1.Emulators.DATABASE);
|
|
441
|
-
const databaseAddr =
|
|
413
|
+
const databaseAddr = legacyGetFirstAddr(types_1.Emulators.DATABASE);
|
|
442
414
|
const args = {
|
|
443
415
|
host: databaseAddr.host,
|
|
444
416
|
port: databaseAddr.port,
|
|
445
417
|
projectId,
|
|
446
418
|
auto_download: true,
|
|
419
|
+
single_project_mode: singleProjectModeEnabled ? "Warning" : undefined,
|
|
447
420
|
};
|
|
448
421
|
try {
|
|
449
422
|
if (!options.instance) {
|
|
@@ -486,15 +459,18 @@ async function startAll(options, showUI = true) {
|
|
|
486
459
|
}
|
|
487
460
|
}
|
|
488
461
|
}
|
|
489
|
-
if (
|
|
462
|
+
if (listenForEmulator.auth) {
|
|
490
463
|
if (!projectId) {
|
|
491
464
|
throw new error_1.FirebaseError(`Cannot start the ${constants_1.Constants.description(types_1.Emulators.AUTH)} without a project: run 'firebase init' or provide the --project flag`);
|
|
492
465
|
}
|
|
493
|
-
const authAddr =
|
|
466
|
+
const authAddr = legacyGetFirstAddr(types_1.Emulators.AUTH);
|
|
494
467
|
const authEmulator = new auth_1.AuthEmulator({
|
|
495
468
|
host: authAddr.host,
|
|
496
469
|
port: authAddr.port,
|
|
497
470
|
projectId,
|
|
471
|
+
singleProjectMode: singleProjectModeEnabled
|
|
472
|
+
? auth_1.SingleProjectMode.WARNING
|
|
473
|
+
: auth_1.SingleProjectMode.NO_WARNING,
|
|
498
474
|
});
|
|
499
475
|
await startEmulator(authEmulator);
|
|
500
476
|
if (exportMetadata.auth) {
|
|
@@ -504,11 +480,11 @@ async function startAll(options, showUI = true) {
|
|
|
504
480
|
await authEmulator.importData(authExportDir, projectId, { initiatedBy: "start" });
|
|
505
481
|
}
|
|
506
482
|
}
|
|
507
|
-
if (
|
|
483
|
+
if (listenForEmulator.pubsub) {
|
|
508
484
|
if (!projectId) {
|
|
509
485
|
throw new error_1.FirebaseError("Cannot start the Pub/Sub emulator without a project: run 'firebase init' or provide the --project flag");
|
|
510
486
|
}
|
|
511
|
-
const pubsubAddr =
|
|
487
|
+
const pubsubAddr = legacyGetFirstAddr(types_1.Emulators.PUBSUB);
|
|
512
488
|
const pubsubEmulator = new pubsubEmulator_1.PubsubEmulator({
|
|
513
489
|
host: pubsubAddr.host,
|
|
514
490
|
port: pubsubAddr.port,
|
|
@@ -517,8 +493,8 @@ async function startAll(options, showUI = true) {
|
|
|
517
493
|
});
|
|
518
494
|
await startEmulator(pubsubEmulator);
|
|
519
495
|
}
|
|
520
|
-
if (
|
|
521
|
-
const storageAddr =
|
|
496
|
+
if (listenForEmulator.storage) {
|
|
497
|
+
const storageAddr = legacyGetFirstAddr(types_1.Emulators.STORAGE);
|
|
522
498
|
const storageEmulator = new storage_1.StorageEmulator({
|
|
523
499
|
host: storageAddr.host,
|
|
524
500
|
port: storageAddr.port,
|
|
@@ -533,8 +509,8 @@ async function startAll(options, showUI = true) {
|
|
|
533
509
|
storageEmulator.storageLayer.import(storageExportDir, { initiatedBy: "start" });
|
|
534
510
|
}
|
|
535
511
|
}
|
|
536
|
-
if (
|
|
537
|
-
const hostingAddr =
|
|
512
|
+
if (listenForEmulator.hosting) {
|
|
513
|
+
const hostingAddr = legacyGetFirstAddr(types_1.Emulators.HOSTING);
|
|
538
514
|
const hostingEmulator = new hostingEmulator_1.HostingEmulator({
|
|
539
515
|
host: hostingAddr.host,
|
|
540
516
|
port: hostingAddr.port,
|
|
@@ -547,17 +523,20 @@ async function startAll(options, showUI = true) {
|
|
|
547
523
|
"products have an interaction layer in Emulator UI or it cannot " +
|
|
548
524
|
"determine the Project ID. Pass the --project flag to specify a project.");
|
|
549
525
|
}
|
|
550
|
-
if (
|
|
551
|
-
const loggingAddr =
|
|
526
|
+
if (listenForEmulator.logging) {
|
|
527
|
+
const loggingAddr = legacyGetFirstAddr(types_1.Emulators.LOGGING);
|
|
552
528
|
const loggingEmulator = new loggingEmulator_1.LoggingEmulator({
|
|
553
529
|
host: loggingAddr.host,
|
|
554
530
|
port: loggingAddr.port,
|
|
555
531
|
});
|
|
556
532
|
await startEmulator(loggingEmulator);
|
|
557
533
|
}
|
|
558
|
-
if (
|
|
559
|
-
const
|
|
560
|
-
|
|
534
|
+
if (listenForEmulator.ui) {
|
|
535
|
+
const ui = new ui_1.EmulatorUI({
|
|
536
|
+
projectId: projectId,
|
|
537
|
+
auto_download: true,
|
|
538
|
+
listen: listenForEmulator[types_1.Emulators.UI],
|
|
539
|
+
});
|
|
561
540
|
await startEmulator(ui);
|
|
562
541
|
}
|
|
563
542
|
let serviceEmulatorCount = 0;
|
|
@@ -579,6 +558,29 @@ async function startAll(options, showUI = true) {
|
|
|
579
558
|
return { deprecationNotices: [] };
|
|
580
559
|
}
|
|
581
560
|
exports.startAll = startAll;
|
|
561
|
+
function getListenConfig(options, emulator) {
|
|
562
|
+
var _a, _b, _c, _d;
|
|
563
|
+
let host = ((_b = (_a = options.config.src.emulators) === null || _a === void 0 ? void 0 : _a[emulator]) === null || _b === void 0 ? void 0 : _b.host) || constants_1.Constants.getDefaultHost();
|
|
564
|
+
if (host === "localhost" && utils.isRunningInWSL()) {
|
|
565
|
+
host = "127.0.0.1";
|
|
566
|
+
}
|
|
567
|
+
const portVal = (_d = (_c = options.config.src.emulators) === null || _c === void 0 ? void 0 : _c[emulator]) === null || _d === void 0 ? void 0 : _d.port;
|
|
568
|
+
let port;
|
|
569
|
+
let portFixed;
|
|
570
|
+
if (portVal) {
|
|
571
|
+
port = parseInt(`${portVal}`, 10);
|
|
572
|
+
portFixed = true;
|
|
573
|
+
}
|
|
574
|
+
else {
|
|
575
|
+
port = constants_1.Constants.getDefaultPort(emulator);
|
|
576
|
+
portFixed = !constants_1.FIND_AVAILBLE_PORT_BY_DEFAULT[emulator];
|
|
577
|
+
}
|
|
578
|
+
return {
|
|
579
|
+
host,
|
|
580
|
+
port,
|
|
581
|
+
portFixed,
|
|
582
|
+
};
|
|
583
|
+
}
|
|
582
584
|
async function exportEmulatorData(exportPath, options, initiatedBy) {
|
|
583
585
|
const projectId = options.project;
|
|
584
586
|
if (!projectId) {
|
|
@@ -588,14 +590,15 @@ async function exportEmulatorData(exportPath, options, initiatedBy) {
|
|
|
588
590
|
if (!hubClient.foundHub()) {
|
|
589
591
|
throw new error_1.FirebaseError(`Did not find any running emulators for project ${clc.bold(projectId)}.`, { exit: 1 });
|
|
590
592
|
}
|
|
593
|
+
let origin;
|
|
591
594
|
try {
|
|
592
|
-
await hubClient.getStatus();
|
|
595
|
+
origin = await hubClient.getStatus();
|
|
593
596
|
}
|
|
594
597
|
catch (e) {
|
|
595
598
|
const filePath = hub_1.EmulatorHub.getLocatorFilePath(projectId);
|
|
596
599
|
throw new error_1.FirebaseError(`The emulator hub for ${projectId} did not respond to a status check. If this error continues try shutting down all running emulators and deleting the file ${filePath}`, { exit: 1 });
|
|
597
600
|
}
|
|
598
|
-
utils.logBullet(`Found running emulator hub for project ${clc.bold(projectId)} at ${
|
|
601
|
+
utils.logBullet(`Found running emulator hub for project ${clc.bold(projectId)} at ${origin}`);
|
|
599
602
|
const exportAbsPath = path.resolve(exportPath);
|
|
600
603
|
if (!fs.existsSync(exportAbsPath)) {
|
|
601
604
|
utils.logBullet(`Creating export directory ${exportAbsPath}`);
|
|
@@ -628,4 +631,3 @@ async function exportEmulatorData(exportPath, options, initiatedBy) {
|
|
|
628
631
|
utils.logSuccess("Export complete");
|
|
629
632
|
}
|
|
630
633
|
exports.exportEmulatorData = exportEmulatorData;
|
|
631
|
-
//# sourceMappingURL=controller.js.map
|
|
@@ -13,7 +13,7 @@ const registry_1 = require("./registry");
|
|
|
13
13
|
const emulatorLogger_1 = require("./emulatorLogger");
|
|
14
14
|
const error_1 = require("../error");
|
|
15
15
|
const parseBoltRules_1 = require("../parseBoltRules");
|
|
16
|
-
const
|
|
16
|
+
const utils_1 = require("../utils");
|
|
17
17
|
class DatabaseEmulator {
|
|
18
18
|
constructor(args) {
|
|
19
19
|
this.args = args;
|
|
@@ -94,7 +94,7 @@ class DatabaseEmulator {
|
|
|
94
94
|
await new Promise((resolve, reject) => {
|
|
95
95
|
const req = http.request({
|
|
96
96
|
method: "PUT",
|
|
97
|
-
host,
|
|
97
|
+
host: (0, utils_1.connectableHostname)(host),
|
|
98
98
|
port,
|
|
99
99
|
path: `/.json?ns=${ns}&disableTriggers=true&writeSizeLimit=unlimited`,
|
|
100
100
|
headers: {
|
|
@@ -127,13 +127,8 @@ class DatabaseEmulator {
|
|
|
127
127
|
const content = rulesExt === ".bolt"
|
|
128
128
|
? (0, parseBoltRules_1.parseBoltRules)(rulesPath).toString()
|
|
129
129
|
: fs.readFileSync(rulesPath, "utf8");
|
|
130
|
-
const info = this.getInfo();
|
|
131
130
|
try {
|
|
132
|
-
|
|
133
|
-
urlPrefix: `http://${registry_1.EmulatorRegistry.getInfoHostString(info)}`,
|
|
134
|
-
auth: false,
|
|
135
|
-
});
|
|
136
|
-
await client.put(`/.settings/rules.json`, content, {
|
|
131
|
+
await registry_1.EmulatorRegistry.client(types_1.Emulators.DATABASE).put(`/.settings/rules.json`, content, {
|
|
137
132
|
headers: { Authorization: "Bearer owner" },
|
|
138
133
|
queryParams: { ns: instance },
|
|
139
134
|
});
|
|
@@ -175,4 +170,3 @@ class DatabaseEmulator {
|
|
|
175
170
|
}
|
|
176
171
|
}
|
|
177
172
|
exports.DatabaseEmulator = DatabaseEmulator;
|
|
178
|
-
//# sourceMappingURL=databaseEmulator.js.map
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Resolver = exports.IPV6_UNSPECIFIED = exports.IPV4_UNSPECIFIED = exports.IPV6_LOOPBACK = exports.IPV4_LOOPBACK = void 0;
|
|
4
|
+
const node_dns_1 = require("node:dns");
|
|
5
|
+
const node_net_1 = require("node:net");
|
|
6
|
+
const logger_1 = require("../logger");
|
|
7
|
+
exports.IPV4_LOOPBACK = { address: "127.0.0.1", family: 4 };
|
|
8
|
+
exports.IPV6_LOOPBACK = { address: "::1", family: 6 };
|
|
9
|
+
exports.IPV4_UNSPECIFIED = { address: "0.0.0.0", family: 4 };
|
|
10
|
+
exports.IPV6_UNSPECIFIED = { address: "::", family: 6 };
|
|
11
|
+
class Resolver {
|
|
12
|
+
constructor(lookup = node_dns_1.promises.lookup) {
|
|
13
|
+
this.lookup = lookup;
|
|
14
|
+
this.cache = new Map([
|
|
15
|
+
["localhost", [exports.IPV4_LOOPBACK, exports.IPV6_LOOPBACK]],
|
|
16
|
+
]);
|
|
17
|
+
}
|
|
18
|
+
async lookupFirst(hostname) {
|
|
19
|
+
const addresses = await this.lookupAll(hostname);
|
|
20
|
+
if (addresses.length === 1) {
|
|
21
|
+
return addresses[0];
|
|
22
|
+
}
|
|
23
|
+
const result = addresses[0];
|
|
24
|
+
const discarded = [];
|
|
25
|
+
for (let i = 1; i < addresses.length; i++) {
|
|
26
|
+
discarded.push(result.address);
|
|
27
|
+
}
|
|
28
|
+
logger_1.logger.debug(`Resolved hostname "${hostname}" to the first result "${result.address}" (ignoring candidates: ${discarded.join(",")}).`);
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
async lookupAll(hostname) {
|
|
32
|
+
const family = (0, node_net_1.isIP)(hostname);
|
|
33
|
+
if (family > 0) {
|
|
34
|
+
return [{ family, address: hostname }];
|
|
35
|
+
}
|
|
36
|
+
const cached = this.cache.get(hostname);
|
|
37
|
+
if (cached) {
|
|
38
|
+
return cached;
|
|
39
|
+
}
|
|
40
|
+
const addresses = await this.lookup(hostname, {
|
|
41
|
+
verbatim: false,
|
|
42
|
+
all: true,
|
|
43
|
+
});
|
|
44
|
+
this.cache.set(hostname, addresses);
|
|
45
|
+
return addresses;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.Resolver = Resolver;
|
|
49
|
+
Resolver.DEFAULT = new Resolver();
|
package/lib/emulator/download.js
CHANGED
|
@@ -18,13 +18,13 @@ const EMULATOR_INSTANCE_KILL_TIMEOUT = 4000;
|
|
|
18
18
|
const CACHE_DIR = process.env.FIREBASE_EMULATORS_PATH || path.join(os.homedir(), ".cache", "firebase", "emulators");
|
|
19
19
|
exports.DownloadDetails = {
|
|
20
20
|
database: {
|
|
21
|
-
downloadPath: path.join(CACHE_DIR, "firebase-database-emulator-v4.
|
|
22
|
-
version: "4.
|
|
21
|
+
downloadPath: path.join(CACHE_DIR, "firebase-database-emulator-v4.10.0.jar"),
|
|
22
|
+
version: "4.10.0",
|
|
23
23
|
opts: {
|
|
24
24
|
cacheDir: CACHE_DIR,
|
|
25
|
-
remoteUrl: "https://storage.googleapis.com/firebase-preview-drop/emulator/firebase-database-emulator-v4.
|
|
26
|
-
expectedSize:
|
|
27
|
-
expectedChecksum: "
|
|
25
|
+
remoteUrl: "https://storage.googleapis.com/firebase-preview-drop/emulator/firebase-database-emulator-v4.10.0.jar",
|
|
26
|
+
expectedSize: 34230230,
|
|
27
|
+
expectedChecksum: "e99b23f0e723813de4f4ea0e879b46b0",
|
|
28
28
|
namePrefix: "firebase-database-emulator",
|
|
29
29
|
},
|
|
30
30
|
},
|
|
@@ -67,15 +67,15 @@ exports.DownloadDetails = {
|
|
|
67
67
|
},
|
|
68
68
|
}
|
|
69
69
|
: {
|
|
70
|
-
version: "1.
|
|
71
|
-
downloadPath: path.join(CACHE_DIR, "ui-v1.
|
|
72
|
-
unzipDir: path.join(CACHE_DIR, "ui-v1.
|
|
73
|
-
binaryPath: path.join(CACHE_DIR, "ui-v1.
|
|
70
|
+
version: "1.11.1",
|
|
71
|
+
downloadPath: path.join(CACHE_DIR, "ui-v1.11.1.zip"),
|
|
72
|
+
unzipDir: path.join(CACHE_DIR, "ui-v1.11.1"),
|
|
73
|
+
binaryPath: path.join(CACHE_DIR, "ui-v1.11.1", "server", "server.js"),
|
|
74
74
|
opts: {
|
|
75
75
|
cacheDir: CACHE_DIR,
|
|
76
|
-
remoteUrl: "https://storage.googleapis.com/firebase-preview-drop/emulator/ui-v1.
|
|
77
|
-
expectedSize:
|
|
78
|
-
expectedChecksum: "
|
|
76
|
+
remoteUrl: "https://storage.googleapis.com/firebase-preview-drop/emulator/ui-v1.11.1.zip",
|
|
77
|
+
expectedSize: 3061713,
|
|
78
|
+
expectedChecksum: "a4944414518be206280b495f526f18bf",
|
|
79
79
|
namePrefix: "ui",
|
|
80
80
|
},
|
|
81
81
|
},
|
|
@@ -124,7 +124,13 @@ const Commands = {
|
|
|
124
124
|
database: {
|
|
125
125
|
binary: "java",
|
|
126
126
|
args: ["-Duser.language=en", "-jar", getExecPath(types_1.Emulators.DATABASE)],
|
|
127
|
-
optionalArgs: [
|
|
127
|
+
optionalArgs: [
|
|
128
|
+
"port",
|
|
129
|
+
"host",
|
|
130
|
+
"functions_emulator_port",
|
|
131
|
+
"functions_emulator_host",
|
|
132
|
+
"single_project_mode",
|
|
133
|
+
],
|
|
128
134
|
joinArgs: false,
|
|
129
135
|
},
|
|
130
136
|
firestore: {
|
|
@@ -361,4 +367,3 @@ async function start(targetName, args, extraEnv = {}) {
|
|
|
361
367
|
return _runBinary(emulator, command, extraEnv);
|
|
362
368
|
}
|
|
363
369
|
exports.start = start;
|
|
364
|
-
//# sourceMappingURL=downloadableEmulators.js.map
|
|
@@ -4,6 +4,7 @@ exports.EmulatorLogger = exports.Verbosity = void 0;
|
|
|
4
4
|
const clc = require("colorette");
|
|
5
5
|
const utils = require("../utils");
|
|
6
6
|
const logger_1 = require("../logger");
|
|
7
|
+
const types_1 = require("./types");
|
|
7
8
|
const utils_1 = require("../utils");
|
|
8
9
|
const TYPE_VERBOSITY = {
|
|
9
10
|
DEBUG: 0,
|
|
@@ -22,11 +23,12 @@ var Verbosity;
|
|
|
22
23
|
Verbosity[Verbosity["QUIET"] = 2] = "QUIET";
|
|
23
24
|
})(Verbosity = exports.Verbosity || (exports.Verbosity = {}));
|
|
24
25
|
class EmulatorLogger {
|
|
25
|
-
constructor(data = {}) {
|
|
26
|
+
constructor(name, data = {}) {
|
|
27
|
+
this.name = name;
|
|
26
28
|
this.data = data;
|
|
27
29
|
}
|
|
28
30
|
static forEmulator(emulator) {
|
|
29
|
-
return new EmulatorLogger({
|
|
31
|
+
return new EmulatorLogger(emulator, {
|
|
30
32
|
metadata: {
|
|
31
33
|
emulator: {
|
|
32
34
|
name: emulator,
|
|
@@ -35,10 +37,10 @@ class EmulatorLogger {
|
|
|
35
37
|
});
|
|
36
38
|
}
|
|
37
39
|
static forFunction(functionName, extensionLogInfo) {
|
|
38
|
-
return new EmulatorLogger({
|
|
40
|
+
return new EmulatorLogger(types_1.Emulators.FUNCTIONS, {
|
|
39
41
|
metadata: {
|
|
40
42
|
emulator: {
|
|
41
|
-
name:
|
|
43
|
+
name: types_1.Emulators.FUNCTIONS,
|
|
42
44
|
},
|
|
43
45
|
function: {
|
|
44
46
|
name: functionName,
|
|
@@ -48,10 +50,10 @@ class EmulatorLogger {
|
|
|
48
50
|
});
|
|
49
51
|
}
|
|
50
52
|
static forExtension(extensionLogInfo) {
|
|
51
|
-
return new EmulatorLogger({
|
|
53
|
+
return new EmulatorLogger(types_1.Emulators.EXTENSIONS, {
|
|
52
54
|
metadata: {
|
|
53
55
|
emulator: {
|
|
54
|
-
name:
|
|
56
|
+
name: types_1.Emulators.EXTENSIONS,
|
|
55
57
|
},
|
|
56
58
|
extension: extensionLogInfo,
|
|
57
59
|
},
|
|
@@ -186,7 +188,12 @@ You can probably fix this by running "npm install ${systemLog.data.name}@latest"
|
|
|
186
188
|
default:
|
|
187
189
|
}
|
|
188
190
|
}
|
|
189
|
-
logLabeled(type,
|
|
191
|
+
logLabeled(type, labelOrText, text) {
|
|
192
|
+
let label = labelOrText;
|
|
193
|
+
if (text === undefined) {
|
|
194
|
+
text = label;
|
|
195
|
+
label = this.name;
|
|
196
|
+
}
|
|
190
197
|
if (EmulatorLogger.shouldSupress(type)) {
|
|
191
198
|
logger_1.logger.debug(`[${label}] ${text}`);
|
|
192
199
|
return;
|
|
@@ -224,4 +231,3 @@ You can probably fix this by running "npm install ${systemLog.data.name}@latest"
|
|
|
224
231
|
exports.EmulatorLogger = EmulatorLogger;
|
|
225
232
|
EmulatorLogger.verbosity = Verbosity.DEBUG;
|
|
226
233
|
EmulatorLogger.warnOnceCache = new Set();
|
|
227
|
-
//# sourceMappingURL=emulatorLogger.js.map
|