Skip to content

Commit eb60438

Browse files
committed
feat: switch to esm
1 parent f4ab20a commit eb60438

File tree

18 files changed

+6113
-3047
lines changed

18 files changed

+6113
-3047
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@ node_modules
55
*.vsix
66
.task
77
test-workspace/.vscode
8+
.yarn

.yarnrc.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
nodeLinker: node-modules

package.json

Lines changed: 29 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,14 @@
2727
"go-task",
2828
"taskfile"
2929
],
30+
"type": "module",
3031
"engines": {
31-
"vscode": "^1.76.0"
32+
"vscode": "^1.100.0",
33+
"node": ">=22"
34+
},
35+
"vsce": {
36+
"dependencies": false,
37+
"useYarn": false
3238
},
3339
"categories": [
3440
"Other"
@@ -344,38 +350,39 @@
344350
}
345351
},
346352
"scripts": {
347-
"bundle": "esbuild ./src/extension.ts --bundle --outfile=out/extension.js --external:vscode --format=cjs --platform=node --minify",
353+
"bundle": "esbuild ./src/extension.ts --bundle --outfile=out/extension.js --external:vscode --format=esm --platform=node --minify",
348354
"compile": "tsc -p ./",
349355
"watch": "tsc -watch -p ./",
350356
"pretest": "yarn run compile && yarn run lint",
351357
"lint": "eslint src --ext ts",
352358
"test": "vscode-test",
353-
"package": "vsce package --yarn",
354-
"publish:vsce": "vsce publish --yarn",
355-
"publish:ovsx": "ovsx publish --yarn",
359+
"package": "vsce package",
360+
"publish:vsce": "vsce publish",
361+
"publish:ovsx": "ovsx publish",
356362
"vscode:prepublish": "yarn run bundle"
357363
},
358364
"devDependencies": {
359365
"@types/glob": "8.1.0",
360-
"@types/mocha": "10.0.6",
361-
"@types/node": "20.x",
366+
"@types/mocha": "10.0.10",
367+
"@types/node": "24.3.0",
368+
"@types/semver": "^7.7.0",
362369
"@types/strip-ansi": "3.0.0",
363-
"@types/vscode": "1.76.0",
364-
"@typescript-eslint/eslint-plugin": "7.5.0",
365-
"@typescript-eslint/parser": "7.5.0",
366-
"@vscode/test-cli": "^0.0.8",
367-
"@vscode/test-electron": "2.3.9",
368-
"@vscode/vsce": "2.24.0",
369-
"esbuild": "0.20.2",
370-
"eslint": "8.57.0",
371-
"mocha": "10.4.0",
372-
"ovsx": "0.9.0",
373-
"typescript": "5.4.4"
370+
"@types/vscode": "1.100.0",
371+
"@typescript-eslint/eslint-plugin": "8.40.0",
372+
"@typescript-eslint/parser": "8.40.0",
373+
"@vscode/test-cli": "0.0.11",
374+
"@vscode/test-electron": "2.5.2",
375+
"@vscode/vsce": "3.6.0",
376+
"esbuild": "0.25.9",
377+
"eslint": "9.33.0",
378+
"mocha": "11.7.1",
379+
"ovsx": "0.10.5",
380+
"typescript": "5.9.2"
374381
},
375382
"dependencies": {
376-
"@octokit/types": "13.1.0",
377-
"octokit": "3.2.0",
378-
"semver": "7.6.0",
379-
"strip-ansi": "6.0.1"
383+
"@octokit/types": "14.1.0",
384+
"octokit": "5.0.3",
385+
"semver": "7.7.2",
386+
"strip-ansi": "7.1.0"
380387
}
381388
}

src/elements/activityBar.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import * as vscode from 'vscode';
2-
import * as providers from '../providers';
3-
import * as models from '../models';
2+
import { TaskTreeDataProvider } from '../providers/taskTreeDataProvider.js';
3+
import { Taskfile } from '../models/taskfile.js';
44

55
export class ActivityBar {
6-
private _provider: providers.TaskTreeDataProvider;
6+
private _provider: TaskTreeDataProvider;
77

88
constructor() {
99
// Create the data provider
10-
this._provider = new providers.TaskTreeDataProvider();
10+
this._provider = new TaskTreeDataProvider();
1111

1212
// Register the tree view with its data provider
1313
vscode.window.createTreeView('vscode-task.tasks', {
@@ -21,7 +21,7 @@ export class ActivityBar {
2121
this._provider.refresh();
2222
}
2323

24-
public refresh(taskfiles?: models.Taskfile[]) {
24+
public refresh(taskfiles?: Taskfile[]) {
2525
this._provider.refresh(taskfiles);
2626
}
2727
}

src/elements/index.ts

Lines changed: 0 additions & 3 deletions
This file was deleted.

src/elements/quickPickItem.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
import * as vscode from 'vscode';
2-
import * as models from '../models';
2+
import { Taskfile, Task } from '../models/taskfile.js';
33

44
export class QuickPickTaskItem implements vscode.QuickPickItem {
5-
constructor(taskfile: models.Taskfile, task: models.Task) {
5+
constructor(taskfile: Taskfile, task: Task) {
66
this.taskfile = taskfile;
77
this.task = task;
88
this.label = task.name;
99
this.description = task.desc;
1010
this.kind = vscode.QuickPickItemKind.Default;
1111
}
12-
taskfile: models.Taskfile;
13-
task: models.Task;
12+
taskfile: Taskfile;
13+
task: Task;
1414
label: string;
1515
description: string;
1616
kind: vscode.QuickPickItemKind;
1717
}
1818

1919
export class QuickPickTaskSeparator implements vscode.QuickPickItem {
20-
constructor(taskfile: models.Taskfile) {
20+
constructor(taskfile: Taskfile) {
2121
this.label = taskfile.location;
2222
this.kind = vscode.QuickPickItemKind.Separator;
2323
}

src/elements/treeItem.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import * as vscode from 'vscode';
2-
import * as models from '../models';
2+
import { Task } from '../models/taskfile.js';
33

44
export type TreeItem = WorkspaceTreeItem | NamespaceTreeItem | TaskTreeItem;
55

66
export class WorkspaceTreeItem extends vscode.TreeItem {
77
constructor(
88
readonly label: string,
99
readonly workspace: string,
10-
readonly tasks: models.Task[],
10+
readonly tasks: Task[],
1111
readonly collapsibleState: vscode.TreeItemCollapsibleState,
1212
readonly command?: vscode.Command
1313
) {
@@ -23,7 +23,7 @@ export class NamespaceTreeItem extends vscode.TreeItem {
2323
readonly label: string,
2424
readonly workspace: string,
2525
readonly namespaceMap: any,
26-
readonly tasks: models.Task[],
26+
readonly tasks: Task[],
2727
readonly collapsibleState: vscode.TreeItemCollapsibleState,
2828
readonly command?: vscode.Command
2929
) {
@@ -37,7 +37,7 @@ export class TaskTreeItem extends vscode.TreeItem {
3737
constructor(
3838
readonly label: string,
3939
readonly workspace: string,
40-
readonly task: models.Task,
40+
readonly task: Task,
4141
readonly collapsibleState: vscode.TreeItemCollapsibleState,
4242
readonly command?: vscode.Command
4343
) {

src/extension.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import * as vscode from 'vscode';
2-
import { log } from './utils/log';
3-
import { TaskExtension } from './task';
2+
import { log } from './utils/log.js';
3+
import { TaskExtension } from './task.js';
44

55
export function activate(context: vscode.ExtensionContext) {
66
log.info("Extension activated");

src/models/index.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

src/providers/index.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)