nw-builder 3.5.7 → 3.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/{CHANGELOG.md → .github/CHANGELOG.md} +18 -2
  2. package/.github/ISSUE_REQUEST_TEMPLATE.md +16 -0
  3. package/{LICENSE → .github/LICENSE} +0 -0
  4. package/.github/PULL_REQUEST_TEMPLATE.md +5 -0
  5. package/.github/workflows/cd.yml +24 -0
  6. package/.github/workflows/ci.yml +27 -0
  7. package/README.md +94 -96
  8. package/bin/nwbuild +19 -22
  9. package/demo.js +22 -0
  10. package/example/icons/README.md +7 -0
  11. package/example/icons/icon.icns +0 -0
  12. package/example/icons/icon.ico +0 -0
  13. package/example/nwapp/Credits.html +9 -0
  14. package/example/nwapp/README.md +7 -0
  15. package/example/nwapp/images/README.md +7 -0
  16. package/example/nwapp/images/kitten.jpg +0 -0
  17. package/example/nwapp/index.html +22 -0
  18. package/example/nwapp/package.json +23 -0
  19. package/example/package.json +7 -0
  20. package/lib/index.js +16 -6
  21. package/package.json +65 -60
  22. package/test/downloader.js +87 -0
  23. package/test/expected/README.md +7 -0
  24. package/test/expected/merged +1 -0
  25. package/test/expected/oneOveriddenRestNot/README.md +7 -0
  26. package/test/expected/oneOveriddenRestNot/osx32.json +9 -0
  27. package/test/expected/oneOveriddenRestNot/osx64.json +9 -0
  28. package/test/expected/osx-plist/1.plist +47 -0
  29. package/test/expected/osx-plist/2.plist +40 -0
  30. package/test/expected/osx-plist/README.md +7 -0
  31. package/test/expected/platformOverrides/README.md +7 -0
  32. package/test/expected/platformOverrides/linux32.json +13 -0
  33. package/test/expected/platformOverrides/linux64.json +9 -0
  34. package/test/expected/platformOverrides/osx32.json +12 -0
  35. package/test/expected/platformOverrides/osx64.json +12 -0
  36. package/test/expected/platformOverrides/win32.json +12 -0
  37. package/test/expected/platformOverrides/win64.json +12 -0
  38. package/test/fixtures/README.md +7 -0
  39. package/test/fixtures/invalid.json +3 -0
  40. package/test/fixtures/manifest/README.md +7 -0
  41. package/test/fixtures/manifest/versions.json +23 -0
  42. package/test/fixtures/nwapp/README.md +7 -0
  43. package/test/fixtures/nwapp/images/imagefile.img +1 -0
  44. package/test/fixtures/nwapp/index.html +10 -0
  45. package/test/fixtures/nwapp/javascript/bower_packages/simple/package.json +1 -0
  46. package/test/fixtures/nwapp/javascript/jsfile.js +1 -0
  47. package/test/fixtures/nwapp/package.json +5 -0
  48. package/test/fixtures/oneOveriddenRestNot/README.md +7 -0
  49. package/test/fixtures/oneOveriddenRestNot/package.json +16 -0
  50. package/test/fixtures/osx-plist/Info.plist +93 -0
  51. package/test/fixtures/osx-plist/README.md +7 -0
  52. package/test/fixtures/platformOverrides/README.md +7 -0
  53. package/test/fixtures/platformOverrides/package.json +52 -0
  54. package/test/fixtures/test-strip.zip +0 -0
  55. package/test/fixtures/test.tar.gz +0 -0
  56. package/test/fixtures/test.zip +0 -0
  57. package/test/fixtures/testVersions.html +17 -0
  58. package/test/nwBuilder.js +237 -0
  59. package/test/utils.js +232 -0
  60. package/test/versions.js +330 -0
  61. package/bin/README.md +0 -7
  62. package/lib/README.md +0 -7
