Compare commits

...

12 Commits

Author SHA1 Message Date
0cceb23987 1.0.65 2020-05-25 16:40:34 +00:00
1b91c7a46c fix(core): update 2020-05-25 16:40:33 +00:00
bd9ec3b313 1.0.64 2020-05-25 16:29:23 +00:00
ada2ae72ee fix(core): update 2020-05-25 16:29:22 +00:00
ceaabe35c8 1.0.63 2020-05-05 12:29:24 +00:00
0b0c36da1b fix(core): update 2020-05-05 12:29:23 +00:00
3a53cd5405 1.0.62 2020-03-20 06:01:42 +00:00
623438e1d1 fix(core): update 2020-03-20 06:01:41 +00:00
8bf19d55c7 1.0.61 2020-03-20 05:39:53 +00:00
b1952365bc fix(core): update 2020-03-20 05:39:52 +00:00
753225053b 1.0.60 2020-03-20 05:34:06 +00:00
715b7a89ad fix(core): update 2020-03-20 05:34:05 +00:00
6 changed files with 54 additions and 6 deletions

2
cli.js
View File

@ -1,4 +1,4 @@
#!/usr/bin/env node
process.env.CLI_CALL = 'true';
const cliTool = require('./dist/index');
const cliTool = require('./dist_ts/index');
cliTool.runCli();

2
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "@gitzone/tsbundle",
"version": "1.0.59",
"version": "1.0.65",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@ -1,6 +1,6 @@
{
"name": "@gitzone/tsbundle",
"version": "1.0.59",
"version": "1.0.65",
"private": false,
"description": "a bundler using rollup for painless bundling of web projects",
"main": "dist_ts/index.js",

View File

@ -22,10 +22,41 @@ Use TypeScript for best in class intellisense.
tsbundle will bundle modern JavaScript websites in an Google Bot conformant way so things like AdSense do work.
> MIT licensed | **©** [Lossless GmbH](https://lossless.gmbh)
> | By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy.html)
tsbundle supports two modes of usage: CLI and API usage.
[![repo-footer](https://gitzone.gitlab.io/assets/repo-footer.svg)](https://maintainedby.lossless.com)
### CLI
```shell
# Note: This is code that belongs into your terminal ;)
# Install the tool for cli usage
# Globally
npm install -g @gitzone/tsbundle
# Locally for use in your pacakge.json
npm install --save-dev @gitzone/tsbundle
# then use it
tsbundle --from="./ts/index.ts" --to="dist/bundle.js"
## note you can call tsbundle without arguments. Default values are --from="./ts_web/index.ts" --to="dist_bundle/bundle.js"
## You can use --production to enable minification using terser
```
## API
You are using TypeScript, aren't you? Most of the stuff is apparent from the IDE intellisense.
```typescript
import { TsBundle } from '@gitozne/tsbundle';
const myTsBundleInstance = new TsBundle();
const run = async () => {
await myTsBundleInstance.buildTest('./from/my.ts', './to/mybundle.js')
// OR
await myTsBundleInstance.buildProduction('./from/my.ts', './to/mybundle.js')
}
```
## Contribution

View File

@ -28,6 +28,7 @@ export class TsBundle {
plugins: [
// Compile TypeScript files
plugins.rollupTypescript({
include: plugins.path.parse(fromArg).dir ? plugins.path.parse(fromArg).dir + '/**/*.ts' : '**/*.ts',
declaration: false,
emitDecoratorMetadata: true,
experimentalDecorators: true,

View File

@ -37,6 +37,22 @@ export const runCli = async () => {
}
});
tsBundleCli.addCommand('npm').subscribe(async argvArg => {
const tsbundle = new TsBundle();
// const htmlHandler = new HtmlHandler();
switch (true) {
case argvArg.production || process.env.CI:
await tsbundle.buildProduction('./ts/index.ts', './dist_bundle/bundle.js');
// await htmlHandler.minifyHtml();
break;
case argvArg.test:
default:
await tsbundle.buildTest('./ts/index.ts', './dist_bundle/bundle.js');
// await htmlHandler.copyHtml();
return;
}
});
tsBundleCli.addCommand('website').subscribe(async argvArg => {
const tsbundle = new TsBundle();
const htmlHandler = new HtmlHandler();