@hello-bill/node 1.0.3 → 2.0.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/dist/express/index.d.cts +2 -2
- package/dist/express/index.d.ts +2 -2
- package/dist/express/index.js +41 -6
- package/dist/express/index.js.map +1 -1
- package/dist/express/index.mjs +41 -6
- package/dist/express/index.mjs.map +1 -1
- package/dist/hono/index.d.cts +2 -2
- package/dist/hono/index.d.ts +2 -2
- package/dist/hono/index.js +40 -15
- package/dist/hono/index.js.map +1 -1
- package/dist/hono/index.mjs +40 -15
- package/dist/hono/index.mjs.map +1 -1
- package/dist/{index-BrfG82zs.d.cts → index-D81ftBQo.d.ts} +16 -4
- package/dist/{index-EXetQn1f.d.ts → index-lPvEf5hZ.d.cts} +16 -4
- package/dist/index.d.cts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +26 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +26 -6
- package/dist/index.mjs.map +1 -1
- package/dist/koa/index.d.cts +2 -2
- package/dist/koa/index.d.ts +2 -2
- package/dist/koa/index.js +40 -14
- package/dist/koa/index.js.map +1 -1
- package/dist/koa/index.mjs +40 -14
- package/dist/koa/index.mjs.map +1 -1
- package/dist/next/index.d.cts +2 -2
- package/dist/next/index.d.ts +2 -2
- package/dist/next/index.js +31 -7
- package/dist/next/index.js.map +1 -1
- package/dist/next/index.mjs +31 -7
- package/dist/next/index.mjs.map +1 -1
- package/dist/types/index.d.cts +3 -3
- package/dist/types/index.d.ts +3 -3
- package/dist/types/index.js.map +1 -1
- package/dist/types/index.mjs.map +1 -1
- package/dist/webhook/index.d.cts +2 -2
- package/dist/webhook/index.d.ts +2 -2
- package/dist/webhook/index.js +14 -2
- package/dist/webhook/index.js.map +1 -1
- package/dist/webhook/index.mjs +14 -3
- package/dist/webhook/index.mjs.map +1 -1
- package/dist/{webhooks-DPpqf7d2.d.cts → webhooks-Cv4e8oXp.d.cts} +3 -2
- package/dist/{webhooks-DPpqf7d2.d.ts → webhooks-Cv4e8oXp.d.ts} +3 -2
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -430,8 +430,16 @@ var InMemoryWebhookDedupeStore = class {
|
|
|
430
430
|
};
|
|
431
431
|
|
|
432
432
|
// src/webhook/handler.ts
|
|
433
|
+
var UnknownWebhookEventError = class extends Error {
|
|
434
|
+
code = "webhook.unknown_event_type";
|
|
435
|
+
constructor(eventType) {
|
|
436
|
+
super(`Unhandled webhook event type: ${eventType}`);
|
|
437
|
+
this.name = "UnknownWebhookEventError";
|
|
438
|
+
Object.setPrototypeOf(this, new.target.prototype);
|
|
439
|
+
}
|
|
440
|
+
};
|
|
433
441
|
function assertNever(x) {
|
|
434
|
-
throw new
|
|
442
|
+
throw new UnknownWebhookEventError(x.type ?? JSON.stringify(x));
|
|
435
443
|
}
|
|
436
444
|
var noopLogger = {
|
|
437
445
|
debug: () => {
|
|
@@ -596,7 +604,10 @@ function createWebhookHandler(opts) {
|
|
|
596
604
|
safeLogger.error("hellobill.webhook.handler_error", {
|
|
597
605
|
event_id: event.id,
|
|
598
606
|
event_type: event.type,
|
|
599
|
-
message: err.message
|
|
607
|
+
message: err.message,
|
|
608
|
+
// Include the typed error code when present so partners can identify
|
|
609
|
+
// known error classes (e.g. unknown event type) in log aggregation.
|
|
610
|
+
...err != null && typeof err === "object" && "code" in err ? { code: err.code } : {}
|
|
600
611
|
});
|
|
601
612
|
});
|
|
602
613
|
};
|
|
@@ -935,16 +946,25 @@ function createHellobillHandler(opts) {
|
|
|
935
946
|
if (!result2) return;
|
|
936
947
|
passthroughUpstream(res, result2.status, result2.body, result2.requestId, result2.headers);
|
|
937
948
|
};
|
|
938
|
-
const
|
|
949
|
+
const serviceSlots = async (req, res) => {
|
|
939
950
|
const rawSession = req.query.session_id ?? req.params?.id;
|
|
940
951
|
const sessionId = Array.isArray(rawSession) ? rawSession[0] : rawSession;
|
|
941
952
|
if (!sessionId) {
|
|
942
953
|
sendError(res, 400, "validation.missing_required_field", "session_id query parameter required");
|
|
943
954
|
return;
|
|
944
955
|
}
|
|
956
|
+
const rawService = req.query.service;
|
|
957
|
+
const service = Array.isArray(rawService) ? rawService[0] : rawService;
|
|
958
|
+
if (!service) {
|
|
959
|
+
sendError(res, 400, "validation.missing_required_field", "service query parameter required");
|
|
960
|
+
return;
|
|
961
|
+
}
|
|
962
|
+
const rawProvider = req.query.provider;
|
|
963
|
+
const providerRaw = Array.isArray(rawProvider) ? rawProvider[0] : rawProvider;
|
|
964
|
+
const provider = typeof providerRaw === "string" && providerRaw.trim().length > 0 ? providerRaw.trim() : "any_van";
|
|
945
965
|
const result2 = await safeCallUpstream(res, {
|
|
946
966
|
method: "GET",
|
|
947
|
-
path: `/partner/sessions/${encodeURIComponent(sessionId)}/
|
|
967
|
+
path: `/partner/sessions/${encodeURIComponent(sessionId)}/service-slots?service=${encodeURIComponent(service)}&provider=${encodeURIComponent(provider)}`,
|
|
948
968
|
logger
|
|
949
969
|
});
|
|
950
970
|
if (!result2) return;
|
|
@@ -961,7 +981,7 @@ function createHellobillHandler(opts) {
|
|
|
961
981
|
property,
|
|
962
982
|
sessions: { list: sessionsList, get: sessionsGet },
|
|
963
983
|
savingsSummary,
|
|
964
|
-
|
|
984
|
+
serviceSlots
|
|
965
985
|
};
|
|
966
986
|
if (webhookHandler !== void 0) {
|
|
967
987
|
result.webhook = webhookHandler;
|
|
@@ -1159,6 +1179,6 @@ function pickFields(fields, keys) {
|
|
|
1159
1179
|
return hasAny ? picked : void 0;
|
|
1160
1180
|
}
|
|
1161
1181
|
|
|
1162
|
-
export { HelloBillPartner, HellobillApiError, InMemoryTokenStorage, InMemoryWebhookDedupeStore, TokenManager, WebhookVerificationError, buildOnboardingInfo, createHellobillHandler, createWebhookHandler, defaultIdempotencyKey, retryFetch, verifyWebhook, verifyWebhookSignature };
|
|
1182
|
+
export { HelloBillPartner, HellobillApiError, InMemoryTokenStorage, InMemoryWebhookDedupeStore, TokenManager, UnknownWebhookEventError, WebhookVerificationError, buildOnboardingInfo, createHellobillHandler, createWebhookHandler, defaultIdempotencyKey, retryFetch, verifyWebhook, verifyWebhookSignature };
|
|
1163
1183
|
//# sourceMappingURL=index.mjs.map
|
|
1164
1184
|
//# sourceMappingURL=index.mjs.map
|