Skip to content

Commit

Permalink
refactor: make reader and logger optional in createWorkspace()
Browse files Browse the repository at this point in the history
This also makes the default log level "warn" instead of "debug".
  • Loading branch information
fwouts committed Aug 27, 2023
1 parent cba62ba commit 0555164
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 24 deletions.
1 change: 0 additions & 1 deletion chromeless/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
"@previewjs/vfs": "^2.0.16",
"express": "^4.18.2",
"pino": "^8.15.0",
"pino-pretty": "^10.2.0",
"playwright": "^1.37.1",
"typescript": "^5.2.2"
},
Expand Down
14 changes: 2 additions & 12 deletions chromeless/src/workspace.ts
Original file line number Diff line number Diff line change
@@ -1,28 +1,18 @@
import type { FrameworkPluginFactory, Workspace } from "@previewjs/core";
import { createWorkspace } from "@previewjs/core";
import type { Reader } from "@previewjs/vfs";
import { createFileSystemReader } from "@previewjs/vfs";
import express from "express";
import path from "path";
import type { Logger } from "pino";
import createLogger from "pino";
import prettyLogger from "pino-pretty";
import type { Page } from "playwright";
import url from "url";
import { startPreview } from "./preview";

export async function createChromelessWorkspace({
rootDir,
frameworkPlugins,
reader = createFileSystemReader(),
logger = createLogger(
{
...(process.env["PREVIEWJS_LOG_LEVEL"]
? { level: process.env["PREVIEWJS_LOG_LEVEL"].toLowerCase() }
: {}),
},
prettyLogger({ colorize: true, destination: process.stdout })
),
reader,
logger,
}: {
rootDir: string;
frameworkPlugins: FrameworkPluginFactory[];
Expand Down
1 change: 1 addition & 0 deletions core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
"html-escaper": "^3.0.3",
"http-terminator": "^3.2.0",
"pino": "^8.15.0",
"pino-pretty": "^10.2.0",
"rollup-plugin-friendly-type-imports": "^1.0.3",
"ts-node": "^10.9.1",
"tsconfig-paths": "^4.2.0",
Expand Down
15 changes: 10 additions & 5 deletions core/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,14 @@ import type {
ValueType,
} from "@previewjs/type-analyzer";
import { UNKNOWN_TYPE } from "@previewjs/type-analyzer";
import type { Reader } from "@previewjs/vfs";
import { createFileSystemReader, type Reader } from "@previewjs/vfs";
import express from "express";
import fs from "fs-extra";
import { createRequire } from "module";
import path from "path";
import type { Logger } from "pino";
import createLogger from "pino";
import prettyLogger from "pino-pretty";
import { crawlFiles } from "./crawl-files";
import { getFreePort } from "./get-free-port";
import type { FrameworkPluginFactory } from "./plugins/framework";
Expand Down Expand Up @@ -39,15 +41,18 @@ process.on("unhandledRejection", (e) => {

export async function createWorkspace({
rootDir,
reader,
frameworkPlugins,
logger,
logger = createLogger(
{ level: process.env["PREVIEWJS_LOG_LEVEL"]?.toLowerCase() || "warn" },
prettyLogger({ colorize: true })
),
reader = createFileSystemReader(),
onServerStart = () => Promise.resolve({}),
}: {
rootDir: string;
frameworkPlugins: FrameworkPluginFactory[];
logger: Logger;
reader: Reader;
logger?: Logger;
reader?: Reader;
onServerStart?: OnServerStart;
}): Promise<Workspace | null> {
const frameworkPlugin = await setupFrameworkPlugin({
Expand Down
12 changes: 6 additions & 6 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 0555164

Please sign in to comment.