@plurnk/plurnk-schemes 1.4.0 → 1.6.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 +36 -14
- package/SPEC.md +136 -54
- package/dist/Manifest.d.ts.map +1 -1
- package/dist/Manifest.js +2 -1
- package/dist/Manifest.js.map +1 -1
- package/dist/Matcher.js +2 -2
- package/dist/Matcher.js.map +1 -1
- package/dist/OutputScheme.js +1 -1
- package/dist/OutputScheme.js.map +1 -1
- package/dist/Results.d.ts +16 -1
- package/dist/Results.d.ts.map +1 -1
- package/dist/Results.js +36 -6
- package/dist/Results.js.map +1 -1
- package/dist/Slicer.d.ts +7 -16
- package/dist/Slicer.d.ts.map +1 -1
- package/dist/Slicer.js +87 -41
- package/dist/Slicer.js.map +1 -1
- package/dist/ctx.d.ts +41 -36
- package/dist/ctx.d.ts.map +1 -1
- package/dist/edit-receipt.d.ts +1 -0
- package/dist/edit-receipt.d.ts.map +1 -1
- package/dist/edit-statement.d.ts +5 -0
- package/dist/edit-statement.d.ts.map +1 -0
- package/dist/edit-statement.js +2 -0
- package/dist/edit-statement.js.map +1 -0
- package/dist/handler.d.ts +10 -5
- package/dist/handler.d.ts.map +1 -1
- package/dist/handler.js +6 -6
- package/dist/handler.js.map +1 -1
- package/dist/index.d.ts +6 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +4 -4
- package/dist/DefaultRead.d.ts +0 -15
- package/dist/DefaultRead.d.ts.map +0 -1
- package/dist/DefaultRead.js +0 -51
- package/dist/DefaultRead.js.map +0 -1
package/dist/ctx.d.ts
CHANGED
|
@@ -1,24 +1,28 @@
|
|
|
1
1
|
import type { WriterTier } from "./types.ts";
|
|
2
|
-
import type {
|
|
2
|
+
import type { FindStatement, RangeExtent, ReadStatement, SendStatement } from "@plurnk/plurnk-contracts";
|
|
3
3
|
import type { TextRegion } from "@plurnk/plurnk-contracts";
|
|
4
|
-
import type {
|
|
4
|
+
import type { ResolvedEditStatement } from "./edit-statement.ts";
|
|
5
|
+
import type { ChannelProducerResult, MatchEvidence, SchemeResult } from "./Results.ts";
|
|
5
6
|
import type { EditBatchReceipt, EditBatchResult } from "./edit-receipt.ts";
|
|
6
|
-
export type
|
|
7
|
+
export type TerminalChannelState = "closed" | "errored";
|
|
8
|
+
export type ChannelState = "static" | "active" | TerminalChannelState;
|
|
7
9
|
export interface EntryData {
|
|
8
10
|
readonly channels: Record<string, {
|
|
9
11
|
content: string;
|
|
10
12
|
mimetype: string;
|
|
11
13
|
state?: ChannelState;
|
|
14
|
+
producerResult?: ChannelProducerResult;
|
|
12
15
|
}>;
|
|
13
|
-
readonly
|
|
16
|
+
readonly attributes?: Readonly<Record<string, unknown>>;
|
|
14
17
|
}
|
|
15
18
|
export interface StoredEntryData {
|
|
16
19
|
readonly channels: Record<string, {
|
|
17
20
|
content: string;
|
|
18
21
|
mimetype: string;
|
|
19
22
|
state: ChannelState;
|
|
23
|
+
producerResult?: ChannelProducerResult;
|
|
20
24
|
}>;
|
|
21
|
-
readonly
|
|
25
|
+
readonly attributes?: Readonly<Record<string, unknown>>;
|
|
22
26
|
}
|
|
23
27
|
export type EntryOwner = "commons" | "worker";
|
|
24
28
|
export interface EntryAddress {
|
|
@@ -36,36 +40,47 @@ export interface EntryReadResult extends SchemeResult {
|
|
|
36
40
|
readonly startLine?: number | null;
|
|
37
41
|
readonly region?: TextRegion;
|
|
38
42
|
readonly matches?: ReadonlyArray<MatchEvidence>;
|
|
43
|
+
readonly range?: RangeExtent;
|
|
39
44
|
readonly reason?: string;
|
|
40
45
|
readonly awaitWorker?: string;
|
|
41
46
|
}
|
|
42
|
-
export
|
|
47
|
+
export type EntryStreamLifecycle = {
|
|
48
|
+
readonly state: "active";
|
|
49
|
+
readonly seconds: number;
|
|
50
|
+
} | {
|
|
51
|
+
readonly state: "closed" | "killed" | "failed";
|
|
52
|
+
readonly status: number;
|
|
53
|
+
};
|
|
54
|
+
export interface EntryCatalogChannel {
|
|
43
55
|
readonly path: string;
|
|
44
|
-
readonly
|
|
45
|
-
readonly
|
|
46
|
-
readonly
|
|
47
|
-
|
|
48
|
-
tokens: number;
|
|
49
|
-
lines: number;
|
|
50
|
-
}>>;
|
|
51
|
-
readonly matches?: ReadonlyArray<MatchEvidence>;
|
|
56
|
+
readonly mimetype: string;
|
|
57
|
+
readonly tokens: number;
|
|
58
|
+
readonly lines: number;
|
|
59
|
+
readonly parseIssues?: number;
|
|
52
60
|
}
|
|
53
|
-
export interface
|
|
54
|
-
readonly
|
|
55
|
-
readonly
|
|
61
|
+
export interface EntryCatalogDefaultChannel extends EntryCatalogChannel {
|
|
62
|
+
readonly stream?: EntryStreamLifecycle;
|
|
63
|
+
readonly matchLocationCount?: number;
|
|
56
64
|
}
|
|
65
|
+
export type EntryCatalogItem = readonly [EntryCatalogDefaultChannel, ...EntryCatalogChannel[]];
|
|
66
|
+
export interface EntryCatalogScope {
|
|
67
|
+
readonly path: string;
|
|
68
|
+
readonly items: number;
|
|
69
|
+
readonly tokens: number;
|
|
70
|
+
}
|
|
71
|
+
export type EntryCatalogScopeGroup = readonly [EntryCatalogScope];
|
|
57
72
|
export interface EntryFindResult extends SchemeResult {
|
|
58
73
|
readonly content: string | null;
|
|
59
74
|
readonly mimetype: string | null;
|
|
60
|
-
readonly results: ReadonlyArray<EntryCatalogItem>;
|
|
75
|
+
readonly results: ReadonlyArray<EntryCatalogItem | EntryCatalogScopeGroup | MatchEvidence>;
|
|
61
76
|
readonly itemsTokenTotal: number;
|
|
62
|
-
readonly
|
|
63
|
-
readonly
|
|
64
|
-
readonly
|
|
65
|
-
readonly
|
|
77
|
+
readonly returnedItemsTokenTotal: number;
|
|
78
|
+
readonly matchingPathCount: number;
|
|
79
|
+
readonly matchLocationCount: number;
|
|
80
|
+
readonly range?: RangeExtent;
|
|
66
81
|
}
|
|
67
82
|
export interface EntryOperationCaps {
|
|
68
|
-
editBatch(statements: readonly
|
|
83
|
+
editBatch(statements: readonly ResolvedEditStatement[], owner?: EntryOwner): Promise<EntryEditResult>;
|
|
69
84
|
read(statement: ReadStatement, owner?: EntryOwner): Promise<EntryReadResult>;
|
|
70
85
|
find(statement: FindStatement, owner?: EntryOwner): Promise<EntryFindResult>;
|
|
71
86
|
send(statement: SendStatement, owner?: EntryOwner): Promise<SchemeResult>;
|
|
@@ -88,14 +103,6 @@ export interface ChannelCaps {
|
|
|
88
103
|
replace(pathname: string, channel: string, content: string): Promise<SchemeResult>;
|
|
89
104
|
setState(pathname: string, channel: string, state: ChannelState): Promise<SchemeResult>;
|
|
90
105
|
}
|
|
91
|
-
export interface TagListResult extends SchemeResult {
|
|
92
|
-
readonly tags: ReadonlyArray<string>;
|
|
93
|
-
}
|
|
94
|
-
export interface TagCaps {
|
|
95
|
-
add(pathname: string, tags: ReadonlyArray<string>): Promise<SchemeResult>;
|
|
96
|
-
remove(pathname: string, tags: ReadonlyArray<string>): Promise<SchemeResult>;
|
|
97
|
-
list(pathname: string): Promise<TagListResult>;
|
|
98
|
-
}
|
|
99
106
|
export interface NotifyCaps {
|
|
100
107
|
streamEvent(pathname: string, channel: string, state: ChannelState, contentLength: number): void;
|
|
101
108
|
}
|
|
@@ -110,15 +117,14 @@ export interface ProjectionCaps {
|
|
|
110
117
|
readableBytes(chunks: AsyncIterable<Uint8Array>, mimetype: string): Promise<ProjectedText | null>;
|
|
111
118
|
identity(mimetype: string): Promise<string>;
|
|
112
119
|
isBinary(mimetype: string): Promise<boolean>;
|
|
120
|
+
parseIssues(content: string, mimetype: string): Promise<number | undefined>;
|
|
113
121
|
}
|
|
114
122
|
export interface StreamSubscription extends AbortSignal {
|
|
115
123
|
notifyChunk(channel: string, chunk: string, mimetype?: string): Promise<void>;
|
|
116
|
-
close(result: SchemeResult, summary?: string): Promise<void>;
|
|
124
|
+
close(result: SchemeResult, summary?: string, channelStates?: Readonly<Record<string, TerminalChannelState>>): Promise<void>;
|
|
117
125
|
}
|
|
118
126
|
export interface SubscriptionCaps extends Pick<StreamSubscription, "notifyChunk" | "close"> {
|
|
119
|
-
open(pathname: string, handle: SubscriptionHandle
|
|
120
|
-
publishedChannel?: string;
|
|
121
|
-
}): Promise<StreamSubscription>;
|
|
127
|
+
open(pathname: string, handle: SubscriptionHandle): Promise<StreamSubscription>;
|
|
122
128
|
}
|
|
123
129
|
export interface SubscriptionHandle {
|
|
124
130
|
cancel(): void | Promise<void>;
|
|
@@ -132,7 +138,6 @@ export interface SchemeCtx {
|
|
|
132
138
|
readonly signal: AbortSignal | undefined;
|
|
133
139
|
readonly entries: EntryCaps;
|
|
134
140
|
readonly channels: ChannelCaps;
|
|
135
|
-
readonly tags: TagCaps;
|
|
136
141
|
readonly notify: NotifyCaps;
|
|
137
142
|
readonly projection: ProjectionCaps;
|
|
138
143
|
readonly subscriptions: SubscriptionCaps;
|
package/dist/ctx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ctx.d.ts","sourceRoot":"","sources":["../src/ctx.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"ctx.d.ts","sourceRoot":"","sources":["../src/ctx.ts"],"names":[],"mappings":"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"}
|
package/dist/edit-receipt.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ interface EditReceiptHead {
|
|
|
13
13
|
readonly unit: EditReceiptUnit;
|
|
14
14
|
readonly before: number;
|
|
15
15
|
readonly after: number;
|
|
16
|
+
readonly parseIssues?: number;
|
|
16
17
|
}
|
|
17
18
|
export interface AppliedEditBatchReceipt extends EditReceiptHead {
|
|
18
19
|
readonly effects: readonly EditEffectReceipt[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit-receipt.d.ts","sourceRoot":"","sources":["../src/edit-receipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,YAAY,CAAC;AAErD,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,UAAU,eAAe;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"edit-receipt.d.ts","sourceRoot":"","sources":["../src/edit-receipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,YAAY,CAAC;AAErD,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,UAAU,eAAe;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC5D,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,mCAAoC,SAAQ,eAAe;IACxE,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;CAC3C;AAED,MAAM,MAAM,gBAAgB,GACtB,uBAAuB,GACvB,mCAAmC,CAAC;AAE1C,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACvD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;CACtC;AAED,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC1D,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,MAAM,MAAM,WAAW,GAAG,kBAAkB,GAAG,qBAAqB,CAAC;AAErE,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACjD,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAClD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit-statement.d.ts","sourceRoot":"","sources":["../src/edit-statement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAK1E,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,GAAG;IACpE,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;CAC1C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit-statement.js","sourceRoot":"","sources":["../src/edit-statement.ts"],"names":[],"mappings":""}
|
package/dist/handler.d.ts
CHANGED
|
@@ -1,19 +1,24 @@
|
|
|
1
|
-
import type { FindStatement,
|
|
1
|
+
import type { FindStatement, SendStatement, ExecStatement, WorkStatement, ForkStatement, KillStatement, PlanStatement, ParsedPath } from "@plurnk/plurnk-contracts";
|
|
2
2
|
import type { PluginAttributionSource } from "@plurnk/plurnk-meta";
|
|
3
3
|
import type { EntryAddress, ProposalApplyRequest, ProposalApplyResult, SchemeCtx } from "./ctx.ts";
|
|
4
4
|
import type { EditBatchResult } from "./edit-receipt.ts";
|
|
5
|
-
import type { SchemeResult } from "./Results.ts";
|
|
5
|
+
import type { RepresentationPreparationResult, SchemeResult } from "./Results.ts";
|
|
6
6
|
import type { SchemeManifest } from "./types.ts";
|
|
7
|
+
import type { ResolvedEditStatement } from "./edit-statement.ts";
|
|
8
|
+
export interface RepresentationPreparationRequest {
|
|
9
|
+
readonly target: ParsedPath;
|
|
10
|
+
readonly pathname: string;
|
|
11
|
+
}
|
|
7
12
|
export interface SchemeHandler extends PluginAttributionSource {
|
|
8
13
|
readonly manifest?: SchemeManifest;
|
|
9
14
|
ready?(): Promise<void>;
|
|
10
15
|
close?(): Promise<void>;
|
|
11
16
|
applyResolution?(request: ProposalApplyRequest, ctx: SchemeCtx): Promise<ProposalApplyResult>;
|
|
12
|
-
resolveEntryAddress?(target: ParsedPath, ctx: SchemeCtx): Promise<EntryAddress | null>;
|
|
17
|
+
resolveEntryAddress?(target: ParsedPath, ctx: SchemeCtx): Promise<EntryAddress | SchemeResult | null>;
|
|
13
18
|
prepareFind?(statement: FindStatement, ctx: SchemeCtx): Promise<SchemeResult>;
|
|
14
|
-
|
|
19
|
+
prepareRepresentation?(request: RepresentationPreparationRequest, ctx: SchemeCtx): Promise<RepresentationPreparationResult>;
|
|
15
20
|
find?(statement: FindStatement, ctx: SchemeCtx): Promise<SchemeResult>;
|
|
16
|
-
editBatch?(statements: readonly
|
|
21
|
+
editBatch?(statements: readonly ResolvedEditStatement[], ctx: SchemeCtx): Promise<EditBatchResult>;
|
|
17
22
|
send?(statement: SendStatement, ctx: SchemeCtx): Promise<SchemeResult>;
|
|
18
23
|
exec?(statement: ExecStatement, ctx: SchemeCtx): Promise<SchemeResult>;
|
|
19
24
|
work?(statement: WorkStatement, ctx: SchemeCtx): Promise<SchemeResult>;
|
package/dist/handler.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../src/handler.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACR,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../src/handler.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACR,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACnG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,+BAA+B,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,WAAW,gCAAgC;IAC7C,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAc,SAAQ,uBAAuB;IAK1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAKnC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,eAAe,CAAC,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAM9F,mBAAmB,CAAC,CAChB,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,SAAS,GACf,OAAO,CAAC,YAAY,GAAG,YAAY,GAAG,IAAI,CAAC,CAAC;IAM/C,WAAW,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAK9E,qBAAqB,CAAC,CAClB,OAAO,EAAE,gCAAgC,EACzC,GAAG,EAAE,SAAS,GACf,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACvE,SAAS,CAAC,CAAC,UAAU,EAAE,SAAS,qBAAqB,EAAE,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACnG,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACvE,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACvE,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACvE,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACvE,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACvE,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC1E"}
|
package/dist/handler.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
// The scheme BEHAVIOR contract — the typed counterpart to SchemeManifest
|
|
2
2
|
// (which types a scheme's declaration). A handler implements a method per op it
|
|
3
|
-
// supports, named for the lowercased op (
|
|
3
|
+
// supports, named for the lowercased op (SEND → send, FIND → find,
|
|
4
4
|
// …). OPEN/FOLD are deliberately absent: core routes those curation operations
|
|
5
|
-
// only to its log owner.
|
|
6
|
-
//
|
|
7
|
-
//
|
|
5
|
+
// only to its log owner. Core owns every READ: stored schemes inherit it and
|
|
6
|
+
// other readable schemes provide a scope-blind representation first. FIND may
|
|
7
|
+
// still be candidate-store-specific.
|
|
8
8
|
// Every method is therefore OPTIONAL — a scheme implements only its distinct
|
|
9
|
-
// surface.
|
|
10
|
-
//
|
|
9
|
+
// surface. Operation methods share `(statement, ctx) => Promise<SchemeResult>`;
|
|
10
|
+
// preparation hooks deliberately receive narrower inputs.
|
|
11
11
|
//
|
|
12
12
|
// `implements SchemeHandler` gives a sibling compile-time checking of its op
|
|
13
13
|
// signatures instead of the duck-typed `object` the engine falls back to. The
|
package/dist/handler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../src/handler.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,gFAAgF;AAChF,
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../src/handler.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,gFAAgF;AAChF,mEAAmE;AACnE,+EAA+E;AAC/E,6EAA6E;AAC7E,8EAA8E;AAC9E,qCAAqC;AACrC,6EAA6E;AAC7E,gFAAgF;AAChF,0DAA0D;AAC1D,EAAE;AACF,6EAA6E;AAC7E,8EAA8E;AAC9E,+EAA+E;AAC/E,gFAAgF;AAChF,gFAAgF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export { default as Manifest } from "./Manifest.ts";
|
|
|
5
5
|
export { default as NetworkAddress } from "./NetworkAddress.ts";
|
|
6
6
|
export { default as MimetypeClassifier, TEXT_PRIMITIVE_MIMETYPE } from "./MimetypeClassifier.ts";
|
|
7
7
|
export { default as Slicer } from "./Slicer.ts";
|
|
8
|
-
export type { BatchEdit, EditResult as LineEditResult, PageResult,
|
|
8
|
+
export type { BatchEdit, EditResult as LineEditResult, PageResult, RangeUnit, SliceResult, TextReplacement, } from "./Slicer.ts";
|
|
9
9
|
export { default as PathMimetype } from "./PathMimetype.ts";
|
|
10
10
|
export { default as Matcher } from "./Matcher.ts";
|
|
11
11
|
export type { MatchResult } from "./Matcher.ts";
|
|
@@ -15,18 +15,17 @@ export { default as Summarize } from "./Summarize.ts";
|
|
|
15
15
|
export type { OrientIndex } from "./Summarize.ts";
|
|
16
16
|
export { default as OutputScheme } from "./OutputScheme.ts";
|
|
17
17
|
export type { RuntimeDecl } from "./OutputScheme.ts";
|
|
18
|
-
export { default as DefaultRead } from "./DefaultRead.ts";
|
|
19
|
-
export type { ReadResolution } from "./DefaultRead.ts";
|
|
20
18
|
export { default as Results } from "./Results.ts";
|
|
21
19
|
export { default as PacketSections } from "./PacketSections.ts";
|
|
22
20
|
export { InvalidOperationResultError } from "./Results.ts";
|
|
23
21
|
export { PathSyntax } from "@plurnk/plurnk-contracts";
|
|
24
22
|
export { MimetypeInputLimitError as ProjectionInputLimitError } from "@plurnk/plurnk-mimetypes";
|
|
25
23
|
export type { AppliedEditBatchReceipt, AppliedEditReceipt, EditBatchReceipt, EditBatchResult, EditEffectReceipt, EditReceipt, EditReceiptUnit, ReviewerReplacementEditBatchReceipt, SupersededEditReceipt, } from "./edit-receipt.ts";
|
|
26
|
-
export type { EntryResult, MatchEvidence, PassthroughResult, ProposalResult, ProblemDetails, ScopeNormalization, SchemeResult, SchemeResultBase, } from "./Results.ts";
|
|
27
|
-
export type { ChannelCaps, ChannelState, EntryCaps, EntryCatalogItem, EntryData, EntryEditResult, EntryFindResult,
|
|
28
|
-
export type {
|
|
24
|
+
export type { ChannelProducerResult, EntryResult, MatchEvidence, PassthroughResult, ProposalResult, ProblemDetails, RepresentationPreparationResult, ScopeNormalization, SchemeResult, SchemeResultBase, } from "./Results.ts";
|
|
25
|
+
export type { ChannelCaps, ChannelState, TerminalChannelState, EntryCaps, EntryCatalogChannel, EntryCatalogDefaultChannel, EntryCatalogItem, EntryCatalogScope, EntryCatalogScopeGroup, EntryData, EntryEditResult, EntryFindResult, EntryOperationCaps, EntryOwner, EntryAddress, EntryReadResult, EntryStorageReadResult, EntryStreamLifecycle, EntryStorageWriteResult, StoredEntryData, StreamSubscription, ProjectionCaps, ProjectedText, NotifyCaps, ProposalApplyRequest, ProposalApplyResult, ProposalAware, SchemeCtx, SubscriptionCaps, SubscriptionHandle, } from "./ctx.ts";
|
|
26
|
+
export type { ResolvedEditStatement, ResolvedEditStatement as EditStatement, } from "./edit-statement.ts";
|
|
27
|
+
export type { RepresentationPreparationRequest, SchemeHandler } from "./handler.ts";
|
|
29
28
|
export type { PacketSectionDraft, PacketSectionTransformer } from "./packet.ts";
|
|
30
29
|
export type { PluginAttributionContext, PluginAttributionDeclaration, PluginAttributionSource, } from "@plurnk/plurnk-meta";
|
|
31
|
-
export type { PlurnkStatement, FindStatement, ReadStatement, OpenStatement, FoldStatement,
|
|
30
|
+
export type { PlurnkStatement, FindStatement, ReadStatement, OpenStatement, FoldStatement, CopyStatement, MoveStatement, SendStatement, ExecStatement, WorkStatement, ForkStatement, KillStatement, PlanStatement, ParsedPath, LocalPath, UrlPath, } from "@plurnk/plurnk-contracts";
|
|
32
31
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,YAAY,EACR,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,UAAU,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACjG,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EACR,SAAS,EACT,UAAU,IAAI,cAAc,EAC5B,UAAU,EACV,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -16,7 +16,6 @@ export { default as Matcher } from "./Matcher.js";
|
|
|
16
16
|
export { default as SchemeDiscovery } from "./SchemeDiscovery.js";
|
|
17
17
|
export { default as Summarize } from "./Summarize.js";
|
|
18
18
|
export { default as OutputScheme } from "./OutputScheme.js";
|
|
19
|
-
export { default as DefaultRead } from "./DefaultRead.js";
|
|
20
19
|
export { default as Results } from "./Results.js";
|
|
21
20
|
export { default as PacketSections } from "./PacketSections.js";
|
|
22
21
|
export { InvalidOperationResultError } from "./Results.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,EAAE;AACF,uEAAuE;AACvE,0EAA0E;AAC1E,yEAAyE;AACzE,4BAA4B;AAS5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,4EAA4E;AAC5E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACjG,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,EAAE;AACF,uEAAuE;AACvE,0EAA0E;AAC1E,yEAAyE;AACzE,4BAA4B;AAS5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,4EAA4E;AAC5E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACjG,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAShD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,uBAAuB,IAAI,yBAAyB,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ export interface SchemeManifest {
|
|
|
13
13
|
readonly volatile: boolean;
|
|
14
14
|
readonly modelVisible: boolean;
|
|
15
15
|
readonly folderScopes?: boolean;
|
|
16
|
+
readonly textEditScopes?: boolean;
|
|
16
17
|
readonly foldedByDefault?: boolean;
|
|
17
18
|
readonly flags?: SchemeFlagAffinity;
|
|
18
19
|
readonly example?: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAElE,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAG1C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAGhC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAI/B,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAElE,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAG1C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAGhC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAI/B,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAGhC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAIlC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAKpC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAGhC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAGxB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAClC;AAID,YAAY,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,qCAAqC;AACrC,EAAE;AACF,6EAA6E;AAC7E,6EAA6E;AAC7E,yEAAyE;AACzE,sEAAsE;AACtE,uEAAuE;AACvE,+CAA+C;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,qCAAqC;AACrC,EAAE;AACF,6EAA6E;AAC7E,6EAA6E;AAC7E,yEAAyE;AACzE,sEAAsE;AACtE,uEAAuE;AACvE,+CAA+C;AAmD/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plurnk/plurnk-schemes",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"description": "Framework + contract for the @plurnk/plurnk-schemes-* URI handler packages.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"plurnk",
|
|
@@ -49,10 +49,10 @@
|
|
|
49
49
|
"prepack": "npm run build"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
|
-
"@plurnk/plurnk-mimetypes": "^1.
|
|
52
|
+
"@plurnk/plurnk-mimetypes": "^1.6.0"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@plurnk/plurnk-contracts": "1.
|
|
56
|
-
"@plurnk/plurnk-meta": "1.
|
|
55
|
+
"@plurnk/plurnk-contracts": "1.6.0",
|
|
56
|
+
"@plurnk/plurnk-meta": "1.6.0"
|
|
57
57
|
}
|
|
58
58
|
}
|
package/dist/DefaultRead.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { ReadStatement } from "@plurnk/plurnk-contracts";
|
|
2
|
-
import type { TextRegion } from "@plurnk/plurnk-contracts";
|
|
3
|
-
import type { Mimetypes } from "@plurnk/plurnk-mimetypes";
|
|
4
|
-
import type { RangeExtent } from "./Slicer.ts";
|
|
5
|
-
import type { SchemeResult } from "./Results.ts";
|
|
6
|
-
export interface ReadResolution extends SchemeResult {
|
|
7
|
-
readonly body?: string;
|
|
8
|
-
readonly startLine?: number;
|
|
9
|
-
readonly region?: TextRegion;
|
|
10
|
-
readonly range?: RangeExtent;
|
|
11
|
-
}
|
|
12
|
-
export default class DefaultRead {
|
|
13
|
-
static read(content: string, mimetype: string, statement: ReadStatement, mimetypes: Mimetypes): Promise<ReadResolution>;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=DefaultRead.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultRead.d.ts","sourceRoot":"","sources":["../src/DefaultRead.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAI1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,WAAW,cAAe,SAAQ,YAAY;IAChD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;CAChC;AAED,MAAM,CAAC,OAAO,OAAO,WAAW;IAK5B,OAAa,IAAI,CACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,aAAa,EACxB,SAAS,EAAE,SAAS,GACrB,OAAO,CAAC,cAAc,CAAC,CA6BzB;CACJ"}
|
package/dist/DefaultRead.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
// {§executor-scheme-output} The free default READ an executor-scheme inherits:
|
|
2
|
-
// generic matcher selection and `<L>` projection
|
|
3
|
-
// over a produced output blob, reusing Slicer + Matcher so the logic is
|
|
4
|
-
// single-sourced (not forked into BaseExecutor). A pure resolver - given the
|
|
5
|
-
// stored output + the READ statement, it returns which text to serve; the
|
|
6
|
-
// executor-scheme delivers them. READ-purity holds: this reads already-produced
|
|
7
|
-
// output, it never triggers EXEC.
|
|
8
|
-
import Slicer from "./Slicer.js";
|
|
9
|
-
import Matcher from "./Matcher.js";
|
|
10
|
-
export default class DefaultRead {
|
|
11
|
-
// Resolve a READ against an output blob:
|
|
12
|
-
// matcher body present -> select the complete blob and retain coordinates
|
|
13
|
-
// <L> text scope -> project text from the selected blob
|
|
14
|
-
// no <L> -> return the complete selected blob
|
|
15
|
-
static async read(content, mimetype, statement, mimetypes) {
|
|
16
|
-
let matches;
|
|
17
|
-
let selectionFallback = null;
|
|
18
|
-
if (statement.body !== null) {
|
|
19
|
-
const selected = await Matcher.matchAgainstContent(statement.body, content, mimetype, mimetypes);
|
|
20
|
-
if (selected.status === 203)
|
|
21
|
-
selectionFallback = selected;
|
|
22
|
-
else if (selected.status !== 200)
|
|
23
|
-
return selected;
|
|
24
|
-
else
|
|
25
|
-
matches = selected.matches;
|
|
26
|
-
}
|
|
27
|
-
if (statement.lineMarker !== null) {
|
|
28
|
-
const s = Slicer.lines(content, statement.lineMarker);
|
|
29
|
-
if (s.status >= 400)
|
|
30
|
-
return s;
|
|
31
|
-
return {
|
|
32
|
-
status: selectionFallback?.status ?? (s.text === "" ? 204 : s.status),
|
|
33
|
-
body: s.text,
|
|
34
|
-
...(s.startLine === undefined ? {} : { startLine: s.startLine }),
|
|
35
|
-
...(s.region === undefined ? {} : { region: s.region }),
|
|
36
|
-
...(s.range === undefined ? {} : { range: s.range }),
|
|
37
|
-
...(matches === undefined ? {} : { matches }),
|
|
38
|
-
...(selectionFallback?.mimetype === undefined ? {} : { mimetype: selectionFallback.mimetype }),
|
|
39
|
-
...(selectionFallback?.reason === undefined ? {} : { reason: selectionFallback.reason }),
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
if (selectionFallback !== null)
|
|
43
|
-
return selectionFallback;
|
|
44
|
-
return {
|
|
45
|
-
status: 200,
|
|
46
|
-
body: content,
|
|
47
|
-
...(matches === undefined ? {} : { matches }),
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
//# sourceMappingURL=DefaultRead.js.map
|
package/dist/DefaultRead.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultRead.js","sourceRoot":"","sources":["../src/DefaultRead.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,iDAAiD;AACjD,wEAAwE;AACxE,6EAA6E;AAC7E,0EAA0E;AAC1E,gFAAgF;AAChF,kCAAkC;AAKlC,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,OAAO,MAAM,cAAc,CAAC;AAYnC,MAAM,CAAC,OAAO,OAAO,WAAW;IAC5B,yCAAyC;IACzC,4EAA4E;IAC5E,gEAAgE;IAChE,8DAA8D;IAC9D,MAAM,CAAC,KAAK,CAAC,IAAI,CACb,OAAe,EACf,QAAgB,EAChB,SAAwB,EACxB,SAAoB;QAEpB,IAAI,OAA+B,CAAC;QACpC,IAAI,iBAAiB,GAAuB,IAAI,CAAC;QACjD,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YACjG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;gBAAE,iBAAiB,GAAG,QAAQ,CAAC;iBACrD,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;gBAAE,OAAO,QAAQ,CAAC;;gBAC7C,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACpC,CAAC;QACD,IAAI,SAAS,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG;gBAAE,OAAO,CAAC,CAAC;YAC9B,OAAO;gBACH,MAAM,EAAE,iBAAiB,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACrE,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;gBAChE,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;gBACvD,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;gBACpD,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;gBAC7C,GAAG,CAAC,iBAAiB,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBAC9F,GAAG,CAAC,iBAAiB,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,MAAM,EAAE,CAAC;aAC3F,CAAC;QACN,CAAC;QACD,IAAI,iBAAiB,KAAK,IAAI;YAAE,OAAO,iBAAiB,CAAC;QACzD,OAAO;YACH,MAAM,EAAE,GAAG;YACX,IAAI,EAAE,OAAO;YACb,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;SAChD,CAAC;IACN,CAAC;CACJ"}
|