Skip to content

Commit fc6e946

Browse files
committed
chore(export): add bluebird to export
update aspnetcore skeleton export tasks add export to gitignore fix aurelia#588
1 parent 5180fe1 commit fc6e946

File tree

11 files changed

+158
-53
lines changed

11 files changed

+158
-53
lines changed

skeleton-esnext-aspnetcore/src/skeleton/.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
## Ignore Aurelia export folder
2+
/export
3+
14
## Ignore Visual Studio temporary files, build results, and
25
## files generated by popular Visual Studio add-ons.
36

skeleton-esnext-aspnetcore/src/skeleton/build/export.js

+24-6
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,29 @@ module.exports = {
77
"jspm_packages/system.js",
88
"jspm_packages/system-polyfills.js",
99
"jspm_packages/system-csp-production.js",
10-
"styles/styles.css",
11-
"jspm_packages/npm/[email protected]/css/font-awesome.min.css",
12-
"jspm_packages/npm/[email protected]/fonts/*",
13-
"jspm_packages/github/github/[email protected]",
14-
"jspm_packages/github/github/[email protected]/fetch.js",
15-
"jspm_packages/github/twbs/[email protected]/fonts/*"
10+
"styles/styles.css"
11+
],
12+
// this section lists any jspm packages that have
13+
// unbundled resources that need to be exported.
14+
// these files are in versioned folders and thus
15+
// must be 'normalized' by jspm to get the proper
16+
// path.
17+
'normalize': [
18+
[
19+
// include font-awesome.css and its fonts files
20+
'font-awesome', [
21+
'/css/font-awesome.min.css',
22+
'/fonts/*'
23+
]
24+
], [
25+
// include bootstrap's font files
26+
'bootstrap', [
27+
'/fonts/*'
28+
]
29+
], [
30+
'bluebird', [
31+
'/js/browser/bluebird.min.js'
32+
]
33+
]
1634
]
1735
};
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,16 @@
1-
var gulp = require('gulp');
2-
var runSequence = require('run-sequence');
3-
var del = require('del');
4-
var vinylPaths = require('vinyl-paths');
5-
var paths = require('../paths');
6-
var bundles = require('../bundles.js');
7-
var resources = require('../export.js');
8-
9-
// deletes all files in the output path
10-
gulp.task('clean-export', function() {
11-
return gulp.src([paths.exportSrv])
12-
.pipe(vinylPaths(del));
13-
});
1+
const gulp = require('gulp');
2+
const runSequence = require('run-sequence');
3+
const del = require('del');
4+
const vinylPaths = require('vinyl-paths');
5+
const jspm = require('jspm');
6+
const paths = require('../paths');
7+
const bundles = require('../bundles.js');
8+
const resources = require('../export.js');
149

1510
function getBundles() {
16-
var bl = [];
17-
for (var b in bundles.bundles) {
18-
bl.push(paths.exportSourceRoot + b + '.js');
11+
let bl = [];
12+
for (let b in bundles.bundles) {
13+
bl.push(paths.exportSourceRoot + b + '*.js');
1914
}
2015
return bl;
2116
}
@@ -26,17 +21,51 @@ function getExportList() {
2621
}).concat(getBundles());
2722
}
2823

24+
function normalizeExportPaths() {
25+
const pathsToNormalize = resources.normalize;
26+
27+
let promises = pathsToNormalize.map(pathSet => {
28+
const packageName = pathSet[ 0 ];
29+
const fileList = pathSet[ 1 ];
30+
31+
return jspm.normalize(packageName).then((normalized) => {
32+
const packagePath = normalized.substring(normalized.indexOf('jspm_packages'), normalized.lastIndexOf('.js'));
33+
return fileList.map(file => paths.exportSourceRoot + packagePath + file);
34+
});
35+
});
36+
37+
return Promise.all(promises)
38+
.then((normalizedPaths) => {
39+
return normalizedPaths.reduce((prev, curr) => prev.concat(curr), []);
40+
});
41+
}
42+
43+
// deletes all files in the output path
44+
gulp.task('clean-export', function() {
45+
return gulp.src([ paths.exportSrv ])
46+
.pipe(vinylPaths(del));
47+
});
48+
2949
gulp.task('export-copy', function() {
30-
return gulp.src(getExportList(), {base: '.'})
50+
return gulp.src(getExportList(), { base: '.' })
3151
.pipe(gulp.dest(paths.exportSrv));
3252
});
3353

54+
gulp.task('export-normalized-resources', function() {
55+
return normalizeExportPaths().then(normalizedPaths => {
56+
return gulp.src(normalizedPaths, { base: '.' })
57+
.pipe(gulp.dest(paths.exportSrv));
58+
});
59+
});
60+
3461
// use after prepare-release
3562
gulp.task('export', function(callback) {
3663
return runSequence(
3764
'bundle',
3865
'clean-export',
66+
'export-normalized-resources',
3967
'export-copy',
4068
callback
4169
);
4270
});
71+

skeleton-esnext/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ bower_components
77
build/reports
88
coverage
99
test/e2e/dist
10+
/export

skeleton-esnext/build/export.js

+4
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,10 @@ module.exports = {
2929
'bootstrap', [
3030
'/fonts/*'
3131
]
32+
], [
33+
'bluebird', [
34+
'/js/browser/bluebird.min.js'
35+
]
3236
]
3337
]
3438
};

skeleton-esnext/build/tasks/export-release.js

