mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-05-12 12:41:04 +00:00
Add support CoffeeScript
This commit is contained in:
parent
fbe0edae6e
commit
85656b27dc
28
app.js
28
app.js
|
@ -32,6 +32,9 @@
|
||||||
// The appname argument causes <appname>.js to be loaded. The interface returned
|
// The appname argument causes <appname>.js to be loaded. The interface returned
|
||||||
// must define main = function(args) {}, which is called once the module is
|
// must define main = function(args) {}, which is called once the module is
|
||||||
// loaded.
|
// loaded.
|
||||||
|
//
|
||||||
|
// Report abuse or security issue: abuse@catswords.net
|
||||||
|
//
|
||||||
|
|
||||||
var exit = function(status) {
|
var exit = function(status) {
|
||||||
console.error("Exit", status, "caused");
|
console.error("Exit", status, "caused");
|
||||||
|
@ -203,8 +206,9 @@ function include(FN) {
|
||||||
*/
|
*/
|
||||||
function require(FN) {
|
function require(FN) {
|
||||||
var cache = require.__cache__ = require.__cache__ || {};
|
var cache = require.__cache__ = require.__cache__ || {};
|
||||||
|
var suffix = FN.substr(FN.lastIndexOf('.'));
|
||||||
|
|
||||||
if (FN.substr(FN.length - 3) !== '.js') FN += ".js";
|
if (suffix !== '.js' && suffix !== '.coffee') FN += ".js";
|
||||||
if (cache[FN]) return cache[FN];
|
if (cache[FN]) return cache[FN];
|
||||||
|
|
||||||
// get file and directory name
|
// get file and directory name
|
||||||
|
@ -212,7 +216,15 @@ function require(FN) {
|
||||||
var __dirname__ = require.__getDirName__(__filename__);
|
var __dirname__ = require.__getDirName__(__filename__);
|
||||||
var T = require.__load__(FN);
|
var T = require.__load__(FN);
|
||||||
|
|
||||||
// build
|
// pre-compile if CoffeeScript (Experimental)
|
||||||
|
if (suffix === '.coffee' && typeof CoffeeScript !== "undefined") {
|
||||||
|
T = CoffeeScript.compile(T, {
|
||||||
|
"bare": true,
|
||||||
|
"shiftLine": true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// compile
|
||||||
T = "(function(global){var module=new require.__ModuleObject__();return(function(exports,require,module,__filename,__dirname){"
|
T = "(function(global){var module=new require.__ModuleObject__();return(function(exports,require,module,__filename,__dirname){"
|
||||||
+ '"use strict";'
|
+ '"use strict";'
|
||||||
+ T
|
+ T
|
||||||
|
@ -305,7 +317,7 @@ function initializeConsole() {
|
||||||
exit(exitStatus);
|
exit(exitStatus);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
console.error("Error, missing main entry point in", name + ".js");
|
console.error("Error, missing main entry point in", name);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
console.error("Error, cannot find", name + ".js");
|
console.error("Error, cannot find", name + ".js");
|
||||||
|
@ -348,8 +360,8 @@ include("app/assets/js/json2");
|
||||||
// JSON 3 was a JSON polyfill for older JavaScript platforms
|
// JSON 3 was a JSON polyfill for older JavaScript platforms
|
||||||
//var JSON = require("app/assets/js/json3-3.3.2.min");
|
//var JSON = require("app/assets/js/json3-3.3.2.min");
|
||||||
|
|
||||||
// core-js (formerly babel-polyfill)
|
// core-js (Formerly aka, babel-polyfill)
|
||||||
require("app/assets/js/corejs-build-20210810");
|
require("app/assets/js/corejs-20210810.wsh");
|
||||||
|
|
||||||
// es5-shims
|
// es5-shims
|
||||||
//require("app/assets/js/es5-shim-4.5.15.min");
|
//require("app/assets/js/es5-shim-4.5.15.min");
|
||||||
|
@ -364,15 +376,17 @@ var yaml = require("app/assets/js/js-yaml-4.1.0.wsh");
|
||||||
// is.js Micro check library
|
// is.js Micro check library
|
||||||
var is = require("app/assets/js/is-0.9.0.min");
|
var is = require("app/assets/js/is-0.9.0.min");
|
||||||
|
|
||||||
|
// CoffeeScript v2.7.0 for legacy
|
||||||
|
include("app/assets/js/coffeescript-legacy-2.7.0.min");
|
||||||
|
|
||||||
// Dive into entrypoint
|
// Dive into entrypoint
|
||||||
function __main__() {
|
function __main__() {
|
||||||
console.log("Report abuse or security issue: abuse@catswords.net");
|
|
||||||
|
|
||||||
if (typeof window === "undefined") {
|
if (typeof window === "undefined") {
|
||||||
initializeConsole();
|
initializeConsole();
|
||||||
} else {
|
} else {
|
||||||
console.log("welcome");
|
console.log("welcome");
|
||||||
}
|
}
|
||||||
|
console.log("Report abuse or security issue: abuse@catswords.net");
|
||||||
}
|
}
|
||||||
|
|
||||||
__main__();
|
__main__();
|
||||||
|
|
8
app/assets/js/coffeescript-legacy-2.7.0.min.js
vendored
Normal file
8
app/assets/js/coffeescript-legacy-2.7.0.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
helloworld.coffee
Normal file
1
helloworld.coffee
Normal file
|
@ -0,0 +1 @@
|
||||||
|
console.log("CoffeeScript Hello world");
|
Loading…
Reference in New Issue
Block a user