Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/verify-node.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,8 @@ jobs:

- name: Test
run: npm run test:node
env:
NODE_OPTIONS: ${{ (matrix.node-version != '18' && matrix.node-version != '20') && '--no-experimental-strip-types' || '' }}

verify-windows:
timeout-minutes: 30
Expand Down
6 changes: 3 additions & 3 deletions packages/dev-server-core/src/plugins/Plugin.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { FSWatcher } from 'chokidar';
import Koa, { Context } from 'koa';
import { Server } from 'net';
import { type Server } from 'net';

import { DevServerCoreConfig } from '../server/DevServerCoreConfig';
import { Logger } from '../logger/Logger';
import type { DevServerCoreConfig } from '../server/DevServerCoreConfig';
import type { Logger } from '../logger/Logger';
import { WebSocketsManager } from '../web-sockets/WebSocketsManager';

export type ServeResult =
Expand Down
4 changes: 2 additions & 2 deletions packages/dev-server-core/src/server/createServer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ import http2Server from 'http2';
import fs from 'fs';
import net, { Server, Socket, ListenOptions } from 'net';

import { DevServerCoreConfig } from './DevServerCoreConfig.js';
import type { DevServerCoreConfig } from './DevServerCoreConfig.js';
import { createMiddleware } from './createMiddleware.js';
import { Logger } from '../logger/Logger.js';
import type { Logger } from '../logger/Logger.js';
import { addPlugins } from './addPlugins.js';

