@cimplify/sdk 0.106.2 → 0.107.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 (64) hide show
  1. package/dist/advanced.d.mts +3 -3
  2. package/dist/advanced.d.ts +3 -3
  3. package/dist/advanced.js +22 -22
  4. package/dist/advanced.mjs +3 -3
  5. package/dist/{catalogue-CVKH9faR.d.mts → catalogue-AmW4XjaN.d.ts} +45 -38
  6. package/dist/{catalogue-ChBjPPME.d.ts → catalogue-rWd71Xi-.d.mts} +45 -38
  7. package/dist/{chunk-AVXA4F6G.js → chunk-ANT574FD.js} +29 -0
  8. package/dist/{chunk-BCLGREHS.js → chunk-CEML2737.js} +245 -219
  9. package/dist/{chunk-NYDVVNZI.mjs → chunk-JRGK3NXR.mjs} +1 -1
  10. package/dist/{chunk-NJYR6GGM.mjs → chunk-KG3WT4PR.mjs} +29 -1
  11. package/dist/{chunk-4VTFTLH7.mjs → chunk-NZMU7UUA.mjs} +3 -3
  12. package/dist/{chunk-B7JH5D3J.js → chunk-ONII7K3T.js} +262 -303
  13. package/dist/{chunk-T3MXI7JD.mjs → chunk-OTPLI3JY.mjs} +87 -128
  14. package/dist/{chunk-LJAZ7H4I.mjs → chunk-T4OU77DM.mjs} +108 -83
  15. package/dist/{chunk-7O2BBPDM.js → chunk-THSYGWUA.js} +70 -70
  16. package/dist/{chunk-NJK3THWT.js → chunk-UVRPC2P7.js} +90 -62
  17. package/dist/{chunk-UYFTOIFW.js → chunk-V32BCG7M.js} +6 -6
  18. package/dist/{chunk-L4XKIMUO.mjs → chunk-XBL3TMPC.mjs} +31 -3
  19. package/dist/{client-BfKFK7cn.d.mts → client-DlTJ2hUM.d.mts} +2 -2
  20. package/dist/{client-DoczTJbs.d.ts → client-ni-CfOSO.d.ts} +2 -2
  21. package/dist/{checkout-XoV4HNg2.d.mts → elements-BF1Y4aOi.d.mts} +575 -502
  22. package/dist/{checkout-XoV4HNg2.d.ts → elements-BF1Y4aOi.d.ts} +575 -502
  23. package/dist/{index-DweR60Cv.d.ts → index-CZ0bJm6k.d.ts} +2 -2
  24. package/dist/{index-DRMBo26v.d.mts → index-DML_W635.d.mts} +2 -2
  25. package/dist/{index-Dn6xCpDe.d.ts → index-DU7vffby.d.ts} +2 -2
  26. package/dist/{index-DEUorPUO.d.mts → index-DopYJKDL.d.mts} +2 -2
  27. package/dist/index.d.mts +7 -7
  28. package/dist/index.d.ts +7 -7
  29. package/dist/index.js +159 -151
  30. package/dist/index.mjs +5 -5
  31. package/dist/mock/cli.mjs +33 -2
  32. package/dist/mock/library.js +33 -2
  33. package/dist/mock/library.mjs +33 -2
  34. package/dist/mock/msw.js +33 -2
  35. package/dist/mock/msw.mjs +33 -2
  36. package/dist/{price-De-sxcuj.d.ts → price-B5t2mpsE.d.ts} +1 -1
  37. package/dist/{price-CUGIYRtD.d.mts → price-DI_U5oXU.d.mts} +1 -1
  38. package/dist/react.d.mts +3 -3
  39. package/dist/react.d.ts +3 -3
  40. package/dist/react.js +154 -154
  41. package/dist/react.mjs +7 -7
  42. package/dist/{server-7soMMUgP.d.ts → server-BItJAUTD.d.ts} +1 -1
  43. package/dist/{server-DDEJ7e9s.d.mts → server-Dq70vD7z.d.mts} +1 -1
  44. package/dist/server.d.mts +3 -3
  45. package/dist/server.d.ts +3 -3
  46. package/dist/server.js +10 -10
  47. package/dist/server.mjs +4 -4
  48. package/dist/testing/msw.d.mts +2 -2
  49. package/dist/testing/msw.d.ts +2 -2
  50. package/dist/testing/msw.js +3 -3
  51. package/dist/testing/msw.mjs +2 -2
  52. package/dist/testing/suite.d.mts +5 -5
  53. package/dist/testing/suite.d.ts +5 -5
  54. package/dist/testing/suite.js +26 -26
  55. package/dist/testing/suite.mjs +6 -6
  56. package/dist/testing.d.mts +4 -4
  57. package/dist/testing.d.ts +4 -4
  58. package/dist/testing.js +118 -118
  59. package/dist/testing.mjs +7 -7
  60. package/dist/utils.d.mts +3 -3
  61. package/dist/utils.d.ts +3 -3
  62. package/dist/utils.js +32 -32
  63. package/dist/utils.mjs +2 -2
  64. package/package.json +1 -1
@@ -2,7 +2,7 @@
2
2
 
3
3
  var chunkXREIZ56K_js = require('./chunk-XREIZ56K.js');
4
4
  var chunkEV2EVOYS_js = require('./chunk-EV2EVOYS.js');
5
- var chunkAVXA4F6G_js = require('./chunk-AVXA4F6G.js');
5
+ var chunkANT574FD_js = require('./chunk-ANT574FD.js');
6
6
  var chunkOWW5GUSB_js = require('./chunk-OWW5GUSB.js');
7
7
 
