Skip to content

Commit 2e3e39b

Browse files
committed
build: upgrade to eslint
remove tslint in favor of eslint
1 parent 71b9800 commit 2e3e39b

File tree

14 files changed

+33612
-5818
lines changed

14 files changed

+33612
-5818
lines changed

builders/cordova-build/index.ts

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,39 @@
1-
import { BuilderContext, createBuilder, targetFromTargetString } from '@angular-devkit/architect';
2-
import { json } from '@angular-devkit/core';
1+
import {
2+
createBuilder,
3+
targetFromTargetString,
4+
} from '@angular-devkit/architect';
5+
import type { BuilderContext, BuilderOutput } from '@angular-devkit/architect';
6+
import type { json } from '@angular-devkit/core';
37

48
import { prepareBrowserConfig, validateBuilderConfig } from '../utils';
59

6-
import { CordovaBuildBuilderSchema } from './schema';
10+
import type { CordovaBuildBuilderSchema } from './schema';
711

812
export async function buildCordova(
913
options: CordovaBuildBuilderSchema,
10-
context: BuilderContext
11-
) {
12-
context.reportStatus(`running cordova build...`);
13-
// Get angular browser build target
14-
const browserTargetSpec = targetFromTargetString(options.browserTarget);
15-
// Get browser build options
16-
const browserBuildTargetOptions = await context.getTargetOptions(browserTargetSpec);
14+
context: BuilderContext,
15+
): Promise<BuilderOutput> {
16+
context.reportStatus(`running cordova build...`);
17+
// Get angular browser build target
18+
const browserTargetSpec = targetFromTargetString(options.browserTarget);
19+
// Get browser build options
20+
const browserBuildTargetOptions = await context.getTargetOptions(
21+
browserTargetSpec,
22+
);
1723

18-
const formattedOptions = validateBuilderConfig(options);
19-
const newOptions = prepareBrowserConfig(formattedOptions, browserBuildTargetOptions);
24+
const formattedOptions = validateBuilderConfig(options);
25+
const newOptions = prepareBrowserConfig(
26+
formattedOptions,
27+
browserBuildTargetOptions,
28+
);
2029

21-
const browserBuild = await context.scheduleTarget(browserTargetSpec, newOptions);
22-
return browserBuild.result;
30+
const browserBuild = await context.scheduleTarget(
31+
browserTargetSpec,
32+
newOptions,
33+
);
34+
return browserBuild.result;
2335
}
2436

25-
export default createBuilder<json.JsonObject & CordovaBuildBuilderSchema>(buildCordova);
37+
export default createBuilder<json.JsonObject & CordovaBuildBuilderSchema>(
38+
buildCordova,
39+
);

builders/cordova-serve/index.ts

