@corsair-dev/exa 0.1.0 → 0.1.1

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.
Files changed (40) hide show
  1. package/dist/api.test.d.ts +2 -0
  2. package/dist/api.test.d.ts.map +1 -0
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/endpoints/answer.d.ts +1 -1
  5. package/dist/endpoints/answer.d.ts.map +1 -1
  6. package/dist/endpoints/contents.d.ts +1 -1
  7. package/dist/endpoints/contents.d.ts.map +1 -1
  8. package/dist/endpoints/events.d.ts +1 -1
  9. package/dist/endpoints/events.d.ts.map +1 -1
  10. package/dist/endpoints/imports.d.ts +1 -1
  11. package/dist/endpoints/imports.d.ts.map +1 -1
  12. package/dist/endpoints/index.d.ts +7 -7
  13. package/dist/endpoints/monitors.d.ts +1 -1
  14. package/dist/endpoints/monitors.d.ts.map +1 -1
  15. package/dist/endpoints/search.d.ts +1 -1
  16. package/dist/endpoints/search.d.ts.map +1 -1
  17. package/dist/endpoints/types.d.ts +30 -30
  18. package/dist/endpoints/types.d.ts.map +1 -1
  19. package/dist/endpoints/webhooks-api.d.ts +1 -1
  20. package/dist/endpoints/webhooks-api.d.ts.map +1 -1
  21. package/dist/endpoints/websets.d.ts +1 -1
  22. package/dist/endpoints/websets.d.ts.map +1 -1
  23. package/dist/error-handlers.d.ts.map +1 -1
  24. package/dist/index.d.ts +28 -29
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +1 -1
  27. package/dist/schema/database.d.ts +2 -2
  28. package/dist/schema/index.d.ts +2 -2
  29. package/dist/webhooks/content-indexed.d.ts +1 -1
  30. package/dist/webhooks/content-indexed.d.ts.map +1 -1
  31. package/dist/webhooks/index.d.ts +20 -20
  32. package/dist/webhooks/search-alert.d.ts +1 -1
  33. package/dist/webhooks/search-alert.d.ts.map +1 -1
  34. package/dist/webhooks/types.d.ts +37 -37
  35. package/dist/webhooks/types.d.ts.map +1 -1
  36. package/dist/webhooks/webset-items-found.d.ts +1 -1
  37. package/dist/webhooks/webset-items-found.d.ts.map +1 -1
  38. package/dist/webhooks/webset-search-completed.d.ts +1 -1
  39. package/dist/webhooks/webset-search-completed.d.ts.map +1 -1
  40. package/package.json +9 -3
package/dist/index.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- import type { BindEndpoints, BindWebhooks, CorsairEndpoint, CorsairErrorHandler, CorsairPlugin, CorsairPluginContext, CorsairWebhook, KeyBuilderContext, PluginPermissionsConfig } from 'corsair/core';
2
- import type { PickAuth } from 'corsair/core';
1
+ import type { BindEndpoints, BindWebhooks, CorsairEndpoint, CorsairErrorHandler, CorsairPlugin, CorsairPluginContext, CorsairWebhook, KeyBuilderContext, PickAuth, PluginPermissionsConfig } from 'corsair/core';
3
2
  import type { ExaEndpointInputs, ExaEndpointOutputs } from './endpoints/types';
4
3
  import { ExaSchema } from './schema';
5
4
  import type { ContentIndexedEvent, ExaWebhookOutputs, SearchAlertEvent, WebsetItemsFoundEvent, WebsetSearchCompletedEvent } from './webhooks/types';
