mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 00:29:02 +01:00
Compile NanoUI into two files
This commit is contained in:
@@ -175,11 +175,8 @@ You can set verify to TRUE if you want send() to sleep until the client has the
|
||||
|
||||
/datum/asset/simple/nanoui
|
||||
assets = list(
|
||||
"nanoui.lib.js" = 'nano/assets/nanoui.lib.js',
|
||||
"nanoui.main.js" = 'nano/assets/nanoui.main.js',
|
||||
"nanoui.templates.js" = 'nano/assets/nanoui.templates.js',
|
||||
"nanoui.lib.css" = 'nano/assets/nanoui.lib.css',
|
||||
"nanoui.main.css" = 'nano/assets/nanoui.main.css',
|
||||
"nanoui.js" = 'nano/assets/nanoui.js',
|
||||
"nanoui.css" = 'nano/assets/nanoui.css',
|
||||
"fontawesome-webfont.eot" = 'nano/assets/fontawesome-webfont.eot',
|
||||
"fontawesome-webfont.woff2" = 'nano/assets/fontawesome-webfont.woff2'
|
||||
)
|
||||
|
||||
@@ -201,14 +201,11 @@
|
||||
/datum/nanoui/proc/get_html()
|
||||
// Generate <script> and <link> tags.
|
||||
var/script_html = {"
|
||||
<script type='text/javascript' src='nanoui.lib.js'></script>
|
||||
<script type='text/javascript' src='nanoui.main.js'></script>
|
||||
<script type='text/javascript' src='nanoui.templates.js'></script>
|
||||
<script type='text/javascript' src='nanoui.js'></script>
|
||||
"}
|
||||
var/stylesheet_html = {"
|
||||
<link rel="stylesheet" type='text/css' href='http://css-spinners.com/css/spinner/hexdots.css'>
|
||||
<link rel='stylesheet' type='text/css' href='nanoui.lib.css' />
|
||||
<link rel='stylesheet' type='text/css' href='nanoui.main.css' />
|
||||
<link rel='stylesheet' type='text/css' href='nanoui.css' />
|
||||
"}
|
||||
|
||||
// Generate JSON.
|
||||
|
||||
+128
-127
@@ -1,127 +1,128 @@
|
||||
### Settings ###
|
||||
util = require("gulp-util")
|
||||
s =
|
||||
min: util.env.min
|
||||
colorblind: util.env.colorblind
|
||||
|
||||
# Project Paths
|
||||
input =
|
||||
fonts: "**/*.{eot,woff2}"
|
||||
images: "images"
|
||||
scripts: "scripts"
|
||||
styles: "styles"
|
||||
templates: "templates"
|
||||
|
||||
output =
|
||||
dir: "assets"
|
||||
scripts:
|
||||
lib: "nanoui.lib.js"
|
||||
main: "nanoui.main.js"
|
||||
styles:
|
||||
lib: "nanoui.lib.css"
|
||||
prefix: "nanoui."
|
||||
templates: "nanoui.templates.js"
|
||||
|
||||
# doT Settings
|
||||
dotOpts =
|
||||
evaluate: /\{\{([\s\S]+?)\}\}/g,
|
||||
interpolate: /\{\{=([\s\S]+?)\}\}/g,
|
||||
encode: /\{\{!([\s\S]+?)\}\}/g,
|
||||
use: /\{\{#([\s\S]+?)\}\}/g,
|
||||
define: /\{\{##\s*([\w\.$]+)\s*(\:|=)([\s\S]+?)#\}\}/g,
|
||||
conditional: /\{\{\?(\?)?\s*([\s\S]*?)\s*\}\}/g,
|
||||
iterate: /\{\{~\s*(?:\}\}|([\s\S]+?)\s*\:\s*([\w$]+)\s*(?:\:\s*([\w$]+))?\s*\}\})/g,
|
||||
varname: "data, config, helper",
|
||||
strip: true,
|
||||
append: true,
|
||||
selfcontained: true
|
||||
|
||||
### Pacakages ###
|
||||
bower = require "main-bower-files"
|
||||
child_process = require "child_process"
|
||||
del = require "del"
|
||||
gulp = require "gulp"
|
||||
merge = require "merge-stream"
|
||||
|
||||
### Plugins ###
|
||||
g = require("gulp-load-plugins")({replaceString: /^gulp(-|\.)|-/g})
|
||||
p =
|
||||
autoprefixer: require "autoprefixer"
|
||||
colorblind: require "postcss-colorblind"
|
||||
fontweights: require "postcss-font-weights"
|
||||
gradient: require "postcss-filter-gradient"
|
||||
opacity: require "postcss-opacity"
|
||||
plsfilters: require "pleeease-filters"
|
||||
rgba: require "postcss-color-rgba-fallback"
|
||||
|
||||
### Helpers ###
|
||||
|
||||
glob = (path) ->
|
||||
"#{path}/*"
|
||||
|
||||
### Tasks ###
|
||||
gulp.task "default", ["fonts", "scripts", "styles", "templates"]
|
||||
|
||||
gulp.task "clean", ->
|
||||
del glob output.dir
|
||||
|
||||
gulp.task "watch", ->
|
||||
gulp.watch [glob input.images], ["reload"]
|
||||
gulp.watch [glob input.scripts], ["reload"]
|
||||
gulp.watch [glob input.styles], ["reload"]
|
||||
gulp.watch [glob input.templates], ["reload"]
|
||||
|
||||
gulp.task "reload", ["default"], ->
|
||||
child_process.exec "reload.bat", (err, stdout, stderr) ->
|
||||
return console.log err if err
|
||||
|
||||
gulp.task "fonts", ["clean"], ->
|
||||
gulp.src bower input.fonts
|
||||
.pipe gulp.dest output.dir
|
||||
|
||||
gulp.task "scripts", ["clean"], ->
|
||||
lib = gulp.src bower "**/*.js"
|
||||
.pipe g.concat(output.scripts.lib)
|
||||
.pipe g.if(s.min, g.uglify(), g.jsbeautifier())
|
||||
.pipe gulp.dest output.dir
|
||||
|
||||
main = gulp.src glob input.scripts
|
||||
.pipe g.coffee()
|
||||
.pipe g.concat(output.scripts.main)
|
||||
.pipe g.if(s.min, g.uglify(), g.jsbeautifier())
|
||||
.pipe gulp.dest output.dir
|
||||
|
||||
merge lib, main
|
||||
|
||||
gulp.task "styles", ["clean"], ->
|
||||
lib = gulp.src bower "**/*.css"
|
||||
.pipe g.replace("../fonts/", "")
|
||||
.pipe g.concat(output.styles.lib)
|
||||
.pipe g.if(s.min, g.cssnano({discardComments: {removeAll: true}}), g.csscomb())
|
||||
.pipe gulp.dest output.dir
|
||||
|
||||
main = gulp.src glob input.styles
|
||||
.pipe g.filter(["*.less", "!_*.less"])
|
||||
.pipe g.less({paths: [input.images]})
|
||||
.pipe g.postcss([
|
||||
p.autoprefixer({browsers: ["last 2 versions", "ie >= 8"]}),
|
||||
p.plsfilters({oldIE: true}),
|
||||
p.rgba({oldie: true}),
|
||||
p.opacity,
|
||||
p.gradient,
|
||||
p.fontweights
|
||||
])
|
||||
.pipe g.if(s.colorblind, g.postcss([p.colorblind]))
|
||||
.pipe g.if(s.min, g.cssnano({discardComments: {removeAll: true}}), g.csscomb())
|
||||
.pipe g.rename({prefix: output.styles.prefix})
|
||||
.pipe gulp.dest output.dir
|
||||
|
||||
merge lib, main
|
||||
|
||||
gulp.task "templates", ["clean"], ->
|
||||
gulp.src glob input.templates
|
||||
.pipe g.dotprecompiler({dictionary: "TMPL", templateSettings: dotOpts})
|
||||
.pipe g.concat(output.templates)
|
||||
.pipe g.header("window.TMPL = {};\n")
|
||||
.pipe g.if(s.min, g.uglify(), g.jsbeautifier())
|
||||
.pipe gulp.dest output.dir
|
||||
### Settings ###
|
||||
util = require("gulp-util")
|
||||
f =
|
||||
colorblind: util.env.colorblind || util.env.c
|
||||
min: util.env.min || util.env.m
|
||||
sourcemaps: util.env.sourcemaps || util.env.s
|
||||
|
||||
# Project Paths
|
||||
input =
|
||||
fonts: "**/*.{eot,woff2}"
|
||||
images: "images"
|
||||
scripts: "scripts"
|
||||
styles: "styles"
|
||||
templates: "templates"
|
||||
|
||||
output =
|
||||
dir: "assets"
|
||||
js: "nanoui.js"
|
||||
css: "nanoui.css"
|
||||
|
||||
# doT Settings
|
||||
dotOpts =
|
||||
evaluate: /\{\{([\s\S]+?)\}\}/g,
|
||||
interpolate: /\{\{=([\s\S]+?)\}\}/g,
|
||||
encode: /\{\{!([\s\S]+?)\}\}/g,
|
||||
use: /\{\{#([\s\S]+?)\}\}/g,
|
||||
define: /\{\{##\s*([\w\.$]+)\s*(\:|=)([\s\S]+?)#\}\}/g,
|
||||
conditional: /\{\{\?(\?)?\s*([\s\S]*?)\s*\}\}/g,
|
||||
iterate: /\{\{~\s*(?:\}\}|([\s\S]+?)\s*\:\s*([\w$]+)\s*(?:\:\s*([\w$]+))?\s*\}\})/g,
|
||||
varname: "data, config, helper",
|
||||
strip: true,
|
||||
append: true,
|
||||
selfcontained: true
|
||||
|
||||
### Pacakages ###
|
||||
bower = require "main-bower-files"
|
||||
child_process = require "child_process"
|
||||
del = require "del"
|
||||
gulp = require "gulp"
|
||||
merge = require "merge2"
|
||||
|
||||
### Plugins ###
|
||||
g = require("gulp-load-plugins")({replaceString: /^gulp(-|\.)|-/g})
|
||||
p =
|
||||
autoprefixer: require "autoprefixer"
|
||||
colorblind: require "postcss-colorblind"
|
||||
fontweights: require "postcss-font-weights"
|
||||
gradient: require "postcss-filter-gradient"
|
||||
opacity: require "postcss-opacity"
|
||||
plsfilters: require "pleeease-filters"
|
||||
rgba: require "postcss-color-rgba-fallback"
|
||||
|
||||
### Helpers ###
|
||||
|
||||
glob = (path) ->
|
||||
"#{path}/*"
|
||||
|
||||
### Tasks ###
|
||||
gulp.task "default", ["fonts", "js", "css"]
|
||||
|
||||
|
||||
gulp.task "clean", ->
|
||||
del glob output.dir
|
||||
|
||||
|
||||
gulp.task "watch", ->
|
||||
gulp.watch [glob input.images], ["reload"]
|
||||
gulp.watch [glob input.scripts], ["reload"]
|
||||
gulp.watch [glob input.styles], ["reload"]
|
||||
gulp.watch [glob input.templates], ["reload"]
|
||||
|
||||
|
||||
gulp.task "reload", ["default"], ->
|
||||
child_process.exec "reload.bat", (err, stdout, stderr) ->
|
||||
return console.log err if err
|
||||
|
||||
|
||||
gulp.task "fonts", ["clean"], ->
|
||||
gulp.src bower input.fonts
|
||||
.pipe gulp.dest output.dir
|
||||
|
||||
|
||||
gulp.task "js", ["clean"], ->
|
||||
lib = gulp.src bower "**/*.js"
|
||||
.pipe g.if(f.sourcemaps, g.sourcemaps.init())
|
||||
|
||||
main = gulp.src glob input.scripts
|
||||
.pipe g.if(f.sourcemaps, g.sourcemaps.init())
|
||||
.pipe g.coffee()
|
||||
|
||||
templates = gulp.src glob input.templates
|
||||
.pipe g.dotprecompiler({dictionary: "TMPL", templateSettings: dotOpts})
|
||||
.pipe g.concat("templates")
|
||||
.pipe g.header("window.TMPL = {};\n")
|
||||
|
||||
combined = merge lib, main, templates
|
||||
combined
|
||||
.pipe g.concat(output.js)
|
||||
.pipe g.if(f.min, g.uglify(), g.jsbeautifier())
|
||||
.pipe g.if(f.sourcemaps, g.sourcemaps.write())
|
||||
.pipe gulp.dest output.dir
|
||||
|
||||
|
||||
gulp.task "css", ["clean"], ->
|
||||
lib = gulp.src bower "**/*.css"
|
||||
.pipe g.if(f.sourcemaps, g.sourcemaps.init())
|
||||
.pipe g.replace("../fonts/", "")
|
||||
|
||||
main = gulp.src glob input.styles
|
||||
.pipe g.filter(["*.less", "!_*.less"])
|
||||
.pipe g.if(f.sourcemaps, g.sourcemaps.init())
|
||||
.pipe g.less({paths: [input.images]})
|
||||
.pipe g.postcss([
|
||||
p.autoprefixer({browsers: ["last 2 versions", "ie >= 8"]}),
|
||||
p.plsfilters({oldIE: true}),
|
||||
p.rgba({oldie: true}),
|
||||
p.opacity,
|
||||
p.gradient,
|
||||
p.fontweights
|
||||
])
|
||||
.pipe g.if(f.colorblind, g.postcss([p.colorblind]))
|
||||
|
||||
combined = merge lib, main
|
||||
combined
|
||||
.pipe g.if(f.min, g.cssnano({discardComments: {removeAll: true}}), g.csscomb())
|
||||
.pipe g.concat(output.css)
|
||||
.pipe g.if(f.sourcemaps, g.sourcemaps.write())
|
||||
.pipe gulp.dest output.dir
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+2
-1
@@ -19,11 +19,12 @@
|
||||
"gulp-postcss": "^6.0.1",
|
||||
"gulp-rename": "^1.2.2",
|
||||
"gulp-replace": "^0.5.4",
|
||||
"gulp-sourcemaps": "^1.6.0",
|
||||
"gulp-uglify": "^1.5.1",
|
||||
"gulp-util": "^3.0.7",
|
||||
"hexa-color-regex": "^1.0.0",
|
||||
"main-bower-files": "^2.9.0",
|
||||
"merge-stream": "^1.0.0",
|
||||
"merge2": "^0.3.6",
|
||||
"pleeease-filters": "^2.0.0",
|
||||
"postcss-color-rgba-fallback": "git+https://github.com/postcss/postcss-color-rgba-fallback",
|
||||
"postcss-colorblind": "^0.4.0",
|
||||
|
||||
Reference in New Issue
Block a user