@proposit/proposit-core 3.3.0 → 3.4.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/README.md +99 -2
- package/dist/cli/commands/expressions.d.ts.map +1 -1
- package/dist/cli/commands/expressions.js +44 -0
- package/dist/cli/commands/expressions.js.map +1 -1
- package/dist/cli/commands/origins.d.ts +3 -0
- package/dist/cli/commands/origins.d.ts.map +1 -0
- package/dist/cli/commands/origins.js +264 -0
- package/dist/cli/commands/origins.js.map +1 -0
- package/dist/cli/commands/premises.d.ts.map +1 -1
- package/dist/cli/commands/premises.js +18 -2
- package/dist/cli/commands/premises.js.map +1 -1
- package/dist/cli/engine.d.ts.map +1 -1
- package/dist/cli/engine.js +5 -2
- package/dist/cli/engine.js.map +1 -1
- package/dist/cli/router.d.ts.map +1 -1
- package/dist/cli/router.js +1 -0
- package/dist/cli/router.js.map +1 -1
- package/dist/cli/schemata.d.ts +2 -0
- package/dist/cli/schemata.d.ts.map +1 -1
- package/dist/cli/schemata.js +14 -1
- package/dist/cli/schemata.js.map +1 -1
- package/dist/cli/storage/libraries.d.ts +4 -0
- package/dist/cli/storage/libraries.d.ts.map +1 -1
- package/dist/cli/storage/libraries.js +19 -0
- package/dist/cli/storage/libraries.js.map +1 -1
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/extensions/basics/schemata.d.ts +2 -0
- package/dist/extensions/basics/schemata.d.ts.map +1 -1
- package/dist/extensions/citations/ieee/index.d.ts +1 -0
- package/dist/extensions/citations/ieee/index.d.ts.map +1 -1
- package/dist/extensions/citations/ieee/index.js +1 -0
- package/dist/extensions/citations/ieee/index.js.map +1 -1
- package/dist/extensions/citations/ieee/origin-document.d.ts +452 -0
- package/dist/extensions/citations/ieee/origin-document.d.ts.map +1 -0
- package/dist/extensions/citations/ieee/origin-document.js +25 -0
- package/dist/extensions/citations/ieee/origin-document.js.map +1 -0
- package/dist/extensions/pipelines/base/finalize-response-v2.d.ts +24 -0
- package/dist/extensions/pipelines/base/finalize-response-v2.d.ts.map +1 -1
- package/dist/extensions/pipelines/base/finalize-response-v2.js +249 -8
- package/dist/extensions/pipelines/base/finalize-response-v2.js.map +1 -1
- package/dist/extensions/pipelines/base/index.d.ts +3 -1
- package/dist/extensions/pipelines/base/index.d.ts.map +1 -1
- package/dist/extensions/pipelines/base/index.js +2 -1
- package/dist/extensions/pipelines/base/index.js.map +1 -1
- package/dist/extensions/pipelines/base/source-anchors.d.ts +57 -0
- package/dist/extensions/pipelines/base/source-anchors.d.ts.map +1 -0
- package/dist/extensions/pipelines/base/source-anchors.js +174 -0
- package/dist/extensions/pipelines/base/source-anchors.js.map +1 -0
- package/dist/extensions/pipelines/ingestion/scholar/scholar.d.ts.map +1 -1
- package/dist/extensions/pipelines/ingestion/scholar/scholar.js +11 -1
- package/dist/extensions/pipelines/ingestion/scholar/scholar.js.map +1 -1
- package/dist/extensions/pipelines/ingestion/scribe/scribe.d.ts.map +1 -1
- package/dist/extensions/pipelines/ingestion/scribe/scribe.js +5 -0
- package/dist/extensions/pipelines/ingestion/scribe/scribe.js.map +1 -1
- package/dist/lib/consts.d.ts.map +1 -1
- package/dist/lib/consts.js +27 -0
- package/dist/lib/consts.js.map +1 -1
- package/dist/lib/core/argument-engine.d.ts +5 -3
- package/dist/lib/core/argument-engine.d.ts.map +1 -1
- package/dist/lib/core/argument-engine.js +7 -4
- package/dist/lib/core/argument-engine.js.map +1 -1
- package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts +2 -1
- package/dist/lib/core/interfaces/argument-engine.interfaces.d.ts.map +1 -1
- package/dist/lib/core/interfaces/index.d.ts +1 -1
- package/dist/lib/core/interfaces/index.d.ts.map +1 -1
- package/dist/lib/core/interfaces/library.interfaces.d.ts +72 -1
- package/dist/lib/core/interfaces/library.interfaces.d.ts.map +1 -1
- package/dist/lib/core/origin-library.d.ts +127 -0
- package/dist/lib/core/origin-library.d.ts.map +1 -0
- package/dist/lib/core/origin-library.js +520 -0
- package/dist/lib/core/origin-library.js.map +1 -0
- package/dist/lib/core/premise-engine.d.ts.map +1 -1
- package/dist/lib/core/premise-engine.js +20 -3
- package/dist/lib/core/premise-engine.js.map +1 -1
- package/dist/lib/core/proposit-core.d.ts +15 -8
- package/dist/lib/core/proposit-core.d.ts.map +1 -1
- package/dist/lib/core/proposit-core.js +28 -3
- package/dist/lib/core/proposit-core.js.map +1 -1
- package/dist/lib/grammar/types.d.ts +2 -2
- package/dist/lib/grammar/types.d.ts.map +1 -1
- package/dist/lib/grammar/types.js +2 -1
- package/dist/lib/grammar/types.js.map +1 -1
- package/dist/lib/grammar/validators/presentable.d.ts +19 -0
- package/dist/lib/grammar/validators/presentable.d.ts.map +1 -1
- package/dist/lib/grammar/validators/presentable.js +57 -0
- package/dist/lib/grammar/validators/presentable.js.map +1 -1
- package/dist/lib/index.d.ts +4 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +3 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/parsing/argument-parser.d.ts.map +1 -1
- package/dist/lib/parsing/argument-parser.js +4 -3
- package/dist/lib/parsing/argument-parser.js.map +1 -1
- package/dist/lib/schemata/index.d.ts +1 -0
- package/dist/lib/schemata/index.d.ts.map +1 -1
- package/dist/lib/schemata/index.js +1 -0
- package/dist/lib/schemata/index.js.map +1 -1
- package/dist/lib/schemata/origin.d.ts +48 -0
- package/dist/lib/schemata/origin.d.ts.map +1 -0
- package/dist/lib/schemata/origin.js +102 -0
- package/dist/lib/schemata/origin.js.map +1 -0
- package/dist/lib/schemata/propositional.d.ts +6 -0
- package/dist/lib/schemata/propositional.d.ts.map +1 -1
- package/dist/lib/schemata/propositional.js +13 -0
- package/dist/lib/schemata/propositional.js.map +1 -1
- package/dist/lib/types/checksum.d.ts +3 -0
- package/dist/lib/types/checksum.d.ts.map +1 -1
- package/dist/lib/types/validation.d.ts +19 -1
- package/dist/lib/types/validation.d.ts.map +1 -1
- package/dist/lib/types/validation.js +19 -0
- package/dist/lib/types/validation.js.map +1 -1
- package/dist/lib/utils/collections.d.ts +15 -0
- package/dist/lib/utils/collections.d.ts.map +1 -1
- package/dist/lib/utils/collections.js +17 -0
- package/dist/lib/utils/collections.js.map +1 -1
- package/dist/lib/utils/origin-text.d.ts +62 -0
- package/dist/lib/utils/origin-text.d.ts.map +1 -0
- package/dist/lib/utils/origin-text.js +204 -0
- package/dist/lib/utils/origin-text.js.map +1 -0
- package/dist/lib/utils/sha256.d.ts +6 -0
- package/dist/lib/utils/sha256.d.ts.map +1 -0
- package/dist/lib/utils/sha256.js +98 -0
- package/dist/lib/utils/sha256.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { TCoreClaim } from "../../schemata/claim.js";
|
|
2
2
|
import type { TCoreClaimConnection } from "../../schemata/claim-connection.js";
|
|
3
3
|
import type { TCoreArgumentForkRecord, TCorePremiseForkRecord, TCoreExpressionForkRecord, TCoreVariableForkRecord, TCoreClaimForkRecord } from "../../schemata/fork.js";
|
|
4
|
+
import type { TCoreOriginDocument, TCoreOriginLink, TCoreOriginAnchor, TOriginAnchorTargetType } from "../../schemata/origin.js";
|
|
4
5
|
import type { TInvariantValidationResult } from "../../types/validation.js";
|
|
5
6
|
import type { TCoreArgument, TCorePremise, TCorePropositionalExpression, TCorePropositionalVariable } from "../../schemata/index.js";
|
|
6
7
|
import type { TArgumentEngineSnapshot } from "../argument-engine.js";
|
|
@@ -202,6 +203,68 @@ export type TClaimConnectionLibrarySnapshot<TConn extends TCoreClaimConnection =
|
|
|
202
203
|
/** All claim-connection entities in the library. */
|
|
203
204
|
connections: TConn[];
|
|
204
205
|
};
|
|
206
|
+
/**
|
|
207
|
+
* Read-only view of an origin library — the source texts an argument was
|
|
208
|
+
* built from, their association with argument versions, and the spans of
|
|
209
|
+
* those texts individual argument parts derive from.
|
|
210
|
+
*/
|
|
211
|
+
export interface TOriginLookup<TDocument extends TCoreOriginDocument = TCoreOriginDocument, TLink extends TCoreOriginLink = TCoreOriginLink, TAnchor extends TCoreOriginAnchor = TCoreOriginAnchor> {
|
|
212
|
+
/** Returns the document with the given ID, or `undefined`. */
|
|
213
|
+
getDocument(id: string): TDocument | undefined;
|
|
214
|
+
/** Returns the link with the given ID, or `undefined`. */
|
|
215
|
+
getLink(id: string): TLink | undefined;
|
|
216
|
+
/** Returns the anchor with the given ID, or `undefined`. */
|
|
217
|
+
getAnchor(id: string): TAnchor | undefined;
|
|
218
|
+
/** Returns every link attached to the given argument version. */
|
|
219
|
+
getLinksForArgument(argumentId: string, argumentVersion: number): TLink[];
|
|
220
|
+
/** Returns every anchor recorded against the given argument version. */
|
|
221
|
+
getAnchorsForArgument(argumentId: string, argumentVersion: number): TAnchor[];
|
|
222
|
+
/**
|
|
223
|
+
* Returns every anchor pointing at one target — a claim expression, a
|
|
224
|
+
* premise, or the argument itself.
|
|
225
|
+
*/
|
|
226
|
+
getAnchorsForTarget(targetType: TOriginAnchorTargetType, targetId: string): TAnchor[];
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Full management surface of an origin library: the read-only lookup plus
|
|
230
|
+
* creation, removal, snapshotting, and validation.
|
|
231
|
+
*/
|
|
232
|
+
export interface TOriginLibraryManagement<TDocument extends TCoreOriginDocument = TCoreOriginDocument, TLink extends TCoreOriginLink = TCoreOriginLink, TAnchor extends TCoreOriginAnchor = TCoreOriginAnchor> extends TOriginLookup<TDocument, TLink, TAnchor> {
|
|
233
|
+
/**
|
|
234
|
+
* Creates a document. The supplied text is normalized and its SHA-256
|
|
235
|
+
* digest computed by the library; neither is a caller input.
|
|
236
|
+
*/
|
|
237
|
+
addDocument(document: Omit<TDocument, "checksum" | "digest">): TDocument;
|
|
238
|
+
/** Attaches a document to one argument version with a stance. */
|
|
239
|
+
addLink(link: Omit<TLink, "checksum">): TLink;
|
|
240
|
+
/** Records the span of a document that one argument part derives from. */
|
|
241
|
+
addAnchor(anchor: Omit<TAnchor, "checksum">): TAnchor;
|
|
242
|
+
/** Removes a document. Refuses while any link or anchor still references it. */
|
|
243
|
+
removeDocument(id: string): TDocument;
|
|
244
|
+
/** Removes a link. */
|
|
245
|
+
removeLink(id: string): TLink;
|
|
246
|
+
/** Removes an anchor. */
|
|
247
|
+
removeAnchor(id: string): TAnchor;
|
|
248
|
+
/** Every document in the library. */
|
|
249
|
+
getAllDocuments(): TDocument[];
|
|
250
|
+
/** Every link in the library. */
|
|
251
|
+
getAllLinks(): TLink[];
|
|
252
|
+
/** Every anchor in the library. */
|
|
253
|
+
getAllAnchors(): TAnchor[];
|
|
254
|
+
/** Serializable snapshot of the whole library. */
|
|
255
|
+
snapshot(): TOriginLibrarySnapshot<TDocument, TLink, TAnchor>;
|
|
256
|
+
/** Checks every entity against the schema and the library's invariants. */
|
|
257
|
+
validate(): TInvariantValidationResult;
|
|
258
|
+
}
|
|
259
|
+
/** Serializable snapshot of an `OriginLibrary`. */
|
|
260
|
+
export type TOriginLibrarySnapshot<TDocument extends TCoreOriginDocument = TCoreOriginDocument, TLink extends TCoreOriginLink = TCoreOriginLink, TAnchor extends TCoreOriginAnchor = TCoreOriginAnchor> = {
|
|
261
|
+
/** All origin documents in the library. */
|
|
262
|
+
documents: TDocument[];
|
|
263
|
+
/** All argument-version-to-document links. */
|
|
264
|
+
links: TLink[];
|
|
265
|
+
/** All origin anchors. */
|
|
266
|
+
anchors: TAnchor[];
|
|
267
|
+
};
|
|
205
268
|
/**
|
|
206
269
|
* Serializable snapshot of a `ClaimLibrary`. Contains all claim entities
|
|
207
270
|
* across all IDs and versions.
|
|
@@ -239,7 +302,7 @@ export type TArgumentLibrarySnapshot<TArg extends TCoreArgument = TCoreArgument,
|
|
|
239
302
|
* all managed libraries: arguments, claims, claim citations, axioms, and fork
|
|
240
303
|
* records.
|
|
241
304
|
*/
|
|
242
|
-
export type TPropositCoreSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TClaim extends TCoreClaim = TCoreClaim, TCitation extends TCoreClaimConnection = TCoreClaimConnection, TAxiom extends TCoreClaimConnection = TCoreClaimConnection, TArgFork extends TCoreArgumentForkRecord = TCoreArgumentForkRecord, TPremiseFork extends TCorePremiseForkRecord = TCorePremiseForkRecord, TExprFork extends TCoreExpressionForkRecord = TCoreExpressionForkRecord, TVarFork extends TCoreVariableForkRecord = TCoreVariableForkRecord, TClaimFork extends TCoreClaimForkRecord = TCoreClaimForkRecord> = {
|
|
305
|
+
export type TPropositCoreSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable, TClaim extends TCoreClaim = TCoreClaim, TCitation extends TCoreClaimConnection = TCoreClaimConnection, TAxiom extends TCoreClaimConnection = TCoreClaimConnection, TArgFork extends TCoreArgumentForkRecord = TCoreArgumentForkRecord, TPremiseFork extends TCorePremiseForkRecord = TCorePremiseForkRecord, TExprFork extends TCoreExpressionForkRecord = TCoreExpressionForkRecord, TVarFork extends TCoreVariableForkRecord = TCoreVariableForkRecord, TClaimFork extends TCoreClaimForkRecord = TCoreClaimForkRecord, TOriginDocument extends TCoreOriginDocument = TCoreOriginDocument, TOriginLink extends TCoreOriginLink = TCoreOriginLink, TOriginAnchor extends TCoreOriginAnchor = TCoreOriginAnchor> = {
|
|
243
306
|
/** Snapshot of all argument engines. */
|
|
244
307
|
arguments: TArgumentLibrarySnapshot<TArg, TPremise, TExpr, TVar>;
|
|
245
308
|
/** Snapshot of the claim library. */
|
|
@@ -250,6 +313,14 @@ export type TPropositCoreSnapshot<TArg extends TCoreArgument = TCoreArgument, TP
|
|
|
250
313
|
axioms: TClaimConnectionLibrarySnapshot<TAxiom>;
|
|
251
314
|
/** Snapshot of the fork library. */
|
|
252
315
|
forks: TForkLibrarySnapshot<TArgFork, TPremiseFork, TExprFork, TVarFork, TClaimFork>;
|
|
316
|
+
/**
|
|
317
|
+
* Snapshot of the origin library. Optional on input only: a snapshot
|
|
318
|
+
* written before origin data existed carries no such slot, and absence is
|
|
319
|
+
* unambiguously "no origin data" — unlike the axiom slot, no earlier field
|
|
320
|
+
* ever held it. `PropositCore.fromSnapshot` defaults it to an empty
|
|
321
|
+
* library rather than refusing the payload.
|
|
322
|
+
*/
|
|
323
|
+
origins?: TOriginLibrarySnapshot<TOriginDocument, TOriginLink, TOriginAnchor>;
|
|
253
324
|
};
|
|
254
325
|
/**
|
|
255
326
|
* Shared configuration options for `PropositCore`. These config values are
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"library.interfaces.d.ts","sourceRoot":"","sources":["../../../../src/lib/core/interfaces/library.interfaces.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"library.interfaces.d.ts","sourceRoot":"","sources":["../../../../src/lib/core/interfaces/library.interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import type { TCoreOriginDocument, TCoreOriginLink, TCoreOriginAnchor, TOriginAnchorTargetType } from "../schemata/origin.js";
|
|
2
|
+
import type { TCoreChecksumConfig } from "../types/checksum.js";
|
|
3
|
+
import type { TOriginLibraryManagement, TOriginLibrarySnapshot } from "./interfaces/library.interfaces.js";
|
|
4
|
+
import type { TInvariantValidationResult } from "../types/validation.js";
|
|
5
|
+
/**
|
|
6
|
+
* Holds the source texts arguments were built from, their per-version
|
|
7
|
+
* associations, and the spans of those texts individual argument parts derive
|
|
8
|
+
* from.
|
|
9
|
+
*
|
|
10
|
+
* Documents are immutable: there is no update path, because every anchor is
|
|
11
|
+
* an offset into a document's exact text. Correcting a source means replacing
|
|
12
|
+
* the document, which invalidates its anchors by design.
|
|
13
|
+
*
|
|
14
|
+
* The text is opaque content. This class digests it, measures it, and slices
|
|
15
|
+
* it by index; it never parses, renders, or interprets it.
|
|
16
|
+
*
|
|
17
|
+
* An anchor is only meaningful alongside a link: the link carries the stance.
|
|
18
|
+
* `validate()` therefore requires every anchor's
|
|
19
|
+
* `(argumentId, argumentVersion, documentId)` to have a matching link, which
|
|
20
|
+
* fixes the persistence order for consumers — document, then link, then
|
|
21
|
+
* anchors — and makes removing a link that still has anchors a violation.
|
|
22
|
+
*
|
|
23
|
+
* Like the claim-connection libraries, this one mints no identifiers —
|
|
24
|
+
* callers supply them — and takes no argument lookup: an argument library is
|
|
25
|
+
* constructed after this one, so cross-checking argument existence here would
|
|
26
|
+
* invert the dependency order. What it does enforce is everything decidable
|
|
27
|
+
* from its own contents, most importantly that an anchor's span slices out
|
|
28
|
+
* the anchor's own quote.
|
|
29
|
+
*/
|
|
30
|
+
export declare class OriginLibrary<TDocument extends TCoreOriginDocument = TCoreOriginDocument, TLink extends TCoreOriginLink = TCoreOriginLink, TAnchor extends TCoreOriginAnchor = TCoreOriginAnchor> implements TOriginLibraryManagement<TDocument, TLink, TAnchor> {
|
|
31
|
+
private documents;
|
|
32
|
+
private links;
|
|
33
|
+
private anchors;
|
|
34
|
+
private linksByArgument;
|
|
35
|
+
private anchorsByArgument;
|
|
36
|
+
private anchorsByTarget;
|
|
37
|
+
/**
|
|
38
|
+
* Documents whose stored text has been confirmed normalized and matching
|
|
39
|
+
* its digest, keyed by id and pinned to the exact text that passed. A
|
|
40
|
+
* document is immutable, so a body that has been checked once cannot
|
|
41
|
+
* change — but keying on the text rather than the id alone is what stops a
|
|
42
|
+
* tampered snapshot from inheriting a previous instance's verdict.
|
|
43
|
+
*/
|
|
44
|
+
private verifiedDocumentBodies;
|
|
45
|
+
/** Code-point index per document, reused across that document's anchors. */
|
|
46
|
+
private documentIndexes;
|
|
47
|
+
/**
|
|
48
|
+
* Violations present as of the last accepted state, so a mutation can be
|
|
49
|
+
* judged on what it *introduced* rather than on whether everything is
|
|
50
|
+
* clean afterwards. Carried between mutations rather than recomputed, so
|
|
51
|
+
* this costs no extra `validate()` pass.
|
|
52
|
+
*/
|
|
53
|
+
private knownViolationKeys;
|
|
54
|
+
private checksumConfig?;
|
|
55
|
+
constructor(options?: {
|
|
56
|
+
checksumConfig?: TCoreChecksumConfig;
|
|
57
|
+
});
|
|
58
|
+
/** Stable identity for a violation, so two validation runs can be compared. */
|
|
59
|
+
private static violationKey;
|
|
60
|
+
private static addToIndex;
|
|
61
|
+
private reindex;
|
|
62
|
+
private restoreFromSnapshot;
|
|
63
|
+
/**
|
|
64
|
+
* Runs a mutation, then rolls back and throws if the mutation *introduced*
|
|
65
|
+
* a violation.
|
|
66
|
+
*
|
|
67
|
+
* Introduced, not "left the library inconsistent". Demanding a clean
|
|
68
|
+
* library after every mutation makes an already-inconsistent one
|
|
69
|
+
* unrepairable: two anchors that both violate the same invariant each keep
|
|
70
|
+
* the other's removal from being accepted, and every mutation fails
|
|
71
|
+
* forever. A library that validates has to stay repairable, and a snapshot
|
|
72
|
+
* assembled by a consumer — or written by an older build — can arrive
|
|
73
|
+
* inconsistent through no fault of the mutation being attempted.
|
|
74
|
+
*
|
|
75
|
+
* One rule covers both directions: an `addAnchor` with no link introduces a
|
|
76
|
+
* violation and is still refused on a broken library as on a clean one, and
|
|
77
|
+
* a `removeLink` that orphans existing anchors introduces theirs.
|
|
78
|
+
*
|
|
79
|
+
* ponytail: validating the whole library after every mutation is O(n²) in
|
|
80
|
+
* anchor count across a bulk import — each of n `addAnchor` calls re-checks
|
|
81
|
+
* the n anchors already present. Each check is one short slice comparison
|
|
82
|
+
* against a cached index, so a few thousand anchors is still milliseconds;
|
|
83
|
+
* scope the validation to the entity that changed if a caller ever needs
|
|
84
|
+
* tens of thousands. The document-body checks, which scaled with document
|
|
85
|
+
* *size* rather than count, are already skipped once verified.
|
|
86
|
+
*
|
|
87
|
+
* ponytail: the code-point indexes those checks rely on are retained for
|
|
88
|
+
* the life of every document, uncapped — roughly 10x the text size, so 10 MB
|
|
89
|
+
* of documents holds about 100 MB of heap. Peak is unchanged; steady state
|
|
90
|
+
* is not. If it bites, index only documents that have anchors and drop the
|
|
91
|
+
* index with their last anchor.
|
|
92
|
+
*/
|
|
93
|
+
private withValidation;
|
|
94
|
+
/**
|
|
95
|
+
* Creates a document from raw text. The text is normalized and digested
|
|
96
|
+
* here rather than by the caller, so every document in the library shares
|
|
97
|
+
* one coordinate system and one identity rule.
|
|
98
|
+
*/
|
|
99
|
+
addDocument(document: Omit<TDocument, "checksum" | "digest">): TDocument;
|
|
100
|
+
addLink(link: Omit<TLink, "checksum">): TLink;
|
|
101
|
+
addAnchor(anchor: Omit<TAnchor, "checksum">): TAnchor;
|
|
102
|
+
/**
|
|
103
|
+
* Removes a document. Refuses while a link or an anchor still references
|
|
104
|
+
* it — dropping it silently would leave dangling references that only
|
|
105
|
+
* `validate()` would notice, and only later.
|
|
106
|
+
*/
|
|
107
|
+
removeDocument(id: string): TDocument;
|
|
108
|
+
removeLink(id: string): TLink;
|
|
109
|
+
removeAnchor(id: string): TAnchor;
|
|
110
|
+
getDocument(id: string): TDocument | undefined;
|
|
111
|
+
getLink(id: string): TLink | undefined;
|
|
112
|
+
getAnchor(id: string): TAnchor | undefined;
|
|
113
|
+
getLinksForArgument(argumentId: string, argumentVersion: number): TLink[];
|
|
114
|
+
getAnchorsForArgument(argumentId: string, argumentVersion: number): TAnchor[];
|
|
115
|
+
getAnchorsForTarget(targetType: TOriginAnchorTargetType, targetId: string): TAnchor[];
|
|
116
|
+
getAllDocuments(): TDocument[];
|
|
117
|
+
getAllLinks(): TLink[];
|
|
118
|
+
getAllAnchors(): TAnchor[];
|
|
119
|
+
snapshot(): TOriginLibrarySnapshot<TDocument, TLink, TAnchor>;
|
|
120
|
+
/** Restores an origin library from a snapshot, rebuilding its indexes. */
|
|
121
|
+
static fromSnapshot<TDocument extends TCoreOriginDocument = TCoreOriginDocument, TLink extends TCoreOriginLink = TCoreOriginLink, TAnchor extends TCoreOriginAnchor = TCoreOriginAnchor>(snapshot: TOriginLibrarySnapshot<TDocument, TLink, TAnchor>, options?: {
|
|
122
|
+
checksumConfig?: TCoreChecksumConfig;
|
|
123
|
+
}): OriginLibrary<TDocument, TLink, TAnchor>;
|
|
124
|
+
validate(): TInvariantValidationResult;
|
|
125
|
+
private fieldsFor;
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=origin-library.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"origin-library.d.ts","sourceRoot":"","sources":["../../../src/lib/core/origin-library.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,uBAAuB,EAC1B,MAAM,uBAAuB,CAAA;AAM9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAU/D,OAAO,KAAK,EACR,wBAAwB,EACxB,sBAAsB,EACzB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,KAAK,EACR,0BAA0B,EAE7B,MAAM,wBAAwB,CAAA;AAgC/B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,aAAa,CACtB,SAAS,SAAS,mBAAmB,GAAG,mBAAmB,EAC3D,KAAK,SAAS,eAAe,GAAG,eAAe,EAC/C,OAAO,SAAS,iBAAiB,GAAG,iBAAiB,CACvD,YAAW,wBAAwB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC;IAC5D,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,eAAe,CAA0B;IACjD;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB,CAAqB;IACnD,4EAA4E;IAC5E,OAAO,CAAC,eAAe,CAA8B;IACrD;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,cAAc,CAAC,CAAqB;gBAEhC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,mBAAmB,CAAA;KAAE;IAa9D,+EAA+E;IAC/E,OAAO,CAAC,MAAM,CAAC,YAAY;IAI3B,OAAO,CAAC,MAAM,CAAC,UAAU;IAazB,OAAO,CAAC,OAAO;IAyBf,OAAO,CAAC,mBAAmB;IAmB3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,OAAO,CAAC,cAAc;IA2BtB;;;;OAIG;IACI,WAAW,CACd,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,QAAQ,CAAC,GACjD,SAAS;IAsCL,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,KAAK;IA2B7C,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,OAAO;IAgC5D;;;;OAIG;IACI,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS;IAiCrC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK;IAqB7B,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAwBjC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAI9C,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAItC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAI1C,mBAAmB,CACtB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,GACxB,KAAK,EAAE;IAUH,qBAAqB,CACxB,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,MAAM,GACxB,OAAO,EAAE;IAUL,mBAAmB,CACtB,UAAU,EAAE,uBAAuB,EACnC,QAAQ,EAAE,MAAM,GACjB,OAAO,EAAE;IAQL,eAAe,IAAI,SAAS,EAAE;IAI9B,WAAW,IAAI,KAAK,EAAE;IAItB,aAAa,IAAI,OAAO,EAAE;IAI1B,QAAQ,IAAI,sBAAsB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC;IAQpE,0EAA0E;WAC5D,YAAY,CACtB,SAAS,SAAS,mBAAmB,GAAG,mBAAmB,EAC3D,KAAK,SAAS,eAAe,GAAG,eAAe,EAC/C,OAAO,SAAS,iBAAiB,GAAG,iBAAiB,EAErD,QAAQ,EAAE,sBAAsB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EAC3D,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,mBAAmB,CAAA;KAAE,GACnD,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC;IAYpC,QAAQ,IAAI,0BAA0B;IA8I7C,OAAO,CAAC,SAAS;CAKpB"}
|