Lines changed: 41 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,58 @@
11
import {
2-
BuilderContext,
32
createBuilder,
4-
targetFromTargetString
3+
targetFromTargetString,
54
} from '@angular-devkit/architect';
6-
import {
7-
ExecutionTransformer,
8-
executeDevServerBuilder
9-
} from '@angular-devkit/build-angular';
10-
import {
5+
import type { BuilderContext } from '@angular-devkit/architect';
6+
import { executeDevServerBuilder } from '@angular-devkit/build-angular';
7+
import type { ExecutionTransformer } from '@angular-devkit/build-angular';
8+
import type {
119
DevServerBuilderOptions,
12-
DevServerBuilderOutput
10+
DevServerBuilderOutput,
1311
} from '@angular-devkit/build-angular/src/dev-server';
14-
import { IndexHtmlTransform } from '@angular-devkit/build-angular/src/utils/index-file/write-index-html';
12+
import type { IndexHtmlTransform } from '@angular-devkit/build-angular/src/utils/index-file/index-html-generator';
1513
import { ScriptsWebpackPlugin } from '@angular-devkit/build-angular/src/webpack/plugins';
16-
import { json } from '@angular-devkit/core';
14+
import type { json } from '@angular-devkit/core';
1715
import * as CopyWebpackPlugin from 'copy-webpack-plugin';
1816
import { basename } from 'path';
19-
import { Observable, from } from 'rxjs';
17+
import { from } from 'rxjs';
18+
import type { Observable } from 'rxjs';
2019
import { switchMap } from 'rxjs/operators';
21-
import { Configuration } from 'webpack';
20+
import type { Configuration } from 'webpack';
2221

23-
import { FormattedAssets, prepareServerConfig } from '../utils';
22+
import { prepareServerConfig } from '../utils';
23+
import type { FormattedAssets } from '../utils';
2424
import { augmentIndexHtml } from '../utils/append-scripts';
2525

2626
import { createConsoleLogServer } from './log-server';
27-
import { CordovaServeBuilderSchema } from './schema';
27+
import type { CordovaServeBuilderSchema } from './schema';
2828

2929
export type CordovaDevServerBuilderOptions = CordovaServeBuilderSchema &
3030
json.JsonObject;
3131

3232
export function serveCordova(
3333
options: CordovaServeBuilderSchema,
34-
context: BuilderContext
34+
context: BuilderContext,
3535
): Observable<DevServerBuilderOutput> {
3636
const { devServerTarget, port, host, ssl } = options;
3737
const root = context.workspaceRoot;
3838
const devServerTargetSpec = targetFromTargetString(devServerTarget);
3939

4040
async function setup() {
41-
const devServerTargetOptions = (await context.getTargetOptions(devServerTargetSpec)) as DevServerBuilderOptions;
42-
const devServerName = await context.getBuilderNameForTarget(devServerTargetSpec);
41+
const devServerTargetOptions = (await context.getTargetOptions(
42+
devServerTargetSpec,
43+
)) as DevServerBuilderOptions;
44+
const devServerName = await context.getBuilderNameForTarget(
45+
devServerTargetSpec,
46+
);
4347

4448
devServerTargetOptions.port = port;
4549
devServerTargetOptions.host = host;
4650
devServerTargetOptions.ssl = ssl;
4751
// tslint:disable-next-line: no-unnecessary-type-assertion
48-
const formattedOptions = await context.validateOptions(devServerTargetOptions, devServerName) as DevServerBuilderOptions;
52+
const formattedOptions = (await context.validateOptions(
53+
devServerTargetOptions,
54+
devServerName,
55+
)) as DevServerBuilderOptions;
4956
const formattedAssets = prepareServerConfig(options, root);
5057
if (options.consolelogs && options.consolelogsPort) {
5158
await createConsoleLogServer(host, options.consolelogsPort);
@@ -58,14 +65,17 @@ export function serveCordova(
5865
executeDevServerBuilder(
5966
formattedOptions,
6067
context,
61-
getTransforms(formattedAssets, context)
62-
)
63-
)
68+
getTransforms(formattedAssets, context),
69+
),
70+
),
6471
);
6572
}
6673
export default createBuilder<CordovaDevServerBuilderOptions, any>(serveCordova);
6774

