@zimtsui/typechat 0.0.92 → 0.0.94
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/build/api-types/openai-chatcompletions/tool-codec.d.ts +0 -1
- package/build/compatible-engine/validation.d.ts +14 -7
- package/build/compatible-engine/validation.js +24 -15
- package/build/compatible-engine/validation.js.map +1 -1
- package/build/compatible-engine.d/aliyun.d.ts +0 -3
- package/build/compatible-engine.d/aliyun.js +0 -8
- package/build/compatible-engine.d/aliyun.js.map +1 -1
- package/build/compatible-engine.d/anthropic/choice-codec.d.ts +1 -1
- package/build/compatible-engine.d/anthropic/choice-codec.js +7 -6
- package/build/compatible-engine.d/anthropic/choice-codec.js.map +1 -1
- package/build/compatible-engine.d/anthropic/transport.d.ts +0 -3
- package/build/compatible-engine.d/anthropic/transport.js +14 -11
- package/build/compatible-engine.d/anthropic/transport.js.map +1 -1
- package/build/compatible-engine.d/anthropic.d.ts +0 -3
- package/build/compatible-engine.d/anthropic.js +0 -7
- package/build/compatible-engine.d/anthropic.js.map +1 -1
- package/build/compatible-engine.d/google/transport.d.ts +0 -2
- package/build/compatible-engine.d/google/transport.js +13 -14
- package/build/compatible-engine.d/google/transport.js.map +1 -1
- package/build/compatible-engine.d/google.d.ts +0 -3
- package/build/compatible-engine.d/google.js +1 -8
- package/build/compatible-engine.d/google.js.map +1 -1
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.d.ts +3 -10
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.js +8 -9
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/monolith.js.map +1 -1
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.d.ts +0 -3
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js +11 -9
- package/build/compatible-engine.d/openai-chatcompletions/transport.d/stream.js.map +1 -1
- package/build/compatible-engine.d/openai-responses/transport.d.ts +0 -3
- package/build/compatible-engine.d/openai-responses/transport.js +4 -5
- package/build/compatible-engine.d/openai-responses/transport.js.map +1 -1
- package/build/compatible-engine.d/openai-responses.d.ts +0 -3
- package/build/compatible-engine.d/openai-responses.js +0 -7
- package/build/compatible-engine.d/openai-responses.js.map +1 -1
- package/build/compatible-engine.d.ts +4 -1
- package/build/compatible-engine.js +6 -1
- package/build/compatible-engine.js.map +1 -1
- package/build/config.d.ts +0 -1
- package/build/endpoint-spec.d.ts +0 -1
- package/build/endpoint-spec.js +0 -1
- package/build/endpoint-spec.js.map +1 -1
- package/build/engine/validation.d.ts +10 -5
- package/build/engine.d.ts +8 -7
- package/build/engine.js +33 -21
- package/build/engine.js.map +1 -1
- package/build/native-engines.d/google/transport.d.ts +0 -2
- package/build/native-engines.d/google/transport.js +16 -18
- package/build/native-engines.d/google/transport.js.map +1 -1
- package/build/native-engines.d/google/validation.d.ts +16 -10
- package/build/native-engines.d/google/validation.js +19 -15
- package/build/native-engines.d/google/validation.js.map +1 -1
- package/build/native-engines.d/google.d.ts +4 -3
- package/build/native-engines.d/google.js +7 -8
- package/build/native-engines.d/google.js.map +1 -1
- package/build/native-engines.d/openai-responses/transport.d.ts +0 -3
- package/build/native-engines.d/openai-responses/transport.js +4 -5
- package/build/native-engines.d/openai-responses/transport.js.map +1 -1
- package/build/native-engines.d/openai-responses/validation.d.ts +15 -7
- package/build/native-engines.d/openai-responses/validation.js +22 -15
- package/build/native-engines.d/openai-responses/validation.js.map +1 -1
- package/build/native-engines.d/openai-responses.d.ts +4 -3
- package/build/native-engines.d/openai-responses.js +6 -7
- package/build/native-engines.d/openai-responses.js.map +1 -1
- package/build/repetition.d.ts +1 -0
- package/build/repetition.js +90 -0
- package/build/repetition.js.map +1 -0
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -3,12 +3,13 @@ import { Function } from "../../function.js";
|
|
|
3
3
|
import { RoleMessage } from "./session.js";
|
|
4
4
|
import { ResponseInvalid } from "../../engine.js";
|
|
5
5
|
import * as VerbatimCodec from "../../verbatim/codec.js";
|
|
6
|
-
|
|
6
|
+
import { PartsValidator as CompatiblePartsValidator } from "../../compatible-engine/validation.js";
|
|
7
|
+
export class StructuringValidator {
|
|
7
8
|
ctx;
|
|
8
9
|
constructor(ctx) {
|
|
9
10
|
this.ctx = ctx;
|
|
10
11
|
}
|
|
11
|
-
|
|
12
|
+
validate(message) {
|
|
12
13
|
const tcs = message.getToolCalls();
|
|
13
14
|
const vrs = message.getVerbatimRequests();
|
|
14
15
|
if (this.ctx.choice === Structuring.Choice.TCall.REQUIRED) {
|
|
@@ -33,63 +34,69 @@ export class Validator {
|
|
|
33
34
|
else if (this.ctx.choice === Structuring.Choice.VRequest.REQUIRED) {
|
|
34
35
|
if (!vrs.length)
|
|
35
36
|
return new RoleMessage.User([
|
|
36
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`No valid verbatim request found.`)),
|
|
37
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: No valid verbatim request found. Check your output format.`)),
|
|
37
38
|
]);
|
|
38
39
|
}
|
|
39
40
|
else if (this.ctx.choice === Structuring.Choice.VRequest.ANYONE) {
|
|
40
41
|
if (!vrs.length)
|
|
41
42
|
return new RoleMessage.User([
|
|
42
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`No valid verbatim request found.`)),
|
|
43
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: No valid verbatim request found. Check your output format.`)),
|
|
43
44
|
]);
|
|
44
45
|
if (vrs.length > 1)
|
|
45
46
|
return new RoleMessage.User([
|
|
46
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Only 1 verbatim request allowed, but multiple found.`)),
|
|
47
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: Only 1 verbatim request allowed, but multiple found.`)),
|
|
47
48
|
]);
|
|
48
49
|
}
|
|
49
50
|
else if (this.ctx.choice instanceof Structuring.Choice.VRequest) {
|
|
50
51
|
if (!vrs.length)
|
|
51
52
|
return new RoleMessage.User([
|
|
52
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`No valid verbatim request through channel \`${this.ctx.choice.name}\` found.`)),
|
|
53
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: No valid verbatim request through channel \`${this.ctx.choice.name}\` found. Check your output format.`)),
|
|
53
54
|
]);
|
|
54
55
|
if (vrs.length > 1)
|
|
55
56
|
return new RoleMessage.User([
|
|
56
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Only 1 verbatim request through channel \`${this.ctx.choice.name}\` allowed.`)),
|
|
57
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: Only 1 verbatim request through channel \`${this.ctx.choice.name}\` allowed.`)),
|
|
57
58
|
]);
|
|
58
59
|
if (vrs[0].name !== this.ctx.choice.name)
|
|
59
60
|
return new RoleMessage.User([
|
|
60
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Only verbatim request through channel \`${this.ctx.choice.name}\` allowed.`)),
|
|
61
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: Only verbatim request through channel \`${this.ctx.choice.name}\` allowed.`)),
|
|
61
62
|
]);
|
|
62
63
|
}
|
|
63
64
|
else if (this.ctx.choice === Structuring.Choice.REQUIRED) {
|
|
64
65
|
if (tcs.length + vrs.length) { }
|
|
65
66
|
else
|
|
66
67
|
return new RoleMessage.User([
|
|
67
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`No function call or valid verbatim request found.`)),
|
|
68
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: No function call or valid verbatim request found. Check your output format.`)),
|
|
68
69
|
]);
|
|
69
70
|
}
|
|
70
71
|
else if (this.ctx.choice === Structuring.Choice.ANYONE) {
|
|
71
72
|
if (tcs.length + vrs.length) { }
|
|
72
73
|
else
|
|
73
74
|
return new RoleMessage.User([
|
|
74
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`No function call or valid verbatim request found.`)),
|
|
75
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: No function call or valid verbatim request found. Check your output format.`)),
|
|
75
76
|
]);
|
|
76
77
|
if (tcs.length + vrs.length > 1)
|
|
77
78
|
return new RoleMessage.User([
|
|
78
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Only 1 function call or verbatim request allowed, but multiple found.`)),
|
|
79
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: Only 1 function call or verbatim request allowed, but multiple found.`)),
|
|
79
80
|
]);
|
|
80
81
|
}
|
|
81
82
|
else if (this.ctx.choice === Structuring.Choice.NONE) {
|
|
82
83
|
if (tcs.length + vrs.length)
|
|
83
84
|
return new RoleMessage.User([
|
|
84
|
-
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Neither function call nor verbatim request allowed.`)),
|
|
85
|
+
RoleMessage.Part.Text.paragraph(VerbatimCodec.Meta.encode(`Error: Neither function call nor verbatim request allowed.`)),
|
|
85
86
|
]);
|
|
86
87
|
}
|
|
87
88
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
89
|
+
}
|
|
90
|
+
export class PartsValidator {
|
|
91
|
+
compatiblePartsValidator;
|
|
92
|
+
constructor() {
|
|
93
|
+
this.compatiblePartsValidator = new CompatiblePartsValidator();
|
|
94
|
+
}
|
|
95
|
+
validate(message) {
|
|
96
|
+
if (message.getParts().length) { }
|
|
91
97
|
else
|
|
92
98
|
throw new ResponseInvalid('Empty message.');
|
|
99
|
+
this.compatiblePartsValidator.validateMessageTextParts(message.getTextParts());
|
|
93
100
|
}
|
|
94
101
|
}
|
|
95
102
|
//# sourceMappingURL=validation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/native-engines.d/openai-responses/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,aAAa,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/native-engines.d/openai-responses/validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,9 +21,9 @@ export declare namespace OpenAIResponsesNativeEngine {
|
|
|
21
21
|
protected compatibleMessageCodec: CompatibleMessageCodec<fdm, vdm>;
|
|
22
22
|
protected messageCodec: OpenAIResponsesNativeEngine.MessageCodec<fdm, vdm>;
|
|
23
23
|
protected billing: Billing;
|
|
24
|
-
protected
|
|
24
|
+
protected structuringValidator: OpenAIResponsesNativeEngine.StructuringValidator.From<fdm, vdm>;
|
|
25
|
+
protected partsValidator: OpenAIResponsesNativeEngine.PartsValidator.From<fdm, vdm>;
|
|
25
26
|
protected transport: OpenAIResponsesNativeEngine.Transport<fdm, vdm>;
|
|
26
|
-
protected parallelToolCall: boolean;
|
|
27
27
|
constructor(options: OpenAIResponsesNativeEngine.Options<fdm, vdm>);
|
|
28
28
|
protected infer(wfctx: InferenceContext, session: OpenAIResponsesNativeEngine.Session.From<fdm, vdm>, signal?: AbortSignal): Promise<OpenAIResponsesNativeEngine.RoleMessage.Ai.From<fdm, vdm>>;
|
|
29
29
|
appendUserMessage(session: OpenAIResponsesNativeEngine.Session.From<fdm, vdm>, message: OpenAIResponsesNativeEngine.RoleMessage.User.From<fdm>): OpenAIResponsesNativeEngine.Session.From<fdm, vdm>;
|
|
@@ -40,5 +40,6 @@ export declare namespace OpenAIResponsesNativeEngine {
|
|
|
40
40
|
export import MessageCodec = MessageCodecModule.MessageCodec;
|
|
41
41
|
export import Structuring = StructuringModule.Structuring;
|
|
42
42
|
export import Transport = TransportModule.Transport;
|
|
43
|
-
export import
|
|
43
|
+
export import StructuringValidator = ValidationModule.StructuringValidator;
|
|
44
|
+
export import PartsValidator = ValidationModule.PartsValidator;
|
|
44
45
|
}
|
|
@@ -18,12 +18,11 @@ export var OpenAIResponsesNativeEngine;
|
|
|
18
18
|
compatibleMessageCodec;
|
|
19
19
|
messageCodec;
|
|
20
20
|
billing;
|
|
21
|
-
|
|
21
|
+
structuringValidator;
|
|
22
|
+
partsValidator;
|
|
22
23
|
transport;
|
|
23
|
-
parallelToolCall;
|
|
24
24
|
constructor(options) {
|
|
25
25
|
super(options);
|
|
26
|
-
this.parallelToolCall = options.parallelToolCall ?? false;
|
|
27
26
|
this.applyPatch = options.applyPatch ?? false;
|
|
28
27
|
this.choice = options.structuringChoice ?? OpenAIResponsesNativeEngine.Structuring.Choice.AUTO;
|
|
29
28
|
this.toolCodec = new ToolCodec({ fdm: this.fdm });
|
|
@@ -37,19 +36,18 @@ export var OpenAIResponsesNativeEngine;
|
|
|
37
36
|
vdm: this.vdm,
|
|
38
37
|
});
|
|
39
38
|
this.billing = new Billing({ pricing: this.pricing });
|
|
40
|
-
this.
|
|
39
|
+
this.structuringValidator = new OpenAIResponsesNativeEngine.StructuringValidator({ choice: this.choice });
|
|
40
|
+
this.partsValidator = new OpenAIResponsesNativeEngine.PartsValidator();
|
|
41
41
|
this.transport = new OpenAIResponsesNativeEngine.Transport({
|
|
42
42
|
inferenceParams: this.inferenceParams,
|
|
43
43
|
providerSpec: this.providerSpec,
|
|
44
44
|
fdm: this.fdm,
|
|
45
45
|
throttle: this.throttle,
|
|
46
46
|
choice: this.choice,
|
|
47
|
-
parallelToolCall: this.parallelToolCall,
|
|
48
47
|
applyPatch: this.applyPatch,
|
|
49
48
|
messageCodec: this.messageCodec,
|
|
50
49
|
toolCodec: this.toolCodec,
|
|
51
50
|
billing: this.billing,
|
|
52
|
-
validator: this.validator,
|
|
53
51
|
});
|
|
54
52
|
}
|
|
55
53
|
infer(wfctx, session, signal) {
|
|
@@ -73,6 +71,7 @@ export var OpenAIResponsesNativeEngine;
|
|
|
73
71
|
OpenAIResponsesNativeEngine.MessageCodec = MessageCodecModule.MessageCodec;
|
|
74
72
|
OpenAIResponsesNativeEngine.Structuring = StructuringModule.Structuring;
|
|
75
73
|
OpenAIResponsesNativeEngine.Transport = TransportModule.Transport;
|
|
76
|
-
OpenAIResponsesNativeEngine.
|
|
74
|
+
OpenAIResponsesNativeEngine.StructuringValidator = ValidationModule.StructuringValidator;
|
|
75
|
+
OpenAIResponsesNativeEngine.PartsValidator = ValidationModule.PartsValidator;
|
|
77
76
|
})(OpenAIResponsesNativeEngine || (OpenAIResponsesNativeEngine = {}));
|
|
78
77
|
//# sourceMappingURL=openai-responses.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-responses.js","sourceRoot":"","sources":["../../src/native-engines.d/openai-responses.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,aAAa,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,0CAA0C,CAAC;AACnE,OAAO,EAAE,YAAY,IAAI,sBAAsB,EAAE,MAAM,0DAA0D,CAAC;AAClH,OAAO,KAAK,gBAAgB,MAAM,kCAAkC,CAAC;AAErE,OAAO,KAAK,iBAAiB,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,iBAAiB,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,kBAAkB,MAAM,qCAAqC,CAAC;AAC1E,OAAO,KAAK,eAAe,MAAM,iCAAiC,CAAC;AAQnE,MAAM,KAAW,2BAA2B,
|
|
1
|
+
{"version":3,"file":"openai-responses.js","sourceRoot":"","sources":["../../src/native-engines.d/openai-responses.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isRepeating(str: string, len: number, count: number): boolean;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
export function isRepeating(str, len, count) {
|
|
2
|
+
if (count) { }
|
|
3
|
+
else
|
|
4
|
+
return true;
|
|
5
|
+
if (len <= 0)
|
|
6
|
+
return true;
|
|
7
|
+
const { queryLcp, queryLcs } = makeQueries(str);
|
|
8
|
+
for (let period = len; period <= str.length; period++)
|
|
9
|
+
for (let i = 0, j = i + period; j <= str.length; i += period, j += period)
|
|
10
|
+
if (queryLcp(i, j) + queryLcs(i, j) >= period * (count - 1))
|
|
11
|
+
return true;
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
function makeQueries(str) {
|
|
15
|
+
const n = str.length;
|
|
16
|
+
const queryLcp = makeStringQuery(str);
|
|
17
|
+
const reverseQueryLcp = makeStringQuery(str.split('').reverse().join(''));
|
|
18
|
+
const queryLcs = (lhs, rhs) => reverseQueryLcp(n - lhs, n - rhs);
|
|
19
|
+
return { queryLcp, queryLcs };
|
|
20
|
+
}
|
|
21
|
+
function makeStringQuery(str) {
|
|
22
|
+
const sa = makeSuffixArray(str);
|
|
23
|
+
const rk = new Array(sa.length);
|
|
24
|
+
for (let i = 0; i < sa.length; i++)
|
|
25
|
+
rk[sa[i]] = i;
|
|
26
|
+
return makeQuery(str.length, rk, makeHeight(str, sa, rk));
|
|
27
|
+
}
|
|
28
|
+
function makeSuffixArray(str) {
|
|
29
|
+
const sa = [...new Array(str.length + 1).keys()];
|
|
30
|
+
let rank = new Array(sa.length);
|
|
31
|
+
for (let i = 0; i < str.length; i++)
|
|
32
|
+
rank[i] = str.charCodeAt(i) + 1;
|
|
33
|
+
rank[str.length] = 0;
|
|
34
|
+
for (let step = 1; step <= str.length; step <<= 1) {
|
|
35
|
+
sa.sort((lhs, rhs) => {
|
|
36
|
+
if (rank[lhs] !== rank[rhs])
|
|
37
|
+
return rank[lhs] - rank[rhs];
|
|
38
|
+
const lnext = lhs + step <= str.length ? rank[lhs + step] : -1;
|
|
39
|
+
const rnext = rhs + step <= str.length ? rank[rhs + step] : -1;
|
|
40
|
+
return lnext - rnext;
|
|
41
|
+
});
|
|
42
|
+
const next = new Array(sa.length);
|
|
43
|
+
next[sa[0]] = 0;
|
|
44
|
+
for (let i = 1; i < sa.length; i++) {
|
|
45
|
+
const lhs = sa[i - 1], rhs = sa[i];
|
|
46
|
+
const lv = lhs + step <= str.length ? rank[lhs + step] : -1;
|
|
47
|
+
const rv = rhs + step <= str.length ? rank[rhs + step] : -1;
|
|
48
|
+
next[rhs] = next[lhs] + +(rank[lhs] !== rank[rhs] || lv !== rv);
|
|
49
|
+
}
|
|
50
|
+
rank = next;
|
|
51
|
+
if (rank[sa[sa.length - 1]] === str.length)
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
return sa;
|
|
55
|
+
}
|
|
56
|
+
function makeHeight(str, sa, rk) {
|
|
57
|
+
const h = new Array(sa.length - 1).fill(0);
|
|
58
|
+
for (let i = 0, k = 0; i <= str.length; i++) {
|
|
59
|
+
const r = rk[i];
|
|
60
|
+
if (r === 0)
|
|
61
|
+
continue;
|
|
62
|
+
if (k)
|
|
63
|
+
k--;
|
|
64
|
+
for (const j = sa[r - 1]; i + k < str.length && j + k < str.length && str[i + k] === str[j + k];)
|
|
65
|
+
k++;
|
|
66
|
+
h[r - 1] = k;
|
|
67
|
+
}
|
|
68
|
+
return h;
|
|
69
|
+
}
|
|
70
|
+
function makeQuery(len, rk, h) {
|
|
71
|
+
const LOG = new Array(h.length + 1).fill(0);
|
|
72
|
+
for (let i = 2; i < LOG.length; i++)
|
|
73
|
+
LOG[i] = LOG[i >> 1] + 1;
|
|
74
|
+
const st = [h.slice()];
|
|
75
|
+
for (let e = 1; (1 << e) <= h.length; e++) {
|
|
76
|
+
st[e] = new Array(h.length - (1 << e) + 1);
|
|
77
|
+
for (let i = 0; i + (1 << e) <= h.length; i++)
|
|
78
|
+
st[e][i] = Math.min(st[e - 1][i], st[e - 1][i + (1 << (e - 1))]);
|
|
79
|
+
}
|
|
80
|
+
return (lhs, rhs) => {
|
|
81
|
+
if (lhs === rhs)
|
|
82
|
+
return len - lhs;
|
|
83
|
+
let lrk = rk[lhs], rrk = rk[rhs];
|
|
84
|
+
if (lrk > rrk)
|
|
85
|
+
[lrk, rrk] = [rrk, lrk];
|
|
86
|
+
const d = rrk - lrk, e = LOG[d];
|
|
87
|
+
return Math.min(st[e][lrk], st[e][rrk - (1 << e)]);
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=repetition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repetition.js","sourceRoot":"","sources":["../src/repetition.ts"],"names":[],"mappings":"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"}
|