8
8
  // ../node_modules/.bun/hono@4.13.2/node_modules/hono/dist/compose.js
@@ -2100,8 +2100,8 @@ var MockError = class extends Error {
2100
2100
  };
2101
2101
  }
2102
2102
  };
2103
- var notFound = (msg) => new MockError(chunkAVXA4F6G_js.ErrorCode.NOT_FOUND, msg, 404);
2104
- var validation = (msg, ctx) => new MockError(chunkAVXA4F6G_js.ErrorCode.VALIDATION_ERROR, msg, 400, ctx);
2103
+ var notFound = (msg) => new MockError(chunkANT574FD_js.ErrorCode.NOT_FOUND, msg, 404);
2104
+ var validation = (msg, ctx) => new MockError(chunkANT574FD_js.ErrorCode.VALIDATION_ERROR, msg, 400, ctx);
2105
2105
 
2106
2106
  // src/mock/routes/_helpers.ts
2107
2107
  function authMiddleware(deps) {
@@ -2597,15 +2597,15 @@ function buildV1(deps) {
2597
2597
  { method: chunkEV2EVOYS_js.PAYMENT_METHOD.CARD, network: null },
2598
2598
  {
2599
2599
  method: chunkEV2EVOYS_js.PAYMENT_METHOD.MOBILE_MONEY,
2600
- network: chunkAVXA4F6G_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.MTN
2600
+ network: chunkANT574FD_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.MTN
2601
2601
  },
2602
2602
  {
2603
2603
  method: chunkEV2EVOYS_js.PAYMENT_METHOD.MOBILE_MONEY,
2604
- network: chunkAVXA4F6G_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.TELECEL
2604
+ network: chunkANT574FD_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.TELECEL
2605
2605
  },
2606
2606
  {
2607
2607
  method: chunkEV2EVOYS_js.PAYMENT_METHOD.MOBILE_MONEY,
2608
- network: chunkAVXA4F6G_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.AIRTEL
2608
+ network: chunkANT574FD_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.AIRTEL
2609
2609
  }
2610
2610
  ] : currency === "USD" ? [{ method: chunkEV2EVOYS_js.PAYMENT_METHOD.CARD, network: null }] : []
2611
2611
  }));
@@ -2909,6 +2909,23 @@ function buildV1(deps) {
2909
2909
  return tryRoute(c, () => deps.support.react(c.req.param("messageId"), body.emoji ?? ""));
2910
2910
  });
2911
2911
  app.post("/support/conversation/handoff", (c) => c.json({ data: { requested: true } }));
