JSFiddle - React, Tailwind, and code Playground
by pierian_design
JavaScript
function cowsGetCurrentSpreadsheetInfo() {
var oSpreadsheet = SpreadsheetApp.getActive();
var aSheets = oSpreadsheet.getSheets();
var aResult = [{
'sName': oSpreadsheet.getName(),
'sId': oSpreadsheet.getId(),
'bMainSpreadsheet': true,
'bSelected': false,
'oSheets': {}
}];
aSheets.forEach(function(oSheet) {
var sSheetId = oSpreadsheet.getId() + '-' + oSheet.getSheetId();
aResult[0].oSheets[sSheetId] = {
'sName': oSheet.getName(),
'sId': oSheet.getSheetId(),
'sNotation': '',
'sSpreadsheetId': oSpreadsheet.getId(),
'bMainSpreadsheet': true,
'bSelected': false,
'width': oSheet.getMaxColumns(),
'height': oSheet.getMaxRows()
};
});
return JSON.stringify(aResult);
}
function cowsGetCurrentSpreadsheetInfo() {
var oSpreadsheet = SpreadsheetApp.getActive();
return [getSpreadsheetInfo(oSpreadsheet)];
}
function getSpreadheetsInfo(aSpId) {
return aSpId.map(function(sId) {
var oSpreadsheet = SpreadsheetApp.openById(sId);
return getSpreadsheetInfo(oSpreadsheet);
});
}
function getSpreadsheetInfo(oSpreadsheet) {
var aSheets = oSpreadsheet.getSheets();
var oSpreadsheetInfo = {};
var oSheets = {};
var aResult = [];
aSheets.forEach(eachSheetIterate);
function eachSheetIterate(oSheet) {
var sSheetId = getSheetId(oSpreadsheet.getId(), oSheet.getSheetId());
oSheets[sSheetId] = getSheetInfo(oSpreadsheet, oSheet);
}
oSpreadsheetInfo = getSpreadsheetInfo(oSpreadsheet, oSheets);
return oSpreadsheetInfo;
}
function getSheetId(oSpreadsheet, oSheet) {
return oSpreadsheet.getId() + '-' + oSheet.getSheetId();
}
function getSpreadsheetInfo(oSpreadsheet, oSheets) {
return {
'sName': oSpreadsheet.getName(),
'sId': oSpreadsheet.getId(),
'bMainSpreadsheet': true,
'bSelected':...