Compare commits

..

16 Commits

Author SHA1 Message Date
93fda3944a 1.0.34 2019-07-17 13:50:24 +02:00
d0ce17299a 1.0.33 2019-07-17 12:55:26 +02:00
1b0fa5b465 1.0.32 2019-07-17 12:40:40 +02:00
7a6f9d9569 fix(core): update 2019-07-17 12:40:40 +02:00
ebcf89520a 1.0.31 2019-07-17 12:22:25 +02:00
ca6ef86c8c fix(core): update 2019-07-17 12:22:24 +02:00
a98471e914 1.0.30 2019-07-17 12:01:02 +02:00
7755286aab fix(core): update 2019-07-17 12:01:02 +02:00
8f17a3c92a 1.0.29 2019-07-17 12:00:04 +02:00
65221425ca fix(core): update 2019-07-17 12:00:04 +02:00
0bc8048ac5 1.0.28 2019-07-17 11:54:50 +02:00
65754d34bc fix(core): update 2019-07-17 11:54:49 +02:00
c4a276ebf3 1.0.27 2019-06-17 07:06:57 +02:00
3db075b795 fix(core): update 2019-06-17 07:06:56 +02:00
f90f391e87 1.0.26 2019-06-16 17:52:20 +02:00
31d886a48a fix(core): update 2019-06-16 17:52:20 +02:00
8 changed files with 999 additions and 2127 deletions

View File

@ -1,5 +1,5 @@
# gitzone ci_default
image: hosttoday/ht-docker-node:npmci
image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
cache:
paths:
@ -50,13 +50,13 @@ testLTS:
- docker
- notpriv
testSTABLE:
testBuild:
stage: test
script:
- npmci npm prepare
- npmci node install stable
- npmci node install lts
- npmci npm install
- npmci npm test
- npmci command npm run build
coverage: /\d+.?\d+?\%\s*coverage/
tags:
- docker
@ -65,7 +65,7 @@ testSTABLE:
release:
stage: release
script:
- npmci node install stable
- npmci node install lts
- npmci npm publish
only:
- tags

4
.snyk Normal file
View File

@ -0,0 +1,4 @@
# Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities.
version: v1.13.5
ignore: {}
patch: {}

2888
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{
"name": "@gitzone/tsbundle",
"version": "1.0.25",
"version": "1.0.34",
"private": false,
"description": "a bundler using rollup for painless bundling of web projects",
"main": "dist/index.js",
@ -20,7 +20,7 @@
"@gitzone/tsrun": "^1.2.6",
"@gitzone/tstest": "^1.0.15",
"@pushrocks/tapbundle": "^3.0.7",
"@types/node": "^11.13.8",
"@types/node": "^12.6.6",
"tslint": "^5.11.0",
"tslint-config-prettier": "^1.15.0"
},
@ -35,16 +35,16 @@
"@pushrocks/smartcli": "^3.0.7",
"@pushrocks/smartfile": "^7.0.2",
"@pushrocks/smartlog": "^2.0.19",
"@pushrocks/smartlog-destination-local": "^7.0.5",
"@pushrocks/smartlog-destination-local": "^8.0.2",
"@types/html-minifier": "^3.5.3",
"html-minifier": "^4.0.0",
"rollup": "^1.10.1",
"rollup-plugin-babel": "^4.3.2",
"rollup-plugin-commonjs": "^9.3.4",
"rollup-plugin-node-resolve": "^4.2.3",
"rollup-plugin-commonjs": "^10.0.1",
"rollup-plugin-node-resolve": "^5.2.0",
"rollup-plugin-sourcemaps": "^0.4.2",
"rollup-plugin-terser": "^5.0.0",
"rollup-plugin-typescript2": "^0.21.0"
"rollup-plugin-typescript2": "^0.22.0"
},
"files": [
"ts/*",

View File

@ -19,7 +19,7 @@ export class TsBundle {
logger.log('info', `bundling for TEST!`);
const bundle = await plugins.rollup.rollup(this.optionsTest);
bundle.generate(this.optionsTest.output);
bundle.write(this.optionsTest.output);
await bundle.write(this.optionsTest.output);
logger.log('ok', `Successfully bundled files!`);
}
@ -31,7 +31,7 @@ export class TsBundle {
logger.log('info', `bundling for PRODUCTION!`);
const bundle = await plugins.rollup.rollup(this.optionsProduction);
bundle.generate(this.optionsProduction.output);
bundle.write(this.optionsProduction.output);
await bundle.write(this.optionsProduction.output);
logger.log('ok', `Successfully bundled files!`);
}

View File

@ -9,16 +9,14 @@ export const runCli = async () => {
const tsbundle = new TsBundle();
const htmlHandler = new HtmlHandler();
switch (true) {
case argvArg.production:
case argvArg.production || process.env.CI:
await tsbundle.buildProduction();
await htmlHandler.minifyHtml();
break;
case argvArg.test:
default:
await tsbundle.buildTest();
await htmlHandler.copyHtml();
break;
default:
logger.log('error', `Can not determine build target environement. Please specify via --production or --test`)
return;
}
});

View File

@ -5,23 +5,33 @@ export class HtmlHandler {
public sourceFilePath: string = plugins.path.join(paths.htmlDir, 'index.html');
public targetFilePath: string = plugins.path.join(paths.distWebDir, 'index.html');
public async checkIfExists() {
return plugins.smartfile.fs.fileExists(this.sourceFilePath);
}
// copies the html
public async copyHtml() {
await plugins.smartfile.fs.copy(
this.sourceFilePath,
this.targetFilePath
);
if (!(await this.checkIfExists())) {
return;
}
await plugins.smartfile.fs.copy(this.sourceFilePath, this.targetFilePath);
}
// copies and minifies the html
public async minifyHtml() {
if (!(await this.checkIfExists())) {
return;
}
const fileString = plugins.smartfile.fs.toStringSync(this.sourceFilePath);
const minifiedHtml = plugins.htmlMinifier.minify(fileString, {
minifyCSS: true,
minifyJS: true,
sortAttributes: true,
sortClassName: true,
removeAttributeQuotes: true
removeAttributeQuotes: true,
collapseWhitespace: true,
collapseInlineTagWhitespace: true,
removeComments: true
});
plugins.smartfile.memory.toFsSync(minifiedHtml, this.targetFilePath);
}

View File

@ -1,9 +1,7 @@
// node native
import * as path from 'path';
export {
path
};
export { path };
// pushrocks scope
import * as smartcli from '@pushrocks/smartcli';