Skip to content

Commit a10e23d

Browse files
committed
Merge pull request #6 from DeviateFish/v0.2.0
v0.2.0
2 parents 5fd8e9a + fd39d06 commit a10e23d

13 files changed

Lines changed: 668 additions & 719 deletions

.jshintrc

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"node": true,
2+
"node": false,
33
"camelcase": true,
44
"curly": true,
55
"immed": true,
@@ -8,7 +8,8 @@
88
"noarg": true,
99
"undef": true,
1010
"unused": true,
11-
"strict": true,
1211
"trailing": true,
13-
"smarttabs": true
12+
"smarttabs": true,
13+
"esnext": true,
14+
"browser": true
1415
}

Gruntfile.js

Lines changed: 86 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,117 @@
1+
'use strict';
2+
var LIVERELOAD_PORT = 35729;
3+
var lrSnippet = require('connect-livereload')({port: LIVERELOAD_PORT});
4+
var mountFolder = function (connect, dir) {
5+
return connect.static(require('path').resolve(dir));
6+
};
7+
18
module.exports = function(grunt) {
9+
require('time-grunt')(grunt);
10+
require('load-grunt-tasks')(grunt);
211

312
grunt.initConfig({
413

514
pkg: grunt.file.readJSON('package.json'),
615

7-
concat: {
8-
options: {
9-
separator: "\n\n"
10-
},
11-
dist: {
12-
src: [
13-
'src/_intro.js',
14-
'src/main.js',
15-
'src/_outro.js'
16-
],
17-
dest: 'dist/<%= pkg.name.replace(".js", "") %>.js'
18-
}
19-
},
20-
2116
uglify: {
2217
options: {
23-
banner: '/*! <%= pkg.name.replace(".js", "") %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
18+
banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n',
19+
sourceMap: true
2420
},
2521
dist: {
2622
files: {
27-
'dist/<%= pkg.name.replace(".js", "") %>.min.js': ['<%= concat.dist.dest %>']
23+
'dist/<%= pkg.name %>.min.js': ['dist/<%= pkg.name %>.js']
2824
}
2925
}
3026
},
3127

32-
qunit: {
33-
files: ['test/*.html']
34-
},
35-
3628
jshint: {
37-
files: ['dist/java-deserializer.js'],
29+
files: ['src/**/*.js'],
3830
options: {
3931
globals: {
40-
console: true,
41-
module: true,
42-
document: true
32+
console: true
4333
},
4434
jshintrc: '.jshintrc'
4535
}
4636
},
4737

38+
browserify: {
39+
dist: {
40+
options: {
41+
transform: [
42+
["babelify", {
43+
sourceMaps: true
44+
}]
45+
],
46+
browserifyOptions: {
47+
standalone: 'JavaDeserializer',
48+
debug: true
49+
}
50+
},
51+
files: {
52+
// if the source file has an extension of es6 then
53+
// we change the name of the source file accordingly.
54+
// The result file's extension is always .js
55+
"./dist/<%= pkg.name %>.js": ["./src/<%= pkg.name %>.js"]
56+
}
57+
}
58+
},
59+
4860
watch: {
49-
files: ['<%= jshint.files %>'],
50-
tasks: ['concat', 'jshint', 'qunit']
61+
options: {
62+
nospawn: true,
63+
livereload: { liveCSS: false }
64+
},
65+
livereload: {
66+
options: {
67+
livereload: true
68+
},
69+
files: [
70+
'./demo/**/*',
71+
'./dist/<%= pkg.name %>.js',
72+
'./Gruntfile.js'
73+
]
74+
},
75+
js: {
76+
files: ['./src/**/*.js'],
77+
tasks: ['build']
78+
}
79+
},
80+
connect: {
81+
options: {
82+
port: 9005,
83+
// change this to '0.0.0.0' to access the server from outside
84+
hostname: '0.0.0.0'
85+
},
86+
livereload: {
87+
options: {
88+
middleware: function (connect) {
89+
return [
90+
lrSnippet,
91+
mountFolder(connect, './'),
92+
];
93+
}
94+
}
95+
}
5196
}
5297

5398
});
5499

55-
grunt.loadNpmTasks('grunt-contrib-uglify');
56-
grunt.loadNpmTasks('grunt-contrib-jshint');
57-
grunt.loadNpmTasks('grunt-contrib-qunit');
58-
grunt.loadNpmTasks('grunt-contrib-watch');
59-
grunt.loadNpmTasks('grunt-contrib-concat');
100+
grunt.registerTask('serve', function (target) {
101+
grunt.task.run([
102+
'connect:livereload',
103+
'watch'
104+
]);
105+
});
60106

61-
grunt.registerTask('test', ['jshint', 'qunit']);
62-
grunt.registerTask('default', ['concat', 'jshint', 'qunit', 'uglify']);
107+
grunt.registerTask('build', [
108+
'jshint',
109+
'browserify',
110+
'uglify'
111+
]);
63112

113+
grunt.registerTask('default', [
114+
'build',
115+
'serve'
116+
]);
64117
};

demo/assets/ft_waypoint.obj

2.11 KB
Binary file not shown.

demo/index.html

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,14 @@
44
<title>java-deserializer demo</title>
55
<link rel="stylesheet" href="./assets/normalize.css" />
66
<link rel="stylesheet" href="./assets/main.css" />
7-
<style>
8-
/* begin demo embedded styles */
9-
10-
/* end demo embedded styles */
11-
</style>
127
</head>
138
<body>
149
<h1>java-deserializer demo</h1>
1510

1611
<!-- begin demo markup -->
1712

13+
<pre id="output"></pre>
14+
1815
<!-- end demo markup -->
1916

2017
<p>See the <a href="http://DeviateFish.github.io/java-deserializer">project homepage</a>.
@@ -26,8 +23,26 @@ <h1>java-deserializer demo</h1>
2623
<script>
2724
/* begin demo script */
2825

29-
var n = java-deserializer();
30-
console.log(n);
26+
function loadResource(url, callback)
27+
{
28+
var xhr = new XMLHttpRequest();
29+
xhr.open('GET', url);
30+
xhr.responseType = 'arraybuffer';
31+
xhr.onload = function() {
32+
callback(null, this.response);
33+
};
34+
xhr.onerror = function(e) {
35+
callback(e, null);
36+
};
37+
38+
xhr.send();
39+
};
40+
41+
loadResource('/demo/assets/ft_waypoint.obj', function(err, buf) {
42+
var n = new JavaDeserializer(buf);
43+
var repr = n.getContents();
44+
document.getElementById('output').innerHTML = JSON.stringify(repr, null, 2);
45+
})
3146

3247
/* end demo script */
3348
</script>

0 commit comments

Comments
 (0)