package/lib/index.js CHANGED
@@ -55,7 +55,7 @@ function NwBuilder(options) {
55
55
  files: null,
56
56
  appName: false,
57
57
  appVersion: false,
58
- platforms: ['osx64', 'win32', 'win64'],
58
+ platforms: [detectCurrentPlatform()],
59
59
  currentPlatform: detectCurrentPlatform(),
60
60
  version: 'latest',
61
61
  buildDir: './build',
@@ -73,7 +73,7 @@ function NwBuilder(options) {
73
73
  macPlist: false,
74
74
  winVersionString: {},
75
75
  winIco: null,
76
- argv: process.argv.slice(2)
76
+ argv: []
77
77
  };
78
78
  // Intercept the platforms and check for the legacy platforms of 'osx' and 'win' and
79
79
  // replace with 'osx32', 'osx64', and 'win32', 'win64' respectively.
@@ -147,6 +147,10 @@ NwBuilder.prototype.build = function (callback) {
147
147
  };
148
148
 
149
149
  NwBuilder.prototype.run = function (callback) {
150
+ // We do not want to download nwjs for other platforms if are going to run the App
151
+ var platforms = this.options.platforms;
152
+ this.options.platforms = [this.options.currentPlatform];
153
+
150
154
  // Let's run this NWjs app
151
155
  var run = this.checkFiles()
152
156
  .then(this.resolveLatestVersion.bind(this))
@@ -157,9 +161,11 @@ NwBuilder.prototype.run = function (callback) {
157
161
 
158
162
  if(typeof callback === 'function'){
159
163
  run.then(function(result){
164
+ this.options.platforms = platforms
160
165
  callback(false, result);
161
166
  })
162
167
  .catch(function(error){
168
+ this.options.platforms = platforms
163
169
  callback(true, error);
164
170
  });
165
171
  return true;
@@ -439,11 +445,12 @@ NwBuilder.prototype.copyNwjs = function () {
439
445
  var options = {};
440
446
 
441
447
  if(['nw', 'nwjs.app', 'nw.exe'].indexOf(destFile) !== -1){
442
- // ignore nwjs.app/Contents/Resources/*.lproj, otherwise the app name will show as nwjs.app in
443
- // Finder
448
+ // ignore nwjs.app/Contents/Resources/*.lproj/InfoPlist.strings,
449
+ // otherwise the app name will show as nwjs.app in Finder.
450
+ // *.lproj directory itself needs to be kept to support multiple locales.
444
451
  if(destFile === 'nwjs.app'){
445
452
  options.filter = function(filepath){
446
- return !/nwjs\.app\/Contents\/Resources\/[^.]+\.lproj(\/|$)/.test(filepath);
453
+ return !/nwjs\.app\/Contents\/Resources\/[^.]+\.lproj\/InfoPlist\.strings$/.test(filepath);
447
454
  };
448
455
  }
449
456
  // rename executable to app name
@@ -762,7 +769,10 @@ NwBuilder.prototype.runApp = function () {
762
769
  self.emit('log', 'Launching App');
763
770
  return new Promise(function(resolve, reject) {
764
771
  var parentDirectory = (_.isArray(self.options.files) ? self.options.files[0] : self.options.files ).replace(/\*[\/\*]*/,"");
765
- var nwProcess = self._nwProcess = spawn(executable, ['--enable-logging', parentDirectory].concat(self.options.argv));
772
+ var nwProcess = self._nwProcess = spawn(executable, [parentDirectory].concat(self.options.argv), {
773
+ detached: true,
774
+ windowsHide: true
775
+ });
766
776
 
767
777
  self.emit('appstart');
768
778
 
package/package.json CHANGED
@@ -1,73 +1,78 @@
1
1
  {
2
2
  "name": "nw-builder",
3
- "version": "3.5.7",
4
- "description": "nw-builder",
3
+ "version": "3.6.0",
4
+ "description": "Build NW.js applications for Mac, Windows and Linux.",
5
+ "keywords": ["NW.js", "Desktop", "Application"],
6
+ "author": "Steffen Müller",
7
+ "license": "MIT",
5
8
  "main": "index.js",
6
- "scripts": {
7
- "test": "tape test/*.js"
8
- },
9
+ "homepage": "https://github.com/nwjs-community/nw-builder",
9
10
  "repository": {
10
11
  "type": "git",
11
- "url": "git://github.com/mllrsohn/nw-builder.git"
12
- },
13
- "bin": {
14
- "nwbuild": "./bin/nwbuild"
15
- },
16
- "author": {
17
- "name": "Steffen Müller"
18
- },
19
- "contributors": [
20
- {
21
- "name": "Adam Lynch",
22
- "email": "contact@adamlynch.com"
23
- }
24
- ],
25
- "engines": {
26
- "node": ">= 4.0.0"
12
+ "url": "https://github.com/nwjs-community/nw-builder.git"
27
13
  },
28
- "license": "MIT",
29
- "bugs": {
30
- "url": "https://github.com/mllrsohn/nw-builder/issues"
14
+ "scripts": {
15
+ "format": "prettier --write ./lib",
16
+ "lint": "eslint --ext .js ./lib",
17
+ "test": "tape test/*.js",
18
+ "demo": "node ./demo.js"
31
19
  },
32
- "homepage": "https://github.com/mllrsohn/nw-builder",
33
- "keywords": [
34
- "NW.js",
35
- "node-webkit",
36
- "desktop",
37
- "application"
38
- ],
39
20
  "devDependencies": {
40
- "decompress-zip": "0.3.1",
41
- "eol": "^0.9.0",
42
- "nock": "^9.0.5",
43
- "redtape": "~1.0.0",
44
- "tap-spec": "^4.1.1",
45
- "tape": "~4.9.0"
21
+ "decompress-zip": "0.3.3",
22
+ "eol": "0.9.1",
23
+ "eslint": "8.15.0",
24
+ "nock": "9.0.5",
25
+ "prettier": "2.6.2",
26
+ "redtape": "1.0.0",
27
+ "tap-spec": "4.1.1",
28
+ "tape": "4.9.0"
46
29
  },
47
30
  "dependencies": {
48
- "archiver": "^2.1.1",
49
- "boxen": "^1.1.0",
50
- "chalk": "^2.3.2",
51
- "deprecate": "~1.0.0",
52
- "extract-zip": "^1.6.5",
53
- "graceful-fs-extra": "^2.0.0",
54
- "graceful-ncp": "^3.0.0",
55
- "inherits": "~2.0.1",
56
- "lazy-req": "^2.0.0",
57
- "lodash": "~4.17.4",
58
- "optimist": "^0.6.1",
59
- "plist": "^3.0.1",
60
- "progress": "~2.0.0",
61
- "rcedit": "^1.0.0",
62
- "recursive-readdir-sync": "^1.0.6",
63
- "request": "^2.88.0",
64
- "rimraf": "^2.5.2",
65
- "semver": "^5.5.0",
66
- "simple-glob": "~0.2.0",
67
- "tar-fs": "^1.13.0",
31
+ "archiver": "2.1.1",
32
+ "boxen": "1.1.0",
33
+ "chalk": "2.3.2",
34
+ "deprecate": "1.1.1",
35
+ "extract-zip": "1.6.5",
36
+ "graceful-fs-extra": "2.0.0",
37
+ "graceful-ncp": "3.0.0",
38
+ "inherits": "2.0.4",
39
+ "lazy-req": "2.0.0",
40
+ "lodash": "4.17.21",
41
+ "optimist": "0.6.1",
42
+ "plist": "3.0.5",
43
+ "progress": "2.0.3",
44
+ "rcedit": "1.0.0",
45
+ "recursive-readdir-sync": "1.0.6",
46
+ "request": "2.88.2",
47
+ "rimraf": "2.5.2",
48
+ "semver": "5.5.0",
49
+ "simple-glob": "0.2.0",
50
+ "tar-fs": "1.16.2",
68
51
  "temp": "github:adam-lynch/node-temp#remove_tmpdir_dep",
69
- "thenify": "^3.3.0",
70
- "update-notifier": "^2.4.0",
71
- "winresourcer": "^0.9.0"
52
+ "thenify": "3.3.1",
53
+ "update-notifier": "2.4.0",
54
+ "winresourcer": "0.9.0"
55
+ },
56
+ "bin": {
57
+ "nwbuild": "./bin/nwbuild"
58
+ },
59
+ "prettier": {
60
+ "printWidth": 80,
61
+ "tabWidth": 2,
62
+ "useTabs": false,
63
+ "semi": true,
64
+ "singleQuote": false,
65
+ "quoteProps": "consistent",
66
+ "trailingComma": "all",
67
+ "bracketSpacing": true,
68
+ "bracketSameLine": false,
69
+ "arrowParens": "always",
70
+ "proseWrap": "preserve",
71
+ "htmlWhitespaceSensitivity": "strict",
72
+ "endOfLine": "lf",
73
+ "singleAttributePerLine": true
74
+ },
75
+ "eslintConfig": {
76
+ "extends": "eslint:recommended"
72
77
  }
73
78
  }
@@ -0,0 +1,87 @@
1
+ var test = require('tape'),
2
+ nock = require('nock'),
3
+ temp = require('temp'),
4
+ path = require('path'),
5
+ fs = require('fs');
6
+
7
+ temp.track();
8
+
9
+ var downloader = require('./../lib/downloader');
10
+ var fixturesCache = './test/fixtures/cache/v0.8.3';
11
+ var fixturesZip = './test/fixtures/test.zip';
12
+ var fixturesZipStrip = './test/fixtures/test-strip.zip';
13
+ var fixturesTar = './test/fixtures/test.tar.gz';
14
+ var isWindows = process.platform === 'win32';
15
+
16
+ test('checkCache', function (t) {
17
+ t.plan(2);
18
+ t.ok(downloader.checkCache(fixturesCache + '/osx', ['node-webkit.app']));
19
+ t.notOk(downloader.checkCache(fixturesCache + '/linux32', ['nwsnapshot', 'nwsnapshot2']));
20
+ });
21
+
22
+ test('downloadAndUnpack: zip', function (t) {
23
+ t.plan(isWindows ? 3 : 6);
24
+ nock('https://amazon.s3.nw.com').get('/test.zip').replyWithFile(200, fixturesZip);
25
+ temp.mkdir('tmpcache', function(err, dirPath) {
26
+ downloader.downloadAndUnpack(dirPath, 'https://amazon.s3.nw.com/test.zip').then(function (files) {
27
+ files.forEach(function (file) {
28
+ t.ok(fs.existsSync(path.join(dirPath, file.path)), file.path + ' unpacked');
29
+ });
30
+
31
+ if(!isWindows) {
32
+ t.ok(fs.statSync(path.join(dirPath, 'file1')).mode.toString(8) == 100444, '444 file permission');
33
+ t.ok(fs.statSync(path.join(dirPath, 'file2')).mode.toString(8) == 100666, '666 file permission');
34
+ t.ok(fs.statSync(path.join(dirPath, 'file3')).mode.toString(8) == 100644, '644 file permission'); // DOES NOT WORK ON WINDOWS
35
+ }
36
+ });
37
+ });
38
+ });
39
+
40
+ test('downloadAndUnpack: zip+strip', function (t) {
41
+ t.plan(isWindows ? 3 : 6);
42
+ nock('https://amazon.s3.nw.com').get('/test-strip.zip').replyWithFile(200, fixturesZipStrip);
43
+ temp.mkdir('tmpcache', function(err, dirPath) {
44
+ downloader.downloadAndUnpack(dirPath, 'https://amazon.s3.nw.com/test-strip.zip').then(function (files) {
45
+ files.forEach(function (file) {
46
+ t.ok(fs.existsSync(path.join(dirPath, file.path)), file.path + ' unpacked');
47
+ });
48
+
49
+ if(!isWindows) {
50
+ t.ok(fs.statSync(path.join(dirPath, 'file1')).mode.toString(8) == 100444, '444 file permission');
51
+ t.ok(fs.statSync(path.join(dirPath, 'file2')).mode.toString(8) == 100666, '666 file permission');
52
+ t.ok(fs.statSync(path.join(dirPath, 'file3')).mode.toString(8) == 100644, '644 file permission'); // DOES NOT WORK ON WINDOWS
53
+ }
54
+ });
55
+ });
56
+ });
57
+
58
+ test('downloadAndUnpack: tar', function (t) {
59
+ t.plan(isWindows ? 3 : 6);
60
+ nock('https://amazon.s3.nw.com').get('/test.tar.gz').replyWithFile(200, fixturesTar);
61
+ temp.mkdir('tmpcache', function(err, dirPath) {
62
+ downloader.downloadAndUnpack(dirPath, 'https://amazon.s3.nw.com/test.tar.gz').then(function (files) {
63
+ files.forEach(function (file) {
64
+ t.ok(fs.existsSync(path.join(dirPath, file.path)), file.path + ' unpacked');
65
+ });
66
+
67
+ if(!isWindows) {
68
+ t.ok(fs.statSync(path.join(dirPath, 'file1')).mode.toString(8) == 100444, '444 file permission'); // DOES NOT WORK ON WINDOWS
69
+ t.ok(fs.statSync(path.join(dirPath, 'file2')).mode.toString(8) == 100666, '666 file permission');
70
+ t.ok(fs.statSync(path.join(dirPath, 'file3')).mode.toString(8) == 100644, '644 file permission'); // DOES NOT WORK ON WINDOWS
71
+ }
72
+
73
+ });
74
+ });
75
+ });
76
+
77
+ test('Should throw an error if you try to download a file that is not available', function (t) {
78
+ t.plan(2);
79
+ nock('https://doesnot.com').get('/exist.zip').reply(404);
80
+ downloader.downloadAndUnpack('/', 'https://doesnot.com/exist.zip').catch(function (err) {
81
+ t.equal(err.statusCode, 404, err.msg);
82
+ });
83
+ nock('https://doesnot.com').get('/exist.tar').reply(404);
84
+ downloader.downloadAndUnpack('/', 'https://doesnot.com/exist.tar').catch(function (err) {
85
+ t.equal(err.statusCode, 404, err.msg);
86
+ });
87
+ });
@@ -0,0 +1,7 @@
1
+ Files in this directory represent the expected outcomes for certain scenarios. Have a look over the tests to see how they're used.
2
+
3
+ ---
4
+
5
+ ## See something which could be improved?
6
+
7
+ Great, see [CONTRIBUTING.md](../../CONTRIBUTING.md).
@@ -0,0 +1 @@
1
+ imagefilejsfile
@@ -0,0 +1,7 @@
1
+ Files in this directory represent the expected outcomes for certain scenarios. Have a look over the tests to see how they're used.
2
+
3
+ ---
4
+
5
+ ## See something which could be improved?
6
+
7
+ Great, see [CONTRIBUTING.md](../../../CONTRIBUTING.md).
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "index.html",
5
+ "window": {
6
+ "frame": true,
7
+ "toolbar": false
8
+ }
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "index.html",
5
+ "window": {
6
+ "frame": true,
7
+ "toolbar": false
8
+ }
9
+ }
@@ -0,0 +1,47 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>CFBundleDevelopmentRegion</key>
6
+ <string>en</string>
7
+ <key>CFBundleDisplayName</key>
8
+ <string>My cool TestApp</string>
9
+ <key>CFBundleDocumentTypes</key>
10
+ <array/>
11
+ <key>CFBundleExecutable</key>
12
+ <string>nwjs</string>
13
+ <key>CFBundleIconFile</key>
14
+ <string>nw.icns</string>
15
+ <key>CFBundleIdentifier</key>
16
+ <string>com.nw-builder.testapp</string>
17
+ <key>CFBundleInfoDictionaryVersion</key>
18
+ <string>6.0</string>
19
+ <key>CFBundleName</key>
20
+ <string>TestApp</string>
21
+ <key>CFBundlePackageType</key>
22
+ <string>APPL</string>
23
+ <key>CFBundleShortVersionString</key>
24
+ <string>Version 1.3.3.7</string>
25
+ <key>CFBundleVersion</key>
26
+ <string>1.3.3.7</string>
27
+ <key>LSFileQuarantineEnabled</key>
28
+ <true/>
29
+ <key>LSMinimumSystemVersion</key>
30
+ <string>10.6.0</string>
31
+ <key>NSPrincipalClass</key>
32
+ <string>NSApplication</string>
33
+ <key>NSSupportsAutomaticGraphicsSwitching</key>
34
+ <true/>
35
+ <key>SCMRevision</key>
36
+ <string>222137</string>
37
+ <key>UTExportedTypeDeclarations</key>
38
+ <array/>
39
+ <key>NSHumanReadableCopyright</key>
40
+ <string>(c) by me</string>
41
+ <key>LSEnvironment</key>
42
+ <dict>
43
+ <key>PATH</key>
44
+ <string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
45
+ </dict>
46
+ </dict>
47
+ </plist>
@@ -0,0 +1,40 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>CFBundleDevelopmentRegion</key>
6
+ <string>en</string>
7
+ <key>CFBundleDisplayName</key>
8
+ <string>TestApp</string>
9
+ <key>CFBundleDocumentTypes</key>
10
+ <array/>
11
+ <key>CFBundleExecutable</key>
12
+ <string>nwjs</string>
13
+ <key>CFBundleIconFile</key>
14
+ <string>nw.icns</string>
15
+ <key>CFBundleIdentifier</key>
16
+ <string>com.nw-builder.testapp</string>
17
+ <key>CFBundleInfoDictionaryVersion</key>
18
+ <string>6.0</string>
19
+ <key>CFBundleName</key>
20
+ <string>TestApp</string>
21
+ <key>CFBundlePackageType</key>
22
+ <string>APPL</string>
23
+ <key>CFBundleShortVersionString</key>
24
+ <string>Version 1.3.3.7</string>
25
+ <key>CFBundleVersion</key>
26
+ <string>1.3.3.7</string>
27
+ <key>LSFileQuarantineEnabled</key>
28
+ <true/>
29
+ <key>LSMinimumSystemVersion</key>
30
+ <string>10.6.0</string>
31
+ <key>NSPrincipalClass</key>
32
+ <string>NSApplication</string>
33
+ <key>NSSupportsAutomaticGraphicsSwitching</key>
34
+ <true/>
35
+ <key>SCMRevision</key>
36
+ <string>222137</string>
37
+ <key>UTExportedTypeDeclarations</key>
38
+ <array/>
39
+ </dict>
40
+ </plist>
@@ -0,0 +1,7 @@
1
+ Files in this directory represent the expected outcomes for certain scenarios. Have a look over the tests to see how they're used.
2
+
3
+ ---
4
+
5
+ ## See something which could be improved?
6
+
7
+ Great, see [CONTRIBUTING.md](../../../CONTRIBUTING.md).
@@ -0,0 +1,7 @@
1
+ Files in this directory represent the expected outcomes for certain scenarios. Have a look over the tests to see how they're used.
2
+
3
+ ---
4
+
5
+ ## See something which could be improved?
6
+
7
+ Great, see [CONTRIBUTING.md](../../../CONTRIBUTING.md).
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "another.html",
5
+ "window": {
6
+ "frame": true,
7
+ "toolbar": false
8
+ },
9
+ "frame": false,
10
+ "x": {},
11
+ "abc": [],
12
+ "def": {}
13
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "index.html",
5
+ "window": {},
6
+ "x": [],
7
+ "abc": [],
8
+ "def": {}
9
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "other.html",
5
+ "window": {
6
+ "frame": false,
7
+ "toolbar": false
8
+ },
9
+ "x": ["y", "z"],
10
+ "abc": 2,
11
+ "def": {}
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "other.html",
5
+ "window": {
6
+ "frame": false,
7
+ "toolbar": false
8
+ },
9
+ "x": ["y", "z"],
10
+ "abc": 2,
11
+ "def": {}
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "index.html",
5
+ "window": {
6
+ "frame": true,
7
+ "toolbar": false
8
+ },
9
+ "x": ["z"],
10
+ "abc": [1],
11
+ "def": {"x":1}
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "index.html",
5
+ "window": {
6
+ "frame": true,
7
+ "toolbar": false
8
+ },
9
+ "x": ["z"],
10
+ "abc": [1],
11
+ "def": {"x":1}
12
+ }
@@ -0,0 +1,7 @@
1
+ This directory contains all of our [test fixtures](https://en.wikipedia.org/wiki/Test_fixture).
2
+
3
+ ---
4
+
5
+ ## See something which could be improved?
6
+
7
+ Great, see [CONTRIBUTING.md](../../CONTRIBUTING.md).
@@ -0,0 +1,3 @@
1
+ {
2
+ "name": "nw-should-fail"
3
+ }
@@ -0,0 +1,7 @@
1
+ This directory contains all of our manifest-related [test fixtures](https://en.wikipedia.org/wiki/Test_fixture).
2
+
3
+ ---
4
+
5
+ ## See something which could be improved?
6
+
7
+ Great, see [CONTRIBUTING.md](../../../CONTRIBUTING.md).
@@ -0,0 +1,23 @@
1
+
2
+ {
3
+ "latest": "v0.16.0-beta1",
4
+ "stable": "v0.15.2",
5
+ "lts": "v0.14.6",
6
+ "versions": [
7
+ {
8
+ "version": "v0.15.2",
9
+ "files": ["win-x64", "win-ia32", "linux-x64", "linux-ia32", "osx-x64"],
10
+ "flavors": ["normal", "sdk"]
11
+ },
12
+ {
13
+ "version": "v0.13.2",
14
+ "files": ["win-x64", "linux-ia32", "osx-x64"],
15
+ "flavors": ["normal", "sdk", "nacl"]
16
+ },
17
+ {
18
+ "version": "v0.12.3",
19
+ "files": ["win-x64", "win-ia32", "linux-x64", "linux-ia32", "osx-x64", "osx-ia32"],
20
+ "flavors": ["normal", "macappstore"]
21
+ }
22
+ ]
23
+ }
@@ -0,0 +1,7 @@
1
+ This directory contains example app related [test fixtures](https://en.wikipedia.org/wiki/Test_fixture). Have a look over the tests to see how they're used.
2
+
3
+ ---
4
+
5
+ ## See something which could be improved?
6
+
7
+ Great, see [CONTRIBUTING.md](../../../CONTRIBUTING.md).
@@ -0,0 +1 @@
1
+ imagefile
@@ -0,0 +1,10 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Hello World!</title>
5
+ </head>
6
+ <body>
7
+ <h1>Hello World!</h1>
8
+ We are using node.js <script>document.write(process.version)</script>.
9
+ </body>
10
+ </html>
@@ -0,0 +1 @@
1
+ jsfile
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "index.html"
5
+ }
@@ -0,0 +1,7 @@
1
+ This directory contains some [test fixtures](https://en.wikipedia.org/wiki/Test_fixture). Have a look over the tests to see how they're used.
2
+
3
+ ---
4
+
5
+ ## See something which could be improved?
6
+
7
+ Great, see [CONTRIBUTING.md](../../../CONTRIBUTING.md).
@@ -0,0 +1,16 @@
1
+ {
2
+ "name": "nw-demo",
3
+ "version": "0.1.0",
4
+ "main": "index.html",
5
+ "window": {
6
+ "frame": false,
7
+ "toolbar": false
8
+ },
9
+ "platformOverrides": {
10
+ "osx32": {
11
+ "window": {
12
+ "frame": true
13
+ }
14
+ }
15
+ }
16
+ }