2912
+ app.post("/auth/session/claim", async (c) => {
2913
+ const body = await c.req.json().catch(() => ({}));
2914
+ if (!body.access_token) return c.json({ error: "access_token is required" }, 400);
2915
+ const session = c.var.session;
2916
+ return c.json({
2917
+ data: {
2918
+ session_token: session.token,
2919
+ customer: {
2920
+ id: session.customer_id ?? "cus_test",
2921
+ name: session.customer_name ?? "Test User",
2922
+ email: null,
2923
+ phone: null
2924
+ },
2925
+ cart: null
2926
+ }
2927
+ });
2928
+ });
2912
2929
  app.post("/support/conversation/claim", async (c) => {
2913
2930
  const body = await c.req.json().catch(() => ({}));
2914
2931
  if (!body.access_token) return c.json({ error: "access_token is required" }, 400);
@@ -5528,7 +5545,7 @@ function createPaymentService(options) {
5528
5545
  order_number: order.user_friendly_id,
5529
5546
  payment_id: body.payment_id,
5530
5547
  payment_reference: order.payment_reference,
5531
- payment_status: chunkAVXA4F6G_js.LEGACY_CHECKOUT_PAYMENT_STATUS.SUCCEEDED,
5548
+ payment_status: chunkANT574FD_js.LEGACY_CHECKOUT_PAYMENT_STATUS.SUCCEEDED,
5532
5549
  requires_authorization: false,
5533
5550
  next_action: { type: chunkEV2EVOYS_js.CHECKOUT_NEXT_ACTION.NONE }
5534
5551
  };
@@ -5540,11 +5557,11 @@ function createPaymentService(options) {
5540
5557
  var INTENT_LIFETIME_MS = 15 * 60 * 1e3;
5541
5558
  var ZERO_MONEY = "0.00";
5542
5559
  var MOCK_PROTECTION = {
5543
- status: chunkAVXA4F6G_js.CHECKOUT_PROTECTION_STATUS.PROTECTED,
5560
+ status: chunkANT574FD_js.CHECKOUT_PROTECTION_STATUS.PROTECTED,
5544
5561
  message: "Covered by Cimplify Protection"
5545
5562
  };
5546
5563
  var PURCHASE_INTENT_MOBILE_MONEY_NETWORKS = new Set(
5547
- Object.values(chunkAVXA4F6G_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK)
5564
+ Object.values(chunkANT574FD_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK)
5548
5565
  );
5549
5566
  var MOCK_PURCHASE_INTENT = {
5550
5567
  OWNER_KIND: { ACCOUNT: "account", STOREFRONT_SESSION: "storefront_session" },
@@ -5594,37 +5611,37 @@ function decimal(value) {
5594
5611
  return wireMoney(value.toFixed(2));
5595
5612
  }
5596
5613
  function paymentOptions(intentId, currency, amount, expiresAt) {
5597
- const normalizedCurrency = chunkAVXA4F6G_js.currencyCode(currency);
5614
+ const normalizedCurrency = chunkANT574FD_js.currencyCode(currency);
5598
5615
  const normalizedAmount = wireMoney(amount);
5599
5616
  return [
5600
5617
  {
5601
- id: `${intentId}:${chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.CARD}`,
5618
+ id: `${intentId}:${chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.CARD}`,
5602
5619
  rank: 0,
5603
- method_kind: chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.CARD,
5604
- collection_mode: chunkAVXA4F6G_js.PAYMENT_COLLECTION_MODE.CREDENTIAL_CHARGE,
5605
- provider: chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_PROVIDER.PAYSTACK,
5620
+ method_kind: chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.CARD,
5621
+ collection_mode: chunkANT574FD_js.PAYMENT_COLLECTION_MODE.CREDENTIAL_CHARGE,
5622
+ provider: chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_PROVIDER.PAYSTACK,
5606
5623
  principal_amount: normalizedAmount,
5607
5624
  fee_amount: wireMoney(ZERO_MONEY),
5608
5625
  customer_debit_amount: normalizedAmount,
5609
5626
  currency: normalizedCurrency,
5610
5627
  protection: MOCK_PROTECTION,
5611
- status: chunkAVXA4F6G_js.PAYMENT_OPTION_STATUS.ELIGIBLE,
5612
- expected_next_action: chunkAVXA4F6G_js.PAYMENT_OPTION_NEXT_ACTION.PROVIDER_APPROVAL,
5628
+ status: chunkANT574FD_js.PAYMENT_OPTION_STATUS.ELIGIBLE,
5629
+ expected_next_action: chunkANT574FD_js.PAYMENT_OPTION_NEXT_ACTION.PROVIDER_APPROVAL,
5613
5630
  expires_at: expiresAt
5614
5631
  },
5615
5632
  {
5616
- id: `${intentId}:${chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY}`,
5633
+ id: `${intentId}:${chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY}`,
5617
5634
  rank: 1,
5618
- method_kind: chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY,
5619
- collection_mode: chunkAVXA4F6G_js.PAYMENT_COLLECTION_MODE.REQUEST_TO_PAY,
5620
- provider: chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_PROVIDER.PAYSTACK,
5635
+ method_kind: chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY,
5636
+ collection_mode: chunkANT574FD_js.PAYMENT_COLLECTION_MODE.REQUEST_TO_PAY,
5637
+ provider: chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_PROVIDER.PAYSTACK,
5621
5638
  principal_amount: normalizedAmount,
5622
5639
  fee_amount: wireMoney(ZERO_MONEY),
5623
5640
  customer_debit_amount: normalizedAmount,
5624
5641
  currency: normalizedCurrency,
5625
5642
  protection: MOCK_PROTECTION,
5626
- status: chunkAVXA4F6G_js.PAYMENT_OPTION_STATUS.ELIGIBLE,
5627
- expected_next_action: chunkAVXA4F6G_js.PAYMENT_OPTION_NEXT_ACTION.PROVIDER_APPROVAL,
5643
+ status: chunkANT574FD_js.PAYMENT_OPTION_STATUS.ELIGIBLE,
5644
+ expected_next_action: chunkANT574FD_js.PAYMENT_OPTION_NEXT_ACTION.PROVIDER_APPROVAL,
5628
5645
  expires_at: expiresAt
5629
5646
  }
5630
5647
  ];
@@ -5637,7 +5654,7 @@ function termsForCart(input) {
5637
5654
  terms_version: input.version,
5638
5655
  terms_digest: `mock:${input.intentId}:${input.revision}:${input.version}`,
5639
5656
  money: {
5640
- currency: chunkAVXA4F6G_js.currencyCode(input.currency),
5657
+ currency: chunkANT574FD_js.currencyCode(input.currency),
5641
5658
  subtotal: wireMoney(input.subtotal),
5642
5659
  discount_total: wireMoney(input.discount),
5643
5660
  tax_total: wireMoney(input.tax),
@@ -5659,8 +5676,8 @@ function termsForCart(input) {
5659
5676
  compliance: {
5660
5677
  policy_name: MOCK_PURCHASE_INTENT.COMPLIANCE.POLICY_NAME,
5661
5678
  policy_version: 1,
5662
- lane: chunkAVXA4F6G_js.CHECKOUT_COMPLIANCE_LANE.NATIVE,
5663
- reason_code: chunkAVXA4F6G_js.CHECKOUT_COMPLIANCE_REASON.PHYSICAL_GOODS_NATIVE,
5679
+ lane: chunkANT574FD_js.CHECKOUT_COMPLIANCE_LANE.NATIVE,
5680
+ reason_code: chunkANT574FD_js.CHECKOUT_COMPLIANCE_REASON.PHYSICAL_GOODS_NATIVE,
5664
5681
  evidence_digest: `mock-compliance:${input.intentId}`
5665
5682
  },
5666
5683
  payment_options: isExactlyZero(input.total) ? [] : paymentOptions(input.intentId, input.currency, input.total, input.validUntil),
@@ -5679,20 +5696,20 @@ function intentView(intent) {
5679
5696
  }
5680
5697
  function purchasingPrincipal(session) {
5681
5698
  if (!session.is_authenticated) {
5682
- return { kind: chunkAVXA4F6G_js.PURCHASING_PRINCIPAL_KIND.GUEST };
5699
+ return { kind: chunkANT574FD_js.PURCHASING_PRINCIPAL_KIND.GUEST };
5683
5700
  }
5684
5701
  if (!session.account_id) throw validation("Authenticated mock session has no account authority");
5685
5702
  return {
5686
- kind: chunkAVXA4F6G_js.PURCHASING_PRINCIPAL_KIND.ACCOUNT,
5703
+ kind: chunkANT574FD_js.PURCHASING_PRINCIPAL_KIND.ACCOUNT,
5687
5704
  account_id: session.account_id
5688
5705
  };
5689
5706
  }
5690
5707
  function assertSupportedTenderPreference(request) {
5691
- if (request.source.kind !== chunkAVXA4F6G_js.PURCHASE_INTENT_SOURCE_KIND.CART) return;
5708
+ if (request.source.kind !== chunkANT574FD_js.PURCHASE_INTENT_SOURCE_KIND.CART) return;
5692
5709
  const checkout = request.checkout;
5693
5710
  if (!checkout) throw validation("Cart checkout input is required");
5694
5711
  const preference = checkout.tender_preference;
5695
- if (preference?.method_kind !== chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY || preference.authority.authority_kind !== chunkAVXA4F6G_js.MOBILE_MONEY_TENDER_AUTHORITY_KIND.TRANSIENT) {
5712
+ if (preference?.method_kind !== chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY || preference.authority.authority_kind !== chunkANT574FD_js.MOBILE_MONEY_TENDER_AUTHORITY_KIND.TRANSIENT) {
5696
5713
  return;
5697
5714
  }
5698
5715
  if (!PURCHASE_INTENT_MOBILE_MONEY_NETWORKS.has(preference.authority.network)) {
@@ -5732,7 +5749,7 @@ function createPurchaseIntentMockService(options) {
5732
5749
  );
5733
5750
  bus.emit(MOCK_PURCHASE_INTENT.EVENT.ORDER_CONFIRMED, { order_id: order.id }, order.business_id);
5734
5751
  const completed = {
5735
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.ORDER_CREATED,
5752
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.ORDER_CREATED,
5736
5753
  intent_id: intent.id,
5737
5754
  attempt_id: attemptId,
5738
5755
  order_id: order.id,
@@ -5749,7 +5766,7 @@ function createPurchaseIntentMockService(options) {
5749
5766
  return {
5750
5767
  mint(session, request) {
5751
5768
  if (!request.client_intent_key.trim()) throw validation("client_intent_key required");
5752
- if (request.source.kind !== chunkAVXA4F6G_js.PURCHASE_INTENT_SOURCE_KIND.CART) {
5769
+ if (request.source.kind !== chunkANT574FD_js.PURCHASE_INTENT_SOURCE_KIND.CART) {
5753
5770
  throw validation("The mock currently prepares cart purchase intents only");
5754
5771
  }
5755
5772
  const checkoutInput = request.checkout;
@@ -5759,7 +5776,7 @@ function createPurchaseIntentMockService(options) {
5759
5776
  const cart = registry.carts.get(request.source.cart_id);
5760
5777
  if (!cart) throw notFound(`Cart ${request.source.cart_id} not found`);
5761
5778
  if (cart.items.length === 0) {
5762
- throw validation("Cart is empty", { code: chunkAVXA4F6G_js.ErrorCode.CART_EMPTY });
5779
+ throw validation("Cart is empty", { code: chunkANT574FD_js.ErrorCode.CART_EMPTY });
5763
5780
  }
5764
5781
  const principal = purchasingPrincipal(session);
5765
5782
  const owner = intentOwner(session);
@@ -5788,14 +5805,14 @@ function createPurchaseIntentMockService(options) {
5788
5805
  seller_business_id: cart.business_id,
5789
5806
  principal,
5790
5807
  revision: 1,
5791
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_STATUS.OPEN,
5808
+ status: chunkANT574FD_js.PURCHASE_INTENT_STATUS.OPEN,
5792
5809
  source: {
5793
- kind: chunkAVXA4F6G_js.PURCHASE_INTENT_SOURCE_KIND.CART,
5810
+ kind: chunkANT574FD_js.PURCHASE_INTENT_SOURCE_KIND.CART,
5794
5811
  source_id: cart.id,
5795
5812
  source_version: cart.updated_at,
5796
5813
  seller_business_id: cart.business_id,
5797
5814
  subject: {
5798
- kind: chunkAVXA4F6G_js.PURCHASING_PRINCIPAL_KIND.BUSINESS,
5815
+ kind: chunkANT574FD_js.PURCHASING_PRINCIPAL_KIND.BUSINESS,
5799
5816
  business_id: cart.business_id
5800
5817
  },
5801
5818
  binding_digest: `mock-cart:${cart.id}:${cart.updated_at}`
@@ -5804,14 +5821,14 @@ function createPurchaseIntentMockService(options) {
5804
5821
  id: line.id,
5805
5822
  ordinal,
5806
5823
  sellable: {
5807
- kind: line.variant_id ? chunkAVXA4F6G_js.PURCHASE_INTENT_SELLABLE_KIND.VARIANT : chunkAVXA4F6G_js.PURCHASE_INTENT_SELLABLE_KIND.PRODUCT,
5824
+ kind: line.variant_id ? chunkANT574FD_js.PURCHASE_INTENT_SELLABLE_KIND.VARIANT : chunkANT574FD_js.PURCHASE_INTENT_SELLABLE_KIND.PRODUCT,
5808
5825
  product_id: line.item_id,
5809
5826
  variant_id: line.variant_id,
5810
5827
  location_id: checkoutInput.location_id || MOCK_PURCHASE_INTENT.DEFAULT_LOCATION_ID
5811
5828
  },
5812
5829
  quantity: line.quantity,
5813
5830
  configuration: {
5814
- kind: chunkAVXA4F6G_js.PURCHASE_INTENT_LINE_CONFIGURATION_KIND.SIMPLE,
5831
+ kind: chunkANT574FD_js.PURCHASE_INTENT_LINE_CONFIGURATION_KIND.SIMPLE,
5815
5832
  variant_id: line.variant_id,
5816
5833
  customer_inputs: line.customer_inputs
5817
5834
  }
@@ -5824,7 +5841,7 @@ function createPurchaseIntentMockService(options) {
5824
5841
  quantity: line.quantity,
5825
5842
  unit_price: decimal(unitPrice),
5826
5843
  line_subtotal: decimal(lineSubtotal),
5827
- currency: chunkAVXA4F6G_js.currencyCode(cart.currency)
5844
+ currency: chunkANT574FD_js.currencyCode(cart.currency)
5828
5845
  };
5829
5846
  }),
5830
5847
  current_terms: terms,
@@ -5869,18 +5886,18 @@ function createPurchaseIntentMockService(options) {
5869
5886
  },
5870
5887
  confirm(session, intentId, request) {
5871
5888
  const intent = stored(session, intentId);
5872
- if (intent.status === chunkAVXA4F6G_js.PURCHASE_INTENT_STATUS.CONVERTED && intent.last_confirmation) {
5889
+ if (intent.status === chunkANT574FD_js.PURCHASE_INTENT_STATUS.CONVERTED && intent.last_confirmation) {
5873
5890
  const orderId2 = "order_id" in intent.last_confirmation ? intent.last_confirmation.order_id : void 0;
5874
5891
  const order2 = orderId2 ? registry.orders.get(orderId2) : void 0;
5875
5892
  if (order2?.payment_state === MOCK_PURCHASE_INTENT.PAYMENT_STATE.PAID) {
5876
5893
  return {
5877
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.ORDER_CREATED,
5894
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.ORDER_CREATED,
5878
5895
  intent_id: intent.id,
5879
5896
  attempt_id: "attempt_id" in intent.last_confirmation ? intent.last_confirmation.attempt_id : ids.raw(MOCK_PURCHASE_INTENT.ID_PREFIX.ATTEMPT),
5880
5897
  order_id: order2.id
5881
5898
  };
5882
5899
  }
5883
- if (order2?.payment_id && intent.last_confirmation.status === chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.CARD_POPUP_REQUIRED) {
5900
+ if (order2?.payment_id && intent.last_confirmation.status === chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.CARD_POPUP_REQUIRED) {
5884
5901
  return completeProviderOrder(intent, order2, intent.last_confirmation.attempt_id);
5885
5902
  }
5886
5903
  return intent.last_confirmation;
@@ -5889,20 +5906,20 @@ function createPurchaseIntentMockService(options) {
5889
5906
  if (!terms) throw validation("Purchase intent has no current terms");
5890
5907
  const zeroRail = isExactlyZero(terms.money.rail_amount);
5891
5908
  const option = request.payment_option_id ? terms.payment_options.find(
5892
- (candidate) => candidate.id === request.payment_option_id && candidate.status === chunkAVXA4F6G_js.PAYMENT_OPTION_STATUS.ELIGIBLE
5909
+ (candidate) => candidate.id === request.payment_option_id && candidate.status === chunkANT574FD_js.PAYMENT_OPTION_STATUS.ELIGIBLE
5893
5910
  ) : void 0;
5894
5911
  const acceptedBaseTermsChanged = !sameDecimal(request.accepted_due_now, terms.money.due_now) || request.currency !== terms.money.currency;
5895
5912
  if (request.accepted_intent_revision !== intent.revision || request.accepted_terms_version !== terms.terms_version || acceptedBaseTermsChanged) {
5896
5913
  const deltas = acceptedBaseTermsChanged ? [
5897
5914
  {
5898
- kind: chunkAVXA4F6G_js.CHECKOUT_TERMS_DELTA_KIND.MONEY,
5899
- component: chunkAVXA4F6G_js.CHECKOUT_TERMS_COMPONENT.DUE_NOW,
5915
+ kind: chunkANT574FD_js.CHECKOUT_TERMS_DELTA_KIND.MONEY,
5916
+ component: chunkANT574FD_js.CHECKOUT_TERMS_COMPONENT.DUE_NOW,
5900
5917
  accepted: request.accepted_due_now,
5901
5918
  replacement: terms.money.due_now
5902
5919
  }
5903
5920
  ] : [
5904
5921
  {
5905
- kind: chunkAVXA4F6G_js.CHECKOUT_TERMS_DELTA_KIND.PAYMENT_OPTION,
5922
+ kind: chunkANT574FD_js.CHECKOUT_TERMS_DELTA_KIND.PAYMENT_OPTION,
5906
5923
  accepted_option_id: request.payment_option_id ?? null,
5907
5924
  accepted_customer_debit_amount: request.accepted_customer_debit_amount,
5908
5925
  replacement_option_id: option?.id ?? null,
@@ -5910,7 +5927,7 @@ function createPurchaseIntentMockService(options) {
5910
5927
  }
5911
5928
  ];
5912
5929
  return {
5913
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.TERMS_CHANGED,
5930
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.TERMS_CHANGED,
5914
5931
  intent_id: intent.id,
5915
5932
  replacement: terms,
5916
5933
  deltas
@@ -5918,11 +5935,11 @@ function createPurchaseIntentMockService(options) {
5918
5935
  }
5919
5936
  if (!zeroRail && !option || zeroRail && request.payment_option_id != null) {
5920
5937
  return {
5921
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.SELECTION_UNAVAILABLE,
5938
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.SELECTION_UNAVAILABLE,
5922
5939
  intent_id: intent.id,
5923
5940
  lines: intent.lines.map((line) => ({
5924
5941
  line_id: line.id,
5925
- reason: chunkAVXA4F6G_js.CHECKOUT_INVALIDATION_REASON.PAYMENT_OPTION_CHANGED
5942
+ reason: chunkANT574FD_js.CHECKOUT_INVALIDATION_REASON.PAYMENT_OPTION_CHANGED
5926
5943
  }))
5927
5944
  };
5928
5945
  }
@@ -5931,12 +5948,12 @@ function createPurchaseIntentMockService(options) {
5931
5948
  );
5932
5949
  if (!acceptedCustomerDebitMatches) {
5933
5950
  return {
5934
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.TERMS_CHANGED,
5951
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.TERMS_CHANGED,
5935
5952
  intent_id: intent.id,
5936
5953
  replacement: terms,
5937
5954
  deltas: [
5938
5955
  {
5939
- kind: chunkAVXA4F6G_js.CHECKOUT_TERMS_DELTA_KIND.PAYMENT_OPTION,
5956
+ kind: chunkANT574FD_js.CHECKOUT_TERMS_DELTA_KIND.PAYMENT_OPTION,
5940
5957
  accepted_option_id: request.payment_option_id ?? null,
5941
5958
  accepted_customer_debit_amount: request.accepted_customer_debit_amount,
5942
5959
  replacement_option_id: option?.id ?? null,
@@ -5945,21 +5962,32 @@ function createPurchaseIntentMockService(options) {
5945
5962
  ]
5946
5963
  };
5947
5964
  }
5948
- if (intent.mint_request.source.kind !== chunkAVXA4F6G_js.PURCHASE_INTENT_SOURCE_KIND.CART) {
5965
+ if (intent.mint_request.source.kind !== chunkANT574FD_js.PURCHASE_INTENT_SOURCE_KIND.CART) {
5949
5966
  throw validation("The mock currently confirms cart purchase intents only");
5950
5967
  }
5951
5968
  const checkoutInput = intent.mint_request.checkout;
5952
5969
  if (!checkoutInput) throw validation("Cart checkout input is required");
5953
5970
  const cart = registry.carts.get(intent.mint_request.source.cart_id);
5954
- if (!cart || cart.status !== MOCK_PURCHASE_INTENT.CART_STATUS.ACTIVE) {
5955
- return { status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.SOURCE_UNAVAILABLE, intent_id: intent.id };
5971
+ if (!cart) {
5972
+ return {
5973
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.SOURCE_UNAVAILABLE,
5974
+ intent_id: intent.id,
5975
+ reason: chunkANT574FD_js.SOURCE_REFUSAL.SOURCE_NOT_FOUND
5976
+ };
5977
+ }
5978
+ if (cart.status !== MOCK_PURCHASE_INTENT.CART_STATUS.ACTIVE) {
5979
+ return {
5980
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.SOURCE_UNAVAILABLE,
5981
+ intent_id: intent.id,
5982
+ reason: chunkANT574FD_js.SOURCE_REFUSAL.CART_NOT_ACTIVE
5983
+ };
5956
5984
  }
5957
5985
  const attemptId = ids.raw(MOCK_PURCHASE_INTENT.ID_PREFIX.ATTEMPT);
5958
5986
  const orderId = ids.order();
5959
5987
  const orderNumber = ids.orderNumber();
5960
5988
  const paymentId = zeroRail ? void 0 : ids.payment();
5961
5989
  const paymentReference = zeroRail ? void 0 : ids.payment();
5962
- const needsProvider = option?.method_kind === chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.CARD || option?.method_kind === chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY;
5990
+ const needsProvider = option?.method_kind === chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.CARD || option?.method_kind === chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY;
5963
5991
  const paid = zeroRail;
5964
5992
  const order = {
5965
5993
  id: orderId,
@@ -6016,28 +6044,28 @@ function createPurchaseIntentMockService(options) {
6016
6044
  );
6017
6045
  }
6018
6046
  let confirmation;
6019
- if (option?.method_kind === chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY) {
6047
+ if (option?.method_kind === chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.MOBILE_MONEY) {
6020
6048
  confirmation = {
6021
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.AUTHORIZATION_REQUIRED,
6049
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.AUTHORIZATION_REQUIRED,
6022
6050
  intent_id: intent.id,
6023
6051
  attempt_id: attemptId,
6024
6052
  order_id: orderId,
6025
6053
  authorization_type: chunkEV2EVOYS_js.AUTHORIZATION_TYPE.OTP,
6026
6054
  display_text: "Approve on your mobile money app"
6027
6055
  };
6028
- } else if (option?.method_kind === chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_METHOD.CARD) {
6056
+ } else if (option?.method_kind === chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_METHOD.CARD) {
6029
6057
  confirmation = {
6030
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.CARD_POPUP_REQUIRED,
6058
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.CARD_POPUP_REQUIRED,
6031
6059
  intent_id: intent.id,
6032
6060
  attempt_id: attemptId,
6033
6061
  order_id: orderId,
6034
- provider: chunkAVXA4F6G_js.PURCHASE_INTENT_PAYMENT_PROVIDER.PAYSTACK,
6062
+ provider: chunkANT574FD_js.PURCHASE_INTENT_PAYMENT_PROVIDER.PAYSTACK,
6035
6063
  client_secret: `access_${paymentReference}`,
6036
6064
  public_key: MOCK_PURCHASE_INTENT.MOCK_PAYSTACK_PUBLIC_KEY
6037
6065
  };
6038
6066
  } else {
6039
6067
  confirmation = {
6040
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.ORDER_CREATED,
6068
+ status: chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.ORDER_CREATED,
6041
6069
  intent_id: intent.id,
6042
6070
  attempt_id: attemptId,
6043
6071
  order_id: orderId
@@ -6048,7 +6076,7 @@ function createPurchaseIntentMockService(options) {
6048
6076
  }
6049
6077
  registry.purchaseIntents.put(intent.id, {
6050
6078
  ...intent,
6051
- status: chunkAVXA4F6G_js.PURCHASE_INTENT_STATUS.CONVERTED,
6079
+ status: chunkANT574FD_js.PURCHASE_INTENT_STATUS.CONVERTED,
6052
6080
  converted_order_id: orderId,
6053
6081
  updated_at: clock.iso(),
6054
6082
  last_confirmation: confirmation
@@ -6058,7 +6086,7 @@ function createPurchaseIntentMockService(options) {
6058
6086
  submitAction(session, intentId, attemptId, request) {
6059
6087
  const intent = stored(session, intentId);
6060
6088
  const previous = intent.last_confirmation;
6061
- if (!previous || previous.status !== chunkAVXA4F6G_js.PURCHASE_INTENT_CONFIRM_STATUS.AUTHORIZATION_REQUIRED || previous.attempt_id !== attemptId) {
6089
+ if (!previous || previous.status !== chunkANT574FD_js.PURCHASE_INTENT_CONFIRM_STATUS.AUTHORIZATION_REQUIRED || previous.attempt_id !== attemptId) {
6062
6090
  throw validation("Purchase-intent attempt is not awaiting authorization");
6063
6091
  }
6064
6092
  if (!request.authorization) throw validation("authorization required");
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkAVXA4F6G_js = require('./chunk-AVXA4F6G.js');
3
+ var chunkANT574FD_js = require('./chunk-ANT574FD.js');
4
4
 
5
5
  // src/utils/price.ts
6
6
  var CURRENCY_SYMBOLS = {
@@ -468,14 +468,14 @@ function normalizeStatusResponse(response) {
468
468
  return {
469
469
  status: "pending",
470
470
  paid: false,
471
- amount: chunkAVXA4F6G_js.moneyFromNumber(0),
471
+ amount: chunkANT574FD_js.moneyFromNumber(0),
472
472
  currency: "",
473
473
  message: "No status available"
474
474
  };
475
475
  }
476
476
  const res = response;
477
477
  const normalizedStatus = normalizePaymentStatusValue(res.status ?? void 0);
478
- const normalizedAmount = typeof res.amount === "string" ? chunkAVXA4F6G_js.money(res.amount) : typeof res.amount === "number" && Number.isFinite(res.amount) ? chunkAVXA4F6G_js.moneyFromNumber(res.amount) : chunkAVXA4F6G_js.moneyFromNumber(0);
478
+ const normalizedAmount = typeof res.amount === "string" ? chunkANT574FD_js.money(res.amount) : typeof res.amount === "number" && Number.isFinite(res.amount) ? chunkANT574FD_js.moneyFromNumber(res.amount) : chunkANT574FD_js.moneyFromNumber(0);
479
479
  const normalizedCurrency = typeof res.currency === "string" && res.currency.trim().length > 0 ? res.currency : "";
480
480
  const paidValue = res.paid === true && normalizedStatus !== "authorized" && !PAYMENT_REQUIRES_ACTION_STATUSES.has(normalizedStatus) && !PAYMENT_FAILURE_STATUSES.has(normalizedStatus);
481
481
  const derivedPaid = paidValue || PAYMENT_SUCCESS_STATUSES.has(normalizedStatus);
@@ -514,9 +514,9 @@ function canonicalMobileMoneyProvider(provider) {
514
514
  return MOBILE_MONEY_PROVIDER_ALIASES[normalized] ?? null;
515
515
  }
516
516
  var PURCHASE_INTENT_NETWORK_BY_PROVIDER = {
517
- mtn: chunkAVXA4F6G_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.MTN,
518
- telecel: chunkAVXA4F6G_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.TELECEL,
519
- airteltigo: chunkAVXA4F6G_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.AIRTEL
517
+ mtn: chunkANT574FD_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.MTN,
518
+ telecel: chunkANT574FD_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.TELECEL,
519
+ airteltigo: chunkANT574FD_js.PURCHASE_INTENT_MOBILE_MONEY_NETWORK.AIRTEL
520
520
  };
521
521
  function purchaseIntentMobileMoneyNetwork(provider) {
522
522
  const canonical = canonicalMobileMoneyProvider(provider);
@@ -1,6 +1,6 @@
1
1
  import { messagePreview } from './chunk-U4MW6PYU.mjs';
2
2
  import { AUTHORIZATION_TYPE, CHECKOUT_ORDER_RESULT_STATUS, CHECKOUT_NEXT_ACTION, PAYMENT_METHOD, DEFAULT_CURRENCY } from './chunk-33VCYWVL.mjs';
3
- import { CHECKOUT_PROTECTION_STATUS, PURCHASE_INTENT_MOBILE_MONEY_NETWORK, ErrorCode, PURCHASE_INTENT_CONFIRM_STATUS, PURCHASE_INTENT_STATUS, PAYMENT_OPTION_STATUS, CHECKOUT_TERMS_COMPONENT, CHECKOUT_TERMS_DELTA_KIND, CHECKOUT_INVALIDATION_REASON, PURCHASE_INTENT_SOURCE_KIND, PURCHASE_INTENT_PAYMENT_METHOD, PURCHASE_INTENT_PAYMENT_PROVIDER, currencyCode, PURCHASE_INTENT_LINE_CONFIGURATION_KIND, PURCHASE_INTENT_SELLABLE_KIND, PURCHASING_PRINCIPAL_KIND, LEGACY_CHECKOUT_PAYMENT_STATUS, CHECKOUT_COMPLIANCE_REASON, CHECKOUT_COMPLIANCE_LANE, MOBILE_MONEY_TENDER_AUTHORITY_KIND, PAYMENT_OPTION_NEXT_ACTION, PAYMENT_COLLECTION_MODE } from './chunk-NJYR6GGM.mjs';
3
+ import { CHECKOUT_PROTECTION_STATUS, PURCHASE_INTENT_MOBILE_MONEY_NETWORK, ErrorCode, PURCHASE_INTENT_CONFIRM_STATUS, PURCHASE_INTENT_STATUS, PAYMENT_OPTION_STATUS, CHECKOUT_TERMS_COMPONENT, CHECKOUT_TERMS_DELTA_KIND, CHECKOUT_INVALIDATION_REASON, PURCHASE_INTENT_SOURCE_KIND, SOURCE_REFUSAL, PURCHASE_INTENT_PAYMENT_METHOD, PURCHASE_INTENT_PAYMENT_PROVIDER, currencyCode, PURCHASE_INTENT_LINE_CONFIGURATION_KIND, PURCHASE_INTENT_SELLABLE_KIND, PURCHASING_PRINCIPAL_KIND, LEGACY_CHECKOUT_PAYMENT_STATUS, CHECKOUT_COMPLIANCE_REASON, CHECKOUT_COMPLIANCE_LANE, MOBILE_MONEY_TENDER_AUTHORITY_KIND, PAYMENT_OPTION_NEXT_ACTION, PAYMENT_COLLECTION_MODE } from './chunk-KG3WT4PR.mjs';
4
4
  import { __publicField, __privateAdd, __privateSet, __privateGet, __privateMethod, __privateWrapper } from './chunk-3G6RQLXK.mjs';
5
5
 
6
6
  // ../node_modules/.bun/hono@4.13.2/node_modules/hono/dist/compose.js
@@ -2907,6 +2907,23 @@ function buildV1(deps) {
2907
2907
  return tryRoute(c, () => deps.support.react(c.req.param("messageId"), body.emoji ?? ""));
2908
2908
  });
2909
2909
  app.post("/support/conversation/handoff", (c) => c.json({ data: { requested: true } }));
2910
+ app.post("/auth/session/claim", async (c) => {
2911
+ const body = await c.req.json().catch(() => ({}));
2912
+ if (!body.access_token) return c.json({ error: "access_token is required" }, 400);
2913
+ const session = c.var.session;
2914
+ return c.json({
2915
+ data: {
2916
+ session_token: session.token,
2917
+ customer: {
2918
+ id: session.customer_id ?? "cus_test",
2919
+ name: session.customer_name ?? "Test User",
2920
+ email: null,
2921
+ phone: null
2922
+ },
2923
+ cart: null
2924
+ }
2925
+ });
2926
+ });
2910
2927
  app.post("/support/conversation/claim", async (c) => {
2911
2928
  const body = await c.req.json().catch(() => ({}));
2912
2929
  if (!body.access_token) return c.json({ error: "access_token is required" }, 400);
@@ -5949,8 +5966,19 @@ function createPurchaseIntentMockService(options) {
5949
5966
  const checkoutInput = intent.mint_request.checkout;
5950
5967
  if (!checkoutInput) throw validation("Cart checkout input is required");
5951
5968
  const cart = registry.carts.get(intent.mint_request.source.cart_id);
5952
- if (!cart || cart.status !== MOCK_PURCHASE_INTENT.CART_STATUS.ACTIVE) {
5953
- return { status: PURCHASE_INTENT_CONFIRM_STATUS.SOURCE_UNAVAILABLE, intent_id: intent.id };
5969
+ if (!cart) {
5970
+ return {
5971
+ status: PURCHASE_INTENT_CONFIRM_STATUS.SOURCE_UNAVAILABLE,
5972
+ intent_id: intent.id,
5973
+ reason: SOURCE_REFUSAL.SOURCE_NOT_FOUND
5974
+ };
5975
+ }
5976
+ if (cart.status !== MOCK_PURCHASE_INTENT.CART_STATUS.ACTIVE) {
5977
+ return {
5978
+ status: PURCHASE_INTENT_CONFIRM_STATUS.SOURCE_UNAVAILABLE,
5979
+ intent_id: intent.id,
5980
+ reason: SOURCE_REFUSAL.CART_NOT_ACTIVE
5981
+ };
5954
5982
  }
5955
5983
  const attemptId = ids.raw(MOCK_PURCHASE_INTENT.ID_PREFIX.ATTEMPT);
5956
5984
  const orderId = ids.order();
@@ -1,5 +1,5 @@
1
- import { C as CimplifyClient } from './catalogue-CVKH9faR.mjs';
2
- import { A as AppHandle, C as CreateAppOptions } from './server-DDEJ7e9s.mjs';
1
+ import { C as CimplifyClient } from './catalogue-rWd71Xi-.mjs';
2
+ import { A as AppHandle, C as CreateAppOptions } from './server-Dq70vD7z.mjs';
3
3
 
4
4
  /**
5
5
  * Test client + fixtures.
@@ -1,5 +1,5 @@
1
- import { C as CimplifyClient } from './catalogue-ChBjPPME.js';
2
- import { A as AppHandle, C as CreateAppOptions } from './server-7soMMUgP.js';
1
+ import { C as CimplifyClient } from './catalogue-AmW4XjaN.js';
2
+ import { A as AppHandle, C as CreateAppOptions } from './server-BItJAUTD.js';
3
3
 
4
4
  /**
5
5
  * Test client + fixtures.