-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
'use strict';
2-
31
const gulp = require('gulp');
42
const runSequence = require('run-sequence');
53
const del = require('del');

skeleton-typescript-aspnetcore/src/skeleton/.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
## Ignore Aurelia export folder
2+
/export
3+
14
## Ignore Visual Studio temporary files, build results, and
25
## files generated by popular Visual Studio add-ons.
36

skeleton-typescript-aspnetcore/src/skeleton/build/export.js

+24-6
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,29 @@ module.exports = {
77
"jspm_packages/system.js",
88
"jspm_packages/system-polyfills.js",
99
"jspm_packages/system-csp-production.js",
10-
"styles/styles.css",
11-
"jspm_packages/npm/[email protected]/css/font-awesome.min.css",
12-
"jspm_packages/npm/[email protected]/fonts/*",
13-
"jspm_packages/github/github/[email protected]",
14-
"jspm_packages/github/github/[email protected]/fetch.js",
15-
"jspm_packages/github/twbs/[email protected]/fonts/*"
10+
"styles/styles.css"
11+
],
12+
// this section lists any jspm packages that have
13+
// unbundled resources that need to be exported.
14+
// these files are in versioned folders and thus
15+
// must be 'normalized' by jspm to get the proper
16+
// path.
17+
'normalize': [
18+
[
19+
// include font-awesome.css and its fonts files
20+
'font-awesome', [
21+
'/css/font-awesome.min.css',
22+
'/fonts/*'
23+
]
24+
], [
25+
// include bootstrap's font files
26+
'bootstrap', [
27+
'/fonts/*'
28+
]
29+
], [
30+
'bluebird', [
31+
'/js/browser/bluebird.min.js'
32+
]
33+
]
1634
]
1735
};
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,71 @@
1-
var gulp = require('gulp');
2-
var runSequence = require('run-sequence');
3-
var del = require('del');
4-
var vinylPaths = require('vinyl-paths');
5-
var paths = require('../paths');
6-
var bundles = require('../bundles.js');
7-
var resources = require('../export.js');
8-
9-
// deletes all files in the output path
10-
gulp.task('clean-export', function() {
11-
return gulp.src([paths.exportSrv])
12-
.pipe(vinylPaths(del));
13-
});
1+
const gulp = require('gulp');
2+
const runSequence = require('run-sequence');
3+
const del = require('del');
4+
const vinylPaths = require('vinyl-paths');
5+
const jspm = require('jspm');
6+
const paths = require('../paths');
7+
const bundles = require('../bundles.js');
8+
const resources = require('../export.js');
149

1510
function getBundles() {
16-
var bl = [];
17-
for (var b in bundles.bundles) {
18-
bl.push(paths.exportSourceRoot + b + '.js');
11+
let bl = [];
12+
for (let b in bundles.bundles) {
13+
bl.push(paths.exportSourceRoot + b + '*.js');
1914
}
2015
return bl;
2116
}
2217

2318
function getExportList() {
24-
return resources.list.map(function(item) {
25-
return paths.exportSourceRoot + item;
26-
}).concat(getBundles());
19+
return resources.list.map(function (item) {
20+
return paths.exportSourceRoot + item;
21+
}).concat(getBundles());
22+
}
23+
24+
function normalizeExportPaths() {
25+
const pathsToNormalize = resources.normalize;
26+
27+
let promises = pathsToNormalize.map(pathSet => {
28+
const packageName = pathSet[ 0 ];
29+
const fileList = pathSet[ 1 ];
30+
31+
return jspm.normalize(packageName).then((normalized) => {
32+
const packagePath = normalized.substring(normalized.indexOf('jspm_packages'), normalized.lastIndexOf('.js'));
33+
return fileList.map(file => paths.exportSourceRoot + packagePath + file);
34+
});
35+
});
36+
37+
return Promise.all(promises)
38+
.then((normalizedPaths) => {
39+
return normalizedPaths.reduce((prev, curr) => prev.concat(curr), []);
40+
});
2741
}
2842

43+
// deletes all files in the output path
44+
gulp.task('clean-export', function() {
45+
return gulp.src([ paths.exportSrv ])
46+
.pipe(vinylPaths(del));
47+
});
48+
2949
gulp.task('export-copy', function() {
30-
return gulp.src(getExportList(), {base: "."})
50+
return gulp.src(getExportList(), { base: '.' })
3151
.pipe(gulp.dest(paths.exportSrv));
3252
});
3353

54+
gulp.task('export-normalized-resources', function() {
55+
return normalizeExportPaths().then(normalizedPaths => {
56+
return gulp.src(normalizedPaths, { base: '.' })
57+
.pipe(gulp.dest(paths.exportSrv));
58+
});
59+
});
60+
3461
// use after prepare-release
3562
gulp.task('export', function(callback) {
3663
return runSequence(
3764
'bundle',
3865
'clean-export',
66+
'export-normalized-resources',
3967
'export-copy',
4068
callback
4169
);
4270
});
71+

skeleton-typescript/build/export.js

+4
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@ module.exports = {
3030
'bootstrap', [
3131
'/fonts/*'
3232
]
33+
], [
34+
'bluebird', [
35+
'/js/browser/bluebird.min.js'
36+
]
3337
]
3438
]
3539
};

skeleton-typescript/build/tasks/export-release.js

-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
'use strict';
2-
31
const gulp = require('gulp');
42
const runSequence = require('run-sequence');
53
const del = require('del');

0 commit comments

Comments
 (0)