New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

gsheetcli

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gsheetcli - npm Package Compare versions

Comparing version 1.0.1 to 1.0.2

tslint.json

96

index.js

@@ -23,6 +23,6 @@ #!/usr/bin/env node

const url = __importStar(require("url"));
const googleapis_1 = require("googleapis");
const csv_parse_1 = __importDefault(require("csv-parse"));
const csv_stringify_1 = __importDefault(require("csv-stringify"));
const CLI_NAME = 'gsheetcli';
const googleapis_1 = require("googleapis");
const CLI_NAME = "gsheetcli";
function parseSpreadSheetURL(urlStr) {

@@ -49,3 +49,3 @@ // Url {

}
const spreadSheetId = component.path.split('/')[3];
const spreadSheetId = component.path.split("/")[3];
if (!spreadSheetId) {

@@ -72,5 +72,5 @@ throw new Error(`${CLI_NAME}: could not find spreadsheet ID from the path of URL ${urlStr}`);

// Scopes can be specified either as an array or as a single, space-delimited string.
scopes: ['https://www.googleapis.com/auth/spreadsheets'],
scopes: ["https://www.googleapis.com/auth/spreadsheets"],
});
const service = googleapis_1.google.sheets({ version: 'v4', auth });
const service = googleapis_1.google.sheets({ version: "v4", auth });
return service;

@@ -81,12 +81,13 @@ });

