rename build/ to min/

This commit is contained in:
rolux 2014-09-26 18:57:12 +02:00
parent 51696562f1
commit 383433a06d
25 changed files with 84 additions and 75 deletions

View file

@ -4,8 +4,8 @@
<title>OxDoc Tutorial</title> <title>OxDoc Tutorial</title>
<meta http-equiv="Keywords" content="Documentation"/> <meta http-equiv="Keywords" content="Documentation"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,7 +4,7 @@
<title>Editable Elements</title> <title>Editable Elements</title>
<meta http-equiv="Keywords" content="Forms"/> <meta http-equiv="Keywords" content="Forms"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../dev/Ox.js"></script> <script type="text/javascript" src="../../../dev/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>

View file

@ -4,9 +4,9 @@
<title>File Selection</title> <title>File Selection</title>
<meta http-equiv="Keywords" content="Forms"/> <meta http-equiv="Keywords" content="Forms"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,8 +4,8 @@
<title>Form Elements</title> <title>Form Elements</title>
<meta http-equiv="Keywords" content="Forms"/> <meta http-equiv="Keywords" content="Forms"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/png/icon16.png"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Image Manipulation</title> <title>Image Manipulation</title>
<meta http-equiv="Keywords" content="Images"/> <meta http-equiv="Keywords" content="Images"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Steganograpy</title> <title>Steganograpy</title>
<meta http-equiv="Keywords" content="Images"/> <meta http-equiv="Keywords" content="Images"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Cities</title> <title>Cities</title>
<meta http-equiv="Keywords" content="Lists"/> <meta http-equiv="Keywords" content="Lists"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Countries</title> <title>Countries</title>
<meta http-equiv="Keywords" content="Lists"/> <meta http-equiv="Keywords" content="Lists"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>JSON</title> <title>JSON</title>
<meta http-equiv="Keywords" content="Lists"/> <meta http-equiv="Keywords" content="Lists"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Flight Paths</title> <title>Flight Paths</title>
<meta http-equiv="Keywords" content="Maps"/> <meta http-equiv="Keywords" content="Maps"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>IPv4 Map of the Internet</title> <title>IPv4 Map of the Internet</title>
<meta http-equiv="Keywords" content="Maps"/> <meta http-equiv="Keywords" content="Maps"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Manhattan Grid</title> <title>Manhattan Grid</title>
<meta http-equiv="Keywords" content="Maps"/> <meta http-equiv="Keywords" content="Maps"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,8 +4,8 @@
<title>World Map with Countries</title> <title>World Map with Countries</title>
<meta http-equiv="Keywords" content="Lists"/> <meta http-equiv="Keywords" content="Lists"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Mouse Events</title> <title>Mouse Events</title>
<meta http-equiv="Keywords" content="UI"/> <meta http-equiv="Keywords" content="UI"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Progress</title> <title>Progress</title>
<meta http-equiv="Keywords" content="UI"/> <meta http-equiv="Keywords" content="UI"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Symbols</title> <title>Symbols</title>
<meta http-equiv="Keywords" content="UI"/> <meta http-equiv="Keywords" content="UI"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -4,9 +4,9 @@
<title>Widget Design Patterns</title> <title>Widget Design Patterns</title>
<meta http-equiv="Keywords" content="UI"/> <meta http-equiv="Keywords" content="UI"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="shortcut icon" type="image/png" href="../../../source/Ox.UI/themes/oxlight/png/icon16.png"/> <link rel="shortcut icon" type="image/png" href="../../../source/UI/themes/oxlight/png/icon16.png"/>
<link rel="stylesheet" type="text/css" href="css/example.css"/> <link rel="stylesheet" type="text/css" href="css/example.css"/>
<script type="text/javascript" src="../../../build/Ox.js"></script> <script type="text/javascript" src="../../../min/Ox.js"></script>
<script type="text/javascript" src="js/example.js"></script> <script type="text/javascript" src="js/example.js"></script>
<script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script> <script>window.addEventListener('message', function(e) { e.origin == window.location.origin && eval('(' + e.data + ')'); });</script>
</head> </head>

View file

