ion
Version:
ion language ========================
900 lines (899 loc) • 500 kB
JavaScript
void (function(){var _ion_builder_WebsiteBuilder_ = function(module,exports,require){'use strict';
var ion = require('../'), _ref, _ref2, clientJsDir = 'js', serverJsDir = 'WEB-INF/js', serverJavaDir = 'WEB-INF/java', np = require('path'), fs = require('fs');
_ref = ion;
var builder = _ref.builder;
_ref2 = builder;
var File = _ref2.File;
var Directory = _ref2.Directory;
var utility = _ref2.utility;
var ModuleBuilder = _ref2.ModuleBuilder;
module.exports = exports = ion.template(function () {
return ion.createRuntime({
type: 'Template',
id: null,
body: [
{
type: 'VariableDeclaration',
declarations: [
{
type: 'VariableDeclarator',
id: {
type: 'Identifier',
name: 'packageJson',
loc: {
start: {
line: 14,
column: 8,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 19,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
init: {
type: 'CallExpression',
callee: {
type: 'MemberExpression',
computed: false,
object: {
type: 'Identifier',
name: 'JSON',
loc: {
start: {
line: 14,
column: 22,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 26,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'parse',
loc: {
start: {
line: 14,
column: 27,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 32,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 14,
column: 22,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 32,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
arguments: [{
type: 'CallExpression',
callee: {
type: 'MemberExpression',
computed: false,
object: {
type: 'NewExpression',
callee: {
type: 'Identifier',
name: 'File',
loc: {
start: {
line: 14,
column: 37,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 41,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
arguments: [{
type: 'Literal',
value: 'package.json'
}],
loc: {
start: {
line: 14,
column: 33,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 57,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'read',
loc: {
start: {
line: 14,
column: 58,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 62,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 14,
column: 33,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 62,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
arguments: [],
loc: {
start: {
line: 14,
column: 33,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 64,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
}],
loc: {
start: {
line: 14,
column: 22,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 14,
column: 65,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
}
},
{
type: 'VariableDeclarator',
id: {
type: 'Identifier',
name: 'input',
loc: {
start: {
line: 15,
column: 8,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 13,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
init: {
type: 'NewExpression',
callee: {
type: 'Identifier',
name: 'Directory',
loc: {
start: {
line: 15,
column: 20,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 29,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
arguments: [{
type: 'ConditionalExpression',
test: {
type: 'BinaryExpression',
operator: '!=',
left: {
type: 'MemberExpression',
computed: false,
object: {
type: 'MemberExpression',
computed: false,
object: {
type: 'Identifier',
name: 'packageJson',
loc: {
start: {
line: 15,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 41,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'directories',
loc: {
start: {
line: 15,
column: 42,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 53,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 15,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 53,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'src',
loc: {
start: {
line: 15,
column: 54,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 57,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 15,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 57,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
right: {
type: 'Literal',
value: null
}
},
consequent: {
type: 'MemberExpression',
computed: false,
object: {
type: 'MemberExpression',
computed: false,
object: {
type: 'Identifier',
name: 'packageJson',
loc: {
start: {
line: 15,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 41,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'directories',
loc: {
start: {
line: 15,
column: 42,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 53,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 15,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 53,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'src',
loc: {
start: {
line: 15,
column: 54,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 57,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 15,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 57,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
alternate: {
type: 'Literal',
value: 'src'
}
}],
loc: {
start: {
line: 15,
column: 16,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 15,
column: 66,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
}
},
{
type: 'VariableDeclarator',
id: {
type: 'Identifier',
name: 'output',
loc: {
start: {
line: 16,
column: 8,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 14,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
init: {
type: 'NewExpression',
callee: {
type: 'Identifier',
name: 'Directory',
loc: {
start: {
line: 16,
column: 21,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
arguments: [{
type: 'ConditionalExpression',
test: {
type: 'BinaryExpression',
operator: '!=',
left: {
type: 'MemberExpression',
computed: false,
object: {
type: 'MemberExpression',
computed: false,
object: {
type: 'Identifier',
name: 'packageJson',
loc: {
start: {
line: 16,
column: 31,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 42,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'directories',
loc: {
start: {
line: 16,
column: 43,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 54,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 16,
column: 31,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 54,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'www',
loc: {
start: {
line: 16,
column: 55,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 58,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 16,
column: 31,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 58,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
right: {
type: 'Literal',
value: null
}
},
consequent: {
type: 'MemberExpression',
computed: false,
object: {
type: 'MemberExpression',
computed: false,
object: {
type: 'Identifier',
name: 'packageJson',
loc: {
start: {
line: 16,
column: 31,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 42,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'directories',
loc: {
start: {
line: 16,
column: 43,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 54,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 16,
column: 31,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 54,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'www',
loc: {
start: {
line: 16,
column: 55,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 58,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 16,
column: 31,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 58,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
alternate: {
type: 'Literal',
value: 'debug'
}
}],
loc: {
start: {
line: 16,
column: 17,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 16,
column: 69,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
}
},
{
type: 'VariableDeclarator',
id: {
type: 'Identifier',
name: 'clientOutput',
loc: {
start: {
line: 17,
column: 8,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 17,
column: 20,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
init: {
type: 'CallExpression',
callee: {
type: 'MemberExpression',
computed: false,
object: {
type: 'Identifier',
name: 'output',
loc: {
start: {
line: 17,
column: 23,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 17,
column: 29,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'getDirectory',
loc: {
start: {
line: 17,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 17,
column: 42,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 17,
column: 23,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 17,
column: 42,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
arguments: [{
type: 'Identifier',
name: 'clientJsDir',
loc: {
start: {
line: 17,
column: 43,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 17,
column: 54,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
}],
loc: {
start: {
line: 17,
column: 23,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 17,
column: 55,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
}
},
{
type: 'VariableDeclarator',
id: {
type: 'Identifier',
name: 'serverOutput',
loc: {
start: {
line: 18,
column: 8,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 18,
column: 20,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
init: {
type: 'CallExpression',
callee: {
type: 'MemberExpression',
computed: false,
object: {
type: 'Identifier',
name: 'output',
loc: {
start: {
line: 18,
column: 23,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 18,
column: 29,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
property: {
type: 'Identifier',
name: 'getDirectory',
loc: {
start: {
line: 18,
column: 30,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 18,
column: 42,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
loc: {
start: {
line: 18,
column: 23,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
},
end: {
line: 18,
column: 42,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'
}
}
},
arguments: [{
type: 'Identifier',
name: 'serverJsDir',
loc: {
start: {
line: 18,
column: 43,
fixed: true,
source: 'ion/builder/WebsiteBuilder.ion'