@pipe0/client 1.0.1 → 1.0.2

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.d.mts CHANGED
@@ -1,3 +1,4 @@
1
+ import { CapacitySnapshot, CapacityTracker } from "./capacity-tracker.mjs";
1
2
  import { ClientPipesPayload, ClientPipesPayloadMap, ClientPipesRequest, ClientSearchPayload, ClientSearchPayloadMap, ClientSearchRequest } from "./generated/types.mjs";
2
- import { BatchOptions, Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0Options, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError, PipesRequest, PipesResponse, SearchAllItem, SearchAllOptions, SearchAllResult, SearchRequest, SearchResponse, SearchesRequest, SearchesResponse, SheetEffectsRequest, SheetEffectsResponse } from "./pipe0.mjs";
3
- export { BatchOptions, ClientPipesPayload, ClientPipesPayloadMap, ClientPipesRequest, ClientSearchPayload, ClientSearchPayloadMap, ClientSearchRequest, Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0Options, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError, PipesRequest, PipesResponse, SearchAllItem, SearchAllOptions, SearchAllResult, SearchRequest, SearchResponse, SearchesRequest, SearchesResponse, SheetEffectsRequest, SheetEffectsResponse };
3
+ import { BatchOptions, Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0CanceledError, Pipe0Options, Pipe0RateLimitError, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError, PipesRequest, PipesResponse, SearchAllItem, SearchAllOptions, SearchAllResult, SearchRequest, SearchResponse, SearchesRequest, SearchesResponse, SheetEffectsRequest, SheetEffectsResponse } from "./pipe0.mjs";
4
+ export { BatchOptions, CapacitySnapshot, CapacityTracker, ClientPipesPayload, ClientPipesPayloadMap, ClientPipesRequest, ClientSearchPayload, ClientSearchPayloadMap, ClientSearchRequest, Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0CanceledError, Pipe0Options, Pipe0RateLimitError, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError, PipesRequest, PipesResponse, SearchAllItem, SearchAllOptions, SearchAllResult, SearchRequest, SearchResponse, SearchesRequest, SearchesResponse, SheetEffectsRequest, SheetEffectsResponse };
package/dist/index.mjs CHANGED
@@ -1,3 +1,4 @@
1
- import { Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError } from "./pipe0.mjs";
1
+ import { CapacityTracker } from "./capacity-tracker.mjs";
2
+ import { Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0CanceledError, Pipe0RateLimitError, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError } from "./pipe0.mjs";
2
3
 
3
- export { Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError };
4
+ export { CapacityTracker, Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0CanceledError, Pipe0RateLimitError, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError };
package/dist/pipe0.d.mts CHANGED
@@ -1,3 +1,4 @@
1
+ import { CapacitySnapshot } from "./capacity-tracker.mjs";
1
2
  import { components, paths } from "./generated/openapi.types.mjs";
2
3
  import { Client } from "openapi-fetch";
3
4
 
@@ -18,6 +19,14 @@ declare class Pipe0AbortError extends Error {
18
19
  readonly runId?: string | undefined;
19
20
  constructor(message: string, runId?: string | undefined);
20
21
  }
