hookwright 1.2.1 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/cli.js +12 -6
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -142,7 +142,7 @@ Adding one is a single file in `src/providers/` exporting `buildPayload`, `sign`
|
|
|
142
142
|
```bash
|
|
143
143
|
npm install
|
|
144
144
|
npm run dev # esbuild watch
|
|
145
|
-
npm test #
|
|
145
|
+
npm test # 190 tests, no network required
|
|
146
146
|
npm start # build + run
|
|
147
147
|
```
|
|
148
148
|
|
package/dist/cli.js
CHANGED
|
@@ -24,7 +24,7 @@ var init_package = __esm({
|
|
|
24
24
|
"package.json"() {
|
|
25
25
|
package_default = {
|
|
26
26
|
name: "hookwright",
|
|
27
|
-
version: "1.2.
|
|
27
|
+
version: "1.2.2",
|
|
28
28
|
description: "Build real, signed e-commerce webhooks from a live Shopify catalogue \u2014 interactive terminal UI, no backend",
|
|
29
29
|
keywords: [
|
|
30
30
|
"webhook",
|
|
@@ -776,6 +776,9 @@ var EVENTS = [
|
|
|
776
776
|
{ eventName: "orders/create", type: "nitro_orders_create", label: "Order Created", selection: "cart", subject: "ordered items" },
|
|
777
777
|
{ eventName: "orders/updated", type: "nitro_orders_updated", label: "Order Updated", selection: "cart", subject: "ordered items" }
|
|
778
778
|
];
|
|
779
|
+
function eventFromPayload(payload) {
|
|
780
|
+
return payload?.eventName;
|
|
781
|
+
}
|
|
779
782
|
function selectionFor(eventName) {
|
|
780
783
|
return EVENTS.find((e) => e.eventName === eventName)?.selection ?? "cart";
|
|
781
784
|
}
|
|
@@ -1061,6 +1064,7 @@ var nitro_default = {
|
|
|
1061
1064
|
editableFields: editableFields3,
|
|
1062
1065
|
editableFieldsFor,
|
|
1063
1066
|
selectionFor,
|
|
1067
|
+
eventFromPayload,
|
|
1064
1068
|
buildPayload: buildPayload3,
|
|
1065
1069
|
sign: sign3,
|
|
1066
1070
|
webhookUrl: webhookUrl3,
|
|
@@ -1773,10 +1777,11 @@ async function checkImages(payload, { timeoutMs = 1e4 } = {}) {
|
|
|
1773
1777
|
}));
|
|
1774
1778
|
}
|
|
1775
1779
|
async function runAll({ payload, body, provider, config, checkImageUrls = true, checkEndpoint = true, eventName }) {
|
|
1776
|
-
const
|
|
1780
|
+
const event = eventName ?? (provider.eventFromPayload ? provider.eventFromPayload(payload) : void 0);
|
|
1781
|
+
const checks = [checkGate(payload, provider, event), checkRoundTrip(body), checkPhone(payload), checkAllowedPhone(payload, config)];
|
|
1777
1782
|
if (checkImageUrls) checks.push(...await checkImages(payload));
|
|
1778
1783
|
if (checkEndpoint) checks.push(await checkEndpointExists(provider.webhookUrl(config)));
|
|
1779
|
-
const fields =
|
|
1784
|
+
const fields = event && provider.fieldMapFor ? provider.fieldMapFor(event) : provider.fieldMap;
|
|
1780
1785
|
const cov = coverage(payload, fields);
|
|
1781
1786
|
const missing = cov.filter((c2) => c2.status === "MISSING");
|
|
1782
1787
|
checks.push({
|
|
@@ -1918,7 +1923,8 @@ async function buildPayload4({ cfg, providerId = "cashfree-occ", items = [], dis
|
|
|
1918
1923
|
};
|
|
1919
1924
|
const file = savePayload({ provider: provider.id, payload, body, meta });
|
|
1920
1925
|
audit("payload.built", { provider: provider.id, valid: report.ok, file });
|
|
1921
|
-
|
|
1926
|
+
const record = { provider: provider.id, payload, body, meta };
|
|
1927
|
+
return { provider, payload, body, report, file, meta, summary, record };
|
|
1922
1928
|
}
|
|
1923
1929
|
|
|
1924
1930
|
// src/core/send.mjs
|
|
@@ -2356,7 +2362,7 @@ function Build({ config, providerId = "cashfree-occ", onDone }) {
|
|
|
2356
2362
|
};
|
|
2357
2363
|
const doSend = () => {
|
|
2358
2364
|
setStep(STEP.SENDING);
|
|
2359
|
-
dispatch({ cfg: config, record:
|
|
2365
|
+
dispatch({ cfg: config, record: built.record }).then((result) => {
|
|
2360
2366
|
setSendResult(result);
|
|
2361
2367
|
setStep(STEP.RESULT);
|
|
2362
2368
|
}).catch((err) => {
|
|
@@ -3586,7 +3592,7 @@ async function cmdBuild(args, config) {
|
|
|
3586
3592
|
async function cmdSend(args, config, built) {
|
|
3587
3593
|
const bad = requireConfig(config);
|
|
3588
3594
|
if (bad) return bad;
|
|
3589
|
-
let record = built
|
|
3595
|
+
let record = built?.record ?? null;
|
|
3590
3596
|
if (!record && typeof args.flags.file === "string") record = loadPayload(args.flags.file);
|
|
3591
3597
|
if (!record) record = loadLast();
|
|
3592
3598
|
if (!record) {
|