@pdfvector/util 0.0.31 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.tsc/lib/api-source.d.ts +1 -1
- package/.tsc/lib/api-source.d.ts.map +1 -1
- package/.tsc/lib/api-source.js +1 -0
- package/.tsc/lib/contract/gateway/index.d.ts +7 -0
- package/.tsc/lib/contract/gateway/index.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/index.js +3 -0
- package/.tsc/lib/contract/gateway/mcp-account.d.ts +64 -0
- package/.tsc/lib/contract/gateway/mcp-account.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/mcp-account.js +38 -0
- package/.tsc/lib/contract/gateway/router/admin/billing.d.ts +50 -0
- package/.tsc/lib/contract/gateway/router/admin/billing.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/billing.js +51 -0
- package/.tsc/lib/contract/gateway/router/admin/blog.d.ts +38 -0
- package/.tsc/lib/contract/gateway/router/admin/blog.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/blog.js +36 -0
- package/.tsc/lib/contract/gateway/router/admin/feedback.d.ts +48 -0
- package/.tsc/lib/contract/gateway/router/admin/feedback.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/feedback.js +52 -0
- package/.tsc/lib/contract/gateway/router/admin/instances.d.ts +8 -0
- package/.tsc/lib/contract/gateway/router/admin/instances.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/instances.js +8 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/free.d.ts +108 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/free.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/free.js +86 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/index.d.ts +4 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/index.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/index.js +3 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/overview.d.ts +105 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/overview.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/overview.js +65 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/records.d.ts +72 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/records.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/usage/records.js +55 -0
- package/.tsc/lib/contract/gateway/router/admin/users.d.ts +93 -0
- package/.tsc/lib/contract/gateway/router/admin/users.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin/users.js +101 -0
- package/.tsc/lib/contract/gateway/router/admin.d.ts +7 -0
- package/.tsc/lib/contract/gateway/router/admin.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/admin.js +6 -0
- package/.tsc/lib/contract/gateway/router/billing.d.ts +17 -0
- package/.tsc/lib/contract/gateway/router/billing.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/billing.js +20 -0
- package/.tsc/lib/contract/gateway/router/blog.d.ts +35 -0
- package/.tsc/lib/contract/gateway/router/blog.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/blog.js +29 -0
- package/.tsc/lib/contract/gateway/router/feedback.d.ts +14 -0
- package/.tsc/lib/contract/gateway/router/feedback.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/feedback.js +15 -0
- package/.tsc/lib/contract/gateway/router/free-feedback.d.ts +19 -0
- package/.tsc/lib/contract/gateway/router/free-feedback.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/free-feedback.js +10 -0
- package/.tsc/lib/contract/gateway/router/greeting.d.ts +7 -0
- package/.tsc/lib/contract/gateway/router/greeting.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/greeting.js +11 -0
- package/.tsc/lib/contract/gateway/router/health.d.ts +5 -0
- package/.tsc/lib/contract/gateway/router/health.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/health.js +6 -0
- package/.tsc/lib/contract/gateway/router/index.d.ts +10 -0
- package/.tsc/lib/contract/gateway/router/index.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/index.js +9 -0
- package/.tsc/lib/contract/gateway/router/instance/api-keys.d.ts +30 -0
- package/.tsc/lib/contract/gateway/router/instance/api-keys.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/instance/api-keys.js +20 -0
- package/.tsc/lib/contract/gateway/router/instance/instances.d.ts +40 -0
- package/.tsc/lib/contract/gateway/router/instance/instances.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/instance/instances.js +24 -0
- package/.tsc/lib/contract/gateway/router/instance/proxy.d.ts +50 -0
- package/.tsc/lib/contract/gateway/router/instance/proxy.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/instance/proxy.js +55 -0
- package/.tsc/lib/contract/gateway/router/instance/usage.d.ts +205 -0
- package/.tsc/lib/contract/gateway/router/instance/usage.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/instance/usage.js +92 -0
- package/.tsc/lib/contract/gateway/router/instance.d.ts +5 -0
- package/.tsc/lib/contract/gateway/router/instance.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/instance.js +4 -0
- package/.tsc/lib/contract/gateway/router/workspace.d.ts +31 -0
- package/.tsc/lib/contract/gateway/router/workspace.d.ts.map +1 -0
- package/.tsc/lib/contract/gateway/router/workspace.js +30 -0
- package/.tsc/lib/contract/instance/fetchable-url-schema.d.ts +3 -0
- package/.tsc/lib/contract/instance/fetchable-url-schema.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/fetchable-url-schema.js +5 -0
- package/.tsc/lib/contract/instance/index.d.ts +12 -0
- package/.tsc/lib/contract/instance/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/index.js +7 -0
- package/.tsc/lib/contract/instance/json-schema-input.d.ts +3 -0
- package/.tsc/lib/contract/instance/json-schema-input.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/json-schema-input.js +23 -0
- package/.tsc/lib/contract/instance/page-markdown-schema.d.ts +6 -0
- package/.tsc/lib/contract/instance/page-markdown-schema.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/page-markdown-schema.js +9 -0
- package/.tsc/lib/contract/instance/pdfvector-model-schema.d.ts +8 -0
- package/.tsc/lib/contract/instance/pdfvector-model-schema.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/pdfvector-model-schema.js +4 -0
- package/.tsc/lib/contract/instance/pdfvector-model.d.ts +4 -0
- package/.tsc/lib/contract/instance/pdfvector-model.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/pdfvector-model.js +0 -0
- package/.tsc/lib/contract/instance/router/academic/fetch.d.ts +69 -0
- package/.tsc/lib/contract/instance/router/academic/fetch.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/fetch.js +119 -0
- package/.tsc/lib/contract/instance/router/academic/find-citations.d.ts +70 -0
- package/.tsc/lib/contract/instance/router/academic/find-citations.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/find-citations.js +116 -0
- package/.tsc/lib/contract/instance/router/academic/index.d.ts +8 -0
- package/.tsc/lib/contract/instance/router/academic/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/index.js +7 -0
- package/.tsc/lib/contract/instance/router/academic/paper-graph.d.ts +113 -0
- package/.tsc/lib/contract/instance/router/academic/paper-graph.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/paper-graph.js +144 -0
- package/.tsc/lib/contract/instance/router/academic/parse.d.ts +50 -0
- package/.tsc/lib/contract/instance/router/academic/parse.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/parse.js +146 -0
- package/.tsc/lib/contract/instance/router/academic/provider.d.ts +18 -0
- package/.tsc/lib/contract/instance/router/academic/provider.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/provider.js +16 -0
- package/.tsc/lib/contract/instance/router/academic/search-grants.d.ts +84 -0
- package/.tsc/lib/contract/instance/router/academic/search-grants.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/search-grants.js +171 -0
- package/.tsc/lib/contract/instance/router/academic/search.d.ts +83 -0
- package/.tsc/lib/contract/instance/router/academic/search.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/search.js +154 -0
- package/.tsc/lib/contract/instance/router/academic/similar-papers.d.ts +89 -0
- package/.tsc/lib/contract/instance/router/academic/similar-papers.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/academic/similar-papers.js +143 -0
- package/.tsc/lib/contract/instance/router/admin/get-environment.d.ts +5 -0
- package/.tsc/lib/contract/instance/router/admin/get-environment.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/get-environment.js +13 -0
- package/.tsc/lib/contract/instance/router/admin/get-free-usage-records.d.ts +44 -0
- package/.tsc/lib/contract/instance/router/admin/get-free-usage-records.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/get-free-usage-records.js +39 -0
- package/.tsc/lib/contract/instance/router/admin/get-provider-usage-records.d.ts +41 -0
- package/.tsc/lib/contract/instance/router/admin/get-provider-usage-records.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/get-provider-usage-records.js +50 -0
- package/.tsc/lib/contract/instance/router/admin/get-usage-records.d.ts +49 -0
- package/.tsc/lib/contract/instance/router/admin/get-usage-records.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/get-usage-records.js +44 -0
- package/.tsc/lib/contract/instance/router/admin/health-check.d.ts +5 -0
- package/.tsc/lib/contract/instance/router/admin/health-check.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/health-check.js +14 -0
- package/.tsc/lib/contract/instance/router/admin/index.d.ts +9 -0
- package/.tsc/lib/contract/instance/router/admin/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/index.js +8 -0
- package/.tsc/lib/contract/instance/router/admin/set-domain.d.ts +7 -0
- package/.tsc/lib/contract/instance/router/admin/set-domain.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/set-domain.js +20 -0
- package/.tsc/lib/contract/instance/router/admin/set-environment.d.ts +7 -0
- package/.tsc/lib/contract/instance/router/admin/set-environment.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/set-environment.js +41 -0
- package/.tsc/lib/contract/instance/router/admin/set-version.d.ts +7 -0
- package/.tsc/lib/contract/instance/router/admin/set-version.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/admin/set-version.js +21 -0
- package/.tsc/lib/contract/instance/router/authenticate/index.d.ts +2 -0
- package/.tsc/lib/contract/instance/router/authenticate/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/authenticate/index.js +1 -0
- package/.tsc/lib/contract/instance/router/authenticate/validate-credential.d.ts +7 -0
- package/.tsc/lib/contract/instance/router/authenticate/validate-credential.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/authenticate/validate-credential.js +20 -0
- package/.tsc/lib/contract/instance/router/bankStatement/ask.d.ts +32 -0
- package/.tsc/lib/contract/instance/router/bankStatement/ask.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/bankStatement/ask.js +88 -0
- package/.tsc/lib/contract/instance/router/bankStatement/extract.d.ts +33 -0
- package/.tsc/lib/contract/instance/router/bankStatement/extract.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/bankStatement/extract.js +113 -0
- package/.tsc/lib/contract/instance/router/bankStatement/get-default-spec.d.ts +2 -0
- package/.tsc/lib/contract/instance/router/bankStatement/get-default-spec.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/bankStatement/get-default-spec.js +19 -0
- package/.tsc/lib/contract/instance/router/bankStatement/index.d.ts +4 -0
- package/.tsc/lib/contract/instance/router/bankStatement/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/bankStatement/index.js +3 -0
- package/.tsc/lib/contract/instance/router/bankStatement/parse.d.ts +28 -0
- package/.tsc/lib/contract/instance/router/bankStatement/parse.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/bankStatement/parse.js +105 -0
- package/.tsc/lib/contract/instance/router/document/ask.d.ts +32 -0
- package/.tsc/lib/contract/instance/router/document/ask.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/document/ask.js +134 -0
- package/.tsc/lib/contract/instance/router/document/extract.d.ts +33 -0
- package/.tsc/lib/contract/instance/router/document/extract.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/document/extract.js +152 -0
- package/.tsc/lib/contract/instance/router/document/get-default-spec.d.ts +2 -0
- package/.tsc/lib/contract/instance/router/document/get-default-spec.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/document/get-default-spec.js +19 -0
- package/.tsc/lib/contract/instance/router/document/index.d.ts +4 -0
- package/.tsc/lib/contract/instance/router/document/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/document/index.js +3 -0
- package/.tsc/lib/contract/instance/router/document/parse.d.ts +40 -0
- package/.tsc/lib/contract/instance/router/document/parse.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/document/parse.js +142 -0
- package/.tsc/lib/contract/instance/router/free/bank-statement-parse.d.ts +16 -0
- package/.tsc/lib/contract/instance/router/free/bank-statement-parse.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/free/bank-statement-parse.js +87 -0
- package/.tsc/lib/contract/instance/router/free/generate-schema.d.ts +8 -0
- package/.tsc/lib/contract/instance/router/free/generate-schema.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/free/generate-schema.js +110 -0
- package/.tsc/lib/contract/instance/router/free/index.d.ts +5 -0
- package/.tsc/lib/contract/instance/router/free/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/free/index.js +4 -0
- package/.tsc/lib/contract/instance/router/free/publication-pdf-url.d.ts +12 -0
- package/.tsc/lib/contract/instance/router/free/publication-pdf-url.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/free/publication-pdf-url.js +86 -0
- package/.tsc/lib/contract/instance/router/free/rate-limit-status.d.ts +19 -0
- package/.tsc/lib/contract/instance/router/free/rate-limit-status.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/free/rate-limit-status.js +36 -0
- package/.tsc/lib/contract/instance/router/identity/ask.d.ts +32 -0
- package/.tsc/lib/contract/instance/router/identity/ask.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/identity/ask.js +95 -0
- package/.tsc/lib/contract/instance/router/identity/extract.d.ts +33 -0
- package/.tsc/lib/contract/instance/router/identity/extract.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/identity/extract.js +103 -0
- package/.tsc/lib/contract/instance/router/identity/get-default-spec.d.ts +2 -0
- package/.tsc/lib/contract/instance/router/identity/get-default-spec.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/identity/get-default-spec.js +19 -0
- package/.tsc/lib/contract/instance/router/identity/index.d.ts +4 -0
- package/.tsc/lib/contract/instance/router/identity/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/identity/index.js +3 -0
- package/.tsc/lib/contract/instance/router/identity/parse.d.ts +29 -0
- package/.tsc/lib/contract/instance/router/identity/parse.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/identity/parse.js +109 -0
- package/.tsc/lib/contract/instance/router/index.d.ts +9 -0
- package/.tsc/lib/contract/instance/router/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/index.js +8 -0
- package/.tsc/lib/contract/instance/router/invoice/ask.d.ts +32 -0
- package/.tsc/lib/contract/instance/router/invoice/ask.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/invoice/ask.js +85 -0
- package/.tsc/lib/contract/instance/router/invoice/extract.d.ts +33 -0
- package/.tsc/lib/contract/instance/router/invoice/extract.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/invoice/extract.js +109 -0
- package/.tsc/lib/contract/instance/router/invoice/get-default-spec.d.ts +2 -0
- package/.tsc/lib/contract/instance/router/invoice/get-default-spec.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/invoice/get-default-spec.js +19 -0
- package/.tsc/lib/contract/instance/router/invoice/index.d.ts +4 -0
- package/.tsc/lib/contract/instance/router/invoice/index.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/invoice/index.js +3 -0
- package/.tsc/lib/contract/instance/router/invoice/parse.d.ts +28 -0
- package/.tsc/lib/contract/instance/router/invoice/parse.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/router/invoice/parse.js +100 -0
- package/.tsc/lib/contract/instance/supported-mimes.d.ts +35 -0
- package/.tsc/lib/contract/instance/supported-mimes.d.ts.map +1 -0
- package/.tsc/lib/contract/instance/supported-mimes.js +130 -0
- package/.tsc/lib/date.d.ts.map +1 -1
- package/.tsc/lib/date.js +3 -5
- package/CHANGELOG.md +18 -0
- package/package.json +14 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instance.d.ts","sourceRoot":"","sources":["../../../../../lib/contract/gateway/router/instance.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as z from "zod";
|
|
2
|
+
export declare const sync: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodOptional<z.ZodObject<{
|
|
3
|
+
disableCache: z.ZodOptional<z.ZodBoolean>;
|
|
4
|
+
}, z.core.$strip>>, z.ZodObject<{
|
|
5
|
+
aggregatedCredits: z.ZodNumber;
|
|
6
|
+
usedCredits: z.ZodNumber;
|
|
7
|
+
changedPlans: z.ZodArray<z.ZodObject<{
|
|
8
|
+
key: z.ZodString;
|
|
9
|
+
time: z.ZodNumber;
|
|
10
|
+
credits: z.ZodNumber;
|
|
11
|
+
}, z.core.$strip>>;
|
|
12
|
+
currentPlan: z.ZodObject<{
|
|
13
|
+
key: z.ZodString;
|
|
14
|
+
annual: z.ZodBoolean;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
planSchedule: z.ZodOptional<z.ZodObject<{
|
|
17
|
+
plan: z.ZodObject<{
|
|
18
|
+
key: z.ZodString;
|
|
19
|
+
annual: z.ZodBoolean;
|
|
20
|
+
}, z.core.$strip>;
|
|
21
|
+
date: z.ZodDate;
|
|
22
|
+
}, z.core.$strip>>;
|
|
23
|
+
planValidity: z.ZodBoolean;
|
|
24
|
+
onboardedAt: z.ZodOptional<z.ZodDate>;
|
|
25
|
+
}, z.core.$strip>, Record<never, never>, Record<never, never>>;
|
|
26
|
+
export declare const onboard: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
|
|
27
|
+
referralSource: z.ZodString;
|
|
28
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
29
|
+
onboardedAt: z.ZodDate;
|
|
30
|
+
}, z.core.$strip>, Record<never, never>, Record<never, never>>;
|
|
31
|
+
//# sourceMappingURL=workspace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../../../../lib/contract/gateway/router/workspace.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AASzB,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;8DAuBf,CAAC;AAEH,eAAO,MAAM,OAAO;;;;8DAEyB,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { oc } from "@orpc/contract";
|
|
2
|
+
import * as z from "zod";
|
|
3
|
+
const planKeySchema = z.string();
|
|
4
|
+
const planSchema = z.object({
|
|
5
|
+
key: planKeySchema,
|
|
6
|
+
annual: z.boolean(),
|
|
7
|
+
});
|
|
8
|
+
export const sync = oc
|
|
9
|
+
.input(z.object({ disableCache: z.boolean().optional() }).optional())
|
|
10
|
+
.output(z.object({
|
|
11
|
+
aggregatedCredits: z.number(),
|
|
12
|
+
usedCredits: z.number(),
|
|
13
|
+
changedPlans: z.array(z.object({
|
|
14
|
+
key: planKeySchema,
|
|
15
|
+
time: z.number(),
|
|
16
|
+
credits: z.number(),
|
|
17
|
+
})),
|
|
18
|
+
currentPlan: planSchema,
|
|
19
|
+
planSchedule: z
|
|
20
|
+
.object({
|
|
21
|
+
plan: planSchema,
|
|
22
|
+
date: z.date(),
|
|
23
|
+
})
|
|
24
|
+
.optional(),
|
|
25
|
+
planValidity: z.boolean(),
|
|
26
|
+
onboardedAt: z.date().optional(),
|
|
27
|
+
}));
|
|
28
|
+
export const onboard = oc
|
|
29
|
+
.input(z.object({ referralSource: z.string() }))
|
|
30
|
+
.output(z.object({ onboardedAt: z.date() }));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchable-url-schema.d.ts","sourceRoot":"","sources":["../../../../lib/contract/instance/fetchable-url-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB,UAG7B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { InferContractRouterInputs, InferContractRouterOutputs } from "@orpc/contract";
|
|
2
|
+
import * as contract from "./router/index.js";
|
|
3
|
+
export { contract };
|
|
4
|
+
export type ContractInputs = InferContractRouterInputs<typeof contract>;
|
|
5
|
+
export type ContractOutputs = InferContractRouterOutputs<typeof contract>;
|
|
6
|
+
import { createORPCClient, ORPCError, onError } from "@orpc/client";
|
|
7
|
+
import { RPCLink } from "@orpc/client/fetch";
|
|
8
|
+
export type { ContractRouterClient } from "@orpc/contract";
|
|
9
|
+
export * from "./pdfvector-model.js";
|
|
10
|
+
export * from "./pdfvector-model-schema.js";
|
|
11
|
+
export { createORPCClient, ORPCError, onError, RPCLink };
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/contract/instance/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,yBAAyB,EACzB,0BAA0B,EAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,MAAM,MAAM,cAAc,GAAG,yBAAyB,CAAC,OAAO,QAAQ,CAAC,CAAC;AACxE,MAAM,MAAM,eAAe,GAAG,0BAA0B,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE1E,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,YAAY,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as contract from "./router/index.js";
|
|
2
|
+
export { contract };
|
|
3
|
+
import { createORPCClient, ORPCError, onError } from "@orpc/client";
|
|
4
|
+
import { RPCLink } from "@orpc/client/fetch";
|
|
5
|
+
export * from "./pdfvector-model.js";
|
|
6
|
+
export * from "./pdfvector-model-schema.js";
|
|
7
|
+
export { createORPCClient, ORPCError, onError, RPCLink };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const jsonSchemaInput: z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodUnknown>, z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<unknown, string>>, z.ZodRecord<z.ZodString, z.ZodUnknown>>]>;
|
|
3
|
+
//# sourceMappingURL=json-schema-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-schema-input.d.ts","sourceRoot":"","sources":["../../../../lib/contract/instance/json-schema-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,eAAe,2KAkB1B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
const schemaObject = z.record(z.string(), z.unknown(), {
|
|
3
|
+
error: "Schema must be a JSON object",
|
|
4
|
+
});
|
|
5
|
+
export const jsonSchemaInput = z.union([
|
|
6
|
+
schemaObject,
|
|
7
|
+
z
|
|
8
|
+
.string()
|
|
9
|
+
.transform((str, ctx) => {
|
|
10
|
+
try {
|
|
11
|
+
const trimmed = str.startsWith('"') && str.endsWith('"') ? str.slice(1, -1) : str;
|
|
12
|
+
return JSON.parse(trimmed);
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
ctx.addIssue({
|
|
16
|
+
code: "custom",
|
|
17
|
+
message: "Invalid JSON string for schema",
|
|
18
|
+
});
|
|
19
|
+
return z.NEVER;
|
|
20
|
+
}
|
|
21
|
+
})
|
|
22
|
+
.pipe(schemaObject),
|
|
23
|
+
]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-markdown-schema.d.ts","sourceRoot":"","sources":["../../../../lib/contract/instance/page-markdown-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB;;;iBAO7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pdfvector-model-schema.d.ts","sourceRoot":"","sources":["../../../../lib/contract/instance/pdfvector-model-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,oBAAoB;;;;;EAE/B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pdfvector-model.d.ts","sourceRoot":"","sources":["../../../../lib/contract/instance/pdfvector-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|
|
File without changes
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const fetch: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
|
|
3
|
+
ids: z.ZodArray<z.ZodString>;
|
|
4
|
+
fields: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodEnum<{
|
|
5
|
+
abstract: "abstract";
|
|
6
|
+
authors: "authors";
|
|
7
|
+
date: "date";
|
|
8
|
+
doi: "doi";
|
|
9
|
+
pdfURL: "pdfURL";
|
|
10
|
+
provider: "provider";
|
|
11
|
+
providerData: "providerData";
|
|
12
|
+
providerURL: "providerURL";
|
|
13
|
+
title: "title";
|
|
14
|
+
totalCitations: "totalCitations";
|
|
15
|
+
totalReferences: "totalReferences";
|
|
16
|
+
url: "url";
|
|
17
|
+
year: "year";
|
|
18
|
+
}>>>>;
|
|
19
|
+
callback: z.ZodOptional<z.ZodObject<{
|
|
20
|
+
url: z.ZodURL;
|
|
21
|
+
type: z.ZodOptional<z.ZodString>;
|
|
22
|
+
}, z.core.$strip>>;
|
|
23
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
24
|
+
results: z.ZodArray<z.ZodObject<{
|
|
25
|
+
id: z.ZodString;
|
|
26
|
+
detectedProvider: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
27
|
+
arxiv: "arxiv";
|
|
28
|
+
crossref: "crossref";
|
|
29
|
+
eric: "eric";
|
|
30
|
+
"europe-pmc": "europe-pmc";
|
|
31
|
+
"google-scholar": "google-scholar";
|
|
32
|
+
openalex: "openalex";
|
|
33
|
+
pubmed: "pubmed";
|
|
34
|
+
"semantic-scholar": "semantic-scholar";
|
|
35
|
+
}>>>;
|
|
36
|
+
doi: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
37
|
+
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
38
|
+
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
39
|
+
providerURL: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
40
|
+
authors: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
41
|
+
name: z.ZodString;
|
|
42
|
+
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
43
|
+
}, z.core.$strip>>>>;
|
|
44
|
+
date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
45
|
+
year: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
46
|
+
totalCitations: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
47
|
+
totalReferences: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
48
|
+
abstract: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
49
|
+
pdfURL: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
50
|
+
provider: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
51
|
+
arxiv: "arxiv";
|
|
52
|
+
crossref: "crossref";
|
|
53
|
+
eric: "eric";
|
|
54
|
+
"europe-pmc": "europe-pmc";
|
|
55
|
+
"google-scholar": "google-scholar";
|
|
56
|
+
openalex: "openalex";
|
|
57
|
+
pubmed: "pubmed";
|
|
58
|
+
"semantic-scholar": "semantic-scholar";
|
|
59
|
+
}>>>;
|
|
60
|
+
providerData: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
61
|
+
}, z.core.$strip>>;
|
|
62
|
+
errors: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
63
|
+
id: z.ZodString;
|
|
64
|
+
error: z.ZodString;
|
|
65
|
+
code: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
66
|
+
}, z.core.$strip>>>>;
|
|
67
|
+
requestId: z.ZodNumber;
|
|
68
|
+
}, z.core.$strip>, Record<never, never>, Record<never, never>>;
|
|
69
|
+
//# sourceMappingURL=fetch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../../lib/contract/instance/router/academic/fetch.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuDxB,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8DAoFf,CAAC"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { oc } from "@orpc/contract";
|
|
2
|
+
import { getOpenApiCodeSamples } from "@pdfvector/api-docs";
|
|
3
|
+
import { academicCreditCosts } from "@pdfvector/util";
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
import { providerSchema } from "./provider.js";
|
|
6
|
+
const authorSchema = z.object({
|
|
7
|
+
name: z.string(),
|
|
8
|
+
url: z.string().nullish(),
|
|
9
|
+
});
|
|
10
|
+
const publicationSchema = z.object({
|
|
11
|
+
id: z.string().describe("Original input identifier"),
|
|
12
|
+
detectedProvider: providerSchema
|
|
13
|
+
.nullish()
|
|
14
|
+
.describe("Provider that returned this result"),
|
|
15
|
+
doi: z.string().nullish(),
|
|
16
|
+
title: z.string().nullish(),
|
|
17
|
+
url: z.string().nullish(),
|
|
18
|
+
providerURL: z.string().nullish(),
|
|
19
|
+
authors: z.array(authorSchema).nullish(),
|
|
20
|
+
date: z.string().nullish(),
|
|
21
|
+
year: z.number().nullish(),
|
|
22
|
+
totalCitations: z.number().nullish(),
|
|
23
|
+
totalReferences: z.number().nullish(),
|
|
24
|
+
abstract: z.string().nullish(),
|
|
25
|
+
pdfURL: z.string().nullish(),
|
|
26
|
+
provider: providerSchema.nullish(),
|
|
27
|
+
providerData: z.record(z.string(), z.unknown()).nullish(),
|
|
28
|
+
});
|
|
29
|
+
const fetchErrorSchema = z.object({
|
|
30
|
+
id: z.string(),
|
|
31
|
+
error: z.string(),
|
|
32
|
+
code: z.string().nullish(),
|
|
33
|
+
});
|
|
34
|
+
const requestExamples = {
|
|
35
|
+
"Fetch by DOI": {
|
|
36
|
+
summary: "Fetch a paper by DOI",
|
|
37
|
+
value: {
|
|
38
|
+
ids: ["10.1038/nature12373"],
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
"Fetch multiple IDs": {
|
|
42
|
+
summary: "Fetch papers by mixed identifier types",
|
|
43
|
+
value: {
|
|
44
|
+
ids: ["10.1038/nature12373", "2301.08745", "33293753"],
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
"Fetch ArXiv paper": {
|
|
48
|
+
summary: "Fetch by ArXiv ID",
|
|
49
|
+
value: {
|
|
50
|
+
ids: ["2303.08774"],
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
export const fetch = oc
|
|
55
|
+
.input(z.object({
|
|
56
|
+
ids: z
|
|
57
|
+
.array(z.string({ message: "Each ID must be a string" }), {
|
|
58
|
+
message: "ids is required and must be an array of strings",
|
|
59
|
+
})
|
|
60
|
+
.min(1, "ids must contain at least 1 identifier")
|
|
61
|
+
.max(100, "ids must contain at most 100 identifiers")
|
|
62
|
+
.describe("Publication identifiers to fetch. Supports DOI, PubMed ID, ArXiv ID, Semantic Scholar ID, ERIC ID, Europe PMC ID, OpenAlex ID."),
|
|
63
|
+
fields: z
|
|
64
|
+
.array(z.enum([
|
|
65
|
+
"doi",
|
|
66
|
+
"title",
|
|
67
|
+
"url",
|
|
68
|
+
"providerURL",
|
|
69
|
+
"authors",
|
|
70
|
+
"date",
|
|
71
|
+
"year",
|
|
72
|
+
"totalCitations",
|
|
73
|
+
"totalReferences",
|
|
74
|
+
"abstract",
|
|
75
|
+
"pdfURL",
|
|
76
|
+
"provider",
|
|
77
|
+
"providerData",
|
|
78
|
+
]), {
|
|
79
|
+
message: "fields must be an array of valid publication field names",
|
|
80
|
+
})
|
|
81
|
+
.nullish()
|
|
82
|
+
.describe("Specific publication fields to return. If omitted, returns all fields except providerData."),
|
|
83
|
+
callback: z
|
|
84
|
+
.object({
|
|
85
|
+
url: z
|
|
86
|
+
.url()
|
|
87
|
+
.describe("Webhook URL where results will be POSTed when processing completes"),
|
|
88
|
+
type: z
|
|
89
|
+
.string()
|
|
90
|
+
.optional()
|
|
91
|
+
.describe("Callback type identifier (e.g. 'zapier')"),
|
|
92
|
+
})
|
|
93
|
+
.optional()
|
|
94
|
+
.describe("Optional webhook callback for async processing. " +
|
|
95
|
+
"When provided, the server returns 202 immediately and POSTs the full response payload to the callback URL when processing completes. " +
|
|
96
|
+
"On error, the callback receives a POST with X-Pdfvector-Callback-Failed: true header and error details in the body. " +
|
|
97
|
+
"Useful for long-running operations that may exceed client timeout limits."),
|
|
98
|
+
}))
|
|
99
|
+
.output(z.object({
|
|
100
|
+
results: z.array(publicationSchema),
|
|
101
|
+
errors: z.array(fetchErrorSchema).nullish(),
|
|
102
|
+
requestId: z.number().int(),
|
|
103
|
+
}))
|
|
104
|
+
.route({
|
|
105
|
+
summary: "Fetch academic papers by ID",
|
|
106
|
+
description: `Fetch specific academic publications by their unique identifiers with automatic provider detection and batch processing. Costs ${academicCreditCosts.academicFetch} credits per request.`,
|
|
107
|
+
tags: ["Academic"],
|
|
108
|
+
spec: (op) => {
|
|
109
|
+
op.security = [{ bearerAuth: [] }];
|
|
110
|
+
const reqBody = op.requestBody;
|
|
111
|
+
if (reqBody?.content) {
|
|
112
|
+
for (const mediaType of Object.values(reqBody.content)) {
|
|
113
|
+
mediaType["examples"] = requestExamples;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
op["x-codeSamples"] = getOpenApiCodeSamples("academic-fetch");
|
|
117
|
+
return op;
|
|
118
|
+
},
|
|
119
|
+
});
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const findCitations: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
|
|
3
|
+
paragraph: z.ZodString;
|
|
4
|
+
providers: z.ZodDefault<z.ZodArray<z.ZodEnum<{
|
|
5
|
+
arxiv: "arxiv";
|
|
6
|
+
crossref: "crossref";
|
|
7
|
+
eric: "eric";
|
|
8
|
+
"europe-pmc": "europe-pmc";
|
|
9
|
+
"google-scholar": "google-scholar";
|
|
10
|
+
openalex: "openalex";
|
|
11
|
+
pubmed: "pubmed";
|
|
12
|
+
"semantic-scholar": "semantic-scholar";
|
|
13
|
+
}>>>;
|
|
14
|
+
fields: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodEnum<{
|
|
15
|
+
abstract: "abstract";
|
|
16
|
+
authors: "authors";
|
|
17
|
+
date: "date";
|
|
18
|
+
doi: "doi";
|
|
19
|
+
pdfURL: "pdfURL";
|
|
20
|
+
provider: "provider";
|
|
21
|
+
providerData: "providerData";
|
|
22
|
+
providerURL: "providerURL";
|
|
23
|
+
title: "title";
|
|
24
|
+
totalCitations: "totalCitations";
|
|
25
|
+
totalReferences: "totalReferences";
|
|
26
|
+
url: "url";
|
|
27
|
+
year: "year";
|
|
28
|
+
}>>>>;
|
|
29
|
+
callback: z.ZodOptional<z.ZodObject<{
|
|
30
|
+
url: z.ZodURL;
|
|
31
|
+
type: z.ZodOptional<z.ZodString>;
|
|
32
|
+
}, z.core.$strip>>;
|
|
33
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
34
|
+
results: z.ZodArray<z.ZodObject<{
|
|
35
|
+
sentence: z.ZodString;
|
|
36
|
+
citations: z.ZodArray<z.ZodObject<{
|
|
37
|
+
score: z.ZodNumber;
|
|
38
|
+
doi: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
39
|
+
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
40
|
+
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
41
|
+
providerURL: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
42
|
+
authors: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
|
|
43
|
+
name: z.ZodString;
|
|
44
|
+
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
45
|
+
}, z.core.$strip>>>>;
|
|
46
|
+
date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
47
|
+
year: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
48
|
+
totalCitations: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
49
|
+
totalReferences: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
50
|
+
abstract: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
51
|
+
pdfURL: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
52
|
+
provider: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
53
|
+
arxiv: "arxiv";
|
|
54
|
+
crossref: "crossref";
|
|
55
|
+
eric: "eric";
|
|
56
|
+
"europe-pmc": "europe-pmc";
|
|
57
|
+
"google-scholar": "google-scholar";
|
|
58
|
+
openalex: "openalex";
|
|
59
|
+
pubmed: "pubmed";
|
|
60
|
+
"semantic-scholar": "semantic-scholar";
|
|
61
|
+
}>>>;
|
|
62
|
+
providerData: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
63
|
+
}, z.core.$strip>>;
|
|
64
|
+
}, z.core.$strip>>;
|
|
65
|
+
sentenceCount: z.ZodNumber;
|
|
66
|
+
totalCitations: z.ZodNumber;
|
|
67
|
+
errors: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
|
|
68
|
+
requestId: z.ZodNumber;
|
|
69
|
+
}, z.core.$strip>, Record<never, never>, Record<never, never>>;
|
|
70
|
+
//# sourceMappingURL=find-citations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find-citations.d.ts","sourceRoot":"","sources":["../../../../../../lib/contract/instance/router/academic/find-citations.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgDxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8DAwFvB,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { oc } from "@orpc/contract";
|
|
2
|
+
import { getOpenApiCodeSamples } from "@pdfvector/api-docs";
|
|
3
|
+
import { academicCreditCosts } from "@pdfvector/util";
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
import { providerSchema } from "./provider.js";
|
|
6
|
+
const authorSchema = z.object({
|
|
7
|
+
name: z.string(),
|
|
8
|
+
url: z.string().nullish(),
|
|
9
|
+
});
|
|
10
|
+
const scoredPublicationSchema = z.object({
|
|
11
|
+
score: z.number().describe("Relevance score (0-10)"),
|
|
12
|
+
doi: z.string().nullish(),
|
|
13
|
+
title: z.string().nullish(),
|
|
14
|
+
url: z.string().nullish(),
|
|
15
|
+
providerURL: z.string().nullish(),
|
|
16
|
+
authors: z.array(authorSchema).nullish(),
|
|
17
|
+
date: z.string().nullish(),
|
|
18
|
+
year: z.number().nullish(),
|
|
19
|
+
totalCitations: z.number().nullish(),
|
|
20
|
+
totalReferences: z.number().nullish(),
|
|
21
|
+
abstract: z.string().nullish(),
|
|
22
|
+
pdfURL: z.string().nullish(),
|
|
23
|
+
provider: providerSchema.nullish(),
|
|
24
|
+
providerData: z.record(z.string(), z.unknown()).nullish(),
|
|
25
|
+
});
|
|
26
|
+
const sentenceCitationSchema = z.object({
|
|
27
|
+
sentence: z.string(),
|
|
28
|
+
citations: z.array(scoredPublicationSchema),
|
|
29
|
+
});
|
|
30
|
+
const requestExamples = {
|
|
31
|
+
"Find citations for a paragraph": {
|
|
32
|
+
summary: "Find citations for a research paragraph",
|
|
33
|
+
value: {
|
|
34
|
+
paragraph: "Deep learning has revolutionized computer vision and natural language processing. Transformer architectures have become the dominant approach for sequence modeling tasks. Recent large language models demonstrate emergent capabilities not seen in smaller models.",
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
"Find citations with multiple providers": {
|
|
38
|
+
summary: "Search across multiple databases",
|
|
39
|
+
value: {
|
|
40
|
+
paragraph: "CRISPR-Cas9 gene editing technology has transformed molecular biology. The ability to precisely modify DNA sequences has opened new avenues for treating genetic diseases.",
|
|
41
|
+
providers: ["semantic-scholar", "pubmed"],
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
export const findCitations = oc
|
|
46
|
+
.input(z.object({
|
|
47
|
+
paragraph: z
|
|
48
|
+
.string({ message: "paragraph is required and must be a string" })
|
|
49
|
+
.min(1, "paragraph must not be empty")
|
|
50
|
+
.max(5000, "paragraph must be at most 5000 characters")
|
|
51
|
+
.describe("Text paragraph to find relevant academic citations for"),
|
|
52
|
+
providers: z
|
|
53
|
+
.array(providerSchema, {
|
|
54
|
+
message: "providers must be an array of valid provider names",
|
|
55
|
+
})
|
|
56
|
+
.default(["semantic-scholar"])
|
|
57
|
+
.describe("Academic databases to search for citations"),
|
|
58
|
+
fields: z
|
|
59
|
+
.array(z.enum([
|
|
60
|
+
"doi",
|
|
61
|
+
"title",
|
|
62
|
+
"url",
|
|
63
|
+
"providerURL",
|
|
64
|
+
"authors",
|
|
65
|
+
"date",
|
|
66
|
+
"year",
|
|
67
|
+
"totalCitations",
|
|
68
|
+
"totalReferences",
|
|
69
|
+
"abstract",
|
|
70
|
+
"pdfURL",
|
|
71
|
+
"provider",
|
|
72
|
+
"providerData",
|
|
73
|
+
]), {
|
|
74
|
+
message: "fields must be an array of valid publication field names",
|
|
75
|
+
})
|
|
76
|
+
.nullish()
|
|
77
|
+
.describe("Specific citation fields to return. If omitted, returns all fields except providerData."),
|
|
78
|
+
callback: z
|
|
79
|
+
.object({
|
|
80
|
+
url: z
|
|
81
|
+
.url()
|
|
82
|
+
.describe("Webhook URL where results will be POSTed when processing completes"),
|
|
83
|
+
type: z
|
|
84
|
+
.string()
|
|
85
|
+
.optional()
|
|
86
|
+
.describe("Callback type identifier (e.g. 'zapier')"),
|
|
87
|
+
})
|
|
88
|
+
.optional()
|
|
89
|
+
.describe("Optional webhook callback for async processing. " +
|
|
90
|
+
"When provided, the server returns 202 immediately and POSTs the full response payload to the callback URL when processing completes. " +
|
|
91
|
+
"On error, the callback receives a POST with X-Pdfvector-Callback-Failed: true header and error details in the body. " +
|
|
92
|
+
"Useful for long-running operations that may exceed client timeout limits."),
|
|
93
|
+
}))
|
|
94
|
+
.output(z.object({
|
|
95
|
+
results: z.array(sentenceCitationSchema),
|
|
96
|
+
sentenceCount: z.number().int(),
|
|
97
|
+
totalCitations: z.number().int(),
|
|
98
|
+
errors: z.array(z.string()).nullish(),
|
|
99
|
+
requestId: z.number().int(),
|
|
100
|
+
}))
|
|
101
|
+
.route({
|
|
102
|
+
summary: "Find citations for a paragraph",
|
|
103
|
+
description: `Find relevant academic citations for a paragraph by splitting it into sentences and scoring papers using semantic embedding similarity. Costs ${academicCreditCosts.academicFindCitationsPerSentence} credits per sentence.`,
|
|
104
|
+
tags: ["Academic"],
|
|
105
|
+
spec: (op) => {
|
|
106
|
+
op.security = [{ bearerAuth: [] }];
|
|
107
|
+
const reqBody = op.requestBody;
|
|
108
|
+
if (reqBody?.content) {
|
|
109
|
+
for (const mediaType of Object.values(reqBody.content)) {
|
|
110
|
+
mediaType["examples"] = requestExamples;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
op["x-codeSamples"] = getOpenApiCodeSamples("academic-find-citations");
|
|
114
|
+
return op;
|
|
115
|
+
},
|
|
116
|
+
});
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./fetch.js";
|
|
2
|
+
export * from "./find-citations.js";
|
|
3
|
+
export * from "./paper-graph.js";
|
|
4
|
+
export * from "./parse.js";
|
|
5
|
+
export * from "./search.js";
|
|
6
|
+
export * from "./search-grants.js";
|
|
7
|
+
export * from "./similar-papers.js";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../lib/contract/instance/router/academic/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
|