Skip to content

Commit 2bf99f5

Browse files
committed
Update api types
1 parent 1cc579f commit 2bf99f5

6 files changed

Lines changed: 113 additions & 89 deletions

File tree

bun.lock

Lines changed: 74 additions & 52 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "openworkers-dash",
3-
"version": "1.4.3",
3+
"version": "1.4.4",
44
"license": "MIT",
55
"scripts": {
66
"ng": "ng",
@@ -12,46 +12,46 @@
1212
"test": "echo \"Error: no test specified\" && exit 1",
1313
"format": "bun x prettier --write .",
1414
"check": "tsc --noEmit --project tsconfig.app.json",
15-
"compile:worker": "bun build worker.ts --outfile ./dist/openworkers/worker.js --format esm --target browser",
16-
"predeploy:dev": "adapter-static ./dist/browser -o ./dist/openworkers && bun compile:worker",
17-
"deploy:dev": "ow dev workers upload dash-preview ./dist/openworkers",
18-
"predeploy:main": "adapter-static ./dist/browser -o ./dist/openworkers && bun compile:worker",
19-
"deploy:main": "ow main workers upload openworkers-dash ./dist/openworkers",
15+
"compile:worker": "bun build worker.ts --outfile ./dist/openworkers/_worker.js --format esm --target browser",
16+
"deploy:prepare": "ng build && adapter-static ./dist/browser -o ./dist/openworkers && bun compile:worker",
17+
"deploy:dev": "bun deploy:prepare && ow dev workers upload openworkers-dash ./dist/openworkers",
18+
"deploy:local": "bun deploy:prepare && ow local workers upload openworkers-dash ./dist/openworkers",
19+
"deploy:main": "bun deploy:prepare && ow main workers upload openworkers-dash ./dist/openworkers",
2020
"clean": "rimraf dist node_modules .angular"
2121
},
2222
"private": true,
2323
"dependencies": {
24-
"@angular/animations": "^21.1.1",
25-
"@angular/common": "^21.1.1",
26-
"@angular/compiler": "^21.1.1",
27-
"@angular/core": "^21.1.1",
28-
"@angular/forms": "^21.1.1",
29-
"@angular/platform-browser": "^21.1.1",
30-
"@angular/platform-browser-dynamic": "^21.1.1",
31-
"@angular/router": "^21.1.1",
24+
"@angular/animations": "^21.1.4",
25+
"@angular/common": "^21.1.4",
26+
"@angular/compiler": "^21.1.4",
27+
"@angular/core": "^21.1.4",
28+
"@angular/forms": "^21.1.4",
29+
"@angular/platform-browser": "^21.1.4",
30+
"@angular/platform-browser-dynamic": "^21.1.4",
31+
"@angular/router": "^21.1.4",
3232
"@materia-ui/ngx-monaco-editor": "^6.0.0",
33-
"@ng-icons/core": "^33.0.0",
34-
"@ng-icons/heroicons": "^33.0.0",
33+
"@ng-icons/core": "^33.1.0",
34+
"@ng-icons/heroicons": "^33.1.0",
35+
"@openworkers/adapter-static": "^0.1.6",
3536
"@openworkers/croner-wasm": "^0.3.1",
36-
"dexie": "^4.2.1",
37-
"marked": "^17.0.1",
37+
"dexie": "^4.3.0",
38+
"marked": "^17.0.2",
3839
"monaco-editor": "0.55.1",
3940
"rxjs": "^7.8.2",
4041
"tslib": "^2.8.1"
4142
},
4243
"devDependencies": {
43-
"@angular/build": "^21.1.1",
44-
"@angular/cli": "~21.1.1",
45-
"@angular/compiler-cli": "^21.1.1",
46-
"@openworkers/adapter-static": "^0.1.2",
47-
"@openworkers/api-types": "^1.4.7",
44+
"@angular/build": "^21.1.4",
45+
"@angular/cli": "~21.1.4",
46+
"@angular/compiler-cli": "^21.1.4",
47+
"@openworkers/api-types": "^1.5.4",
4848
"@openworkers/workers-types": "^0.1.9",
4949
"@tailwindcss/postcss": "4.1.17",
5050
"@types/jasmine": "6.0.0",
5151
"ansi_up": "^6.0.6",
52-
"autoprefixer": "^10.4.23",
52+
"autoprefixer": "^10.4.24",
5353
"postcss": "^8.5.6",
54-
"rimraf": "^6.1.2",
54+
"rimraf": "^6.1.3",
5555
"tailwindcss": "4.1.17",
5656
"typescript": "5.9.3"
5757
}

