@artkit-ai/core 0.1.0 → 0.2.0
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/adapter.d.ts +119 -0
- package/dist/adapter.d.ts.map +1 -0
- package/dist/adapter.js +45 -0
- package/dist/adapter.js.map +1 -0
- package/dist/diff.d.ts +1 -1
- package/dist/diff.d.ts.map +1 -1
- package/dist/engine.d.ts +29 -23
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +148 -197
- package/dist/engine.js.map +1 -1
- package/dist/envelope.d.ts +10 -27
- package/dist/envelope.d.ts.map +1 -1
- package/dist/envelope.js +8 -20
- package/dist/envelope.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +4 -4
- package/dist/errors.js.map +1 -1
- package/dist/events.d.ts +2 -10
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js.map +1 -1
- package/dist/i18n.d.ts +8 -14
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js +12 -18
- package/dist/i18n.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/logger.d.ts +1 -2
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js.map +1 -1
- package/dist/memory.d.ts +0 -2
- package/dist/memory.d.ts.map +1 -1
- package/dist/memory.js +15 -109
- package/dist/memory.js.map +1 -1
- package/dist/migrations.d.ts +6 -5
- package/dist/migrations.d.ts.map +1 -1
- package/dist/migrations.js +20 -14
- package/dist/migrations.js.map +1 -1
- package/dist/projection.d.ts +22 -6
- package/dist/projection.d.ts.map +1 -1
- package/dist/projection.js +5 -5
- package/dist/projection.js.map +1 -1
- package/dist/registry.d.ts +17 -16
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +25 -25
- package/dist/registry.js.map +1 -1
- package/dist/service.d.ts +19 -51
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +119 -404
- package/dist/service.js.map +1 -1
- package/dist/store.d.ts +12 -61
- package/dist/store.d.ts.map +1 -1
- package/dist/testing/index.d.ts +10 -9
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +75 -136
- package/dist/testing/index.js.map +1 -1
- package/dist/theme.js +1 -1
- package/dist/ui.d.ts +18 -1
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js +5 -3
- package/dist/ui.js.map +1 -1
- package/package.json +1 -1
- package/src/adapter.ts +180 -0
- package/src/diff.ts +1 -1
- package/src/engine.ts +183 -230
- package/src/envelope.ts +11 -29
- package/src/errors.ts +4 -4
- package/src/events.ts +2 -11
- package/src/i18n.ts +14 -20
- package/src/index.ts +2 -4
- package/src/logger.ts +1 -2
- package/src/memory.ts +16 -122
- package/src/migrations.ts +24 -18
- package/src/projection.ts +25 -7
- package/src/registry.ts +45 -41
- package/src/service.ts +144 -540
- package/src/store.ts +12 -64
- package/src/testing/index.ts +89 -164
- package/src/theme.ts +1 -1
- package/src/ui.ts +24 -4
- package/dist/kind.d.ts +0 -156
- package/dist/kind.d.ts.map +0 -1
- package/dist/kind.js +0 -52
- package/dist/kind.js.map +0 -1
- package/src/kind.ts +0 -217
package/dist/memory.js
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { assetIdFromRef, checkAsset, defaultAssetPolicy, sha256Hex, toDataUrl, } from './assets.js';
|
|
2
|
-
import { summarize
|
|
2
|
+
import { summarize } from './envelope.js';
|
|
3
3
|
import { ArtifactError } from './errors.js';
|
|
4
4
|
import { t } from './i18n.js';
|
|
5
5
|
import { createArtifactId } from './ids.js';
|
|
6
6
|
const DEFAULT_PAGE = 50;
|
|
7
|
-
const sameActor = (a, b) => a.type === b.type && a.id === b.id;
|
|
8
7
|
/** Reference in-memory store: tests, playground and prototypes (spec §15.2). Runs in any runtime. */
|
|
9
8
|
export function createMemoryStore(options = {}) {
|
|
10
9
|
const now = options.now ?? (() => new Date());
|
|
11
|
-
const snapshotEvery = Math.max(1, options.snapshotEvery ?? 10);
|
|
12
10
|
const records = new Map();
|
|
13
11
|
const notFound = (id) => {
|
|
14
12
|
throw new ArtifactError('NOT_FOUND', t(options.locale, 'NOT_FOUND', { what: 'Artifact', id }));
|
|
@@ -20,9 +18,6 @@ export function createMemoryStore(options = {}) {
|
|
|
20
18
|
return notFound(id);
|
|
21
19
|
return found;
|
|
22
20
|
}
|
|
23
|
-
function latest(rec) {
|
|
24
|
-
return rec.versions[rec.versions.length - 1];
|
|
25
|
-
}
|
|
26
21
|
function activeLock(rec) {
|
|
27
22
|
if (!rec.lock)
|
|
28
23
|
return null;
|
|
@@ -42,25 +37,21 @@ export function createMemoryStore(options = {}) {
|
|
|
42
37
|
}
|
|
43
38
|
const clone = (value) => structuredClone(value);
|
|
44
39
|
return {
|
|
45
|
-
async get(scope, id
|
|
40
|
+
async get(scope, id) {
|
|
46
41
|
const rec = records.get(id);
|
|
47
42
|
if (!rec || rec.workspaceId !== scope.workspaceId)
|
|
48
43
|
return null;
|
|
49
|
-
|
|
50
|
-
return clone(latest(rec));
|
|
51
|
-
const found = rec.versions.find((v) => v.version === opts.version);
|
|
52
|
-
return found ? clone(found) : null;
|
|
44
|
+
return clone(rec.artifact);
|
|
53
45
|
},
|
|
54
46
|
async create(scope, input) {
|
|
55
47
|
const at = now();
|
|
56
48
|
const id = createArtifactId(at.getTime());
|
|
57
49
|
const artifact = {
|
|
58
50
|
id,
|
|
59
|
-
|
|
60
|
-
|
|
51
|
+
format: input.format,
|
|
52
|
+
formatVersion: input.formatVersion,
|
|
61
53
|
version: 1,
|
|
62
54
|
title: input.title,
|
|
63
|
-
status: input.status,
|
|
64
55
|
locale: input.locale,
|
|
65
56
|
themeId: input.themeId,
|
|
66
57
|
content: clone(input.content),
|
|
@@ -72,81 +63,38 @@ export function createMemoryStore(options = {}) {
|
|
|
72
63
|
tags: input.tags ?? [],
|
|
73
64
|
},
|
|
74
65
|
};
|
|
75
|
-
records.set(id, {
|
|
76
|
-
workspaceId: scope.workspaceId,
|
|
77
|
-
versions: [artifact],
|
|
78
|
-
history: [
|
|
79
|
-
{
|
|
80
|
-
version: 1,
|
|
81
|
-
actor: scope.actor,
|
|
82
|
-
createdAt: at.toISOString(),
|
|
83
|
-
operations: [],
|
|
84
|
-
diff: [],
|
|
85
|
-
createdIds: input.createdIds ?? [],
|
|
86
|
-
status: input.status,
|
|
87
|
-
...(input.message ? { message: input.message } : {}),
|
|
88
|
-
...(input.idempotencyKey ? { idempotencyKey: input.idempotencyKey } : {}),
|
|
89
|
-
snapshot: { schemaVersion: input.schemaVersion, content: clone(input.content) },
|
|
90
|
-
},
|
|
91
|
-
],
|
|
92
|
-
});
|
|
66
|
+
records.set(id, { workspaceId: scope.workspaceId, artifact });
|
|
93
67
|
return clone(artifact);
|
|
94
68
|
},
|
|
95
69
|
async commit(scope, id, change) {
|
|
96
70
|
const rec = record(scope, id);
|
|
97
|
-
const current =
|
|
71
|
+
const current = rec.artifact;
|
|
98
72
|
if (change.baseVersion !== current.version) {
|
|
99
73
|
throw new ArtifactError('VERSION_CONFLICT', t(options.locale, 'VERSION_CONFLICT', {
|
|
100
74
|
baseVersion: change.baseVersion,
|
|
101
75
|
currentVersion: current.version,
|
|
102
|
-
}), {
|
|
103
|
-
details: { currentVersion: current.version },
|
|
104
|
-
});
|
|
76
|
+
}), { details: { currentVersion: current.version } });
|
|
105
77
|
}
|
|
106
|
-
const at = now().toISOString();
|
|
107
|
-
const version = current.version + 1;
|
|
108
78
|
const next = {
|
|
109
79
|
...current,
|
|
110
|
-
|
|
111
|
-
version,
|
|
80
|
+
formatVersion: change.formatVersion,
|
|
81
|
+
version: current.version + 1,
|
|
112
82
|
title: change.title,
|
|
113
83
|
locale: change.locale,
|
|
114
84
|
themeId: change.themeId,
|
|
115
|
-
status: change.status ?? current.status,
|
|
116
85
|
content: clone(change.content),
|
|
117
|
-
meta: { ...current.meta, updatedAt:
|
|
86
|
+
meta: { ...current.meta, updatedAt: now().toISOString(), updatedBy: scope.actor },
|
|
118
87
|
};
|
|
119
|
-
rec.
|
|
120
|
-
rec.history.push({
|
|
121
|
-
version,
|
|
122
|
-
actor: scope.actor,
|
|
123
|
-
createdAt: at,
|
|
124
|
-
operations: clone(change.operations),
|
|
125
|
-
diff: clone(change.diff),
|
|
126
|
-
createdIds: change.createdIds ?? [],
|
|
127
|
-
status: next.status,
|
|
128
|
-
...(change.message ? { message: change.message } : {}),
|
|
129
|
-
...(change.idempotencyKey ? { idempotencyKey: change.idempotencyKey } : {}),
|
|
130
|
-
...(change.restoredFrom ? { restoredFrom: change.restoredFrom } : {}),
|
|
131
|
-
...(version % snapshotEvery === 0
|
|
132
|
-
? { snapshot: { schemaVersion: change.schemaVersion, content: clone(change.content) } }
|
|
133
|
-
: {}),
|
|
134
|
-
});
|
|
88
|
+
rec.artifact = next;
|
|
135
89
|
return clone(next);
|
|
136
90
|
},
|
|
137
|
-
async history(scope, id, page) {
|
|
138
|
-
const rec = record(scope, id);
|
|
139
|
-
return paginate(clone([...rec.history].reverse()), page);
|
|
140
|
-
},
|
|
141
91
|
async list(scope, filter, page) {
|
|
142
92
|
const items = [];
|
|
143
93
|
for (const rec of records.values()) {
|
|
144
94
|
if (rec.workspaceId !== scope.workspaceId)
|
|
145
95
|
continue;
|
|
146
|
-
const artifact =
|
|
147
|
-
if (filter.
|
|
148
|
-
continue;
|
|
149
|
-
if (filter.status && artifact.status !== filter.status)
|
|
96
|
+
const artifact = rec.artifact;
|
|
97
|
+
if (filter.format && artifact.format !== filter.format)
|
|
150
98
|
continue;
|
|
151
99
|
if (filter.title && !artifact.title.toLowerCase().includes(filter.title.toLowerCase()))
|
|
152
100
|
continue;
|
|
@@ -157,31 +105,6 @@ export function createMemoryStore(options = {}) {
|
|
|
157
105
|
items.sort((a, b) => a.updatedAt < b.updatedAt ? 1 : a.updatedAt > b.updatedAt ? -1 : a.id < b.id ? 1 : -1);
|
|
158
106
|
return paginate(items, page);
|
|
159
107
|
},
|
|
160
|
-
async setStatus(scope, id, status, actor, message) {
|
|
161
|
-
const rec = record(scope, id);
|
|
162
|
-
const current = latest(rec);
|
|
163
|
-
const at = now().toISOString();
|
|
164
|
-
const updated = {
|
|
165
|
-
...current,
|
|
166
|
-
status,
|
|
167
|
-
meta: {
|
|
168
|
-
...current.meta,
|
|
169
|
-
updatedAt: at,
|
|
170
|
-
updatedBy: actor,
|
|
171
|
-
...(status === 'published' ? { publishedVersion: current.version } : {}),
|
|
172
|
-
},
|
|
173
|
-
};
|
|
174
|
-
rec.versions[rec.versions.length - 1] = updated;
|
|
175
|
-
const entry = rec.history[rec.history.length - 1];
|
|
176
|
-
if (entry) {
|
|
177
|
-
entry.status = status;
|
|
178
|
-
entry.statusLog = [
|
|
179
|
-
...(entry.statusLog ?? []),
|
|
180
|
-
{ status, actor, at, ...(message ? { message } : {}) },
|
|
181
|
-
];
|
|
182
|
-
}
|
|
183
|
-
return clone(updated);
|
|
184
|
-
},
|
|
185
108
|
async lock(scope, id, actor, ttlMs) {
|
|
186
109
|
const rec = record(scope, id);
|
|
187
110
|
const existing = activeLock(rec);
|
|
@@ -189,9 +112,7 @@ export function createMemoryStore(options = {}) {
|
|
|
189
112
|
throw new ArtifactError('LOCKED', t(options.locale, 'LOCKED', {
|
|
190
113
|
holder: `${existing.holder.type}:${existing.holder.id}`,
|
|
191
114
|
expiresAt: existing.expiresAt,
|
|
192
|
-
}), {
|
|
193
|
-
details: { expiresAt: existing.expiresAt },
|
|
194
|
-
});
|
|
115
|
+
}), { details: { expiresAt: existing.expiresAt } });
|
|
195
116
|
}
|
|
196
117
|
const token = createArtifactId(now().getTime()).slice(4);
|
|
197
118
|
rec.lock = {
|
|
@@ -212,21 +133,6 @@ export function createMemoryStore(options = {}) {
|
|
|
212
133
|
const lock = activeLock(rec);
|
|
213
134
|
return lock ? clone(lock) : null;
|
|
214
135
|
},
|
|
215
|
-
async findByIdempotencyKey(scope, id, key) {
|
|
216
|
-
const rec = record(scope, id);
|
|
217
|
-
const entry = rec.history.find((h) => h.idempotencyKey === key);
|
|
218
|
-
return entry ? clone(entry) : null;
|
|
219
|
-
},
|
|
220
|
-
async findCreatedByIdempotencyKey(scope, key) {
|
|
221
|
-
for (const rec of records.values()) {
|
|
222
|
-
if (rec.workspaceId !== scope.workspaceId)
|
|
223
|
-
continue;
|
|
224
|
-
const first = rec.history[0];
|
|
225
|
-
if (first?.idempotencyKey === key && sameActor(first.actor, scope.actor))
|
|
226
|
-
return clone(latest(rec));
|
|
227
|
-
}
|
|
228
|
-
return null;
|
|
229
|
-
},
|
|
230
136
|
};
|
|
231
137
|
}
|
|
232
138
|
/** In-memory asset store with the same validation as production stores (MIME sniffing, size, SVG sanitizing). */
|
package/dist/memory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
|
package/dist/migrations.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { AnyFormatAdapter } from './adapter.js';
|
|
2
2
|
export interface MigrationResult {
|
|
3
3
|
content: unknown;
|
|
4
|
-
|
|
4
|
+
formatVersion: string;
|
|
5
5
|
migrated: boolean;
|
|
6
6
|
}
|
|
7
7
|
/**
|
|
8
|
-
* Migrates content in memory along the
|
|
9
|
-
* Persisting the migrated
|
|
8
|
+
* Migrates content in memory along the adapter's migration chain (spec §7.2). Reading a version the adapter does not
|
|
9
|
+
* declare is refused with `UNSUPPORTED_FORMAT_VERSION`. Persisting the migrated content only happens on the next
|
|
10
|
+
* commit.
|
|
10
11
|
*/
|
|
11
|
-
export declare function migrateContent(
|
|
12
|
+
export declare function migrateContent(adapter: AnyFormatAdapter, content: unknown, formatVersion: string, locale?: string): MigrationResult;
|
|
12
13
|
//# sourceMappingURL=migrations.d.ts.map
|
package/dist/migrations.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAIrD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,MAAM,EACrB,MAAM,CAAC,EAAE,MAAM,GACd,eAAe,CAqCjB"}
|
package/dist/migrations.js
CHANGED
|
@@ -1,31 +1,37 @@
|
|
|
1
1
|
import { ArtifactError } from './errors.js';
|
|
2
2
|
import { t } from './i18n.js';
|
|
3
3
|
/**
|
|
4
|
-
* Migrates content in memory along the
|
|
5
|
-
* Persisting the migrated
|
|
4
|
+
* Migrates content in memory along the adapter's migration chain (spec §7.2). Reading a version the adapter does not
|
|
5
|
+
* declare is refused with `UNSUPPORTED_FORMAT_VERSION`. Persisting the migrated content only happens on the next
|
|
6
|
+
* commit.
|
|
6
7
|
*/
|
|
7
|
-
export function migrateContent(
|
|
8
|
-
if (
|
|
9
|
-
|
|
8
|
+
export function migrateContent(adapter, content, formatVersion, locale) {
|
|
9
|
+
if (formatVersion === adapter.formatVersion)
|
|
10
|
+
return { content, formatVersion, migrated: false };
|
|
11
|
+
if (!adapter.readableVersions.includes(formatVersion)) {
|
|
12
|
+
throw new ArtifactError('UNSUPPORTED_FORMAT_VERSION', t(locale, 'UNSUPPORTED_FORMAT_VERSION', {
|
|
13
|
+
found: formatVersion,
|
|
14
|
+
supported: adapter.readableVersions.join(', '),
|
|
15
|
+
format: adapter.format,
|
|
16
|
+
}), { details: { found: formatVersion, supported: adapter.readableVersions } });
|
|
10
17
|
}
|
|
11
|
-
if (schemaVersion === kind.version)
|
|
12
|
-
return { content, schemaVersion, migrated: false };
|
|
13
18
|
let current = content;
|
|
14
|
-
let version =
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const step = chain.find((migration) => migration.from === version);
|
|
19
|
+
let version = formatVersion;
|
|
20
|
+
while (version !== adapter.formatVersion) {
|
|
21
|
+
const step = adapter.migrations.find((migration) => migration.from === version);
|
|
18
22
|
if (!step) {
|
|
19
|
-
throw new ArtifactError('MIGRATION_FAILED', t(locale, 'MIGRATION_FAILED', { from: version, to:
|
|
23
|
+
throw new ArtifactError('MIGRATION_FAILED', t(locale, 'MIGRATION_FAILED', { from: version, to: adapter.formatVersion }));
|
|
20
24
|
}
|
|
21
25
|
try {
|
|
22
26
|
current = step.migrate(structuredClone(current));
|
|
23
27
|
}
|
|
24
28
|
catch (cause) {
|
|
25
|
-
throw new ArtifactError('MIGRATION_FAILED', t(locale, 'MIGRATION_FAILED', { from: step.from, to: step.to }), {
|
|
29
|
+
throw new ArtifactError('MIGRATION_FAILED', t(locale, 'MIGRATION_FAILED', { from: step.from, to: step.to }), {
|
|
30
|
+
cause,
|
|
31
|
+
});
|
|
26
32
|
}
|
|
27
33
|
version = step.to;
|
|
28
34
|
}
|
|
29
|
-
return { content: current,
|
|
35
|
+
return { content: current, formatVersion: version, migrated: true };
|
|
30
36
|
}
|
|
31
37
|
//# sourceMappingURL=migrations.js.map
|
package/dist/migrations.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,WAAW,CAAC;AAQ9B;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAyB,EACzB,OAAgB,EAChB,aAAqB,EACrB,MAAe;IAEf,IAAI,aAAa,KAAK,OAAO,CAAC,aAAa;QAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAChG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,aAAa,CACrB,4BAA4B,EAC5B,CAAC,CAAC,MAAM,EAAE,4BAA4B,EAAE;YACtC,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,EACF,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAC3E,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,GAAG,OAAO,CAAC;IACtB,IAAI,OAAO,GAAG,aAAa,CAAC;IAC5B,OAAO,OAAO,KAAK,OAAO,CAAC,aAAa,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QAChF,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,aAAa,CACrB,kBAAkB,EAClB,CAAC,CAAC,MAAM,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAC5E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC;YACH,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,aAAa,CACrB,kBAAkB,EAClB,CAAC,CAAC,MAAM,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,EAC/D;gBACE,KAAK;aACN,CACF,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;IACpB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACtE,CAAC"}
|
package/dist/projection.d.ts
CHANGED
|
@@ -1,10 +1,26 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ReadMode } from './adapter.js';
|
|
2
2
|
export declare const DEFAULT_CHARS_PER_TOKEN = 4;
|
|
3
|
+
export interface Projection {
|
|
4
|
+
text: string;
|
|
5
|
+
truncated: boolean;
|
|
6
|
+
/** Present when truncated: pass it back to continue reading. */
|
|
7
|
+
cursor?: string;
|
|
8
|
+
/** Outline of what was left out, so the model can jump with `range`. */
|
|
9
|
+
remainingOutline?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface ProjectionOptions {
|
|
12
|
+
mode: ReadMode;
|
|
13
|
+
/** Format-specific range: anchors, A1 ranges, declaration names or 1-based positions ("3-5"). */
|
|
14
|
+
range?: string;
|
|
15
|
+
maxTokens?: number;
|
|
16
|
+
cursor?: string;
|
|
17
|
+
charsPerToken?: number;
|
|
18
|
+
}
|
|
3
19
|
export declare function estimateTokens(text: string, charsPerToken?: number): number;
|
|
4
20
|
/** One unit of projected text. Truncation only happens between items. */
|
|
5
21
|
export interface ProjectionItem {
|
|
6
22
|
id: string;
|
|
7
|
-
/** Full text for `full` and `range` modes. */
|
|
23
|
+
/** Full text for `full`, `section` and `range` modes. */
|
|
8
24
|
text: string;
|
|
9
25
|
/** One-line summary used for `outline` and for the remaining outline after truncation. */
|
|
10
26
|
outline: string;
|
|
@@ -19,18 +35,18 @@ export interface PaginateOptions {
|
|
|
19
35
|
outlineOnly?: boolean;
|
|
20
36
|
}
|
|
21
37
|
/**
|
|
22
|
-
* Joins items under a token budget (spec §
|
|
23
|
-
* boundary and a cursor plus the outline of the remaining items is returned.
|
|
38
|
+
* Joins items under a token budget (spec §10.2 of the reading rules). When the budget runs out, the text is cut at an
|
|
39
|
+
* item boundary and a cursor plus the outline of the remaining items is returned.
|
|
24
40
|
*/
|
|
25
41
|
export declare function paginate(items: ProjectionItem[], options?: PaginateOptions): Projection;
|
|
26
|
-
/** Wraps a projection between explicit data markers so the model treats it as data, not instructions (spec §
|
|
42
|
+
/** Wraps a projection between explicit data markers so the model treats it as data, not instructions (spec §18). */
|
|
27
43
|
export declare function delimitProjection(artifactId: string, text: string): string;
|
|
28
44
|
/**
|
|
29
45
|
* Parses a range like "a..c", "3-5", "2" or "a,b" against an ordered id list. Numbers are 1-based positions.
|
|
30
46
|
* Returns the selected ids in document order, or undefined when the range does not match anything.
|
|
31
47
|
*/
|
|
32
48
|
export declare function selectRange(ids: readonly string[], range: string | undefined): string[] | undefined;
|
|
33
|
-
/** Applies mode/range/budget to a list of items.
|
|
49
|
+
/** Applies mode/range/budget to a list of items. Adapters with ordered items can use it directly. */
|
|
34
50
|
export declare function projectItems(items: ProjectionItem[], options: ProjectionOptions, extras?: {
|
|
35
51
|
header?: string;
|
|
36
52
|
footer?: string;
|
package/dist/projection.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../src/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../src/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,QAAQ,CAAC;IACf,iGAAiG;IACjG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,SAA0B,GAAG,MAAM,CAE5F;AAED,yEAAyE;AACzE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,0FAA0F;IAC1F,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yCAAyC;IACzC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAQD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,OAAO,GAAE,eAAoB,GAAG,UAAU,CA4B3F;AAED,oHAAoH;AACpH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAwBnG;AAYD,qGAAqG;AACrG,wBAAgB,YAAY,CAC1B,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,iBAAiB,EAC1B,MAAM,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,UAAU,CAgBZ;AAED,+CAA+C;AAC/C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAK,GAAG,MAAM,CAGvD"}
|
package/dist/projection.js
CHANGED
|
@@ -9,8 +9,8 @@ function decodeCursor(cursor) {
|
|
|
9
9
|
return match ? Number(match[1]) : 0;
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
|
-
* Joins items under a token budget (spec §
|
|
13
|
-
* boundary and a cursor plus the outline of the remaining items is returned.
|
|
12
|
+
* Joins items under a token budget (spec §10.2 of the reading rules). When the budget runs out, the text is cut at an
|
|
13
|
+
* item boundary and a cursor plus the outline of the remaining items is returned.
|
|
14
14
|
*/
|
|
15
15
|
export function paginate(items, options = {}) {
|
|
16
16
|
const start = Math.min(decodeCursor(options.cursor), items.length);
|
|
@@ -44,7 +44,7 @@ export function paginate(items, options = {}) {
|
|
|
44
44
|
parts.push(options.footer);
|
|
45
45
|
return { text: parts.join('\n'), truncated: false };
|
|
46
46
|
}
|
|
47
|
-
/** Wraps a projection between explicit data markers so the model treats it as data, not instructions (spec §
|
|
47
|
+
/** Wraps a projection between explicit data markers so the model treats it as data, not instructions (spec §18). */
|
|
48
48
|
export function delimitProjection(artifactId, text) {
|
|
49
49
|
return `<artifact-content id="${artifactId}">\n${text}\n</artifact-content>`;
|
|
50
50
|
}
|
|
@@ -92,10 +92,10 @@ function resolvePosition(ids, token) {
|
|
|
92
92
|
}
|
|
93
93
|
return undefined;
|
|
94
94
|
}
|
|
95
|
-
/** Applies mode/range/budget to a list of items.
|
|
95
|
+
/** Applies mode/range/budget to a list of items. Adapters with ordered items can use it directly. */
|
|
96
96
|
export function projectItems(items, options, extras = {}) {
|
|
97
97
|
let selected = items;
|
|
98
|
-
if (options.mode === 'range') {
|
|
98
|
+
if (options.mode === 'range' || options.mode === 'statements' || options.mode === 'section') {
|
|
99
99
|
const ids = selectRange(items.map((item) => item.id), options.range);
|
|
100
100
|
selected = ids ? items.filter((item) => ids.includes(item.id)) : [];
|
|
101
101
|
}
|
package/dist/projection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../src/projection.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../src/projection.ts"],"names":[],"mappings":"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"}
|
package/dist/registry.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { type AnyFormatAdapter, type FormatLimits } from './adapter.js';
|
|
1
2
|
import type { AssetResolver } from './assets.js';
|
|
2
|
-
import { type AnyArtifactKind, type KindLimits } from './kind.js';
|
|
3
3
|
import type { Logger } from './logger.js';
|
|
4
4
|
import { type Theme } from './theme.js';
|
|
5
5
|
export declare const EXPORT_FORMATS: readonly ['docx', 'xlsx', 'pptx', 'svg', 'png', 'pdf', 'md', 'html', 'csv', 'zip'];
|
|
@@ -11,14 +11,15 @@ export interface ExportContext {
|
|
|
11
11
|
assets: AssetResolver;
|
|
12
12
|
logger: Logger;
|
|
13
13
|
signal?: AbortSignal;
|
|
14
|
-
/** Records a fidelity degradation (spec §
|
|
14
|
+
/** Records a fidelity degradation (spec §13), returned to the caller as `warnings`. */
|
|
15
15
|
warn(message: string): void;
|
|
16
16
|
/** Exporter-specific options (e.g. `sheet` for per-sheet CSV). */
|
|
17
17
|
options?: Record<string, unknown>;
|
|
18
18
|
}
|
|
19
|
+
/** Exporters live beside the adapter (spec §8): `format` is the native source, `target` the file format. */
|
|
19
20
|
export interface ArtifactExporter<Content = unknown> {
|
|
20
|
-
|
|
21
|
-
|
|
21
|
+
format: string;
|
|
22
|
+
target: ExportFormat;
|
|
22
23
|
mimeType: string;
|
|
23
24
|
extension: string;
|
|
24
25
|
runtime: 'any' | 'node' | 'browser';
|
|
@@ -26,26 +27,26 @@ export interface ArtifactExporter<Content = unknown> {
|
|
|
26
27
|
}
|
|
27
28
|
export type AnyArtifactExporter = ArtifactExporter<any>;
|
|
28
29
|
export interface BatchLimits {
|
|
29
|
-
/** Operations per batch (spec §
|
|
30
|
+
/** Operations per batch (spec §7.5: 200). */
|
|
30
31
|
maxOperations: number;
|
|
31
|
-
/** Serialized envelope size in bytes (spec §
|
|
32
|
+
/** Serialized envelope size in bytes (spec §7.5: 5 MB). */
|
|
32
33
|
maxEnvelopeBytes: number;
|
|
33
34
|
}
|
|
34
35
|
export declare const DEFAULT_BATCH_LIMITS: BatchLimits;
|
|
35
36
|
export interface RegistryOptions {
|
|
36
|
-
|
|
37
|
+
formats?: AnyFormatAdapter[];
|
|
37
38
|
themes?: Theme[];
|
|
38
39
|
exporters?: AnyArtifactExporter[];
|
|
39
|
-
/** Per-
|
|
40
|
-
limits?: Record<string, Partial<
|
|
40
|
+
/** Per-format overrides of the default limits. */
|
|
41
|
+
limits?: Record<string, Partial<FormatLimits>>;
|
|
41
42
|
batch?: Partial<BatchLimits>;
|
|
42
43
|
}
|
|
43
44
|
export interface ArtifactRegistry {
|
|
44
|
-
register(
|
|
45
|
-
get(
|
|
46
|
-
has(
|
|
47
|
-
|
|
48
|
-
limits(
|
|
45
|
+
register(adapter: AnyFormatAdapter): void;
|
|
46
|
+
get(format: string, locale?: string): AnyFormatAdapter;
|
|
47
|
+
has(format: string): boolean;
|
|
48
|
+
formats(): AnyFormatAdapter[];
|
|
49
|
+
limits(format: string): FormatLimits;
|
|
49
50
|
readonly batch: BatchLimits;
|
|
50
51
|
registerTheme(theme: Theme): void;
|
|
51
52
|
theme(id: string, locale?: string): Theme;
|
|
@@ -54,8 +55,8 @@ export interface ArtifactRegistry {
|
|
|
54
55
|
registerExporter(exporter: AnyArtifactExporter, options?: {
|
|
55
56
|
replace?: boolean;
|
|
56
57
|
}): void;
|
|
57
|
-
exporter(
|
|
58
|
-
exporters(
|
|
58
|
+
exporter(format: string, target: string, locale?: string): AnyArtifactExporter;
|
|
59
|
+
exporters(format?: string): AnyArtifactExporter[];
|
|
59
60
|
}
|
|
60
61
|
export declare function createRegistry(options?: RegistryOptions): ArtifactRegistry;
|
|
61
62
|
//# sourceMappingURL=registry.d.ts.map
|
package/dist/registry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|