@ -160,7 +160,7 @@ Ox.load(/^https?:\/\/(www\.)?oxjs\.org\//.test(
return css; return css;
}, },
getSRC: function(element) { getSRC: function(element) {
return 'build/UI/themes/' + app.user.theme + '/' + { return 'min/UI/themes/' + app.user.theme + '/' + {
icon: 'png/icon16.png', icon: 'png/icon16.png',
loading: 'svg/symbolLoading.svg', loading: 'svg/symbolLoading.svg',
logo: 'png/logo128.png' logo: 'png/logo128.png'

View file

@ -3,7 +3,7 @@
<p><pre>&lt;!DOCTYPE HTML> <p><pre>&lt;!DOCTYPE HTML>
&lt;html> &lt;html>
&lt;head> &lt;head>
&lt;script type="text/javascript" src="OxJS/build/Ox.js">&lt;/script> &lt;script type="text/javascript" src="OxJS/min/Ox.js">&lt;/script>
&lt;script> &lt;script>
Ox.load(function() { Ox.load(function() {
// Document ready. Your code here. // Document ready. Your code here.

View file

@ -13,8 +13,8 @@
<br> <br>
<h2><b>Build</b></h2> <h2><b>Build</b></h2>
<p>Minified production version, including modules.</p> <p>Minified production version, including modules.</p>
<p>Download &nbsp;<a href="https://oxjs.org/downloads/OxJS.latest.build.tar.gz"><code>OxJS.latest.build.tar.gz</code></a>{size.build}.</p> <p>Download &nbsp;<a href="https://oxjs.org/downloads/OxJS.latest.min.tar.gz"><code>OxJS.latest.min.tar.gz</code></a>{size.min}.</p>
<p>Or get <code>Ox.js</code> only: &nbsp;<a href="https://oxjs.org/oxjs/build/Ox.js"><code>Ox.js</code></a>{size.minified}.</p> <p>Or get <code>Ox.js</code> only: &nbsp;<a href="https://oxjs.org/oxjs/min/Ox.js"><code>Ox.js</code></a>{size.oxjs}.</p>
<br> <br>
<h2><b>Getting Started</b></h2> <h2><b>Getting Started</b></h2>
<p>Take a look at our short <a href="#readme/getting_started">tutorial</a>.</p> <p>Take a look at our short <a href="#readme/getting_started">tutorial</a>.</p>

View file

@ -13,9 +13,9 @@
version = +new Date(); version = +new Date();
if (args[0] === true && regexp.test(path)) { if (args[0] === true && regexp.test(path)) {
path = path.replace(regexp, 'build/'); path = path.replace(regexp, 'min/');
loadScript('Ox.js', function() { loadScript('Ox.js', function() {
Ox.MODE = 'build'; Ox.MODE = 'min';
Ox.PATH = path; Ox.PATH = path;
Ox.load.apply(null, Ox.slice(args, 1)); Ox.load.apply(null, Ox.slice(args, 1));
}); });

View file

@ -101,7 +101,7 @@ Ox.PATH = (function() {
} }
} }
}()); }());
//@ Ox.MODE <s> Mode ('build' or 'dev') //@ Ox.MODE <s> Mode ('dev' or 'min')
Ox.MODE = Ox.PATH.slice(0, -1).split('/').pop(); Ox.MODE = Ox.PATH.slice(0, -1).split('/').pop();
//@ Ox.PREFIXES <[str]> `['', 'K', 'M', 'G', 'T', 'P']` //@ Ox.PREFIXES <[str]> `['', 'K', 'M', 'G', 'T', 'P']`
Ox.PREFIXES = ['', 'K', 'M', 'G', 'T', 'P']; Ox.PREFIXES = ['', 'K', 'M', 'G', 'T', 'P'];

View file

@ -14,7 +14,7 @@ this.Ox = function(value) {
/*@ /*@
Ox.load <f> Loads OxJS and, optionally, one or more modules Ox.load <f> Loads OxJS and, optionally, one or more modules
To load OxJS, include `/build/Ox.js` (minified version) or `/dev/Ox.js` To load OxJS, include `/min/Ox.js` (minified version) or `/dev/Ox.js`
(development version), and use `Ox.load(callback)` at the beginning of your (development version), and use `Ox.load(callback)` at the beginning of your
program. The callback will run once OxJS is loaded and the document is program. The callback will run once OxJS is loaded and the document is
ready. To choose the version programatically (for example: minified version ready. To choose the version programatically (for example: minified version

View file

@ -36,12 +36,12 @@
translations = {}; translations = {};
Ox.forEach(Ox.LOCALES, function(locales, module) { Ox.forEach(Ox.LOCALES, function(locales, module) {
if ( if (
(!module || Ox.load[module]) (module == 'Ox' || Ox.load[module])
&& Ox.contains(locales, locale) && Ox.contains(locales, locale)
) { ) {
urls.push([ urls.push([
Ox.PATH + 'Ox' + (module ? '.' + module : '') Ox.PATH + module + '/json/locale.'
+ '/json/locale.' + locale + '.json' + locale + '.json'
]); ]);
} }
}); });

View file

@ -34,16 +34,16 @@ def build_oxjs(downloads=False, geo=False):
root_path = '../../' root_path = '../../'
source_path = root_path + 'source/' source_path = root_path + 'source/'
build_path = root_path + 'build/'
dev_path = root_path + 'dev/' dev_path = root_path + 'dev/'
min_path = root_path + 'min/'
locales = {} locales = {}
version = get_version() version = get_version()
year = time.strftime('%Y', time.gmtime()) year = time.strftime('%Y', time.gmtime())
comment = ' OxJS %s (c) %s 0x2620, dual-licensed GPL/MIT, see https://oxjs.org for details ' % (version, year) comment = ' OxJS %s (c) %s 0x2620, dual-licensed GPL/MIT, see https://oxjs.org for details ' % (version, year)
# Empty build and dev # Empty dev and min
for path in [build_path, dev_path]: for path in [dev_path, min_path]:
if os.path.exists(path): if os.path.exists(path):
for item in os.listdir(path): for item in os.listdir(path):
full_path = '%s%s' % (path, item) full_path = '%s%s' % (path, item)
@ -65,16 +65,16 @@ def build_oxjs(downloads=False, geo=False):
css = css.replace('$import', '\n'.join([ css = css.replace('$import', '\n'.join([
'@import url("../themes/%s/css/theme.css?%s");' % (theme, version) for theme in themes '@import url("../themes/%s/css/theme.css?%s");' % (theme, version) for theme in themes
])) ]))
write_file('%sUI/css/UI.css' % build_path, css)
write_file('%sUI/css/UI.css' % dev_path, css) write_file('%sUI/css/UI.css' % dev_path, css)
write_file('%sUI/css/UI.css' % min_path, css)
# Ox.UI Theme CSS # Ox.UI Theme CSS
css = read_file(source_path + 'UI/css/theme.css') css = read_file(source_path + 'UI/css/theme.css')
for theme in themes: for theme in themes:
theme_css = parse_css(css, theme_data[theme]) theme_css = parse_css(css, theme_data[theme])
theme_css = theme_css.replace('.png)', '.png?%s)' % version) theme_css = theme_css.replace('.png)', '.png?%s)' % version)
write_file('%sUI/themes/%s/css/theme.css' % (build_path, theme), theme_css)
write_file('%sUI/themes/%s/css/theme.css' % (dev_path, theme), theme_css) write_file('%sUI/themes/%s/css/theme.css' % (dev_path, theme), theme_css)
write_file('%sUI/themes/%s/css/theme.css' % (min_path, theme), theme_css)
# Ox.UI SVGs # Ox.UI SVGs
ui_images = {} ui_images = {}
@ -90,11 +90,11 @@ def build_oxjs(downloads=False, geo=False):
if filename.startswith('symbolLoading'): if filename.startswith('symbolLoading'):
for theme in themes: for theme in themes:
theme_svg = re.sub('#808080', format_hex(theme_data[theme]['symbolDefaultColor']), svg) theme_svg = re.sub('#808080', format_hex(theme_data[theme]['symbolDefaultColor']), svg)
write_file('%sUI/themes/%s/svg/%s' % (build_path, theme, filename), theme_svg)
write_file('%sUI/themes/%s/svg/%s' % (dev_path, theme, filename), theme_svg) write_file('%sUI/themes/%s/svg/%s' % (dev_path, theme, filename), theme_svg)
write_file('%sUI/themes/%s/svg/%s' % (min_path, theme, filename), theme_svg)
# copy & link # copy & link
ui_files = {'build': [], 'dev': []} ui_files = {'dev': [], 'min': []}
for path, dirnames, filenames in os.walk(source_path): for path, dirnames, filenames in os.walk(source_path):
for filename in filenames: for filename in filenames:
if not '_' in path and not filename[0] in '._' \ if not '_' in path and not filename[0] in '._' \
@ -102,19 +102,19 @@ def build_oxjs(downloads=False, geo=False):
and not filename.endswith('.css') \ and not filename.endswith('.css') \
and not '/UI/svg' in path \ and not '/UI/svg' in path \
and (geo or not '/Geo/' in path): and (geo or not '/Geo/' in path):
# write copies in build path # write copies in min path
source = os.path.join(path, filename) source = os.path.join(path, filename)
is_jquery = re.search('^jquery-[\d\.]+\.js$', filename) is_jquery = re.search('^jquery-[\d\.]+\.js$', filename)
is_jquery_min = re.search('^jquery-[\d\.]+\.min\.js$', filename) is_jquery_min = re.search('^jquery-[\d\.]+\.min\.js$', filename)
is_jquery_plugin = re.search('^jquery\..*?\.js$', filename) is_jquery_plugin = re.search('^jquery\..*?\.js$', filename)
is_jsonc = re.search('\.jsonc$', filename) is_jsonc = re.search('\.jsonc$', filename)
if is_jquery or is_jquery_min: if is_jquery or is_jquery_min:
target = os.path.join(path.replace(source_path, build_path), 'jquery.js') target = os.path.join(path.replace(source_path, min_path), 'jquery.js')
else: else:
target = os.path.join(path.replace(source_path, build_path), filename) target = os.path.join(path.replace(source_path, min_path), filename)
if is_jquery_plugin: if is_jquery_plugin:
ui_files['build'].append(target.replace(build_path, '')) ui_files['dev'].append(target.replace(min_path, ''))
ui_files['dev'].append(target.replace(build_path, '')) ui_files['min'].append(target.replace(min_path, ''))
if not '/Ox/js/' in source and not '/UI/js/' in source and not is_jquery: if not '/Ox/js/' in source and not '/UI/js/' in source and not is_jquery:
if re.match('^Ox\..+\.js$', filename) or is_jsonc: if re.match('^Ox\..+\.js$', filename) or is_jsonc:
js = read_file(source) js = read_file(source)
@ -127,11 +127,11 @@ def build_oxjs(downloads=False, geo=False):
if i < len(parts) - 1: if i < len(parts) - 1:
parts[i] = '..' parts[i] = '..'
link_source = '/'.join(parts).replace(filename, os.path.join(path, filename))[3:] link_source = '/'.join(parts).replace(filename, os.path.join(path, filename))[3:]
link_target = target.replace(build_path, dev_path) link_target = target.replace(min_path, dev_path)
if not is_jquery_min: if not is_jquery_min:
write_link(link_source, link_target) write_link(link_source, link_target)
# locales # locales
match = re.search('/Ox\.?(\w*?)/json/locale.(\w+).json', source) match = re.search('/(\w+)/json/locale.(\w+).json', source)
if match: if match:
module = match.group(1) module = match.group(1)
locale = match.group(2) locale = match.group(2)
@ -193,12 +193,12 @@ def build_oxjs(downloads=False, geo=False):
"Ox.VERSION = '%s'" % version, "Ox.VERSION = '%s'" % version,
js js
) )
write_file(build_path + 'Ox.js', ox.js.minify(js, comment))
write_file(dev_path + '/Ox/json/' + 'Ox.json', json.dumps({ write_file(dev_path + '/Ox/json/' + 'Ox.json', json.dumps({
'files': ox_files, 'files': ox_files,
'locales': locales, 'locales': locales,
'version': version 'version': version
}, indent=4, sort_keys=True)) }, indent=4, sort_keys=True))
write_file(min_path + 'Ox.js', ox.js.minify(js, comment))
# Ox.UI # Ox.UI
js = '' js = ''
@ -219,14 +219,14 @@ def build_oxjs(downloads=False, geo=False):
and not 'UI/png' in path: and not 'UI/png' in path:
ui_files['dev'].append(os.path.join(path.replace(source_path, ''), filename)) ui_files['dev'].append(os.path.join(path.replace(source_path, ''), filename))
if not '/js/' in path: if not '/js/' in path:
ui_files['build'].append(os.path.join(path.replace(source_path, ''), filename)) ui_files['min'].append(os.path.join(path.replace(source_path, ''), filename))
if filename.endswith('.js'): if filename.endswith('.js'):
js += read_file(os.path.join(path, filename)) + '\n' js += read_file(os.path.join(path, filename)) + '\n'
filename = build_path + 'UI/js/UI.js' filename = min_path + 'UI/js/UI.js'
write_file(filename, ox.js.minify(js, comment)) write_file(filename, ox.js.minify(js, comment))
ui_files['build'].append(filename.replace(build_path, '')) ui_files['min'].append(filename.replace(min_path, ''))
write_file(build_path + 'UI/json/UI.json', json.dumps({ write_file(min_path + 'UI/json/UI.json', json.dumps({
'files': sorted(ui_files['build']), 'files': sorted(ui_files['min']),
'images': ui_images 'images': ui_images
}, sort_keys=True)) }, sort_keys=True))
write_file(dev_path + 'UI/json/UI.json', json.dumps({ write_file(dev_path + 'UI/json/UI.json', json.dumps({
@ -279,7 +279,7 @@ def build_oxjs(downloads=False, geo=False):
if downloads: if downloads:
data = { data = {
'date': time.strftime('%Y-%m-%dT%H:%M:%SZ', time.gmtime()), 'date': time.strftime('%Y-%m-%dT%H:%M:%SZ', time.gmtime()),
'size': {'minified': os.path.getsize(build_path + 'Ox.js')}, 'size': {'oxjs': os.path.getsize(min_path + 'Ox.js')},
'version': version 'version': version
} }
download_path = root_path + 'downloads/' download_path = root_path + 'downloads/'
@ -287,21 +287,27 @@ def build_oxjs(downloads=False, geo=False):
source_file = download_path + 'OxJS.%s.source.tar.gz' % version source_file = download_path + 'OxJS.%s.source.tar.gz' % version
data['size']['source'] = write_tarfile(source_file, root_path, 'OxJS', filter_source) data['size']['source'] = write_tarfile(source_file, root_path, 'OxJS', filter_source)
write_link(source_file.replace(download_path, ''), source_file.replace(version, 'latest')) write_link(source_file.replace(download_path, ''), source_file.replace(version, 'latest'))
# build # min
build_file = download_path + 'OxJS.%s.build.tar.gz' % version min_file = download_path + 'OxJS.%s.min.tar.gz' % version
data['size']['build'] = write_tarfile(build_file, root_path, 'OxJS', filter_build) data['size']['min'] = write_tarfile(min_file, root_path, 'OxJS', filter_min)
write_link(build_file.replace(download_path, ''), build_file.replace(version, 'latest')) write_link(min_file.replace(download_path, ''), min_file.replace(version, 'latest'))
# json # json
write_file(download_path + 'downloads.json', json.dumps(data, indent=4, sort_keys=True)) write_file(download_path + 'downloads.json', json.dumps(data, indent=4, sort_keys=True))
# legacy
build_path = root_path + 'build/'
if os.path.exists(build_path) and not os.path.islink(build_path[:-1]):
shutil.rmtree(build_path)
write_link('min', build_path[:-1])
def copy_file(source, target): def copy_file(source, target):
print 'copying', source, 'to', target print 'copying', source, 'to', target
write_file(target, read_file(source)) write_file(target, read_file(source))
def filter_build(tarinfo): def filter_min(tarinfo):
name = tarinfo.name name = tarinfo.name
if name == 'OxJS' or re.search('^OxJS/build', name): if name == 'OxJS' or re.search('^OxJS/min', name):
return tarinfo return tarinfo
return None return None
@ -370,7 +376,10 @@ def write_link(source, target):
write_path(target) write_path(target)
# remove files, symlinks *and broken symlinks* # remove files, symlinks *and broken symlinks*
if os.path.exists(target) or os.path.lexists(target): if os.path.exists(target) or os.path.lexists(target):
os.unlink(target) if os.path.isdir(target) and not os.path.islink(target):
os.rmdir(target)
else:
os.unlink(target)
os.symlink(source, target) os.symlink(source, target)
def write_path(file): def write_path(file):
@ -380,9 +389,9 @@ def write_path(file):
def write_tarfile(file, path, arcname, filter): def write_tarfile(file, path, arcname, filter):
print 'writing', file print 'writing', file
build_tar = tarfile.open(file, 'w:gz') f = tarfile.open(file, 'w:gz')
build_tar.add(path, arcname=arcname, filter=filter) f.add(path, arcname=arcname, filter=filter)
build_tar.close() f.close()
return os.path.getsize(file) return os.path.getsize(file)
if __name__ == '__main__': if __name__ == '__main__':