Browserify plugin for Google Apps Script.
In Google Apps Script, it must be top level function declaration that entry point called from google.script.run.
When gasify
detect a function assignment expression to global
object. it generate a top level function declaration statement.
main.js:
var echo = require('./echo');
global.echo = echo;
echo.js:
module.exports = function(message) {
return message;
}
build:
$ browserify main.js -p gasify -o Code.gs
Code.gs
var global = this;function echo() {
}(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
module.exports = function(message) {
return message;
};
},{}],2:[function(require,module,exports){
(function (global){
var echo = require('./echo');
global.echo = echo;
}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
},{"./echo":1}]},{},[2]);
$ npm install gasify
$ browserify main.js -p gasify -o Code.gs
The following options can be set via the API or command-line:
comment
{Boolean}: If true
then generate a top level function declaration statement with comment. Default is true
.