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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
node_modules/

# Build and temporary files
.wireit/
bin/
dist/
/.tmp/
Expand Down
1,069 changes: 603 additions & 466 deletions package-lock.json

Large diffs are not rendered by default.

66 changes: 57 additions & 9 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,62 @@
"node": ">=20.1.0"
},
"scripts": {
"build": "npm run build:bin && npm run build:exports",
"build:bin": "rm -rf ./dist && rolldown --config rolldown.config.ts",
"build:exports": "tsup",
"watch": "npm run watch:bin & npm run watch:exports",
"watch:bin": "rolldown --config rolldown.config.ts --watch",
"watch:exports": "tsup --watch",
"build": "wireit",
"build:bin": "wireit",
"build:exports": "wireit",
"dev": "npm run build --watch",
"dev:bin": "npm run build:bin --watch",
"dev:exports": "npm run build:exports --watch",
"lint": "eslint --max-warnings 0",
"lint:fix": "prettier \"./src/**/*.ts\" --write",
"preversion": "npm run lint",
"typecheck": "wireit",
"version": "npm run build"
},
"wireit": {
"build": {
"dependencies": [
"build:bin",
"build:exports"
]
},
"build:bin": {
"command": "rolldown --config rolldown.config.ts",
"clean": true,
"files": [
"src/**/*.ts",
"rolldown.config.ts"
],
"output": [
"bin/"
],
"dependencies": [
"typecheck"
]
},
"build:exports": {
"command": "tsup",
"clean": true,
"files": [
"src/**/*.ts",
"tsconfig.json",
"tsup.config.ts"
],
"output": [
"dist/"
],
"dependencies": [
"typecheck"
]
},
"typecheck": {
"command": "tsc --noEmit",
"files": [
"src/**/*.ts",
"tsconfig.json"
Comment thread
GeekyEggo marked this conversation as resolved.
]
}
},
"prettier": "@elgato/prettier-config",
"repository": {
"type": "git",
Expand Down Expand Up @@ -70,17 +115,20 @@
"tar": "^7.5.3"
},
"devDependencies": {
"@elgato/eslint-config": "^0.1.0",
"@elgato/prettier-config": "^0.2.4",
"@elgato/eslint-config": "^0.3.2",
"@elgato/prettier-config": "^0.3.3",
"@tsconfig/node20": "^20.1.4",
"@types/ejs": "^3.1.5",
"@types/inquirer": "^9.0.7",
"@types/lodash": "^4.17.14",
"@types/node": "^22.10.7",
"@types/semver": "^7.5.8",
"eslint": "^9.39.4",
"prettier": "^3.8.1",
"rolldown": "1.0.0-rc.8",
"tslib": "^2.8.1",
"tsup": "^8.5.1",
"typescript": "^5.7.3"
"typescript": "^5.7.3",
"wireit": "^0.14.12"
}
}
4 changes: 2 additions & 2 deletions rolldown.config.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { defineConfig } from "rolldown";

const isWatching = !!process.env.ROLLUP_WATCH;
const isWatching = !!(process.env.npm_config_watch || process.env.ROLLUP_WATCH);

const banner = `#!/usr/bin/env node

/**!
* @author Elgato
* @module elgato/streamdeck
* @module elgato/cli
* @license MIT
* @copyright Copyright (c) Corsair Memory Inc.
*/`;
Expand Down
2 changes: 1 addition & 1 deletion src/commands/restart.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { runUrl } from "../common/runner";
import { isPluginInstalled, isStreamDeckRunning } from "../stream-deck";

/**
* Restarts the first plugin that matches the given {@link RestartOptions.uuid}.
* Restarts the first plugin that matches the given UUID.
*/
export const restart = command<RestartOptions>(
async ({ uuid, noStart }, output) => {
Expand Down
2 changes: 1 addition & 1 deletion src/commands/stop.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { runUrl } from "../common/runner";
import { isPluginInstalled, isStreamDeckRunning } from "../stream-deck";

/**
* Stops the first plugin that matches the given {@link StopOptions.uuid}.
* Stops the first plugin that matches the given UUID.
*/
export const stop = command<StopOptions>(async ({ uuid }, output) => {
output.spin(`Stopping ${uuid}`);
Expand Down
3 changes: 2 additions & 1 deletion src/common/command.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ import { createConsole, createQuietConsole, StdOut } from "./stdout";

// eslint-disable-next-line jsdoc/require-param
/**
* Wraps a command delegate; when invoked all options are provided, and the output and logger are constructed based on {@link GlobalOptions.quiet} global option.
* Wraps a command delegate; when invoked all options are provided, and the output and logger are constructed
* based on whether the command should be quiet.
* @param fn The command function to execute.
* @param defaultOptions Fallback options supplied to the command when optional-options are not specified by the caller.
* @returns The command.
Expand Down
3 changes: 2 additions & 1 deletion src/common/file-copier.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@ class FileCopier {
constructor(private readonly options: Required<Options>) {}

/**
* Copies the {@link path}, relative to the {@link FileOrDirectoryPath.source}, renders all templates, and outputs the contents to the {@link path} relative to the {@link FileOrDirectoryPath.dest}.
* Copies the {@link path} relative to the source, renders all templates, and outputs the contents
* to the {@link path} relative to the destination.
* @param path The relative path to render and copy.
* @param destination Optional path, relative destination, whereby the items will be copied to.
*/
Expand Down
2 changes: 1 addition & 1 deletion src/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ type DependencyConfig = {
mode: "dev" | "prod";

/**
* Local path or npm version of the dependency to be used when {@link DependencyConfig.mode} is `dev`.
* Local path or npm version of the dependency to be used when `mode` is `dev`.
*/
version: string;
};
Expand Down
2 changes: 1 addition & 1 deletion src/validation/plugin/plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ export type LayoutFile = LocationRef<JsonLocation> & {
*/
export type PluginContext = {
/**
* Gets a value indicating whether the {@link PluginContext.id} is valid.
* Gets a value indicating whether the `id` is valid.
*/
readonly hasValidId: boolean;

Expand Down
37 changes: 19 additions & 18 deletions tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
{
"extends": "@tsconfig/node20/tsconfig.json",
"compilerOptions": {
"customConditions": [
"node"
],
"module": "ES2022",
"moduleResolution": "Bundler"
},
"include": [
"src",
"rolldown.config.ts"
],
"exclude": [
"bin",
"node_modules",
"template"
]
}
"extends": "@tsconfig/node20/tsconfig.json",
"compilerOptions": {
"customConditions": [
"node"
],
"module": "ES2022",
"moduleResolution": "Bundler",
"types": ["node"]
},
"include": [
"src",
"rolldown.config.ts"
],
"exclude": [
"bin",
"node_modules",
"template"
]
}
2 changes: 1 addition & 1 deletion tsup.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { defineConfig } from "tsup";
const banner = {
js: `/**!
* @author Elgato
* @module elgato/streamdeck
* @module elgato/cli
* @license MIT
* @copyright Copyright (c) Corsair Memory Inc.
*/`,
Expand Down
17 changes: 0 additions & 17 deletions vs.code-workspace

This file was deleted.

Loading