@@ -866,8 +865,8 @@ export declare const exaEndpointSchemas: {
866
865
  updatedAt: import("zod").ZodString;
867
866
  }, "strip", import("zod").ZodTypeAny, {
868
867
  object: "webset";
869
- id: string;
870
868
  status: "idle" | "running" | "paused" | "done";
869
+ id: string;
871
870
  createdAt: string;
872
871
  updatedAt: string;
873
872
  externalId?: string | undefined;
@@ -911,8 +910,8 @@ export declare const exaEndpointSchemas: {
911
910
  }[] | undefined;
912
911
  }, {
913
912
  object: "webset";
914
- id: string;
915
913
  status: "idle" | "running" | "paused" | "done";
914
+ id: string;
916
915
  createdAt: string;
917
916
  updatedAt: string;
918
917
  externalId?: string | undefined;
@@ -1093,8 +1092,8 @@ export declare const exaEndpointSchemas: {
1093
1092
  updatedAt: import("zod").ZodString;
1094
1093
  }, "strip", import("zod").ZodTypeAny, {
1095
1094
  object: "webset";
1096
- id: string;
1097
1095
  status: "idle" | "running" | "paused" | "done";
1096
+ id: string;
1098
1097
  createdAt: string;
1099
1098
  updatedAt: string;
1100
1099
  externalId?: string | undefined;
@@ -1138,8 +1137,8 @@ export declare const exaEndpointSchemas: {
1138
1137
  }[] | undefined;
1139
1138
  }, {
1140
1139
  object: "webset";
1141
- id: string;
1142
1140
  status: "idle" | "running" | "paused" | "done";
1141
+ id: string;
1143
1142
  createdAt: string;
1144
1143
  updatedAt: string;
1145
1144
  externalId?: string | undefined;
@@ -1249,12 +1248,12 @@ export declare const exaEndpointSchemas: {
1249
1248
  limit: import("zod").ZodOptional<import("zod").ZodNumber>;
1250
1249
  }, "strip", import("zod").ZodTypeAny, {
1251
1250
  websetId: string;
1252
- limit?: number | undefined;
1253
1251
  cursor?: string | undefined;
1252
+ limit?: number | undefined;
1254
1253
  }, {
1255
1254
  websetId: string;
1256
- limit?: number | undefined;
1257
1255
  cursor?: string | undefined;
1256
+ limit?: number | undefined;
1258
1257
  }>;
1259
1258
  readonly output: import("zod").ZodObject<{
1260
1259
  data: import("zod").ZodArray<import("zod").ZodObject<{
@@ -1393,12 +1392,12 @@ export declare const exaEndpointSchemas: {
1393
1392
  limit: import("zod").ZodOptional<import("zod").ZodNumber>;
1394
1393
  }, "strip", import("zod").ZodTypeAny, {
1395
1394
  websetId: string;
1396
- limit?: number | undefined;
1397
1395
  cursor?: string | undefined;
1396
+ limit?: number | undefined;
1398
1397
  }, {
1399
1398
  websetId: string;
1400
- limit?: number | undefined;
1401
1399
  cursor?: string | undefined;
1400
+ limit?: number | undefined;
1402
1401
  }>;
1403
1402
  readonly output: import("zod").ZodObject<{
1404
1403
  data: import("zod").ZodArray<import("zod").ZodObject<{
@@ -1409,14 +1408,14 @@ export declare const exaEndpointSchemas: {
1409
1408
  data: import("zod").ZodOptional<import("zod").ZodUnknown>;
1410
1409
  }, "strip", import("zod").ZodTypeAny, {
1411
1410
  object: "event";
1412
- id: string;
1413
1411
  type: string;
1412
+ id: string;
1414
1413
  createdAt: string;
1415
1414
  data?: unknown;
1416
1415
  }, {
1417
1416
  object: "event";
1418
- id: string;
1419
1417
  type: string;
1418
+ id: string;
1420
1419
  createdAt: string;
1421
1420
  data?: unknown;
1422
1421
  }>, "many">;
@@ -1425,8 +1424,8 @@ export declare const exaEndpointSchemas: {
1425
1424
  }, "strip", import("zod").ZodTypeAny, {
1426
1425
  data: {
1427
1426
  object: "event";
1428
- id: string;
1429
1427
  type: string;
1428
+ id: string;
1430
1429
  createdAt: string;
1431
1430
  data?: unknown;
1432
1431
  }[];
@@ -1435,8 +1434,8 @@ export declare const exaEndpointSchemas: {
1435
1434
  }, {
1436
1435
  data: {
1437
1436
  object: "event";
1438
- id: string;
1439
1437
  type: string;
1438
+ id: string;
1440
1439
  createdAt: string;
1441
1440
  data?: unknown;
1442
1441
  }[];
@@ -1463,14 +1462,14 @@ export declare const exaEndpointSchemas: {
1463
1462
  data: import("zod").ZodOptional<import("zod").ZodUnknown>;
1464
1463
  }, "strip", import("zod").ZodTypeAny, {
1465
1464
  object: "event";
1466
- id: string;
1467
1465
  type: string;
1466
+ id: string;
1468
1467
  createdAt: string;
1469
1468
  data?: unknown;
1470
1469
  }, {
1471
1470
  object: "event";
1472
- id: string;
1473
1471
  type: string;
1472
+ id: string;
1474
1473
  createdAt: string;
1475
1474
  data?: unknown;
1476
1475
  }>;
@@ -1480,11 +1479,11 @@ export declare const exaEndpointSchemas: {
1480
1479
  cursor: import("zod").ZodOptional<import("zod").ZodString>;
1481
1480
  limit: import("zod").ZodOptional<import("zod").ZodNumber>;
1482
1481
  }, "strip", import("zod").ZodTypeAny, {
1483
- limit?: number | undefined;
1484
1482
  cursor?: string | undefined;
1485
- }, {
1486
1483
  limit?: number | undefined;
1484
+ }, {
1487
1485
  cursor?: string | undefined;
1486
+ limit?: number | undefined;
1488
1487
  }>;
1489
1488
  readonly output: import("zod").ZodObject<{
1490
1489
  data: import("zod").ZodArray<import("zod").ZodObject<{
@@ -1550,9 +1549,8 @@ export type ExaWebhooks = {
1550
1549
  declare const exaWebhooksNested: {
1551
1550
  readonly search: {
1552
1551
  readonly searchAlert: ExaWebhook<"searchAlert", {
1553
- id: string;
1554
- created_at: string;
1555
1552
  type: "search.alert";
1553
+ id: string;
1556
1554
  data: {
1557
1555
  query: string;
1558
1556
  results: {
@@ -1567,31 +1565,31 @@ declare const exaWebhooksNested: {
1567
1565
  score?: number | undefined;
1568
1566
  }[];
1569
1567
  };
1568
+ created_at: string;
1570
1569
  }>;
1571
1570
  };
1572
1571
  readonly content: {
1573
1572
  readonly contentIndexed: ExaWebhook<"contentIndexed", {
1574
- id: string;
1575
- created_at: string;
1576
1573
  type: "content.indexed";
1574
+ id: string;
1577
1575
  data: {
1578
1576
  url: string;
1579
1577
  title?: string | null | undefined;
1580
1578
  publishedDate?: string | null | undefined;
1581
1579
  author?: string | null | undefined;
1582
1580
  };
1581
+ created_at: string;
1583
1582
  }>;
1584
1583
  };
1585
1584
  readonly webset: {
1586
1585
  readonly websetItemsFound: ExaWebhook<"websetItemsFound", {
1587
- id: string;
1588
- created_at: string;
1589
1586
  type: "webset.items_found";
1587
+ id: string;
1590
1588
  data: {
1591
1589
  webset: {
1592
1590
  object: "webset";
1593
- id: string;
1594
1591
  status: "idle" | "running" | "paused" | "done";
1592
+ id: string;
1595
1593
  createdAt: string;
1596
1594
  updatedAt: string;
1597
1595
  externalId?: string | undefined;
@@ -1609,22 +1607,23 @@ declare const exaWebhooksNested: {
1609
1607
  }[];
1610
1608
  itemCount?: number | undefined;
1611
1609
  };
1610
+ created_at: string;
1612
1611
  }>;
1613
1612
  readonly websetSearchCompleted: ExaWebhook<"websetSearchCompleted", {
1614
- id: string;
1615
- created_at: string;
1616
1613
  type: "webset.search.completed";
1614
+ id: string;
1617
1615
  data: {
1618
1616
  webset: {
1619
1617
  object: "webset";
1620
- id: string;
1621
1618
  status: "idle" | "running" | "paused" | "done";
1619
+ id: string;
1622
1620
  createdAt: string;
1623
1621
  updatedAt: string;
1624
1622
  externalId?: string | undefined;
1625
1623
  };
1626
1624
  totalItems?: number | undefined;
1627
1625
  };
1626
+ created_at: string;
1628
1627
  }>;
1629
1628
  };
1630
1629
  };
@@ -1655,5 +1654,5 @@ export type ExternalExaPlugin<T extends ExaPluginOptions> = BaseExaPlugin<T>;
1655
1654
  export declare function exa<const T extends ExaPluginOptions>(incomingOptions?: ExaPluginOptions & T): ExternalExaPlugin<T>;
1656
1655
  export type { ContentIndexedEvent, ExaWebhookOutputs, SearchAlertEvent, WebsetItemsFoundEvent, WebsetSearchCompletedEvent, } from './webhooks/types';
1657
1656
  export { createExaEventMatch } from './webhooks/types';
1658
- export type { EventsGetInput, EventsListInput, EventsListResponse, ExaEndpointInputs, ExaEndpointOutputs, FindSimilarInput, FindSimilarResponse, GetAnswerInput, GetAnswerResponse, GetContentsInput, GetContentsResponse, ImportsCreateInput, ImportsDeleteInput, ImportsDeleteResponse, ImportsListInput, ImportsListResponse, MonitorsCreateInput, SearchInput, SearchResponse, SearchResult, Webset, WebhookApi, WebhooksApiListInput, WebhooksApiListResponse, WebsetEvent, WebsetImport, WebsetMonitor, WebsetsCreateInput, WebsetsDeleteInput, WebsetsDeleteResponse, WebsetsGetInput, } from './endpoints/types';
1657
+ export type { EventsGetInput, EventsListInput, EventsListResponse, ExaEndpointInputs, ExaEndpointOutputs, FindSimilarInput, FindSimilarResponse, GetAnswerInput, GetAnswerResponse, GetContentsInput, GetContentsResponse, ImportsCreateInput, ImportsDeleteInput, ImportsDeleteResponse, ImportsListInput, ImportsListResponse, MonitorsCreateInput, SearchInput, SearchResponse, SearchResult, WebhookApi, WebhooksApiListInput, WebhooksApiListResponse, Webset, WebsetEvent, WebsetImport, WebsetMonitor, WebsetsCreateInput, WebsetsDeleteInput, WebsetsDeleteResponse, WebsetsGetInput, } from './endpoints/types';
1659
1658
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,aAAa,EACb,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EAEjB,uBAAuB,EAIvB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAe7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE/E,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,KAAK,EACX,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,MAAM,kBAAkB,CAAC;AAY1B,MAAM,MAAM,YAAY,GAAG;IAC1B,YAAY,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC;IAC1C,iBAAiB,EAAE,WAAW,CAAC,mBAAmB,CAAC,CAAC;IACpD,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IACxC,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC5C,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;IACtC,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC5C,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC5C,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IACxC,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC5C,cAAc,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAC9C,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;IACtC,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,eAAe,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAC;CAChD,CAAC;AAEF,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+Bd,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,aAAa,EACb,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,QAAQ,EAER,uBAAuB,EAEvB,MAAM,cAAc,CAAC;AAWtB,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAM/E,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,KAAK,EACX,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,MAAM,kBAAkB,CAAC;AAY1B,MAAM,MAAM,YAAY,GAAG;IAC1B,YAAY,EAAE,WAAW,CAAC,cAAc,CAAC,CAAC;IAC1C,iBAAiB,EAAE,WAAW,CAAC,mBAAmB,CAAC,CAAC;IACpD,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IACxC,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC5C,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;IACtC,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC5C,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC5C,WAAW,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;IACxC,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IAC5C,cAAc,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAC9C,UAAU,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;IACtC,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IACpC,eAAe,EAAE,WAAW,CAAC,iBAAiB,CAAC,CAAC;CAChD,CAAC;AAEF,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+Bd,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{logEventFromContext as Re}from"corsair/core";import{request as ke}from"corsair/http";var Ce="https://api.exa.ai",Ae={enabled:!0,maxRetries:3,initialRetryDelay:1e3,backoffMultiplier:2,headerNames:{retryAfter:"Retry-After"}};async function d(t,s,o={}){let{method:n="POST",body:r,query:p}=o;return await ke({BASE:Ce,VERSION:"1.0.0",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",HEADERS:{"Content-Type":"application/json","x-api-key":s}},{method:n,url:t,body:n==="POST"||n==="PUT"||n==="PATCH"?r:void 0,mediaType:"application/json; charset=utf-8",query:n==="GET"?p:void 0},{rateLimitConfig:Ae})}var R=async(t,s)=>{let o=await d("answer",t.key,{method:"POST",body:s});if(o.citations&&t.db.searchResults)try{for(let n of o.citations)await t.db.searchResults.upsertByEntityId(n.id,{...n,query:s.query,createdAt:n.publishedDate?new Date(n.publishedDate):new Date})}catch(n){console.warn("Failed to save answer citations to database:",n)}return await Re(t,"exa.answer.get",{query:s.query},"completed"),o};import{logEventFromContext as We}from"corsair/core";var W=async(t,s)=>{let o=await d("contents",t.key,{method:"POST",body:s});if(o.results&&t.db.searchResults)try{for(let n of o.results)await t.db.searchResults.upsertByEntityId(n.id,{...n,createdAt:n.publishedDate?new Date(n.publishedDate):new Date})}catch(n){console.warn("Failed to save contents to database:",n)}return await We(t,"exa.contents.get",{idCount:s.ids.length},"completed"),o};import{logEventFromContext as D}from"corsair/core";var L=async(t,s)=>{let{websetId:o,...n}=s,r=await d(`websets/v0/websets/${o}/events`,t.key,{method:"GET",query:n});if(r.data&&t.db.events)try{for(let p of r.data)await t.db.events.upsertByEntityId(p.id,{id:p.id,type:p.type,websetId:o,createdAt:new Date(p.createdAt)})}catch(p){console.warn("Failed to save events to database:",p)}return await D(t,"exa.events.list",{websetId:o},"completed"),r},G=async(t,s)=>{let o=await d(`websets/v0/websets/${s.websetId}/events/${s.eventId}`,t.key,{method:"GET"});if(t.db.events)try{await t.db.events.upsertByEntityId(o.id,{id:o.id,type:o.type,websetId:s.websetId,createdAt:new Date(o.createdAt)})}catch(n){console.warn("Failed to save event to database:",n)}return await D(t,"exa.events.get",{websetId:s.websetId,eventId:s.eventId},"completed"),o};import{logEventFromContext as g}from"corsair/core";var F=async(t,s)=>{let o=await d(`websets/v0/websets/${s.websetId}/imports`,t.key,{method:"POST",body:{urls:s.urls}});if(t.db.imports)try{await t.db.imports.upsertByEntityId(o.id,{...o,createdAt:new Date(o.createdAt),updatedAt:o.updatedAt?new Date(o.updatedAt):void 0})}catch(n){console.warn("Failed to save import to database:",n)}return await g(t,"exa.imports.create",{websetId:s.websetId,urlCount:s.urls.length},"completed"),o},O=async(t,s)=>{let{websetId:o,...n}=s,r=await d(`websets/v0/websets/${o}/imports`,t.key,{method:"GET",query:n});if(r.data&&t.db.imports)try{for(let p of r.data)await t.db.imports.upsertByEntityId(p.id,{...p,createdAt:new Date(p.createdAt),updatedAt:p.updatedAt?new Date(p.updatedAt):void 0})}catch(p){console.warn("Failed to save imports to database:",p)}return await g(t,"exa.imports.list",{websetId:o},"completed"),r},P=async(t,s)=>{let o=await d(`websets/v0/websets/${s.websetId}/imports/${s.importId}`,t.key,{method:"DELETE"});if(o.deleted&&t.db.imports)try{await t.db.imports.deleteByEntityId(s.importId)}catch(n){console.warn("Failed to delete import from database:",n)}return await g(t,"exa.imports.delete",{websetId:s.websetId,importId:s.importId},"completed"),o};import{logEventFromContext as De}from"corsair/core";var T=async(t,s)=>{let{websetId:o,...n}=s,r=await d(`websets/v0/websets/${o}/monitors`,t.key,{method:"POST",body:n});if(t.db.monitors)try{await t.db.monitors.upsertByEntityId(r.id,{...r,createdAt:new Date(r.createdAt),updatedAt:r.updatedAt?new Date(r.updatedAt):void 0})}catch(p){console.warn("Failed to save monitor to database:",p)}return await De(t,"exa.monitors.create",{websetId:o,cadenceType:s.cadence.type},"completed"),r};import{logEventFromContext as j}from"corsair/core";var q=async(t,s)=>{let o=await d("search",t.key,{method:"POST",body:s});if(o.results&&t.db.searchResults)try{for(let n of o.results)await t.db.searchResults.upsertByEntityId(n.id,{...n,query:s.query,createdAt:n.publishedDate?new Date(n.publishedDate):new Date})}catch(n){console.warn("Failed to save search results to database:",n)}return await j(t,"exa.search.search",{query:s.query,resultCount:o.results?.length??0},"completed"),o},M=async(t,s)=>{let o=await d("findSimilar",t.key,{method:"POST",body:s});if(o.results&&t.db.searchResults)try{for(let n of o.results)await t.db.searchResults.upsertByEntityId(n.id,{...n,createdAt:n.publishedDate?new Date(n.publishedDate):new Date})}catch(n){console.warn("Failed to save search results to database:",n)}return await j(t,"exa.search.findSimilar",{url:s.url,resultCount:o.results?.length??0},"completed"),o};import{logEventFromContext as Le}from"corsair/core";var z=async(t,s)=>{let o=await d("websets/v0/webhooks",t.key,{method:"GET",query:s});if(o.data&&t.db.webhookConfigs)try{for(let n of o.data)await t.db.webhookConfigs.upsertByEntityId(n.id,{...n,createdAt:new Date(n.createdAt),updatedAt:n.updatedAt?new Date(n.updatedAt):void 0})}catch(n){console.warn("Failed to save webhook configs to database:",n)}return await Le(t,"exa.webhooksApi.list",{},"completed"),o};import{logEventFromContext as I}from"corsair/core";var B=async(t,s)=>{let o=await d("websets/v0/websets",t.key,{method:"POST",body:s});if(t.db.websets)try{await t.db.websets.upsertByEntityId(o.id,{id:o.id,status:o.status,externalId:o.externalId,createdAt:new Date(o.createdAt)})}catch(n){console.warn("Failed to save webset to database:",n)}return await I(t,"exa.websets.create",{externalId:s.externalId},"completed"),o},_=async(t,s)=>{let o=await d(`websets/v0/websets/${s.id}`,t.key,{method:"GET"});if(t.db.websets)try{await t.db.websets.upsertByEntityId(o.id,{id:o.id,status:o.status,externalId:o.externalId,createdAt:new Date(o.createdAt),updatedAt:new Date(o.updatedAt)})}catch(n){console.warn("Failed to save webset to database:",n)}return await I(t,"exa.websets.get",{id:s.id},"completed"),o},H=async(t,s)=>{let o=await d(`websets/v0/websets/${s.id}`,t.key,{method:"DELETE"});if(o.deleted&&t.db.websets)try{await t.db.websets.deleteByEntityId(s.id)}catch(n){console.warn("Failed to delete webset from database:",n)}return await I(t,"exa.websets.delete",{id:s.id},"completed"),o};import{z as e}from"zod";var N=e.object({maxCharacters:e.number().optional(),includeHtmlTags:e.boolean().optional()}),U=e.object({numSentences:e.number().optional(),highlightsPerUrl:e.number().optional(),query:e.string().optional()}),K=e.object({query:e.string().optional()}),X=e.object({text:e.union([N,e.boolean()]).optional(),highlights:e.union([U,e.boolean()]).optional(),summary:e.union([K,e.boolean()]).optional()}),y=e.object({id:e.string(),url:e.string(),title:e.string().nullable().optional(),publishedDate:e.string().nullable().optional(),author:e.string().nullable().optional(),score:e.number().optional(),text:e.string().optional(),highlights:e.array(e.string()).optional(),highlightScores:e.array(e.number()).optional(),summary:e.string().optional()}),Ge=e.object({type:e.enum(["company","person","article","research paper","repository","event","product","video","job","podcast"]).optional()}),Fe=e.object({description:e.string(),successRate:e.string().optional()}),V=e.object({query:e.string(),count:e.number().optional(),entity:Ge.optional(),criteria:e.array(Fe).optional()}),Oe=e.object({description:e.string(),format:e.enum(["text","date","number","options","boolean"]).optional(),options:e.array(e.string()).optional()}),Pe=e.object({id:e.string(),description:e.string(),format:e.enum(["text","date","number","options","boolean"]),options:e.array(e.string()).optional(),createdAt:e.string(),updatedAt:e.string()}),S=e.object({id:e.string(),object:e.literal("import"),websetId:e.string(),urls:e.array(e.string()).optional(),status:e.enum(["pending","processing","completed","failed"]).optional(),createdAt:e.string(),updatedAt:e.string().optional()}),J=e.object({type:e.enum(["realtime","hourly","daily","weekly"])}),Q=e.object({id:e.string(),object:e.literal("monitor"),websetId:e.string(),cadence:J,createdAt:e.string(),updatedAt:e.string().optional()}),$=e.object({id:e.string(),object:e.literal("webset"),status:e.enum(["idle","running","paused","done"]),externalId:e.string().optional(),searches:e.array(V).optional(),enrichments:e.array(Pe).optional(),imports:e.array(S).optional(),monitors:e.array(Q).optional(),createdAt:e.string(),updatedAt:e.string()}),Z=e.object({id:e.string(),object:e.literal("event"),type:e.string(),createdAt:e.string(),data:e.unknown().optional()}),Te=e.object({id:e.string(),object:e.literal("webhook"),url:e.string(),events:e.array(e.string()).optional(),status:e.enum(["active","inactive"]).optional(),createdAt:e.string(),updatedAt:e.string().optional()}),v=t=>e.object({data:e.array(t),hasMore:e.boolean().optional(),nextCursor:e.string().optional()}),je=e.object({query:e.string(),numResults:e.number().optional(),includeDomains:e.array(e.string()).optional(),excludeDomains:e.array(e.string()).optional(),startCrawlDate:e.string().optional(),endCrawlDate:e.string().optional(),startPublishedDate:e.string().optional(),endPublishedDate:e.string().optional(),useAutoprompt:e.boolean().optional(),type:e.enum(["keyword","neural","auto"]).optional(),category:e.string().optional(),contents:X.optional()}),qe=e.object({url:e.string(),numResults:e.number().optional(),includeDomains:e.array(e.string()).optional(),excludeDomains:e.array(e.string()).optional(),startCrawlDate:e.string().optional(),endCrawlDate:e.string().optional(),startPublishedDate:e.string().optional(),endPublishedDate:e.string().optional(),excludeSourceDomain:e.boolean().optional(),category:e.string().optional(),contents:X.optional()}),Me=e.object({ids:e.array(e.string()),text:e.union([N,e.boolean()]).optional(),highlights:e.union([U,e.boolean()]).optional(),summary:e.union([K,e.boolean()]).optional()}),ze=e.object({query:e.string(),text:e.boolean().optional(),stream:e.boolean().optional()}),Be=e.object({searches:e.array(V).optional(),enrichments:e.array(Oe).optional(),externalId:e.string().optional()}),_e=e.object({id:e.string()}),He=e.object({id:e.string()}),$e=e.object({websetId:e.string(),urls:e.array(e.string())}),Ne=e.object({websetId:e.string(),cursor:e.string().optional(),limit:e.number().optional()}),Ue=e.object({websetId:e.string(),importId:e.string()}),Ke=e.object({websetId:e.string(),cadence:J}),Xe=e.object({websetId:e.string(),cursor:e.string().optional(),limit:e.number().optional()}),Ve=e.object({websetId:e.string(),eventId:e.string()}),Je=e.object({cursor:e.string().optional(),limit:e.number().optional()}),Qe=e.object({results:e.array(y),autopromptString:e.string().optional(),requestId:e.string().optional()}),Ze=e.object({results:e.array(y),requestId:e.string().optional()}),Ye=e.object({results:e.array(y),requestId:e.string().optional()}),et=e.object({answer:e.string(),citations:e.array(y).optional(),requestId:e.string().optional()}),tt=e.object({id:e.string(),object:e.literal("webset"),deleted:e.boolean()}),ot=e.object({id:e.string(),deleted:e.boolean()}),st=v(S),nt=v(Z),rt=v(Te),l={searchSearch:je,searchFindSimilar:qe,contentsGet:Me,answerGet:ze,websetsCreate:Be,websetsGet:_e,websetsDelete:He,importsCreate:$e,importsList:Ne,importsDelete:Ue,monitorsCreate:Ke,eventsList:Xe,eventsGet:Ve,webhooksApiList:Je},u={searchSearch:Qe,searchFindSimilar:Ze,contentsGet:Ye,answerGet:et,websetsCreate:$,websetsGet:$,websetsDelete:tt,importsCreate:S,importsList:st,importsDelete:ot,monitorsCreate:Q,eventsList:nt,eventsGet:Z,webhooksApiList:rt};var k={search:q,findSimilar:M},Y={get:W},ee={get:R},E={create:B,get:_,delete:H},w={create:F,list:O,delete:P},te={create:T},C={list:L,get:G},oe={list:z};import{ApiError as h}from"corsair/http";var se={RATE_LIMIT_ERROR:{match:(t,s)=>{if(t instanceof h&&t.status===429)return!0;let o=t.message.toLowerCase();return o.includes("rate_limit")||o.includes("ratelimit")||t.message.includes("429")},handler:async(t,s)=>{let o;return t instanceof h&&t.retryAfter!==void 0&&(o=t.retryAfter),{maxRetries:5,headersRetryAfterMs:o}}},AUTH_ERROR:{match:(t,s)=>{if(t instanceof h&&t.status===401)return!0;let o=t.message.toLowerCase();return o.includes("unauthorized")||o.includes("invalid api key")||o.includes("authentication")},handler:async(t,s)=>(console.log(`[EXA:${s.operation}] Authentication failed - check your API key`),{maxRetries:0})},PERMISSION_ERROR:{match:(t,s)=>{if(t instanceof h&&t.status===403)return!0;let o=t.message.toLowerCase();return o.includes("forbidden")||o.includes("permission")||o.includes("access denied")},handler:async(t,s)=>(console.warn(`[EXA:${s.operation}] Permission denied: ${t.message}`),{maxRetries:0})},BAD_REQUEST_ERROR:{match:(t,s)=>{if(t instanceof h&&t.status===400)return!0;let o=t.message.toLowerCase();return o.includes("bad request")||o.includes("invalid request")||o.includes("validation")},handler:async(t,s)=>(console.warn(`[EXA:${s.operation}] Bad request: ${t.message}`),{maxRetries:0})},NETWORK_ERROR:{match:(t,s)=>{let o=t.message.toLowerCase();return o.includes("network")||o.includes("connection")||o.includes("econnrefused")||o.includes("enotfound")||o.includes("etimedout")||o.includes("fetch failed")||o.includes("network error")},handler:async(t,s)=>(console.warn(`[EXA:${s.operation}] Network error: ${t.message}`),{maxRetries:3})},NOT_FOUND_ERROR:{match:(t,s)=>t instanceof h&&t.status===404?!0:t.message.toLowerCase().includes("not found"),handler:async(t,s)=>(console.warn(`[EXA:${s.operation}] Resource not found: ${t.message}`),{maxRetries:0})},DEFAULT:{match:(t,s)=>!0,handler:async(t,s)=>(console.error(`[EXA:${s.operation}] Unhandled error: ${t.message}`),{maxRetries:0})}};import i from"zod";var ne=i.object({id:i.string(),url:i.string(),title:i.string().nullable().optional(),publishedDate:i.string().nullable().optional(),author:i.string().nullable().optional(),score:i.number().optional(),text:i.string().optional(),highlights:i.array(i.string()).optional(),highlightScores:i.array(i.number()).optional(),summary:i.string().optional(),query:i.string().optional(),createdAt:i.coerce.date().nullable().optional()}),re=i.object({id:i.string(),status:i.enum(["idle","running","paused","done"]).optional(),externalId:i.string().optional(),createdAt:i.coerce.date().nullable().optional(),updatedAt:i.coerce.date().nullable().optional()}),ae=i.object({id:i.string(),websetId:i.string(),urls:i.array(i.string()).optional(),status:i.enum(["pending","processing","completed","failed"]).optional(),createdAt:i.coerce.date().nullable().optional(),updatedAt:i.coerce.date().nullable().optional()}),ie=i.object({id:i.string(),websetId:i.string(),cadenceType:i.enum(["realtime","hourly","daily","weekly"]).optional(),createdAt:i.coerce.date().nullable().optional(),updatedAt:i.coerce.date().nullable().optional()}),pe=i.object({id:i.string(),type:i.string(),websetId:i.string().optional(),createdAt:i.coerce.date().nullable().optional()}),de=i.object({id:i.string(),url:i.string(),events:i.array(i.string()).optional(),status:i.enum(["active","inactive"]).optional(),createdAt:i.coerce.date().nullable().optional(),updatedAt:i.coerce.date().nullable().optional()});var ce={version:"1.2.0",entities:{searchResults:ne,websets:re,imports:ae,monitors:ie,events:pe,webhookConfigs:de}};import{logEventFromContext as dt}from"corsair/core";import{createHmac as at,timingSafeEqual as it}from"crypto";import{z as a}from"zod";var x=a.object({id:a.string(),url:a.string(),title:a.string().nullable().optional(),publishedDate:a.string().nullable().optional(),author:a.string().nullable().optional(),score:a.number().optional(),text:a.string().optional(),highlights:a.array(a.string()).optional(),summary:a.string().optional()}),f=a.object({id:a.string(),object:a.literal("webset"),status:a.enum(["idle","running","paused","done"]),externalId:a.string().optional(),createdAt:a.string(),updatedAt:a.string()}),le=a.object({type:a.literal("search.alert"),id:a.string(),created_at:a.string(),data:a.object({query:a.string(),results:a.array(x)})}),ue=a.object({type:a.literal("content.indexed"),id:a.string(),created_at:a.string(),data:a.object({url:a.string(),title:a.string().nullable().optional(),publishedDate:a.string().nullable().optional(),author:a.string().nullable().optional()})}),me=a.object({type:a.literal("webset.items_found"),id:a.string(),created_at:a.string(),data:a.object({webset:f,items:a.array(x),itemCount:a.number().optional()})}),be=a.object({type:a.literal("webset.search.completed"),id:a.string(),created_at:a.string(),data:a.object({webset:f,totalItems:a.number().optional()})}),he=a.object({query:a.string(),results:a.array(x),triggeredAt:a.string()}),ye=a.object({url:a.string(),title:a.string().nullable().optional(),publishedDate:a.string().nullable().optional(),author:a.string().nullable().optional(),indexedAt:a.string()}),Ee=a.object({webset:f,items:a.array(x),itemCount:a.number().optional(),triggeredAt:a.string()}),we=a.object({webset:f,totalItems:a.number().optional(),completedAt:a.string()});function pt(t){return typeof t=="string"?JSON.parse(t):t}function m(t){return s=>pt(s.body).type===t}function b(t,s){if(!s)return{valid:!1,error:"Missing webhook secret"};let o=t.rawBody;if(!o)return{valid:!1,error:"Missing raw body for signature verification"};let n=t.headers,r=Array.isArray(n["x-exa-signature"])?n["x-exa-signature"][0]:n["x-exa-signature"];if(!r)return{valid:!1,error:"Missing x-exa-signature header"};let p=at("sha256",s).update(o).digest("hex");try{let c=it(Buffer.from(r),Buffer.from(p));return{valid:c,error:c?void 0:"Invalid signature"}}catch{return{valid:!1,error:"Signature comparison failed"}}}var xe={match:m("content.indexed"),handler:async(t,s)=>{let o=t.key,n=b(s,o);if(!n.valid)return{success:!1,statusCode:401,error:n.error||"Signature verification failed"};let r=s.payload;if(r.type!=="content.indexed")return{success:!0,data:void 0};let p="";if(t.db.searchResults)try{p=(await t.db.searchResults.upsertByEntityId(r.id,{id:r.id,...r.data,createdAt:r.data.publishedDate?new Date(r.data.publishedDate):new Date}))?.id||""}catch(c){console.warn("Failed to save indexed content to database:",c)}return await dt(t,"exa.webhook.contentIndexed",{url:r.data.url,title:r.data.title},"completed"),{success:!0,corsairEntityId:p,data:r}}};import{logEventFromContext as ct}from"corsair/core";var fe={match:m("search.alert"),handler:async(t,s)=>{let o=t.key,n=b(s,o);if(!n.valid)return{success:!1,statusCode:401,error:n.error||"Signature verification failed"};let r=s.payload;if(r.type!=="search.alert")return{success:!0,data:void 0};if(t.db.searchResults)try{for(let p of r.data.results)await t.db.searchResults.upsertByEntityId(p.id,{...p,query:r.data.query,createdAt:p.publishedDate?new Date(p.publishedDate):new Date})}catch(p){console.warn("Failed to save search results to database:",p)}return await ct(t,"exa.webhook.searchAlert",{query:r.data.query,resultCount:r.data.results.length},"completed"),{success:!0,data:r}}};import{logEventFromContext as lt}from"corsair/core";var ge={match:m("webset.items_found"),handler:async(t,s)=>{let o=t.key,n=b(s,o);if(!n.valid)return{success:!1,statusCode:401,error:n.error||"Signature verification failed"};let r=s.payload;if(r.type!=="webset.items_found")return{success:!0,data:void 0};let p="";if(t.db.websets)try{p=(await t.db.websets.upsertByEntityId(r.data.webset.id,{id:r.data.webset.id,status:r.data.webset.status,externalId:r.data.webset.externalId,createdAt:new Date(r.data.webset.createdAt),updatedAt:new Date(r.data.webset.updatedAt)}))?.id||""}catch(c){console.warn("Failed to save webset to database:",c)}if(t.db.searchResults)try{for(let c of r.data.items)await t.db.searchResults.upsertByEntityId(c.id,{...c,createdAt:c.publishedDate?new Date(c.publishedDate):new Date})}catch(c){console.warn("Failed to save webset items to database:",c)}return await lt(t,"exa.webhook.websetItemsFound",{websetId:r.data.webset.id,itemCount:r.data.items.length},"completed"),{success:!0,corsairEntityId:p,data:r}}};import{logEventFromContext as ut}from"corsair/core";var Ie={match:m("webset.search.completed"),handler:async(t,s)=>{let o=t.key,n=b(s,o);if(!n.valid)return{success:!1,statusCode:401,error:n.error||"Signature verification failed"};let r=s.payload;if(r.type!=="webset.search.completed")return{success:!0,data:void 0};let p="";if(t.db.websets)try{p=(await t.db.websets.upsertByEntityId(r.data.webset.id,{id:r.data.webset.id,status:r.data.webset.status,externalId:r.data.webset.externalId,createdAt:new Date(r.data.webset.createdAt),updatedAt:new Date(r.data.webset.updatedAt)}))?.id||""}catch(c){console.warn("Failed to save webset to database:",c)}return await ut(t,"exa.webhook.websetSearchCompleted",{websetId:r.data.webset.id,totalItems:r.data.totalItems},"completed"),{success:!0,corsairEntityId:p,data:r}}};var Se={searchAlert:fe},ve={contentIndexed:xe},A={websetItemsFound:ge,websetSearchCompleted:Ie};var mt={search:{search:k.search,findSimilar:k.findSimilar},contents:{get:Y.get},answer:{get:ee.get},websets:{create:E.create,get:E.get,delete:E.delete},imports:{create:w.create,list:w.list,delete:w.delete},monitors:{create:te.create},events:{list:C.list,get:C.get},webhooksApi:{list:oe.list}},bt={"search.search":{input:l.searchSearch,output:u.searchSearch},"search.findSimilar":{input:l.searchFindSimilar,output:u.searchFindSimilar},"contents.get":{input:l.contentsGet,output:u.contentsGet},"answer.get":{input:l.answerGet,output:u.answerGet},"websets.create":{input:l.websetsCreate,output:u.websetsCreate},"websets.get":{input:l.websetsGet,output:u.websetsGet},"websets.delete":{input:l.websetsDelete,output:u.websetsDelete},"imports.create":{input:l.importsCreate,output:u.importsCreate},"imports.list":{input:l.importsList,output:u.importsList},"imports.delete":{input:l.importsDelete,output:u.importsDelete},"monitors.create":{input:l.monitorsCreate,output:u.monitorsCreate},"events.list":{input:l.eventsList,output:u.eventsList},"events.get":{input:l.eventsGet,output:u.eventsGet},"webhooksApi.list":{input:l.webhooksApiList,output:u.webhooksApiList}},ht={search:{searchAlert:Se.searchAlert},content:{contentIndexed:ve.contentIndexed},webset:{websetItemsFound:A.websetItemsFound,websetSearchCompleted:A.websetSearchCompleted}},yt={"search.searchAlert":{description:"A monitored search query has new matching results",payload:le,response:he},"content.contentIndexed":{description:"A new web page has been indexed by Exa",payload:ue,response:ye},"webset.websetItemsFound":{description:"New items were found for a webset search",payload:me,response:Ee},"webset.websetSearchCompleted":{description:"A webset search has completed",payload:be,response:we}},Et="api_key",wt={"search.search":{riskLevel:"read",description:"Search the web using neural or keyword search"},"search.findSimilar":{riskLevel:"read",description:"Find web pages semantically similar to a given URL"},"contents.get":{riskLevel:"read",description:"Retrieve full text, highlights, or summaries from URLs or document IDs"},"answer.get":{riskLevel:"read",description:"Generate a direct, citation-backed answer to a natural language question"},"websets.create":{riskLevel:"write",description:"Create a new webset with search, import, and enrichment setup"},"websets.get":{riskLevel:"read",description:"Get details of a specific webset by its ID"},"websets.delete":{riskLevel:"destructive",description:"Delete a webset [DESTRUCTIVE]"},"imports.create":{riskLevel:"write",description:"Create a new import to upload data into a webset"},"imports.list":{riskLevel:"read",description:"List all imports for a webset"},"imports.delete":{riskLevel:"destructive",description:"Delete an existing import [DESTRUCTIVE]"},"monitors.create":{riskLevel:"write",description:"Create a new monitor to watch a webset for changes"},"events.list":{riskLevel:"read",description:"List all events that have occurred for a webset"},"events.get":{riskLevel:"read",description:"Get details of a specific webset event by its ID"},"webhooksApi.list":{riskLevel:"read",description:"List all webhooks configured for websets"}},Mo={api_key:{account:["one"]}};function zo(t={}){let s={...t,authType:t.authType??Et};return{id:"exa",schema:ce,options:s,hooks:s.hooks,webhookHooks:s.webhookHooks,endpoints:mt,webhooks:ht,endpointMeta:wt,endpointSchemas:bt,webhookSchemas:yt,pluginWebhookMatcher:o=>"x-exa-signature"in o.headers,errorHandlers:{...se,...s.errorHandlers},keyBuilder:async(o,n)=>{if(n==="webhook"&&s.webhookSecret)return s.webhookSecret;if(n==="webhook"){let r=await o.keys.get_webhook_signature();return r||""}if(n==="endpoint"&&s.key)return s.key;if(o.authType==="api_key"){let r=await o.keys.get_api_key();return r||""}return""}}}export{m as createExaEventMatch,zo as exa,Mo as exaAuthConfig,bt as exaEndpointSchemas};
1
+ import{logEventFromContext as Re}from"corsair/core";import{request as ke}from"corsair/http";var Ce="https://api.exa.ai",Ae={enabled:!0,maxRetries:3,initialRetryDelay:1e3,backoffMultiplier:2,headerNames:{retryAfter:"Retry-After"}};async function d(t,s,o={}){let{method:n="POST",body:a,query:p}=o;return await ke({BASE:Ce,VERSION:"1.0.0",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",HEADERS:{"Content-Type":"application/json","x-api-key":s}},{method:n,url:t,body:n==="POST"||n==="PUT"||n==="PATCH"?a:void 0,mediaType:"application/json; charset=utf-8",query:n==="GET"?p:void 0},{rateLimitConfig:Ae})}var R=async(t,s)=>{let o=await d("answer",t.key,{method:"POST",body:s});if(o.citations&&t.db.searchResults)try{for(let n of o.citations)await t.db.searchResults.upsertByEntityId(n.id,{...n,query:s.query,createdAt:n.publishedDate?new Date(n.publishedDate):new Date})}catch(n){console.warn("Failed to save answer citations to database:",n)}return await Re(t,"exa.answer.get",{query:s.query},"completed"),o};import{logEventFromContext as We}from"corsair/core";var W=async(t,s)=>{let o=await d("contents",t.key,{method:"POST",body:s});if(o.results&&t.db.searchResults)try{for(let n of o.results)await t.db.searchResults.upsertByEntityId(n.id,{...n,createdAt:n.publishedDate?new Date(n.publishedDate):new Date})}catch(n){console.warn("Failed to save contents to database:",n)}return await We(t,"exa.contents.get",{idCount:s.ids.length},"completed"),o};import{logEventFromContext as D}from"corsair/core";var L=async(t,s)=>{let{websetId:o,...n}=s,a=await d(`websets/v0/websets/${o}/events`,t.key,{method:"GET",query:n});if(a.data&&t.db.events)try{for(let p of a.data)await t.db.events.upsertByEntityId(p.id,{id:p.id,type:p.type,websetId:o,createdAt:new Date(p.createdAt)})}catch(p){console.warn("Failed to save events to database:",p)}return await D(t,"exa.events.list",{websetId:o},"completed"),a},G=async(t,s)=>{let o=await d(`websets/v0/websets/${s.websetId}/events/${s.eventId}`,t.key,{method:"GET"});if(t.db.events)try{await t.db.events.upsertByEntityId(o.id,{id:o.id,type:o.type,websetId:s.websetId,createdAt:new Date(o.createdAt)})}catch(n){console.warn("Failed to save event to database:",n)}return await D(t,"exa.events.get",{websetId:s.websetId,eventId:s.eventId},"completed"),o};import{logEventFromContext as g}from"corsair/core";var F=async(t,s)=>{let o=await d(`websets/v0/websets/${s.websetId}/imports`,t.key,{method:"POST",body:{urls:s.urls}});if(t.db.imports)try{await t.db.imports.upsertByEntityId(o.id,{...o,createdAt:new Date(o.createdAt),updatedAt:o.updatedAt?new Date(o.updatedAt):void 0})}catch(n){console.warn("Failed to save import to database:",n)}return await g(t,"exa.imports.create",{websetId:s.websetId,urlCount:s.urls.length},"completed"),o},O=async(t,s)=>{let{websetId:o,...n}=s,a=await d(`websets/v0/websets/${o}/imports`,t.key,{method:"GET",query:n});if(a.data&&t.db.imports)try{for(let p of a.data)await t.db.imports.upsertByEntityId(p.id,{...p,createdAt:new Date(p.createdAt),updatedAt:p.updatedAt?new Date(p.updatedAt):void 0})}catch(p){console.warn("Failed to save imports to database:",p)}return await g(t,"exa.imports.list",{websetId:o},"completed"),a},P=async(t,s)=>{let o=await d(`websets/v0/websets/${s.websetId}/imports/${s.importId}`,t.key,{method:"DELETE"});if(o.deleted&&t.db.imports)try{await t.db.imports.deleteByEntityId(s.importId)}catch(n){console.warn("Failed to delete import from database:",n)}return await g(t,"exa.imports.delete",{websetId:s.websetId,importId:s.importId},"completed"),o};import{logEventFromContext as De}from"corsair/core";var T=async(t,s)=>{let{websetId:o,...n}=s,a=await d(`websets/v0/websets/${o}/monitors`,t.key,{method:"POST",body:n});if(t.db.monitors)try{await t.db.monitors.upsertByEntityId(a.id,{...a,createdAt:new Date(a.createdAt),updatedAt:a.updatedAt?new Date(a.updatedAt):void 0})}catch(p){console.warn("Failed to save monitor to database:",p)}return await De(t,"exa.monitors.create",{websetId:o,cadenceType:s.cadence.type},"completed"),a};import{logEventFromContext as j}from"corsair/core";var q=async(t,s)=>{let o=await d("search",t.key,{method:"POST",body:s});if(o.results&&t.db.searchResults)try{for(let n of o.results)await t.db.searchResults.upsertByEntityId(n.id,{...n,query:s.query,createdAt:n.publishedDate?new Date(n.publishedDate):new Date})}catch(n){console.warn("Failed to save search results to database:",n)}return await j(t,"exa.search.search",{query:s.query,resultCount:o.results?.length??0},"completed"),o},M=async(t,s)=>{let o=await d("findSimilar",t.key,{method:"POST",body:s});if(o.results&&t.db.searchResults)try{for(let n of o.results)await t.db.searchResults.upsertByEntityId(n.id,{...n,createdAt:n.publishedDate?new Date(n.publishedDate):new Date})}catch(n){console.warn("Failed to save search results to database:",n)}return await j(t,"exa.search.findSimilar",{url:s.url,resultCount:o.results?.length??0},"completed"),o};import{logEventFromContext as Le}from"corsair/core";var z=async(t,s)=>{let o=await d("websets/v0/webhooks",t.key,{method:"GET",query:s});if(o.data&&t.db.webhookConfigs)try{for(let n of o.data)await t.db.webhookConfigs.upsertByEntityId(n.id,{...n,createdAt:new Date(n.createdAt),updatedAt:n.updatedAt?new Date(n.updatedAt):void 0})}catch(n){console.warn("Failed to save webhook configs to database:",n)}return await Le(t,"exa.webhooksApi.list",{},"completed"),o};import{logEventFromContext as I}from"corsair/core";var B=async(t,s)=>{let o=await d("websets/v0/websets",t.key,{method:"POST",body:s});if(t.db.websets)try{await t.db.websets.upsertByEntityId(o.id,{id:o.id,status:o.status,externalId:o.externalId,createdAt:new Date(o.createdAt)})}catch(n){console.warn("Failed to save webset to database:",n)}return await I(t,"exa.websets.create",{externalId:s.externalId},"completed"),o},_=async(t,s)=>{let o=await d(`websets/v0/websets/${s.id}`,t.key,{method:"GET"});if(t.db.websets)try{await t.db.websets.upsertByEntityId(o.id,{id:o.id,status:o.status,externalId:o.externalId,createdAt:new Date(o.createdAt),updatedAt:new Date(o.updatedAt)})}catch(n){console.warn("Failed to save webset to database:",n)}return await I(t,"exa.websets.get",{id:s.id},"completed"),o},$=async(t,s)=>{let o=await d(`websets/v0/websets/${s.id}`,t.key,{method:"DELETE"});if(o.deleted&&t.db.websets)try{await t.db.websets.deleteByEntityId(s.id)}catch(n){console.warn("Failed to delete webset from database:",n)}return await I(t,"exa.websets.delete",{id:s.id},"completed"),o};import{z as e}from"zod";var N=e.object({maxCharacters:e.number().optional(),includeHtmlTags:e.boolean().optional()}),U=e.object({numSentences:e.number().optional(),highlightsPerUrl:e.number().optional(),query:e.string().optional()}),K=e.object({query:e.string().optional()}),X=e.object({text:e.union([N,e.boolean()]).optional(),highlights:e.union([U,e.boolean()]).optional(),summary:e.union([K,e.boolean()]).optional()}),y=e.object({id:e.string(),url:e.string(),title:e.string().nullable().optional(),publishedDate:e.string().nullable().optional(),author:e.string().nullable().optional(),score:e.number().optional(),text:e.string().optional(),highlights:e.array(e.string()).optional(),highlightScores:e.array(e.number()).optional(),summary:e.string().optional()}),Ge=e.object({type:e.enum(["company","person","article","research paper","repository","event","product","video","job","podcast"]).optional()}),Fe=e.object({description:e.string(),successRate:e.string().optional()}),V=e.object({query:e.string(),count:e.number().optional(),entity:Ge.optional(),criteria:e.array(Fe).optional()}),Oe=e.object({description:e.string(),format:e.enum(["text","date","number","options","boolean"]).optional(),options:e.array(e.string()).optional()}),Pe=e.object({id:e.string(),description:e.string(),format:e.enum(["text","date","number","options","boolean"]),options:e.array(e.string()).optional(),createdAt:e.string(),updatedAt:e.string()}),S=e.object({id:e.string(),object:e.literal("import"),websetId:e.string(),urls:e.array(e.string()).optional(),status:e.enum(["pending","processing","completed","failed"]).optional(),createdAt:e.string(),updatedAt:e.string().optional()}),J=e.object({type:e.enum(["realtime","hourly","daily","weekly"])}),Q=e.object({id:e.string(),object:e.literal("monitor"),websetId:e.string(),cadence:J,createdAt:e.string(),updatedAt:e.string().optional()}),H=e.object({id:e.string(),object:e.literal("webset"),status:e.enum(["idle","running","paused","done"]),externalId:e.string().optional(),searches:e.array(V).optional(),enrichments:e.array(Pe).optional(),imports:e.array(S).optional(),monitors:e.array(Q).optional(),createdAt:e.string(),updatedAt:e.string()}),Z=e.object({id:e.string(),object:e.literal("event"),type:e.string(),createdAt:e.string(),data:e.unknown().optional()}),Te=e.object({id:e.string(),object:e.literal("webhook"),url:e.string(),events:e.array(e.string()).optional(),status:e.enum(["active","inactive"]).optional(),createdAt:e.string(),updatedAt:e.string().optional()}),v=t=>e.object({data:e.array(t),hasMore:e.boolean().optional(),nextCursor:e.string().optional()}),je=e.object({query:e.string(),numResults:e.number().optional(),includeDomains:e.array(e.string()).optional(),excludeDomains:e.array(e.string()).optional(),startCrawlDate:e.string().optional(),endCrawlDate:e.string().optional(),startPublishedDate:e.string().optional(),endPublishedDate:e.string().optional(),useAutoprompt:e.boolean().optional(),type:e.enum(["keyword","neural","auto"]).optional(),category:e.string().optional(),contents:X.optional()}),qe=e.object({url:e.string(),numResults:e.number().optional(),includeDomains:e.array(e.string()).optional(),excludeDomains:e.array(e.string()).optional(),startCrawlDate:e.string().optional(),endCrawlDate:e.string().optional(),startPublishedDate:e.string().optional(),endPublishedDate:e.string().optional(),excludeSourceDomain:e.boolean().optional(),category:e.string().optional(),contents:X.optional()}),Me=e.object({ids:e.array(e.string()),text:e.union([N,e.boolean()]).optional(),highlights:e.union([U,e.boolean()]).optional(),summary:e.union([K,e.boolean()]).optional()}),ze=e.object({query:e.string(),text:e.boolean().optional(),stream:e.boolean().optional()}),Be=e.object({searches:e.array(V).optional(),enrichments:e.array(Oe).optional(),externalId:e.string().optional()}),_e=e.object({id:e.string()}),$e=e.object({id:e.string()}),He=e.object({websetId:e.string(),urls:e.array(e.string())}),Ne=e.object({websetId:e.string(),cursor:e.string().optional(),limit:e.number().optional()}),Ue=e.object({websetId:e.string(),importId:e.string()}),Ke=e.object({websetId:e.string(),cadence:J}),Xe=e.object({websetId:e.string(),cursor:e.string().optional(),limit:e.number().optional()}),Ve=e.object({websetId:e.string(),eventId:e.string()}),Je=e.object({cursor:e.string().optional(),limit:e.number().optional()}),Qe=e.object({results:e.array(y),autopromptString:e.string().optional(),requestId:e.string().optional()}),Ze=e.object({results:e.array(y),requestId:e.string().optional()}),Ye=e.object({results:e.array(y),requestId:e.string().optional()}),et=e.object({answer:e.string(),citations:e.array(y).optional(),requestId:e.string().optional()}),tt=e.object({id:e.string(),object:e.literal("webset"),deleted:e.boolean()}),ot=e.object({id:e.string(),deleted:e.boolean()}),st=v(S),nt=v(Z),rt=v(Te),l={searchSearch:je,searchFindSimilar:qe,contentsGet:Me,answerGet:ze,websetsCreate:Be,websetsGet:_e,websetsDelete:$e,importsCreate:He,importsList:Ne,importsDelete:Ue,monitorsCreate:Ke,eventsList:Xe,eventsGet:Ve,webhooksApiList:Je},u={searchSearch:Qe,searchFindSimilar:Ze,contentsGet:Ye,answerGet:et,websetsCreate:H,websetsGet:H,websetsDelete:tt,importsCreate:S,importsList:st,importsDelete:ot,monitorsCreate:Q,eventsList:nt,eventsGet:Z,webhooksApiList:rt};var k={search:q,findSimilar:M},Y={get:W},ee={get:R},E={create:B,get:_,delete:$},w={create:F,list:O,delete:P},te={create:T},C={list:L,get:G},oe={list:z};import{ApiError as h}from"corsair/http";var se={RATE_LIMIT_ERROR:{match:(t,s)=>{if(t instanceof h&&t.status===429)return!0;let o=t.message.toLowerCase();return o.includes("rate_limit")||o.includes("ratelimit")||t.message.includes("429")},handler:async(t,s)=>{let o;return t instanceof h&&t.retryAfter!==void 0&&(o=t.retryAfter),{maxRetries:5,headersRetryAfterMs:o}}},AUTH_ERROR:{match:(t,s)=>{if(t instanceof h&&t.status===401)return!0;let o=t.message.toLowerCase();return o.includes("unauthorized")||o.includes("invalid api key")||o.includes("authentication")},handler:async(t,s)=>(console.log(`[EXA:${s.operation}] Authentication failed - check your API key`),{maxRetries:0})},PERMISSION_ERROR:{match:(t,s)=>{if(t instanceof h&&t.status===403)return!0;let o=t.message.toLowerCase();return o.includes("forbidden")||o.includes("permission")||o.includes("access denied")},handler:async(t,s)=>(console.warn(`[EXA:${s.operation}] Permission denied: ${t.message}`),{maxRetries:0})},BAD_REQUEST_ERROR:{match:(t,s)=>{if(t instanceof h&&t.status===400)return!0;let o=t.message.toLowerCase();return o.includes("bad request")||o.includes("invalid request")||o.includes("validation")},handler:async(t,s)=>(console.warn(`[EXA:${s.operation}] Bad request: ${t.message}`),{maxRetries:0})},NETWORK_ERROR:{match:(t,s)=>{let o=t.message.toLowerCase();return o.includes("network")||o.includes("connection")||o.includes("econnrefused")||o.includes("enotfound")||o.includes("etimedout")||o.includes("fetch failed")||o.includes("network error")},handler:async(t,s)=>(console.warn(`[EXA:${s.operation}] Network error: ${t.message}`),{maxRetries:3})},NOT_FOUND_ERROR:{match:(t,s)=>t instanceof h&&t.status===404?!0:t.message.toLowerCase().includes("not found"),handler:async(t,s)=>(console.warn(`[EXA:${s.operation}] Resource not found: ${t.message}`),{maxRetries:0})},DEFAULT:{match:(t,s)=>!0,handler:async(t,s)=>(console.error(`[EXA:${s.operation}] Unhandled error: ${t.message}`),{maxRetries:0})}};import i from"zod";var ne=i.object({id:i.string(),url:i.string(),title:i.string().nullable().optional(),publishedDate:i.string().nullable().optional(),author:i.string().nullable().optional(),score:i.number().optional(),text:i.string().optional(),highlights:i.array(i.string()).optional(),highlightScores:i.array(i.number()).optional(),summary:i.string().optional(),query:i.string().optional(),createdAt:i.coerce.date().nullable().optional()}),re=i.object({id:i.string(),status:i.enum(["idle","running","paused","done"]).optional(),externalId:i.string().optional(),createdAt:i.coerce.date().nullable().optional(),updatedAt:i.coerce.date().nullable().optional()}),ae=i.object({id:i.string(),websetId:i.string(),urls:i.array(i.string()).optional(),status:i.enum(["pending","processing","completed","failed"]).optional(),createdAt:i.coerce.date().nullable().optional(),updatedAt:i.coerce.date().nullable().optional()}),ie=i.object({id:i.string(),websetId:i.string(),cadenceType:i.enum(["realtime","hourly","daily","weekly"]).optional(),createdAt:i.coerce.date().nullable().optional(),updatedAt:i.coerce.date().nullable().optional()}),pe=i.object({id:i.string(),type:i.string(),websetId:i.string().optional(),createdAt:i.coerce.date().nullable().optional()}),de=i.object({id:i.string(),url:i.string(),events:i.array(i.string()).optional(),status:i.enum(["active","inactive"]).optional(),createdAt:i.coerce.date().nullable().optional(),updatedAt:i.coerce.date().nullable().optional()});var ce={version:"1.2.0",entities:{searchResults:ne,websets:re,imports:ae,monitors:ie,events:pe,webhookConfigs:de}};import{logEventFromContext as dt}from"corsair/core";import{createHmac as at,timingSafeEqual as it}from"crypto";import{z as r}from"zod";var x=r.object({id:r.string(),url:r.string(),title:r.string().nullable().optional(),publishedDate:r.string().nullable().optional(),author:r.string().nullable().optional(),score:r.number().optional(),text:r.string().optional(),highlights:r.array(r.string()).optional(),summary:r.string().optional()}),f=r.object({id:r.string(),object:r.literal("webset"),status:r.enum(["idle","running","paused","done"]),externalId:r.string().optional(),createdAt:r.string(),updatedAt:r.string()}),le=r.object({type:r.literal("search.alert"),id:r.string(),created_at:r.string(),data:r.object({query:r.string(),results:r.array(x)})}),ue=r.object({type:r.literal("content.indexed"),id:r.string(),created_at:r.string(),data:r.object({url:r.string(),title:r.string().nullable().optional(),publishedDate:r.string().nullable().optional(),author:r.string().nullable().optional()})}),me=r.object({type:r.literal("webset.items_found"),id:r.string(),created_at:r.string(),data:r.object({webset:f,items:r.array(x),itemCount:r.number().optional()})}),be=r.object({type:r.literal("webset.search.completed"),id:r.string(),created_at:r.string(),data:r.object({webset:f,totalItems:r.number().optional()})}),he=r.object({query:r.string(),results:r.array(x),triggeredAt:r.string()}),ye=r.object({url:r.string(),title:r.string().nullable().optional(),publishedDate:r.string().nullable().optional(),author:r.string().nullable().optional(),indexedAt:r.string()}),Ee=r.object({webset:f,items:r.array(x),itemCount:r.number().optional(),triggeredAt:r.string()}),we=r.object({webset:f,totalItems:r.number().optional(),completedAt:r.string()});function pt(t){return typeof t=="string"?JSON.parse(t):t}function m(t){return s=>pt(s.body).type===t}function b(t,s){if(!s)return{valid:!1,error:"Missing webhook secret"};let o=t.rawBody;if(!o)return{valid:!1,error:"Missing raw body for signature verification"};let n=t.headers,a=Array.isArray(n["x-exa-signature"])?n["x-exa-signature"][0]:n["x-exa-signature"];if(!a)return{valid:!1,error:"Missing x-exa-signature header"};let p=at("sha256",s).update(o).digest("hex");try{let c=it(Buffer.from(a),Buffer.from(p));return{valid:c,error:c?void 0:"Invalid signature"}}catch{return{valid:!1,error:"Signature comparison failed"}}}var xe={match:m("content.indexed"),handler:async(t,s)=>{let o=t.key,n=b(s,o);if(!n.valid)return{success:!1,statusCode:401,error:n.error||"Signature verification failed"};let a=s.payload;if(a.type!=="content.indexed")return{success:!0,data:void 0};let p="";if(t.db.searchResults)try{p=(await t.db.searchResults.upsertByEntityId(a.id,{id:a.id,...a.data,createdAt:a.data.publishedDate?new Date(a.data.publishedDate):new Date}))?.id||""}catch(c){console.warn("Failed to save indexed content to database:",c)}return await dt(t,"exa.webhook.contentIndexed",{url:a.data.url,title:a.data.title},"completed"),{success:!0,corsairEntityId:p,data:a}}};import{logEventFromContext as ct}from"corsair/core";var fe={match:m("search.alert"),handler:async(t,s)=>{let o=t.key,n=b(s,o);if(!n.valid)return{success:!1,statusCode:401,error:n.error||"Signature verification failed"};let a=s.payload;if(a.type!=="search.alert")return{success:!0,data:void 0};if(t.db.searchResults)try{for(let p of a.data.results)await t.db.searchResults.upsertByEntityId(p.id,{...p,query:a.data.query,createdAt:p.publishedDate?new Date(p.publishedDate):new Date})}catch(p){console.warn("Failed to save search results to database:",p)}return await ct(t,"exa.webhook.searchAlert",{query:a.data.query,resultCount:a.data.results.length},"completed"),{success:!0,data:a}}};import{logEventFromContext as lt}from"corsair/core";var ge={match:m("webset.items_found"),handler:async(t,s)=>{let o=t.key,n=b(s,o);if(!n.valid)return{success:!1,statusCode:401,error:n.error||"Signature verification failed"};let a=s.payload;if(a.type!=="webset.items_found")return{success:!0,data:void 0};let p="";if(t.db.websets)try{p=(await t.db.websets.upsertByEntityId(a.data.webset.id,{id:a.data.webset.id,status:a.data.webset.status,externalId:a.data.webset.externalId,createdAt:new Date(a.data.webset.createdAt),updatedAt:new Date(a.data.webset.updatedAt)}))?.id||""}catch(c){console.warn("Failed to save webset to database:",c)}if(t.db.searchResults)try{for(let c of a.data.items)await t.db.searchResults.upsertByEntityId(c.id,{...c,createdAt:c.publishedDate?new Date(c.publishedDate):new Date})}catch(c){console.warn("Failed to save webset items to database:",c)}return await lt(t,"exa.webhook.websetItemsFound",{websetId:a.data.webset.id,itemCount:a.data.items.length},"completed"),{success:!0,corsairEntityId:p,data:a}}};import{logEventFromContext as ut}from"corsair/core";var Ie={match:m("webset.search.completed"),handler:async(t,s)=>{let o=t.key,n=b(s,o);if(!n.valid)return{success:!1,statusCode:401,error:n.error||"Signature verification failed"};let a=s.payload;if(a.type!=="webset.search.completed")return{success:!0,data:void 0};let p="";if(t.db.websets)try{p=(await t.db.websets.upsertByEntityId(a.data.webset.id,{id:a.data.webset.id,status:a.data.webset.status,externalId:a.data.webset.externalId,createdAt:new Date(a.data.webset.createdAt),updatedAt:new Date(a.data.webset.updatedAt)}))?.id||""}catch(c){console.warn("Failed to save webset to database:",c)}return await ut(t,"exa.webhook.websetSearchCompleted",{websetId:a.data.webset.id,totalItems:a.data.totalItems},"completed"),{success:!0,corsairEntityId:p,data:a}}};var Se={searchAlert:fe},ve={contentIndexed:xe},A={websetItemsFound:ge,websetSearchCompleted:Ie};var mt={search:{search:k.search,findSimilar:k.findSimilar},contents:{get:Y.get},answer:{get:ee.get},websets:{create:E.create,get:E.get,delete:E.delete},imports:{create:w.create,list:w.list,delete:w.delete},monitors:{create:te.create},events:{list:C.list,get:C.get},webhooksApi:{list:oe.list}},bt={"search.search":{input:l.searchSearch,output:u.searchSearch},"search.findSimilar":{input:l.searchFindSimilar,output:u.searchFindSimilar},"contents.get":{input:l.contentsGet,output:u.contentsGet},"answer.get":{input:l.answerGet,output:u.answerGet},"websets.create":{input:l.websetsCreate,output:u.websetsCreate},"websets.get":{input:l.websetsGet,output:u.websetsGet},"websets.delete":{input:l.websetsDelete,output:u.websetsDelete},"imports.create":{input:l.importsCreate,output:u.importsCreate},"imports.list":{input:l.importsList,output:u.importsList},"imports.delete":{input:l.importsDelete,output:u.importsDelete},"monitors.create":{input:l.monitorsCreate,output:u.monitorsCreate},"events.list":{input:l.eventsList,output:u.eventsList},"events.get":{input:l.eventsGet,output:u.eventsGet},"webhooksApi.list":{input:l.webhooksApiList,output:u.webhooksApiList}},ht={search:{searchAlert:Se.searchAlert},content:{contentIndexed:ve.contentIndexed},webset:{websetItemsFound:A.websetItemsFound,websetSearchCompleted:A.websetSearchCompleted}},yt={"search.searchAlert":{description:"A monitored search query has new matching results",payload:le,response:he},"content.contentIndexed":{description:"A new web page has been indexed by Exa",payload:ue,response:ye},"webset.websetItemsFound":{description:"New items were found for a webset search",payload:me,response:Ee},"webset.websetSearchCompleted":{description:"A webset search has completed",payload:be,response:we}},Et="api_key",wt={"search.search":{riskLevel:"read",description:"Search the web using neural or keyword search"},"search.findSimilar":{riskLevel:"read",description:"Find web pages semantically similar to a given URL"},"contents.get":{riskLevel:"read",description:"Retrieve full text, highlights, or summaries from URLs or document IDs"},"answer.get":{riskLevel:"read",description:"Generate a direct, citation-backed answer to a natural language question"},"websets.create":{riskLevel:"write",description:"Create a new webset with search, import, and enrichment setup"},"websets.get":{riskLevel:"read",description:"Get details of a specific webset by its ID"},"websets.delete":{riskLevel:"destructive",description:"Delete a webset [DESTRUCTIVE]"},"imports.create":{riskLevel:"write",description:"Create a new import to upload data into a webset"},"imports.list":{riskLevel:"read",description:"List all imports for a webset"},"imports.delete":{riskLevel:"destructive",description:"Delete an existing import [DESTRUCTIVE]"},"monitors.create":{riskLevel:"write",description:"Create a new monitor to watch a webset for changes"},"events.list":{riskLevel:"read",description:"List all events that have occurred for a webset"},"events.get":{riskLevel:"read",description:"Get details of a specific webset event by its ID"},"webhooksApi.list":{riskLevel:"read",description:"List all webhooks configured for websets"}},Mo={api_key:{account:["one"]}};function zo(t={}){let s={...t,authType:t.authType??Et};return{id:"exa",schema:ce,options:s,hooks:s.hooks,webhookHooks:s.webhookHooks,endpoints:mt,webhooks:ht,endpointMeta:wt,endpointSchemas:bt,webhookSchemas:yt,pluginWebhookMatcher:o=>"x-exa-signature"in o.headers,errorHandlers:{...se,...s.errorHandlers},keyBuilder:async(o,n)=>{let a=o.authType;if(n==="webhook"&&s.webhookSecret)return s.webhookSecret;if(n==="webhook"){let p=await o.keys.get_webhook_signature();if(!p)throw new Error("[auth-missing:exa:webhook_signature]: Exa webhook signature is missing");return p}if(n==="endpoint"&&s.key)return s.key;if(o.authType==="api_key"){let p=await o.keys.get_api_key();if(!p)throw new Error("[auth-missing:exa:api_key]: Exa API Key is missing");return p}throw new Error(`[auth-missing:exa:${a}]: Exa key is missing`)}}}export{m as createExaEventMatch,zo as exa,Mo as exaAuthConfig,bt as exaEndpointSchemas};
@@ -105,13 +105,13 @@ export declare const ExaEvent: z.ZodObject<{
105
105
  websetId: z.ZodOptional<z.ZodString>;
106
106
  createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
107
107
  }, "strip", z.ZodTypeAny, {
108
- id: string;
109
108
  type: string;
109
+ id: string;
110
110
  createdAt?: Date | null | undefined;
111
111
  websetId?: string | undefined;
112
112
  }, {
113
- id: string;
114
113
  type: string;
114
+ id: string;
115
115
  createdAt?: Date | null | undefined;
116
116
  websetId?: string | undefined;
117
117
  }>;
@@ -107,13 +107,13 @@ export declare const ExaSchema: {
107
107
  websetId: import("zod").ZodOptional<import("zod").ZodString>;
108
108
  createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
109
109
  }, "strip", import("zod").ZodTypeAny, {
110
- id: string;
111
110
  type: string;
111
+ id: string;
112
112
  createdAt?: Date | null | undefined;
113
113
  websetId?: string | undefined;
114
114
  }, {
115
- id: string;
116
115
  type: string;
116
+ id: string;
117
117
  createdAt?: Date | null | undefined;
118
118
  websetId?: string | undefined;
119
119
  }>;
@@ -1,3 +1,3 @@
1
- import type { ExaWebhooks } from '..';
1
+ import type { ExaWebhooks } from '../index';
2
2
  export declare const contentIndexed: ExaWebhooks['contentIndexed'];
3
3
  //# sourceMappingURL=content-indexed.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"content-indexed.d.ts","sourceRoot":"","sources":["../../webhooks/content-indexed.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AAGtC,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,gBAAgB,CAqDxD,CAAC"}
1
+ {"version":3,"file":"content-indexed.d.ts","sourceRoot":"","sources":["../../webhooks/content-indexed.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,gBAAgB,CAqDxD,CAAC"}
@@ -2,9 +2,8 @@ export declare const SearchWebhooks: {
2
2
  searchAlert: {
3
3
  match: import("corsair/core").CorsairWebhookMatcher;
4
4
  handler: import("corsair/core").CorsairWebhookHandler<import("..").ExaContext, {
5
- id: string;
6
- created_at: string;
7
5
  type: "search.alert";
6
+ id: string;
8
7
  data: {
9
8
  query: string;
10
9
  results: {
@@ -19,10 +18,10 @@ export declare const SearchWebhooks: {
19
18
  score?: number | undefined;
20
19
  }[];
21
20
  };
22
- }, {
23
- id: string;
24
21
  created_at: string;
22
+ }, {
25
23
  type: "search.alert";
24
+ id: string;
26
25
  data: {
27
26
  query: string;
28
27
  results: {
@@ -37,6 +36,7 @@ export declare const SearchWebhooks: {
37
36
  score?: number | undefined;
38
37
  }[];
39
38
  };
39
+ created_at: string;
40
40
  }>;
41
41
  };
42
42
  };
@@ -44,25 +44,25 @@ export declare const ContentWebhooks: {
44
44
  contentIndexed: {
45
45
  match: import("corsair/core").CorsairWebhookMatcher;
46
46
  handler: import("corsair/core").CorsairWebhookHandler<import("..").ExaContext, {
47
- id: string;
48
- created_at: string;
49
47
  type: "content.indexed";
48
+ id: string;
50
49
  data: {
51
50
  url: string;
52
51
  title?: string | null | undefined;
53
52
  publishedDate?: string | null | undefined;
54
53
  author?: string | null | undefined;
55
54
  };
56
- }, {
57
- id: string;
58
55
  created_at: string;
56
+ }, {
59
57
  type: "content.indexed";
58
+ id: string;
60
59
  data: {
61
60
  url: string;
62
61
  title?: string | null | undefined;
63
62
  publishedDate?: string | null | undefined;
64
63
  author?: string | null | undefined;
65
64
  };
65
+ created_at: string;
66
66
  }>;
67
67
  };
68
68
  };
@@ -70,14 +70,13 @@ export declare const WebsetWebhooks: {
70
70
  websetItemsFound: {
71
71
  match: import("corsair/core").CorsairWebhookMatcher;
72
72
  handler: import("corsair/core").CorsairWebhookHandler<import("..").ExaContext, {
73
- id: string;
74
- created_at: string;
75
73
  type: "webset.items_found";
74
+ id: string;
76
75
  data: {
77
76
  webset: {
78
77
  object: "webset";
79
- id: string;
80
78
  status: "idle" | "running" | "paused" | "done";
79
+ id: string;
81
80
  createdAt: string;
82
81
  updatedAt: string;
83
82
  externalId?: string | undefined;
@@ -95,15 +94,15 @@ export declare const WebsetWebhooks: {
95
94
  }[];
96
95
  itemCount?: number | undefined;
97
96
  };
98
- }, {
99
- id: string;
100
97
  created_at: string;
98
+ }, {
101
99
  type: "webset.items_found";
100
+ id: string;
102
101
  data: {
103
102
  webset: {
104
103
  object: "webset";
105
- id: string;
106
104
  status: "idle" | "running" | "paused" | "done";
105
+ id: string;
107
106
  createdAt: string;
108
107
  updatedAt: string;
109
108
  externalId?: string | undefined;
@@ -121,40 +120,41 @@ export declare const WebsetWebhooks: {
121
120
  }[];
122
121
  itemCount?: number | undefined;
123
122
  };
123
+ created_at: string;
124
124
  }>;
125
125
  };
126
126
  websetSearchCompleted: {
127
127
  match: import("corsair/core").CorsairWebhookMatcher;
128
128
  handler: import("corsair/core").CorsairWebhookHandler<import("..").ExaContext, {
129
- id: string;
130
- created_at: string;
131
129
  type: "webset.search.completed";
130
+ id: string;
132
131
  data: {
133
132
  webset: {
134
133
  object: "webset";
135
- id: string;
136
134
  status: "idle" | "running" | "paused" | "done";
135
+ id: string;
137
136
  createdAt: string;
138
137
  updatedAt: string;
139
138
  externalId?: string | undefined;
140
139
  };
141
140
  totalItems?: number | undefined;
142
141
  };
143
- }, {
144
- id: string;
145
142
  created_at: string;
143
+ }, {
146
144
  type: "webset.search.completed";
145
+ id: string;
147
146
  data: {
148
147
  webset: {
149
148
  object: "webset";
150
- id: string;
151
149
  status: "idle" | "running" | "paused" | "done";
150
+ id: string;
152
151
  createdAt: string;
153
152
  updatedAt: string;
154
153
  externalId?: string | undefined;
155
154
  };
156
155
  totalItems?: number | undefined;
157
156
  };
157
+ created_at: string;
158
158
  }>;
159
159
  };
160
160
  };
@@ -1,3 +1,3 @@
1
- import type { ExaWebhooks } from '..';
1
+ import type { ExaWebhooks } from '../index';
2
2
  export declare const searchAlert: ExaWebhooks['searchAlert'];
3
3
  //# sourceMappingURL=search-alert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-alert.d.ts","sourceRoot":"","sources":["../../webhooks/search-alert.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AAGtC,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,aAAa,CAmDlD,CAAC"}
1
+ {"version":3,"file":"search-alert.d.ts","sourceRoot":"","sources":["../../webhooks/search-alert.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,aAAa,CAmDlD,CAAC"}