@briefgate/mcp 0.7.3 → 0.7.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ export type LoginOutcome = {
2
+ ok: true;
3
+ apiKey: string;
4
+ keyId: string;
5
+ accountName: string;
6
+ scopes: string[];
7
+ } | {
8
+ ok: false;
9
+ reason: 'expired' | 'consumed' | 'denied' | 'unknown_code' | 'timeout' | 'error';
10
+ detail?: string;
11
+ };
12
+ export interface LoginArgs {
13
+ baseUrl: string;
14
+ clientName: string;
15
+ }
16
+ export interface LoginResult {
17
+ text: string;
18
+ /** Set only on the call that observes success — lets the caller (tools.ts)
19
+ * update its own in-memory BriefGateConfig without waiting for a restart. */
20
+ apiKey?: string;
21
+ }
22
+ /**
23
+ * Starts (or checks on) a device-authorization login for `baseUrl`.
24
+ * Never throws — failures come back as text explaining what happened.
25
+ */
26
+ export declare function login({ baseUrl, clientName }: LoginArgs): Promise<LoginResult>;
27
+ export interface LoginBlockingResult {
28
+ ok: boolean;
29
+ /** One-line summary for stdout/stderr — success message or failure reason. */
30
+ text: string;
31
+ apiKey?: string;
32
+ }
33
+ /**
34
+ * Runs the whole device-authorization flow to completion, blocking until it
35
+ * resolves (or times out at 10 minutes). `onCode` fires once, as soon as the
36
+ * code is known, so the caller can print it and open the browser before this
37
+ * promise settles. Independent of the `login()` in-flight map above.
38
+ */
39
+ export declare function loginBlocking({ baseUrl, clientName }: LoginArgs, onCode: (info: {
40
+ userCode: string;
41
+ verificationUriComplete: string;
42
+ }) => void): Promise<LoginBlockingResult>;
43
+ /**
44
+ * Removes the locally stored key for `baseUrl` and best-effort revokes it on
45
+ * the server. A network failure while revoking never blocks the local
46
+ * removal — the caller is told to revoke it from the dashboard instead.
47
+ */
48
+ export declare function logout(baseUrl: string): Promise<string>;
49
+ //# sourceMappingURL=login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"AAoBA,MAAM,MAAM,YAAY,GACpB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAClF;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS,GAAG,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA4HrH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb;kFAC8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAsB,KAAK,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAgDpF;AAID,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,OAAO,CAAC;IACZ,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,SAAS,EAClC,MAAM,EAAE,CAAC,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,uBAAuB,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,GAC5E,OAAO,CAAC,mBAAmB,CAAC,CAkB9B;AAID;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAe7D"}
package/dist/login.js ADDED
@@ -0,0 +1,205 @@
1
+ // Backs both the `login`/`logout` MCP tools and the `login`/`logout` CLI
2
+ // subcommands — same functions, two presentations:
3
+ //
4
+ // - `login()` is two-phase, for an MCP tool call: a human clicking Allow in
5
+ // a browser can take minutes, longer than most MCP clients let one tool
6
+ // call block, so the first call starts the flow and returns immediately;
7
+ // a later call (prompted by the tool's own description) picks up
8
+ // whatever a background poll loop has found by then.
9
+ // - `loginBlocking()` is for the CLI: a terminal command can just block
10
+ // until the flow finishes, so it prints the code once and waits.
11
+ //
12
+ // Both format their own prose from the same structured LoginOutcome, so the
13
+ // state machine (device-auth.ts's status values, retry/backoff, timeout)
14
+ // lives in exactly one place: runPolling below.
15
+ import { spawn } from 'node:child_process';
16
+ import { startDeviceAuth, pollDeviceAuth, revokeCurrentKey } from './device-auth.js';
17
+ import { saveCredential, loadCredential, deleteCredential } from './credentials.js';
18
+ function sleep(ms) {
19
+ return new Promise((resolve) => setTimeout(resolve, ms));
20
+ }
21
+ function openBrowser(url) {
22
+ const platform = process.platform;
23
+ const [cmd, args] = platform === 'darwin'
24
+ ? ['open', [url]]
25
+ : platform === 'win32'
26
+ ? ['cmd', ['/c', 'start', '', url]]
27
+ : ['xdg-open', [url]];
28
+ // The URL is already printed; a browser is a convenience. A missing opener
29
+ // surfaces as an 'error' event on the child, which would crash the process
30
+ // if nobody listened.
31
+ try {
32
+ const child = spawn(cmd, args, { detached: true, stdio: 'ignore' });
33
+ child.on('error', (err) => {
34
+ console.error(`[briefgate] could not open a browser (${err.message}); open the URL yourself.`);
35
+ });
36
+ child.unref();
37
+ }
38
+ catch (err) {
39
+ console.error(`[briefgate] could not open a browser (${err.message}); open the URL yourself.`);
40
+ }
41
+ }
42
+ async function runPolling(baseUrl, deviceCode, intervalSec, expiresInSec) {
43
+ const deadline = Date.now() + expiresInSec * 1000;
44
+ let interval = intervalSec;
45
+ while (Date.now() < deadline) {
46
+ await sleep(interval * 1000);
47
+ let outcome;
48
+ try {
49
+ outcome = await pollDeviceAuth(baseUrl, deviceCode);
50
+ }
51
+ catch (err) {
52
+ // A blip on the network is not a decision; keep waiting for one.
53
+ console.error(`[briefgate] sign-in check failed, retrying: ${err.message}`);
54
+ continue;
55
+ }
56
+ switch (outcome.status) {
57
+ case 'success':
58
+ saveCredential(baseUrl, {
59
+ api_key: outcome.result.api_key,
60
+ key_id: outcome.result.key_id,
61
+ account_name: outcome.result.account_name,
62
+ saved_at: new Date().toISOString(),
63
+ });
64
+ return {
65
+ ok: true,
66
+ apiKey: outcome.result.api_key,
67
+ keyId: outcome.result.key_id,
68
+ accountName: outcome.result.account_name,
69
+ scopes: outcome.result.scopes,
70
+ };
71
+ case 'pending':
72
+ continue;
73
+ case 'slow_down':
74
+ // Honor the server's Retry-After when it sends one; otherwise just
75
+ // double, per RFC 8628.
76
+ interval = outcome.retryAfterSeconds ?? interval * 2;
77
+ continue;
78
+ case 'expired':
79
+ return { ok: false, reason: 'expired' };
80
+ case 'consumed':
81
+ return { ok: false, reason: 'consumed' };
82
+ case 'denied':
83
+ return { ok: false, reason: 'denied' };
84
+ case 'unknown_code':
85
+ return { ok: false, reason: 'unknown_code' };
86
+ }
87
+ }
88
+ return { ok: false, reason: 'timeout' };
89
+ }
90
+ function describeForTool(outcome) {
91
+ if (outcome.ok) {
92
+ return `Signed in as ${outcome.accountName} (key ${outcome.keyId}, scopes: ${outcome.scopes.join(', ')}).`;
93
+ }
94
+ switch (outcome.reason) {
95
+ case 'expired':
96
+ return 'The sign-in code expired before it was approved. Call `login` again to get a new one.';
97
+ case 'consumed':
98
+ return 'This sign-in code was already used. Call `login` again to get a new one.';
99
+ case 'denied':
100
+ return 'Sign-in was denied in the browser. Call `login` again to try once more.';
101
+ case 'unknown_code':
102
+ return 'The sign-in code was not recognized by the server. Call `login` again to get a new one.';
103
+ case 'timeout':
104
+ return 'Timed out waiting for approval (10 minutes). Call `login` again to get a new code.';
105
+ case 'error':
106
+ return `Sign-in failed: ${outcome.detail}`;
107
+ }
108
+ }
109
+ // Keyed by base URL: this process only ever needs one login in flight per
110
+ // BriefGate deployment it talks to (production vs. a staging BRIEFGATE_BASE_URL).
111
+ // Independent of loginBlocking() below, so a CLI `login` and an agent's
112
+ // `login` tool call never interfere with each other.
113
+ const inFlight = new Map();
114
+ /**
115
+ * Starts (or checks on) a device-authorization login for `baseUrl`.
116
+ * Never throws — failures come back as text explaining what happened.
117
+ */
118
+ export async function login({ baseUrl, clientName }) {
119
+ const existing = inFlight.get(baseUrl);
120
+ if (existing) {
121
+ if (existing.settled && existing.outcome) {
122
+ inFlight.delete(baseUrl);
123
+ const outcome = existing.outcome;
124
+ return { text: describeForTool(outcome), apiKey: outcome.ok ? outcome.apiKey : undefined };
125
+ }
126
+ if (!existing.settled) {
127
+ return {
128
+ text: `Still waiting for approval of code ${existing.userCode}. Open ${existing.verificationUriComplete} if you haven't, then call \`login\` again to check.`,
129
+ };
130
+ }
131
+ }
132
+ let start;
133
+ try {
134
+ start = await startDeviceAuth(baseUrl, clientName);
135
+ }
136
+ catch (err) {
137
+ return { text: err instanceof Error ? err.message : String(err) };
138
+ }
139
+ const entry = {
140
+ userCode: start.user_code,
141
+ verificationUriComplete: start.verification_uri_complete,
142
+ settled: false,
143
+ promise: Promise.resolve({ ok: false, reason: 'error' }), // placeholder, replaced immediately below
144
+ };
145
+ entry.promise = runPolling(baseUrl, start.device_code, start.interval, start.expires_in)
146
+ .catch((err) => ({
147
+ ok: false,
148
+ reason: 'error',
149
+ detail: err instanceof Error ? err.message : String(err),
150
+ }))
151
+ .then((outcome) => {
152
+ entry.settled = true;
153
+ entry.outcome = outcome;
154
+ return outcome;
155
+ });
156
+ inFlight.set(baseUrl, entry);
157
+ openBrowser(start.verification_uri_complete);
158
+ return {
159
+ text: `Open ${start.verification_uri_complete} and confirm code ${start.user_code}. I'll wait up to 10 minutes — call \`login\` again once you've approved it, or any time to check progress.`,
160
+ };
161
+ }
162
+ /**
163
+ * Runs the whole device-authorization flow to completion, blocking until it
164
+ * resolves (or times out at 10 minutes). `onCode` fires once, as soon as the
165
+ * code is known, so the caller can print it and open the browser before this
166
+ * promise settles. Independent of the `login()` in-flight map above.
167
+ */
168
+ export async function loginBlocking({ baseUrl, clientName }, onCode) {
169
+ const start = await startDeviceAuth(baseUrl, clientName);
170
+ onCode({ userCode: start.user_code, verificationUriComplete: start.verification_uri_complete });
171
+ openBrowser(start.verification_uri_complete);
172
+ const outcome = await runPolling(baseUrl, start.device_code, start.interval, start.expires_in);
173
+ if (outcome.ok) {
174
+ return { ok: true, text: `Signed in as ${outcome.accountName}.`, apiKey: outcome.apiKey };
175
+ }
176
+ const reasonText = {
177
+ expired: 'The sign-in code expired before it was approved.',
178
+ consumed: 'This sign-in code was already used.',
179
+ denied: 'Sign-in was denied.',
180
+ unknown_code: 'The sign-in code was not recognized by the server.',
181
+ timeout: 'Timed out waiting for approval (10 minutes).',
182
+ error: outcome.detail ?? 'Sign-in failed.',
183
+ };
184
+ return { ok: false, text: reasonText[outcome.reason] };
185
+ }
186
+ // ─── logout() — shared by the MCP tool and the CLI subcommand ─────────────────
187
+ /**
188
+ * Removes the locally stored key for `baseUrl` and best-effort revokes it on
189
+ * the server. A network failure while revoking never blocks the local
190
+ * removal — the caller is told to revoke it from the dashboard instead.
191
+ */
192
+ export async function logout(baseUrl) {
193
+ inFlight.delete(baseUrl);
194
+ const existing = loadCredential(baseUrl);
195
+ if (!existing) {
196
+ return `No locally stored key for ${baseUrl} — nothing to do.`;
197
+ }
198
+ const revoked = await revokeCurrentKey(baseUrl, existing.api_key);
199
+ deleteCredential(baseUrl);
200
+ if (revoked === 'failed') {
201
+ return `Signed out of ${baseUrl} locally. Key could not be revoked remotely; revoke it on the keys page.`;
202
+ }
203
+ return `Signed out of ${baseUrl} and revoked the key.`;
204
+ }
205
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"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"}
package/dist/tools.d.ts CHANGED
@@ -8,7 +8,7 @@ export declare const itemDefinitionSchema: z.ZodEffects<z.ZodObject<{
8
8
  label: z.ZodString;
9
9
  help: z.ZodOptional<z.ZodString>;
10
10
  required: z.ZodDefault<z.ZodBoolean>;
11
- constraints: z.ZodOptional<z.ZodObject<{
11
+ constraints: z.ZodOptional<z.ZodEffects<z.ZodObject<{
12
12
  formats: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
13
13
  min_width: z.ZodOptional<z.ZodNumber>;
14
14
  min_height: z.ZodOptional<z.ZodNumber>;
@@ -44,6 +44,30 @@ export declare const itemDefinitionSchema: z.ZodEffects<z.ZodObject<{
44
44
  min_count?: number | undefined;
45
45
  max_count?: number | undefined;
46
46
  transparent_background?: boolean | undefined;
47
+ }>, {
48
+ formats?: string[] | undefined;
49
+ min_width?: number | undefined;
50
+ min_height?: number | undefined;
51
+ max_width?: number | undefined;
52
+ max_height?: number | undefined;
53
+ max_bytes?: number | undefined;
54
+ min_chars?: number | undefined;
55
+ max_chars?: number | undefined;
56
+ min_count?: number | undefined;
57
+ max_count?: number | undefined;
58
+ transparent_background?: boolean | undefined;
59
+ }, {
60
+ formats?: string[] | undefined;
61
+ min_width?: number | undefined;
62
+ min_height?: number | undefined;
63
+ max_width?: number | undefined;
64
+ max_height?: number | undefined;
65
+ max_bytes?: number | undefined;
66
+ min_chars?: number | undefined;
67
+ max_chars?: number | undefined;
68
+ min_count?: number | undefined;
69
+ max_count?: number | undefined;
70
+ transparent_background?: boolean | undefined;
47
71
  }>>;
48
72
  schema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
49
73
  options: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -68,7 +92,7 @@ export declare const itemDefinitionSchema: z.ZodEffects<z.ZodObject<{
68
92
  rationale?: string | undefined;
69
93
  }>>;
70
94
  }, "strict", z.ZodTypeAny, {
71
- type: "boolean" | "text" | "longtext" | "file" | "file_list" | "image" | "color_list" | "select" | "multiselect" | "url" | "secret" | "structured";
95
+ type: "boolean" | "file" | "text" | "longtext" | "file_list" | "image" | "color_list" | "select" | "multiselect" | "url" | "secret" | "structured";
72
96
  label: string;
73
97
  key: string;
74
98
  assignee: "client" | "owner";
@@ -98,7 +122,7 @@ export declare const itemDefinitionSchema: z.ZodEffects<z.ZodObject<{
98
122
  rationale?: string | undefined;
99
123
  } | undefined;
100
124
  }, {
101
- type: "boolean" | "text" | "longtext" | "file" | "file_list" | "image" | "color_list" | "select" | "multiselect" | "url" | "secret" | "structured";
125
+ type: "boolean" | "file" | "text" | "longtext" | "file_list" | "image" | "color_list" | "select" | "multiselect" | "url" | "secret" | "structured";
102
126
  label: string;
103
127
  key: string;
104
128
  options?: {
@@ -128,7 +152,7 @@ export declare const itemDefinitionSchema: z.ZodEffects<z.ZodObject<{
128
152
  rationale?: string | undefined;
129
153
  } | undefined;
130
154
  }>, {
131
- type: "boolean" | "text" | "longtext" | "file" | "file_list" | "image" | "color_list" | "select" | "multiselect" | "url" | "secret" | "structured";
155
+ type: "boolean" | "file" | "text" | "longtext" | "file_list" | "image" | "color_list" | "select" | "multiselect" | "url" | "secret" | "structured";
132
156
  label: string;
133
157
  key: string;
134
158
  assignee: "client" | "owner";
@@ -158,7 +182,7 @@ export declare const itemDefinitionSchema: z.ZodEffects<z.ZodObject<{
158
182
  rationale?: string | undefined;
159
183
  } | undefined;
160
184
  }, {
161
- type: "boolean" | "text" | "longtext" | "file" | "file_list" | "image" | "color_list" | "select" | "multiselect" | "url" | "secret" | "structured";
185
+ type: "boolean" | "file" | "text" | "longtext" | "file_list" | "image" | "color_list" | "select" | "multiselect" | "url" | "secret" | "structured";
162
186
  label: string;
163
187
  key: string;
164
188
  options?: {
@@ -1055,6 +1079,62 @@ export declare const TOOLS: ({
1055
1079
  };
1056
1080
  required: string[];
1057
1081
  };
1082
+ } | {
1083
+ name: string;
1084
+ title: string;
1085
+ annotations: {
1086
+ title: string;
1087
+ readOnlyHint: boolean;
1088
+ destructiveHint: boolean;
1089
+ idempotentHint: boolean;
1090
+ openWorldHint: boolean;
1091
+ };
1092
+ description: string;
1093
+ inputSchema: {
1094
+ type: "object";
1095
+ properties: {
1096
+ project_name?: undefined;
1097
+ client?: undefined;
1098
+ due_date?: undefined;
1099
+ branding?: undefined;
1100
+ chase_schedule?: undefined;
1101
+ chase_interval?: undefined;
1102
+ chase_interval_unit?: undefined;
1103
+ respect_quiet_hours?: undefined;
1104
+ max_reminders?: undefined;
1105
+ email_copy?: undefined;
1106
+ chase_at_time?: undefined;
1107
+ items?: undefined;
1108
+ template?: undefined;
1109
+ auto_approve_hours?: undefined;
1110
+ retention?: undefined;
1111
+ send?: undefined;
1112
+ intake_id?: undefined;
1113
+ only_new?: undefined;
1114
+ include_pending?: undefined;
1115
+ item_key?: undefined;
1116
+ note?: undefined;
1117
+ channel?: undefined;
1118
+ status?: undefined;
1119
+ client_email?: undefined;
1120
+ limit?: undefined;
1121
+ offset?: undefined;
1122
+ type?: undefined;
1123
+ label?: undefined;
1124
+ help?: undefined;
1125
+ required?: undefined;
1126
+ constraints?: undefined;
1127
+ options?: undefined;
1128
+ pattern?: undefined;
1129
+ discard_submitted_value?: undefined;
1130
+ action?: undefined;
1131
+ url?: undefined;
1132
+ events?: undefined;
1133
+ format?: undefined;
1134
+ webhook_id?: undefined;
1135
+ };
1136
+ required?: undefined;
1137
+ };
1058
1138
  })[];
1059
1139
  export interface ToolResult {
1060
1140
  text: string;
@@ -1069,5 +1149,9 @@ export declare function callListIntakes(config: BriefGateConfig, args: unknown):
1069
1149
  export declare function callAddItems(config: BriefGateConfig, args: unknown): Promise<ToolResult>;
1070
1150
  export declare function callUpdateItem(config: BriefGateConfig, args: unknown): Promise<ToolResult>;
1071
1151
  export declare function callManageWebhook(config: BriefGateConfig, args: unknown): Promise<ToolResult>;
1072
- export declare function executeTool(name: string, config: BriefGateConfig, args: unknown): Promise<ToolResult>;
1152
+ export interface ToolContext {
1153
+ /** MCP client name from `initialize`, used only to label the login device. */
1154
+ clientName?: string;
1155
+ }
1156
+ export declare function executeTool(name: string, config: BriefGateConfig, args: unknown, context?: ToolContext): Promise<ToolResult>;
1073
1157
  //# sourceMappingURL=tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,KAAK,eAAe,EAYrB,MAAM,aAAa,CAAC;AAIrB,eAAO,MAAM,aAAa,aAOvB,CAAC;AA+CJ,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0D7B,CAAC;AAiHL,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+nBjB,CAAC;AAIF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAkFD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAgCrB;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAMrB;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAgBrB;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAiBrB;AAED,wBAAsB,aAAa,CACjC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAcrB;AAED,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAerB;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAWrB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAOrB;AAID,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAsDrB;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,UAAU,CAAC,CAuBrB"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}