add Bootstrap working example
• re-organize file structure with one directory per dialog • add index.html file per dialog • add bootstrap styling and dynamic cdn loading • clean up react code and stylesheet npm setup script update adds force flag "setup": "rm -f .clasp.json ..." Update README.md Move clasp to devDependencies update dynamic cdn urls Add repository field
This commit is contained in:
Vendored
+33
-26
@@ -2,6 +2,8 @@ function onOpen() {
|
||||
}
|
||||
function openDialog() {
|
||||
}
|
||||
function openDialogBootstrap() {
|
||||
}
|
||||
function openAboutSidebar() {
|
||||
}
|
||||
function getSheetsData() {
|
||||
@@ -59,6 +61,29 @@ function setActiveSheet() {
|
||||
return Object.prototype.hasOwnProperty.call(object, property);
|
||||
}, __webpack_require__.p = "", __webpack_require__(__webpack_require__.s = 2);
|
||||
}([ function(module, __webpack_exports__, __webpack_require__) {
|
||||
"use strict";
|
||||
__webpack_require__.d(__webpack_exports__, "a", (function() {
|
||||
return onOpen;
|
||||
})), __webpack_require__.d(__webpack_exports__, "c", (function() {
|
||||
return openDialog;
|
||||
})), __webpack_require__.d(__webpack_exports__, "d", (function() {
|
||||
return openDialogBootstrap;
|
||||
})), __webpack_require__.d(__webpack_exports__, "b", (function() {
|
||||
return openAboutSidebar;
|
||||
}));
|
||||
var onOpen = function() {
|
||||
SpreadsheetApp.getUi().createMenu("My Sample React Project").addItem("Sheet Editor", "openDialog").addItem("Sheet Editor (Bootstrap)", "openDialogBootstrap").addItem("About me", "openAboutSidebar").addToUi();
|
||||
}, openDialog = function() {
|
||||
var html = HtmlService.createHtmlOutputFromFile("dialog-demo").setWidth(600).setHeight(600);
|
||||
SpreadsheetApp.getUi().showModalDialog(html, "Sheet Editor");
|
||||
}, openDialogBootstrap = function() {
|
||||
var html = HtmlService.createHtmlOutputFromFile("dialog-demo-bootstrap").setWidth(600).setHeight(600);
|
||||
SpreadsheetApp.getUi().showModalDialog(html, "Sheet Editor (Bootstrap)");
|
||||
}, openAboutSidebar = function() {
|
||||
var html = HtmlService.createHtmlOutputFromFile("sidebar-about-page");
|
||||
SpreadsheetApp.getUi().showSidebar(html);
|
||||
};
|
||||
}, function(module, __webpack_exports__, __webpack_require__) {
|
||||
"use strict";
|
||||
__webpack_require__.d(__webpack_exports__, "c", (function() {
|
||||
return getSheetsData;
|
||||
@@ -74,11 +99,11 @@ function setActiveSheet() {
|
||||
}, getSheetsData = function() {
|
||||
var activeSheetName = SpreadsheetApp.getActive().getSheetName();
|
||||
return getSheets().map((function(sheet, index) {
|
||||
var sheetName = sheet.getName();
|
||||
var name = sheet.getName();
|
||||
return {
|
||||
text: sheetName,
|
||||
sheetIndex: index,
|
||||
isActive: sheetName === activeSheetName
|
||||
name: name,
|
||||
index: index,
|
||||
isActive: name === activeSheetName
|
||||
};
|
||||
}));
|
||||
}, addSheet = function(sheetTitle) {
|
||||
@@ -89,32 +114,14 @@ function setActiveSheet() {
|
||||
}, setActiveSheet = function(sheetName) {
|
||||
return SpreadsheetApp.getActive().getSheetByName(sheetName).activate(), getSheetsData();
|
||||
};
|
||||
}, function(module, __webpack_exports__, __webpack_require__) {
|
||||
"use strict";
|
||||
__webpack_require__.d(__webpack_exports__, "a", (function() {
|
||||
return onOpen;
|
||||
})), __webpack_require__.d(__webpack_exports__, "c", (function() {
|
||||
return openDialog;
|
||||
})), __webpack_require__.d(__webpack_exports__, "b", (function() {
|
||||
return openAboutSidebar;
|
||||
}));
|
||||
var onOpen = function() {
|
||||
SpreadsheetApp.getUi().createMenu("My Sample React Project").addItem("Sheet Name Editor", "openDialog").addItem("About me", "openAboutSidebar").addToUi();
|
||||
}, openDialog = function() {
|
||||
var html = HtmlService.createHtmlOutputFromFile("main").setWidth(400).setHeight(600);
|
||||
SpreadsheetApp.getUi().showModalDialog(html, "Sheet Editor");
|
||||
}, openAboutSidebar = function() {
|
||||
var html = HtmlService.createHtmlOutputFromFile("about");
|
||||
SpreadsheetApp.getUi().showSidebar(html);
|
||||
};
|
||||
}, function(module, __webpack_exports__, __webpack_require__) {
|
||||
"use strict";
|
||||
__webpack_require__.r(__webpack_exports__), function(global) {
|
||||
var _ui__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1), _sheets__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
|
||||
var _ui__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0), _sheets__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
|
||||
global.onOpen = _ui__WEBPACK_IMPORTED_MODULE_0__["a"], global.openDialog = _ui__WEBPACK_IMPORTED_MODULE_0__["c"],
|
||||
global.openAboutSidebar = _ui__WEBPACK_IMPORTED_MODULE_0__["b"], global.getSheetsData = _sheets__WEBPACK_IMPORTED_MODULE_1__["c"],
|
||||
global.addSheet = _sheets__WEBPACK_IMPORTED_MODULE_1__["a"], global.deleteSheet = _sheets__WEBPACK_IMPORTED_MODULE_1__["b"],
|
||||
global.setActiveSheet = _sheets__WEBPACK_IMPORTED_MODULE_1__["d"];
|
||||
global.openDialogBootstrap = _ui__WEBPACK_IMPORTED_MODULE_0__["d"], global.openAboutSidebar = _ui__WEBPACK_IMPORTED_MODULE_0__["b"],
|
||||
global.getSheetsData = _sheets__WEBPACK_IMPORTED_MODULE_1__["c"], global.addSheet = _sheets__WEBPACK_IMPORTED_MODULE_1__["a"],
|
||||
global.deleteSheet = _sheets__WEBPACK_IMPORTED_MODULE_1__["b"], global.setActiveSheet = _sheets__WEBPACK_IMPORTED_MODULE_1__["d"];
|
||||
}.call(this, __webpack_require__(3));
|
||||
}, function(module, exports) {
|
||||
var g;
|
||||
|
||||
Vendored
+18
File diff suppressed because one or more lines are too long
Vendored
+16
File diff suppressed because one or more lines are too long
Vendored
-11
File diff suppressed because one or more lines are too long
+7
-6
@@ -1,11 +1,12 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<base target="_top">
|
||||
<base target="_top" />
|
||||
<!-- Add any external scripts and stylesheets here -->
|
||||
</head>
|
||||
<body>
|
||||
<section id="index">
|
||||
<!-- bundled js and css will get inlined here -->
|
||||
</section>
|
||||
<script type="text/javascript" src="https://unpkg.com/react@16.13.0/umd/react.production.min.js"></script><script type="text/javascript" src="https://unpkg.com/react-dom@16.13.0/umd/react-dom.production.min.js"></script><script type="text/javascript">!function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=2)}([function(e,t){e.exports=React},function(e,t){e.exports=ReactDOM},function(e,t,r){"use strict";r.r(t);var n=r(0),o=r.n(n),u=r(1);var a=()=>o.a.createElement("div",{className:"sheetNameText"},o.a.createElement("div",null,"Github repo:"),o.a.createElement("a",{href:"https://www.github.com/enuchi/React-Google-Apps-Script",target:"_blank",rel:"noopener noreferrer"},"React + Google Apps Script"),o.a.createElement("div",null,"-Elisha Nuchi"));r.n(u).a.render(o.a.createElement(a,null),document.getElementById("index"))}]);</script></body>
|
||||
</html>
|
||||
<section id="index">
|
||||
<!-- bundled js and css will get inlined here during build -->
|
||||
</section>
|
||||
<script type="text/javascript" src="https://unpkg.com/react@16.13.0/umd/react.production.min.js"></script><script type="text/javascript" src="https://unpkg.com/react-dom@16.13.0/umd/react-dom.production.min.js"></script><script type="text/javascript">!function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=2)}([function(e,t){e.exports=React},function(e,t){e.exports=ReactDOM},function(e,t,r){"use strict";r.r(t);var n=r(0),o=r.n(n),u=r(1);var l=()=>o.a.createElement("div",null,o.a.createElement("div",null,"Github repo:"),o.a.createElement("a",{href:"https://www.github.com/enuchi/React-Google-Apps-Script",target:"_blank",rel:"noopener noreferrer"},"React + Google Apps Script"),o.a.createElement("div",null,"-Elisha Nuchi"));r.n(u).a.render(o.a.createElement(l,null),document.getElementById("index"))}]);</script></body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user