@derive-to/artifacts 0.6.0 → 0.6.1
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/README.md +6 -7
- package/dist/host/client.d.ts +20 -4
- package/dist/host/client.d.ts.map +1 -1
- package/dist/host/client.js +29 -1
- package/dist/host/client.js.map +1 -1
- package/dist/host/index.d.ts +1 -1
- package/dist/host/index.d.ts.map +1 -1
- package/dist/host/index.js.map +1 -1
- package/dist/protocol/tools.d.ts +4 -0
- package/dist/protocol/tools.d.ts.map +1 -1
- package/dist/protocol/tools.js +5 -1
- package/dist/protocol/tools.js.map +1 -1
- package/dist/runtime/assets.js +1 -1
- package/dist/runtime.global.js +17 -17
- package/dist/server/adapters/kysely/index.d.ts +30 -0
- package/dist/server/adapters/kysely/index.d.ts.map +1 -0
- package/dist/server/adapters/kysely/index.js +31 -0
- package/dist/server/adapters/kysely/index.js.map +1 -0
- package/dist/server/adapters/kysely/schema.d.ts +11 -0
- package/dist/server/adapters/kysely/schema.d.ts.map +1 -0
- package/dist/server/adapters/kysely/schema.js +159 -0
- package/dist/server/adapters/kysely/schema.js.map +1 -0
- package/dist/server/adapters/kysely/sharing.d.ts +5 -0
- package/dist/server/adapters/kysely/sharing.d.ts.map +1 -0
- package/dist/server/adapters/kysely/sharing.js +81 -0
- package/dist/server/adapters/kysely/sharing.js.map +1 -0
- package/dist/server/adapters/kysely/store.d.ts +87 -0
- package/dist/server/adapters/kysely/store.d.ts.map +1 -0
- package/dist/server/adapters/kysely/store.js +328 -0
- package/dist/server/adapters/kysely/store.js.map +1 -0
- package/dist/server/adapters/sqlite/index.d.ts +7 -8
- package/dist/server/adapters/sqlite/index.d.ts.map +1 -1
- package/dist/server/adapters/sqlite/index.js +24 -44
- package/dist/server/adapters/sqlite/index.js.map +1 -1
- package/dist/server/bin.d.ts +3 -0
- package/dist/server/bin.d.ts.map +1 -0
- package/dist/server/bin.js +7 -0
- package/dist/server/bin.js.map +1 -0
- package/dist/server/cli.d.ts +8 -0
- package/dist/server/cli.d.ts.map +1 -0
- package/dist/server/cli.js +103 -0
- package/dist/server/cli.js.map +1 -0
- package/dist/server/kit/tool.d.ts +7 -1
- package/dist/server/kit/tool.d.ts.map +1 -1
- package/dist/server/kit/tool.js +9 -0
- package/dist/server/kit/tool.js.map +1 -1
- package/dist/server/kit.d.ts +1 -1
- package/dist/server/kit.d.ts.map +1 -1
- package/dist/server/kit.js +1 -1
- package/dist/server/kit.js.map +1 -1
- package/dist/server/sharing/store.d.ts +1 -1
- package/package.json +61 -55
- package/dist/server/adapters/sqlite/schema.d.ts +0 -3
- package/dist/server/adapters/sqlite/schema.d.ts.map +0 -1
- package/dist/server/adapters/sqlite/schema.js +0 -69
- package/dist/server/adapters/sqlite/schema.js.map +0 -1
- package/dist/server/adapters/sqlite/sharing.d.ts +0 -6
- package/dist/server/adapters/sqlite/sharing.d.ts.map +0 -1
- package/dist/server/adapters/sqlite/sharing.js +0 -81
- package/dist/server/adapters/sqlite/sharing.js.map +0 -1
- package/dist/server/adapters/sqlite/store.d.ts +0 -6
- package/dist/server/adapters/sqlite/store.d.ts.map +0 -1
- package/dist/server/adapters/sqlite/store.js +0 -130
- package/dist/server/adapters/sqlite/store.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../src/server/kit/tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,OAAO,EACL,KAAK,KAAK,EAEV,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../src/server/kit/tool.ts"],"names":[],"mappings":"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"}
|
package/dist/server/kit/tool.js
CHANGED
|
@@ -5,6 +5,15 @@ import { run } from "../mcp/result.js";
|
|
|
5
5
|
import { describedForMcp } from "../mcp/schema.js";
|
|
6
6
|
/** Identity: the type is the documentation. */
|
|
7
7
|
export const defineTool = (def) => def;
|
|
8
|
+
/** A tool built from a shared `ToolSpec`: its name and input come from the spec, and every
|
|
9
|
+
* answer is checked against the spec's output before it leaves, so the typed client never
|
|
10
|
+
* receives a shape it was not promised. */
|
|
11
|
+
export const implementTool = (spec, def) => ({
|
|
12
|
+
...def,
|
|
13
|
+
name: spec.name,
|
|
14
|
+
input: spec.input,
|
|
15
|
+
run: async (args, scope) => spec.output.parse(await def.run(args, scope)),
|
|
16
|
+
});
|
|
8
17
|
const isVerb = (access) => VERBS.includes(access);
|
|
9
18
|
const scopeFor = async ({ access, who, space }, required, args) => {
|
|
10
19
|
const { actor } = who;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/server/kit/tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,OAAO,EAEL,eAAe,
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/server/kit/tool.ts"],"names":[],"mappings":"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"}
|
package/dist/server/kit.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export { actorOf } from "./http/gates.js";
|
|
|
15
15
|
export type { AfterHooks, BeforeHooks, KitChecks, KitEvents } from "./kit/events.js";
|
|
16
16
|
export type { Observation, Observe } from "./kit/observe.js";
|
|
17
17
|
export { type ArtifactPlugin, definePlugin, type PluginParts } from "./kit/plugin.js";
|
|
18
|
-
export { defineTool, type ToolAccess, type ToolDef, type ToolScope } from "./kit/tool.js";
|
|
18
|
+
export { defineTool, implementTool, type ToolAccess, type ToolDef, type ToolScope, } from "./kit/tool.js";
|
|
19
19
|
export { type CommentsOptions, type Component, type ComponentPackOptions, comments, componentPack, type InlineEditingOptions, inlineEditing, type LimitedAction, type McpAuthOptions, type MentionsOptions, type ModerationInput, type ModerationOptions, mcpAuth, mentions, moderation, type Notice, type NotificationsOptions, notifications, presence, type RateLimitOptions, rateLimit, type SharedStateOptions, type SourceEditor, type StarterKitOptions, sharedState, starterKit, type WebhookOptions, webhook, } from "./plugins/index.js";
|
|
20
20
|
export type * from "./ports.js";
|
|
21
21
|
export type { KitAssets } from "./sandbox/assets.js";
|
package/dist/server/kit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kit.d.ts","sourceRoot":"","sources":["../../src/server/kit.ts"],"names":[],"mappings":"AAAA;sEACsE;AACtE,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClF,OAAO,EAAE,KAAK,WAAW,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC9F,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,EAAE,IAAI,IAAI,GAAG,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC3D,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACrE,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AACpF,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,KAAK,cAAc,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AACrF,OAAO,
|
|
1
|
+
{"version":3,"file":"kit.d.ts","sourceRoot":"","sources":["../../src/server/kit.ts"],"names":[],"mappings":"AAAA;sEACsE;AACtE,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClF,OAAO,EAAE,KAAK,WAAW,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC9F,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,EAAE,IAAI,IAAI,GAAG,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC3D,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACrE,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AACpF,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,KAAK,cAAc,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AACrF,OAAO,EACL,UAAU,EACV,aAAa,EACb,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,SAAS,GACf,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,QAAQ,EACR,aAAa,EACb,KAAK,oBAAoB,EACzB,aAAa,EACb,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,OAAO,EACP,QAAQ,EACR,UAAU,EACV,KAAK,MAAM,EACX,KAAK,oBAAoB,EACzB,aAAa,EACb,QAAQ,EACR,KAAK,gBAAgB,EACrB,SAAS,EACT,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,WAAW,EACX,UAAU,EACV,KAAK,cAAc,EACnB,OAAO,GACR,MAAM,oBAAoB,CAAA;AAC3B,mBAAmB,YAAY,CAAA;AAC/B,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAA"}
|
package/dist/server/kit.js
CHANGED
|
@@ -10,7 +10,7 @@ export { createArtifactKit, createArtifactServer, } from "./http/app.js";
|
|
|
10
10
|
export { readJson } from "./http/body.js";
|
|
11
11
|
export { actorOf } from "./http/gates.js";
|
|
12
12
|
export { definePlugin } from "./kit/plugin.js";
|
|
13
|
-
export { defineTool } from "./kit/tool.js";
|
|
13
|
+
export { defineTool, implementTool, } from "./kit/tool.js";
|
|
14
14
|
export { comments, componentPack, inlineEditing, mcpAuth, mentions, moderation, notifications, presence, rateLimit, sharedState, starterKit, webhook, } from "./plugins/index.js";
|
|
15
15
|
export { buildCsp } from "./sandbox/csp.js";
|
|
16
16
|
export { injectRuntime } from "./sandbox/inject.js";
|
package/dist/server/kit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kit.js","sourceRoot":"","sources":["../../src/server/kit.ts"],"names":[],"mappings":"AAAA;sEACsE;AACtE,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClF,OAAO,EAAoB,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC9F,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAGtD,OAAO,EAAE,UAAU,EAAgB,MAAM,YAAY,CAAA;AACrD,OAAO,EAGL,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAGzC,OAAO,EAAuB,YAAY,EAAoB,MAAM,iBAAiB,CAAA;AACrF,OAAO,
|
|
1
|
+
{"version":3,"file":"kit.js","sourceRoot":"","sources":["../../src/server/kit.ts"],"names":[],"mappings":"AAAA;sEACsE;AACtE,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClF,OAAO,EAAoB,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAC9F,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAGtD,OAAO,EAAE,UAAU,EAAgB,MAAM,YAAY,CAAA;AACrD,OAAO,EAGL,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAGzC,OAAO,EAAuB,YAAY,EAAoB,MAAM,iBAAiB,CAAA;AACrF,OAAO,EACL,UAAU,EACV,aAAa,GAId,MAAM,eAAe,CAAA;AACtB,OAAO,EAIL,QAAQ,EACR,aAAa,EAEb,aAAa,EAMb,OAAO,EACP,QAAQ,EACR,UAAU,EAGV,aAAa,EACb,QAAQ,EAER,SAAS,EAIT,WAAW,EACX,UAAU,EAEV,OAAO,GACR,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAuB,MAAM,qBAAqB,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Actor, Role, ShareGrant, ShareSettings } from "../../protocol/index.js";
|
|
2
2
|
/** Where sharing lives. Implement it over your own database, or use `memorySharing()` or
|
|
3
|
-
* `postgresSharing()`, or `
|
|
3
|
+
* `postgresSharing()`, or the `sharing` a `kysely()` or `sqlite()` backend returns; prove it
|
|
4
4
|
* with `sharingStoreContract` from `@derive-to/artifacts/server/testing`. */
|
|
5
5
|
export interface SharingStore {
|
|
6
6
|
/** Settings per artifact; an artifact with none stored is absent from the map. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@derive-to/artifacts",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "Living documents for MCP Apps: versions, comments, shared state, presence, and source-preserving edits, behind ports your app implements.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"keywords": [
|
|
@@ -91,6 +91,10 @@
|
|
|
91
91
|
"types": "./dist/server/adapters/postgres/index.d.ts",
|
|
92
92
|
"default": "./dist/server/adapters/postgres/index.js"
|
|
93
93
|
},
|
|
94
|
+
"./server/kysely": {
|
|
95
|
+
"types": "./dist/server/adapters/kysely/index.d.ts",
|
|
96
|
+
"default": "./dist/server/adapters/kysely/index.js"
|
|
97
|
+
},
|
|
94
98
|
"./server/sqlite": {
|
|
95
99
|
"types": "./dist/server/adapters/sqlite/index.d.ts",
|
|
96
100
|
"default": "./dist/server/adapters/sqlite/index.js"
|
|
@@ -105,57 +109,27 @@
|
|
|
105
109
|
},
|
|
106
110
|
"./package.json": "./package.json"
|
|
107
111
|
},
|
|
112
|
+
"bin": {
|
|
113
|
+
"artifacts": "./dist/server/bin.js"
|
|
114
|
+
},
|
|
108
115
|
"engines": {
|
|
109
116
|
"node": ">=20"
|
|
110
117
|
},
|
|
111
|
-
"packageManager": "pnpm@11.25.0",
|
|
112
118
|
"publishConfig": {
|
|
113
119
|
"access": "public",
|
|
114
120
|
"registry": "https://registry.npmjs.org/",
|
|
115
121
|
"provenance": false
|
|
116
122
|
},
|
|
117
|
-
"scripts": {
|
|
118
|
-
"build": "node scripts/build.mjs",
|
|
119
|
-
"check": "biome check .",
|
|
120
|
-
"check:fix": "biome check --write .",
|
|
121
|
-
"ci": "biome ci --error-on-warnings . && pnpm lint:code && pnpm lint:boundaries && pnpm lint:env && pnpm lint:authz && pnpm lint:tokens && pnpm lint:mcp && pnpm lint:deadcode && pnpm lint:peers && pnpm lint:errors && pnpm audit:facts --check && pnpm release:check",
|
|
122
|
-
"dev": "pnpm build && pnpm --filter example-react-host dev",
|
|
123
|
-
"external:verify": "node scripts/verify-external-consumer.mjs",
|
|
124
|
-
"format": "biome format --write .",
|
|
125
|
-
"lint": "pnpm lint:code && biome lint .",
|
|
126
|
-
"lint:authz": "node scripts/check-authz.mjs",
|
|
127
|
-
"lint:boundaries": "node scripts/check-boundaries.mjs",
|
|
128
|
-
"lint:bundle": "node scripts/check-bundle.mjs",
|
|
129
|
-
"lint:code": "oxlint --type-aware --type-check --deny-warnings .",
|
|
130
|
-
"lint:deadcode": "knip",
|
|
131
|
-
"lint:env": "node scripts/check-env.mjs",
|
|
132
|
-
"lint:mcp": "node scripts/check-mcp-compat.mjs",
|
|
133
|
-
"lint:package": "node scripts/check-packages.mjs",
|
|
134
|
-
"lint:peers": "pnpm peers check",
|
|
135
|
-
"lint:tokens": "node scripts/check-design-tokens.mjs",
|
|
136
|
-
"precommit": "biome check --error-on-warnings . && pnpm lint:boundaries && pnpm lint:env && pnpm lint:authz && pnpm lint:tokens && pnpm lint:mcp && pnpm lint:errors && pnpm audit:facts --check && pnpm lint:deadcode && pnpm release:check",
|
|
137
|
-
"prepare": "git config core.hooksPath .githooks || true",
|
|
138
|
-
"release:check": "node scripts/check-release.mjs",
|
|
139
|
-
"release:version": "changeset version",
|
|
140
|
-
"security:audit": "pnpm audit --prod --audit-level=high",
|
|
141
|
-
"security:secrets": "gitleaks detect --no-git --source . --redact --no-banner",
|
|
142
|
-
"test": "vitest run",
|
|
143
|
-
"test:coverage": "vitest run --coverage",
|
|
144
|
-
"typecheck": "tsc && pnpm --filter example-react-host typecheck && pnpm --filter example-acme typecheck",
|
|
145
|
-
"verify": "pnpm run ci && pnpm build && pnpm typecheck && pnpm test:coverage && pnpm lint:bundle && pnpm lint:package && pnpm external:verify",
|
|
146
|
-
"lint:proofs": "node scripts/check-proofs.mjs",
|
|
147
|
-
"lint:errors": "node scripts/generate-errors-doc.mjs",
|
|
148
|
-
"audit:facts": "node scripts/audit-facts.mjs"
|
|
149
|
-
},
|
|
150
123
|
"dependencies": {
|
|
151
|
-
"@modelcontextprotocol/client": "
|
|
152
|
-
"@modelcontextprotocol/ext-apps": "
|
|
153
|
-
"@modelcontextprotocol/server": "
|
|
154
|
-
"@noble/hashes": "
|
|
155
|
-
"aws4fetch": "
|
|
124
|
+
"@modelcontextprotocol/client": "2.4.0",
|
|
125
|
+
"@modelcontextprotocol/ext-apps": "2.0.4",
|
|
126
|
+
"@modelcontextprotocol/server": "2.4.0",
|
|
127
|
+
"@noble/hashes": "2.4.0",
|
|
128
|
+
"aws4fetch": "1.0.20",
|
|
156
129
|
"entities": "^6.0.1",
|
|
157
|
-
"hono": "
|
|
158
|
-
"
|
|
130
|
+
"hono": "4.13.12",
|
|
131
|
+
"kysely": "0.29.9",
|
|
132
|
+
"zod": "4.6.7"
|
|
159
133
|
},
|
|
160
134
|
"peerDependencies": {
|
|
161
135
|
"@types/react": "^18.3.0 || ^19.0.0",
|
|
@@ -181,21 +155,53 @@
|
|
|
181
155
|
"@arethetypeswrong/cli": "0.18.5",
|
|
182
156
|
"@biomejs/biome": "2.5.15",
|
|
183
157
|
"@changesets/cli": "3.0.3",
|
|
184
|
-
"@types/node": "
|
|
185
|
-
"@vitest/coverage-v8": "
|
|
186
|
-
"esbuild": "
|
|
158
|
+
"@types/node": "^24.10.0",
|
|
159
|
+
"@vitest/coverage-v8": "5.0.3",
|
|
160
|
+
"esbuild": "0.28.2",
|
|
187
161
|
"knip": "6.39.0",
|
|
188
162
|
"oxlint": "1.86.0",
|
|
189
163
|
"oxlint-tsgolint": "7.0.2003",
|
|
190
164
|
"publint": "0.3.25",
|
|
191
|
-
"typescript": "
|
|
192
|
-
"vitest": "
|
|
193
|
-
"@electric-sql/pglite": "
|
|
194
|
-
"@testing-library/react": "
|
|
195
|
-
"@types/react": "
|
|
196
|
-
"@types/react-dom": "
|
|
197
|
-
"happy-dom": "
|
|
198
|
-
"react": "
|
|
199
|
-
"react-dom": "
|
|
165
|
+
"typescript": "7.0.2",
|
|
166
|
+
"vitest": "5.0.3",
|
|
167
|
+
"@electric-sql/pglite": "0.5.8",
|
|
168
|
+
"@testing-library/react": "16.3.3",
|
|
169
|
+
"@types/react": "19.3.0",
|
|
170
|
+
"@types/react-dom": "19.3.0",
|
|
171
|
+
"happy-dom": "20.14.5",
|
|
172
|
+
"react": "19.3.0",
|
|
173
|
+
"react-dom": "19.3.0"
|
|
174
|
+
},
|
|
175
|
+
"scripts": {
|
|
176
|
+
"build": "node scripts/build.mjs",
|
|
177
|
+
"check": "biome check .",
|
|
178
|
+
"check:fix": "biome check --write .",
|
|
179
|
+
"ci": "biome ci --error-on-warnings . && pnpm lint:code && pnpm lint:boundaries && pnpm lint:env && pnpm lint:authz && pnpm lint:tokens && pnpm lint:mcp && pnpm lint:deadcode && pnpm lint:peers && pnpm lint:errors && pnpm audit:facts --check && pnpm release:check",
|
|
180
|
+
"dev": "pnpm build && pnpm --filter example-react-host dev",
|
|
181
|
+
"external:verify": "node scripts/verify-external-consumer.mjs",
|
|
182
|
+
"format": "biome format --write .",
|
|
183
|
+
"lint": "pnpm lint:code && biome lint .",
|
|
184
|
+
"lint:authz": "node scripts/check-authz.mjs",
|
|
185
|
+
"lint:boundaries": "node scripts/check-boundaries.mjs",
|
|
186
|
+
"lint:bundle": "node scripts/check-bundle.mjs",
|
|
187
|
+
"lint:code": "oxlint --type-aware --type-check --deny-warnings .",
|
|
188
|
+
"lint:deadcode": "knip",
|
|
189
|
+
"lint:env": "node scripts/check-env.mjs",
|
|
190
|
+
"lint:mcp": "node scripts/check-mcp-compat.mjs",
|
|
191
|
+
"lint:package": "node scripts/check-packages.mjs",
|
|
192
|
+
"lint:peers": "pnpm peers check",
|
|
193
|
+
"lint:tokens": "node scripts/check-design-tokens.mjs",
|
|
194
|
+
"precommit": "biome check --error-on-warnings . && pnpm lint:boundaries && pnpm lint:env && pnpm lint:authz && pnpm lint:tokens && pnpm lint:mcp && pnpm lint:errors && pnpm audit:facts --check && pnpm lint:deadcode && pnpm release:check",
|
|
195
|
+
"release:check": "node scripts/check-release.mjs",
|
|
196
|
+
"release:version": "changeset version",
|
|
197
|
+
"security:audit": "pnpm audit --prod --audit-level=high",
|
|
198
|
+
"security:secrets": "gitleaks detect --no-git --source . --redact --no-banner",
|
|
199
|
+
"test": "vitest run",
|
|
200
|
+
"test:coverage": "vitest run --coverage",
|
|
201
|
+
"typecheck": "tsc && pnpm --filter example-react-host typecheck && pnpm --filter example-acme typecheck",
|
|
202
|
+
"verify": "pnpm run ci && pnpm build && pnpm typecheck && pnpm test:coverage && pnpm lint:bundle && pnpm lint:package && pnpm external:verify",
|
|
203
|
+
"lint:proofs": "node scripts/check-proofs.mjs",
|
|
204
|
+
"lint:errors": "node scripts/generate-errors-doc.mjs",
|
|
205
|
+
"audit:facts": "node scripts/audit-facts.mjs"
|
|
200
206
|
}
|
|
201
|
-
}
|
|
207
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/server/adapters/sqlite/schema.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,eAAO,MAAM,UAAU,UAkEtB,CAAA"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
/** Forward-only migrations, tracked with `PRAGMA user_version`. Append; never edit. */
|
|
2
|
-
export const MIGRATIONS = [
|
|
3
|
-
`CREATE TABLE oa_artifacts (
|
|
4
|
-
id TEXT PRIMARY KEY,
|
|
5
|
-
title TEXT NOT NULL,
|
|
6
|
-
current_version INTEGER NOT NULL,
|
|
7
|
-
created_at TEXT NOT NULL,
|
|
8
|
-
updated_at TEXT NOT NULL,
|
|
9
|
-
created_by TEXT NOT NULL
|
|
10
|
-
);
|
|
11
|
-
CREATE TABLE oa_versions (
|
|
12
|
-
artifact_id TEXT NOT NULL REFERENCES oa_artifacts(id) ON DELETE CASCADE,
|
|
13
|
-
n INTEGER NOT NULL,
|
|
14
|
-
content_hash TEXT NOT NULL,
|
|
15
|
-
size INTEGER NOT NULL,
|
|
16
|
-
csp TEXT NOT NULL,
|
|
17
|
-
created_at TEXT NOT NULL,
|
|
18
|
-
created_by TEXT NOT NULL,
|
|
19
|
-
PRIMARY KEY (artifact_id, n)
|
|
20
|
-
);
|
|
21
|
-
CREATE TABLE oa_threads (
|
|
22
|
-
id TEXT PRIMARY KEY,
|
|
23
|
-
artifact_id TEXT NOT NULL REFERENCES oa_artifacts(id) ON DELETE CASCADE,
|
|
24
|
-
state TEXT NOT NULL
|
|
25
|
-
);
|
|
26
|
-
CREATE TABLE oa_comments (
|
|
27
|
-
id TEXT PRIMARY KEY,
|
|
28
|
-
artifact_id TEXT NOT NULL REFERENCES oa_artifacts(id) ON DELETE CASCADE,
|
|
29
|
-
thread_id TEXT NOT NULL REFERENCES oa_threads(id) ON DELETE CASCADE,
|
|
30
|
-
version INTEGER NOT NULL,
|
|
31
|
-
quote TEXT,
|
|
32
|
-
body TEXT NOT NULL,
|
|
33
|
-
author TEXT NOT NULL,
|
|
34
|
-
created_at TEXT NOT NULL
|
|
35
|
-
);
|
|
36
|
-
CREATE INDEX oa_comments_by_artifact ON oa_comments (artifact_id, created_at);
|
|
37
|
-
CREATE TABLE oa_states (
|
|
38
|
-
artifact_id TEXT NOT NULL REFERENCES oa_artifacts(id) ON DELETE CASCADE,
|
|
39
|
-
key TEXT NOT NULL,
|
|
40
|
-
items TEXT NOT NULL,
|
|
41
|
-
version INTEGER NOT NULL,
|
|
42
|
-
PRIMARY KEY (artifact_id, key)
|
|
43
|
-
);
|
|
44
|
-
CREATE TABLE oa_activity (
|
|
45
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
46
|
-
artifact_id TEXT NOT NULL REFERENCES oa_artifacts(id) ON DELETE CASCADE,
|
|
47
|
-
key TEXT NOT NULL,
|
|
48
|
-
action TEXT NOT NULL,
|
|
49
|
-
item_id TEXT NOT NULL,
|
|
50
|
-
version INTEGER NOT NULL,
|
|
51
|
-
actor TEXT NOT NULL,
|
|
52
|
-
at TEXT NOT NULL
|
|
53
|
-
);
|
|
54
|
-
CREATE INDEX oa_activity_by_key ON oa_activity (artifact_id, key, id DESC);
|
|
55
|
-
CREATE TABLE oa_blobs (
|
|
56
|
-
key TEXT PRIMARY KEY,
|
|
57
|
-
type TEXT NOT NULL,
|
|
58
|
-
bytes BLOB NOT NULL
|
|
59
|
-
);`,
|
|
60
|
-
`CREATE INDEX oa_artifacts_by_recency ON oa_artifacts (updated_at DESC, id DESC);`,
|
|
61
|
-
`ALTER TABLE oa_artifacts ADD COLUMN space TEXT NOT NULL DEFAULT '';
|
|
62
|
-
CREATE INDEX oa_artifacts_by_space ON oa_artifacts (space, updated_at DESC, id DESC);`,
|
|
63
|
-
`ALTER TABLE oa_artifacts ADD COLUMN summary TEXT NOT NULL DEFAULT '';
|
|
64
|
-
ALTER TABLE oa_artifacts ADD COLUMN updated_by TEXT;
|
|
65
|
-
CREATE INDEX oa_threads_by_artifact ON oa_threads (artifact_id);`,
|
|
66
|
-
`ALTER TABLE oa_artifacts ADD COLUMN kind TEXT NOT NULL DEFAULT 'page';`,
|
|
67
|
-
`ALTER TABLE oa_versions ADD COLUMN source_info TEXT;`,
|
|
68
|
-
];
|
|
69
|
-
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/server/adapters/sqlite/schema.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAwDI;IACJ,kFAAkF;IAClF;yFACuF;IACvF;;oEAEkE;IAClE,wEAAwE;IACxE,sDAAsD;CACvD,CAAA"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { DatabaseSync } from "node:sqlite";
|
|
2
|
-
import type { SharingStore } from "../../sharing/store.js";
|
|
3
|
-
/** The two sharing tables in the same SQLite file as the kit's own: pass `sqlite(path).db`.
|
|
4
|
-
* Each references the artifacts table, so deleting an artifact deletes its sharing. */
|
|
5
|
-
export declare const sqliteSharing: (db: DatabaseSync) => SharingStore;
|
|
6
|
-
//# sourceMappingURL=sharing.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sharing.d.ts","sourceRoot":"","sources":["../../../../src/server/adapters/sqlite/sharing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAuB1D;wFACwF;AACxF,eAAO,MAAM,aAAa,OAAQ,YAAY,KAAG,YA0EhD,CAAA"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { toShareGrant, toShareSettings } from "../sql-rows.js";
|
|
2
|
-
const SCHEMA = `
|
|
3
|
-
CREATE TABLE IF NOT EXISTS oa_share_settings (
|
|
4
|
-
artifact_id TEXT PRIMARY KEY REFERENCES oa_artifacts(id) ON DELETE CASCADE,
|
|
5
|
-
space_access TEXT NOT NULL,
|
|
6
|
-
link_role TEXT NOT NULL,
|
|
7
|
-
link_token TEXT UNIQUE
|
|
8
|
-
);
|
|
9
|
-
CREATE TABLE IF NOT EXISTS oa_share_grants (
|
|
10
|
-
artifact_id TEXT NOT NULL REFERENCES oa_artifacts(id) ON DELETE CASCADE,
|
|
11
|
-
actor_id TEXT NOT NULL,
|
|
12
|
-
actor TEXT NOT NULL,
|
|
13
|
-
role TEXT NOT NULL,
|
|
14
|
-
PRIMARY KEY (artifact_id, actor_id)
|
|
15
|
-
);
|
|
16
|
-
CREATE INDEX IF NOT EXISTS oa_share_grants_by_actor ON oa_share_grants (actor_id);
|
|
17
|
-
`;
|
|
18
|
-
/** `?, ?, ?` for a list; SQLite has no array parameters. */
|
|
19
|
-
const marks = (count) => Array.from({ length: count }, () => "?").join(", ");
|
|
20
|
-
/** The two sharing tables in the same SQLite file as the kit's own: pass `sqlite(path).db`.
|
|
21
|
-
* Each references the artifacts table, so deleting an artifact deletes its sharing. */
|
|
22
|
-
export const sqliteSharing = (db) => {
|
|
23
|
-
// Deleting an artifact deletes its sharing only with foreign keys on, as `sqlite()` sets.
|
|
24
|
-
db.exec("PRAGMA foreign_keys = ON");
|
|
25
|
-
db.exec(SCHEMA);
|
|
26
|
-
return {
|
|
27
|
-
settings: async (ids) => {
|
|
28
|
-
if (ids.length === 0)
|
|
29
|
-
return new Map();
|
|
30
|
-
const rows = db
|
|
31
|
-
.prepare(`SELECT artifact_id, space_access, link_role, link_token FROM oa_share_settings WHERE artifact_id IN (${marks(ids.length)})`)
|
|
32
|
-
.all(...ids);
|
|
33
|
-
return new Map(rows.map(toShareSettings));
|
|
34
|
-
},
|
|
35
|
-
putSettings: async (artifactId, next) => {
|
|
36
|
-
db.prepare(`INSERT INTO oa_share_settings (artifact_id, space_access, link_role, link_token)
|
|
37
|
-
VALUES (?, ?, ?, ?)
|
|
38
|
-
ON CONFLICT (artifact_id) DO UPDATE SET
|
|
39
|
-
space_access = excluded.space_access,
|
|
40
|
-
link_role = excluded.link_role,
|
|
41
|
-
link_token = excluded.link_token`).run(artifactId, next.spaceAccess, next.linkRole, next.linkToken);
|
|
42
|
-
},
|
|
43
|
-
artifactForLink: async (token) => {
|
|
44
|
-
const row = db
|
|
45
|
-
.prepare("SELECT artifact_id FROM oa_share_settings WHERE link_token = ? AND link_role <> 'none'")
|
|
46
|
-
.get(token);
|
|
47
|
-
const id = row?.["artifact_id"];
|
|
48
|
-
return typeof id === "string" ? id : null;
|
|
49
|
-
},
|
|
50
|
-
grants: async (artifactId) => db
|
|
51
|
-
.prepare("SELECT artifact_id, actor, role FROM oa_share_grants WHERE artifact_id = ? ORDER BY actor_id")
|
|
52
|
-
.all(artifactId)
|
|
53
|
-
.map((raw) => {
|
|
54
|
-
const { actor, role } = toShareGrant(raw);
|
|
55
|
-
return { actor, role };
|
|
56
|
-
}),
|
|
57
|
-
grantsFor: async (actorId, ids) => {
|
|
58
|
-
if (ids.length === 0)
|
|
59
|
-
return new Map();
|
|
60
|
-
const rows = db
|
|
61
|
-
.prepare(`SELECT artifact_id, actor, role FROM oa_share_grants WHERE actor_id = ? AND artifact_id IN (${marks(ids.length)})`)
|
|
62
|
-
.all(actorId, ...ids);
|
|
63
|
-
return new Map(rows.map((raw) => {
|
|
64
|
-
const { artifactId, role } = toShareGrant(raw);
|
|
65
|
-
return [artifactId, role];
|
|
66
|
-
}));
|
|
67
|
-
},
|
|
68
|
-
putGrant: async (artifactId, actor, role) => {
|
|
69
|
-
db.prepare(`INSERT INTO oa_share_grants (artifact_id, actor_id, actor, role) VALUES (?, ?, ?, ?)
|
|
70
|
-
ON CONFLICT (artifact_id, actor_id) DO UPDATE SET actor = excluded.actor, role = excluded.role`).run(artifactId, actor.id, JSON.stringify(actor), role);
|
|
71
|
-
},
|
|
72
|
-
deleteGrant: async (artifactId, actorId) => Number(db
|
|
73
|
-
.prepare("DELETE FROM oa_share_grants WHERE artifact_id = ? AND actor_id = ?")
|
|
74
|
-
.run(artifactId, actorId).changes) > 0,
|
|
75
|
-
forget: async (artifactId) => {
|
|
76
|
-
db.prepare("DELETE FROM oa_share_grants WHERE artifact_id = ?").run(artifactId);
|
|
77
|
-
db.prepare("DELETE FROM oa_share_settings WHERE artifact_id = ?").run(artifactId);
|
|
78
|
-
},
|
|
79
|
-
};
|
|
80
|
-
};
|
|
81
|
-
//# sourceMappingURL=sharing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sharing.js","sourceRoot":"","sources":["../../../../src/server/adapters/sqlite/sharing.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { DatabaseSync } from "node:sqlite";
|
|
2
|
-
import type { ArtifactStore } from "../../ports.js";
|
|
3
|
-
export type Query = (sql: string) => ReturnType<DatabaseSync["prepare"]>;
|
|
4
|
-
export type Tx = <T>(work: () => T) => T;
|
|
5
|
-
export declare const sqliteStoreOn: (q: Query, tx: Tx) => ArtifactStore;
|
|
6
|
-
//# sourceMappingURL=store.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../../src/server/adapters/sqlite/store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAA0B,MAAM,gBAAgB,CAAA;AAI3E,MAAM,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAA;AACxE,MAAM,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;AAuNxC,eAAO,MAAM,aAAa,MAAO,KAAK,MAAM,EAAE,KAAG,aAK/C,CAAA"}
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { activityFrom } from "../activity.js";
|
|
2
|
-
import { toActivity, toArtifact, toComment, toState, toThread, toVersion } from "../sql-rows.js";
|
|
3
|
-
const json = (value) => JSON.stringify(value);
|
|
4
|
-
const insertVersion = "INSERT INTO oa_versions VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
|
|
5
|
-
const versionValues = (v) => [
|
|
6
|
-
v.artifactId,
|
|
7
|
-
v.n,
|
|
8
|
-
v.contentHash,
|
|
9
|
-
v.size,
|
|
10
|
-
json(v.csp),
|
|
11
|
-
v.createdAt,
|
|
12
|
-
json(v.createdBy),
|
|
13
|
-
v.source ? json(v.source) : null,
|
|
14
|
-
];
|
|
15
|
-
const insertComment = "INSERT INTO oa_comments VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
|
|
16
|
-
const commentValues = (c) => [
|
|
17
|
-
c.id,
|
|
18
|
-
c.artifactId,
|
|
19
|
-
c.threadId,
|
|
20
|
-
c.version,
|
|
21
|
-
c.quote ? json(c.quote) : null,
|
|
22
|
-
c.body,
|
|
23
|
-
json(c.author),
|
|
24
|
-
c.createdAt,
|
|
25
|
-
];
|
|
26
|
-
const artifactQueries = (q, tx) => ({
|
|
27
|
-
createArtifact: async (a, v) => tx(() => {
|
|
28
|
-
q("INSERT INTO oa_artifacts (id, title, current_version, created_at, updated_at, created_by, space, summary, updated_by, kind) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)").run(a.id, a.title, a.currentVersion, a.createdAt, a.updatedAt, json(a.createdBy), a.space, a.summary, json(a.updatedBy), a.kind);
|
|
29
|
-
q(insertVersion).run(...versionValues(v));
|
|
30
|
-
}),
|
|
31
|
-
getArtifact: async (id) => {
|
|
32
|
-
const row = q("SELECT * FROM oa_artifacts WHERE id = ?").get(id);
|
|
33
|
-
return row ? toArtifact(row) : null;
|
|
34
|
-
},
|
|
35
|
-
listArtifacts: async ({ space, limit, after, search, createdBy }) => {
|
|
36
|
-
const updatedAt = after?.updatedAt ?? null;
|
|
37
|
-
const id = after?.id ?? null;
|
|
38
|
-
const term = search || null;
|
|
39
|
-
const creator = createdBy ?? null;
|
|
40
|
-
return q(`SELECT * FROM oa_artifacts
|
|
41
|
-
WHERE space = ? AND (? IS NULL OR updated_at < ? OR (updated_at = ? AND id < ?))
|
|
42
|
-
AND (? IS NULL OR instr(lower(title), lower(?)) > 0 OR instr(lower(summary), lower(?)) > 0)
|
|
43
|
-
AND (? IS NULL OR json_extract(created_by, '$.id') = ?)
|
|
44
|
-
ORDER BY updated_at DESC, id DESC LIMIT ?`)
|
|
45
|
-
.all(space, updatedAt, updatedAt, updatedAt, id, term, term, term, creator, creator, limit)
|
|
46
|
-
.map(toArtifact);
|
|
47
|
-
},
|
|
48
|
-
renameArtifact: async (id, title) => Number(q("UPDATE oa_artifacts SET title = ? WHERE id = ?").run(title, id).changes) === 1,
|
|
49
|
-
// Foreign keys cascade to versions, threads, comments, state and activity.
|
|
50
|
-
deleteArtifact: async (id) => Number(q("DELETE FROM oa_artifacts WHERE id = ?").run(id).changes) === 1,
|
|
51
|
-
});
|
|
52
|
-
const versionQueries = (q, tx) => ({
|
|
53
|
-
addVersion: async (v, expected, facts) => tx(() => {
|
|
54
|
-
if (v.n !== expected + 1)
|
|
55
|
-
return null;
|
|
56
|
-
const moved = q("UPDATE oa_artifacts SET current_version = ?, updated_at = ?, summary = ?, kind = ?, title = COALESCE(?, title), updated_by = ? WHERE id = ? AND current_version = ?").run(v.n, v.createdAt, facts.summary, facts.kind, facts.title ?? null, json(v.createdBy), v.artifactId, expected);
|
|
57
|
-
if (Number(moved.changes) !== 1)
|
|
58
|
-
return null;
|
|
59
|
-
q(insertVersion).run(...versionValues(v));
|
|
60
|
-
return v;
|
|
61
|
-
}),
|
|
62
|
-
getVersion: async (artifactId, n) => {
|
|
63
|
-
const row = q("SELECT * FROM oa_versions WHERE artifact_id = ? AND n = ?").get(artifactId, n);
|
|
64
|
-
return row ? toVersion(row) : null;
|
|
65
|
-
},
|
|
66
|
-
replaceVersion: async (v, expectedHash, facts) => tx(() => {
|
|
67
|
-
const current = q("SELECT 1 FROM oa_artifacts a JOIN oa_versions v ON v.artifact_id = a.id AND v.n = a.current_version WHERE a.id = ? AND a.current_version = ? AND v.content_hash = ?").get(v.artifactId, v.n, expectedHash);
|
|
68
|
-
if (!current)
|
|
69
|
-
return null;
|
|
70
|
-
q("UPDATE oa_versions SET content_hash = ?, size = ?, csp = ?, created_at = ?, created_by = ?, source_info = ? WHERE artifact_id = ? AND n = ?").run(v.contentHash, v.size, json(v.csp), v.createdAt, json(v.createdBy), v.source ? json(v.source) : null, v.artifactId, v.n);
|
|
71
|
-
q("UPDATE oa_artifacts SET updated_at = ?, summary = ?, kind = ?, title = COALESCE(?, title), updated_by = ? WHERE id = ?").run(v.createdAt, facts.summary, facts.kind, facts.title ?? null, json(v.createdBy), v.artifactId);
|
|
72
|
-
return v;
|
|
73
|
-
}),
|
|
74
|
-
listVersions: async (artifactId) => q("SELECT * FROM oa_versions WHERE artifact_id = ? ORDER BY n")
|
|
75
|
-
.all(artifactId)
|
|
76
|
-
.map(toVersion),
|
|
77
|
-
});
|
|
78
|
-
const threadQueries = (q, tx) => ({
|
|
79
|
-
createThread: async (t, c) => tx(() => {
|
|
80
|
-
q("INSERT INTO oa_threads VALUES (?, ?, ?)").run(t.id, t.artifactId, t.state);
|
|
81
|
-
q(insertComment).run(...commentValues(c));
|
|
82
|
-
}),
|
|
83
|
-
addComment: async (c) => {
|
|
84
|
-
q(insertComment).run(...commentValues(c));
|
|
85
|
-
},
|
|
86
|
-
setThreadState: async (artifactId, threadId, state) => {
|
|
87
|
-
const result = q("UPDATE oa_threads SET state = ? WHERE id = ? AND artifact_id = ?").run(state, threadId, artifactId);
|
|
88
|
-
return Number(result.changes) === 1;
|
|
89
|
-
},
|
|
90
|
-
listThreads: async (artifactId) => ({
|
|
91
|
-
threads: q("SELECT * FROM oa_threads WHERE artifact_id = ?").all(artifactId).map(toThread),
|
|
92
|
-
comments: q("SELECT * FROM oa_comments WHERE artifact_id = ? ORDER BY created_at")
|
|
93
|
-
.all(artifactId)
|
|
94
|
-
.map(toComment),
|
|
95
|
-
}),
|
|
96
|
-
threadActivity: async (artifactIds) => {
|
|
97
|
-
if (artifactIds.length === 0)
|
|
98
|
-
return [];
|
|
99
|
-
const ids = JSON.stringify(artifactIds);
|
|
100
|
-
const inIds = "artifact_id IN (SELECT value FROM json_each(?))";
|
|
101
|
-
return activityFrom(artifactIds, q(`SELECT * FROM oa_threads WHERE ${inIds}`).all(ids).map(toThread), q(`SELECT * FROM oa_comments WHERE ${inIds}`).all(ids).map(toComment));
|
|
102
|
-
},
|
|
103
|
-
});
|
|
104
|
-
const stateQueries = (q, tx) => ({
|
|
105
|
-
getState: async (artifactId, key) => {
|
|
106
|
-
const row = q("SELECT * FROM oa_states WHERE artifact_id = ? AND key = ?").get(artifactId, key);
|
|
107
|
-
return row ? toState(row) : null;
|
|
108
|
-
},
|
|
109
|
-
countStateKeys: async (artifactId) => Number(q("SELECT COUNT(*) AS n FROM oa_states WHERE artifact_id = ?").get(artifactId)?.["n"] ?? 0),
|
|
110
|
-
putState: async (s, expected) => {
|
|
111
|
-
const result = expected === 0
|
|
112
|
-
? q("INSERT OR IGNORE INTO oa_states VALUES (?, ?, ?, ?)").run(s.artifactId, s.key, json(s.items), s.version)
|
|
113
|
-
: q("UPDATE oa_states SET items = ?, version = ? WHERE artifact_id = ? AND key = ? AND version = ?").run(json(s.items), s.version, s.artifactId, s.key, expected);
|
|
114
|
-
return Number(result.changes) === 1;
|
|
115
|
-
},
|
|
116
|
-
appendActivity: async (a, keep) => tx(() => {
|
|
117
|
-
q("INSERT INTO oa_activity (artifact_id, key, action, item_id, version, actor, at) VALUES (?, ?, ?, ?, ?, ?, ?)").run(a.artifactId, a.key, a.action, a.itemId, a.version, json(a.actor), a.at);
|
|
118
|
-
q("DELETE FROM oa_activity WHERE artifact_id = ? AND key = ? AND id NOT IN (SELECT id FROM oa_activity WHERE artifact_id = ? AND key = ? ORDER BY id DESC LIMIT ?)").run(a.artifactId, a.key, a.artifactId, a.key, keep);
|
|
119
|
-
}),
|
|
120
|
-
listActivity: async (artifactId, key, limit) => q("SELECT * FROM oa_activity WHERE artifact_id = ? AND key = ? ORDER BY id DESC LIMIT ?")
|
|
121
|
-
.all(artifactId, key, limit)
|
|
122
|
-
.map(toActivity),
|
|
123
|
-
});
|
|
124
|
-
export const sqliteStoreOn = (q, tx) => ({
|
|
125
|
-
...artifactQueries(q, tx),
|
|
126
|
-
...versionQueries(q, tx),
|
|
127
|
-
...threadQueries(q, tx),
|
|
128
|
-
...stateQueries(q, tx),
|
|
129
|
-
});
|
|
130
|
-
//# sourceMappingURL=store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/server/adapters/sqlite/store.ts"],"names":[],"mappings":"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"}
|