@cimplify/sdk 0.16.0 → 0.16.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/dist/advanced.d.mts +1 -1
- package/dist/advanced.d.ts +1 -1
- package/dist/advanced.js +97 -230
- package/dist/advanced.mjs +97 -230
- package/dist/{client-wOQ8P1Ks.d.mts → client-Cb7r8u6t.d.mts} +1 -0
- package/dist/{client-NdvQpCxU.d.ts → client-DTTtSSmQ.d.ts} +1 -0
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +97 -230
- package/dist/index.mjs +97 -230
- package/dist/react.d.mts +1 -1
- package/dist/react.d.ts +1 -1
- package/dist/react.js +97 -230
- package/dist/react.mjs +97 -230
- package/package.json +2 -2
package/dist/advanced.js
CHANGED
|
@@ -120,7 +120,7 @@ function enrichError(error, options = {}) {
|
|
|
120
120
|
return error;
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
-
// src/
|
|
123
|
+
// src/internal/safe.ts
|
|
124
124
|
function toCimplifyError(error) {
|
|
125
125
|
if (error instanceof CimplifyError) return enrichError(error);
|
|
126
126
|
if (error instanceof Error) {
|
|
@@ -135,6 +135,8 @@ async function safe(promise) {
|
|
|
135
135
|
return err(toCimplifyError(error));
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
|
+
|
|
139
|
+
// src/catalogue.ts
|
|
138
140
|
function withQuery(path, params) {
|
|
139
141
|
const query2 = new URLSearchParams();
|
|
140
142
|
for (const [key, value] of Object.entries(params)) {
|
|
@@ -504,20 +506,6 @@ var CatalogueQueries = class {
|
|
|
504
506
|
};
|
|
505
507
|
|
|
506
508
|
// src/cart.ts
|
|
507
|
-
function toCimplifyError2(error) {
|
|
508
|
-
if (error instanceof CimplifyError) return enrichError(error);
|
|
509
|
-
if (error instanceof Error) {
|
|
510
|
-
return enrichError(new CimplifyError(ErrorCode.UNKNOWN_ERROR, error.message, false));
|
|
511
|
-
}
|
|
512
|
-
return enrichError(new CimplifyError(ErrorCode.UNKNOWN_ERROR, String(error), false));
|
|
513
|
-
}
|
|
514
|
-
async function safe2(promise) {
|
|
515
|
-
try {
|
|
516
|
-
return ok(await promise);
|
|
517
|
-
} catch (error) {
|
|
518
|
-
return err(toCimplifyError2(error));
|
|
519
|
-
}
|
|
520
|
-
}
|
|
521
509
|
function isUICartResponse(value) {
|
|
522
510
|
return "cart" in value;
|
|
523
511
|
}
|
|
@@ -529,21 +517,21 @@ var CartOperations = class {
|
|
|
529
517
|
this.client = client;
|
|
530
518
|
}
|
|
531
519
|
async get() {
|
|
532
|
-
const result = await
|
|
520
|
+
const result = await safe(this.client.get("/api/v1/cart"));
|
|
533
521
|
if (!result.ok) return result;
|
|
534
522
|
return ok(unwrapEnrichedCart(result.value));
|
|
535
523
|
}
|
|
536
524
|
async getRaw() {
|
|
537
|
-
return
|
|
525
|
+
return safe(this.client.get("/api/v1/cart"));
|
|
538
526
|
}
|
|
539
527
|
async getItems() {
|
|
540
|
-
return
|
|
528
|
+
return safe(this.client.get("/api/v1/cart/items"));
|
|
541
529
|
}
|
|
542
530
|
async getCount() {
|
|
543
|
-
return
|
|
531
|
+
return safe(this.client.get("/api/v1/cart/count"));
|
|
544
532
|
}
|
|
545
533
|
async getTotal() {
|
|
546
|
-
return
|
|
534
|
+
return safe(this.client.get("/api/v1/cart/total"));
|
|
547
535
|
}
|
|
548
536
|
async getSummary() {
|
|
549
537
|
const cartResult = await this.get();
|
|
@@ -560,18 +548,18 @@ var CartOperations = class {
|
|
|
560
548
|
});
|
|
561
549
|
}
|
|
562
550
|
async addItem(input) {
|
|
563
|
-
return
|
|
551
|
+
return safe(this.client.post("/api/v1/cart/items", input));
|
|
564
552
|
}
|
|
565
553
|
async updateItem(cartItemId, updates) {
|
|
566
554
|
if (typeof updates.quantity === "number") {
|
|
567
555
|
return this.updateQuantity(cartItemId, updates.quantity);
|
|
568
556
|
}
|
|
569
557
|
const encodedId = encodeURIComponent(cartItemId);
|
|
570
|
-
return
|
|
558
|
+
return safe(this.client.patch(`/api/v1/cart/items/${encodedId}`, updates));
|
|
571
559
|
}
|
|
572
560
|
async updateQuantity(cartItemId, quantity) {
|
|
573
561
|
const encodedId = encodeURIComponent(cartItemId);
|
|
574
|
-
return
|
|
562
|
+
return safe(
|
|
575
563
|
this.client.patch(`/api/v1/cart/items/${encodedId}`, {
|
|
576
564
|
quantity
|
|
577
565
|
})
|
|
@@ -579,20 +567,20 @@ var CartOperations = class {
|
|
|
579
567
|
}
|
|
580
568
|
async removeItem(cartItemId) {
|
|
581
569
|
const encodedId = encodeURIComponent(cartItemId);
|
|
582
|
-
return
|
|
570
|
+
return safe(this.client.delete(`/api/v1/cart/items/${encodedId}`));
|
|
583
571
|
}
|
|
584
572
|
async clear() {
|
|
585
|
-
return
|
|
573
|
+
return safe(this.client.delete("/api/v1/cart"));
|
|
586
574
|
}
|
|
587
575
|
async applyCoupon(code) {
|
|
588
|
-
return
|
|
576
|
+
return safe(
|
|
589
577
|
this.client.post("/api/v1/cart/coupons", {
|
|
590
578
|
coupon_code: code
|
|
591
579
|
})
|
|
592
580
|
);
|
|
593
581
|
}
|
|
594
582
|
async removeCoupon() {
|
|
595
|
-
return
|
|
583
|
+
return safe(this.client.delete("/api/v1/cart/coupons/current"));
|
|
596
584
|
}
|
|
597
585
|
async isEmpty() {
|
|
598
586
|
const countResult = await this.getCount();
|
|
@@ -1451,20 +1439,6 @@ var CheckoutResolver = class {
|
|
|
1451
1439
|
};
|
|
1452
1440
|
|
|
1453
1441
|
// src/checkout.ts
|
|
1454
|
-
function toCimplifyError3(error) {
|
|
1455
|
-
if (error instanceof CimplifyError) return enrichError(error);
|
|
1456
|
-
if (error instanceof Error) {
|
|
1457
|
-
return enrichError(new CimplifyError(ErrorCode.UNKNOWN_ERROR, error.message, false));
|
|
1458
|
-
}
|
|
1459
|
-
return enrichError(new CimplifyError(ErrorCode.UNKNOWN_ERROR, String(error), false));
|
|
1460
|
-
}
|
|
1461
|
-
async function safe3(promise) {
|
|
1462
|
-
try {
|
|
1463
|
-
return ok(await promise);
|
|
1464
|
-
} catch (error) {
|
|
1465
|
-
return err(toCimplifyError3(error));
|
|
1466
|
-
}
|
|
1467
|
-
}
|
|
1468
1442
|
function toTerminalFailure(code, message, recoverable) {
|
|
1469
1443
|
return {
|
|
1470
1444
|
success: false,
|
|
@@ -1496,7 +1470,7 @@ var CheckoutService = class {
|
|
|
1496
1470
|
...data,
|
|
1497
1471
|
idempotency_key: data.idempotency_key || generateIdempotencyKey()
|
|
1498
1472
|
};
|
|
1499
|
-
const result = await
|
|
1473
|
+
const result = await safe(
|
|
1500
1474
|
this.client.post("/api/v1/checkout", {
|
|
1501
1475
|
checkout_data: checkoutData
|
|
1502
1476
|
})
|
|
@@ -1516,22 +1490,22 @@ var CheckoutService = class {
|
|
|
1516
1490
|
);
|
|
1517
1491
|
}
|
|
1518
1492
|
async submitAuthorization(input) {
|
|
1519
|
-
return
|
|
1493
|
+
return safe(this.client.post("/api/v1/payments/authorization", input));
|
|
1520
1494
|
}
|
|
1521
1495
|
async pollPaymentStatus(orderId) {
|
|
1522
1496
|
const encodedId = encodeURIComponent(orderId);
|
|
1523
1497
|
const tokenParam = this.orderTokenParam(orderId);
|
|
1524
|
-
return
|
|
1498
|
+
return safe(this.client.get(`/api/v1/orders/${encodedId}/payment-status${tokenParam}`));
|
|
1525
1499
|
}
|
|
1526
1500
|
async updateOrderCustomer(orderId, customer) {
|
|
1527
1501
|
const encodedId = encodeURIComponent(orderId);
|
|
1528
1502
|
const tokenParam = this.orderTokenParam(orderId);
|
|
1529
|
-
return
|
|
1503
|
+
return safe(this.client.post(`/api/v1/orders/${encodedId}/customer${tokenParam}`, customer));
|
|
1530
1504
|
}
|
|
1531
1505
|
async verifyPayment(orderId) {
|
|
1532
1506
|
const encodedId = encodeURIComponent(orderId);
|
|
1533
1507
|
const tokenParam = this.orderTokenParam(orderId);
|
|
1534
|
-
return
|
|
1508
|
+
return safe(this.client.post(`/api/v1/orders/${encodedId}/verify-payment${tokenParam}`));
|
|
1535
1509
|
}
|
|
1536
1510
|
async processAndResolve(data) {
|
|
1537
1511
|
data.on_status_change?.("preparing", {});
|
|
@@ -1636,20 +1610,6 @@ var CheckoutService = class {
|
|
|
1636
1610
|
};
|
|
1637
1611
|
|
|
1638
1612
|
// src/orders.ts
|
|
1639
|
-
function toCimplifyError4(error) {
|
|
1640
|
-
if (error instanceof CimplifyError) return enrichError(error);
|
|
1641
|
-
if (error instanceof Error) {
|
|
1642
|
-
return enrichError(new CimplifyError(ErrorCode.UNKNOWN_ERROR, error.message, false));
|
|
1643
|
-
}
|
|
1644
|
-
return enrichError(new CimplifyError(ErrorCode.UNKNOWN_ERROR, String(error), false));
|
|
1645
|
-
}
|
|
1646
|
-
async function safe4(promise) {
|
|
1647
|
-
try {
|
|
1648
|
-
return ok(await promise);
|
|
1649
|
-
} catch (error) {
|
|
1650
|
-
return err(toCimplifyError4(error));
|
|
1651
|
-
}
|
|
1652
|
-
}
|
|
1653
1613
|
var OrderQueries = class {
|
|
1654
1614
|
constructor(client) {
|
|
1655
1615
|
this.client = client;
|
|
@@ -1664,12 +1624,12 @@ var OrderQueries = class {
|
|
|
1664
1624
|
if (options?.limit) params.set("limit", String(options.limit));
|
|
1665
1625
|
if (options?.offset) params.set("offset", String(options.offset));
|
|
1666
1626
|
const path = params.toString() ? `/api/v1/orders?${params.toString()}` : "/api/v1/orders";
|
|
1667
|
-
return
|
|
1627
|
+
return safe(this.client.get(path));
|
|
1668
1628
|
}
|
|
1669
1629
|
async get(orderId) {
|
|
1670
1630
|
const encodedId = encodeURIComponent(orderId);
|
|
1671
1631
|
const tokenParam = this.orderTokenParam(orderId);
|
|
1672
|
-
return
|
|
1632
|
+
return safe(this.client.get(`/api/v1/orders/${encodedId}${tokenParam}`));
|
|
1673
1633
|
}
|
|
1674
1634
|
async getRecent(limit = 5) {
|
|
1675
1635
|
return this.list({ limit });
|
|
@@ -1680,7 +1640,7 @@ var OrderQueries = class {
|
|
|
1680
1640
|
async cancel(orderId, reason) {
|
|
1681
1641
|
const encodedId = encodeURIComponent(orderId);
|
|
1682
1642
|
const tokenParam = this.orderTokenParam(orderId);
|
|
1683
|
-
return
|
|
1643
|
+
return safe(
|
|
1684
1644
|
this.client.post(`/api/v1/orders/${encodedId}/cancel${tokenParam}`, {
|
|
1685
1645
|
reason
|
|
1686
1646
|
})
|
|
@@ -1689,20 +1649,6 @@ var OrderQueries = class {
|
|
|
1689
1649
|
};
|
|
1690
1650
|
|
|
1691
1651
|
// src/link.ts
|
|
1692
|
-
function toCimplifyError5(error) {
|
|
1693
|
-
if (error instanceof CimplifyError) return error;
|
|
1694
|
-
if (error instanceof Error) {
|
|
1695
|
-
return new CimplifyError("UNKNOWN_ERROR", error.message, false);
|
|
1696
|
-
}
|
|
1697
|
-
return new CimplifyError("UNKNOWN_ERROR", String(error), false);
|
|
1698
|
-
}
|
|
1699
|
-
async function safe5(promise) {
|
|
1700
|
-
try {
|
|
1701
|
-
return ok(await promise);
|
|
1702
|
-
} catch (error) {
|
|
1703
|
-
return err(toCimplifyError5(error));
|
|
1704
|
-
}
|
|
1705
|
-
}
|
|
1706
1652
|
function encodePathSegment(value) {
|
|
1707
1653
|
return encodeURIComponent(value);
|
|
1708
1654
|
}
|
|
@@ -1740,13 +1686,13 @@ var LinkService = class {
|
|
|
1740
1686
|
this.client = client;
|
|
1741
1687
|
}
|
|
1742
1688
|
async getProfile() {
|
|
1743
|
-
return
|
|
1689
|
+
return safe(this.client.linkGet("/v1/link/profile"));
|
|
1744
1690
|
}
|
|
1745
1691
|
async requestOtp(input) {
|
|
1746
|
-
return
|
|
1692
|
+
return safe(this.client.linkPost("/v1/link/auth/request-otp", input));
|
|
1747
1693
|
}
|
|
1748
1694
|
async verifyOtp(input) {
|
|
1749
|
-
const result = await
|
|
1695
|
+
const result = await safe(
|
|
1750
1696
|
this.client.linkPost("/v1/link/auth/verify-otp", input)
|
|
1751
1697
|
);
|
|
1752
1698
|
if (result.ok && result.value.session_token) {
|
|
@@ -1755,45 +1701,45 @@ var LinkService = class {
|
|
|
1755
1701
|
return result;
|
|
1756
1702
|
}
|
|
1757
1703
|
async logout() {
|
|
1758
|
-
const result = await
|
|
1704
|
+
const result = await safe(this.client.linkPost("/v1/link/auth/logout"));
|
|
1759
1705
|
if (result.ok) {
|
|
1760
1706
|
this.client.clearSession();
|
|
1761
1707
|
}
|
|
1762
1708
|
return result;
|
|
1763
1709
|
}
|
|
1764
1710
|
async checkStatus(contact) {
|
|
1765
|
-
return
|
|
1711
|
+
return safe(this.client.linkPost("/v1/link/check-status", { contact }));
|
|
1766
1712
|
}
|
|
1767
1713
|
async getLinkData() {
|
|
1768
|
-
return
|
|
1714
|
+
return safe(this.client.linkGet("/v1/link/data"));
|
|
1769
1715
|
}
|
|
1770
1716
|
async getAddresses() {
|
|
1771
|
-
return
|
|
1717
|
+
return safe(this.client.linkGet("/v1/link/addresses"));
|
|
1772
1718
|
}
|
|
1773
1719
|
async getMobileMoney() {
|
|
1774
|
-
return
|
|
1720
|
+
return safe(this.client.linkGet("/v1/link/mobile-money"));
|
|
1775
1721
|
}
|
|
1776
1722
|
async getPreferences() {
|
|
1777
|
-
return
|
|
1723
|
+
return safe(this.client.linkGet("/v1/link/preferences"));
|
|
1778
1724
|
}
|
|
1779
1725
|
async enroll(data) {
|
|
1780
|
-
return
|
|
1726
|
+
return safe(this.client.linkPost("/v1/link/enroll", data));
|
|
1781
1727
|
}
|
|
1782
1728
|
async enrollAndLinkOrder(data) {
|
|
1783
|
-
return
|
|
1729
|
+
return safe(
|
|
1784
1730
|
this.client.linkPost("/v1/link/enroll-and-link-order", data)
|
|
1785
1731
|
);
|
|
1786
1732
|
}
|
|
1787
1733
|
async updatePreferences(preferences) {
|
|
1788
|
-
return
|
|
1734
|
+
return safe(this.client.linkPost("/v1/link/preferences", preferences));
|
|
1789
1735
|
}
|
|
1790
1736
|
async createAddress(input) {
|
|
1791
|
-
return
|
|
1737
|
+
return safe(
|
|
1792
1738
|
this.client.linkPost("/v1/link/addresses", toCreateAddressPayload(input))
|
|
1793
1739
|
);
|
|
1794
1740
|
}
|
|
1795
1741
|
async updateAddress(input) {
|
|
1796
|
-
return
|
|
1742
|
+
return safe(
|
|
1797
1743
|
this.client.linkPost(
|
|
1798
1744
|
`/v1/link/addresses/${encodePathSegment(input.address_id)}`,
|
|
1799
1745
|
toUpdateAddressPayload(input)
|
|
@@ -1801,26 +1747,26 @@ var LinkService = class {
|
|
|
1801
1747
|
);
|
|
1802
1748
|
}
|
|
1803
1749
|
async deleteAddress(addressId) {
|
|
1804
|
-
return
|
|
1750
|
+
return safe(
|
|
1805
1751
|
this.client.linkDelete(`/v1/link/addresses/${encodePathSegment(addressId)}`)
|
|
1806
1752
|
);
|
|
1807
1753
|
}
|
|
1808
1754
|
async setDefaultAddress(addressId) {
|
|
1809
|
-
return
|
|
1755
|
+
return safe(
|
|
1810
1756
|
this.client.linkPost(
|
|
1811
1757
|
`/v1/link/addresses/${encodePathSegment(addressId)}/default`
|
|
1812
1758
|
)
|
|
1813
1759
|
);
|
|
1814
1760
|
}
|
|
1815
1761
|
async trackAddressUsage(addressId) {
|
|
1816
|
-
return
|
|
1762
|
+
return safe(
|
|
1817
1763
|
this.client.linkPost(
|
|
1818
1764
|
`/v1/link/addresses/${encodePathSegment(addressId)}/track-usage`
|
|
1819
1765
|
)
|
|
1820
1766
|
);
|
|
1821
1767
|
}
|
|
1822
1768
|
async createMobileMoney(input) {
|
|
1823
|
-
return
|
|
1769
|
+
return safe(
|
|
1824
1770
|
this.client.linkPost(
|
|
1825
1771
|
"/v1/link/mobile-money",
|
|
1826
1772
|
toCreateMobileMoneyPayload(input)
|
|
@@ -1828,65 +1774,51 @@ var LinkService = class {
|
|
|
1828
1774
|
);
|
|
1829
1775
|
}
|
|
1830
1776
|
async deleteMobileMoney(mobileMoneyId) {
|
|
1831
|
-
return
|
|
1777
|
+
return safe(
|
|
1832
1778
|
this.client.linkDelete(
|
|
1833
1779
|
`/v1/link/mobile-money/${encodePathSegment(mobileMoneyId)}`
|
|
1834
1780
|
)
|
|
1835
1781
|
);
|
|
1836
1782
|
}
|
|
1837
1783
|
async setDefaultMobileMoney(mobileMoneyId) {
|
|
1838
|
-
return
|
|
1784
|
+
return safe(
|
|
1839
1785
|
this.client.linkPost(
|
|
1840
1786
|
`/v1/link/mobile-money/${encodePathSegment(mobileMoneyId)}/default`
|
|
1841
1787
|
)
|
|
1842
1788
|
);
|
|
1843
1789
|
}
|
|
1844
1790
|
async trackMobileMoneyUsage(mobileMoneyId) {
|
|
1845
|
-
return
|
|
1791
|
+
return safe(
|
|
1846
1792
|
this.client.linkPost(
|
|
1847
1793
|
`/v1/link/mobile-money/${encodePathSegment(mobileMoneyId)}/track-usage`
|
|
1848
1794
|
)
|
|
1849
1795
|
);
|
|
1850
1796
|
}
|
|
1851
1797
|
async verifyMobileMoney(mobileMoneyId) {
|
|
1852
|
-
return
|
|
1798
|
+
return safe(
|
|
1853
1799
|
this.client.linkPost(
|
|
1854
1800
|
`/v1/link/mobile-money/${encodePathSegment(mobileMoneyId)}/verify`
|
|
1855
1801
|
)
|
|
1856
1802
|
);
|
|
1857
1803
|
}
|
|
1858
1804
|
async getSessions() {
|
|
1859
|
-
return
|
|
1805
|
+
return safe(this.client.linkGet("/v1/link/sessions"));
|
|
1860
1806
|
}
|
|
1861
1807
|
async revokeSession(sessionId) {
|
|
1862
|
-
return
|
|
1808
|
+
return safe(this.client.linkDelete(`/v1/link/sessions/${sessionId}`));
|
|
1863
1809
|
}
|
|
1864
1810
|
async revokeAllSessions() {
|
|
1865
|
-
return
|
|
1811
|
+
return safe(this.client.linkDelete("/v1/link/sessions"));
|
|
1866
1812
|
}
|
|
1867
1813
|
};
|
|
1868
1814
|
|
|
1869
1815
|
// src/auth.ts
|
|
1870
|
-
function toCimplifyError6(error) {
|
|
1871
|
-
if (error instanceof CimplifyError) return error;
|
|
1872
|
-
if (error instanceof Error) {
|
|
1873
|
-
return new CimplifyError("UNKNOWN_ERROR", error.message, false);
|
|
1874
|
-
}
|
|
1875
|
-
return new CimplifyError("UNKNOWN_ERROR", String(error), false);
|
|
1876
|
-
}
|
|
1877
|
-
async function safe6(promise) {
|
|
1878
|
-
try {
|
|
1879
|
-
return ok(await promise);
|
|
1880
|
-
} catch (error) {
|
|
1881
|
-
return err(toCimplifyError6(error));
|
|
1882
|
-
}
|
|
1883
|
-
}
|
|
1884
1816
|
var AuthService = class {
|
|
1885
1817
|
constructor(client) {
|
|
1886
1818
|
this.client = client;
|
|
1887
1819
|
}
|
|
1888
1820
|
async getStatus() {
|
|
1889
|
-
return
|
|
1821
|
+
return safe(this.client.get("/api/v1/auth/status"));
|
|
1890
1822
|
}
|
|
1891
1823
|
async getCurrentUser() {
|
|
1892
1824
|
const result = await this.getStatus();
|
|
@@ -1899,7 +1831,7 @@ var AuthService = class {
|
|
|
1899
1831
|
return ok(result.value.is_authenticated);
|
|
1900
1832
|
}
|
|
1901
1833
|
async requestOtp(contact, contactType) {
|
|
1902
|
-
return
|
|
1834
|
+
return safe(
|
|
1903
1835
|
this.client.post("/api/v1/auth/request-otp", {
|
|
1904
1836
|
contact,
|
|
1905
1837
|
contact_type: contactType
|
|
@@ -1907,7 +1839,7 @@ var AuthService = class {
|
|
|
1907
1839
|
);
|
|
1908
1840
|
}
|
|
1909
1841
|
async verifyOtp(code, contact) {
|
|
1910
|
-
return
|
|
1842
|
+
return safe(
|
|
1911
1843
|
this.client.post("/api/v1/auth/verify-otp", {
|
|
1912
1844
|
otp_code: code,
|
|
1913
1845
|
contact
|
|
@@ -1915,48 +1847,34 @@ var AuthService = class {
|
|
|
1915
1847
|
);
|
|
1916
1848
|
}
|
|
1917
1849
|
async logout() {
|
|
1918
|
-
return
|
|
1850
|
+
return safe(this.client.post("/api/v1/auth/logout"));
|
|
1919
1851
|
}
|
|
1920
1852
|
async updateProfile(input) {
|
|
1921
|
-
return
|
|
1853
|
+
return safe(this.client.post("/api/v1/auth/profile", input));
|
|
1922
1854
|
}
|
|
1923
1855
|
};
|
|
1924
1856
|
|
|
1925
1857
|
// src/business.ts
|
|
1926
|
-
function toCimplifyError7(error) {
|
|
1927
|
-
if (error instanceof CimplifyError) return enrichError(error);
|
|
1928
|
-
if (error instanceof Error) {
|
|
1929
|
-
return enrichError(new CimplifyError(ErrorCode.UNKNOWN_ERROR, error.message, false));
|
|
1930
|
-
}
|
|
1931
|
-
return enrichError(new CimplifyError(ErrorCode.UNKNOWN_ERROR, String(error), false));
|
|
1932
|
-
}
|
|
1933
|
-
async function safe7(promise) {
|
|
1934
|
-
try {
|
|
1935
|
-
return ok(await promise);
|
|
1936
|
-
} catch (error) {
|
|
1937
|
-
return err(toCimplifyError7(error));
|
|
1938
|
-
}
|
|
1939
|
-
}
|
|
1940
1858
|
var BusinessService = class {
|
|
1941
1859
|
constructor(client) {
|
|
1942
1860
|
this.client = client;
|
|
1943
1861
|
}
|
|
1944
1862
|
async getInfo() {
|
|
1945
|
-
return
|
|
1863
|
+
return safe(this.client.get("/api/v1/business"));
|
|
1946
1864
|
}
|
|
1947
1865
|
async getByHandle(handle) {
|
|
1948
1866
|
const encodedHandle = encodeURIComponent(handle);
|
|
1949
|
-
return
|
|
1867
|
+
return safe(this.client.get(`/api/v1/business/by-handle/${encodedHandle}`));
|
|
1950
1868
|
}
|
|
1951
1869
|
async getByDomain(domain) {
|
|
1952
1870
|
const encodedDomain = encodeURIComponent(domain);
|
|
1953
|
-
return
|
|
1871
|
+
return safe(this.client.get(`/api/v1/business/by-domain?domain=${encodedDomain}`));
|
|
1954
1872
|
}
|
|
1955
1873
|
async getSettings() {
|
|
1956
|
-
return
|
|
1874
|
+
return safe(this.client.get("/api/v1/business/settings"));
|
|
1957
1875
|
}
|
|
1958
1876
|
async getLocations() {
|
|
1959
|
-
return
|
|
1877
|
+
return safe(this.client.get("/api/v1/business/locations"));
|
|
1960
1878
|
}
|
|
1961
1879
|
async getLocation(locationId) {
|
|
1962
1880
|
const result = await this.getLocations();
|
|
@@ -1968,7 +1886,7 @@ var BusinessService = class {
|
|
|
1968
1886
|
return ok(location);
|
|
1969
1887
|
}
|
|
1970
1888
|
async getHours() {
|
|
1971
|
-
return
|
|
1889
|
+
return safe(this.client.get("/api/v1/business/hours"));
|
|
1972
1890
|
}
|
|
1973
1891
|
async getLocationHours(locationId) {
|
|
1974
1892
|
const result = await this.getHours();
|
|
@@ -1976,25 +1894,11 @@ var BusinessService = class {
|
|
|
1976
1894
|
return ok(result.value.filter((hour) => hour.location_id === locationId));
|
|
1977
1895
|
}
|
|
1978
1896
|
async getBootstrap() {
|
|
1979
|
-
return
|
|
1897
|
+
return safe(this.client.get("/api/v1/bootstrap"));
|
|
1980
1898
|
}
|
|
1981
1899
|
};
|
|
1982
1900
|
|
|
1983
1901
|
// src/inventory.ts
|
|
1984
|
-
function toCimplifyError8(error) {
|
|
1985
|
-
if (error instanceof CimplifyError) return error;
|
|
1986
|
-
if (error instanceof Error) {
|
|
1987
|
-
return new CimplifyError("UNKNOWN_ERROR", error.message, false);
|
|
1988
|
-
}
|
|
1989
|
-
return new CimplifyError("UNKNOWN_ERROR", String(error), false);
|
|
1990
|
-
}
|
|
1991
|
-
async function safe8(promise) {
|
|
1992
|
-
try {
|
|
1993
|
-
return ok(await promise);
|
|
1994
|
-
} catch (error) {
|
|
1995
|
-
return err(toCimplifyError8(error));
|
|
1996
|
-
}
|
|
1997
|
-
}
|
|
1998
1902
|
var InventoryService = class {
|
|
1999
1903
|
constructor(client) {
|
|
2000
1904
|
this.client = client;
|
|
@@ -2013,14 +1917,14 @@ var InventoryService = class {
|
|
|
2013
1917
|
const path = this.withQuery(`/api/v1/inventory/products/${encodedId}/stock`, {
|
|
2014
1918
|
location_id: locationId
|
|
2015
1919
|
});
|
|
2016
|
-
return
|
|
1920
|
+
return safe(this.client.get(path));
|
|
2017
1921
|
}
|
|
2018
1922
|
async getVariantStock(variantId, locationId) {
|
|
2019
1923
|
const encodedId = encodeURIComponent(variantId);
|
|
2020
1924
|
const path = this.withQuery(`/api/v1/inventory/variants/${encodedId}/stock`, {
|
|
2021
1925
|
location_id: locationId
|
|
2022
1926
|
});
|
|
2023
|
-
return
|
|
1927
|
+
return safe(this.client.get(path));
|
|
2024
1928
|
}
|
|
2025
1929
|
async checkProductAvailability(productId, quantity, locationId) {
|
|
2026
1930
|
const encodedId = encodeURIComponent(productId);
|
|
@@ -2028,7 +1932,7 @@ var InventoryService = class {
|
|
|
2028
1932
|
quantity,
|
|
2029
1933
|
location_id: locationId
|
|
2030
1934
|
});
|
|
2031
|
-
return
|
|
1935
|
+
return safe(this.client.get(path));
|
|
2032
1936
|
}
|
|
2033
1937
|
async checkVariantAvailability(variantId, quantity, locationId) {
|
|
2034
1938
|
const encodedId = encodeURIComponent(variantId);
|
|
@@ -2036,7 +1940,7 @@ var InventoryService = class {
|
|
|
2036
1940
|
quantity,
|
|
2037
1941
|
location_id: locationId
|
|
2038
1942
|
});
|
|
2039
|
-
return
|
|
1943
|
+
return safe(this.client.get(path));
|
|
2040
1944
|
}
|
|
2041
1945
|
async checkMultipleAvailability(items, locationId) {
|
|
2042
1946
|
const results = await Promise.all(
|
|
@@ -2062,20 +1966,6 @@ var InventoryService = class {
|
|
|
2062
1966
|
};
|
|
2063
1967
|
|
|
2064
1968
|
// src/scheduling.ts
|
|
2065
|
-
function toCimplifyError9(error) {
|
|
2066
|
-
if (error instanceof CimplifyError) return error;
|
|
2067
|
-
if (error instanceof Error) {
|
|
2068
|
-
return new CimplifyError("UNKNOWN_ERROR", error.message, false);
|
|
2069
|
-
}
|
|
2070
|
-
return new CimplifyError("UNKNOWN_ERROR", String(error), false);
|
|
2071
|
-
}
|
|
2072
|
-
async function safe9(promise) {
|
|
2073
|
-
try {
|
|
2074
|
-
return ok(await promise);
|
|
2075
|
-
} catch (error) {
|
|
2076
|
-
return err(toCimplifyError9(error));
|
|
2077
|
-
}
|
|
2078
|
-
}
|
|
2079
1969
|
function withQuery2(path, params) {
|
|
2080
1970
|
const searchParams = new URLSearchParams();
|
|
2081
1971
|
for (const [key, value] of Object.entries(params)) {
|
|
@@ -2093,11 +1983,11 @@ var SchedulingService = class {
|
|
|
2093
1983
|
this.client = client;
|
|
2094
1984
|
}
|
|
2095
1985
|
async getServices() {
|
|
2096
|
-
return
|
|
1986
|
+
return safe(this.client.get("/api/v1/scheduling/services"));
|
|
2097
1987
|
}
|
|
2098
1988
|
async getService(serviceId) {
|
|
2099
1989
|
const encodedId = encodeURIComponent(serviceId);
|
|
2100
|
-
return
|
|
1990
|
+
return safe(this.client.get(`/api/v1/scheduling/services/${encodedId}`));
|
|
2101
1991
|
}
|
|
2102
1992
|
async getAvailableSlots(input) {
|
|
2103
1993
|
const path = withQuery2("/api/v1/scheduling/slots", {
|
|
@@ -2106,7 +1996,7 @@ var SchedulingService = class {
|
|
|
2106
1996
|
participant_count: input.participant_count,
|
|
2107
1997
|
duration_minutes: input.duration_minutes
|
|
2108
1998
|
});
|
|
2109
|
-
return
|
|
1999
|
+
return safe(this.client.get(path));
|
|
2110
2000
|
}
|
|
2111
2001
|
async checkSlotAvailability(input) {
|
|
2112
2002
|
const path = withQuery2("/api/v1/scheduling/slots/check", {
|
|
@@ -2115,7 +2005,7 @@ var SchedulingService = class {
|
|
|
2115
2005
|
duration_minutes: input.duration_minutes,
|
|
2116
2006
|
participant_count: input.participant_count
|
|
2117
2007
|
});
|
|
2118
|
-
return
|
|
2008
|
+
return safe(this.client.get(path));
|
|
2119
2009
|
}
|
|
2120
2010
|
async getServiceAvailability(params) {
|
|
2121
2011
|
const path = withQuery2("/api/v1/scheduling/availability", {
|
|
@@ -2125,17 +2015,17 @@ var SchedulingService = class {
|
|
|
2125
2015
|
location_id: params.location_id,
|
|
2126
2016
|
participant_count: params.participant_count
|
|
2127
2017
|
});
|
|
2128
|
-
return
|
|
2018
|
+
return safe(this.client.get(path));
|
|
2129
2019
|
}
|
|
2130
2020
|
async getBooking(bookingId) {
|
|
2131
2021
|
const encodedId = encodeURIComponent(bookingId);
|
|
2132
|
-
return
|
|
2022
|
+
return safe(this.client.get(`/api/v1/scheduling/bookings/${encodedId}`));
|
|
2133
2023
|
}
|
|
2134
2024
|
async getCustomerBookings(customerId) {
|
|
2135
2025
|
const path = withQuery2("/api/v1/scheduling/bookings", {
|
|
2136
2026
|
customer_id: customerId
|
|
2137
2027
|
});
|
|
2138
|
-
return
|
|
2028
|
+
return safe(this.client.get(path));
|
|
2139
2029
|
}
|
|
2140
2030
|
async getUpcomingBookings() {
|
|
2141
2031
|
const result = await this.getCustomerBookings();
|
|
@@ -2154,14 +2044,14 @@ var SchedulingService = class {
|
|
|
2154
2044
|
}
|
|
2155
2045
|
async cancelBooking(input) {
|
|
2156
2046
|
const encodedId = encodeURIComponent(input.booking_id);
|
|
2157
|
-
return
|
|
2047
|
+
return safe(
|
|
2158
2048
|
this.client.post(`/api/v1/scheduling/bookings/${encodedId}/cancel`, {
|
|
2159
2049
|
reason: input.reason
|
|
2160
2050
|
})
|
|
2161
2051
|
);
|
|
2162
2052
|
}
|
|
2163
2053
|
async rescheduleBooking(input) {
|
|
2164
|
-
return
|
|
2054
|
+
return safe(
|
|
2165
2055
|
this.client.post("/api/v1/scheduling/bookings/reschedule", input)
|
|
2166
2056
|
);
|
|
2167
2057
|
}
|
|
@@ -2185,65 +2075,37 @@ var SchedulingService = class {
|
|
|
2185
2075
|
};
|
|
2186
2076
|
|
|
2187
2077
|
// src/lite.ts
|
|
2188
|
-
function toCimplifyError10(error) {
|
|
2189
|
-
if (error instanceof CimplifyError) return error;
|
|
2190
|
-
if (error instanceof Error) {
|
|
2191
|
-
return new CimplifyError("UNKNOWN_ERROR", error.message, false);
|
|
2192
|
-
}
|
|
2193
|
-
return new CimplifyError("UNKNOWN_ERROR", String(error), false);
|
|
2194
|
-
}
|
|
2195
|
-
async function safe10(promise) {
|
|
2196
|
-
try {
|
|
2197
|
-
return ok(await promise);
|
|
2198
|
-
} catch (error) {
|
|
2199
|
-
return err(toCimplifyError10(error));
|
|
2200
|
-
}
|
|
2201
|
-
}
|
|
2202
2078
|
var LiteService = class {
|
|
2203
2079
|
constructor(client) {
|
|
2204
2080
|
this.client = client;
|
|
2205
2081
|
}
|
|
2206
2082
|
async getBootstrap() {
|
|
2207
|
-
return
|
|
2083
|
+
return safe(this.client.get("/api/v1/lite/bootstrap"));
|
|
2208
2084
|
}
|
|
2209
2085
|
async getTable(tableId) {
|
|
2210
2086
|
const encodedId = encodeURIComponent(tableId);
|
|
2211
|
-
return
|
|
2087
|
+
return safe(this.client.get(`/api/v1/lite/tables/${encodedId}`));
|
|
2212
2088
|
}
|
|
2213
2089
|
async getMenu() {
|
|
2214
|
-
return
|
|
2090
|
+
return safe(this.client.get("/api/v1/lite/menu"));
|
|
2215
2091
|
}
|
|
2216
2092
|
async getMenuByCategory(categoryId) {
|
|
2217
2093
|
const encodedId = encodeURIComponent(categoryId);
|
|
2218
|
-
return
|
|
2094
|
+
return safe(this.client.get(`/api/v1/lite/menu/categories/${encodedId}`));
|
|
2219
2095
|
}
|
|
2220
2096
|
};
|
|
2221
2097
|
|
|
2222
2098
|
// src/fx.ts
|
|
2223
|
-
function toCimplifyError11(error) {
|
|
2224
|
-
if (error instanceof CimplifyError) return error;
|
|
2225
|
-
if (error instanceof Error) {
|
|
2226
|
-
return new CimplifyError("UNKNOWN_ERROR", error.message, false);
|
|
2227
|
-
}
|
|
2228
|
-
return new CimplifyError("UNKNOWN_ERROR", String(error), false);
|
|
2229
|
-
}
|
|
2230
|
-
async function safe11(promise) {
|
|
2231
|
-
try {
|
|
2232
|
-
return ok(await promise);
|
|
2233
|
-
} catch (error) {
|
|
2234
|
-
return err(toCimplifyError11(error));
|
|
2235
|
-
}
|
|
2236
|
-
}
|
|
2237
2099
|
var FxService = class {
|
|
2238
2100
|
constructor(client) {
|
|
2239
2101
|
this.client = client;
|
|
2240
2102
|
}
|
|
2241
2103
|
async getRate(from, to) {
|
|
2242
2104
|
const path = `/api/v1/fx/rate?from=${encodeURIComponent(from)}&to=${encodeURIComponent(to)}`;
|
|
2243
|
-
return
|
|
2105
|
+
return safe(this.client.get(path));
|
|
2244
2106
|
}
|
|
2245
2107
|
async lockQuote(request) {
|
|
2246
|
-
return
|
|
2108
|
+
return safe(this.client.post("/api/v1/fx/quotes", request));
|
|
2247
2109
|
}
|
|
2248
2110
|
};
|
|
2249
2111
|
|
|
@@ -2358,6 +2220,11 @@ var CimplifyElements = class {
|
|
|
2358
2220
|
window.addEventListener("message", this.boundHandleMessage);
|
|
2359
2221
|
}
|
|
2360
2222
|
}
|
|
2223
|
+
debug(...args) {
|
|
2224
|
+
if (this.client.isTestMode()) {
|
|
2225
|
+
console.debug(...args);
|
|
2226
|
+
}
|
|
2227
|
+
}
|
|
2361
2228
|
create(type, options = {}) {
|
|
2362
2229
|
const existing = this.elements.get(type);
|
|
2363
2230
|
if (existing) return existing;
|
|
@@ -2412,9 +2279,9 @@ var CimplifyElements = class {
|
|
|
2412
2279
|
processCheckout(options) {
|
|
2413
2280
|
let abortFn = null;
|
|
2414
2281
|
const task = (async () => {
|
|
2415
|
-
|
|
2282
|
+
this.debug("[cimplify:checkout] processCheckout called", { cart_id: options.cart_id, order_type: options.order_type, location_id: options.location_id });
|
|
2416
2283
|
if (this.checkoutInProgress) {
|
|
2417
|
-
|
|
2284
|
+
this.debug("[cimplify:checkout] BLOCKED: already processing");
|
|
2418
2285
|
return toCheckoutError(
|
|
2419
2286
|
"ALREADY_PROCESSING",
|
|
2420
2287
|
"Checkout is already in progress.",
|
|
@@ -2423,7 +2290,7 @@ var CimplifyElements = class {
|
|
|
2423
2290
|
}
|
|
2424
2291
|
this.checkoutInProgress = true;
|
|
2425
2292
|
if (!options.cart_id) {
|
|
2426
|
-
|
|
2293
|
+
this.debug("[cimplify:checkout] BLOCKED: no cart_id");
|
|
2427
2294
|
this.checkoutInProgress = false;
|
|
2428
2295
|
return toCheckoutError(
|
|
2429
2296
|
"INVALID_CART",
|
|
@@ -2432,7 +2299,7 @@ var CimplifyElements = class {
|
|
|
2432
2299
|
);
|
|
2433
2300
|
}
|
|
2434
2301
|
if (!options.order_type) {
|
|
2435
|
-
|
|
2302
|
+
this.debug("[cimplify:checkout] BLOCKED: no order_type");
|
|
2436
2303
|
this.checkoutInProgress = false;
|
|
2437
2304
|
return toCheckoutError(
|
|
2438
2305
|
"ORDER_TYPE_REQUIRED",
|
|
@@ -2442,7 +2309,7 @@ var CimplifyElements = class {
|
|
|
2442
2309
|
}
|
|
2443
2310
|
const checkoutElement = this.elements.get(ELEMENT_TYPES.CHECKOUT) || this.elements.get(ELEMENT_TYPES.PAYMENT);
|
|
2444
2311
|
if (!checkoutElement) {
|
|
2445
|
-
|
|
2312
|
+
this.debug("[cimplify:checkout] BLOCKED: no checkout element");
|
|
2446
2313
|
this.checkoutInProgress = false;
|
|
2447
2314
|
return toCheckoutError(
|
|
2448
2315
|
"NO_PAYMENT_ELEMENT",
|
|
@@ -2451,7 +2318,7 @@ var CimplifyElements = class {
|
|
|
2451
2318
|
);
|
|
2452
2319
|
}
|
|
2453
2320
|
if (!checkoutElement.isMounted()) {
|
|
2454
|
-
|
|
2321
|
+
this.debug("[cimplify:checkout] BLOCKED: checkout element not mounted");
|
|
2455
2322
|
this.checkoutInProgress = false;
|
|
2456
2323
|
return toCheckoutError(
|
|
2457
2324
|
"PAYMENT_NOT_MOUNTED",
|
|
@@ -2463,7 +2330,7 @@ var CimplifyElements = class {
|
|
|
2463
2330
|
if (!isUnifiedCheckout) {
|
|
2464
2331
|
const authElement = this.elements.get(ELEMENT_TYPES.AUTH);
|
|
2465
2332
|
if (authElement && !this.accessToken) {
|
|
2466
|
-
|
|
2333
|
+
this.debug("[cimplify:checkout] BLOCKED: auth incomplete");
|
|
2467
2334
|
this.checkoutInProgress = false;
|
|
2468
2335
|
return toCheckoutError(
|
|
2469
2336
|
"AUTH_INCOMPLETE",
|
|
@@ -2473,13 +2340,13 @@ var CimplifyElements = class {
|
|
|
2473
2340
|
}
|
|
2474
2341
|
const addressElement = this.elements.get(ELEMENT_TYPES.ADDRESS);
|
|
2475
2342
|
if (addressElement) {
|
|
2476
|
-
|
|
2343
|
+
this.debug("[cimplify:checkout] getting address data...");
|
|
2477
2344
|
await addressElement.getData();
|
|
2478
|
-
|
|
2345
|
+
this.debug("[cimplify:checkout] address data resolved", this.addressData);
|
|
2479
2346
|
}
|
|
2480
2347
|
await this.hydrateCustomerData();
|
|
2481
2348
|
}
|
|
2482
|
-
|
|
2349
|
+
this.debug("[cimplify:checkout] customer data hydrated", { customerData: this.customerData, accountId: this.accountId, isUnifiedCheckout });
|
|
2483
2350
|
const processMessage = {
|
|
2484
2351
|
type: MESSAGE_TYPES.PROCESS_CHECKOUT,
|
|
2485
2352
|
cart_id: options.cart_id,
|
|
@@ -2555,7 +2422,7 @@ var CimplifyElements = class {
|
|
|
2555
2422
|
return;
|
|
2556
2423
|
}
|
|
2557
2424
|
if (message.type === MESSAGE_TYPES.CHECKOUT_COMPLETE) {
|
|
2558
|
-
|
|
2425
|
+
this.debug("[cimplify:checkout] received checkout_complete", { success: message.success, error: message.error });
|
|
2559
2426
|
settle({
|
|
2560
2427
|
success: message.success,
|
|
2561
2428
|
order: message.order,
|
|
@@ -2578,9 +2445,9 @@ var CimplifyElements = class {
|
|
|
2578
2445
|
);
|
|
2579
2446
|
};
|
|
2580
2447
|
this.activeCheckoutAbort = abortFn;
|
|
2581
|
-
|
|
2448
|
+
this.debug("[cimplify:checkout] sending process_checkout to checkout iframe", { cart_id: processMessage.cart_id, order_type: processMessage.order_type, hasCustomer: !!processMessage.customer, hasAddress: !!processMessage.address, isUnifiedCheckout });
|
|
2582
2449
|
checkoutElement.sendMessage(processMessage);
|
|
2583
|
-
|
|
2450
|
+
this.debug("[cimplify:checkout] postMessage sent, waiting for checkout_complete...");
|
|
2584
2451
|
});
|
|
2585
2452
|
})();
|
|
2586
2453
|
const abortable = task;
|