68-
function getTransforms(formattedAssets: FormattedAssets, context: BuilderContext) {
75+
function getTransforms(
76+
formattedAssets: FormattedAssets,
77+
context: BuilderContext,
78+
) {
6979
return {
7080
webpackConfiguration: cordovaServeTransform(formattedAssets, context),
7181
indexHtml: indexHtmlTransformFactory(formattedAssets, context),
@@ -74,10 +84,10 @@ function getTransforms(formattedAssets: FormattedAssets, context: BuilderContext
7484

7585
const cordovaServeTransform: (
7686
formattedAssets: FormattedAssets,
77-
context: BuilderContext
87+
context: BuilderContext,
7888
) => ExecutionTransformer<Configuration> = (
7989
formattedAssets,
80-
{ workspaceRoot }
90+
{ workspaceRoot },
8191
) => browserWebpackConfig => {
8292
const scriptExtras = formattedAssets.globalScriptsByBundleName.map(
8393
(script: { bundleName: any; paths: any }) => {
@@ -89,30 +99,30 @@ const cordovaServeTransform: (
8999
scripts: script.paths,
90100
basePath: workspaceRoot,
91101
});
92-
}
102+
},
93103
);
94104

95105
const copyWebpackPluginInstance = new CopyWebpackPlugin({
96-
patterns: formattedAssets.copyWebpackPluginPatterns,
106+
patterns: formattedAssets.copyWebpackPluginPatterns,
97107
});
98108

99-
// tslint:disable-next-line: no-non-null-assertion
109+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
100110
browserWebpackConfig.plugins!.push(
101111
...scriptExtras,
102-
copyWebpackPluginInstance
112+
copyWebpackPluginInstance,
103113
);
104114
return browserWebpackConfig;
105115
};
106116

107117
export const indexHtmlTransformFactory: (
108118
formattedAssets: FormattedAssets,
109-
context: BuilderContext
119+
context: BuilderContext,
110120
) => IndexHtmlTransform = ({ globalScriptsByBundleName }) => (
111-
indexTransform: string
121+
indexTransform: string,
112122
) => {
113123
const augmentedHtml = augmentIndexHtml(
114124
indexTransform,
115-
globalScriptsByBundleName
125+
globalScriptsByBundleName,
116126
);
117127
return Promise.resolve(augmentedHtml);
118128
};

builders/cordova-serve/log-server.ts

Lines changed: 33 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,22 @@ export interface ConsoleLogServerOptions {
1313
consolelogsPort: number;
1414
}
1515

16-
export function isConsoleLogServerMessage(m: any): m is ConsoleLogServerMessage {
17-
return m
18-
&& typeof m.category === 'string'
19-
&& typeof m.type === 'string'
20-
&& m.data && typeof m.data.length === 'number';
16+
export function isConsoleLogServerMessage(
17+
m: any,
18+
): m is ConsoleLogServerMessage {
19+
return (
20+
m &&
21+
typeof m.category === 'string' &&
22+
typeof m.type === 'string' &&
23+
m.data &&
24+
typeof m.data.length === 'number'
25+
);
2126
}
2227

23-
export async function createConsoleLogServer(host: string, port: number): Promise<WebSocket.Server> {
28+
export async function createConsoleLogServer(
29+
host: string,
30+
port: number,
31+
): Promise<WebSocket.Server> {
2432
const wss = new WebSocket.Server({ host, port });
2533

2634
wss.on('connection', ws => {
@@ -31,7 +39,11 @@ export async function createConsoleLogServer(host: string, port: number): Promis
3139
data = data.toString();
3240
msg = JSON.parse(data);
3341
} catch (e) {
34-
process.stderr.write(`Error parsing JSON message from client: "${data}" ${red(e.stack ? e.stack : e)}\n`);
42+
process.stderr.write(
43+
`Error parsing JSON message from client: "${data}" ${red(
44+
e.stack ? e.stack : e,
45+
)}\n`,
46+
);
3547
return;
3648
}
3749

@@ -53,9 +65,13 @@ export async function createConsoleLogServer(host: string, port: number): Promis
5365
}
5466

5567
// pretty print objects and arrays (no newlines for arrays)
56-
msg.data = msg.data.map(d => JSON.stringify(d, undefined, d && d.length ? '' : ' '));
68+
msg.data = msg.data.map(d =>
69+
JSON.stringify(d, undefined, d?.length ? '' : ' '),
70+
);
5771
if (status) {
58-
process.stdout.write(`[${status('console.' + msg.type)}]: ${msg.data.join(' ')}\n`);
72+
process.stdout.write(
73+
`[${status('console.' + msg.type)}]: ${msg.data.join(' ')}\n`,
74+
);
5975
} else {
6076
process.stdout.write(`[console]: ${msg.data.join(' ')}\n`);
6177
}
@@ -64,13 +80,19 @@ export async function createConsoleLogServer(host: string, port: number): Promis
6480

6581
ws.on('error', (err: NodeJS.ErrnoException) => {
6682
if (err && err.code !== 'ECONNRESET') {
67-
process.stderr.write(`There was an error with the logging stream: ${JSON.stringify(err)}\n`);
83+
process.stderr.write(
84+
`There was an error with the logging stream: ${JSON.stringify(
85+
err,
86+
)}\n`,
87+
);
6888
}
6989
});
7090
});
7191

7292
wss.on('error', (err: NodeJS.ErrnoException) => {
73-
process.stderr.write(`There was an error with the logging websocket: ${JSON.stringify(err)}\n`);
93+
process.stderr.write(
94+
`There was an error with the logging websocket: ${JSON.stringify(err)}\n`,
95+
);
7496
});
7597

7698
return wss;

builders/utils/append-scripts.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
import { load } from 'cheerio';
22

3-
import { GlobalScriptsByBundleName } from '.';
3+
import type { GlobalScriptsByBundleName } from '.';
44

5-
export function augmentIndexHtml(indexString: string, scripts: GlobalScriptsByBundleName[]) {
5+
export function augmentIndexHtml(
6+
indexString: string,
7+
scripts: GlobalScriptsByBundleName[],
8+
): string {
69
const $ = load(indexString);
710
for (const script of scripts) {
811
$('html').append(`<script src="${script.bundleName}.js"></script>`);

0 commit comments

Comments
 (0)