@progress/kendo-typescript-tasks 10.0.18-dev.0 → 10.0.18-ng12.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api.config.js +2 -16
- package/api.js +25 -5
- package/gulp-tasks.js +7 -22
- package/package.json +13 -11
- package/src/api/component-page.js +1 -1
- package/src/api/generator.js +6 -2
- package/src/api/map-constructors.js +8 -2
- package/src/api/type-utils.js +1 -1
- package/src/linter.js +18 -0
package/api.config.js
CHANGED
|
@@ -1,22 +1,8 @@
|
|
|
1
|
-
const os = require('os');
|
|
2
1
|
const path = require('path');
|
|
3
2
|
|
|
4
|
-
const jsonPath = path.
|
|
3
|
+
const jsonPath = path.resolve('./api.json');
|
|
5
4
|
const typedoc = {
|
|
6
|
-
|
|
7
|
-
module: 'commonjs',
|
|
8
|
-
target: 'es6',
|
|
9
|
-
types: [],
|
|
10
|
-
experimentalDecorators: true,
|
|
11
|
-
jsx: 'react', // support for tsx files
|
|
12
|
-
|
|
13
|
-
// Output options
|
|
14
|
-
json: jsonPath,
|
|
15
|
-
|
|
16
|
-
// Typedoc options
|
|
17
|
-
excludeExternals: true,
|
|
18
|
-
ignoreCompilerErrors: false,
|
|
19
|
-
includeDeclarations: true
|
|
5
|
+
excludeExternals: true
|
|
20
6
|
};
|
|
21
7
|
|
|
22
8
|
module.exports = {
|
package/api.js
CHANGED
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
const execSync = require('child_process').execSync;
|
|
4
4
|
const path = require('path');
|
|
5
|
-
const typedoc = require('gulp-typedoc');
|
|
6
5
|
const { merge } = require('lodash');
|
|
6
|
+
const typedoc = require('typedoc');
|
|
7
|
+
const glob = require('glob');
|
|
7
8
|
|
|
8
9
|
const api = require('./src/api/generator.js');
|
|
9
10
|
const apiConfig = require('./api.config.js');
|
|
@@ -12,11 +13,30 @@ module.exports = (gulp, userConfig) => {
|
|
|
12
13
|
const series = gulp.series;
|
|
13
14
|
|
|
14
15
|
const config = merge({}, apiConfig, userConfig);
|
|
15
|
-
const DECLARATIONS = ["typings/index.d.ts", "node_modules/@types/core-js/index.d.ts"];
|
|
16
16
|
|
|
17
|
-
gulp.task('api-json', () => {
|
|
18
|
-
|
|
19
|
-
.
|
|
17
|
+
gulp.task('api-json', async (done) => {
|
|
18
|
+
const entryPoints = [
|
|
19
|
+
...glob.sync("src/**/*.{ts,tsx}"),
|
|
20
|
+
...(config.externalApi || [])
|
|
21
|
+
];
|
|
22
|
+
|
|
23
|
+
const app = new typedoc.Application();
|
|
24
|
+
app.options.addReader(new typedoc.TSConfigReader());
|
|
25
|
+
app.bootstrap({ ...config.typedoc, entryPoints });
|
|
26
|
+
|
|
27
|
+
const project = app.convert();
|
|
28
|
+
if (!project) {
|
|
29
|
+
done(new Error('Unable to initialize TypeDoc.'));
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
await app.generateJson(project, apiConfig.jsonPath);
|
|
34
|
+
if (app.logger.hasErrors()) {
|
|
35
|
+
done(new Error('Unable to generate API reference, see messages above.'));
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
done();
|
|
20
40
|
});
|
|
21
41
|
|
|
22
42
|
gulp.task('api-clean', (done) => {
|
package/gulp-tasks.js
CHANGED
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
const del = require('del');
|
|
4
4
|
const childProcess = require('child_process');
|
|
5
5
|
const path = require('path');
|
|
6
|
-
const gulpTsLint = require('gulp-tslint');
|
|
7
|
-
const tslint = require('tslint');
|
|
8
6
|
|
|
9
7
|
const apiTasks = require('./api.js');
|
|
10
8
|
const commonTasks = require('@progress/kendo-common-tasks');
|
|
9
|
+
const linter = require('./src/linter');
|
|
11
10
|
|
|
12
11
|
const webpackConfig = require('./webpack.config.js');
|
|
13
12
|
const tscPath = path.join(process.cwd(), 'node_modules', '.bin', 'tsc');
|
|
@@ -37,29 +36,15 @@ module.exports = (gulp, libraryName, compilerPath, options, webpackConfigPath) =
|
|
|
37
36
|
done()
|
|
38
37
|
});
|
|
39
38
|
|
|
40
|
-
gulp.task('lint', series(
|
|
41
|
-
|
|
39
|
+
gulp.task('lint', series(
|
|
40
|
+
'check-compilation',
|
|
41
|
+
linter([ 'src/**/*.{ts,tsx}', 'test/**/*.{ts,tsx}', 'e2e/**/*.{ts,tsx}' ])
|
|
42
|
+
));
|
|
42
43
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
program: program,
|
|
46
|
-
formatter: 'verbose'
|
|
47
|
-
}))
|
|
48
|
-
.pipe(gulpTsLint.report());
|
|
44
|
+
gulp.task('lint-docs', linter([ 'docs/examples/**/*.{ts,tsx}' ], {
|
|
45
|
+
overrideConfigFile: '.eslintrc.docs.json'
|
|
49
46
|
}));
|
|
50
47
|
|
|
51
|
-
gulp.task('lint-docs', () => {
|
|
52
|
-
const program = tslint.Linter.createProgram('./tsconfig.docs.json', '.');
|
|
53
|
-
|
|
54
|
-
return gulp.src([ 'docs/examples/**/*.{ts,tsx}'])
|
|
55
|
-
.pipe(gulpTsLint({
|
|
56
|
-
formatter: 'prose',
|
|
57
|
-
program: program,
|
|
58
|
-
configuration: './tslint.docs.json'
|
|
59
|
-
}))
|
|
60
|
-
.pipe(gulpTsLint.report());
|
|
61
|
-
});
|
|
62
|
-
|
|
63
48
|
gulp.task('start', (done) => {
|
|
64
49
|
const webpackPort = 8888;
|
|
65
50
|
const host = listenAddress;
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@progress/kendo-typescript-tasks",
|
|
3
3
|
"description": "Kendo UI TypeScript package gulp tasks",
|
|
4
4
|
"main": "gulp-tasks.js",
|
|
5
|
-
"version": "10.0.18-
|
|
5
|
+
"version": "10.0.18-ng12.44+2169a1c",
|
|
6
6
|
"author": "Telerik",
|
|
7
7
|
"license": "Apache-2.0",
|
|
8
8
|
"scripts": {
|
|
@@ -15,29 +15,31 @@
|
|
|
15
15
|
"API Generation"
|
|
16
16
|
],
|
|
17
17
|
"peerDependencies": {
|
|
18
|
-
"typescript": "^3.4
|
|
18
|
+
"typescript": "^4.3.4"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@progress/kendo-common-tasks": "
|
|
22
|
-
"
|
|
21
|
+
"@progress/kendo-common-tasks": "ng12",
|
|
22
|
+
"@typescript-eslint/eslint-plugin": "4.28.2",
|
|
23
|
+
"@typescript-eslint/parser": "4.28.2",
|
|
24
|
+
"core-js": "^3.18.0",
|
|
23
25
|
"del": "2.2.2",
|
|
26
|
+
"eslint": "7.32.0",
|
|
27
|
+
"eslint-plugin-import": "2.25.2",
|
|
28
|
+
"eslint-plugin-rxjs": "3.3.7",
|
|
29
|
+
"glob": "^7.2.0",
|
|
24
30
|
"gulp": "^4.0.0",
|
|
25
31
|
"gulp-add-src": "^1.0.0",
|
|
26
|
-
"gulp-tslint": "^8.0.0",
|
|
27
|
-
"gulp-typedoc": "~2.2.2",
|
|
28
32
|
"handlebars": "^4.0.5",
|
|
29
33
|
"highlight.js": "9.14.2",
|
|
30
34
|
"lodash": "^4.6.0",
|
|
31
35
|
"mkdirp": "^0.5.0",
|
|
32
36
|
"source-map-loader": "^0.1.5",
|
|
33
37
|
"ts-loader": "4.1.0",
|
|
34
|
-
"
|
|
35
|
-
"tslint-defocus": "^2.0.6",
|
|
36
|
-
"typedoc": "0.15.0"
|
|
38
|
+
"typedoc": "~0.22.5"
|
|
37
39
|
},
|
|
38
40
|
"devDependencies": {
|
|
39
41
|
"gulp-jasmine": "^2.4.2",
|
|
40
|
-
"typescript": "~3.4
|
|
42
|
+
"typescript": "~4.3.4"
|
|
41
43
|
},
|
|
42
44
|
"repository": {
|
|
43
45
|
"type": "git",
|
|
@@ -46,5 +48,5 @@
|
|
|
46
48
|
"publishConfig": {
|
|
47
49
|
"access": "public"
|
|
48
50
|
},
|
|
49
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "2169a1c50bc889cbbe8878b38a8cc82a3affebf9"
|
|
50
52
|
}
|
|
@@ -22,7 +22,7 @@ const findDecorator = (decorators) => ((decorators || []).find(d =>
|
|
|
22
22
|
const decoratorProp = (prop) => (decorators) => {
|
|
23
23
|
const compDecorator = findDecorator(decorators);
|
|
24
24
|
|
|
25
|
-
if (compDecorator) {
|
|
25
|
+
if (compDecorator) {
|
|
26
26
|
const regExp = new RegExp(`${prop}:\\s?['"](.+?)['"]`);
|
|
27
27
|
const match = compDecorator.arguments.obj.match(regExp);
|
|
28
28
|
|
package/src/api/generator.js
CHANGED
|
@@ -110,6 +110,11 @@ const normalizeMembers = (members) => {
|
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
|
+
|
|
114
|
+
if (!element.comment && element.kindString === 'Accessor') {
|
|
115
|
+
const accessor = element.getSignature || element.setSignature || [];
|
|
116
|
+
element.comment = accessor[0].comment;
|
|
117
|
+
}
|
|
113
118
|
});
|
|
114
119
|
}
|
|
115
120
|
|
|
@@ -148,7 +153,7 @@ const extractMembers = (packageName, modules, config) => {
|
|
|
148
153
|
|
|
149
154
|
const models = nonEmptyModules.map(module => module
|
|
150
155
|
.children
|
|
151
|
-
.filter(child => child.
|
|
156
|
+
.filter(child => child.kindString !== "Reference")
|
|
152
157
|
.filter(child => child.name !== 'core')
|
|
153
158
|
.map(child => {
|
|
154
159
|
const fullName = moduleFullName(module.name, packageName, rootModules);
|
|
@@ -195,7 +200,6 @@ const namespacesAsModules = data => {
|
|
|
195
200
|
const modules = [];
|
|
196
201
|
data.filter(moduleFilter).forEach(module => module
|
|
197
202
|
.children
|
|
198
|
-
.filter(child => child.flags.isExported)
|
|
199
203
|
.filter(child => child.name !== 'core')
|
|
200
204
|
.forEach(child => {
|
|
201
205
|
if (child.kindString === 'Module' && child.children) {
|
|
@@ -9,8 +9,13 @@ const utils = require('./utils');
|
|
|
9
9
|
const isConstructor = (prop) =>
|
|
10
10
|
prop.kindString && prop.kindString === 'Constructor' && isPublic(prop);
|
|
11
11
|
|
|
12
|
-
const mapConstructors = (member) =>
|
|
13
|
-
|
|
12
|
+
const mapConstructors = (member) => {
|
|
13
|
+
if (member.decorators && member.decorators.find(d => d.name === 'NgModule')) {
|
|
14
|
+
// Ignore NgModule constructors
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return utils.flatten(member.children.filter(isConstructor).map(ctr => {
|
|
14
19
|
const name = ctr.name;
|
|
15
20
|
const source = `${member.name}.constructor`;
|
|
16
21
|
|
|
@@ -21,6 +26,7 @@ const mapConstructors = (member) =>
|
|
|
21
26
|
params: types.params(signature, source)
|
|
22
27
|
}));
|
|
23
28
|
}));
|
|
29
|
+
};
|
|
24
30
|
|
|
25
31
|
module.exports = mapConstructors;
|
|
26
32
|
|
package/src/api/type-utils.js
CHANGED
package/src/linter.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const { ESLint } = require('eslint');
|
|
2
|
+
|
|
3
|
+
const linter = (files, options = {}) => async function lint(done) {
|
|
4
|
+
const eslint = new ESLint(options);
|
|
5
|
+
const results = await eslint.lintFiles(files);
|
|
6
|
+
const formatter = await eslint.loadFormatter('stylish');
|
|
7
|
+
const errors = ESLint.getErrorResults(results)
|
|
8
|
+
const resultText = formatter.format(results);
|
|
9
|
+
console.log(resultText);
|
|
10
|
+
|
|
11
|
+
if (errors.length > 0) {
|
|
12
|
+
done(new Error('Lint failed.'));
|
|
13
|
+
} else {
|
|
14
|
+
done();
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = linter;
|