Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
3d8041fdde | |||
f021525f9e | |||
63fa2e84d4 | |||
af66bd8ff1 | |||
53f4e402f5 | |||
2f57c26b87 | |||
3e05c116f3 | |||
d2dbe40b50 |
@ -24,13 +24,14 @@ mirror:
|
||||
- docker
|
||||
- notpriv
|
||||
|
||||
snyk:
|
||||
image: registry.gitlab.com/hosttoday/ht-docker-node:snyk
|
||||
audit:
|
||||
image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
|
||||
stage: security
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci command npm install --ignore-scripts
|
||||
- npmci command snyk test
|
||||
- npmci command npm config set registry https://registry.npmjs.org
|
||||
- npmci command npm audit --audit-level=high
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
|
5
cli.js
5
cli.js
@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env node
|
||||
process.env.CLI_CALL_TSBUILD = 'true'
|
||||
var index = require("./dist/index.js");
|
||||
process.env.CLI_CALL = 'true';
|
||||
const cliTool = require('./dist_ts/index');
|
||||
cliTool.runCli();
|
||||
|
@ -1,4 +1,5 @@
|
||||
#!/usr/bin/env node
|
||||
process.env.CLI_CALL_TSBUILD = 'true';
|
||||
process.env.CLI_CALL = 'true';
|
||||
require('@gitzone/tsrun');
|
||||
require('./ts/index');
|
||||
const cliTool = require('./ts/index');
|
||||
cliTool.runCli();
|
||||
|
1462
package-lock.json
generated
1462
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
32
package.json
32
package.json
@ -1,17 +1,17 @@
|
||||
{
|
||||
"name": "@gitzone/tsbuild",
|
||||
"version": "2.1.21",
|
||||
"version": "2.1.25",
|
||||
"private": false,
|
||||
"description": "TypeScript nightly to easily make use of latest features",
|
||||
"main": "dist_ts/index.js",
|
||||
"typings": "dist/index.d.ts",
|
||||
"typings": "dist_ts/index.d.ts",
|
||||
"bin": {
|
||||
"tsbuild": "cli.js"
|
||||
"tsbuild": "./cli.js"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "tsrun test/test.ts",
|
||||
"testCustom": "node cli.ts.js custom ts_web",
|
||||
"build": "node cli.ts.js"
|
||||
"build": "node cli.ts.js --web"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -27,26 +27,26 @@
|
||||
},
|
||||
"homepage": "https://gitlab.com/pushrocks/tsn#README",
|
||||
"dependencies": {
|
||||
"@pushrocks/smartcli": "^3.0.7",
|
||||
"@pushrocks/smartfile": "^7.0.2",
|
||||
"@pushrocks/smartlog": "^2.0.19",
|
||||
"@pushrocks/smartpath": "^4.0.1",
|
||||
"@pushrocks/smartpromise": "^3.0.2",
|
||||
"typescript": "^3.5.2"
|
||||
"@pushrocks/early": "^3.0.6",
|
||||
"@pushrocks/smartcli": "^3.0.12",
|
||||
"@pushrocks/smartfile": "^8.0.0",
|
||||
"@pushrocks/smartlog": "^2.0.36",
|
||||
"@pushrocks/smartpath": "^4.0.3",
|
||||
"@pushrocks/smartpromise": "^3.0.6",
|
||||
"typescript": "^3.9.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@gitzone/tsrun": "^1.2.8",
|
||||
"@pushrocks/tapbundle": "^3.0.13",
|
||||
"@types/node": "^12.7.2",
|
||||
"tslint": "^5.19.0",
|
||||
"@gitzone/tsrun": "^1.2.12",
|
||||
"@pushrocks/tapbundle": "^3.2.9",
|
||||
"@types/node": "^14.0.27",
|
||||
"tslint": "^6.1.3",
|
||||
"tslint-config-prettier": "^1.18.0"
|
||||
},
|
||||
"files": [
|
||||
"ts/**/*",
|
||||
"ts_web/**/*",
|
||||
"dist/**/*",
|
||||
"dist_bundle/**/*",
|
||||
"dist_web/**/*",
|
||||
"dist_*/**/*",
|
||||
"dist_ts/**/*",
|
||||
"dist_ts_web/**/*",
|
||||
"assets/**/*",
|
||||
|
79
readme.md
Normal file
79
readme.md
Normal file
@ -0,0 +1,79 @@
|
||||
# @gitzone/tsbuild
|
||||
TypeScript nightly to easily make use of latest features
|
||||
|
||||
## Availabililty and Links
|
||||
* [npmjs.org (npm package)](https://www.npmjs.com/package/@gitzone/tsbuild)
|
||||
* [gitlab.com (source)](https://gitlab.com/gitzone/tsbuild)
|
||||
* [github.com (source mirror)](https://github.com/gitzone/tsbuild)
|
||||
* [docs (typedoc)](https://gitzone.gitlab.io/tsbuild/)
|
||||
|
||||
## Status for master
|
||||
[](https://gitlab.com/gitzone/tsbuild/commits/master)
|
||||
[](https://gitlab.com/gitzone/tsbuild/commits/master)
|
||||
[](https://www.npmjs.com/package/@gitzone/tsbuild)
|
||||
[](https://snyk.io/test/npm/@gitzone/tsbuild)
|
||||
[](https://nodejs.org/dist/latest-v10.x/docs/api/)
|
||||
[](https://nodejs.org/dist/latest-v10.x/docs/api/)
|
||||
[](https://prettier.io/)
|
||||
|
||||
## Usage
|
||||
|
||||
Tsn uses the **next** tagged npm version of typescript
|
||||
|
||||
```typescript
|
||||
import * as tsn from 'tsn';
|
||||
|
||||
let myGlobStringObject = {
|
||||
'./myTsFolder/**/*.ts': './myDestinationFolder/',
|
||||
'./someOtherTsFolder/**/*.ts': './myOtherDestinationFolder/'
|
||||
};
|
||||
|
||||
let tsOptions = {
|
||||
target: tsn.ScriptTarget.ES2015,
|
||||
module: tsn.ModuleKind.CommonJS
|
||||
};
|
||||
|
||||
/*
|
||||
note: since this only works in code, here are the target numbers
|
||||
enum ScriptTarget {
|
||||
ES3 = 0,
|
||||
ES5 = 1,
|
||||
ES2015 = 2,
|
||||
ES2016 = 3,
|
||||
ES2017 = 4,
|
||||
ESNext = 5,
|
||||
Latest = 5,
|
||||
}
|
||||
|
||||
and here are the module kinds
|
||||
enum ModuleKind {
|
||||
None = 0,
|
||||
CommonJS = 1,
|
||||
AMD = 2,
|
||||
UMD = 3,
|
||||
System = 4,
|
||||
ES2015 = 5,
|
||||
}
|
||||
*/
|
||||
|
||||
let myCwd = process.cwd();
|
||||
|
||||
tsn.compileGlobStringObject(
|
||||
myGlobStringObject, // the glob string object describing from where to compile what to where
|
||||
tsOptions, // the options for TypeScript
|
||||
myCwd // a custom cwd, optional, defaults to process.cwd()
|
||||
);
|
||||
```
|
||||
|
||||
[](https://push.rocks)
|
||||
|
||||
## 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)
|
||||
| By using this npm module you agree to our [privacy policy](https://lossless.gmbH/privacy)
|
||||
|
||||
[](https://maintainedby.lossless.com)
|
6
test/assets/output/tocompile.d.ts
vendored
6
test/assets/output/tocompile.d.ts
vendored
@ -1,5 +1 @@
|
||||
declare class test2 {
|
||||
test: string[];
|
||||
constructor();
|
||||
}
|
||||
declare const run: () => Promise<string>;
|
||||
export {};
|
||||
|
@ -1,5 +1,31 @@
|
||||
"use strict";
|
||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
||||
if (k2 === undefined) k2 = k;
|
||||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
||||
}) : (function(o, m, k, k2) {
|
||||
if (k2 === undefined) k2 = k;
|
||||
o[k2] = m[k];
|
||||
}));
|
||||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
||||
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
||||
}) : function(o, v) {
|
||||
o["default"] = v;
|
||||
});
|
||||
var __importStar = (this && this.__importStar) || function (mod) {
|
||||
if (mod && mod.__esModule) return mod;
|
||||
var result = {};
|
||||
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
||||
__setModuleDefault(result, mod);
|
||||
return result;
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
console.log('test');
|
||||
console.log('test2');
|
||||
const early = __importStar(require("@pushrocks/early"));
|
||||
early.start();
|
||||
early.stop();
|
||||
const tocompile2_1 = require("./tocompile2");
|
||||
console.log(tocompile2_1.anExportedString);
|
||||
class test2 {
|
||||
constructor() {
|
||||
this.test = [];
|
||||
@ -9,4 +35,4 @@ class test2 {
|
||||
const run = async () => {
|
||||
return 'hi';
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jb21waWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdG9jb21waWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNyQixNQUFNLEtBQUs7SUFFVDtRQURBLFNBQUksR0FBYSxFQUFFLENBQUM7UUFFbEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLEdBQUcsR0FBRyxLQUFLLElBQXFCLEVBQUU7SUFDdEMsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUMifQ==
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jb21waWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdG9jb21waWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUVyQix3REFBMEM7QUFFMUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0FBQ2QsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0FBRWIsNkNBQThDO0FBQzlDLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQWdCLENBQUMsQ0FBQztBQUU5QixNQUFNLEtBQUs7SUFFVDtRQURBLFNBQUksR0FBYSxFQUFFLENBQUM7UUFFbEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLEdBQUcsR0FBRyxLQUFLLElBQXFCLEVBQUU7SUFDdEMsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUMifQ==
|
1
test/assets/output/tocompile2.d.ts
vendored
1
test/assets/output/tocompile2.d.ts
vendored
@ -0,0 +1 @@
|
||||
export declare const anExportedString = "exported string";
|
||||
|
@ -1,2 +1,6 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.anExportedString = void 0;
|
||||
console.log('hello');
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jb21waWxlMi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RvY29tcGlsZTIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyJ9
|
||||
exports.anExportedString = 'exported string';
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9jb21waWxlMi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RvY29tcGlsZTIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNSLFFBQUEsZ0JBQWdCLEdBQUcsaUJBQWlCLENBQUMifQ==
|
@ -1,5 +1,14 @@
|
||||
console.log('test');
|
||||
console.log('test2');
|
||||
|
||||
import * as early from '@pushrocks/early';
|
||||
|
||||
early.start();
|
||||
early.stop();
|
||||
|
||||
import {anExportedString} from './tocompile2';
|
||||
console.log(anExportedString);
|
||||
|
||||
class test2 {
|
||||
test: string[] = [];
|
||||
constructor() {
|
||||
|
@ -1 +1,2 @@
|
||||
console.log('hello');
|
||||
export const anExportedString = 'exported string';
|
||||
|
@ -1,3 +1,5 @@
|
||||
import * as early from '@pushrocks/early';
|
||||
early.start('tsbuild');
|
||||
export * from './tsbuild.exports';
|
||||
|
||||
import './tsbuild.cli';
|
||||
export * from './tsbuild.cli';
|
||||
early.stop();
|
@ -1,46 +1,46 @@
|
||||
import * as plugins from './tsbuild.plugins';
|
||||
import * as tsbuild from './tsbuild.exports';
|
||||
|
||||
const tsbuildCli = new plugins.smartcli.Smartcli();
|
||||
export const runCli = async () => {
|
||||
const tsbuildCli = new plugins.smartcli.Smartcli();
|
||||
|
||||
/**
|
||||
* the standard task compiles anything in ts/ directory to dist directory
|
||||
*/
|
||||
tsbuildCli.standardTask().subscribe(async argvArg => {
|
||||
if (process.env.CLI_CALL_TSBUILD === 'true') {
|
||||
/**
|
||||
* the standard task compiles anything in ts/ directory to dist directory
|
||||
*/
|
||||
tsbuildCli.standardTask().subscribe(async (argvArg) => {
|
||||
tsbuild.compileGlobStringObject(
|
||||
{
|
||||
'./ts/**/*.ts': './dist_ts'
|
||||
'./ts/**/*.ts': './dist_ts',
|
||||
},
|
||||
{},
|
||||
process.cwd(),
|
||||
argvArg
|
||||
);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* the custom command compiles any customDir to dist_customDir
|
||||
*/
|
||||
tsbuildCli.addCommand('custom').subscribe(async argvArg => {
|
||||
const listedDirectories = argvArg._;
|
||||
listedDirectories.shift();
|
||||
const compilationCommandObject: { [key: string]: string } = {};
|
||||
for (const directory of listedDirectories) {
|
||||
compilationCommandObject[`./${directory}/**/*.ts`] = `./dist_${directory}`;
|
||||
}
|
||||
await tsbuild.compileGlobStringObject(compilationCommandObject, {}, process.cwd(), argvArg);
|
||||
});
|
||||
/**
|
||||
* the custom command compiles any customDir to dist_customDir
|
||||
*/
|
||||
tsbuildCli.addCommand('custom').subscribe(async (argvArg) => {
|
||||
const listedDirectories = argvArg._;
|
||||
listedDirectories.shift();
|
||||
const compilationCommandObject: { [key: string]: string } = {};
|
||||
for (const directory of listedDirectories) {
|
||||
compilationCommandObject[`./${directory}/**/*.ts`] = `./dist_${directory}`;
|
||||
}
|
||||
await tsbuild.compileGlobStringObject(compilationCommandObject, {}, process.cwd(), argvArg);
|
||||
});
|
||||
|
||||
tsbuildCli.addCommand('element').subscribe(async argvArg => {
|
||||
await tsbuild.compileGlobStringObject(
|
||||
{
|
||||
'./ts_web/**/*.ts': 'dist_ts_web'
|
||||
},
|
||||
{},
|
||||
process.cwd(),
|
||||
{ web: true }
|
||||
);
|
||||
});
|
||||
tsbuildCli.addCommand('element').subscribe(async (argvArg) => {
|
||||
await tsbuild.compileGlobStringObject(
|
||||
{
|
||||
'./ts_web/**/*.ts': 'dist_ts_web',
|
||||
},
|
||||
{},
|
||||
process.cwd(),
|
||||
{ web: true }
|
||||
);
|
||||
});
|
||||
|
||||
tsbuildCli.startParse();
|
||||
tsbuildCli.startParse();
|
||||
};
|
||||
|
@ -34,11 +34,11 @@ export let compileGlobStringObject = async (
|
||||
`TypeScript assignment: transpile from ${keyArg} to ${globStringObjectArg[keyArg]}`
|
||||
);
|
||||
const fileTreeArray = await plugins.smartfile.fs.listFileTree(cwdArg, keyArg);
|
||||
let absoluteFilePathArray: string[] = plugins.smartpath.transform.toAbsolute(
|
||||
const absoluteFilePathArray: string[] = plugins.smartpath.transform.toAbsolute(
|
||||
fileTreeArray,
|
||||
cwdArg
|
||||
);
|
||||
let destDir: string = plugins.smartpath.transform.toAbsolute(
|
||||
const destDir: string = plugins.smartpath.transform.toAbsolute(
|
||||
globStringObjectArg[keyArg],
|
||||
cwdArg
|
||||
);
|
||||
|
@ -1,14 +0,0 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"outDir": "dist_ts/",
|
||||
"module": "commonjs",
|
||||
"target": "es2015",
|
||||
"lib":[
|
||||
"es2016",
|
||||
"es2017"
|
||||
]
|
||||
},
|
||||
"include": [
|
||||
"ts/**/*.ts"
|
||||
]
|
||||
}
|
Reference in New Issue
Block a user