22
+ /**
23
+ * The server reports the run as `canceled` (via `pipes.cancel` /
24
+ * `searches.cancel` or another client). Subclasses {@link Pipe0AbortError} so
25
+ * existing `instanceof Pipe0AbortError` handling keeps working.
26
+ */
27
+ declare class Pipe0CanceledError extends Pipe0AbortError {
28
+ constructor(message: string, runId?: string);
29
+ }
21
30
  declare class Pipe0BatchError extends Error {
22
31
  readonly errors: Array<{
23
32
  batchIndex: number;
@@ -34,7 +43,32 @@ declare class Pipe0TaskError extends Error {
34
43
  constructor(message: string, responseBody?: unknown | undefined);
35
44
  }
36
45
  declare class Pipe0ServerError extends Error {
37
- constructor(message: string);
46
+ /** HTTP status of the error response, when known. */
47
+ readonly status?: number;
48
+ /** RFC 7807 problem `type` discriminator (e.g. "queue-limit-exceeded", "org-rate-limited"). */
49
+ readonly problemType?: string;
50
+ constructor(message: string, options?: {
51
+ status?: number;
52
+ problemType?: string;
53
+ });
54
+ }
55
+ /**
56
+ * Thrown only after the SDK's automatic 429 handling exhausted its wait
57
+ * budget (`rateLimitMaxWaitMs` / `queueFullMaxWaitMs`), or immediately when
58
+ * `autoRetry429` is disabled the error surfaces as a plain
59
+ * {@link Pipe0ServerError} instead. Subclasses Pipe0ServerError so existing
60
+ * handling keeps working.
61
+ */
62
+ declare class Pipe0RateLimitError extends Pipe0ServerError {
63
+ /** The delay the SDK would have waited next, in ms. */
64
+ readonly retryAfterMs?: number;
65
+ /** Attempts made before giving up. */
66
+ readonly attempts: number;
67
+ constructor(message: string, options?: {
68
+ problemType?: string;
69
+ retryAfterMs?: number;
70
+ attempts?: number;
71
+ });
38
72
  }
39
73
  interface BatchOptions {
40
74
  /**
@@ -54,6 +88,18 @@ interface BatchOptions {
54
88
  * AbortSignal to cancel all batch operations
55
89
  */
56
90
  signal?: AbortSignal;
91
+ /**
92
+ * The worst task priority the pool will voluntarily submit at. When the
93
+ * next batch would land below this floor, submission waits for capacity
94
+ * (returned by your own runs completing) instead. `3` means only the hard
95
+ * ceiling paces you. @default the instance `priorityFloor` (2)
96
+ */
97
+ priorityFloor?: 1 | 2 | 3;
98
+ /**
99
+ * Cancel still-pending runs server-side when the AbortSignal fires.
100
+ * @default the instance `cancelOnAbort` (true)
101
+ */
102
+ cancelOnAbort?: boolean;
57
103
  }
58
104
  interface SearchAllItem {
59
105
  /** The search payload (`search_id` + `config`), same shape as `searches.search`. */
@@ -98,6 +144,11 @@ interface SearchAllOptions {
98
144
  * in `errors` and partial results are returned. @default true
99
145
  */
100
146
  stopOnError?: boolean;
147
+ /**
148
+ * Cancel still-pending search runs server-side when the AbortSignal fires.
149
+ * @default the instance `cancelOnAbort` (true)
150
+ */
151
+ cancelOnAbort?: boolean;
101
152
  }
102
153
  interface SearchAllResult {
103
154
  /** Merged (and optionally deduped) results across every search and page. */
@@ -137,6 +188,53 @@ interface Pipe0Options {
137
188
  * @default 5
138
189
  */
139
190
  maxConcurrentBatches?: number;
191
+ /**
192
+ * Automatically absorb 429 responses: `org-rate-limited` sleeps the
193
+ * server's Retry-After and retries; `queue-limit-exceeded` (queued-record
194
+ * hard ceiling) backoff-retries the create until capacity frees. A
195
+ * {@link Pipe0RateLimitError} is thrown only after the wait budget below is
196
+ * exhausted. @default true
197
+ */
198
+ autoRetry429?: boolean;
199
+ /**
200
+ * Upper bound on a single Retry-After wait in milliseconds.
201
+ * @default 30000 (30 seconds)
202
+ */
203
+ retryAfterCapMs?: number;
204
+ /**
205
+ * Total wait budget for `org-rate-limited` retries per request.
206
+ * @default 120000 (2 minutes)
207
+ */
208
+ rateLimitMaxWaitMs?: number;
209
+ /**
210
+ * Total wait budget for `queue-limit-exceeded` retries per create.
211
+ * @default 900000 (15 minutes)
212
+ */
213
+ queueFullMaxWaitMs?: number;
214
+ /**
215
+ * When an AbortSignal fires while the SDK is waiting on runs, cancel the
216
+ * still-pending runs server-side (best-effort) so their records return to
217
+ * your capacity immediately. Set `false` for abort-but-keep-running
218
+ * semantics. @default true
219
+ */
220
+ cancelOnAbort?: boolean;
221
+ /**
222
+ * Default priority floor for `pipeInBatches`: the worst task priority the
223
+ * batch pool voluntarily submits at (see the X-P1/P2/P3-Capacity headers).
224
+ * @default 2
225
+ */
226
+ priorityFloor?: 1 | 2 | 3;
227
+ /**
228
+ * When batch submission is capacity-blocked with nothing of its own in
229
+ * flight (capacity held by other clients), the pool re-probes by submitting
230
+ * one batch after this delay — its response headers re-baseline the
231
+ * capacity estimate. @default 15000 (15 seconds)
232
+ */
233
+ pacingProbeMs?: number;
234
+ /** Observer invoked whenever fresh capacity headers are seen. */
235
+ onCapacity?: (snapshot: CapacitySnapshot) => void;
236
+ /** Custom fetch implementation (e.g. for testing). */
237
+ fetch?: (input: Request) => Promise<Response>;
140
238
  }
141
239
  declare class Pipe0 {
142
240
  client: Client<paths, `${string}/${string}`>;
@@ -146,7 +244,35 @@ declare class Pipe0 {
146
244
  private maxPollingIntervalMs;
147
245
  private defaultBatchSize;
148
246
  private maxConcurrentBatches;
247
+ private autoRetry429;
248
+ private retryAfterCapMs;
249
+ private rateLimitMaxWaitMs;
250
+ private queueFullMaxWaitMs;
251
+ private defaultCancelOnAbort;
252
+ private defaultPriorityFloor;
253
+ private pacingProbeMs;
254
+ private onCapacity?;
255
+ private tracker;
149
256
  constructor(options?: Pipe0Options);
257
+ /**
258
+ * The SDK's current estimate of your organization's queue capacity, from
259
+ * the most recent run-creating response's headers adjusted by runs the SDK
260
+ * has since observed completing. Null until the first create.
261
+ */
262
+ get capacity(): CapacitySnapshot | null;
263
+ /**
264
+ * The single request funnel: every API call goes through here so 429
265
+ * handling and capacity bookkeeping live in exactly one place.
266
+ *
267
+ * - `org-rate-limited` (request bucket, has Retry-After): sleep and retry,
268
+ * budget `rateLimitMaxWaitMs`.
269
+ * - `queue-limit-exceeded` (queued-record hard ceiling, no Retry-After):
270
+ * exponential backoff retry, budget `queueFullMaxWaitMs` — re-issuing the
271
+ * create is safe because the ceiling rejects before anything is queued.
272
+ * - Anything else throws {@link Pipe0ServerError} with `status` +
273
+ * `problemType` attached.
274
+ */
275
+ private request;
150
276
  /**
151
277
  * Centralized logic to poll until a task completes, fails, or times out.
152
278
  */
@@ -158,15 +284,20 @@ declare class Pipe0 {
158
284
  pipe: (payload: PipesRequest, options?: {
159
285
  onPoll?: (_response: PipesResponse) => unknown;
160
286
  signal?: AbortSignal;
287
+ cancelOnAbort?: boolean;
161
288
  }) => Promise<PipesResponse>;
162
289
  /**
163
- * Create a pipes task but don't want for it. Use this method if you want to fire and forget.
290
+ * Create a pipes task but don't wait for it. Use this method if you want to fire and forget.
164
291
  */
165
- create: (payload: PipesRequest) => Promise<string>;
292
+ create: (payload: PipesRequest, options?: {
293
+ signal?: AbortSignal;
294
+ }) => Promise<string>;
166
295
  /**
167
296
  * Check the status of a pipes task manually.
168
297
  */
169
- check: (runId: string) => Promise<{
298
+ check: (runId: string, options?: {
299
+ signal?: AbortSignal;
300
+ }) => Promise<{
170
301
  id: string;
171
302
  organization_id: string;
172
303
  order: (number | string)[];
@@ -271,7 +402,121 @@ declare class Pipe0 {
271
402
  };
272
403
  };
273
404
  };
274
- status: "completed" | "failed" | "pending" | "processing";
405
+ status: "completed" | "failed" | "pending" | "processing" | "canceled";
406
+ }>;
407
+ /**
408
+ * Cancel a still-pending pipes run. Its records return to your
409
+ * organization's capacity immediately. Runs that are already processing
410
+ * or finished throw a {@link Pipe0ServerError} with `status: 409`.
411
+ */
412
+ cancel: (runId: string, options?: {
413
+ signal?: AbortSignal;
414
+ }) => Promise<{
415
+ id: string;
416
+ organization_id: string;
417
+ order: (number | string)[];
418
+ field_definitions: {
419
+ [key: string]: {
420
+ type: "string" | "number" | "boolean" | "json" | "unknown";
421
+ label: string;
422
+ added_by: {
423
+ ref: ("prompt:run@1" | "agent:run@1" | "company:newssummary:website@1" | "company:newssummary:domain@1" | "company:techstack:builtwith@1" | "company:techstack:builtwith@2" | "company:websiteurl:email@1" | "company:domain:workemail@1" | "company:funding:leadmagic@1" | "company:funding:leadmagic@2" | "company:funding:waterfall@1" | "people:workemail:waterfall@1" | "person:workemail:waterfall@1" | "people:email:iswork@1" | "email:iswork@1" | "people:name:split@1" | "person:name:split@1" | "person:name:join@1" | "people:validate:email:zerobounce@1" | "people:email:validate:zerobounce@2" | "email:validate:zerobounce@1" | "people:mobilenumber:workemail:waterfall@1" | "company:overview@1" | "company:overview@2" | "company:overview@3" | "json:extract:multi@1" | "email:write@1" | "message:write@1" | "email:send:resend@1" | "email:send:gmail@1" | "email:draft:gmail@1" | "message:send:slack@1" | "message:send-direct:slack@1" | "template:fill@1" | "contact:create:resend@1" | "lead:enroll:lemlist@1" | "contact:match:hubspot@1" | "company:match:hubspot@1" | "deal:match:hubspot@1" | "object:update:hubspot@1" | "object:associations:hubspot@1" | "activity:log:hubspot@1" | "person:match:salesforce@1" | "account:match:salesforce@1" | "opportunity:match:salesforce@1" | "record:lookup:salesforce@1" | "record:update:salesforce@1" | "record:assert:salesforce@1" | "activities:find:salesforce@1" | "activity:log:salesforce@1" | "person:match:attio@1" | "company:match:attio@1" | "deal:match:attio@1" | "record:match:attio@1" | "record:lookup:attio@1" | "record:update:attio@1" | "activities:find:attio@1" | "lead:enroll:amplemarket@1" | "people:match:role:waterfall@1" | "person:match:role:waterfall@1" | "person:identity:amplemarket@1" | "company:identity@2" | "company:identity@3" | "company:identity:crustdata@1" | "person:match:amplemarket@1" | "people:phone:profile:waterfall@1" | "person:mobile:profileurl:waterfall@1" | "people:personalemail:profile:waterfall@1" | "person:personalemail:profileurl:waterfall@1" | "people:profile:waterfall@1" | "person:profile:waterfall@1" | "person:profile:waterfall@2" | "people:profileurl:email:waterfall@1" | "person:profileurl:email:waterfall@1" | "person:profileurl:name@1" | "people:email:validate:zerobounce@1" | "person:email:validate:millionverifier@1" | "people:phone:workemail:waterfall@1" | "person:mobile:workemail:waterfall@1" | "fields:merge@1" | "field:slugify@1" | "field:domainify@1" | "field:timestamp@1" | "formula:run@1" | "signals:personprofilematch@1" | "website:scrape:firecrawl@1" | "website:scrapelist:firecrawl@1" | "website:extract:firecrawl@1" | "website:extract:parallel@1" | "website:maplinks:firecrawl@1" | "row:append:sheet@1" | "row:expandappend:sheet@1" | "row:roundrobin:sheet@1" | "bucket:claim@1" | "bucket:count@1" | "bucket:check@1" | "bucket:countif@1" | "rows:find:sheet@1" | "rows:delete:sheet@1" | "rows:find:postgres@1" | "rows:find:databricks@1" | "company:lookalikes:companyenrich@1" | "company:lookalikes:companyenrich@2" | "company:match:logodev@1" | "company:match:logodev@2" | "person:posts:content:crustdata@1" | "company:match:crustdata@1" | "company:match:crustdata@2" | "people:profile:workemail:crustdata@1" | "person:profile:workemail:crustdata@1" | "people:workemail:profileurl:waterfall@1" | "person:workemail:profileurl:waterfall@1" | "people:identity:email:waterfall@1" | "person:identity:email:waterfall@1" | "person:identity:email:waterfall@2" | "person:devprofileurl:profileurl:waterfall@1" | "http:request@1" | "company:identity@1" | "people:professionalprofile:waterfall@1" | "people:professionalprofileurl:name@1" | "people:professionalprofileurl:email:waterfall@1" | "people:mobilenumber:professionalprofile:waterfall@1") | "input";
424
+ config_hash: string | null;
425
+ pipe_index: number | null;
426
+ };
427
+ format: "json_object" | "json_list" | "json_list_string" | "url" | "website_url" | "profile_url" | "email" | "datetime" | "currency" | "date" | "phone" | "markdown" | "text" | "int" | "decimal" | "address_line_1" | "zip_code" | "percent" | null;
428
+ is_primary_output: boolean;
429
+ order?: number | null;
430
+ };
431
+ };
432
+ errors: {
433
+ code: string;
434
+ message: string;
435
+ path?: string;
436
+ }[];
437
+ records: {
438
+ [key: string]: {
439
+ id: number | string;
440
+ fields: {
441
+ [key: string]: {
442
+ value: string | number | boolean | null | {
443
+ [key: string]: unknown;
444
+ } | unknown[];
445
+ status: "completed" | "failed" | "pending" | "queued" | "processing" | "no_result" | "skipped";
446
+ type: "string" | "number" | "boolean" | "json" | "unknown";
447
+ reason: {
448
+ code: string;
449
+ summary: string;
450
+ message: string;
451
+ } | null;
452
+ claimed_by: {
453
+ ref: "prompt:run@1" | "agent:run@1" | "company:newssummary:website@1" | "company:newssummary:domain@1" | "company:techstack:builtwith@1" | "company:techstack:builtwith@2" | "company:websiteurl:email@1" | "company:domain:workemail@1" | "company:funding:leadmagic@1" | "company:funding:leadmagic@2" | "company:funding:waterfall@1" | "people:workemail:waterfall@1" | "person:workemail:waterfall@1" | "people:email:iswork@1" | "email:iswork@1" | "people:name:split@1" | "person:name:split@1" | "person:name:join@1" | "people:validate:email:zerobounce@1" | "people:email:validate:zerobounce@2" | "email:validate:zerobounce@1" | "people:mobilenumber:workemail:waterfall@1" | "company:overview@1" | "company:overview@2" | "company:overview@3" | "json:extract:multi@1" | "email:write@1" | "message:write@1" | "email:send:resend@1" | "email:send:gmail@1" | "email:draft:gmail@1" | "message:send:slack@1" | "message:send-direct:slack@1" | "template:fill@1" | "contact:create:resend@1" | "lead:enroll:lemlist@1" | "contact:match:hubspot@1" | "company:match:hubspot@1" | "deal:match:hubspot@1" | "object:update:hubspot@1" | "object:associations:hubspot@1" | "activity:log:hubspot@1" | "person:match:salesforce@1" | "account:match:salesforce@1" | "opportunity:match:salesforce@1" | "record:lookup:salesforce@1" | "record:update:salesforce@1" | "record:assert:salesforce@1" | "activities:find:salesforce@1" | "activity:log:salesforce@1" | "person:match:attio@1" | "company:match:attio@1" | "deal:match:attio@1" | "record:match:attio@1" | "record:lookup:attio@1" | "record:update:attio@1" | "activities:find:attio@1" | "lead:enroll:amplemarket@1" | "people:match:role:waterfall@1" | "person:match:role:waterfall@1" | "person:identity:amplemarket@1" | "company:identity@2" | "company:identity@3" | "company:identity:crustdata@1" | "person:match:amplemarket@1" | "people:phone:profile:waterfall@1" | "person:mobile:profileurl:waterfall@1" | "people:personalemail:profile:waterfall@1" | "person:personalemail:profileurl:waterfall@1" | "people:profile:waterfall@1" | "person:profile:waterfall@1" | "person:profile:waterfall@2" | "people:profileurl:email:waterfall@1" | "person:profileurl:email:waterfall@1" | "person:profileurl:name@1" | "people:email:validate:zerobounce@1" | "person:email:validate:millionverifier@1" | "people:phone:workemail:waterfall@1" | "person:mobile:workemail:waterfall@1" | "fields:merge@1" | "field:slugify@1" | "field:domainify@1" | "field:timestamp@1" | "formula:run@1" | "signals:personprofilematch@1" | "website:scrape:firecrawl@1" | "website:scrapelist:firecrawl@1" | "website:extract:firecrawl@1" | "website:extract:parallel@1" | "website:maplinks:firecrawl@1" | "row:append:sheet@1" | "row:expandappend:sheet@1" | "row:roundrobin:sheet@1" | "bucket:claim@1" | "bucket:count@1" | "bucket:check@1" | "bucket:countif@1" | "rows:find:sheet@1" | "rows:delete:sheet@1" | "rows:find:postgres@1" | "rows:find:databricks@1" | "company:lookalikes:companyenrich@1" | "company:lookalikes:companyenrich@2" | "company:match:logodev@1" | "company:match:logodev@2" | "person:posts:content:crustdata@1" | "company:match:crustdata@1" | "company:match:crustdata@2" | "people:profile:workemail:crustdata@1" | "person:profile:workemail:crustdata@1" | "people:workemail:profileurl:waterfall@1" | "person:workemail:profileurl:waterfall@1" | "people:identity:email:waterfall@1" | "person:identity:email:waterfall@1" | "person:identity:email:waterfall@2" | "person:devprofileurl:profileurl:waterfall@1" | "http:request@1" | "company:identity@1" | "people:professionalprofile:waterfall@1" | "people:professionalprofileurl:name@1" | "people:professionalprofileurl:email:waterfall@1" | "people:mobilenumber:professionalprofile:waterfall@1" | "input" | null;
454
+ config_hash: string | null;
455
+ };
456
+ resolved_by: {
457
+ ref: "prompt:run@1" | "agent:run@1" | "company:newssummary:website@1" | "company:newssummary:domain@1" | "company:techstack:builtwith@1" | "company:techstack:builtwith@2" | "company:websiteurl:email@1" | "company:domain:workemail@1" | "company:funding:leadmagic@1" | "company:funding:leadmagic@2" | "company:funding:waterfall@1" | "people:workemail:waterfall@1" | "person:workemail:waterfall@1" | "people:email:iswork@1" | "email:iswork@1" | "people:name:split@1" | "person:name:split@1" | "person:name:join@1" | "people:validate:email:zerobounce@1" | "people:email:validate:zerobounce@2" | "email:validate:zerobounce@1" | "people:mobilenumber:workemail:waterfall@1" | "company:overview@1" | "company:overview@2" | "company:overview@3" | "json:extract:multi@1" | "email:write@1" | "message:write@1" | "email:send:resend@1" | "email:send:gmail@1" | "email:draft:gmail@1" | "message:send:slack@1" | "message:send-direct:slack@1" | "template:fill@1" | "contact:create:resend@1" | "lead:enroll:lemlist@1" | "contact:match:hubspot@1" | "company:match:hubspot@1" | "deal:match:hubspot@1" | "object:update:hubspot@1" | "object:associations:hubspot@1" | "activity:log:hubspot@1" | "person:match:salesforce@1" | "account:match:salesforce@1" | "opportunity:match:salesforce@1" | "record:lookup:salesforce@1" | "record:update:salesforce@1" | "record:assert:salesforce@1" | "activities:find:salesforce@1" | "activity:log:salesforce@1" | "person:match:attio@1" | "company:match:attio@1" | "deal:match:attio@1" | "record:match:attio@1" | "record:lookup:attio@1" | "record:update:attio@1" | "activities:find:attio@1" | "lead:enroll:amplemarket@1" | "people:match:role:waterfall@1" | "person:match:role:waterfall@1" | "person:identity:amplemarket@1" | "company:identity@2" | "company:identity@3" | "company:identity:crustdata@1" | "person:match:amplemarket@1" | "people:phone:profile:waterfall@1" | "person:mobile:profileurl:waterfall@1" | "people:personalemail:profile:waterfall@1" | "person:personalemail:profileurl:waterfall@1" | "people:profile:waterfall@1" | "person:profile:waterfall@1" | "person:profile:waterfall@2" | "people:profileurl:email:waterfall@1" | "person:profileurl:email:waterfall@1" | "person:profileurl:name@1" | "people:email:validate:zerobounce@1" | "person:email:validate:millionverifier@1" | "people:phone:workemail:waterfall@1" | "person:mobile:workemail:waterfall@1" | "fields:merge@1" | "field:slugify@1" | "field:domainify@1" | "field:timestamp@1" | "formula:run@1" | "signals:personprofilematch@1" | "website:scrape:firecrawl@1" | "website:scrapelist:firecrawl@1" | "website:extract:firecrawl@1" | "website:extract:parallel@1" | "website:maplinks:firecrawl@1" | "row:append:sheet@1" | "row:expandappend:sheet@1" | "row:roundrobin:sheet@1" | "bucket:claim@1" | "bucket:count@1" | "bucket:check@1" | "bucket:countif@1" | "rows:find:sheet@1" | "rows:delete:sheet@1" | "rows:find:postgres@1" | "rows:find:databricks@1" | "company:lookalikes:companyenrich@1" | "company:lookalikes:companyenrich@2" | "company:match:logodev@1" | "company:match:logodev@2" | "person:posts:content:crustdata@1" | "company:match:crustdata@1" | "company:match:crustdata@2" | "people:profile:workemail:crustdata@1" | "person:profile:workemail:crustdata@1" | "people:workemail:profileurl:waterfall@1" | "person:workemail:profileurl:waterfall@1" | "people:identity:email:waterfall@1" | "person:identity:email:waterfall@1" | "person:identity:email:waterfall@2" | "person:devprofileurl:profileurl:waterfall@1" | "http:request@1" | "company:identity@1" | "people:professionalprofile:waterfall@1" | "people:professionalprofileurl:name@1" | "people:professionalprofileurl:email:waterfall@1" | "people:mobilenumber:professionalprofile:waterfall@1" | "input" | "system" | null;
458
+ environment: "production" | "sandbox" | null;
459
+ config_hash: string | null;
460
+ input_hash: string | null;
461
+ } | null;
462
+ widgets?: {
463
+ display_value?: {
464
+ type?: "static";
465
+ label?: string;
466
+ };
467
+ entity_logo?: {
468
+ type?: "static";
469
+ image_url: string;
470
+ entity: string;
471
+ };
472
+ location_indicator?: {
473
+ type?: "static";
474
+ emoji: string;
475
+ };
476
+ avatar?: {
477
+ type?: "static";
478
+ image_url: string;
479
+ name: string;
480
+ };
481
+ waterfall?: {
482
+ type?: "static";
483
+ attempted_providers: {
484
+ provider: "pipe0" | "findymail" | "crustdata" | "hunter" | "zerobounce" | "millionverifier" | "googlemaps" | "gemini" | "anthropic" | "leadmagic" | "mixrank" | "builtwith" | "perplexity" | "serper" | "icypeas" | "prospeo" | "clado" | "resend" | "slack" | "gmail" | "googlecalendar" | "firecrawl" | "exa" | "openai" | "companyenrich" | "logodev" | "amplemarket" | "parallel" | "luma" | "postgres" | "databricks" | "lemlist" | "hubspot" | "salesforce" | "attio";
485
+ }[];
486
+ available_providers: ("pipe0" | "findymail" | "crustdata" | "hunter" | "zerobounce" | "millionverifier" | "googlemaps" | "gemini" | "anthropic" | "leadmagic" | "mixrank" | "builtwith" | "perplexity" | "serper" | "icypeas" | "prospeo" | "clado" | "resend" | "slack" | "gmail" | "googlecalendar" | "firecrawl" | "exa" | "openai" | "companyenrich" | "logodev" | "amplemarket" | "parallel" | "luma" | "postgres" | "databricks" | "lemlist" | "hubspot" | "salesforce" | "attio")[];
487
+ successful_provider?: "pipe0" | "findymail" | "crustdata" | "hunter" | "zerobounce" | "millionverifier" | "googlemaps" | "gemini" | "anthropic" | "leadmagic" | "mixrank" | "builtwith" | "perplexity" | "serper" | "icypeas" | "prospeo" | "clado" | "resend" | "slack" | "gmail" | "googlecalendar" | "firecrawl" | "exa" | "openai" | "companyenrich" | "logodev" | "amplemarket" | "parallel" | "luma" | "postgres" | "databricks" | "lemlist" | "hubspot" | "salesforce" | "attio";
488
+ };
489
+ icon?: {
490
+ type?: "static";
491
+ key: "linkedin" | "job";
492
+ };
493
+ action_summary?: {
494
+ type?: "static";
495
+ result_status: "completed" | "failed";
496
+ };
497
+ sources?: {
498
+ type?: "static";
499
+ list: {
500
+ source: string;
501
+ description?: string;
502
+ url: string;
503
+ }[];
504
+ };
505
+ confidence?: {
506
+ type?: "static";
507
+ numeric: number;
508
+ };
509
+ emoji?: {
510
+ type?: "static";
511
+ value: string;
512
+ };
513
+ };
514
+ format: "json_object" | "json_list" | "json_list_string" | "url" | "website_url" | "profile_url" | "email" | "datetime" | "currency" | "date" | "phone" | "markdown" | "text" | "int" | "decimal" | "address_line_1" | "zip_code" | "percent" | null;
515
+ };
516
+ };
517
+ };
518
+ };
519
+ status: "completed" | "failed" | "pending" | "processing" | "canceled";
275
520
  }>;
276
521
  waitUntilComplete: (runId: string | Promise<string>, options?: {
277
522
  /**
@@ -282,15 +527,25 @@ declare class Pipe0 {
282
527
  * AbortSignal to cancel the polling operation
283
528
  */
284
529
  signal?: AbortSignal;
530
+ /**
531
+ * Cancel the run server-side (best-effort) when the signal aborts.
532
+ * @default the instance `cancelOnAbort` (true)
533
+ */
534
+ cancelOnAbort?: boolean;
285
535
  }) => Promise<PipesResponse>;
286
536
  /**
287
- * Process a large payload by batching the input array
537
+ * Process a large payload by batching the input array through a rolling
538
+ * pool: the next batch is submitted whenever a concurrency slot is free
539
+ * AND the capacity estimate says it would still be admitted at
540
+ * `priorityFloor` or better (see the X-P1/P2/P3-Capacity headers).
288
541
  * @param payload - The pipe request payload with a large input array
289
542
  * @param options - Batching options
290
543
  * @returns Array of completed batch responses
291
544
  */
292
545
  pipeInBatches: (payload: PipesRequest, {
293
546
  stopOnError,
547
+ priorityFloor,
548
+ cancelOnAbort,
294
549
  ...options
295
550
  }?: BatchOptions) => Promise<PipesResponse[]>;
296
551
  };
@@ -301,18 +556,124 @@ declare class Pipe0 {
301
556
  search: (payload: SearchRequest, options?: {
302
557
  onPoll?: (_response: SearchResponse) => unknown;
303
558
  signal?: AbortSignal;
559
+ cancelOnAbort?: boolean;
304
560
  }) => Promise<SearchResponse>;
305
561
  /**
306
562
  * Create a searches task but don't wait for it.
307
563
  * Use this if you want fire and forget.
308
564
  */
309
- create: (payload: SearchRequest) => Promise<string>;
565
+ create: (payload: SearchRequest, options?: {
566
+ signal?: AbortSignal;
567
+ }) => Promise<string>;
310
568
  /**
311
569
  * Check the status of a search task manually.
312
570
  */
313
- check: (runId: string) => Promise<{
571
+ check: (runId: string, options?: {
572
+ signal?: AbortSignal;
573
+ }) => Promise<{
574
+ id: string;
575
+ status: "completed" | "failed" | "pending" | "processing" | "canceled";
576
+ search_id: "companies:profiles:crustdata@1" | "companies:profiles:crustdata@2" | "companies:profiles:crustdata@3" | "companies:profiles:amplemarket@1" | "companies:profiles:amplemarket@2" | "people:profiles:crustdata@1" | "people:profiles:crustdata@2" | "people:profiles:crustdata@3" | "people:profiles:amplemarket@1" | "people:profiles:amplemarket@2" | "companies:entitysearch:parallel@1" | "people:entitysearch:parallel@1" | "people:eventguests:luma@1" | "people:channelmembers:slack@1" | "events:googlecalendar@1" | "sheet:rows@1" | "bucket:entries@1" | "query:postgres@1" | "query:databricks@1" | "posts:content:crustdata@1" | "contacts:hubspot@1" | "companies:hubspot@1" | "deals:hubspot@1" | "owners:hubspot@1" | "contacts:salesforce@1" | "leads:salesforce@1" | "accounts:salesforce@1" | "opportunities:salesforce@1" | "users:salesforce@1" | "query:salesforce@1" | "people:attio@1" | "companies:attio@1" | "deals:attio@1" | "records:attio@1" | "entries:attio@1" | "query:attio@1" | "users:attio@1";
577
+ errors: {
578
+ code: string;
579
+ message: string;
580
+ path?: string;
581
+ }[];
582
+ results: {
583
+ [key: string]: {
584
+ value: string | number | boolean | null | {
585
+ [key: string]: unknown;
586
+ } | unknown[];
587
+ status: "completed" | "failed" | "pending" | "queued" | "processing" | "no_result" | "skipped";
588
+ type?: "string" | "number" | "boolean" | "json" | "unknown";
589
+ format?: "json_object" | "json_list" | "json_list_string" | "url" | "website_url" | "profile_url" | "email" | "datetime" | "currency" | "date" | "phone" | "markdown" | "text" | "int" | "decimal" | "address_line_1" | "zip_code" | "percent" | null;
590
+ resolved_by?: {
591
+ ref: "prompt:run@1" | "agent:run@1" | "company:newssummary:website@1" | "company:newssummary:domain@1" | "company:techstack:builtwith@1" | "company:techstack:builtwith@2" | "company:websiteurl:email@1" | "company:domain:workemail@1" | "company:funding:leadmagic@1" | "company:funding:leadmagic@2" | "company:funding:waterfall@1" | "people:workemail:waterfall@1" | "person:workemail:waterfall@1" | "people:email:iswork@1" | "email:iswork@1" | "people:name:split@1" | "person:name:split@1" | "person:name:join@1" | "people:validate:email:zerobounce@1" | "people:email:validate:zerobounce@2" | "email:validate:zerobounce@1" | "people:mobilenumber:workemail:waterfall@1" | "company:overview@1" | "company:overview@2" | "company:overview@3" | "json:extract:multi@1" | "email:write@1" | "message:write@1" | "email:send:resend@1" | "email:send:gmail@1" | "email:draft:gmail@1" | "message:send:slack@1" | "message:send-direct:slack@1" | "template:fill@1" | "contact:create:resend@1" | "lead:enroll:lemlist@1" | "contact:match:hubspot@1" | "company:match:hubspot@1" | "deal:match:hubspot@1" | "object:update:hubspot@1" | "object:associations:hubspot@1" | "activity:log:hubspot@1" | "person:match:salesforce@1" | "account:match:salesforce@1" | "opportunity:match:salesforce@1" | "record:lookup:salesforce@1" | "record:update:salesforce@1" | "record:assert:salesforce@1" | "activities:find:salesforce@1" | "activity:log:salesforce@1" | "person:match:attio@1" | "company:match:attio@1" | "deal:match:attio@1" | "record:match:attio@1" | "record:lookup:attio@1" | "record:update:attio@1" | "activities:find:attio@1" | "lead:enroll:amplemarket@1" | "people:match:role:waterfall@1" | "person:match:role:waterfall@1" | "person:identity:amplemarket@1" | "company:identity@2" | "company:identity@3" | "company:identity:crustdata@1" | "person:match:amplemarket@1" | "people:phone:profile:waterfall@1" | "person:mobile:profileurl:waterfall@1" | "people:personalemail:profile:waterfall@1" | "person:personalemail:profileurl:waterfall@1" | "people:profile:waterfall@1" | "person:profile:waterfall@1" | "person:profile:waterfall@2" | "people:profileurl:email:waterfall@1" | "person:profileurl:email:waterfall@1" | "person:profileurl:name@1" | "people:email:validate:zerobounce@1" | "person:email:validate:millionverifier@1" | "people:phone:workemail:waterfall@1" | "person:mobile:workemail:waterfall@1" | "fields:merge@1" | "field:slugify@1" | "field:domainify@1" | "field:timestamp@1" | "formula:run@1" | "signals:personprofilematch@1" | "website:scrape:firecrawl@1" | "website:scrapelist:firecrawl@1" | "website:extract:firecrawl@1" | "website:extract:parallel@1" | "website:maplinks:firecrawl@1" | "row:append:sheet@1" | "row:expandappend:sheet@1" | "row:roundrobin:sheet@1" | "bucket:claim@1" | "bucket:count@1" | "bucket:check@1" | "bucket:countif@1" | "rows:find:sheet@1" | "rows:delete:sheet@1" | "rows:find:postgres@1" | "rows:find:databricks@1" | "company:lookalikes:companyenrich@1" | "company:lookalikes:companyenrich@2" | "company:match:logodev@1" | "company:match:logodev@2" | "person:posts:content:crustdata@1" | "company:match:crustdata@1" | "company:match:crustdata@2" | "people:profile:workemail:crustdata@1" | "person:profile:workemail:crustdata@1" | "people:workemail:profileurl:waterfall@1" | "person:workemail:profileurl:waterfall@1" | "people:identity:email:waterfall@1" | "person:identity:email:waterfall@1" | "person:identity:email:waterfall@2" | "person:devprofileurl:profileurl:waterfall@1" | "http:request@1" | "company:identity@1" | "people:professionalprofile:waterfall@1" | "people:professionalprofileurl:name@1" | "people:professionalprofileurl:email:waterfall@1" | "people:mobilenumber:professionalprofile:waterfall@1" | "input" | "system" | null;
592
+ environment: "production" | "sandbox" | null;
593
+ config_hash: string | null;
594
+ input_hash: string | null;
595
+ } | null;
596
+ widgets?: {
597
+ display_value?: {
598
+ type?: "static";
599
+ label?: string;
600
+ };
601
+ entity_logo?: {
602
+ type?: "static";
603
+ image_url: string;
604
+ entity: string;
605
+ };
606
+ location_indicator?: {
607
+ type?: "static";
608
+ emoji: string;
609
+ };
610
+ avatar?: {
611
+ type?: "static";
612
+ image_url: string;
613
+ name: string;
614
+ };
615
+ waterfall?: {
616
+ type?: "static";
617
+ attempted_providers: {
618
+ provider: "pipe0" | "findymail" | "crustdata" | "hunter" | "zerobounce" | "millionverifier" | "googlemaps" | "gemini" | "anthropic" | "leadmagic" | "mixrank" | "builtwith" | "perplexity" | "serper" | "icypeas" | "prospeo" | "clado" | "resend" | "slack" | "gmail" | "googlecalendar" | "firecrawl" | "exa" | "openai" | "companyenrich" | "logodev" | "amplemarket" | "parallel" | "luma" | "postgres" | "databricks" | "lemlist" | "hubspot" | "salesforce" | "attio";
619
+ }[];
620
+ available_providers: ("pipe0" | "findymail" | "crustdata" | "hunter" | "zerobounce" | "millionverifier" | "googlemaps" | "gemini" | "anthropic" | "leadmagic" | "mixrank" | "builtwith" | "perplexity" | "serper" | "icypeas" | "prospeo" | "clado" | "resend" | "slack" | "gmail" | "googlecalendar" | "firecrawl" | "exa" | "openai" | "companyenrich" | "logodev" | "amplemarket" | "parallel" | "luma" | "postgres" | "databricks" | "lemlist" | "hubspot" | "salesforce" | "attio")[];
621
+ successful_provider?: "pipe0" | "findymail" | "crustdata" | "hunter" | "zerobounce" | "millionverifier" | "googlemaps" | "gemini" | "anthropic" | "leadmagic" | "mixrank" | "builtwith" | "perplexity" | "serper" | "icypeas" | "prospeo" | "clado" | "resend" | "slack" | "gmail" | "googlecalendar" | "firecrawl" | "exa" | "openai" | "companyenrich" | "logodev" | "amplemarket" | "parallel" | "luma" | "postgres" | "databricks" | "lemlist" | "hubspot" | "salesforce" | "attio";
622
+ };
623
+ icon?: {
624
+ type?: "static";
625
+ key: "linkedin" | "job";
626
+ };
627
+ action_summary?: {
628
+ type?: "static";
629
+ result_status: "completed" | "failed";
630
+ };
631
+ sources?: {
632
+ type?: "static";
633
+ list: {
634
+ source: string;
635
+ description?: string;
636
+ url: string;
637
+ }[];
638
+ };
639
+ confidence?: {
640
+ type?: "static";
641
+ numeric: number;
642
+ };
643
+ emoji?: {
644
+ type?: "static";
645
+ value: string;
646
+ };
647
+ };
648
+ } | null;
649
+ }[];
650
+ organization_id: string;
651
+ next_page: components["schemas"]["SearchPayloadSchema"];
652
+ pagination_type: "cursor" | "page_number" | null;
653
+ total_pages: number | null;
654
+ field_definitions?: {
655
+ [key: string]: {
656
+ type: "string" | "number" | "boolean" | "json" | "unknown";
657
+ label?: string | null;
658
+ format?: "json_object" | "json_list" | "json_list_string" | "url" | "website_url" | "profile_url" | "email" | "datetime" | "currency" | "date" | "phone" | "markdown" | "text" | "int" | "decimal" | "address_line_1" | "zip_code" | "percent" | null;
659
+ json_metadata?: {
660
+ example_value?: unknown;
661
+ schema?: unknown;
662
+ } | null;
663
+ order?: number | null;
664
+ };
665
+ };
666
+ }>;
667
+ /**
668
+ * Cancel a still-pending search run. It returns to your organization's
669
+ * capacity immediately. Runs that are already processing or finished
670
+ * throw a {@link Pipe0ServerError} with `status: 409`.
671
+ */
672
+ cancel: (runId: string, options?: {
673
+ signal?: AbortSignal;
674
+ }) => Promise<{
314
675
  id: string;
315
- status: "completed" | "failed" | "pending" | "processing";
676
+ status: "completed" | "failed" | "pending" | "processing" | "canceled";
316
677
  search_id: "companies:profiles:crustdata@1" | "companies:profiles:crustdata@2" | "companies:profiles:crustdata@3" | "companies:profiles:amplemarket@1" | "companies:profiles:amplemarket@2" | "people:profiles:crustdata@1" | "people:profiles:crustdata@2" | "people:profiles:crustdata@3" | "people:profiles:amplemarket@1" | "people:profiles:amplemarket@2" | "companies:entitysearch:parallel@1" | "people:entitysearch:parallel@1" | "people:eventguests:luma@1" | "people:channelmembers:slack@1" | "events:googlecalendar@1" | "sheet:rows@1" | "bucket:entries@1" | "query:postgres@1" | "query:databricks@1" | "posts:content:crustdata@1" | "contacts:hubspot@1" | "companies:hubspot@1" | "deals:hubspot@1" | "owners:hubspot@1" | "contacts:salesforce@1" | "leads:salesforce@1" | "accounts:salesforce@1" | "opportunities:salesforce@1" | "users:salesforce@1" | "query:salesforce@1" | "people:attio@1" | "companies:attio@1" | "deals:attio@1" | "records:attio@1" | "entries:attio@1" | "query:attio@1" | "users:attio@1";
317
678
  errors: {
318
679
  code: string;
@@ -410,6 +771,11 @@ declare class Pipe0 {
410
771
  waitUntilComplete: (runId: string | Promise<string>, options?: {
411
772
  onPoll?: (_response: SearchResponse) => unknown;
412
773
  signal?: AbortSignal;
774
+ /**
775
+ * Cancel the run server-side (best-effort) when the signal aborts.
776
+ * @default the instance `cancelOnAbort` (true)
777
+ */
778
+ cancelOnAbort?: boolean;
413
779
  }) => Promise<SearchResponse>;
414
780
  /**
415
781
  * Run several searches concurrently, auto-paginate each, and return one merged
@@ -436,7 +802,8 @@ declare class Pipe0 {
436
802
  normalize,
437
803
  maxConcurrency,
438
804
  signal,
439
- stopOnError
805
+ stopOnError,
806
+ cancelOnAbort
440
807
  }: SearchAllOptions) => Promise<SearchAllResult>;
441
808
  };
442
809
  sheets: {
@@ -464,7 +831,9 @@ declare class Pipe0 {
464
831
  /**
465
832
  * Check the status of an effects run manually.
466
833
  */
467
- check: (sheetId: string, runId: string) => Promise<SheetEffectsResponse>;
834
+ check: (sheetId: string, runId: string, options?: {
835
+ signal?: AbortSignal;
836
+ }) => Promise<SheetEffectsResponse>;
468
837
  /**
469
838
  * Poll until the effects run concludes (`completed` / `skipped`), fails,
470
839
  * or is canceled.
@@ -485,5 +854,5 @@ declare class Pipe0 {
485
854
  private sleep;
486
855
  }
487
856
  //#endregion
488
- export { BatchOptions, Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0Options, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError, PipesRequest, PipesResponse, SearchAllItem, SearchAllOptions, SearchAllResult, SearchRequest, SearchResponse, SearchesRequest, SearchesResponse, SheetEffectsRequest, SheetEffectsResponse };
857
+ export { BatchOptions, Pipe0, Pipe0AbortError, Pipe0BatchError, Pipe0CanceledError, Pipe0Options, Pipe0RateLimitError, Pipe0ServerError, Pipe0TaskError, Pipe0TimeoutError, PipesRequest, PipesResponse, SearchAllItem, SearchAllOptions, SearchAllResult, SearchRequest, SearchResponse, SearchesRequest, SearchesResponse, SheetEffectsRequest, SheetEffectsResponse };
489
858
  //# sourceMappingURL=pipe0.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pipe0.d.mts","names":[],"sources":["../src/pipe0.ts"],"mappings":"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"}
1
+ {"version":3,"file":"pipe0.d.mts","names":[],"sources":["../src/pipe0.ts"],"mappings":";;;;;KAIY,YAAA,GACV,KAAA;AAAA,KACU,aAAA,GACV,KAAA;AAAA,KAEU,eAAA,GACV,KAAA;AAAA,KACU,gBAAA,GACV,KAAA;AAAA,KAEU,aAAA,GACV,KAAA;AAAA,KACU,cAAA,GACV,KAAA;AAAA,KAEU,mBAAA,GACV,KAAA;AAAA,KACU,oBAAA,GACV,KAAA;AAAA,cAEW,iBAAA,SAA0B,KAAA;EAAA,SAGnB,KAAA;cADhB,OAAA,UACgB,KAAA;AAAA;AAAA,cAQP,eAAA,SAAwB,KAAA;EAAA,SAGjB,KAAA;cADhB,OAAA,UACgB,KAAA;AAAA;;AA3BpB;;;;cAwCa,kBAAA,SAA2B,eAAA;cAC1B,OAAA,UAAiB,KAAA;AAAA;AAAA,cAMlB,eAAA,SAAwB,KAAA;EAAA,SAGjB,MAAA,EAAQ,KAAA;IAAQ,UAAA;IAAoB,KAAA,EAAO,KAAA;EAAA;EAAA,SAC3C,iBAAA,EAAmB,aAAA;cAFnC,OAAA,UACgB,MAAA,EAAQ,KAAA;IAAQ,UAAA;IAAoB,KAAA,EAAO,KAAA;EAAA,IAC3C,iBAAA,EAAmB,aAAA;AAAA;AAAA,cAS1B,cAAA,SAAuB,KAAA;EAAA,SAGhB,YAAA;cADhB,OAAA,UACgB,YAAA;AAAA;AAAA,cAQP,gBAAA,SAAyB,KAAA;EA5DpC;EAAA,SA8DgB,MAAA;EA5DL;EAAA,SA8DK,WAAA;cAEJ,OAAA,UAAiB,OAAA;IAAW,MAAA;IAAiB,WAAA;EAAA;AAAA;;;;;AArD3D;;;cAoEa,mBAAA,SAA4B,gBAAA;EApEJ;EAAA,SAsEnB,YAAA;;WAEA,QAAA;cAGd,OAAA,UACA,OAAA;IAAW,WAAA;IAAsB,YAAA;IAAuB,QAAA;EAAA;AAAA;AAAA,UAS3C,YAAA;EArEuB;;;EAyEtC,MAAA,IAAU,WAAA,UAAqB,SAAA,EAAW,aAAA;EAxEC;;AAM7C;EAsEE,eAAA,IAAmB,WAAA,UAAqB,OAAA,EAAS,aAAA;;;;;EAKjD,WAAA;EAxE0B;;;EA4E1B,MAAA,GAAS,WAAA;EA/E+B;;;;;;EAsFxC,aAAA;EAlFkB;;;;EAuFlB,aAAA;AAAA;AAAA,UAGe,aAAA;EA3F8C;EA6F7D,MAAA,EAAQ,aAAA;EA5F6B;;;;AASvC;EAyFE,QAAA;AAAA;AAAA,UAGe,gBAAA;EA5FmB;EA8FlC,QAAA,EAAU,aAAA;;EAEV,MAAA,GAAS,aAAA;EA7FS;;;AAQpB;;EA2FE,QAAA;EA3FyC;;;;;EAiGzC,QAAA;EA3FwC;;;;;AAe1C;EAmFE,SAAA;;EAEA,cAAA;EArFuC;EAuFvC,MAAA,GAAS,WAAA;EAnFO;;;;EAwFhB,WAAA;EApF0D;;;;EAyF1D,aAAA;AAAA;AAAA,UAGe,eAAA;EA/E2B;EAiF1C,OAAA,EAAS,cAAA;EApEA;EAsET,MAAA,EAAQ,KAAA;IAAQ,WAAA;IAAqB,KAAA,EAAO,KAAA;EAAA;AAAA;AAAA,UAG7B,YAAA;EACf,MAAA;EACA,OAAA;EACA,WAAA,GAAc,WAAA;EArF0B;;;;EA0FxC,gBAAA;EArEA;;;AAGF;EAuEE,oBAAA;;;;;EAKA,oBAAA;EApEQ;;AAGV;;EAsEE,gBAAA;EApEU;;;;EAyEV,oBAAA;EAzEA;;;;;;;EAiFA,YAAA;EAxDA;;;;EA6DA,eAAA;EAnDa;AAGf;;;EAqDE,kBAAA;EAjD4C;;;;EAsD5C,kBAAA;EAxDS;;;;;;EA+DT,aAAA;EA7DiD;AAGnD;;;;EAgEE,aAAA;EAWgB;;;;;;EAJhB,aAAA;EApEA;EAsEA,UAAA,IAAc,QAAA,EAAU,gBAAA;EAjExB;EAmEA,KAAA,IAAS,KAAA,EAAO,OAAA,KAAY,OAAA,CAAQ,QAAA;AAAA;AAAA,cA8BzB,KAAA;EACJ,MAAA,EAAQ,MAAA,CAAO,KAAA;EAAA,QACd,MAAA;EAAA,QAEA,gBAAA;EAAA,QACA,oBAAA;EAAA,QACA,oBAAA;EAAA,QACA,gBAAA;EAAA,QACA,oBAAA;EAAA,QACA,YAAA;EAAA,QACA,eAAA;EAAA,QACA,kBAAA;EAAA,QACA,kBAAA;EAAA,QACA,oBAAA;EAAA,QACA,oBAAA;EAAA,QACA,aAAA;EAAA,QACA,UAAA;EAAA,QACA,OAAA;cAEI,OAAA,GAAS,YAAA;EAjDuB;AA8B9C;;;;EA9B8C,IA8GxC,QAAA,CAAA,GAAY,gBAAA;EA7DK;;;;;;;;;;;;EAAA,QA6EP,OAAA;EA8MmD;;;EAAA,QA1InD,kBAAA;EA4FP,KAAA;IA2EF;;;oBAtEQ,YAAA,EAAY,OAAA;MAEnB,MAAA,IAAU,SAAA,EAAW,aAAA;MACrB,MAAA,GAAS,WAAA;MACT,aAAA;IAAA,MAED,OAAA,CAAQ,aAAA;IA4NA;;;sBAtNa,YAAA,EAAY,OAAA;MAAa,MAAA,GAAS,WAAA;IAAA,MAAa,OAAA;IAoOZ;;;2BAtNhC,OAAA;MAAa,MAAA,GAAS,WAAA;IAAA,MAAa,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAelC,OAAA;MAAa,MAAA,GAAS,WAAA;IAAA,MAAa,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAa7C,OAAA,UAAe,OAAA;;;;MAK7B,MAAA,IAAU,SAAA,EAAW,aAAA;;;;MAIrB,MAAA,GAAS,WAAA;;;;;MAKT,aAAA;IAAA,MAED,OAAA,CAAQ,aAAA;;;;;;;;;;6BAkBA,YAAA;MAAY,WAAA;MAAA,aAAA;MAAA,aAAA;MAAA,GAAA;IAAA,IAC6C,YAAA,KACjE,OAAA,CAAQ,aAAA;EAAA;EAmIb,QAAA;;;;sBAKa,aAAA,EAAa,OAAA;MAEpB,MAAA,IAAU,SAAA,EAAW,cAAA;MACrB,MAAA,GAAS,WAAA;MACT,aAAA;IAAA,MAED,OAAA,CAAQ,cAAA;IAlLO;;;;sBA0LM,aAAA,EAAa,OAAA;MAAa,MAAA,GAAS,WAAA;IAAA,MAAa,OAAA;IA5KpE;;;2BAyLuB,OAAA;MAAa,MAAA,GAAS,WAAA;IAAA,MAAa,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAF,UAAA;;;;;;;;;;;;;;;;;;;;;4BAgBhC,OAAA;MAAa,MAAA,GAAS,WAAA;IAAA,MAAa,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAF,UAAA;;;;;;;;;;;;;;;;IAoBhD;;;wCAHK,OAAA,UAAe,OAAA;MAE7B,MAAA,IAAU,SAAA,EAAW,cAAA;MACrB,MAAA,GAAS,WAAA;;;;;MAKT,aAAA;IAAA,MAED,OAAA,CAAQ,cAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCR,gBAAA,KAAmB,OAAA,CAAQ,eAAA;EAAA;EAgDhC,MAAA;;MAqBgE;;;;;;;;;;;;;;;;;;;6BAAjC,OAAA,EAAW,mBAAA,KAAsB,OAAA,CAAQ,oBAAA;MAsCjE;;;+BAzBc,KAAA,UACF,OAAA;QACF,MAAA,GAAS,WAAA;MAAA,MACnB,OAAA,CAAQ,oBAAA;MAuCP;;;;2CAvBa,KAAA,WACC,OAAA,UAAe,OAAA;QAE7B,MAAA,IAAU,SAAA,EAAW,oBAAA;QACrB,MAAA,GAAS,WAAA;MAAA,MAEV,OAAA,CAAQ,oBAAA;MA2BP;;;0CAba,OAAA,EACN,mBAAA,EAAmB,OAAA;QAE1B,MAAA,IAAU,SAAA,EAAW,oBAAA;QACrB,MAAA,GAAS,WAAA;MAAA,MAEV,OAAA,CAAQ,oBAAA;IAAA;EAAA;EAAA,QAOP,KAAA;AAAA"}