firebase-tools 13.25.0 → 13.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/appdistribution/client.js +62 -8
- package/lib/appdistribution/distribution.js +1 -1
- package/lib/apphosting/backend.js +4 -4
- package/lib/apphosting/config.js +2 -10
- package/lib/apphosting/secrets/index.js +7 -7
- package/lib/archiveDirectory.js +1 -1
- package/lib/auth.js +1 -1
- package/lib/command.js +9 -1
- package/lib/commands/appdistribution-distribute.js +4 -4
- package/lib/commands/{appdistribution-group-create.js → appdistribution-groups-create.js} +2 -1
- package/lib/commands/{appdistribution-group-delete.js → appdistribution-groups-delete.js} +3 -2
- package/lib/commands/appdistribution-groups-list.js +56 -0
- package/lib/commands/appdistribution-testers-list.js +54 -0
- package/lib/commands/appdistribution-testers-remove.js +1 -1
- package/lib/commands/apphosting-backends-delete.js +3 -1
- package/lib/commands/apphosting-backends-get.js +1 -1
- package/lib/commands/database-import.js +4 -2
- package/lib/commands/database-push.js +4 -2
- package/lib/commands/database-set.js +4 -2
- package/lib/commands/database-settings-get.js +1 -1
- package/lib/commands/database-settings-set.js +1 -1
- package/lib/commands/ext-dev-init.js +2 -2
- package/lib/commands/ext-dev-list.js +1 -1
- package/lib/commands/ext-dev-register.js +2 -2
- package/lib/commands/ext-dev-upload.js +2 -2
- package/lib/commands/ext-dev-usage.js +2 -2
- package/lib/commands/ext-install.js +2 -2
- package/lib/commands/index.js +5 -2
- package/lib/commands/use.js +1 -1
- package/lib/deploy/extensions/deploy.js +3 -1
- package/lib/deploy/extensions/deploymentSummary.js +4 -1
- package/lib/deploy/extensions/planner.js +14 -3
- package/lib/deploy/extensions/prepare.js +9 -9
- package/lib/deploy/functions/ensure.js +1 -1
- package/lib/deploy/lifecycleHooks.js +2 -1
- package/lib/emulator/apphosting/config.js +13 -3
- package/lib/emulator/apphosting/index.js +1 -0
- package/lib/emulator/apphosting/serve.js +9 -7
- package/lib/emulator/controller.js +1 -1
- package/lib/emulator/downloadableEmulators.js +11 -11
- package/lib/emulator/hub.js +10 -7
- package/lib/emulator/ui.js +47 -25
- package/lib/error.js +8 -1
- package/lib/getProjectNumber.js +1 -1
- package/lib/init/features/project.js +7 -6
- package/lib/logger.js +2 -2
- package/lib/management/projects.js +24 -4
- package/lib/projectUtils.js +1 -1
- package/lib/requireDatabaseInstance.js +1 -1
- package/lib/requirePermissions.js +1 -1
- package/lib/rulesDeploy.js +1 -1
- package/lib/templates.js +2 -2
- package/lib/utils.js +5 -8
- package/lib/vsCodeUtils.js +8 -0
- package/package.json +2 -2
- package/schema/firebase-config.json +3 -0
package/lib/projectUtils.js
CHANGED
|
@@ -43,7 +43,7 @@ async function needProjectNumber(options) {
|
|
|
43
43
|
return options.projectNumber;
|
|
44
44
|
}
|
|
45
45
|
const projectId = needProjectId(options);
|
|
46
|
-
const metadata = await (0, projects_1.
|
|
46
|
+
const metadata = await (0, projects_1.getProject)(projectId);
|
|
47
47
|
options.projectNumber = metadata.projectNumber;
|
|
48
48
|
return options.projectNumber;
|
|
49
49
|
}
|
|
@@ -15,7 +15,7 @@ async function requireDatabaseInstance(options) {
|
|
|
15
15
|
}
|
|
16
16
|
catch (err) {
|
|
17
17
|
throw new error_1.FirebaseError(`Failed to get details for project: ${options.project}.`, {
|
|
18
|
-
original: err,
|
|
18
|
+
original: (0, error_1.getError)(err),
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
21
|
if (instance === "") {
|
|
@@ -23,7 +23,7 @@ async function requirePermissions(options, permissions = []) {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
catch (err) {
|
|
26
|
-
logger_1.logger.debug(`[iam] error while checking permissions, command may fail: ${err}`);
|
|
26
|
+
logger_1.logger.debug(`[iam] error while checking permissions, command may fail: ${(0, error_1.getErrMsg)(err)}`);
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
29
|
}
|
package/lib/rulesDeploy.js
CHANGED
|
@@ -113,7 +113,7 @@ class RulesDeploy {
|
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
115
|
catch (err) {
|
|
116
|
-
if (err
|
|
116
|
+
if ((0, error_1.getErrStatus)(err) !== QUOTA_EXCEEDED_STATUS_CODE) {
|
|
117
117
|
throw err;
|
|
118
118
|
}
|
|
119
119
|
utils.logLabeledBullet(RulesetType[this.type], "quota exceeded error while uploading rules");
|
package/lib/templates.js
CHANGED
|
@@ -4,10 +4,10 @@ exports.readTemplate = exports.readTemplateSync = exports.absoluteTemplateFilePa
|
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
const promises_1 = require("fs/promises");
|
|
6
6
|
const path_1 = require("path");
|
|
7
|
-
const
|
|
7
|
+
const vsCodeUtils_1 = require("./vsCodeUtils");
|
|
8
8
|
const TEMPLATE_ENCODING = "utf8";
|
|
9
9
|
function absoluteTemplateFilePath(relPath) {
|
|
10
|
-
if ((0,
|
|
10
|
+
if ((0, vsCodeUtils_1.isVSCodeExtension)()) {
|
|
11
11
|
return (0, path_1.resolve)(__dirname, "templates", relPath);
|
|
12
12
|
}
|
|
13
13
|
return (0, path_1.resolve)(__dirname, "../templates", relPath);
|
package/lib/utils.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.connectableHostname = exports.randomInt = exports.debounce = exports.last = exports.cloneDeep = exports.groupBy = exports.assertIsStringOrUndefined = exports.assertIsNumber = exports.assertIsString = exports.thirtyDaysFromNow = exports.isRunningInWSL = exports.
|
|
4
|
-
exports.readSecretValue = exports.generateId = exports.wrappedSafeLoad = exports.readFileFromDirectory = exports.getHostnameFromUrl = exports.openInBrowserPopup =
|
|
3
|
+
exports.openInBrowser = exports.connectableHostname = exports.randomInt = exports.debounce = exports.last = exports.cloneDeep = exports.groupBy = exports.assertIsStringOrUndefined = exports.assertIsNumber = exports.assertIsString = exports.thirtyDaysFromNow = exports.isRunningInWSL = exports.isCloudEnvironment = exports.datetimeString = exports.createDestroyer = exports.sleep = exports.promiseWithSpinner = exports.setupLoggers = exports.tryParse = exports.tryStringify = exports.promiseProps = exports.withTimeout = exports.promiseWhile = exports.promiseAllSettled = exports.getFunctionsEventProvider = exports.endpoint = exports.makeActiveProject = exports.streamToString = exports.stringToStream = exports.explainStdin = exports.allSettled = exports.reject = exports.logLabeledError = exports.logLabeledWarning = exports.logWarning = exports.logLabeledBullet = exports.logBullet = exports.logLabeledSuccess = exports.logSuccess = exports.addSubdomain = exports.addDatabaseNamespace = exports.getDatabaseViewDataUrl = exports.getDatabaseUrl = exports.envOverride = exports.setVSCodeEnvVars = exports.getInheritedOption = exports.consoleUrl = exports.vscodeEnvVars = exports.envOverrides = exports.IS_WINDOWS = void 0;
|
|
4
|
+
exports.readSecretValue = exports.generateId = exports.wrappedSafeLoad = exports.readFileFromDirectory = exports.getHostnameFromUrl = exports.openInBrowserPopup = void 0;
|
|
5
5
|
const fs = require("fs-extra");
|
|
6
6
|
const tty = require("tty");
|
|
7
7
|
const path = require("node:path");
|
|
@@ -24,6 +24,7 @@ const error_1 = require("./error");
|
|
|
24
24
|
const logger_1 = require("./logger");
|
|
25
25
|
const prompt_1 = require("./prompt");
|
|
26
26
|
const templates_1 = require("./templates");
|
|
27
|
+
const vsCodeUtils_1 = require("./vsCodeUtils");
|
|
27
28
|
exports.IS_WINDOWS = process.platform === "win32";
|
|
28
29
|
const SUCCESS_CHAR = exports.IS_WINDOWS ? "+" : "✔";
|
|
29
30
|
const WARNING_CHAR = exports.IS_WINDOWS ? "!" : "⚠";
|
|
@@ -51,7 +52,7 @@ function setVSCodeEnvVars(envVar, value) {
|
|
|
51
52
|
}
|
|
52
53
|
exports.setVSCodeEnvVars = setVSCodeEnvVars;
|
|
53
54
|
function envOverride(envname, value, coerce) {
|
|
54
|
-
const currentEnvValue = isVSCodeExtension() && exports.vscodeEnvVars[envname] ? exports.vscodeEnvVars[envname] : process.env[envname];
|
|
55
|
+
const currentEnvValue = (0, vsCodeUtils_1.isVSCodeExtension)() && exports.vscodeEnvVars[envname] ? exports.vscodeEnvVars[envname] : process.env[envname];
|
|
55
56
|
if (currentEnvValue && currentEnvValue.length) {
|
|
56
57
|
exports.envOverrides.push(envname);
|
|
57
58
|
if (coerce) {
|
|
@@ -385,10 +386,6 @@ function isCloudEnvironment() {
|
|
|
385
386
|
return !!process.env.CODESPACES || !!process.env.GOOGLE_CLOUD_WORKSTATIONS;
|
|
386
387
|
}
|
|
387
388
|
exports.isCloudEnvironment = isCloudEnvironment;
|
|
388
|
-
function isVSCodeExtension() {
|
|
389
|
-
return !!process.env.VSCODE_CWD;
|
|
390
|
-
}
|
|
391
|
-
exports.isVSCodeExtension = isVSCodeExtension;
|
|
392
389
|
function isRunningInWSL() {
|
|
393
390
|
return !!process.env.WSL_DISTRO_NAME;
|
|
394
391
|
}
|
|
@@ -563,7 +560,7 @@ function wrappedSafeLoad(source) {
|
|
|
563
560
|
return yaml.parse(source);
|
|
564
561
|
}
|
|
565
562
|
catch (err) {
|
|
566
|
-
throw new error_1.FirebaseError(`YAML Error: ${err
|
|
563
|
+
throw new error_1.FirebaseError(`YAML Error: ${(0, error_1.getErrMsg)(err)}`, { original: (0, error_1.getError)(err) });
|
|
567
564
|
}
|
|
568
565
|
}
|
|
569
566
|
exports.wrappedSafeLoad = wrappedSafeLoad;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isVSCodeExtension = void 0;
|
|
4
|
+
const process_1 = require("process");
|
|
5
|
+
function isVSCodeExtension() {
|
|
6
|
+
return !!process_1.env.VSCODE_CWD;
|
|
7
|
+
}
|
|
8
|
+
exports.isVSCodeExtension = isVSCodeExtension;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "firebase-tools",
|
|
3
|
-
"version": "13.
|
|
3
|
+
"version": "13.26.0",
|
|
4
4
|
"description": "Command-Line Interface for Firebase",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
"cjson": "^0.3.1",
|
|
73
73
|
"cli-table": "0.3.11",
|
|
74
74
|
"colorette": "^2.0.19",
|
|
75
|
-
"commander": "^
|
|
75
|
+
"commander": "^5.1.0",
|
|
76
76
|
"configstore": "^5.0.1",
|
|
77
77
|
"cors": "^2.8.5",
|
|
78
78
|
"cross-env": "^5.1.3",
|