@google/clasp 2.4.2 → 3.0.0-alpha1
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/README.md +253 -196
- package/build/src/auth/auth.js +176 -0
- package/build/src/auth/auth_code_flow.js +36 -0
- package/build/src/auth/credential_store.js +1 -0
- package/build/src/auth/file_credential_store.js +82 -0
- package/build/src/auth/localhost_auth_code_flow.js +62 -0
- package/build/src/auth/serverless_auth_code_flow.js +32 -0
- package/build/src/commands/clone-script.js +71 -0
- package/build/src/commands/create-deployment.js +33 -0
- package/build/src/commands/create-script.js +75 -0
- package/build/src/commands/create-version.js +31 -0
- package/build/src/commands/delete-deployment.js +71 -0
- package/build/src/commands/disable-api.js +19 -0
- package/build/src/commands/enable-api.js +31 -0
- package/build/src/commands/list-apis.js +23 -0
- package/build/src/commands/list-deployments.js +30 -0
- package/build/src/commands/list-scripts.js +28 -0
- package/build/src/commands/list-versions.js +29 -0
- package/build/src/commands/login.js +54 -53
- package/build/src/commands/logout.js +15 -15
- package/build/src/commands/open-apis.js +11 -0
- package/build/src/commands/open-container.js +15 -0
- package/build/src/commands/open-credentials.js +11 -0
- package/build/src/commands/open-logs.js +11 -0
- package/build/src/commands/open-script.js +18 -0
- package/build/src/commands/open-webapp.js +56 -0
- package/build/src/commands/program.js +108 -0
- package/build/src/commands/pull.js +19 -18
- package/build/src/commands/push.js +64 -74
- package/build/src/commands/run-function.js +61 -0
- package/build/src/commands/setup-logs.js +12 -0
- package/build/src/commands/show-authorized-user.js +18 -0
- package/build/src/commands/show-file-status.js +34 -0
- package/build/src/commands/tail-logs.js +92 -0
- package/build/src/commands/utils.js +82 -0
- package/build/src/constants.js +0 -3
- package/build/src/{apis.js → core/apis.js} +90 -92
- package/build/src/core/clasp.js +171 -0
- package/build/src/core/files.js +359 -0
- package/build/src/core/functions.js +51 -0
- package/build/src/core/logs.js +41 -0
- package/build/src/core/manifest.js +1 -0
- package/build/src/core/project.js +313 -0
- package/build/src/core/services.js +179 -0
- package/build/src/core/utils.js +121 -0
- package/build/src/index.js +16 -354
- package/build/src/intl.js +34 -0
- package/docs/README.md +1 -4
- package/docs/config-files.md +4 -5
- package/docs/run.md +26 -7
- package/package.json +87 -51
- package/CHANGELOG.md +0 -66
- package/build/src/apis.d.ts +0 -34
- package/build/src/apis.js.map +0 -1
- package/build/src/apiutils.d.ts +0 -16
- package/build/src/apiutils.js +0 -81
- package/build/src/apiutils.js.map +0 -1
- package/build/src/auth.d.ts +0 -34
- package/build/src/auth.js +0 -295
- package/build/src/auth.js.map +0 -1
- package/build/src/clasp-error.d.ts +0 -3
- package/build/src/clasp-error.js +0 -10
- package/build/src/clasp-error.js.map +0 -1
- package/build/src/commands/apis.d.ts +0 -10
- package/build/src/commands/apis.js +0 -91
- package/build/src/commands/apis.js.map +0 -1
- package/build/src/commands/clone.d.ts +0 -13
- package/build/src/commands/clone.js +0 -59
- package/build/src/commands/clone.js.map +0 -1
- package/build/src/commands/create.d.ts +0 -16
- package/build/src/commands/create.js +0 -81
- package/build/src/commands/create.js.map +0 -1
- package/build/src/commands/default.d.ts +0 -8
- package/build/src/commands/default.js +0 -10
- package/build/src/commands/default.js.map +0 -1
- package/build/src/commands/deploy.d.ts +0 -13
- package/build/src/commands/deploy.js +0 -51
- package/build/src/commands/deploy.js.map +0 -1
- package/build/src/commands/deployments.d.ts +0 -5
- package/build/src/commands/deployments.js +0 -29
- package/build/src/commands/deployments.js.map +0 -1
- package/build/src/commands/list.d.ts +0 -9
- package/build/src/commands/list.js +0 -34
- package/build/src/commands/list.js.map +0 -1
- package/build/src/commands/login.d.ts +0 -14
- package/build/src/commands/login.js.map +0 -1
- package/build/src/commands/logout.d.ts +0 -5
- package/build/src/commands/logout.js.map +0 -1
- package/build/src/commands/logs.d.ts +0 -17
- package/build/src/commands/logs.js +0 -181
- package/build/src/commands/logs.js.map +0 -1
- package/build/src/commands/open.d.ts +0 -15
- package/build/src/commands/open.js +0 -89
- package/build/src/commands/open.js.map +0 -1
- package/build/src/commands/pull.d.ts +0 -10
- package/build/src/commands/pull.js.map +0 -1
- package/build/src/commands/push.d.ts +0 -11
- package/build/src/commands/push.js.map +0 -1
- package/build/src/commands/run.d.ts +0 -14
- package/build/src/commands/run.js +0 -130
- package/build/src/commands/run.js.map +0 -1
- package/build/src/commands/setting.d.ts +0 -8
- package/build/src/commands/setting.js +0 -53
- package/build/src/commands/setting.js.map +0 -1
- package/build/src/commands/status.d.ts +0 -9
- package/build/src/commands/status.js +0 -25
- package/build/src/commands/status.js.map +0 -1
- package/build/src/commands/undeploy.d.ts +0 -9
- package/build/src/commands/undeploy.js +0 -55
- package/build/src/commands/undeploy.js.map +0 -1
- package/build/src/commands/version.d.ts +0 -5
- package/build/src/commands/version.js +0 -22
- package/build/src/commands/version.js.map +0 -1
- package/build/src/commands/versions.d.ts +0 -5
- package/build/src/commands/versions.js +0 -41
- package/build/src/commands/versions.js.map +0 -1
- package/build/src/conf.d.ts +0 -40
- package/build/src/conf.js +0 -100
- package/build/src/conf.js.map +0 -1
- package/build/src/constants.d.ts +0 -6
- package/build/src/constants.js.map +0 -1
- package/build/src/dotfile.d.ts +0 -50
- package/build/src/dotfile.js +0 -71
- package/build/src/dotfile.js.map +0 -1
- package/build/src/files.d.ts +0 -70
- package/build/src/files.js +0 -318
- package/build/src/files.js.map +0 -1
- package/build/src/index.d.ts +0 -18
- package/build/src/index.js.map +0 -1
- package/build/src/inquirer.d.ts +0 -82
- package/build/src/inquirer.js +0 -111
- package/build/src/inquirer.js.map +0 -1
- package/build/src/manifest.d.ts +0 -123
- package/build/src/manifest.js +0 -142
- package/build/src/manifest.js.map +0 -1
- package/build/src/messages.d.ts +0 -110
- package/build/src/messages.js +0 -161
- package/build/src/messages.js.map +0 -1
- package/build/src/urls.d.ts +0 -21
- package/build/src/urls.js +0 -33
- package/build/src/urls.js.map +0 -1
- package/build/src/utils.d.ts +0 -102
- package/build/src/utils.js +0 -232
- package/build/src/utils.js.map +0 -1
- package/docs/develop.md +0 -81
- package/docs/esmodules.md +0 -81
- package/docs/running-locally.md +0 -31
- package/docs/settings.md +0 -56
- package/docs/typescript.md +0 -354
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/commands/default.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAC,KAAK,EAAC,MAAM,gBAAgB,CAAC;AAErC;;;GAGG;AACH,eAAe,KAAK,EAAE,CAAU,EAAE,OAA8B,EAAiB,EAAE;IACjF,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
interface CommandOption {
|
|
2
|
-
readonly versionNumber?: number;
|
|
3
|
-
readonly description?: string;
|
|
4
|
-
readonly deploymentId?: string;
|
|
5
|
-
}
|
|
6
|
-
declare const _default: (options: CommandOption) => Promise<void>;
|
|
7
|
-
/**
|
|
8
|
-
* Deploys an Apps Script project.
|
|
9
|
-
* @param options.versionNumber {string} The project version to deploy at.
|
|
10
|
-
* @param options.description {string} The deployment description.
|
|
11
|
-
* @param options.deploymentId {string} The deployment ID to redeploy.
|
|
12
|
-
*/
|
|
13
|
-
export default _default;
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { loadAPICredentials, script } from '../auth.js';
|
|
2
|
-
import { ClaspError } from '../clasp-error.js';
|
|
3
|
-
import { PROJECT_MANIFEST_BASENAME as manifestFileName } from '../constants.js';
|
|
4
|
-
import { ERROR, LOG } from '../messages.js';
|
|
5
|
-
import { getProjectSettings, spinner, stopSpinner } from '../utils.js';
|
|
6
|
-
/**
|
|
7
|
-
* Deploys an Apps Script project.
|
|
8
|
-
* @param options.versionNumber {string} The project version to deploy at.
|
|
9
|
-
* @param options.description {string} The deployment description.
|
|
10
|
-
* @param options.deploymentId {string} The deployment ID to redeploy.
|
|
11
|
-
*/
|
|
12
|
-
export default async (options) => {
|
|
13
|
-
await loadAPICredentials();
|
|
14
|
-
const { scriptId } = await getProjectSettings();
|
|
15
|
-
if (!scriptId) {
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
spinner.start(LOG.DEPLOYMENT_START(scriptId));
|
|
19
|
-
let { versionNumber } = options;
|
|
20
|
-
const { deploymentId, description = '' } = options;
|
|
21
|
-
// If no version, create a new version
|
|
22
|
-
if (!versionNumber) {
|
|
23
|
-
const { data: { versionNumber: newVersionNumber }, status, } = await script.projects.versions.create({ requestBody: { description }, scriptId });
|
|
24
|
-
if (status !== 200) {
|
|
25
|
-
throw new ClaspError(ERROR.ONE_DEPLOYMENT_CREATE);
|
|
26
|
-
}
|
|
27
|
-
stopSpinner();
|
|
28
|
-
versionNumber = newVersionNumber !== null && newVersionNumber !== void 0 ? newVersionNumber : 0;
|
|
29
|
-
console.log(LOG.VERSION_CREATED(versionNumber));
|
|
30
|
-
}
|
|
31
|
-
spinner.start(LOG.DEPLOYMENT_CREATE);
|
|
32
|
-
const deploymentConfig = { description, manifestFileName, versionNumber };
|
|
33
|
-
// If no deploymentId, create a new deployment
|
|
34
|
-
// Else, update deployment
|
|
35
|
-
const { data: { deploymentId: newDeploymentId }, status, } = deploymentId
|
|
36
|
-
? await script.projects.deployments.update({
|
|
37
|
-
scriptId,
|
|
38
|
-
deploymentId,
|
|
39
|
-
requestBody: { deploymentConfig },
|
|
40
|
-
})
|
|
41
|
-
: await script.projects.deployments.create({
|
|
42
|
-
scriptId,
|
|
43
|
-
requestBody: deploymentConfig,
|
|
44
|
-
});
|
|
45
|
-
if (status !== 200) {
|
|
46
|
-
throw new ClaspError(ERROR.DEPLOYMENT_COUNT);
|
|
47
|
-
}
|
|
48
|
-
stopSpinner();
|
|
49
|
-
console.log(`- ${newDeploymentId} @${versionNumber}.`);
|
|
50
|
-
};
|
|
51
|
-
//# sourceMappingURL=deploy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAE,MAAM,EAAC,MAAM,YAAY,CAAC;AACtD,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAC,yBAAyB,IAAI,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAC,KAAK,EAAE,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAC,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAC,MAAM,aAAa,CAAC;AAQrE;;;;;GAKG;AACH,eAAe,KAAK,EAAE,OAAsB,EAAiB,EAAE;IAC7D,MAAM,kBAAkB,EAAE,CAAC;IAC3B,MAAM,EAAC,QAAQ,EAAC,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAC9C,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO;KACR;IAED,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9C,IAAI,EAAC,aAAa,EAAC,GAAG,OAAO,CAAC;IAC9B,MAAM,EAAC,YAAY,EAAE,WAAW,GAAG,EAAE,EAAC,GAAG,OAAO,CAAC;IAEjD,sCAAsC;IACtC,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,EACJ,IAAI,EAAE,EAAC,aAAa,EAAE,gBAAgB,EAAC,EACvC,MAAM,GACP,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAC,WAAW,EAAE,EAAC,WAAW,EAAC,EAAE,QAAQ,EAAC,CAAC,CAAC;QAClF,IAAI,MAAM,KAAK,GAAG,EAAE;YAClB,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;SACnD;QAED,WAAW,EAAE,CAAC;QAEd,aAAa,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC;KACjD;IAED,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAErC,MAAM,gBAAgB,GAAG,EAAC,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAC,CAAC;IACxE,8CAA8C;IAC9C,0BAA0B;IAC1B,MAAM,EACJ,IAAI,EAAE,EAAC,YAAY,EAAE,eAAe,EAAC,EACrC,MAAM,GACP,GAAG,YAAY;QACd,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC;YACvC,QAAQ;YACR,YAAY;YACZ,WAAW,EAAE,EAAC,gBAAgB,EAAC;SAChC,CAAC;QACJ,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC;YACvC,QAAQ;YACR,WAAW,EAAE,gBAAgB;SAC9B,CAAC,CAAC;IAEP,IAAI,MAAM,KAAK,GAAG,EAAE;QAClB,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;KAC9C;IAED,WAAW,EAAE,CAAC;IAEd,OAAO,CAAC,GAAG,CAAC,KAAK,eAAe,KAAK,aAAa,GAAG,CAAC,CAAC;AACzD,CAAC,CAAC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { loadAPICredentials, script } from '../auth.js';
|
|
2
|
-
import { ClaspError } from '../clasp-error.js';
|
|
3
|
-
import { LOG } from '../messages.js';
|
|
4
|
-
import { getProjectSettings, spinner, stopSpinner } from '../utils.js';
|
|
5
|
-
/**
|
|
6
|
-
* Lists a script's deployments.
|
|
7
|
-
*/
|
|
8
|
-
export default async () => {
|
|
9
|
-
await loadAPICredentials();
|
|
10
|
-
const { scriptId } = await getProjectSettings();
|
|
11
|
-
if (scriptId) {
|
|
12
|
-
spinner.start(LOG.DEPLOYMENT_LIST(scriptId));
|
|
13
|
-
const { data: { deployments = [] }, status, statusText, } = await script.projects.deployments.list({ scriptId });
|
|
14
|
-
stopSpinner();
|
|
15
|
-
if (status !== 200) {
|
|
16
|
-
throw new ClaspError(statusText);
|
|
17
|
-
}
|
|
18
|
-
const deploymentCount = deployments.length;
|
|
19
|
-
console.log(`${deploymentCount} ${deploymentCount === 1 ? 'Deployment' : 'Deployments'}.`);
|
|
20
|
-
for (const { deploymentId, deploymentConfig } of deployments) {
|
|
21
|
-
if (deploymentId && deploymentConfig) {
|
|
22
|
-
const versionString = deploymentConfig.versionNumber ? `@${deploymentConfig.versionNumber}` : '@HEAD';
|
|
23
|
-
const description = deploymentConfig.description ? `- ${deploymentConfig.description}` : '';
|
|
24
|
-
console.log(`- ${deploymentId} ${versionString} ${description}`);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
//# sourceMappingURL=deployments.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deployments.js","sourceRoot":"","sources":["../../../src/commands/deployments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAE,MAAM,EAAC,MAAM,YAAY,CAAC;AACtD,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAC,MAAM,aAAa,CAAC;AAErE;;GAEG;AACH,eAAe,KAAK,IAAmB,EAAE;IACvC,MAAM,kBAAkB,EAAE,CAAC;IAC3B,MAAM,EAAC,QAAQ,EAAC,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAC9C,IAAI,QAAQ,EAAE;QACZ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE7C,MAAM,EACJ,IAAI,EAAE,EAAC,WAAW,GAAG,EAAE,EAAC,EACxB,MAAM,EACN,UAAU,GACX,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC;QAEvD,WAAW,EAAE,CAAC;QAEd,IAAI,MAAM,KAAK,GAAG,EAAE;YAClB,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;SAClC;QAED,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,GAAG,eAAe,IAAI,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;QAC3F,KAAK,MAAM,EAAC,YAAY,EAAE,gBAAgB,EAAC,IAAI,WAAW,EAAE;YAC1D,IAAI,YAAY,IAAI,gBAAgB,EAAE;gBACpC,MAAM,aAAa,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACtG,MAAM,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5F,OAAO,CAAC,GAAG,CAAC,KAAK,YAAY,IAAI,aAAa,IAAI,WAAW,EAAE,CAAC,CAAC;aAClE;SACF;KACF;AACH,CAAC,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
interface CommandOption {
|
|
2
|
-
readonly noShorten: boolean;
|
|
3
|
-
}
|
|
4
|
-
declare const _default: (options: CommandOption) => Promise<void>;
|
|
5
|
-
/**
|
|
6
|
-
* Lists a user's Apps Script projects using Google Drive.
|
|
7
|
-
* @param options.noShorten {boolean}
|
|
8
|
-
*/
|
|
9
|
-
export default _default;
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { drive, loadAPICredentials } from '../auth.js';
|
|
2
|
-
import { ClaspError } from '../clasp-error.js';
|
|
3
|
-
import { ERROR, LOG } from '../messages.js';
|
|
4
|
-
import { URL } from '../urls.js';
|
|
5
|
-
import { ellipsize, spinner, stopSpinner } from '../utils.js';
|
|
6
|
-
/**
|
|
7
|
-
* Lists a user's Apps Script projects using Google Drive.
|
|
8
|
-
* @param options.noShorten {boolean}
|
|
9
|
-
*/
|
|
10
|
-
export default async (options) => {
|
|
11
|
-
var _a;
|
|
12
|
-
await loadAPICredentials();
|
|
13
|
-
spinner.start(LOG.FINDING_SCRIPTS);
|
|
14
|
-
const { data: { files = [] }, status, } = await drive.files.list({
|
|
15
|
-
pageSize: 50,
|
|
16
|
-
// Fields isn't currently supported
|
|
17
|
-
// https://github.com/googleapis/google-api-nodejs-client/issues/1374
|
|
18
|
-
// fields: 'nextPageToken, files(id, name)',
|
|
19
|
-
q: 'mimeType="application/vnd.google-apps.script"',
|
|
20
|
-
});
|
|
21
|
-
if (status !== 200) {
|
|
22
|
-
throw new ClaspError(ERROR.DRIVE);
|
|
23
|
-
}
|
|
24
|
-
stopSpinner();
|
|
25
|
-
if (files.length > 0) {
|
|
26
|
-
for (const file of files) {
|
|
27
|
-
console.log(`${options.noShorten ? file.name : ellipsize(file.name, 20)} - ${URL.SCRIPT((_a = file.id) !== null && _a !== void 0 ? _a : '')}`);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
console.log(LOG.FINDING_SCRIPTS_DNE);
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=list.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,kBAAkB,EAAC,MAAM,YAAY,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAC,KAAK,EAAE,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAC,GAAG,EAAC,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAC,MAAM,aAAa,CAAC;AAM5D;;;GAGG;AACH,eAAe,KAAK,EAAE,OAAsB,EAAiB,EAAE;;IAC7D,MAAM,kBAAkB,EAAE,CAAC;IAE3B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAEnC,MAAM,EACJ,IAAI,EAAE,EAAC,KAAK,GAAG,EAAE,EAAC,EAClB,MAAM,GACP,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;QACzB,QAAQ,EAAE,EAAE;QACZ,mCAAmC;QACnC,qEAAqE;QACrE,4CAA4C;QAC5C,CAAC,EAAE,+CAA+C;KACnD,CAAC,CAAC;IAEH,IAAI,MAAM,KAAK,GAAG,EAAE;QAClB,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KACnC;IAED,WAAW,EAAE,CAAC;IAEd,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACpB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAK,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,MAAA,IAAI,CAAC,EAAE,mCAAI,EAAE,CAAC,EAAE,CAAC,CAAC;SAC7G;KACF;SAAM;QACL,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;KACtC;AACH,CAAC,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
interface CommandOption {
|
|
2
|
-
readonly localhost?: boolean;
|
|
3
|
-
readonly creds?: string;
|
|
4
|
-
readonly status?: boolean;
|
|
5
|
-
}
|
|
6
|
-
declare const _default: (options: CommandOption) => Promise<void>;
|
|
7
|
-
/**
|
|
8
|
-
* Logs the user in. Saves the client credentials to an either local or global rc file.
|
|
9
|
-
* @param {object} options The login options.
|
|
10
|
-
* @param {boolean?} options.localhost If true, authorizes without a HTTP server.
|
|
11
|
-
* @param {string?} options.creds The location of credentials file.
|
|
12
|
-
* @param {boolean?} options.status If true, prints who is logged in instead of doing login.
|
|
13
|
-
*/
|
|
14
|
-
export default _default;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/login.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,OAAO,EAAC,mBAAmB,EAAC,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAC,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAAC,MAAM,YAAY,CAAC;AACzF,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAC,KAAK,EAAE,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAC,sBAAsB,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AAGjE,MAAM,EAAC,YAAY,EAAC,GAAG,EAAE,CAAC;AAQ1B;;;;;;GAMG;AACH,eAAe,KAAK,EAAE,OAAsB,EAAiB,EAAE;IAC7D,IAAI,OAAO,CAAC,MAAM,EAAE;QAClB,IAAI,sBAAsB,EAAE,EAAE;YAC5B,MAAM,KAAK,GAAG,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,gBAAgB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;SACtE;aAAM;YACL,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;SAChC;QAED,OAAO;KACR;IAED,yBAAyB;IACzB,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,YAAY,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE;QAChD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;KACtC;IAED,IAAI,CAAC,YAAY,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE;QAClD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;KACvC;IAED,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;IACrC,kBAAkB;IAClB,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhD,yBAAyB;IACzB,IAAI,OAAO,CAAC,KAAK,EAAE;QACjB,mFAAmF;QACnF,wFAAwF;QACxF,MAAM,EAAC,WAAW,GAAG,EAAE,EAAC,GAAG,MAAM,YAAY,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAS,CAAC,GAAG,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACpB;QAED,OAAO,CAAC,GAAG,CAAC;qCACqB,CAAC,CAAC;QAEnC,yBAAyB;QACzB,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAA+B,CAAC;QACpF,MAAM,SAAS,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAC,CAAC,CAAC;QAC/C,MAAM,mBAAmB,EAAE,CAAC;QAE5B,OAAO;KACR;IAED,4BAA4B;IAC5B,2CAA2C;IAC3C,MAAM,SAAS,CAAC,EAAC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAC,CAAC,CAAC;AACzD,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logout.js","sourceRoot":"","sources":["../../../src/commands/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1B,OAAO,EAAC,IAAI,EAAC,MAAM,YAAY,CAAC;AAEhC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AAE1B,MAAM,cAAc,GAAG,CAAC,IAAwB,EAAE,EAAE;IAClD,IAAI,IAAI,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QAC/B,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KACrB;AACH,CAAC,CAAC;AAEF;;GAEG;AACH,eAAe,KAAK,IAAmB,EAAE;IACvC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5B,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
interface CommandOption {
|
|
2
|
-
readonly json?: boolean;
|
|
3
|
-
readonly open?: boolean;
|
|
4
|
-
readonly setup?: boolean;
|
|
5
|
-
readonly watch?: boolean;
|
|
6
|
-
readonly simplified?: boolean;
|
|
7
|
-
}
|
|
8
|
-
declare const _default: (options: CommandOption) => Promise<void>;
|
|
9
|
-
/**
|
|
10
|
-
* Prints StackDriver logs from this Apps Script project.
|
|
11
|
-
* @param options.json {boolean} If true, the command will output logs as json.
|
|
12
|
-
* @param options.open {boolean} If true, the command will open the StackDriver logs website.
|
|
13
|
-
* @param options.setup {boolean} If true, the command will help you setup logs.
|
|
14
|
-
* @param options.watch {boolean} If true, the command will watch for logs and print them. Exit with ^C.
|
|
15
|
-
* @param options.simplified {boolean} If true, the command will remove timestamps from the logs.
|
|
16
|
-
*/
|
|
17
|
-
export default _default;
|
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
import is from '@sindresorhus/is';
|
|
2
|
-
import chalk from 'chalk';
|
|
3
|
-
import open from 'open';
|
|
4
|
-
import { loadAPICredentials, logger } from '../auth.js';
|
|
5
|
-
import { ClaspError } from '../clasp-error.js';
|
|
6
|
-
import { DOTFILE } from '../dotfile.js';
|
|
7
|
-
import { projectIdPrompt } from '../inquirer.js';
|
|
8
|
-
import { ERROR, LOG } from '../messages.js';
|
|
9
|
-
import { URL } from '../urls.js';
|
|
10
|
-
import { getErrorMessage, getProjectSettings, isValidProjectId, spinner, stopSpinner } from '../utils.js';
|
|
11
|
-
/**
|
|
12
|
-
* Prints StackDriver logs from this Apps Script project.
|
|
13
|
-
* @param options.json {boolean} If true, the command will output logs as json.
|
|
14
|
-
* @param options.open {boolean} If true, the command will open the StackDriver logs website.
|
|
15
|
-
* @param options.setup {boolean} If true, the command will help you setup logs.
|
|
16
|
-
* @param options.watch {boolean} If true, the command will watch for logs and print them. Exit with ^C.
|
|
17
|
-
* @param options.simplified {boolean} If true, the command will remove timestamps from the logs.
|
|
18
|
-
*/
|
|
19
|
-
export default async (options) => {
|
|
20
|
-
// Get project settings.
|
|
21
|
-
const projectSettings = await getProjectSettings();
|
|
22
|
-
let projectId = options.setup ? await setupLogs(projectSettings) : projectSettings.projectId;
|
|
23
|
-
if (!projectId) {
|
|
24
|
-
console.log(LOG.NO_GCLOUD_PROJECT);
|
|
25
|
-
projectId = await setupLogs(projectSettings);
|
|
26
|
-
console.log(LOG.LOGS_SETUP);
|
|
27
|
-
}
|
|
28
|
-
// If we're opening the logs, get the URL, open, then quit.
|
|
29
|
-
if (options.open) {
|
|
30
|
-
const url = URL.LOGS(projectId);
|
|
31
|
-
console.log(`Opening logs: ${url}`);
|
|
32
|
-
await open(url, { wait: false });
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
const { json, simplified } = options;
|
|
36
|
-
// Otherwise, if not opening StackDriver, load StackDriver logs.
|
|
37
|
-
if (options.watch) {
|
|
38
|
-
const POLL_INTERVAL = 6000; // 6s
|
|
39
|
-
setInterval(async () => {
|
|
40
|
-
const startDate = new Date();
|
|
41
|
-
startDate.setSeconds(startDate.getSeconds() - (10 * POLL_INTERVAL) / 1000);
|
|
42
|
-
await fetchAndPrintLogs(json, simplified, projectId, startDate);
|
|
43
|
-
}, POLL_INTERVAL);
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
await fetchAndPrintLogs(json, simplified, projectId);
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
/**
|
|
50
|
-
* This object holds all log IDs that have been printed to the user.
|
|
51
|
-
* This prevents log entries from being printed multiple times.
|
|
52
|
-
* StackDriver isn't super reliable, so it's easier to get generous chunk of logs and filter them
|
|
53
|
-
* rather than filter server-side.
|
|
54
|
-
* @see logs.data.entries[0].insertId
|
|
55
|
-
*/
|
|
56
|
-
const logEntryCache = {};
|
|
57
|
-
const severityColor = {
|
|
58
|
-
ERROR: chalk.red,
|
|
59
|
-
INFO: chalk.cyan,
|
|
60
|
-
DEBUG: chalk.green,
|
|
61
|
-
NOTICE: chalk.magenta,
|
|
62
|
-
WARNING: chalk.yellow,
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
* Prints log entries
|
|
66
|
-
* @param entries {any[]} StackDriver log entries.
|
|
67
|
-
*/
|
|
68
|
-
const printLogs = (input = [], formatJson = false, simplified = false) => {
|
|
69
|
-
const entries = [...input].reverse().slice(0, 50); // Print in syslog ascending order
|
|
70
|
-
for (const entry of entries) {
|
|
71
|
-
const { severity = '', timestamp = '', resource, insertId = '' } = entry;
|
|
72
|
-
if (resource === null || resource === void 0 ? void 0 : resource.labels) {
|
|
73
|
-
let { function_name: functionName = ERROR.NO_FUNCTION_NAME } = resource.labels;
|
|
74
|
-
functionName = functionName.padEnd(15);
|
|
75
|
-
let payloadData = '';
|
|
76
|
-
if (formatJson) {
|
|
77
|
-
payloadData = JSON.stringify(entry, null, 2);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
const kludge = obscure(entry, functionName);
|
|
81
|
-
payloadData = kludge.payloadData;
|
|
82
|
-
functionName = kludge.functionName;
|
|
83
|
-
}
|
|
84
|
-
const coloredSeverity = `${severityColor[severity](severity) || severity}`.padEnd(20);
|
|
85
|
-
// If we haven't logged this entry before, log it and mark the cache.
|
|
86
|
-
if (!logEntryCache[insertId]) {
|
|
87
|
-
console.log(simplified
|
|
88
|
-
? `${coloredSeverity} ${functionName} ${payloadData}`
|
|
89
|
-
: `${coloredSeverity} ${timestamp} ${functionName} ${payloadData}`);
|
|
90
|
-
logEntryCache[insertId] = true;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
const obscure = (entry, functionName) => {
|
|
96
|
-
var _a;
|
|
97
|
-
const { jsonPayload, protoPayload = {}, textPayload } = entry;
|
|
98
|
-
// Chokes on unmatched json payloads
|
|
99
|
-
// jsonPayload: jsonPayload ? jsonPayload.fields.message.stringValue : '',
|
|
100
|
-
let payloadData = (_a = textPayload !== null && textPayload !== void 0 ? textPayload : ((jsonPayload ? JSON.stringify(jsonPayload).slice(0, 255) : '') || protoPayload)) !== null && _a !== void 0 ? _a : ERROR.PAYLOAD_UNKNOWN;
|
|
101
|
-
if (!is.string(payloadData) && protoPayload['@type'] === 'type.googleapis.com/google.cloud.audit.AuditLog') {
|
|
102
|
-
payloadData = LOG.STACKDRIVER_SETUP;
|
|
103
|
-
functionName = protoPayload.methodName.padEnd(15);
|
|
104
|
-
}
|
|
105
|
-
if (is.string(payloadData)) {
|
|
106
|
-
payloadData = payloadData.padEnd(20);
|
|
107
|
-
}
|
|
108
|
-
return { functionName, payloadData };
|
|
109
|
-
};
|
|
110
|
-
const setupLogs = async (projectSettings) => {
|
|
111
|
-
try {
|
|
112
|
-
console.log(`${LOG.OPEN_LINK(LOG.SCRIPT_LINK(projectSettings.scriptId))}\n`);
|
|
113
|
-
console.log(`${LOG.GET_PROJECT_ID_INSTRUCTIONS}\n`);
|
|
114
|
-
const dotfile = DOTFILE.PROJECT();
|
|
115
|
-
if (!dotfile) {
|
|
116
|
-
throw new ClaspError(ERROR.SETTINGS_DNE());
|
|
117
|
-
}
|
|
118
|
-
const settings = await dotfile.read();
|
|
119
|
-
if (!settings.scriptId) {
|
|
120
|
-
throw new ClaspError(ERROR.SCRIPT_ID_DNE());
|
|
121
|
-
}
|
|
122
|
-
const { projectId } = await projectIdPrompt();
|
|
123
|
-
await dotfile.write({ ...settings, projectId });
|
|
124
|
-
return projectId;
|
|
125
|
-
}
|
|
126
|
-
catch (error) {
|
|
127
|
-
if (error instanceof ClaspError) {
|
|
128
|
-
throw error;
|
|
129
|
-
}
|
|
130
|
-
throw new ClaspError(getErrorMessage(error)); // TODO get rid of type casting
|
|
131
|
-
}
|
|
132
|
-
};
|
|
133
|
-
/**
|
|
134
|
-
* Fetches the logs and prints the to the user.
|
|
135
|
-
* @param startDate {Date?} Get logs from this date to now.
|
|
136
|
-
*/
|
|
137
|
-
const fetchAndPrintLogs = async (formatJson = false, simplified = false, projectId, startDate) => {
|
|
138
|
-
// Validate projectId
|
|
139
|
-
if (!projectId) {
|
|
140
|
-
throw new ClaspError(ERROR.NO_GCLOUD_PROJECT());
|
|
141
|
-
}
|
|
142
|
-
if (!isValidProjectId(projectId)) {
|
|
143
|
-
throw new ClaspError(ERROR.PROJECT_ID_INCORRECT(projectId));
|
|
144
|
-
}
|
|
145
|
-
const { isLocalCreds } = await loadAPICredentials();
|
|
146
|
-
spinner.start(`${isLocalCreds ? LOG.LOCAL_CREDS() : ''}${LOG.GRAB_LOGS}`);
|
|
147
|
-
// Create a time filter (timestamp >= "2016-11-29T23:00:00Z")
|
|
148
|
-
// https://cloud.google.com/logging/docs/view/advanced-filters#search-by-time
|
|
149
|
-
const filter = startDate ? `timestamp >= "${startDate.toISOString()}"` : '';
|
|
150
|
-
try {
|
|
151
|
-
const logs = await logger.entries.list({
|
|
152
|
-
requestBody: { resourceNames: [`projects/${projectId}`], filter, orderBy: 'timestamp desc' },
|
|
153
|
-
});
|
|
154
|
-
// We have an API response. Now, check the API response status.
|
|
155
|
-
stopSpinner();
|
|
156
|
-
// Only print filter if provided.
|
|
157
|
-
if (filter.length > 0) {
|
|
158
|
-
console.log(filter);
|
|
159
|
-
}
|
|
160
|
-
// Parse response and print logs or print error message.
|
|
161
|
-
const { data, status, statusText } = logs;
|
|
162
|
-
switch (status) {
|
|
163
|
-
case 200:
|
|
164
|
-
printLogs(data.entries, formatJson, simplified);
|
|
165
|
-
break;
|
|
166
|
-
case 401:
|
|
167
|
-
throw new ClaspError(isLocalCreds ? ERROR.UNAUTHENTICATED_LOCAL : ERROR.UNAUTHENTICATED);
|
|
168
|
-
case 403:
|
|
169
|
-
throw new ClaspError(isLocalCreds ? ERROR.PERMISSION_DENIED_LOCAL : ERROR.PERMISSION_DENIED);
|
|
170
|
-
default:
|
|
171
|
-
throw new ClaspError(`(${status}) Error: ${statusText}`);
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
catch (error) {
|
|
175
|
-
if (error instanceof ClaspError) {
|
|
176
|
-
throw error;
|
|
177
|
-
}
|
|
178
|
-
throw new ClaspError(ERROR.PROJECT_ID_INCORRECT(projectId));
|
|
179
|
-
}
|
|
180
|
-
};
|
|
181
|
-
//# sourceMappingURL=logs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../../src/commands/logs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
interface CommandOption {
|
|
2
|
-
readonly webapp?: boolean;
|
|
3
|
-
readonly creds?: boolean;
|
|
4
|
-
readonly addon?: boolean;
|
|
5
|
-
readonly deploymentId?: string;
|
|
6
|
-
}
|
|
7
|
-
declare const _default: (scriptId: string, options: CommandOption) => Promise<void>;
|
|
8
|
-
/**
|
|
9
|
-
* Opens an Apps Script project's script.google.com editor.
|
|
10
|
-
* @param scriptId {string} The Apps Script project to open.
|
|
11
|
-
* @param options.webapp {boolean} If true, the command will open the webapps URL.
|
|
12
|
-
* @param options.creds {boolean} If true, the command will open the credentials URL.
|
|
13
|
-
* @param options.deploymentId {string} Use custom deployment ID with webapp.
|
|
14
|
-
*/
|
|
15
|
-
export default _default;
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import open from 'open';
|
|
2
|
-
import { loadAPICredentials, script } from '../auth.js';
|
|
3
|
-
import { ClaspError } from '../clasp-error.js';
|
|
4
|
-
import { deploymentIdPrompt } from '../inquirer.js';
|
|
5
|
-
import { ERROR, LOG } from '../messages.js';
|
|
6
|
-
import { URL } from '../urls.js';
|
|
7
|
-
import { ellipsize, getProjectSettings, getWebApplicationURL } from '../utils.js';
|
|
8
|
-
const getDeploymentId = async (choices) => {
|
|
9
|
-
const { deployment: { deploymentId }, } = await deploymentIdPrompt(choices);
|
|
10
|
-
return deploymentId;
|
|
11
|
-
};
|
|
12
|
-
/**
|
|
13
|
-
* Opens an Apps Script project's script.google.com editor.
|
|
14
|
-
* @param scriptId {string} The Apps Script project to open.
|
|
15
|
-
* @param options.webapp {boolean} If true, the command will open the webapps URL.
|
|
16
|
-
* @param options.creds {boolean} If true, the command will open the credentials URL.
|
|
17
|
-
* @param options.deploymentId {string} Use custom deployment ID with webapp.
|
|
18
|
-
*/
|
|
19
|
-
export default async (scriptId, options) => {
|
|
20
|
-
const projectSettings = await getProjectSettings();
|
|
21
|
-
const currentScriptId = scriptId !== null && scriptId !== void 0 ? scriptId : projectSettings.scriptId;
|
|
22
|
-
if (currentScriptId.length < 30) {
|
|
23
|
-
throw new ClaspError(ERROR.SCRIPT_ID_INCORRECT(currentScriptId));
|
|
24
|
-
}
|
|
25
|
-
// We've specified to open creds.
|
|
26
|
-
if (options.creds) {
|
|
27
|
-
const { projectId } = projectSettings;
|
|
28
|
-
if (!projectId) {
|
|
29
|
-
throw new ClaspError(ERROR.NO_GCLOUD_PROJECT());
|
|
30
|
-
}
|
|
31
|
-
console.log(LOG.OPEN_CREDS(projectId));
|
|
32
|
-
await open(URL.CREDS(projectId));
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
// We've specified to print addons and open the first one.
|
|
36
|
-
if (options.addon) {
|
|
37
|
-
await openAddon(projectSettings);
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
if (options.webapp) {
|
|
41
|
-
await openWebApp(currentScriptId, options.deploymentId);
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
// If we're not a web app, open the script URL.
|
|
45
|
-
console.log(LOG.OPEN_PROJECT(currentScriptId));
|
|
46
|
-
await open(URL.SCRIPT(currentScriptId));
|
|
47
|
-
};
|
|
48
|
-
const openAddon = async (projectSettings) => {
|
|
49
|
-
const { parentId: parentIdList = [] } = projectSettings;
|
|
50
|
-
if (parentIdList.length === 0) {
|
|
51
|
-
throw new ClaspError(ERROR.NO_PARENT_ID());
|
|
52
|
-
}
|
|
53
|
-
if (parentIdList.length > 1) {
|
|
54
|
-
for (const id of parentIdList) {
|
|
55
|
-
console.log(LOG.FOUND_PARENT(id));
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
const parentId = parentIdList[0];
|
|
59
|
-
console.log(LOG.OPEN_FIRST_PARENT(parentId));
|
|
60
|
-
await open(URL.DRIVE(parentId));
|
|
61
|
-
};
|
|
62
|
-
const openWebApp = async (scriptId, optionsDeploymentId) => {
|
|
63
|
-
// Web app: open the latest deployment.
|
|
64
|
-
await loadAPICredentials();
|
|
65
|
-
const { data: { deployments = [] }, status, statusText, } = await script.projects.deployments.list({ scriptId });
|
|
66
|
-
if (status !== 200) {
|
|
67
|
-
throw new ClaspError(statusText);
|
|
68
|
-
}
|
|
69
|
-
if (deployments.length === 0) {
|
|
70
|
-
throw new ClaspError(ERROR.SCRIPT_ID_INCORRECT(scriptId));
|
|
71
|
-
}
|
|
72
|
-
// Order deployments by update time.
|
|
73
|
-
const choices = [...deployments];
|
|
74
|
-
choices.sort((a, b) => (a.updateTime && b.updateTime ? a.updateTime.localeCompare(b.updateTime) : 0));
|
|
75
|
-
const prompts = choices.map(value => {
|
|
76
|
-
const { description, versionNumber } = value.deploymentConfig;
|
|
77
|
-
const name = `${ellipsize(description !== null && description !== void 0 ? description : '', 30)}@${`${versionNumber !== null && versionNumber !== void 0 ? versionNumber : 'HEAD'}`.padEnd(4)} - ${value.deploymentId}`;
|
|
78
|
-
return { name, value };
|
|
79
|
-
});
|
|
80
|
-
const deploymentId = optionsDeploymentId !== null && optionsDeploymentId !== void 0 ? optionsDeploymentId : (await getDeploymentId(prompts));
|
|
81
|
-
const deployment = await script.projects.deployments.get({ scriptId, deploymentId });
|
|
82
|
-
console.log(LOG.OPEN_WEBAPP(deploymentId));
|
|
83
|
-
const target = getWebApplicationURL(deployment.data);
|
|
84
|
-
if (!target) {
|
|
85
|
-
throw new ClaspError(`Could not open deployment: ${JSON.stringify(deployment)}`);
|
|
86
|
-
}
|
|
87
|
-
await open(target, { wait: false });
|
|
88
|
-
};
|
|
89
|
-
//# sourceMappingURL=open.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/commands/open.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
interface CommandOption {
|
|
2
|
-
readonly versionNumber?: number;
|
|
3
|
-
}
|
|
4
|
-
declare const _default: (options: CommandOption) => Promise<void>;
|
|
5
|
-
/**
|
|
6
|
-
* Force downloads all Apps Script project files into the local filesystem.
|
|
7
|
-
* @param options.versionNumber {number} The version number of the project to retrieve.
|
|
8
|
-
* If not provided, the project's HEAD version is returned.
|
|
9
|
-
*/
|
|
10
|
-
export default _default;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pull.js","sourceRoot":"","sources":["../../../src/commands/pull.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,iBAAiB,EAAC,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,kBAAkB,EAAE,OAAO,EAAE,WAAW,EAAC,MAAM,aAAa,CAAC;AAMrE;;;;GAIG;AACH,eAAe,KAAK,EAAE,OAAsB,EAAiB,EAAE;IAC7D,MAAM,EAAC,QAAQ,EAAE,OAAO,EAAC,GAAG,MAAM,kBAAkB,EAAE,CAAC;IACvD,IAAI,QAAQ,EAAE;QACZ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE3B,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;QAClE,MAAM,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAExC,WAAW,EAAE,CAAC;KACf;AACH,CAAC,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
interface CommandOption {
|
|
2
|
-
readonly watch?: boolean;
|
|
3
|
-
readonly force?: boolean;
|
|
4
|
-
}
|
|
5
|
-
declare const _default: (options: CommandOption) => Promise<void>;
|
|
6
|
-
/**
|
|
7
|
-
* Uploads all files into the script.google.com filesystem.
|
|
8
|
-
* TODO: Only push the specific files that changed (rather than all files).
|
|
9
|
-
* @param options.watch {boolean} If true, runs `clasp push` when any local file changes. Exit with ^C.
|
|
10
|
-
*/
|
|
11
|
-
export default _default;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/commands/push.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
interface CommandOption {
|
|
2
|
-
readonly nondev: boolean;
|
|
3
|
-
readonly params: string;
|
|
4
|
-
}
|
|
5
|
-
declare const _default: (functionName: string, options: CommandOption) => Promise<void>;
|
|
6
|
-
/**
|
|
7
|
-
* Executes an Apps Script function. Requires clasp login --creds.
|
|
8
|
-
* @param functionName {string} The function name within the Apps Script project.
|
|
9
|
-
* @param options.nondev {boolean} If we want to run the last deployed version vs the latest code.
|
|
10
|
-
* @param options.params {string} JSON string of parameters to be input to function.
|
|
11
|
-
* @see https://developers.google.com/apps-script/api/how-tos/execute
|
|
12
|
-
* @requires `clasp login --creds` to be run beforehand.
|
|
13
|
-
*/
|
|
14
|
-
export default _default;
|