@proappstore/sdk 1.16.63 → 1.16.64
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/worker.d.ts +105 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.js +76 -0
- package/dist/worker.js.map +1 -0
- package/package.json +5 -1
package/dist/worker.d.ts
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@proappstore/sdk/worker` — write an app worker (ADR-009, #254).
|
|
3
|
+
*
|
|
4
|
+
* // worker/src/app.ts → built to worker/dist/app.js
|
|
5
|
+
* import { defineAppWorker } from '@proappstore/sdk/worker';
|
|
6
|
+
* export default defineAppWorker({
|
|
7
|
+
* async scheduled(event, pas) {
|
|
8
|
+
* const key = await pas.secrets.get('GITHUB_TOKEN');
|
|
9
|
+
* await pas.actions.batch(repos.map((r) => ({ name: 'upsert_repo', params: r })));
|
|
10
|
+
* await pas.log('info', 'synced', { count: repos.length });
|
|
11
|
+
* },
|
|
12
|
+
* });
|
|
13
|
+
*
|
|
14
|
+
* The platform's entry shim has verified the event's signature before this
|
|
15
|
+
* module is even imported, so there is no verification here. Delivery is
|
|
16
|
+
* at-least-once: a handler must be idempotent on `event.id`.
|
|
17
|
+
*
|
|
18
|
+
* Zero dependencies; runs inside the worker sandbox.
|
|
19
|
+
*/
|
|
20
|
+
/** What the platform delivered (ADR-009 §3). */
|
|
21
|
+
export interface AppWorkerEvent {
|
|
22
|
+
/** Idempotency key, stable across retries. */
|
|
23
|
+
id: string;
|
|
24
|
+
type: 'schedule' | 'hook' | 'http';
|
|
25
|
+
name?: string;
|
|
26
|
+
attempt: number;
|
|
27
|
+
issuedAt: number;
|
|
28
|
+
payload: unknown;
|
|
29
|
+
}
|
|
30
|
+
export interface PasClient {
|
|
31
|
+
actions: {
|
|
32
|
+
/** Run a registered action whose `callers` include "worker", as `system:worker`. */
|
|
33
|
+
call(name: string, params?: Record<string, unknown>): Promise<unknown>;
|
|
34
|
+
/** Many invocations in one transaction (≤ 500 statements); counts as one PAS call. */
|
|
35
|
+
batch(calls: {
|
|
36
|
+
name: string;
|
|
37
|
+
params?: Record<string, unknown>;
|
|
38
|
+
}[]): Promise<{
|
|
39
|
+
name: string;
|
|
40
|
+
results: unknown[];
|
|
41
|
+
}[]>;
|
|
42
|
+
};
|
|
43
|
+
secrets: {
|
|
44
|
+
/** An app secret listed in mcp.json `worker.secrets`; null otherwise. */
|
|
45
|
+
get(name: string): Promise<string | null>;
|
|
46
|
+
};
|
|
47
|
+
storage: {
|
|
48
|
+
/** Stored under the app's worker namespace, never a user's files. ≤ 10 MB. */
|
|
49
|
+
put(key: string, body: string | ArrayBuffer | Uint8Array, opts?: {
|
|
50
|
+
contentType?: string;
|
|
51
|
+
}): Promise<{
|
|
52
|
+
key: string;
|
|
53
|
+
size: number;
|
|
54
|
+
}>;
|
|
55
|
+
get(key: string): Promise<{
|
|
56
|
+
body: ArrayBuffer;
|
|
57
|
+
contentType: string;
|
|
58
|
+
} | null>;
|
|
59
|
+
};
|
|
60
|
+
/** Append to the app's logs (category `worker`). Resolves false when the app's log quota is spent. */
|
|
61
|
+
log(level: 'debug' | 'info' | 'warn' | 'error', message: string, fields?: Record<string, unknown>): Promise<boolean>;
|
|
62
|
+
}
|
|
63
|
+
export interface AppWorkerHandlers {
|
|
64
|
+
scheduled?(event: AppWorkerEvent, pas: PasClient): Promise<void> | void;
|
|
65
|
+
webhook?(event: AppWorkerEvent, pas: PasClient): Promise<void> | void;
|
|
66
|
+
}
|
|
67
|
+
/** The module shape the platform shim imports as `app.js`. */
|
|
68
|
+
export interface AppWorkerModule {
|
|
69
|
+
fetch(request: Request, env: AppWorkerEnv, ctx: unknown): Promise<Response>;
|
|
70
|
+
}
|
|
71
|
+
/** The worker's bindings (ADR-009 §2). */
|
|
72
|
+
export interface AppWorkerEnv {
|
|
73
|
+
PAS?: PasBinding;
|
|
74
|
+
PAS_WORKER_TOKEN?: string;
|
|
75
|
+
APP_ID?: string;
|
|
76
|
+
}
|
|
77
|
+
interface CallCtx {
|
|
78
|
+
token: string;
|
|
79
|
+
invocation: string;
|
|
80
|
+
}
|
|
81
|
+
interface PasBinding {
|
|
82
|
+
actions: {
|
|
83
|
+
call(name: string, params: unknown, ctx: CallCtx): Promise<unknown>;
|
|
84
|
+
batch(calls: unknown, ctx: CallCtx): Promise<unknown>;
|
|
85
|
+
};
|
|
86
|
+
secrets: {
|
|
87
|
+
get(name: string, ctx: CallCtx): Promise<string | null>;
|
|
88
|
+
};
|
|
89
|
+
storage: {
|
|
90
|
+
put(key: string, body: unknown, opts: unknown, ctx: CallCtx): Promise<unknown>;
|
|
91
|
+
get(key: string, ctx: CallCtx): Promise<unknown>;
|
|
92
|
+
};
|
|
93
|
+
log(level: string, message: string, fields: unknown, ctx: CallCtx): Promise<boolean>;
|
|
94
|
+
}
|
|
95
|
+
/** A `PasClient` bound to one invocation: every call carries the worker token and the invocation id. */
|
|
96
|
+
export declare function pasClient(env: AppWorkerEnv, event: Pick<AppWorkerEvent, 'id' | 'attempt'>): PasClient;
|
|
97
|
+
/**
|
|
98
|
+
* Dispatch the platform's event envelope to `scheduled` (type `schedule`) or
|
|
99
|
+
* `webhook` (type `hook`). A handler that returns is a success (200); one that
|
|
100
|
+
* throws is a failure (500, recorded on the invocation). Browser routes
|
|
101
|
+
* (type `http`) arrive with #260.
|
|
102
|
+
*/
|
|
103
|
+
export declare function defineAppWorker(handlers: AppWorkerHandlers): AppWorkerModule;
|
|
104
|
+
export {};
|
|
105
|
+
//# sourceMappingURL=worker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"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"}
|
package/dist/worker.js
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@proappstore/sdk/worker` — write an app worker (ADR-009, #254).
|
|
3
|
+
*
|
|
4
|
+
* // worker/src/app.ts → built to worker/dist/app.js
|
|
5
|
+
* import { defineAppWorker } from '@proappstore/sdk/worker';
|
|
6
|
+
* export default defineAppWorker({
|
|
7
|
+
* async scheduled(event, pas) {
|
|
8
|
+
* const key = await pas.secrets.get('GITHUB_TOKEN');
|
|
9
|
+
* await pas.actions.batch(repos.map((r) => ({ name: 'upsert_repo', params: r })));
|
|
10
|
+
* await pas.log('info', 'synced', { count: repos.length });
|
|
11
|
+
* },
|
|
12
|
+
* });
|
|
13
|
+
*
|
|
14
|
+
* The platform's entry shim has verified the event's signature before this
|
|
15
|
+
* module is even imported, so there is no verification here. Delivery is
|
|
16
|
+
* at-least-once: a handler must be idempotent on `event.id`.
|
|
17
|
+
*
|
|
18
|
+
* Zero dependencies; runs inside the worker sandbox.
|
|
19
|
+
*/
|
|
20
|
+
/** A `PasClient` bound to one invocation: every call carries the worker token and the invocation id. */
|
|
21
|
+
export function pasClient(env, event) {
|
|
22
|
+
const pas = env.PAS;
|
|
23
|
+
if (!pas)
|
|
24
|
+
throw new Error('this worker has no PAS binding');
|
|
25
|
+
const ctx = { token: env.PAS_WORKER_TOKEN ?? '', invocation: `${event.id}:${event.attempt}` };
|
|
26
|
+
return {
|
|
27
|
+
actions: {
|
|
28
|
+
call: (name, params) => pas.actions.call(name, params ?? {}, ctx),
|
|
29
|
+
batch: (calls) => pas.actions.batch(calls, ctx),
|
|
30
|
+
},
|
|
31
|
+
secrets: { get: (name) => pas.secrets.get(name, ctx) },
|
|
32
|
+
storage: {
|
|
33
|
+
put: (key, body, opts) => pas.storage.put(key, body, opts ?? {}, ctx),
|
|
34
|
+
get: (key) => pas.storage.get(key, ctx),
|
|
35
|
+
},
|
|
36
|
+
log: (level, message, fields) => pas.log(level, message, fields, ctx),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Dispatch the platform's event envelope to `scheduled` (type `schedule`) or
|
|
41
|
+
* `webhook` (type `hook`). A handler that returns is a success (200); one that
|
|
42
|
+
* throws is a failure (500, recorded on the invocation). Browser routes
|
|
43
|
+
* (type `http`) arrive with #260.
|
|
44
|
+
*/
|
|
45
|
+
export function defineAppWorker(handlers) {
|
|
46
|
+
return {
|
|
47
|
+
async fetch(request, env) {
|
|
48
|
+
let envelope;
|
|
49
|
+
try {
|
|
50
|
+
envelope = await request.json();
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
return new Response('invalid envelope', { status: 400 });
|
|
54
|
+
}
|
|
55
|
+
const event = {
|
|
56
|
+
id: String(envelope.id ?? ''),
|
|
57
|
+
type: envelope.type,
|
|
58
|
+
...(typeof envelope.name === 'string' ? { name: envelope.name } : {}),
|
|
59
|
+
attempt: Number(envelope.attempt ?? 1),
|
|
60
|
+
issuedAt: Number(envelope.issued_at ?? 0),
|
|
61
|
+
payload: envelope.payload,
|
|
62
|
+
};
|
|
63
|
+
const handler = event.type === 'schedule' ? handlers.scheduled : event.type === 'hook' ? handlers.webhook : undefined;
|
|
64
|
+
if (!handler)
|
|
65
|
+
return new Response(`no handler for ${String(event.type)} events`, { status: 501 });
|
|
66
|
+
try {
|
|
67
|
+
await handler(event, pasClient(env, event));
|
|
68
|
+
return Response.json({ ok: true });
|
|
69
|
+
}
|
|
70
|
+
catch (e) {
|
|
71
|
+
return new Response(e instanceof Error ? e.message : String(e), { status: 500 });
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@proappstore/sdk",
|
|
3
|
-
"version": "1.16.
|
|
3
|
+
"version": "1.16.64",
|
|
4
4
|
"description": "Browser SDK for paid apps on proappstore.online — subscriptions, license keys, premium modules.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -23,6 +23,10 @@
|
|
|
23
23
|
"types": "./dist/ui.d.ts",
|
|
24
24
|
"import": "./dist/ui.js"
|
|
25
25
|
},
|
|
26
|
+
"./worker": {
|
|
27
|
+
"types": "./dist/worker.d.ts",
|
|
28
|
+
"import": "./dist/worker.js"
|
|
29
|
+
},
|
|
26
30
|
"./shell.css": "./dist/shell.css"
|
|
27
31
|
},
|
|
28
32
|
"repository": {
|