src/app/modules/worker/pages/worker-edit/worker-edit.page.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ const EDITOR_OPTIONS: MonacoEditorConstructionOptions = {
4747
})
4848
export default class WorkerEditPage implements OnInit, OnDestroy {
4949
private subscriptions: Subscription[] = [];
50-
public readonly worker: Resolved<IWorker>;
51-
public readonly worker$: Observable<IWorker>;
50+
public readonly worker: Resolved<IWorker & { name: string }>;
51+
public readonly worker$: Observable<IWorker & { name: string }>;
5252
public readonly workerUrl: string;
5353
public readonly refreshPreview$$: Subject<void>;
5454
public readonly refreshPreview$: Observable<string>;
@@ -77,7 +77,7 @@ export default class WorkerEditPage implements OnInit, OnDestroy {
7777
themeService: ThemeService,
7878
route: ActivatedRoute
7979
) {
80-
this.worker = route.snapshot.data['worker'] as Resolved<IWorker>;
80+
this.worker = route.snapshot.data['worker'] as Resolved<IWorker & { name: string }>;
8181

8282
console.log('WorkerEditPage worker', this.worker);
8383

src/app/modules/worker/worker-root.component.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,17 +18,17 @@ import { ResourceRootComponent } from '~/app/shared/resource-root/resource-root.
1818
imports: [ResourceRootComponent]
1919
})
2020
export class WorkerRootComponent {
21-
public readonly worker: IWorker;
21+
public readonly worker: IWorker & { name: string };
2222

2323
constructor(
2424
route: ActivatedRoute,
2525
private workers: WorkersService,
2626
private router: Router
2727
) {
28-
this.worker = route.snapshot.data['worker'] as IWorker;
28+
this.worker = route.snapshot.data['worker'] as IWorker & { name: string };
2929
}
3030

31-
public async update(update: Partial<Pick<IWorker, 'name' | 'desc'>>) {
31+
public async update(update: Partial<Pick<IWorker & { name: string }, 'name' | 'desc'>>) {
3232
const worker = await firstValueFrom(this.workers.update({ id: this.worker.id, ...update }));
3333
Object.assign(this.worker, worker);
3434
}

src/app/services/workers.service.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,13 @@ import { first, map, mergeMap } from 'rxjs';
55
import type { IWorker, IWorkerCreateInput, IWorkerUpdateInput } from '@openworkers/api-types';
66
import { ResourceService } from './resource.service';
77

8+
type IWorkerWithName = IWorker & { name: string };
9+
810
// Frontend-specific type that includes id for cache management
911
type WorkerUpdateInput = IWorkerUpdateInput & { id: string };
1012

1113
@Injectable({ providedIn: 'root' })
12-
export class WorkersService extends ResourceService<IWorker, IWorkerCreateInput, WorkerUpdateInput> {
14+
export class WorkersService extends ResourceService<IWorkerWithName, IWorkerCreateInput, WorkerUpdateInput> {
1315
constructor(http: HttpClient) {
1416
super(http, 'workers');
1517
}
@@ -18,7 +20,7 @@ export class WorkersService extends ResourceService<IWorker, IWorkerCreateInput,
1820
* Fetch worker with script included (for editor page).
1921
*/
2022
findByIdWithScript(id: string) {
21-
return this.http.get<IWorker>(`/api/v1/workers/${id}`, { params: { script: 'true' } }).pipe(
23+
return this.http.get<IWorkerWithName>(`/api/v1/workers/${id}`, { params: { script: 'true' } }).pipe(
2224
map((data) => this.cacheAndWatch(data)),
2325
mergeMap((data) => data.asObservable())
2426
);
@@ -38,21 +40,21 @@ export class WorkersService extends ResourceService<IWorker, IWorkerCreateInput,
3840
}
3941

4042
createCron(workerId: string, value: string) {
41-
return this.http.post<IWorker>(`/api/v1/workers/${workerId}/crons`, { expression: value }).pipe(
43+
return this.http.post<IWorkerWithName>(`/api/v1/workers/${workerId}/crons`, { expression: value }).pipe(
4244
map((data) => this.cacheAndWatch(data)),
4345
mergeMap((worker) => worker.asObservable())
4446
);
4547
}
4648

4749
updateCron(id: string, value: string) {
48-
return this.http.patch<IWorker>(`/api/v1/crons/${id}`, { expression: value }).pipe(
50+
return this.http.patch<IWorkerWithName>(`/api/v1/crons/${id}`, { expression: value }).pipe(
4951
map((data) => this.cacheAndWatch(data)),
5052
mergeMap((worker) => worker.asObservable())
5153
);
5254
}
5355

5456
deleteCron(id: string) {
55-
return this.http.delete<IWorker>(`/api/v1/crons/${id}`).pipe(
57+
return this.http.delete<IWorkerWithName>(`/api/v1/crons/${id}`).pipe(
5658
map((data) => this.cacheAndWatch(data)),
5759
mergeMap((worker) => worker.asObservable())
5860
);

src/app/shared/key-value/key-value.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ export class KeyValueComponent implements OnChanges {
291291
name = this.databases.find((db) => db.id === value)?.name;
292292
break;
293293
case 'worker':
294-
name = this.workers.find((w) => w.id === value)?.name;
294+
name = this.workers.find((w) => w.id === value)?.name!;
295295
break;
296296
}
297297

0 commit comments

Comments
 (0)