return __awaiter(this, void 0, void 0, function* () {
const stringifier = csv_stringify_1.default();
stringifier.on('readable', () => {
const row = stringifier.read();
process.stdout.write(row.toString());
process.stdout.on("close", () => {
process.exit(0);
});
process.stdout.on("end", () => {
process.exit(0);
});
const service = yield getService();
const range = parseSpreadSheetURL(process.argv[3]);
const spreadsheet = yield service.spreadsheets.get({
'spreadsheetId': range.spreadSheetId,
'includeGridData': false,
spreadsheetId: range.spreadSheetId,
includeGridData: false,
});

@@ -97,3 +98,3 @@ if (!spreadsheet.data.sheets) {

// getting sheet title for constructing range
const sheetProperty = spreadsheet.data.sheets.find(sheet => sheet.properties ? sheet.properties.sheetId === range.sheetId : false);
const sheetProperty = spreadsheet.data.sheets.find((sheet) => sheet.properties ? sheet.properties.sheetId === range.sheetId : false);
if (!sheetProperty || !sheetProperty.properties) {

@@ -104,9 +105,15 @@ return;

const sheetData = yield service.spreadsheets.values.get({
'majorDimension': 'ROWS',
'spreadsheetId': range.spreadSheetId,
'range': finalRange,
majorDimension: "ROWS",
spreadsheetId: range.spreadSheetId,
range: finalRange,
});
for (const row of sheetData.data.values || []) {
stringifier.write(row);
}
csv_stringify_1.default(sheetData.data.values || [], (err, output) => {
if (err) {
throw err;
}
if (output !== undefined) {
process.stdout.write(output);
process.stdout.end();
}
});
});

@@ -117,4 +124,4 @@ }

const rows = [];
var parser = csv_parse_1.default({ 'relax_column_count': true });
parser.on('readable', () => {
let parser = csv_parse_1.default({ relax_column_count: true });
parser.on("readable", () => {
let row;

@@ -125,8 +132,8 @@ while (row = parser.read()) {

});
parser.on('end', () => __awaiter(this, void 0, void 0, function* () {
parser.on("end", () => __awaiter(this, void 0, void 0, function* () {
const service = yield getService();
const range = parseSpreadSheetURL(process.argv[3]);
const spreadsheet = yield service.spreadsheets.get({
'spreadsheetId': range.spreadSheetId,
'includeGridData': false,
spreadsheetId: range.spreadSheetId,
includeGridData: false,
});

@@ -137,3 +144,3 @@ if (!spreadsheet.data.sheets) {

// getting sheet title for constructing range
const sheetProperty = spreadsheet.data.sheets.find(sheet => sheet.properties ? sheet.properties.sheetId === range.sheetId : false);
const sheetProperty = spreadsheet.data.sheets.find((sheet) => sheet.properties ? sheet.properties.sheetId === range.sheetId : false);
if (!sheetProperty || !sheetProperty.properties) {

@@ -144,17 +151,18 @@ return;

const resp = yield service.spreadsheets.values.update({
'range': finalRange,
'spreadsheetId': range.spreadSheetId,
'valueInputOption': 'RAW',
'requestBody': {
'majorDimension': 'ROWS',
'values': rows,
}
range: finalRange,
spreadsheetId: range.spreadSheetId,
// valueInputOption: "RAW",
valueInputOption: "USER_ENTERED",
requestBody: {
majorDimension: "ROWS",
values: rows,
},
});
console.log(`${resp.data.updatedCells} cells updated.`);
}));
parser.on('error', (err) => {
parser.on("error", (err) => {
console.error(err.message);
});
// collecting
process.stdin.on('readable', () => {
process.stdin.on("readable", () => {
let chunk;

@@ -165,3 +173,3 @@ while (chunk = process.stdin.read()) {

});
process.stdin.on('end', () => {
process.stdin.on("end", () => {
parser.end();

@@ -173,3 +181,3 @@ });

return __awaiter(this, void 0, void 0, function* () {
console.error('not implemented :)');
console.error("not implemented :)");
});

@@ -195,4 +203,4 @@ }

const subcommand = process.argv[2];
if (subcommand === 'get') {
get().catch(err => {
if (subcommand === "get") {
get().catch((err) => {
console.error(err.message);

@@ -202,4 +210,4 @@ process.exit(1);

}
else if (subcommand === 'update') {
update().catch(err => {
else if (subcommand === "update") {
update().catch((err) => {
console.error(err.message);

@@ -209,4 +217,4 @@ process.exit(1);

}
else if (subcommand === 'append') {
append().catch(err => {
else if (subcommand === "append") {
append().catch((err) => {
console.error(err.message);

@@ -216,4 +224,4 @@ process.exit(1);

}
else if (subcommand === 'help' || subcommand === undefined) {
help().catch(err => {
else if (subcommand === "help" || subcommand === undefined) {
help().catch((err) => {
console.error(err.message);

@@ -224,3 +232,3 @@ process.exit(1);

else {
error(subcommand).catch(err => {
error(subcommand).catch((err) => {
console.error(err.message);

@@ -227,0 +235,0 @@ process.exit(1);

#!/usr/bin/env node
import * as url from 'url';
import * as url from "url";
import {google} from 'googleapis';
import parse from 'csv-parse';
import stringify from 'csv-stringify';
import parse from "csv-parse";
import stringify from "csv-stringify";
import {google} from "googleapis";
const CLI_NAME = 'gsheetcli';
const CLI_NAME = "gsheetcli";

@@ -31,3 +31,3 @@ function parseSpreadSheetURL(urlStr: string) {

}
const spreadSheetId = component.path.split('/')[3];
const spreadSheetId = component.path.split("/")[3];
if (!spreadSheetId) {

@@ -46,3 +46,3 @@ throw new Error(`${CLI_NAME}: could not find spreadsheet ID from the path of URL ${urlStr}`);

range,
}
};
}

@@ -55,5 +55,5 @@

// Scopes can be specified either as an array or as a single, space-delimited string.
scopes: ['https://www.googleapis.com/auth/spreadsheets'],
scopes: ["https://www.googleapis.com/auth/spreadsheets"],
});
const service = google.sheets({version: 'v4', auth});
const service = google.sheets({version: "v4", auth});
return service;

@@ -63,7 +63,8 @@ }

async function get() {
const stringifier = stringify();
process.stdout.on("close", () => {
process.exit(0);
});
stringifier.on('readable', () => {
const row = stringifier.read();
process.stdout.write(row.toString());
process.stdout.on("end", () => {
process.exit(0);
});

@@ -74,4 +75,4 @@

const spreadsheet = await service.spreadsheets.get({
'spreadsheetId': range.spreadSheetId,
'includeGridData': false,
spreadsheetId: range.spreadSheetId,
includeGridData: false,
});

@@ -82,3 +83,3 @@ if (!spreadsheet.data.sheets) {

// getting sheet title for constructing range
const sheetProperty = spreadsheet.data.sheets.find(sheet => sheet.properties ? sheet.properties.sheetId === range.sheetId : false);
const sheetProperty = spreadsheet.data.sheets.find((sheet) => sheet.properties ? sheet.properties.sheetId === range.sheetId : false);
if (!sheetProperty || !sheetProperty.properties) {

@@ -89,9 +90,15 @@ return;

const sheetData = await service.spreadsheets.values.get({
'majorDimension': 'ROWS',
'spreadsheetId': range.spreadSheetId,
'range': finalRange,
majorDimension: "ROWS",
spreadsheetId: range.spreadSheetId,
range: finalRange,
});
for (const row of sheetData.data.values || []) {
stringifier.write(row);
}
stringify(sheetData.data.values || [], (err, output) => {
if (err) {
throw err;
}
if (output !== undefined) {
process.stdout.write(output);
process.stdout.end();
}
});
}

@@ -102,5 +109,5 @@

var parser = parse({'relax_column_count': true});
let parser = parse({relax_column_count: true});
parser.on('readable', () => {
parser.on("readable", () => {
let row;

@@ -112,8 +119,8 @@ while (row = parser.read()) {

parser.on('end', async () => {
parser.on("end", async () => {
const service = await getService();
const range = parseSpreadSheetURL(process.argv[3]);
const spreadsheet = await service.spreadsheets.get({
'spreadsheetId': range.spreadSheetId,
'includeGridData': false,
spreadsheetId: range.spreadSheetId,
includeGridData: false,
});

@@ -125,3 +132,3 @@ if (!spreadsheet.data.sheets) {

const sheetProperty = spreadsheet.data.sheets.find(
sheet => sheet.properties ? sheet.properties.sheetId === range.sheetId : false,
(sheet) => sheet.properties ? sheet.properties.sheetId === range.sheetId : false,
);

@@ -133,9 +140,10 @@ if (!sheetProperty || !sheetProperty.properties) {

const resp = await service.spreadsheets.values.update({
'range': finalRange,
'spreadsheetId': range.spreadSheetId,
'valueInputOption': 'RAW',
'requestBody': {
'majorDimension': 'ROWS',
'values': rows,
}
range: finalRange,
spreadsheetId: range.spreadSheetId,
// valueInputOption: "RAW",
valueInputOption: "USER_ENTERED",
requestBody: {
majorDimension: "ROWS",
values: rows,
},
});

@@ -145,3 +153,3 @@ console.log(`${resp.data.updatedCells} cells updated.`);

parser.on('error', (err: Error) => {
parser.on("error", (err: Error) => {
console.error(err.message);

@@ -151,5 +159,5 @@ });

// collecting
process.stdin.on('readable', () => {
process.stdin.on("readable", () => {
let chunk;
while(chunk = process.stdin.read()) {
while (chunk = process.stdin.read()) {
parser.write(chunk);

@@ -159,3 +167,3 @@ }

process.stdin.on('end', () => {
process.stdin.on("end", () => {
parser.end();

@@ -166,3 +174,3 @@ });

async function append() {
console.error('not implemented :)');
console.error("not implemented :)");
}

@@ -185,23 +193,23 @@

type SUBCOMMAND = 'get' | 'update' | 'append' | 'help';
type SUBCOMMAND = "get" | "update" | "append" | "help";
const subcommand = process.argv[2] as SUBCOMMAND
const subcommand = process.argv[2] as SUBCOMMAND;
if (subcommand === 'get') {
get().catch(err => {
if (subcommand === "get") {
get().catch((err) => {
console.error(err.message);
process.exit(1);
});
} else if (subcommand === 'update') {
update().catch(err => {
} else if (subcommand === "update") {
update().catch((err) => {
console.error(err.message);
process.exit(1);
});
} else if (subcommand === 'append') {
append().catch(err => {
} else if (subcommand === "append") {
append().catch((err) => {
console.error(err.message);
process.exit(1);
});
} else if (subcommand === 'help' || subcommand === undefined) {
help().catch(err => {
} else if (subcommand === "help" || subcommand === undefined) {
help().catch((err) => {
console.error(err.message);

@@ -211,3 +219,3 @@ process.exit(1);

} else {
error(subcommand).catch(err => {
error(subcommand).catch((err) => {
console.error(err.message);

@@ -214,0 +222,0 @@ process.exit(1);

{
"name": "gsheetcli",
"version": "1.0.1",
"version": "1.0.2",
"description": "Simple Google Sheets command line tools",

@@ -12,4 +12,4 @@ "main": "index.js",

"devDependencies": {
"@types/node": "^10.12.18",
"typescript": "^3.2.2"
"@types/node": "^12.6.9",
"typescript": "^3.5.3"
},

@@ -19,3 +19,3 @@ "dependencies": {

"csv-stringify": "^5.1.2",
"googleapis": "^36.0.0"
"googleapis": "^42.0.0"
},

@@ -22,0 +22,0 @@ "bin": {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc