@voyant-travel/finance 0.119.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +192 -0
- package/dist/action-ledger-drift.d.ts +29 -0
- package/dist/action-ledger-drift.d.ts.map +1 -0
- package/dist/action-ledger-drift.js +166 -0
- package/dist/booking-tax.d.ts +124 -0
- package/dist/booking-tax.d.ts.map +1 -0
- package/dist/booking-tax.js +264 -0
- package/dist/checkout-routes.d.ts +1154 -0
- package/dist/checkout-routes.d.ts.map +1 -0
- package/dist/checkout-routes.js +116 -0
- package/dist/checkout-service-plan.d.ts +137 -0
- package/dist/checkout-service-plan.d.ts.map +1 -0
- package/dist/checkout-service-plan.js +119 -0
- package/dist/checkout-service.d.ts +9 -0
- package/dist/checkout-service.d.ts.map +1 -0
- package/dist/checkout-service.js +324 -0
- package/dist/checkout-validation.d.ts +1682 -0
- package/dist/checkout-validation.d.ts.map +1 -0
- package/dist/checkout-validation.js +228 -0
- package/dist/document-download.d.ts +3 -0
- package/dist/document-download.d.ts.map +1 -0
- package/dist/document-download.js +1 -0
- package/dist/fx-money.d.ts +17 -0
- package/dist/fx-money.d.ts.map +1 -0
- package/dist/fx-money.js +194 -0
- package/dist/index.d.ts +65 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +108 -0
- package/dist/invoice-fx.d.ts +134 -0
- package/dist/invoice-fx.d.ts.map +1 -0
- package/dist/invoice-fx.js +240 -0
- package/dist/invoice-number-errors.d.ts +2 -0
- package/dist/invoice-number-errors.d.ts.map +1 -0
- package/dist/invoice-number-errors.js +58 -0
- package/dist/markets-ref.d.ts +149 -0
- package/dist/markets-ref.d.ts.map +1 -0
- package/dist/markets-ref.js +17 -0
- package/dist/payment-link.d.ts +23 -0
- package/dist/payment-link.d.ts.map +1 -0
- package/dist/payment-link.js +30 -0
- package/dist/payment-policy.d.ts +113 -0
- package/dist/payment-policy.d.ts.map +1 -0
- package/dist/payment-policy.js +193 -0
- package/dist/route-runtime.d.ts +22 -0
- package/dist/route-runtime.d.ts.map +1 -0
- package/dist/route-runtime.js +18 -0
- package/dist/routes-action-ledger.d.ts +181 -0
- package/dist/routes-action-ledger.d.ts.map +1 -0
- package/dist/routes-action-ledger.js +142 -0
- package/dist/routes-booking-billing.d.ts +852 -0
- package/dist/routes-booking-billing.d.ts.map +1 -0
- package/dist/routes-booking-billing.js +223 -0
- package/dist/routes-booking-create.d.ts +3 -0
- package/dist/routes-booking-create.d.ts.map +1 -0
- package/dist/routes-booking-create.js +194 -0
- package/dist/routes-booking-reads.d.ts +46 -0
- package/dist/routes-booking-reads.d.ts.map +1 -0
- package/dist/routes-booking-reads.js +20 -0
- package/dist/routes-documents.d.ts +195 -0
- package/dist/routes-documents.d.ts.map +1 -0
- package/dist/routes-documents.js +93 -0
- package/dist/routes-invoice-core.d.ts +794 -0
- package/dist/routes-invoice-core.d.ts.map +1 -0
- package/dist/routes-invoice-core.js +238 -0
- package/dist/routes-invoice-documents.d.ts +401 -0
- package/dist/routes-invoice-documents.d.ts.map +1 -0
- package/dist/routes-invoice-documents.js +91 -0
- package/dist/routes-invoice-issue.d.ts +384 -0
- package/dist/routes-invoice-issue.d.ts.map +1 -0
- package/dist/routes-invoice-issue.js +208 -0
- package/dist/routes-payment-processing.d.ts +1193 -0
- package/dist/routes-payment-processing.d.ts.map +1 -0
- package/dist/routes-payment-processing.js +238 -0
- package/dist/routes-payments.d.ts +309 -0
- package/dist/routes-payments.d.ts.map +1 -0
- package/dist/routes-payments.js +94 -0
- package/dist/routes-public.d.ts +1948 -0
- package/dist/routes-public.d.ts.map +1 -0
- package/dist/routes-public.js +275 -0
- package/dist/routes-reference-data.d.ts +977 -0
- package/dist/routes-reference-data.d.ts.map +1 -0
- package/dist/routes-reference-data.js +191 -0
- package/dist/routes-reports.d.ts +344 -0
- package/dist/routes-reports.d.ts.map +1 -0
- package/dist/routes-reports.js +93 -0
- package/dist/routes-runtime.d.ts +71 -0
- package/dist/routes-runtime.d.ts.map +1 -0
- package/dist/routes-runtime.js +59 -0
- package/dist/routes-settlement.d.ts +67 -0
- package/dist/routes-settlement.d.ts.map +1 -0
- package/dist/routes-settlement.js +23 -0
- package/dist/routes-shared.d.ts +35 -0
- package/dist/routes-shared.d.ts.map +1 -0
- package/dist/routes-shared.js +10 -0
- package/dist/routes-supplier-invoices.d.ts +778 -0
- package/dist/routes-supplier-invoices.d.ts.map +1 -0
- package/dist/routes-supplier-invoices.js +159 -0
- package/dist/routes-vouchers.d.ts +228 -0
- package/dist/routes-vouchers.d.ts.map +1 -0
- package/dist/routes-vouchers.js +54 -0
- package/dist/routes.d.ts +5577 -0
- package/dist/routes.d.ts.map +1 -0
- package/dist/routes.js +44 -0
- package/dist/schema/booking-billing.d.ts +1006 -0
- package/dist/schema/booking-billing.d.ts.map +1 -0
- package/dist/schema/booking-billing.js +106 -0
- package/dist/schema/enums.d.ts +48 -0
- package/dist/schema/enums.d.ts.map +1 -0
- package/dist/schema/enums.js +237 -0
- package/dist/schema/invoice-documents.d.ts +1245 -0
- package/dist/schema/invoice-documents.d.ts.map +1 -0
- package/dist/schema/invoice-documents.js +140 -0
- package/dist/schema/payment-instruments.d.ts +418 -0
- package/dist/schema/payment-instruments.d.ts.map +1 -0
- package/dist/schema/payment-instruments.js +45 -0
- package/dist/schema/payment-processing.d.ts +563 -0
- package/dist/schema/payment-processing.d.ts.map +1 -0
- package/dist/schema/payment-processing.js +65 -0
- package/dist/schema/payment-sessions.d.ts +728 -0
- package/dist/schema/payment-sessions.d.ts.map +1 -0
- package/dist/schema/payment-sessions.js +79 -0
- package/dist/schema/receivables.d.ts +1474 -0
- package/dist/schema/receivables.d.ts.map +1 -0
- package/dist/schema/receivables.js +179 -0
- package/dist/schema/relations.d.ts +82 -0
- package/dist/schema/relations.d.ts.map +1 -0
- package/dist/schema/relations.js +144 -0
- package/dist/schema/supplier-invoices.d.ts +1619 -0
- package/dist/schema/supplier-invoices.d.ts.map +1 -0
- package/dist/schema/supplier-invoices.js +228 -0
- package/dist/schema/tax.d.ts +712 -0
- package/dist/schema/tax.d.ts.map +1 -0
- package/dist/schema/tax.js +98 -0
- package/dist/schema/vouchers.d.ts +444 -0
- package/dist/schema/vouchers.d.ts.map +1 -0
- package/dist/schema/vouchers.js +64 -0
- package/dist/schema.d.ts +12 -0
- package/dist/schema.d.ts.map +1 -0
- package/dist/schema.js +11 -0
- package/dist/service-accountant-shares.d.ts +106 -0
- package/dist/service-accountant-shares.d.ts.map +1 -0
- package/dist/service-accountant-shares.js +331 -0
- package/dist/service-action-ledger-accounting.d.ts +104 -0
- package/dist/service-action-ledger-accounting.d.ts.map +1 -0
- package/dist/service-action-ledger-accounting.js +386 -0
- package/dist/service-action-ledger-booking-payments.d.ts +48 -0
- package/dist/service-action-ledger-booking-payments.d.ts.map +1 -0
- package/dist/service-action-ledger-booking-payments.js +178 -0
- package/dist/service-action-ledger-bookings.d.ts +44 -0
- package/dist/service-action-ledger-bookings.d.ts.map +1 -0
- package/dist/service-action-ledger-bookings.js +81 -0
- package/dist/service-action-ledger-payment-authorizations.d.ts +48 -0
- package/dist/service-action-ledger-payment-authorizations.d.ts.map +1 -0
- package/dist/service-action-ledger-payment-authorizations.js +209 -0
- package/dist/service-action-ledger-payment-sessions.d.ts +83 -0
- package/dist/service-action-ledger-payment-sessions.d.ts.map +1 -0
- package/dist/service-action-ledger-payment-sessions.js +294 -0
- package/dist/service-action-ledger-supplier-invoices.d.ts +27 -0
- package/dist/service-action-ledger-supplier-invoices.d.ts.map +1 -0
- package/dist/service-action-ledger-supplier-invoices.js +111 -0
- package/dist/service-action-ledger-supplier-payments.d.ts +21 -0
- package/dist/service-action-ledger-supplier-payments.d.ts.map +1 -0
- package/dist/service-action-ledger-supplier-payments.js +97 -0
- package/dist/service-action-ledger.d.ts +7 -0
- package/dist/service-action-ledger.d.ts.map +1 -0
- package/dist/service-action-ledger.js +6 -0
- package/dist/service-aggregates.d.ts +96 -0
- package/dist/service-aggregates.d.ts.map +1 -0
- package/dist/service-aggregates.js +294 -0
- package/dist/service-booking-billing.d.ts +2322 -0
- package/dist/service-booking-billing.d.ts.map +1 -0
- package/dist/service-booking-billing.js +8 -0
- package/dist/service-booking-create.d.ts +410 -0
- package/dist/service-booking-create.d.ts.map +1 -0
- package/dist/service-booking-create.js +1256 -0
- package/dist/service-booking-guarantees.d.ts +725 -0
- package/dist/service-booking-guarantees.d.ts.map +1 -0
- package/dist/service-booking-guarantees.js +153 -0
- package/dist/service-booking-item-billing.d.ts +1062 -0
- package/dist/service-booking-item-billing.d.ts.map +1 -0
- package/dist/service-booking-item-billing.js +77 -0
- package/dist/service-booking-payment-schedules.d.ts +557 -0
- package/dist/service-booking-payment-schedules.d.ts.map +1 -0
- package/dist/service-booking-payment-schedules.js +372 -0
- package/dist/service-bookings-dual-create.d.ts +308 -0
- package/dist/service-bookings-dual-create.d.ts.map +1 -0
- package/dist/service-bookings-dual-create.js +131 -0
- package/dist/service-boundary-sql.d.ts +6 -0
- package/dist/service-boundary-sql.d.ts.map +1 -0
- package/dist/service-boundary-sql.js +15 -0
- package/dist/service-cost-categories.d.ts +26 -0
- package/dist/service-cost-categories.d.ts.map +1 -0
- package/dist/service-cost-categories.js +76 -0
- package/dist/service-documents.d.ts +80 -0
- package/dist/service-documents.d.ts.map +1 -0
- package/dist/service-documents.js +228 -0
- package/dist/service-invoice-artifacts.d.ts +246 -0
- package/dist/service-invoice-artifacts.d.ts.map +1 -0
- package/dist/service-invoice-artifacts.js +277 -0
- package/dist/service-invoice-core.d.ts +405 -0
- package/dist/service-invoice-core.d.ts.map +1 -0
- package/dist/service-invoice-core.js +290 -0
- package/dist/service-invoice-credit-notes.d.ts +973 -0
- package/dist/service-invoice-credit-notes.d.ts.map +1 -0
- package/dist/service-invoice-credit-notes.js +142 -0
- package/dist/service-invoice-from-booking.d.ts +41 -0
- package/dist/service-invoice-from-booking.d.ts.map +1 -0
- package/dist/service-invoice-from-booking.js +267 -0
- package/dist/service-invoice-line-items.d.ts +432 -0
- package/dist/service-invoice-line-items.d.ts.map +1 -0
- package/dist/service-invoice-line-items.js +102 -0
- package/dist/service-invoice-numbering.d.ts +227 -0
- package/dist/service-invoice-numbering.d.ts.map +1 -0
- package/dist/service-invoice-numbering.js +260 -0
- package/dist/service-invoice-payments.d.ts +673 -0
- package/dist/service-invoice-payments.d.ts.map +1 -0
- package/dist/service-invoice-payments.js +398 -0
- package/dist/service-invoices.d.ts +2501 -0
- package/dist/service-invoices.d.ts.map +1 -0
- package/dist/service-invoices.js +12 -0
- package/dist/service-issue.d.ts +207 -0
- package/dist/service-issue.d.ts.map +1 -0
- package/dist/service-issue.js +431 -0
- package/dist/service-payment-authorizations.d.ts +164 -0
- package/dist/service-payment-authorizations.d.ts.map +1 -0
- package/dist/service-payment-authorizations.js +227 -0
- package/dist/service-payment-instruments.d.ts +116 -0
- package/dist/service-payment-instruments.d.ts.map +1 -0
- package/dist/service-payment-instruments.js +99 -0
- package/dist/service-payment-processing.d.ts +676 -0
- package/dist/service-payment-processing.d.ts.map +1 -0
- package/dist/service-payment-processing.js +10 -0
- package/dist/service-payment-session-completion.d.ts +48 -0
- package/dist/service-payment-session-completion.d.ts.map +1 -0
- package/dist/service-payment-session-completion.js +238 -0
- package/dist/service-payment-sessions.d.ts +361 -0
- package/dist/service-payment-sessions.d.ts.map +1 -0
- package/dist/service-payment-sessions.js +280 -0
- package/dist/service-profitability.d.ts +114 -0
- package/dist/service-profitability.d.ts.map +1 -0
- package/dist/service-profitability.js +794 -0
- package/dist/service-public.d.ts +553 -0
- package/dist/service-public.d.ts.map +1 -0
- package/dist/service-public.js +583 -0
- package/dist/service-reference-data.d.ts +272 -0
- package/dist/service-reference-data.d.ts.map +1 -0
- package/dist/service-reference-data.js +280 -0
- package/dist/service-rendition-wait.d.ts +38 -0
- package/dist/service-rendition-wait.d.ts.map +1 -0
- package/dist/service-rendition-wait.js +67 -0
- package/dist/service-reports.d.ts +37 -0
- package/dist/service-reports.d.ts.map +1 -0
- package/dist/service-reports.js +62 -0
- package/dist/service-settlement.d.ts +46 -0
- package/dist/service-settlement.d.ts.map +1 -0
- package/dist/service-settlement.js +185 -0
- package/dist/service-shared.d.ts +541 -0
- package/dist/service-shared.d.ts.map +1 -0
- package/dist/service-shared.js +764 -0
- package/dist/service-supplier-invoices.d.ts +871 -0
- package/dist/service-supplier-invoices.d.ts.map +1 -0
- package/dist/service-supplier-invoices.js +744 -0
- package/dist/service-supplier-payments.d.ts +69 -0
- package/dist/service-supplier-payments.d.ts.map +1 -0
- package/dist/service-supplier-payments.js +136 -0
- package/dist/service-vouchers-migration.d.ts +44 -0
- package/dist/service-vouchers-migration.d.ts.map +1 -0
- package/dist/service-vouchers-migration.js +148 -0
- package/dist/service-vouchers.d.ts +157 -0
- package/dist/service-vouchers.d.ts.map +1 -0
- package/dist/service-vouchers.js +191 -0
- package/dist/service.d.ts +6490 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +29 -0
- package/dist/validation-billing.d.ts +2 -0
- package/dist/validation-billing.d.ts.map +1 -0
- package/dist/validation-billing.js +1 -0
- package/dist/validation-payments.d.ts +2 -0
- package/dist/validation-payments.d.ts.map +1 -0
- package/dist/validation-payments.js +1 -0
- package/dist/validation-public.d.ts +2 -0
- package/dist/validation-public.d.ts.map +1 -0
- package/dist/validation-public.js +1 -0
- package/dist/validation-shared.d.ts +2 -0
- package/dist/validation-shared.d.ts.map +1 -0
- package/dist/validation-shared.js +1 -0
- package/dist/validation-vouchers.d.ts +2 -0
- package/dist/validation-vouchers.d.ts.map +1 -0
- package/dist/validation-vouchers.js +1 -0
- package/dist/validation.d.ts +2 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/validation.js +1 -0
- package/package.json +121 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { Context } from "hono";
|
|
2
|
+
import { type FinanceRouteRuntime } from "./route-runtime.js";
|
|
3
|
+
import type { Env } from "./routes-shared.js";
|
|
4
|
+
import type { InvoiceRenditionWaitMode } from "./service-rendition-wait.js";
|
|
5
|
+
export declare function csvDownload(csv: string, filename: string): Response;
|
|
6
|
+
export declare const routeIdempotencyKey: (scope: string, options?: {
|
|
7
|
+
fingerprintSearchParams?: readonly string[];
|
|
8
|
+
}) => import("hono").MiddlewareHandler<{
|
|
9
|
+
Bindings: Partial<{
|
|
10
|
+
VOYANT_CHECKOUT_CAPABILITY_SECRET: string;
|
|
11
|
+
CHECKOUT_CAPABILITY_SECRET: string;
|
|
12
|
+
VOYANT_CHECKOUT_CAPABILITY_TTL_SECONDS: string;
|
|
13
|
+
CHECKOUT_CAPABILITY_TTL_SECONDS: string;
|
|
14
|
+
SESSION_CLAIMS_SECRET: string;
|
|
15
|
+
BETTER_AUTH_SECRET: string;
|
|
16
|
+
}>;
|
|
17
|
+
Variables: {
|
|
18
|
+
db: import("drizzle-orm/postgres-js").PostgresJsDatabase;
|
|
19
|
+
userId?: string;
|
|
20
|
+
agentId?: string;
|
|
21
|
+
workflowPrincipalId?: string;
|
|
22
|
+
principalSubtype?: string;
|
|
23
|
+
sessionId?: string;
|
|
24
|
+
organizationId?: string | null;
|
|
25
|
+
callerType?: "session" | "api_key" | "internal" | "agent" | "workflow";
|
|
26
|
+
actor?: string;
|
|
27
|
+
apiTokenId?: string;
|
|
28
|
+
apiKeyId?: string;
|
|
29
|
+
workflowRunId?: string;
|
|
30
|
+
workflowStepId?: string;
|
|
31
|
+
isInternalRequest?: boolean;
|
|
32
|
+
container?: import("@voyant-travel/core").ModuleContainer;
|
|
33
|
+
};
|
|
34
|
+
}>;
|
|
35
|
+
export declare function resolveWaitRequest(body: {
|
|
36
|
+
wait?: InvoiceRenditionWaitMode;
|
|
37
|
+
waitTimeoutMs?: number | undefined;
|
|
38
|
+
}, query: {
|
|
39
|
+
wait?: InvoiceRenditionWaitMode;
|
|
40
|
+
waitTimeoutMs?: number | undefined;
|
|
41
|
+
}): {
|
|
42
|
+
mode: InvoiceRenditionWaitMode;
|
|
43
|
+
timeoutMs: number;
|
|
44
|
+
};
|
|
45
|
+
export declare function buildInlineDownload(c: Context<Env>, reference: {
|
|
46
|
+
storageKey?: string | null;
|
|
47
|
+
metadata?: unknown;
|
|
48
|
+
}): Promise<import("@voyant-travel/hono").DocumentDownloadResolution>;
|
|
49
|
+
export declare function getFinanceRouteRuntime(c: {
|
|
50
|
+
var: {
|
|
51
|
+
container?: {
|
|
52
|
+
resolve: <T>(key: string) => T;
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
}): FinanceRouteRuntime | undefined;
|
|
56
|
+
export declare function getActionLedgerRequestContext(c: Context<Env>): {
|
|
57
|
+
userId: string | null;
|
|
58
|
+
agentId: string | null;
|
|
59
|
+
workflowPrincipalId: string | null;
|
|
60
|
+
principalSubtype: string | null;
|
|
61
|
+
sessionId: string | null;
|
|
62
|
+
apiTokenId: string | null;
|
|
63
|
+
callerType: "internal" | "session" | "agent" | "api_key" | "workflow" | null;
|
|
64
|
+
actor: string | null;
|
|
65
|
+
isInternalRequest: boolean;
|
|
66
|
+
organizationId: string | null;
|
|
67
|
+
workflowRunId: string | null;
|
|
68
|
+
workflowStepId: string | null;
|
|
69
|
+
correlationId: string | null;
|
|
70
|
+
} | undefined;
|
|
71
|
+
//# sourceMappingURL=routes-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes-runtime.d.ts","sourceRoot":"","sources":["../src/routes-runtime.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAGnC,OAAO,EAAuC,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAClG,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAA;AAI3E,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAOnE;AAED,eAAO,MAAM,mBAAmB,GAC9B,OAAO,MAAM,EACb,UAAS;IAAE,uBAAuB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAO;;;;;;;;;;;;;;;;;;;;;;;;;;EACc,CAAA;AAE7E,wBAAgB,kBAAkB,CAChC,IAAI,EAAE;IAAE,IAAI,CAAC,EAAE,wBAAwB,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,EAC7E,KAAK,EAAE;IAAE,IAAI,CAAC,EAAE,wBAAwB,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;EAM/E;AAED,wBAAsB,mBAAmB,CACvC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EACf,SAAS,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,qEAO9D;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE;IACxC,GAAG,EAAE;QAAE,SAAS,CAAC,EAAE;YAAE,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC,CAAA;SAAE,CAAA;KAAE,CAAA;CACxD,mCAMA;AAED,wBAAgB,6BAA6B,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;cA4B5D"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { idempotencyKey } from "@voyant-travel/hono";
|
|
2
|
+
import { resolveStoredDocumentDownload } from "./document-download.js";
|
|
3
|
+
import { FINANCE_ROUTE_RUNTIME_CONTAINER_KEY } from "./route-runtime.js";
|
|
4
|
+
const DEFAULT_RENDITION_WAIT_TIMEOUT_MS = 30_000;
|
|
5
|
+
export function csvDownload(csv, filename) {
|
|
6
|
+
return new Response(csv, {
|
|
7
|
+
headers: {
|
|
8
|
+
"Content-Type": "text/csv; charset=utf-8",
|
|
9
|
+
"Content-Disposition": `attachment; filename="${filename}"`,
|
|
10
|
+
},
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
export const routeIdempotencyKey = (scope, options = {}) => idempotencyKey({ scope, ...options });
|
|
14
|
+
export function resolveWaitRequest(body, query) {
|
|
15
|
+
return {
|
|
16
|
+
mode: query.wait ?? body.wait ?? "none",
|
|
17
|
+
timeoutMs: query.waitTimeoutMs ?? body.waitTimeoutMs ?? DEFAULT_RENDITION_WAIT_TIMEOUT_MS,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export async function buildInlineDownload(c, reference) {
|
|
21
|
+
const runtime = getFinanceRouteRuntime(c);
|
|
22
|
+
return resolveStoredDocumentDownload(reference, {
|
|
23
|
+
bindings: c.env,
|
|
24
|
+
resolveDocumentDownloadUrl: runtime?.resolveDocumentDownloadUrl,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
export function getFinanceRouteRuntime(c) {
|
|
28
|
+
try {
|
|
29
|
+
return c.var.container?.resolve(FINANCE_ROUTE_RUNTIME_CONTAINER_KEY);
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return undefined;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export function getActionLedgerRequestContext(c) {
|
|
36
|
+
const context = {
|
|
37
|
+
userId: c.get("userId") ?? null,
|
|
38
|
+
agentId: c.get("agentId") ?? null,
|
|
39
|
+
workflowPrincipalId: c.get("workflowPrincipalId") ?? null,
|
|
40
|
+
principalSubtype: c.get("principalSubtype") ?? null,
|
|
41
|
+
sessionId: c.get("sessionId") ?? null,
|
|
42
|
+
apiTokenId: c.get("apiTokenId") ?? c.get("apiKeyId") ?? null,
|
|
43
|
+
callerType: c.get("callerType") ?? null,
|
|
44
|
+
actor: c.get("actor") ?? null,
|
|
45
|
+
isInternalRequest: c.get("isInternalRequest") ?? false,
|
|
46
|
+
organizationId: c.get("organizationId") ?? null,
|
|
47
|
+
workflowRunId: c.get("workflowRunId") ?? null,
|
|
48
|
+
workflowStepId: c.get("workflowStepId") ?? null,
|
|
49
|
+
correlationId: c.req.header("x-correlation-id") ?? c.req.header("x-request-id") ?? null,
|
|
50
|
+
};
|
|
51
|
+
if (context.userId ||
|
|
52
|
+
context.agentId ||
|
|
53
|
+
context.workflowPrincipalId ||
|
|
54
|
+
context.apiTokenId ||
|
|
55
|
+
context.isInternalRequest) {
|
|
56
|
+
return context;
|
|
57
|
+
}
|
|
58
|
+
return undefined;
|
|
59
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { EventBus, ModuleContainer } from "@voyant-travel/core";
|
|
2
|
+
import { type InvoiceSettlementPoller } from "./service-settlement.js";
|
|
3
|
+
type Env = {
|
|
4
|
+
Bindings: Record<string, unknown>;
|
|
5
|
+
Variables: {
|
|
6
|
+
container: ModuleContainer;
|
|
7
|
+
db: import("drizzle-orm/postgres-js").PostgresJsDatabase;
|
|
8
|
+
userId?: string;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
export interface FinanceSettlementRouteOptions {
|
|
12
|
+
invoiceSettlementPollers?: Record<string, InvoiceSettlementPoller>;
|
|
13
|
+
resolveInvoiceSettlementPollers?: (bindings: Record<string, unknown>) => Record<string, InvoiceSettlementPoller> | undefined;
|
|
14
|
+
eventBus?: EventBus;
|
|
15
|
+
resolveEventBus?: (bindings: Record<string, unknown>) => EventBus | undefined;
|
|
16
|
+
}
|
|
17
|
+
export declare function createFinanceAdminSettlementRoutes(options?: FinanceSettlementRouteOptions): import("hono/hono-base").HonoBase<Env, {
|
|
18
|
+
"/invoices/:id/poll-settlement": {
|
|
19
|
+
$post: {
|
|
20
|
+
input: {
|
|
21
|
+
param: {
|
|
22
|
+
id: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
output: {
|
|
26
|
+
error: string;
|
|
27
|
+
};
|
|
28
|
+
outputFormat: "json";
|
|
29
|
+
status: 404;
|
|
30
|
+
} | {
|
|
31
|
+
input: {
|
|
32
|
+
param: {
|
|
33
|
+
id: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
output: {
|
|
37
|
+
data: {
|
|
38
|
+
invoiceId: string;
|
|
39
|
+
invoiceStatus: "void" | "paid" | "draft" | "pending_external_allocation" | "issued" | "partially_paid" | "overdue";
|
|
40
|
+
paidCents: number;
|
|
41
|
+
balanceDueCents: number;
|
|
42
|
+
results: {
|
|
43
|
+
provider: string;
|
|
44
|
+
externalRefId: string;
|
|
45
|
+
externalId: string | null;
|
|
46
|
+
externalNumber: string | null;
|
|
47
|
+
externalUrl: string | null;
|
|
48
|
+
status: string | null;
|
|
49
|
+
paidAmountCents: number | null;
|
|
50
|
+
unpaidAmountCents: number | null;
|
|
51
|
+
syncedAt: string | null;
|
|
52
|
+
settledAt: string | null;
|
|
53
|
+
createdPaymentId: string | null;
|
|
54
|
+
newlyAppliedAmountCents: number;
|
|
55
|
+
syncError: string | null;
|
|
56
|
+
}[];
|
|
57
|
+
} | {
|
|
58
|
+
status: "not_found";
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
outputFormat: "json";
|
|
62
|
+
status: import("hono/utils/http-status").ContentfulStatusCode;
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
}, "/", "/invoices/:id/poll-settlement">;
|
|
66
|
+
export type { InvoiceSettlementPoller } from "./service-settlement.js";
|
|
67
|
+
//# sourceMappingURL=routes-settlement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes-settlement.d.ts","sourceRoot":"","sources":["../src/routes-settlement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AASpE,OAAO,EAA4B,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAGhG,KAAK,GAAG,GAAG;IACT,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,SAAS,EAAE;QACT,SAAS,EAAE,eAAe,CAAA;QAC1B,EAAE,EAAE,OAAO,yBAAyB,EAAE,kBAAkB,CAAA;QACxD,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;CACF,CAAA;AAED,MAAM,WAAW,6BAA6B;IAC5C,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;IAClE,+BAA+B,CAAC,EAAE,CAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC9B,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,GAAG,SAAS,CAAA;IACxD,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,QAAQ,GAAG,SAAS,CAAA;CAC9E;AAaD,wBAAgB,kCAAkC,CAAC,OAAO,GAAE,6BAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yCAqB7F;AAED,YAAY,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { parseOptionalJsonBody } from "@voyant-travel/hono";
|
|
2
|
+
import { Hono } from "hono";
|
|
3
|
+
import { buildFinanceRouteRuntime, FINANCE_ROUTE_RUNTIME_CONTAINER_KEY, } from "./route-runtime.js";
|
|
4
|
+
import { financeSettlementService } from "./service-settlement.js";
|
|
5
|
+
import { pollInvoiceSettlementInputSchema } from "./validation.js";
|
|
6
|
+
function getRuntime(options, bindings, resolveFromContainer) {
|
|
7
|
+
return (resolveFromContainer?.(FINANCE_ROUTE_RUNTIME_CONTAINER_KEY) ??
|
|
8
|
+
buildFinanceRouteRuntime(bindings, options));
|
|
9
|
+
}
|
|
10
|
+
export function createFinanceAdminSettlementRoutes(options = {}) {
|
|
11
|
+
return new Hono().post("/invoices/:id/poll-settlement", async (c) => {
|
|
12
|
+
const runtime = getRuntime(options, c.env, (key) => c.var.container?.resolve(key));
|
|
13
|
+
const result = await financeSettlementService.pollInvoiceSettlement(c.get("db"), c.req.param("id"), await parseOptionalJsonBody(c, pollInvoiceSettlementInputSchema), {
|
|
14
|
+
bindings: c.env,
|
|
15
|
+
invoiceSettlementPollers: runtime.invoiceSettlementPollers,
|
|
16
|
+
eventBus: runtime.eventBus,
|
|
17
|
+
});
|
|
18
|
+
if ("status" in result && result.status === "not_found") {
|
|
19
|
+
return c.json({ error: "Invoice not found" }, 404);
|
|
20
|
+
}
|
|
21
|
+
return c.json({ data: result });
|
|
22
|
+
});
|
|
23
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { ModuleContainer } from "@voyant-travel/core";
|
|
2
|
+
import type { PostgresJsDatabase } from "drizzle-orm/postgres-js";
|
|
3
|
+
import type { Context } from "hono";
|
|
4
|
+
export type Env = {
|
|
5
|
+
Bindings: Partial<{
|
|
6
|
+
VOYANT_CHECKOUT_CAPABILITY_SECRET: string;
|
|
7
|
+
CHECKOUT_CAPABILITY_SECRET: string;
|
|
8
|
+
VOYANT_CHECKOUT_CAPABILITY_TTL_SECONDS: string;
|
|
9
|
+
CHECKOUT_CAPABILITY_TTL_SECONDS: string;
|
|
10
|
+
SESSION_CLAIMS_SECRET: string;
|
|
11
|
+
BETTER_AUTH_SECRET: string;
|
|
12
|
+
}>;
|
|
13
|
+
Variables: {
|
|
14
|
+
db: PostgresJsDatabase;
|
|
15
|
+
userId?: string;
|
|
16
|
+
agentId?: string;
|
|
17
|
+
workflowPrincipalId?: string;
|
|
18
|
+
principalSubtype?: string;
|
|
19
|
+
sessionId?: string;
|
|
20
|
+
organizationId?: string | null;
|
|
21
|
+
callerType?: "session" | "api_key" | "internal" | "agent" | "workflow";
|
|
22
|
+
actor?: string;
|
|
23
|
+
apiTokenId?: string;
|
|
24
|
+
apiKeyId?: string;
|
|
25
|
+
workflowRunId?: string;
|
|
26
|
+
workflowStepId?: string;
|
|
27
|
+
isInternalRequest?: boolean;
|
|
28
|
+
container?: ModuleContainer;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
export declare function getRuntimeEnv(c: Context): any;
|
|
32
|
+
export declare function notFound<T extends Env>(c: Context<T>, error: string): Response & import("hono").TypedResponse<{
|
|
33
|
+
error: string;
|
|
34
|
+
}, 404, "json">;
|
|
35
|
+
//# sourceMappingURL=routes-shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes-shared.d.ts","sourceRoot":"","sources":["../src/routes-shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,MAAM,MAAM,GAAG,GAAG;IAChB,QAAQ,EAAE,OAAO,CAAC;QAChB,iCAAiC,EAAE,MAAM,CAAA;QACzC,0BAA0B,EAAE,MAAM,CAAA;QAClC,sCAAsC,EAAE,MAAM,CAAA;QAC9C,+BAA+B,EAAE,MAAM,CAAA;QACvC,qBAAqB,EAAE,MAAM,CAAA;QAC7B,kBAAkB,EAAE,MAAM,CAAA;KAC3B,CAAC,CAAA;IACF,SAAS,EAAE;QACT,EAAE,EAAE,kBAAkB,CAAA;QACtB,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,mBAAmB,CAAC,EAAE,MAAM,CAAA;QAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QAC9B,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,GAAG,UAAU,CAAA;QACtE,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,SAAS,CAAC,EAAE,eAAe,CAAA;KAC5B,CAAA;CACF,CAAA;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,OAYvC;AAED,wBAAgB,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;;gBAEnE"}
|