From d92edd60d9b7b1e61b0dc7b4d0cc7658105c31e2 Mon Sep 17 00:00:00 2001 From: Phil Kunz Date: Sat, 14 Mar 2020 22:41:25 +0000 Subject: [PATCH] fix(core): update --- .gitignore | 4 +- .gitlab-ci.yml | 87 ++++++++++++++++++----------------- .vscode/launch.json | 29 ++++++++++++ .vscode/settings.json | 26 +++++++++++ npmextra.json | 1 + package.json | 15 +++--- readme.md | 7 ++- ts/index.ts | 4 +- ts/tsbundle.class.tsbundle.ts | 17 ++++--- 9 files changed, 129 insertions(+), 61 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 .vscode/settings.json diff --git a/.gitignore b/.gitignore index 91c0db0..ef13c79 100644 --- a/.gitignore +++ b/.gitignore @@ -15,8 +15,6 @@ node_modules/ # builds dist/ -dist_web/ -dist_serve/ -dist_ts_web/ +dist_*/ # custom \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a6159b7..a95dfb6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,18 +1,16 @@ # gitzone ci_default image: registry.gitlab.com/hosttoday/ht-docker-node:npmci -variables: - GIT_STRATEGY: clone cache: paths: - - .npmci_cache/ - key: "$CI_BUILD_STAGE" + - .npmci_cache/ + key: '$CI_BUILD_STAGE' stages: -- security -- test -- release -- metadata + - security + - test + - release + - metadata # ==================== # security stage @@ -20,21 +18,23 @@ stages: mirror: stage: security script: - - npmci git mirror + - npmci git mirror tags: - - docker - - notpriv + - lossless + - docker + - notpriv snyk: + image: registry.gitlab.com/hosttoday/ht-docker-node:snyk stage: security script: - npmci npm prepare - - npmci command npm install -g snyk - npmci command npm install --ignore-scripts - npmci command snyk test tags: - - docker - - notpriv + - lossless + - docker + - notpriv # ==================== # test stage @@ -43,37 +43,40 @@ snyk: testStable: stage: test script: - - npmci npm prepare - - npmci node install stable - - npmci npm install - - npmci npm test + - npmci npm prepare + - npmci node install stable + - npmci npm install + - npmci npm test coverage: /\d+.?\d+?\%\s*coverage/ tags: - - docker - - priv + - lossless + - docker + - priv testBuild: stage: test script: - - npmci npm prepare - - npmci node install lts - - npmci npm install - - npmci command npm run build + - npmci npm prepare + - npmci node install stable + - npmci npm install + - npmci command npm run build coverage: /\d+.?\d+?\%\s*coverage/ tags: - - docker - - notpriv + - lossless + - docker + - notpriv release: stage: release script: - - npmci node install lts - - npmci npm publish + - npmci node install stable + - npmci npm publish only: - - tags + - tags tags: - - docker - - notpriv + - lossless + - docker + - notpriv # ==================== # metadata stage @@ -83,33 +86,35 @@ codequality: allow_failure: true script: - npmci command npm install -g tslint typescript + - npmci npm prepare - npmci npm install - npmci command "tslint -c tslint.json ./ts/**/*.ts" tags: - - docker - - priv + - lossless + - docker + - priv trigger: stage: metadata script: - - npmci trigger + - npmci trigger only: - - tags + - tags tags: - - docker - - notpriv + - lossless + - docker + - notpriv pages: - image: hosttoday/ht-docker-dbase:npmci - services: - - docker:18-dind stage: metadata script: + - npmci node install lts - npmci command npm install -g @gitzone/tsdoc - npmci npm prepare - npmci npm install - npmci command tsdoc tags: + - lossless - docker - notpriv only: @@ -117,5 +122,5 @@ pages: artifacts: expire_in: 1 week paths: - - public + - public allow_failure: true diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..112db52 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,29 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "name": "current file", + "type": "node", + "request": "launch", + "args": [ + "${relativeFile}" + ], + "runtimeArgs": ["-r", "@gitzone/tsrun"], + "cwd": "${workspaceRoot}", + "protocol": "inspector", + "internalConsoleOptions": "openOnSessionStart" + }, + { + "name": "test.ts", + "type": "node", + "request": "launch", + "args": [ + "test/test.ts" + ], + "runtimeArgs": ["-r", "@gitzone/tsrun"], + "cwd": "${workspaceRoot}", + "protocol": "inspector", + "internalConsoleOptions": "openOnSessionStart" + } + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..01d2b8d --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,26 @@ +{ + "json.schemas": [ + { + "fileMatch": ["/npmextra.json"], + "schema": { + "type": "object", + "properties": { + "npmci": { + "type": "object", + "description": "settings for npmci" + }, + "gitzone": { + "type": "object", + "description": "settings for gitzone", + "properties": { + "projectType": { + "type": "string", + "enum": ["website", "element", "service", "npm"] + } + } + } + } + } + } + ] +} diff --git a/npmextra.json b/npmextra.json index 4962f39..6011a7d 100644 --- a/npmextra.json +++ b/npmextra.json @@ -1,5 +1,6 @@ { "gitzone": { + "projectType": "npm", "module": { "githost": "gitlab.com", "gitscope": "gitzone", diff --git a/package.json b/package.json index d5ea5fa..1b44fa4 100644 --- a/package.json +++ b/package.json @@ -48,14 +48,15 @@ "terser": "^4.6.6" }, "files": [ - "ts/*", - "ts_web/*", - "dist/*", - "dist_web/*", - "dist_ts_web/*", - "assets/*", + "ts/**/*", + "ts_web/**/*", + "dist/**/*", + "dist_*/**/*", + "dist_ts/**/*", + "dist_ts_web/**/*", + "assets/**/*", "cli.js", "npmextra.json", "readme.md" ] -} +} \ No newline at end of file diff --git a/readme.md b/readme.md index e5fbf5e..461c881 100644 --- a/readme.md +++ b/readme.md @@ -8,7 +8,7 @@ a bundler using rollup for painless bundling of web projects * [docs (typedoc)](https://gitzone.gitlab.io/tsbundle/) ## Status for master -[![build status](https://gitlab.com/gitzone/tsbundle/badges/master/build.svg)](https://gitlab.com/gitzone/tsbundle/commits/master) +[![pipeline status](https://gitlab.com/gitzone/tsbundle/badges/master/pipeline.svg)](https://gitlab.com/gitzone/tsbundle/commits/master) [![coverage report](https://gitlab.com/gitzone/tsbundle/badges/master/coverage.svg)](https://gitlab.com/gitzone/tsbundle/commits/master) [![npm downloads per month](https://img.shields.io/npm/dm/@gitzone/tsbundle.svg)](https://www.npmjs.com/package/@gitzone/tsbundle) [![Known Vulnerabilities](https://snyk.io/test/npm/@gitzone/tsbundle/badge.svg)](https://snyk.io/test/npm/@gitzone/tsbundle) @@ -27,6 +27,11 @@ tsbundle will bundle modern JavaScript websites in an Google Bot conformant way [![repo-footer](https://gitzone.gitlab.io/assets/repo-footer.svg)](https://maintainedby.lossless.com) + +## Contribution + +We are always happy for code contributions. If you are not the code contributing type that is ok. Still, maintaining Open Source repositories takes considerable time and thought. If you like the quality of what we do and our modules are useful to you we would appreciate a little monthly contribution: You can [contribute one time](https://lossless.link/contribute-onetime) or [contribute monthly](https://lossless.link/contribute). :) + For further information read the linked docs at the top of this readme. > MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh) diff --git a/ts/index.ts b/ts/index.ts index 4f41b29..bbffa25 100644 --- a/ts/index.ts +++ b/ts/index.ts @@ -10,6 +10,4 @@ early.stop(); // lets make this usable programmatically export * from './tsbundle.class.tsbundle'; export * from './tsbundle.htmlhandler'; -export { - runCli -}; +export { runCli }; diff --git a/ts/tsbundle.class.tsbundle.ts b/ts/tsbundle.class.tsbundle.ts index 7bfd835..ef9627c 100644 --- a/ts/tsbundle.class.tsbundle.ts +++ b/ts/tsbundle.class.tsbundle.ts @@ -5,7 +5,10 @@ export class TsBundle { /** * the basic default options for rollup */ - public getBaseOptions(fromArg: string = `ts_web/index.ts`, toArg: string = 'dist_bundle/bundle.js') { + public getBaseOptions( + fromArg: string = `ts_web/index.ts`, + toArg: string = 'dist_bundle/bundle.js' + ) { logger.log('info', `from: ${fromArg}`); logger.log('info', `to: ${toArg}`); @@ -81,11 +84,13 @@ export class TsBundle { public getOptionsProduction(fromArg: string, toArg: string): plugins.rollup.RollupOptions { const productionOptions = this.getBaseOptions(fromArg, toArg); - productionOptions.plugins.push(plugins.rollupTerser({ - compress: true, - mangle: true, - sourcemap: true - })); + productionOptions.plugins.push( + plugins.rollupTerser({ + compress: true, + mangle: true, + sourcemap: true + }) + ); return productionOptions; }