@mlola/browser-core 0.1.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/LICENSE +21 -0
- package/README.md +10 -0
- package/dist/action-space.d.ts +36 -0
- package/dist/action-space.d.ts.map +1 -0
- package/dist/action-space.js +264 -0
- package/dist/action-space.js.map +1 -0
- package/dist/budget.d.ts +32 -0
- package/dist/budget.d.ts.map +1 -0
- package/dist/budget.js +127 -0
- package/dist/budget.js.map +1 -0
- package/dist/decision-validation.d.ts +31 -0
- package/dist/decision-validation.d.ts.map +1 -0
- package/dist/decision-validation.js +114 -0
- package/dist/decision-validation.js.map +1 -0
- package/dist/executor.d.ts +37 -0
- package/dist/executor.d.ts.map +1 -0
- package/dist/executor.js +209 -0
- package/dist/executor.js.map +1 -0
- package/dist/fallback.d.ts +19 -0
- package/dist/fallback.d.ts.map +1 -0
- package/dist/fallback.js +36 -0
- package/dist/fallback.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/orchestrator.d.ts +50 -0
- package/dist/orchestrator.d.ts.map +1 -0
- package/dist/orchestrator.js +1168 -0
- package/dist/orchestrator.js.map +1 -0
- package/dist/state.d.ts +12 -0
- package/dist/state.d.ts.map +1 -0
- package/dist/state.js +60 -0
- package/dist/state.js.map +1 -0
- package/dist/text.d.ts +34 -0
- package/dist/text.d.ts.map +1 -0
- package/dist/text.js +137 -0
- package/dist/text.js.map +1 -0
- package/dist/verifier.d.ts +41 -0
- package/dist/verifier.d.ts.map +1 -0
- package/dist/verifier.js +237 -0
- package/dist/verifier.js.map +1 -0
- package/package.json +58 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"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"}
|
package/dist/state.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compact state rendering shared by planner and fallback providers.
|
|
3
|
+
*
|
|
4
|
+
* The fast path renders its own state inside the Jev provider, but anything
|
|
5
|
+
* that talks to a general model gets this condensed, provenance-marked view.
|
|
6
|
+
*/
|
|
7
|
+
import type { BrowserSnapshot, StepSummary } from "@mlola/browser-protocol";
|
|
8
|
+
export declare const summarizeSnapshot: (snapshot: BrowserSnapshot, maxNodes?: number) => string;
|
|
9
|
+
export declare const renderHistory: (history: readonly StepSummary[], limit?: number) => string;
|
|
10
|
+
/** Conservative complexity heuristic: when in doubt, plan. */
|
|
11
|
+
export declare const looksComplex: (goal: string) => boolean;
|
|
12
|
+
//# sourceMappingURL=state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE5E,eAAO,MAAM,iBAAiB,GAAI,UAAU,eAAe,EAAE,iBAAa,KAAG,MA2B5E,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,SAAS,SAAS,WAAW,EAAE,EAAE,cAAU,KAAG,MAM3E,CAAC;AAMF,8DAA8D;AAC9D,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,OAO3C,CAAC"}
|
package/dist/state.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compact state rendering shared by planner and fallback providers.
|
|
3
|
+
*
|
|
4
|
+
* The fast path renders its own state inside the Jev provider, but anything
|
|
5
|
+
* that talks to a general model gets this condensed, provenance-marked view.
|
|
6
|
+
*/
|
|
7
|
+
export const summarizeSnapshot = (snapshot, maxNodes = 30) => {
|
|
8
|
+
const lines = [];
|
|
9
|
+
lines.push(`url: ${snapshot.url}`);
|
|
10
|
+
lines.push(`title: ${snapshot.title}`);
|
|
11
|
+
if (snapshot.blockingUi) {
|
|
12
|
+
lines.push(`blocking_ui: ${snapshot.blockingUi.kind}${snapshot.blockingUi.text ? ` ${JSON.stringify(snapshot.blockingUi.text.slice(0, 120))}` : ""}`);
|
|
13
|
+
}
|
|
14
|
+
const tabs = snapshot.tabs.map((t) => `${t.id}${t.active ? "*" : ""} ${JSON.stringify(t.title || t.url)}`).join(" | ");
|
|
15
|
+
if (tabs.length > 0)
|
|
16
|
+
lines.push(`tabs: ${tabs}`);
|
|
17
|
+
lines.push(`viewport: ${snapshot.viewport.width}x${snapshot.viewport.height} scroll_y=${Math.round(snapshot.viewport.scrollY)}/${Math.round(snapshot.viewport.documentHeight)}`);
|
|
18
|
+
if (snapshot.textSummary.trim().length > 0) {
|
|
19
|
+
lines.push("visible_text:");
|
|
20
|
+
for (const line of snapshot.textSummary.split("\n").slice(0, 12)) {
|
|
21
|
+
lines.push(` ${line.slice(0, 160)}`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
lines.push("controls:");
|
|
25
|
+
for (const node of snapshot.nodes.slice(0, maxNodes)) {
|
|
26
|
+
const bits = [`[${node.index}]`, node.role, JSON.stringify(node.label.slice(0, 60))];
|
|
27
|
+
if (node.value)
|
|
28
|
+
bits.push(`value=${JSON.stringify(node.value.slice(0, 40))}`);
|
|
29
|
+
if (node.flags.offscreen)
|
|
30
|
+
bits.push("(offscreen)");
|
|
31
|
+
lines.push(` ${bits.join(" ")}`);
|
|
32
|
+
}
|
|
33
|
+
if (snapshot.nodes.length > maxNodes)
|
|
34
|
+
lines.push(` … ${snapshot.nodes.length - maxNodes} more controls`);
|
|
35
|
+
return lines.join("\n");
|
|
36
|
+
};
|
|
37
|
+
export const renderHistory = (history, limit = 10) => {
|
|
38
|
+
if (history.length === 0)
|
|
39
|
+
return "(no steps yet)";
|
|
40
|
+
return history
|
|
41
|
+
.slice(-limit)
|
|
42
|
+
.map((s) => `${s.step}. ${s.action} -> ${s.outcome}${s.detail ? ` (${s.detail})` : ""}`)
|
|
43
|
+
.join("\n");
|
|
44
|
+
};
|
|
45
|
+
const MULTI_STEP_MARKERS = /\b(then|after that|afterwards|and then|and also|followed by|finally|first\b.*\bthen\b|kemudian|lalu|setelah itu|selanjutnya)\b/i;
|
|
46
|
+
const MULTI_CLAUSE = /[.;]\s+\S/;
|
|
47
|
+
/** Conservative complexity heuristic: when in doubt, plan. */
|
|
48
|
+
export const looksComplex = (goal) => {
|
|
49
|
+
if (goal.length > 140)
|
|
50
|
+
return true;
|
|
51
|
+
if (MULTI_STEP_MARKERS.test(goal))
|
|
52
|
+
return true;
|
|
53
|
+
const sentences = goal.split(/[.!?]\s+/).filter((s) => s.trim().length > 12);
|
|
54
|
+
if (sentences.length >= 2)
|
|
55
|
+
return true;
|
|
56
|
+
if (MULTI_CLAUSE.test(goal) && goal.length > 80)
|
|
57
|
+
return true;
|
|
58
|
+
return false;
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
|
package/dist/text.d.ts
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Text strategy (PRD §17).
|
|
3
|
+
*
|
|
4
|
+
* The fast path decides whether and where to type; the runtime decides what
|
|
5
|
+
* text to type. Literal reuse comes first — quoting the user's own words is
|
|
6
|
+
* always cheaper and safer than generating new ones. A text model is consulted
|
|
7
|
+
* only when a transformation is genuinely required and one is configured;
|
|
8
|
+
* otherwise the runtime asks the person.
|
|
9
|
+
*/
|
|
10
|
+
import { RuntimeError } from "@mlola/browser-protocol";
|
|
11
|
+
import type { TextGenerationInput, TextProvider } from "@mlola/browser-protocol";
|
|
12
|
+
export interface LiteralExtraction {
|
|
13
|
+
literals: string[];
|
|
14
|
+
/** The literal the goal most likely intends as a field value. */
|
|
15
|
+
best?: string;
|
|
16
|
+
/** Why `best` was chosen, for the trace. */
|
|
17
|
+
reason: string;
|
|
18
|
+
}
|
|
19
|
+
export declare const extractLiterals: (goal: string) => LiteralExtraction;
|
|
20
|
+
export interface ResolveTextDeps {
|
|
21
|
+
provider?: TextProvider;
|
|
22
|
+
maxLength: number;
|
|
23
|
+
}
|
|
24
|
+
export interface ResolvedText {
|
|
25
|
+
text: string;
|
|
26
|
+
source: "literal" | "model" | "user";
|
|
27
|
+
provider: string;
|
|
28
|
+
detail: string;
|
|
29
|
+
}
|
|
30
|
+
export declare class TextUnavailableError extends RuntimeError {
|
|
31
|
+
constructor(message: string);
|
|
32
|
+
}
|
|
33
|
+
export declare const resolveText: (input: TextGenerationInput, deps: ResolveTextDeps) => Promise<ResolvedText>;
|
|
34
|
+
//# sourceMappingURL=text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,YAAY,EAGb,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,mBAAmB,EAAwB,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvG,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;CAChB;AAsCD,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,iBAuC9C,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,oBAAqB,SAAQ,YAAY;gBACxC,OAAO,EAAE,MAAM;CAQ5B;AAED,eAAO,MAAM,WAAW,GACtB,OAAO,mBAAmB,EAC1B,MAAM,eAAe,KACpB,OAAO,CAAC,YAAY,CAoDtB,CAAC"}
|
package/dist/text.js
ADDED
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Text strategy (PRD §17).
|
|
3
|
+
*
|
|
4
|
+
* The fast path decides whether and where to type; the runtime decides what
|
|
5
|
+
* text to type. Literal reuse comes first — quoting the user's own words is
|
|
6
|
+
* always cheaper and safer than generating new ones. A text model is consulted
|
|
7
|
+
* only when a transformation is genuinely required and one is configured;
|
|
8
|
+
* otherwise the runtime asks the person.
|
|
9
|
+
*/
|
|
10
|
+
import { RuntimeError, screenGeneratedText, textModelResponseSchema, } from "@mlola/browser-protocol";
|
|
11
|
+
const QUOTED = [
|
|
12
|
+
/"([^"\n]{1,200})"/g,
|
|
13
|
+
/'([^'\n]{1,200})'/g,
|
|
14
|
+
/“([^”\n]{1,200})”/g,
|
|
15
|
+
/‘([^’\n]{1,200})’/g,
|
|
16
|
+
];
|
|
17
|
+
/**
|
|
18
|
+
* A literal after a verb must stop at the next preposition, otherwise
|
|
19
|
+
* "type August travel into the title field" captures the whole sentence.
|
|
20
|
+
*/
|
|
21
|
+
const VALUE = `([^"'“”\\n]{2,120}?)(?=\\s+(?:into|in|to|on|at|from|with|for|and|then|after|before|please|yang|ke|di|dan|lalu)\\b|["'“”]|[.,;!?)]|$)`;
|
|
22
|
+
const VERB_PATTERNS = [
|
|
23
|
+
new RegExp(`\\b(?:search|look)\\s+(?:for|up)\\s+["'“‘]?${VALUE}`, "gi"),
|
|
24
|
+
new RegExp(`\\bfind\\s+["'“‘]?${VALUE}`, "gi"),
|
|
25
|
+
new RegExp(`\\b(?:type|enter|input|fill(?:\\s+in)?|write|paste)\\s+(?:the\\s+)?(?:text\\s+)?["'“‘]?${VALUE}`, "gi"),
|
|
26
|
+
new RegExp(`\\b(?:cari|ketik|masukkan|isi|tulis)\\s+["'“‘]?${VALUE}`, "gi"),
|
|
27
|
+
];
|
|
28
|
+
const STRUCTURED = [
|
|
29
|
+
/[\w.+-]+@[\w-]+\.[\w.-]{2,}/g, // email
|
|
30
|
+
/https?:\/\/[^\s"'<>]+/g, // url
|
|
31
|
+
/\b\d{4}-\d{2}-\d{2}\b/g, // iso date
|
|
32
|
+
/\b\d{1,2}[/-]\d{1,2}[/-]\d{2,4}\b/g, // numeric date
|
|
33
|
+
];
|
|
34
|
+
const TRAILING_STOPWORDS = /\s+(?:into|in|on|to|from|with|and|then|after|before|please|for|the|a|an|yang|ke|di|dan|lalu)\s*$/i;
|
|
35
|
+
const clean = (raw) => {
|
|
36
|
+
let value = raw.trim().replace(TRAILING_STOPWORDS, "").trim();
|
|
37
|
+
value = value.replace(/[.,;:]+$/, "").trim();
|
|
38
|
+
return value;
|
|
39
|
+
};
|
|
40
|
+
export const extractLiterals = (goal) => {
|
|
41
|
+
const literals = [];
|
|
42
|
+
const seen = new Set();
|
|
43
|
+
const push = (value) => {
|
|
44
|
+
const cleaned = clean(value);
|
|
45
|
+
if (cleaned.length === 0 || cleaned.length > 200)
|
|
46
|
+
return;
|
|
47
|
+
const key = cleaned.toLowerCase();
|
|
48
|
+
if (seen.has(key))
|
|
49
|
+
return;
|
|
50
|
+
seen.add(key);
|
|
51
|
+
literals.push(cleaned);
|
|
52
|
+
};
|
|
53
|
+
for (const re of QUOTED) {
|
|
54
|
+
for (const m of goal.matchAll(re))
|
|
55
|
+
if (m[1])
|
|
56
|
+
push(m[1]);
|
|
57
|
+
}
|
|
58
|
+
let verbLiteral;
|
|
59
|
+
for (const re of VERB_PATTERNS) {
|
|
60
|
+
for (const m of goal.matchAll(re)) {
|
|
61
|
+
if (!m[1])
|
|
62
|
+
continue;
|
|
63
|
+
push(m[1]);
|
|
64
|
+
verbLiteral = clean(m[1]);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
for (const re of STRUCTURED) {
|
|
68
|
+
for (const m of goal.matchAll(re))
|
|
69
|
+
push(m[0]);
|
|
70
|
+
}
|
|
71
|
+
if (verbLiteral !== undefined && verbLiteral.length > 0) {
|
|
72
|
+
return { literals, best: verbLiteral, reason: "literal follows a type/search verb in the goal" };
|
|
73
|
+
}
|
|
74
|
+
if (literals.length === 1) {
|
|
75
|
+
return { literals, best: literals[0], reason: "single literal in the goal" };
|
|
76
|
+
}
|
|
77
|
+
if (literals.length > 1) {
|
|
78
|
+
return { literals, best: literals[0], reason: "first literal in the goal (ambiguous, may need a text provider)" };
|
|
79
|
+
}
|
|
80
|
+
return { literals: [], reason: "no literal value found in the goal" };
|
|
81
|
+
};
|
|
82
|
+
export class TextUnavailableError extends RuntimeError {
|
|
83
|
+
constructor(message) {
|
|
84
|
+
super("INTERNAL", message, {
|
|
85
|
+
detail: "the field needs generated text, but no text provider is configured. " +
|
|
86
|
+
"Configure a text provider (MLOLA_TEXT_*) or hand this step to a person.",
|
|
87
|
+
retryable: false,
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
export const resolveText = async (input, deps) => {
|
|
92
|
+
const extraction = extractLiterals(input.goal);
|
|
93
|
+
const candidates = extraction.literals;
|
|
94
|
+
// 1. Literal reuse — only when the goal clearly provides the value.
|
|
95
|
+
const confident = extraction.reason.startsWith("literal follows") || extraction.reason.startsWith("single literal");
|
|
96
|
+
if (extraction.best !== undefined && confident) {
|
|
97
|
+
const literal = extraction.best;
|
|
98
|
+
if (literal.length <= deps.maxLength) {
|
|
99
|
+
return {
|
|
100
|
+
text: literal,
|
|
101
|
+
source: "literal",
|
|
102
|
+
provider: "literal",
|
|
103
|
+
detail: extraction.reason,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
// 2. Generation, but only with a configured provider.
|
|
108
|
+
if (!deps.provider) {
|
|
109
|
+
throw new TextUnavailableError(`cannot determine what to type into ${input.targetRole} ${JSON.stringify(input.targetLabel)}`);
|
|
110
|
+
}
|
|
111
|
+
const output = await deps.provider.generate({
|
|
112
|
+
...input,
|
|
113
|
+
literals: candidates,
|
|
114
|
+
maxLength: input.maxLength ?? deps.maxLength,
|
|
115
|
+
});
|
|
116
|
+
const parsed = textModelResponseSchema.safeParse({ text: output.text });
|
|
117
|
+
if (!parsed.success) {
|
|
118
|
+
throw new RuntimeError("DECISION_INVALID", "text provider returned an invalid payload", {
|
|
119
|
+
detail: parsed.error.issues.map((i) => i.message).join("; "),
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
const text = parsed.data.text.trim();
|
|
123
|
+
if (text.length === 0) {
|
|
124
|
+
throw new RuntimeError("DECISION_INVALID", "text provider returned empty text");
|
|
125
|
+
}
|
|
126
|
+
if (text.length > deps.maxLength) {
|
|
127
|
+
throw new RuntimeError("DECISION_INVALID", `generated text exceeds ${deps.maxLength} characters`);
|
|
128
|
+
}
|
|
129
|
+
const screen = screenGeneratedText(text);
|
|
130
|
+
if (screen.hasSecret) {
|
|
131
|
+
throw new RuntimeError("SECRET_TARGET", "generated text contains credential-like content", {
|
|
132
|
+
detail: screen.reasons.join("; "),
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
return { text, source: "model", provider: output.provider, detail: `generated (${output.provider})` };
|
|
136
|
+
};
|
|
137
|
+
//# sourceMappingURL=text.js.map
|
package/dist/text.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Verification (PRD §27, §51).
|
|
3
|
+
*
|
|
4
|
+
* Step verification compares the action's intent against the observation before
|
|
5
|
+
* and after execution. Completion verification is the independent oracle for
|
|
6
|
+
* `DONE`: runtime events, URL state, DOM evidence, artifacts — never the
|
|
7
|
+
* model's own claim.
|
|
8
|
+
*/
|
|
9
|
+
import type { ArtifactSummary, BrowserSnapshot, CompletionSpec, RunEvent, TaskSpec, TypedAction, VerificationResult } from "@mlola/browser-protocol";
|
|
10
|
+
import type { ActionOutcome } from "@mlola/browser-backend";
|
|
11
|
+
export interface StepVerificationInput {
|
|
12
|
+
action: TypedAction;
|
|
13
|
+
before: BrowserSnapshot;
|
|
14
|
+
after: BrowserSnapshot;
|
|
15
|
+
outcome: ActionOutcome;
|
|
16
|
+
/** Artifact registered as a result of this step, when one was produced. */
|
|
17
|
+
artifact?: ArtifactSummary;
|
|
18
|
+
/** All artifacts known so far. */
|
|
19
|
+
artifacts: ArtifactSummary[];
|
|
20
|
+
/** Deterministic upload evidence from the backend or page, when available. */
|
|
21
|
+
uploadEvidence?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface StepVerification extends VerificationResult {
|
|
24
|
+
/** True when the action executed cleanly but produced no observable change. */
|
|
25
|
+
noEffect?: boolean;
|
|
26
|
+
}
|
|
27
|
+
export declare const verifyStep: (input: StepVerificationInput) => StepVerification;
|
|
28
|
+
/**
|
|
29
|
+
* Deterministic, conservative oracle inference from the goal text. Used only
|
|
30
|
+
* when the caller did not supply explicit success criteria.
|
|
31
|
+
*/
|
|
32
|
+
export declare const inferDocumentTypeHint: (goal: string) => string | undefined;
|
|
33
|
+
export declare const inferCompletionCriteria: (goal: string) => CompletionSpec | undefined;
|
|
34
|
+
export interface CompletionContext {
|
|
35
|
+
snapshot?: BrowserSnapshot;
|
|
36
|
+
artifacts: ArtifactSummary[];
|
|
37
|
+
events?: readonly RunEvent[];
|
|
38
|
+
manualConfirmed?: boolean;
|
|
39
|
+
}
|
|
40
|
+
export declare const verifyCompletion: (task: TaskSpec, ctx: CompletionContext) => VerificationResult;
|
|
41
|
+
//# sourceMappingURL=verifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,cAAc,EAEd,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAI5D,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,aAAa,CAAC;IACvB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,kCAAkC;IAClC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAcD,eAAO,MAAM,UAAU,GAAI,OAAO,qBAAqB,KAAG,gBA2KzD,CAAC;AAkBF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,SACN,CAAC;AAEzD,eAAO,MAAM,uBAAuB,GAAI,MAAM,MAAM,KAAG,cAAc,GAAG,SA6BvE,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,MAAM,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,eAAO,MAAM,gBAAgB,GAAI,MAAM,QAAQ,EAAE,KAAK,iBAAiB,KAAG,kBAwBzE,CAAC"}
|