/**
Expand Down
2 changes: 1 addition & 1 deletion packages/dev-server-rollup/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
export { RollupNodeResolveOptions, nodeResolve } from '@rollup/plugin-node-resolve';
export { type RollupNodeResolveOptions, nodeResolve } from '@rollup/plugin-node-resolve';
export { fromRollup } from './fromRollup.js';
export { rollupAdapter } from './rollupAdapter.js';
export { rollupBundlePlugin } from './rollupBundlePlugin.js';
4 changes: 2 additions & 2 deletions packages/dev-server/src/config/DevServerConfig.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { DevServerCoreConfig } from '@web/dev-server-core';
import { RollupNodeResolveOptions } from '@web/dev-server-rollup';
import { type DevServerCoreConfig } from '@web/dev-server-core';
import { type RollupNodeResolveOptions } from '@web/dev-server-rollup';

export interface DevServerConfig extends DevServerCoreConfig {
/**
Expand Down
2 changes: 1 addition & 1 deletion packages/dev-server/src/config/mergeConfigs.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { DevServerConfig } from './DevServerConfig.js';
import { type DevServerConfig } from './DevServerConfig.js';

const arrayKeys = ['plugins', 'middleware'];

Expand Down
4 changes: 2 additions & 2 deletions packages/dev-server/src/config/parseConfig.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { getPortPromise } from 'portfinder';
import path from 'path';

import { DevServerCliArgs } from './readCliArgs.js';
import { type DevServerCliArgs } from './readCliArgs.js';
import { mergeConfigs } from './mergeConfigs.js';
import { DevServerConfig } from './DevServerConfig.js';
import { type DevServerConfig } from './DevServerConfig.js';
import { esbuildPlugin } from '../plugins/esbuildPlugin.js';
import { watchPlugin } from '../plugins/watchPlugin.js';
import { nodeResolvePlugin } from '../plugins/nodeResolvePlugin.js';
Expand Down
2 changes: 1 addition & 1 deletion packages/dev-server/src/config/readCliArgs.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import commandLineArgs from 'command-line-args';
import commandLineUsage, { OptionDefinition } from 'command-line-usage';
import camelCase from 'camelcase';
import { DevServerConfig } from './DevServerConfig.js';
import { type DevServerConfig } from './DevServerConfig.js';

export interface DevServerCliArgs
extends Partial<
Expand Down
2 changes: 1 addition & 1 deletion packages/dev-server/src/logger/DevServerLogger.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Logger, PluginSyntaxError } from '@web/dev-server-core';
import { type Logger, PluginSyntaxError } from '@web/dev-server-core';
import { codeFrameColumns } from '@babel/code-frame';
import path from 'path';
import { red, cyan } from 'nanocolors';
Expand Down
2 changes: 1 addition & 1 deletion packages/dev-server/src/logger/createLogger.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Plugin } from '@web/dev-server-core';
import { type Plugin } from '@web/dev-server-core';
import { DevServerLogger } from './DevServerLogger.js';
import { logStartMessage } from './logStartMessage.js';

Expand Down
4 changes: 2 additions & 2 deletions packages/dev-server/src/logger/logStartMessage.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { DevServerConfig } from '../config/DevServerConfig';
import { Logger } from '@web/dev-server-core';
import { type DevServerConfig } from '../config/DevServerConfig';
import { type Logger } from '@web/dev-server-core';
import internalIp from 'internal-ip';
import { bold, cyan, white } from 'nanocolors';

Expand Down
4 changes: 2 additions & 2 deletions packages/dev-server/src/plugins/nodeResolvePlugin.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { nodeResolve, rollupAdapter, RollupNodeResolveOptions } from '@web/dev-server-rollup';
import { Plugin } from '@web/dev-server-core';
import { nodeResolve, rollupAdapter, type RollupNodeResolveOptions } from '@web/dev-server-rollup';
import { type Plugin } from '@web/dev-server-core';
import deepmerge from 'deepmerge';

export function nodeResolvePlugin(
Expand Down
2 changes: 1 addition & 1 deletion packages/dev-server/src/plugins/watchPlugin.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Plugin } from '@web/dev-server-core';
import { type Plugin } from '@web/dev-server-core';
import debounce from 'debounce';

export function watchPlugin(): Plugin {
Expand Down
2 changes: 1 addition & 1 deletion packages/rollup-plugin-html/src/assets/utils.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Document, Element } from 'parse5';
import type { Document, Element } from 'parse5';
import path from 'path';
import picomatch from 'picomatch';
import { findElements, getTagName, getAttribute } from '@web/parse5-utils';
Expand Down
6 changes: 3 additions & 3 deletions packages/rollup-plugin-html/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { rollupPluginHTML, RollupPluginHtml } from './rollupPluginHTML.js';
import { rollupPluginHTML, type RollupPluginHtml } from './rollupPluginHTML.js';

export {
export type {
InputHTMLOptions,
RollupPluginHTMLOptions,
GeneratedBundle,
Expand All @@ -10,5 +10,5 @@ export {
TransformAssetFunction,
} from './RollupPluginHTMLOptions.js';

export { rollupPluginHTML, RollupPluginHtml };
export { rollupPluginHTML, type RollupPluginHtml };
export default rollupPluginHTML;
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Document, serialize } from 'parse5';
import { type Document, serialize } from 'parse5';
import fs from 'fs';
import path from 'path';
import { InputAsset } from '../InputData.js';
import { type InputAsset } from '../InputData.js';
import {
findAssets,
getSourcePaths,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { findElements, getAttribute, getTagName, getTextContent, remove } from '@web/parse5-utils';
import { Document, Attribute } from 'parse5';
import { type Document, type Attribute } from 'parse5';
import path from 'path';
import crypto from 'crypto';
import { resolveAssetFilePath } from '../../assets/utils.js';
import { getAttributes } from '@web/parse5-utils';
import { ScriptModuleTag } from '../../RollupPluginHTMLOptions.js';
import { type ScriptModuleTag } from '../../RollupPluginHTMLOptions.js';

export interface ExtractModulesParams {
document: Document;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Document, Element, ParentNode } from 'parse5';
import type { Document, Element, ParentNode } from 'parse5';
import {
findElement,
findElements,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Document, Element } from 'parse5';
import type { Document, Element } from 'parse5';
import { findElements, getTagName, getAttribute, setAttribute } from '@web/parse5-utils';

function isAbsoluteableNode(node: Element) {
Expand Down
4 changes: 2 additions & 2 deletions packages/rollup-plugin-html/src/output/injectBundles.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Document, Attribute } from 'parse5';
import type { Document, Attribute } from 'parse5';
import { createScript, findElement, getTagName, appendChild } from '@web/parse5-utils';

import { EntrypointBundle } from '../RollupPluginHTMLOptions.js';
import { type EntrypointBundle } from '../RollupPluginHTMLOptions.js';
import { createError } from '../utils.js';

export function createLoadScript(src: string, format: string, attributes?: Attribute[]) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import path from 'path';
import { Document } from 'parse5';
import type { Document } from 'parse5';
import {
findElement,
getTagName,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { getAttribute, setAttribute } from '@web/parse5-utils';
import { Document } from 'parse5';
import type { Document } from 'parse5';
import path from 'path';

import {
Expand All @@ -10,9 +10,9 @@ import {
resolveAssetFilePath,
createAssetPicomatchMatcher,
} from '../assets/utils.js';
import { InputData } from '../input/InputData.js';
import { type InputData } from '../input/InputData.js';
import { createError } from '../utils.js';
import { EmittedAssets } from './emitAssets.js';
import { type EmittedAssets } from './emitAssets.js';
import { toBrowserPath } from './utils.js';

export interface InjectUpdatedAssetPathsArgs {
Expand Down
2 changes: 1 addition & 1 deletion packages/rollup-plugin-polyfills-loader/src/types.d.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { PolyfillsConfig, FileType } from '@web/polyfills-loader';
import { PolyfillsConfig, type FileType } from '@web/polyfills-loader';

export interface OutputConfig {
name: string;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import path from 'path';
import { runTests } from '@web/test-runner-core/test-helpers';
import { chromeLauncher } from '@web/test-runner-chrome';
import { Logger } from '@web/dev-server-core';
import type { Logger } from '@web/dev-server-core';

describe('executeServerCommand', function test() {
this.timeout(20000);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { CoverageMapData } from 'istanbul-lib-coverage';
import { TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig';
import { TestResultError } from '../test-session/TestSession';
import type { CoverageMapData } from 'istanbul-lib-coverage';
import { type TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig';
import { type TestResultError } from '../test-session/TestSession';

export interface SessionResult {
testCoverage?: CoverageMapData;
Expand Down
2 changes: 1 addition & 1 deletion packages/test-runner-core/src/cli/BufferedLogger.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Logger, ErrorWithLocation } from '../logger/Logger';
import { type Logger, type ErrorWithLocation } from '../logger/Logger';

export class BufferedLogger implements Logger {
public buffer: { method: keyof Logger; args?: any[] }[] = [];
Expand Down
8 changes: 4 additions & 4 deletions packages/test-runner-core/src/cli/TestRunnerCli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ import { DynamicTerminal } from './terminal/DynamicTerminal.js';
import { BufferedLogger } from './BufferedLogger.js';
import { getManualDebugMenu } from './getManualDebugMenu.js';
import { ErrorWithLocation } from '../logger/Logger.js';
import { TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js';
import { TestSessionManager } from '../test-session/TestSessionManager.js';
import { type TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js';
import { type TestSessionManager } from '../test-session/TestSessionManager.js';
import { SESSION_STATUS } from '../test-session/TestSessionStatus.js';
import { Logger } from '../logger/Logger.js';
import { type Logger } from '../logger/Logger.js';
import { TestRunner } from '../runner/TestRunner.js';
import { TestCoverage } from '../coverage/getTestCoverage.js';
import { type TestCoverage } from '../coverage/getTestCoverage.js';

export type MenuType = 'none' | 'overview' | 'focus' | 'debug' | 'manual-debug';

Expand Down
2 changes: 1 addition & 1 deletion packages/test-runner-core/src/cli/getManualDebugMenu.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { cyan, gray } from 'nanocolors';
import internalIp from 'internal-ip';

import { TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig';
import { type TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig';

export function getManualDebugMenu(config: TestRunnerCoreConfig): string[] {
const localAddress = `${config.protocol}//${config.hostname}:${config.port}/`;
Expand Down
4 changes: 2 additions & 2 deletions packages/test-runner-core/src/cli/writeCoverageReport.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import reports from 'istanbul-reports';
import libReport from 'istanbul-lib-report';

import { CoverageConfig } from '../config/TestRunnerCoreConfig';
import { TestCoverage } from '../coverage/getTestCoverage';
import { type CoverageConfig } from '../config/TestRunnerCoreConfig';
import { type TestCoverage } from '../coverage/getTestCoverage';

export function writeCoverageReport(testCoverage: TestCoverage, config: CoverageConfig) {
// create a context for report generation
Expand Down
16 changes: 8 additions & 8 deletions packages/test-runner-core/src/config/TestRunnerCoreConfig.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { Middleware } from '@web/dev-server-core';
import { BrowserLauncher } from '../browser-launcher/BrowserLauncher.js';
import { TestFramework } from '../test-framework/TestFramework.js';
import { TestSession } from '../test-session/TestSession.js';
import { Reporter } from '../reporter/Reporter.js';
import { Logger } from '../logger/Logger.js';
import { TestRunnerPlugin } from '../server/TestRunnerPlugin.js';
import { ReportType } from 'istanbul-reports';
import { type Middleware } from '@web/dev-server-core';
import { type BrowserLauncher } from '../browser-launcher/BrowserLauncher.js';
import { type TestFramework } from '../test-framework/TestFramework.js';
import { type TestSession } from '../test-session/TestSession.js';
import { type Reporter } from '../reporter/Reporter.js';
import { type Logger } from '../logger/Logger.js';
import { type TestRunnerPlugin } from '../server/TestRunnerPlugin.js';
import type { ReportType } from 'istanbul-reports';

export interface CoverageThresholdConfig {
statements: number;
Expand Down
4 changes: 2 additions & 2 deletions packages/test-runner-core/src/config/TestRunnerGroupConfig.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { BrowserLauncher } from '../browser-launcher/BrowserLauncher';
import { TestRunnerCoreConfig } from './TestRunnerCoreConfig.js';
import { type BrowserLauncher } from '../browser-launcher/BrowserLauncher';
import { type TestRunnerCoreConfig } from './TestRunnerCoreConfig.js';

export interface TestRunnerGroupConfig {
name: string;
Expand Down
18 changes: 9 additions & 9 deletions packages/test-runner-core/src/coverage/getTestCoverage.ts
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import {
createCoverageMap,
CoverageSummaryData,
CoverageMap,
CoverageMapData,
BranchMapping,
FunctionMapping,
Location,
Range,
type CoverageSummaryData,
type CoverageMap,
type CoverageMapData,
type BranchMapping,
type FunctionMapping,
type Location,
type Range,
} from 'istanbul-lib-coverage';
import { TestSession } from '../test-session/TestSession';
import { CoverageConfig } from '../config/TestRunnerCoreConfig';
import { type TestSession } from '../test-session/TestSession';
import { type CoverageConfig } from '../config/TestRunnerCoreConfig';

export const coverageTypes: (keyof CoverageSummaryData)[] = [
'lines',
Expand Down
12 changes: 6 additions & 6 deletions packages/test-runner-core/src/reporter/Reporter.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { TestSession } from '../test-session/TestSession';
import { TestSessionManager } from '../test-session/TestSessionManager';
import { TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig';
import { TestCoverage } from '../coverage/getTestCoverage';
import { Logger } from '../logger/Logger';
import { BrowserLauncher } from '../browser-launcher/BrowserLauncher';
import { type TestSession } from '../test-session/TestSession';
import { type TestSessionManager } from '../test-session/TestSessionManager';
import { type TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig';
import { type TestCoverage } from '../coverage/getTestCoverage';
import { type Logger } from '../logger/Logger';
import { type BrowserLauncher } from '../browser-launcher/BrowserLauncher';

export interface ReporterArgs {
config: TestRunnerCoreConfig;
Expand Down
10 changes: 5 additions & 5 deletions packages/test-runner-core/src/runner/TestRunner.ts
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
import { TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js';
import { type TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js';
import { createTestSessions } from './createSessionGroups.js';
import { TestSession } from '../test-session/TestSession.js';
import { getTestCoverage, TestCoverage } from '../coverage/getTestCoverage.js';
import { type TestSession } from '../test-session/TestSession.js';
import { getTestCoverage, type TestCoverage } from '../coverage/getTestCoverage.js';
import { TestScheduler } from './TestScheduler.js';
import { TestSessionManager } from '../test-session/TestSessionManager.js';
import { SESSION_STATUS } from '../test-session/TestSessionStatus.js';
import { EventEmitter } from '../utils/EventEmitter.js';
import { createSessionUrl } from './createSessionUrl.js';
import { createDebugSessions } from './createDebugSessions.js';
import { TestRunnerServer } from '../server/TestRunnerServer.js';
import { BrowserLauncher } from '../browser-launcher/BrowserLauncher.js';
import { TestRunnerGroupConfig } from '../config/TestRunnerGroupConfig.js';
import { type BrowserLauncher } from '../browser-launcher/BrowserLauncher.js';
import { type TestRunnerGroupConfig } from '../config/TestRunnerGroupConfig.js';

interface EventMap {
'test-run-started': { testRun: number };
Expand Down
8 changes: 4 additions & 4 deletions packages/test-runner-core/src/runner/TestScheduler.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { createSessionUrl } from './createSessionUrl.js';
import { TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js';
import { TestSessionManager } from '../test-session/TestSessionManager.js';
import { TestSession, TestResultError } from '../test-session/TestSession.js';
import { type TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js';
import { type TestSessionManager } from '../test-session/TestSessionManager.js';
import { type TestSession, type TestResultError } from '../test-session/TestSession.js';
import { SESSION_STATUS } from '../test-session/TestSessionStatus.js';
import { withTimeout } from '../utils/async.js';
import { TestSessionTimeoutHandler } from './TestSessionTimeoutHandler.js';
import { BrowserLauncher } from '../browser-launcher/BrowserLauncher.js';
import { type BrowserLauncher } from '../browser-launcher/BrowserLauncher.js';

export class TestScheduler {
private config: TestRunnerCoreConfig;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js';
import { TestSessionManager } from '../test-session/TestSessionManager.js';
import { TestSession, TestResultError } from '../test-session/TestSession.js';
import { type TestRunnerCoreConfig } from '../config/TestRunnerCoreConfig.js';
import { type TestSessionManager } from '../test-session/TestSessionManager.js';
import { type TestSession, type TestResultError } from '../test-session/TestSession.js';
import { SESSION_STATUS } from '../test-session/TestSessionStatus.js';
import { TestScheduler } from './TestScheduler.js';

Expand Down
4 changes: 2 additions & 2 deletions packages/test-runner-core/src/runner/createDebugSessions.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { nanoid } from 'nanoid';
import { DebugTestSession } from '../test-session/DebugTestSession';
import { TestSession } from '../test-session/TestSession';
import { type DebugTestSession } from '../test-session/DebugTestSession';
import { type TestSession } from '../test-session/TestSession';

export function createDebugSessions(sessions: TestSession[]): DebugTestSession[] {
const debugSessions = [];
Expand Down
Loading
Loading