@cimplify/sdk 0.45.3 → 0.45.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/dist/advanced.d.mts +3 -2
- package/dist/advanced.d.ts +3 -2
- package/dist/{chunk-J7BUGTAG.mjs → chunk-IF22UYTT.mjs} +1 -1
- package/dist/{chunk-B2MJQ7SU.js → chunk-K6FCVLZA.js} +999 -1
- package/dist/{chunk-ZTPP7PDU.mjs → chunk-RQ3ILHUQ.mjs} +999 -1
- package/dist/{chunk-KD2HHETX.js → chunk-ZH6ZST5T.js} +2 -2
- package/dist/{client-DjzIoewX.d.ts → client-BDYBB-ME.d.ts} +2 -2
- package/dist/{client-C5LcbNxL.d.mts → client-CDUY-6nC.d.mts} +2 -1
- package/dist/{client-EM8xKCPO.d.mts → client-MUD63aYS.d.mts} +2 -2
- package/dist/{client-Bsd4Vi_y.d.ts → client-aZInadOY.d.ts} +2 -1
- package/dist/{index-yMe4VZqR.d.mts → index-3C9J8Wb-.d.mts} +3 -2
- package/dist/{index-PbBuEWp7.d.ts → index-DC_ZcSgO.d.ts} +3 -2
- package/dist/index.d.mts +6 -5
- package/dist/index.d.ts +6 -5
- package/dist/mock/cli.mjs +999 -1
- package/dist/mock/library.d.mts +2 -2
- package/dist/mock/library.d.ts +2 -2
- package/dist/mock/library.js +999 -1
- package/dist/mock/library.mjs +999 -1
- package/dist/mock/msw.d.mts +1 -1
- package/dist/mock/msw.d.ts +1 -1
- package/dist/mock/msw.js +999 -1
- package/dist/mock/msw.mjs +999 -1
- package/dist/payment-Bse2XJ-c.d.mts +113 -0
- package/dist/payment-JcNqOf_T.d.ts +113 -0
- package/dist/{price-DMijJ6_3.d.mts → price-YBGk5seG.d.mts} +1 -1
- package/dist/{price-DmQTOnjj.d.ts → price-mHkRncgW.d.ts} +1 -1
- package/dist/{payment-4JSLNTVM.d.mts → product-DiX-HGkT.d.mts} +1 -111
- package/dist/{payment-4JSLNTVM.d.ts → product-DiX-HGkT.d.ts} +1 -111
- package/dist/react.d.mts +4 -3
- package/dist/react.d.ts +4 -3
- package/dist/{server-UARbamIZ.d.mts → server-Bg3VtA1D.d.ts} +10 -1
- package/dist/{server-Bs295U0t.d.mts → server-CzthOeYS.d.mts} +43 -1
- package/dist/{server-Bs295U0t.d.ts → server-CzthOeYS.d.ts} +43 -1
- package/dist/{server-UARbamIZ.d.ts → server-kakjHRgj.d.mts} +10 -1
- package/dist/server.d.mts +4 -3
- package/dist/server.d.ts +4 -3
- package/dist/testing/msw.d.mts +2 -1
- package/dist/testing/msw.d.ts +2 -1
- package/dist/testing/msw.js +2 -2
- package/dist/testing/msw.mjs +1 -1
- package/dist/testing/suite.d.mts +6 -5
- package/dist/testing/suite.d.ts +6 -5
- package/dist/testing/suite.js +21 -21
- package/dist/testing/suite.mjs +2 -2
- package/dist/testing.d.mts +5 -4
- package/dist/testing.d.ts +5 -4
- package/dist/testing.js +77 -77
- package/dist/testing.mjs +3 -3
- package/dist/utils.d.mts +4 -3
- package/dist/utils.d.ts +4 -3
- package/package.json +1 -1
|
@@ -66,6 +66,40 @@ interface Store<T> {
|
|
|
66
66
|
loadJSON(data: Record<string, T>): void;
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
+
declare const __money: unique symbol;
|
|
70
|
+
type Money = number & {
|
|
71
|
+
readonly [__money]: true;
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
type InputFieldType = "text" | "textarea" | "number" | "select" | "radio" | "checkbox" | "color" | "date" | "file" | "image" | "url" | "address" | "phone" | "email" | "date_time" | "time" | "signature" | "multi_select" | "date_range" | "location";
|
|
75
|
+
interface InputFieldValidation {
|
|
76
|
+
max_length?: number;
|
|
77
|
+
min_length?: number;
|
|
78
|
+
min_value?: number;
|
|
79
|
+
max_value?: number;
|
|
80
|
+
accepted_formats?: string[];
|
|
81
|
+
max_size_mb?: number;
|
|
82
|
+
pattern?: string;
|
|
83
|
+
allowed_countries?: string[];
|
|
84
|
+
max_selections?: number;
|
|
85
|
+
}
|
|
86
|
+
type SemanticKind = "allergen" | "dietary_preference" | "sensitivity" | "consent";
|
|
87
|
+
interface ProductInputField {
|
|
88
|
+
id: string;
|
|
89
|
+
product_id: string;
|
|
90
|
+
name: string;
|
|
91
|
+
slug: string;
|
|
92
|
+
field_type: InputFieldType;
|
|
93
|
+
is_required: boolean;
|
|
94
|
+
display_order: number;
|
|
95
|
+
placeholder?: string;
|
|
96
|
+
help_text?: string;
|
|
97
|
+
validation?: InputFieldValidation;
|
|
98
|
+
options?: string[];
|
|
99
|
+
price_adjustment?: Money;
|
|
100
|
+
semantic_kind?: SemanticKind;
|
|
101
|
+
}
|
|
102
|
+
|
|
69
103
|
interface Session {
|
|
70
104
|
id: string;
|
|
71
105
|
token: string;
|
|
@@ -167,6 +201,14 @@ interface MockProduct {
|
|
|
167
201
|
duration_minutes?: number;
|
|
168
202
|
/** For subscription services — billing plans. */
|
|
169
203
|
billing_plans?: MockBillingPlan[];
|
|
204
|
+
/**
|
|
205
|
+
* Per-product customer input fields. Surfaced as ProductView.input_fields
|
|
206
|
+
* on the wire so the SDK's product UIs can render the right input
|
|
207
|
+
* controls (file upload for prescriptions, date for DOB, signature for
|
|
208
|
+
* consent, etc.). Same shape the Rust backend already emits
|
|
209
|
+
* (`src/salesman/models/view.rs::ProductView.input_fields`).
|
|
210
|
+
*/
|
|
211
|
+
input_fields?: ProductInputField[];
|
|
170
212
|
metadata?: Record<string, unknown>;
|
|
171
213
|
created_at: string;
|
|
172
214
|
updated_at: string;
|
|
@@ -1063,7 +1105,7 @@ interface LinkService {
|
|
|
1063
1105
|
revokeAllSessions(customerId: string): number;
|
|
1064
1106
|
}
|
|
1065
1107
|
|
|
1066
|
-
type SeedName = "default" | "empty" | "reesa-storefront" | "restaurant" | "retail" | "services" | "grocery" | "fashion";
|
|
1108
|
+
type SeedName = "default" | "empty" | "reesa-storefront" | "restaurant" | "retail" | "services" | "grocery" | "fashion" | "pharmacy" | "auto";
|
|
1067
1109
|
declare function applySeed(registry: StateRegistry, name: SeedName): {
|
|
1068
1110
|
businessId: string;
|
|
1069
1111
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Hono } from 'hono';
|
|
2
|
+
import { a4 as ProductInputField } from './product-DiX-HGkT.mjs';
|
|
2
3
|
|
|
3
4
|
interface Clock {
|
|
4
5
|
now(): Date;
|
|
@@ -167,6 +168,14 @@ interface MockProduct {
|
|
|
167
168
|
duration_minutes?: number;
|
|
168
169
|
/** For subscription services — billing plans. */
|
|
169
170
|
billing_plans?: MockBillingPlan[];
|
|
171
|
+
/**
|
|
172
|
+
* Per-product customer input fields. Surfaced as ProductView.input_fields
|
|
173
|
+
* on the wire so the SDK's product UIs can render the right input
|
|
174
|
+
* controls (file upload for prescriptions, date for DOB, signature for
|
|
175
|
+
* consent, etc.). Same shape the Rust backend already emits
|
|
176
|
+
* (`src/salesman/models/view.rs::ProductView.input_fields`).
|
|
177
|
+
*/
|
|
178
|
+
input_fields?: ProductInputField[];
|
|
170
179
|
metadata?: Record<string, unknown>;
|
|
171
180
|
created_at: string;
|
|
172
181
|
updated_at: string;
|
|
@@ -1063,7 +1072,7 @@ interface LinkService {
|
|
|
1063
1072
|
revokeAllSessions(customerId: string): number;
|
|
1064
1073
|
}
|
|
1065
1074
|
|
|
1066
|
-
type SeedName = "default" | "empty" | "reesa-storefront" | "restaurant" | "retail" | "services" | "grocery" | "fashion";
|
|
1075
|
+
type SeedName = "default" | "empty" | "reesa-storefront" | "restaurant" | "retail" | "services" | "grocery" | "fashion" | "pharmacy" | "auto";
|
|
1067
1076
|
|
|
1068
1077
|
interface MockOptions {
|
|
1069
1078
|
seed?: SeedName;
|
package/dist/server.d.mts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { C as CimplifyClient } from './client-
|
|
2
|
-
export { aN as Result } from './client-
|
|
3
|
-
export { an as Category, h as CimplifyError, ap as Collection, U as Product, a8 as ProductWithDetails } from './
|
|
1
|
+
import { C as CimplifyClient } from './client-CDUY-6nC.mjs';
|
|
2
|
+
export { aN as Result } from './client-CDUY-6nC.mjs';
|
|
3
|
+
export { an as Category, h as CimplifyError, ap as Collection, U as Product, a8 as ProductWithDetails } from './product-DiX-HGkT.mjs';
|
|
4
|
+
import './payment-Bse2XJ-c.mjs';
|
|
4
5
|
|
|
5
6
|
interface ServerClientOptions {
|
|
6
7
|
/**
|
package/dist/server.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { C as CimplifyClient } from './client-
|
|
2
|
-
export { aN as Result } from './client-
|
|
3
|
-
export { an as Category, h as CimplifyError, ap as Collection, U as Product, a8 as ProductWithDetails } from './
|
|
1
|
+
import { C as CimplifyClient } from './client-aZInadOY.js';
|
|
2
|
+
export { aN as Result } from './client-aZInadOY.js';
|
|
3
|
+
export { an as Category, h as CimplifyError, ap as Collection, U as Product, a8 as ProductWithDetails } from './product-DiX-HGkT.js';
|
|
4
|
+
import './payment-JcNqOf_T.js';
|
|
4
5
|
|
|
5
6
|
interface ServerClientOptions {
|
|
6
7
|
/**
|
package/dist/testing/msw.d.mts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { A as AppHandle, C as CreateAppOptions } from '../server-
|
|
1
|
+
import { A as AppHandle, C as CreateAppOptions } from '../server-kakjHRgj.mjs';
|
|
2
2
|
import 'hono';
|
|
3
|
+
import '../product-DiX-HGkT.mjs';
|
|
3
4
|
|
|
4
5
|
interface MswHandlerSetup {
|
|
5
6
|
handlers: unknown[];
|
package/dist/testing/msw.d.ts
CHANGED
package/dist/testing/msw.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkK6FCVLZA_js = require('../chunk-K6FCVLZA.js');
|
|
4
4
|
require('../chunk-QBQCMQ4F.js');
|
|
5
5
|
|
|
6
6
|
// src/mock/msw.ts
|
|
7
7
|
async function createMswHandlers(options = {}) {
|
|
8
8
|
const baseUrl = options.baseUrl ?? "http://localhost:8787";
|
|
9
|
-
const handle =
|
|
9
|
+
const handle = chunkK6FCVLZA_js.createMockApp(options);
|
|
10
10
|
const msw = await import('msw').catch(() => {
|
|
11
11
|
throw new Error("msw is required to use @cimplify/sdk/mock/msw \u2014 install it as a peer dependency");
|
|
12
12
|
});
|
package/dist/testing/msw.mjs
CHANGED
package/dist/testing/suite.d.mts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { TestAPI } from 'vitest';
|
|
2
|
-
import { T as TestClientHandle } from '../client-
|
|
3
|
-
import { C as CreateAppOptions } from '../server-
|
|
4
|
-
export { S as SeedName } from '../server-
|
|
5
|
-
import '../client-
|
|
6
|
-
import '../
|
|
2
|
+
import { T as TestClientHandle } from '../client-MUD63aYS.mjs';
|
|
3
|
+
import { C as CreateAppOptions } from '../server-kakjHRgj.mjs';
|
|
4
|
+
export { S as SeedName } from '../server-kakjHRgj.mjs';
|
|
5
|
+
import '../client-CDUY-6nC.mjs';
|
|
6
|
+
import '../product-DiX-HGkT.mjs';
|
|
7
|
+
import '../payment-Bse2XJ-c.mjs';
|
|
7
8
|
import 'hono';
|
|
8
9
|
|
|
9
10
|
/**
|
package/dist/testing/suite.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { TestAPI } from 'vitest';
|
|
2
|
-
import { T as TestClientHandle } from '../client-
|
|
3
|
-
import { C as CreateAppOptions } from '../server-
|
|
4
|
-
export { S as SeedName } from '../server-
|
|
5
|
-
import '../client-
|
|
6
|
-
import '../
|
|
2
|
+
import { T as TestClientHandle } from '../client-BDYBB-ME.js';
|
|
3
|
+
import { C as CreateAppOptions } from '../server-Bg3VtA1D.js';
|
|
4
|
+
export { S as SeedName } from '../server-Bg3VtA1D.js';
|
|
5
|
+
import '../client-aZInadOY.js';
|
|
6
|
+
import '../product-DiX-HGkT.js';
|
|
7
|
+
import '../payment-JcNqOf_T.js';
|
|
7
8
|
import 'hono';
|
|
8
9
|
|
|
9
10
|
/**
|
package/dist/testing/suite.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkZH6ZST5T_js = require('../chunk-ZH6ZST5T.js');
|
|
4
4
|
require('../chunk-LLZZMHSU.js');
|
|
5
5
|
require('../chunk-GVLWRI5I.js');
|
|
6
6
|
require('../chunk-BN2CXGMO.js');
|
|
7
|
-
require('../chunk-
|
|
7
|
+
require('../chunk-K6FCVLZA.js');
|
|
8
8
|
require('../chunk-QBQCMQ4F.js');
|
|
9
9
|
var vitest = require('vitest');
|
|
10
10
|
|
|
@@ -19,11 +19,11 @@ var PLACEHOLDER_PHRASES = [
|
|
|
19
19
|
function createBrandSuite(opts) {
|
|
20
20
|
vitest.describe(opts.label ?? "brand schema", () => {
|
|
21
21
|
vitest.it("conforms to the Cimplify brand contract", () => {
|
|
22
|
-
vitest.expect(() =>
|
|
22
|
+
vitest.expect(() => chunkZH6ZST5T_js.assertBrand(opts.brand)).not.toThrow();
|
|
23
23
|
});
|
|
24
24
|
vitest.it("declares a known mock seed", () => {
|
|
25
25
|
const b = opts.brand;
|
|
26
|
-
vitest.expect(
|
|
26
|
+
vitest.expect(chunkZH6ZST5T_js.SeedNameSchema.safeParse(b.mock?.seed).success).toBe(true);
|
|
27
27
|
});
|
|
28
28
|
vitest.it("has no placeholder copy left in", () => {
|
|
29
29
|
const offenders = [];
|
|
@@ -55,7 +55,7 @@ ${msg}`);
|
|
|
55
55
|
vitest.expect(b.mock?.businessId).toMatch(/^bus_/);
|
|
56
56
|
});
|
|
57
57
|
vitest.it("zod-parses cleanly", () => {
|
|
58
|
-
const result =
|
|
58
|
+
const result = chunkZH6ZST5T_js.BrandSchema.safeParse(opts.brand);
|
|
59
59
|
if (!result.success) {
|
|
60
60
|
throw new Error(
|
|
61
61
|
"Brand schema violations:\n" + result.error.issues.map((i) => ` \u2022 brand.${i.path.join(".")}: ${i.message}`).join("\n")
|
|
@@ -70,23 +70,23 @@ function createCartFlowSuite(opts = {}) {
|
|
|
70
70
|
vitest.describe(opts.label ?? "cart flow against in-process mock", () => {
|
|
71
71
|
let h;
|
|
72
72
|
vitest.beforeEach(() => {
|
|
73
|
-
h =
|
|
73
|
+
h = chunkZH6ZST5T_js.createTestClient(opts);
|
|
74
74
|
});
|
|
75
75
|
vitest.afterEach(() => h.dispose());
|
|
76
76
|
vitest.it("starts with an empty cart matching the canonical shape", async () => {
|
|
77
77
|
const res = await h.client.cart.get();
|
|
78
78
|
vitest.expect(res.ok).toBe(true);
|
|
79
79
|
if (!res.ok) return;
|
|
80
|
-
vitest.expect(() =>
|
|
80
|
+
vitest.expect(() => chunkZH6ZST5T_js.assertCart(res.value)).not.toThrow();
|
|
81
81
|
vitest.expect(res.value.items).toHaveLength(0);
|
|
82
82
|
});
|
|
83
83
|
vitest.it("adds the first product, persists it, and returns a shape-valid cart", async () => {
|
|
84
|
-
const { product, variantId } = await
|
|
84
|
+
const { product, variantId } = await chunkZH6ZST5T_js.fixtures.addFirstProduct(h.client);
|
|
85
85
|
vitest.expect(product.id).toBeTruthy();
|
|
86
86
|
const get = await h.client.cart.get();
|
|
87
87
|
vitest.expect(get.ok).toBe(true);
|
|
88
88
|
if (!get.ok) return;
|
|
89
|
-
vitest.expect(() =>
|
|
89
|
+
vitest.expect(() => chunkZH6ZST5T_js.assertCart(get.value)).not.toThrow();
|
|
90
90
|
vitest.expect(get.value.items).toHaveLength(1);
|
|
91
91
|
vitest.expect(get.value.items[0]?.item_id).toBe(product.id);
|
|
92
92
|
if (variantId) {
|
|
@@ -97,8 +97,8 @@ function createCartFlowSuite(opts = {}) {
|
|
|
97
97
|
vitest.expect(parseFloat(String(get.value.pricing.subtotal))).toBeGreaterThan(0);
|
|
98
98
|
});
|
|
99
99
|
vitest.it("dedupes by line_key when adding the same product twice", async () => {
|
|
100
|
-
await
|
|
101
|
-
await
|
|
100
|
+
await chunkZH6ZST5T_js.fixtures.addFirstProduct(h.client);
|
|
101
|
+
await chunkZH6ZST5T_js.fixtures.addFirstProduct(h.client);
|
|
102
102
|
const res = await h.client.cart.get();
|
|
103
103
|
vitest.expect(res.ok).toBe(true);
|
|
104
104
|
if (!res.ok) return;
|
|
@@ -106,7 +106,7 @@ function createCartFlowSuite(opts = {}) {
|
|
|
106
106
|
vitest.expect(res.value.items[0]?.quantity).toBe(2);
|
|
107
107
|
});
|
|
108
108
|
vitest.it("removes items and zeroes the subtotal", async () => {
|
|
109
|
-
await
|
|
109
|
+
await chunkZH6ZST5T_js.fixtures.addFirstProduct(h.client);
|
|
110
110
|
const before = await h.client.cart.get();
|
|
111
111
|
if (!before.ok) throw before.error;
|
|
112
112
|
const itemId = before.value.items[0]?.id;
|
|
@@ -132,28 +132,28 @@ function createContractSuite(opts = {}) {
|
|
|
132
132
|
vitest.describe(opts.label ?? "SDK \u2194 mock contract", () => {
|
|
133
133
|
let h;
|
|
134
134
|
vitest.beforeEach(() => {
|
|
135
|
-
h =
|
|
135
|
+
h = chunkZH6ZST5T_js.createTestClient(opts);
|
|
136
136
|
});
|
|
137
137
|
vitest.afterEach(() => h.dispose());
|
|
138
138
|
vitest.it("AddItemPayload schema accepts a minimal valid body", () => {
|
|
139
|
-
const result =
|
|
139
|
+
const result = chunkZH6ZST5T_js.AddItemPayloadSchema.safeParse({ item_id: "prod_x", quantity: 1 });
|
|
140
140
|
vitest.expect(result.success).toBe(true);
|
|
141
141
|
});
|
|
142
142
|
vitest.it("AddItemPayload schema rejects negative quantity", () => {
|
|
143
|
-
const result =
|
|
143
|
+
const result = chunkZH6ZST5T_js.AddItemPayloadSchema.safeParse({ item_id: "prod_x", quantity: -1 });
|
|
144
144
|
vitest.expect(result.success).toBe(false);
|
|
145
145
|
});
|
|
146
146
|
vitest.it("AddItemPayload schema rejects empty item_id", () => {
|
|
147
|
-
const result =
|
|
147
|
+
const result = chunkZH6ZST5T_js.AddItemPayloadSchema.safeParse({ item_id: "", quantity: 1 });
|
|
148
148
|
vitest.expect(result.success).toBe(false);
|
|
149
149
|
});
|
|
150
150
|
vitest.it("Cart line items returned by the mock match CartItemSchema", async () => {
|
|
151
|
-
const { product } = await
|
|
151
|
+
const { product } = await chunkZH6ZST5T_js.fixtures.addFirstProduct(h.client);
|
|
152
152
|
const get = await h.client.cart.get();
|
|
153
153
|
if (!get.ok) throw get.error;
|
|
154
154
|
vitest.expect(get.value.items.length).toBeGreaterThan(0);
|
|
155
155
|
for (const item of get.value.items) {
|
|
156
|
-
const result =
|
|
156
|
+
const result = chunkZH6ZST5T_js.CartItemSchema.safeParse(item);
|
|
157
157
|
if (!result.success) {
|
|
158
158
|
const issues = result.error.issues.map((i) => ` \u2022 ${i.path.join(".")}: ${i.message}`).join("\n");
|
|
159
159
|
throw new Error(`Cart item shape mismatch for ${product.name}:
|
|
@@ -163,19 +163,19 @@ ${issues}`);
|
|
|
163
163
|
}
|
|
164
164
|
});
|
|
165
165
|
vitest.it("CheckoutResponse from the mock includes bill_token", async () => {
|
|
166
|
-
await
|
|
166
|
+
await chunkZH6ZST5T_js.fixtures.addFirstProduct(h.client);
|
|
167
167
|
const cartRes = await h.client.cart.get();
|
|
168
168
|
if (!cartRes.ok) throw cartRes.error;
|
|
169
169
|
const checkout = await h.client.checkout.process({
|
|
170
170
|
cart_id: cartRes.value.id,
|
|
171
|
-
customer:
|
|
171
|
+
customer: chunkZH6ZST5T_js.fixtures.customer(),
|
|
172
172
|
order_type: "delivery",
|
|
173
173
|
payment_method: "mobile_money",
|
|
174
174
|
mobile_money_details: { phone_number: "+233244000000", provider: "mtn" }
|
|
175
175
|
});
|
|
176
176
|
vitest.expect(checkout.ok).toBe(true);
|
|
177
177
|
if (!checkout.ok) return;
|
|
178
|
-
const result =
|
|
178
|
+
const result = chunkZH6ZST5T_js.CheckoutResponseSchema.safeParse(checkout.value);
|
|
179
179
|
if (!result.success) {
|
|
180
180
|
const issues = result.error.issues.map((i) => ` \u2022 ${i.path.join(".")}: ${i.message}`).join("\n");
|
|
181
181
|
throw new Error(`CheckoutResponse shape mismatch:
|
package/dist/testing/suite.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { assertBrand, SeedNameSchema, BrandSchema, createTestClient, assertCart, fixtures, AddItemPayloadSchema, CartItemSchema, CheckoutResponseSchema } from '../chunk-
|
|
1
|
+
import { assertBrand, SeedNameSchema, BrandSchema, createTestClient, assertCart, fixtures, AddItemPayloadSchema, CartItemSchema, CheckoutResponseSchema } from '../chunk-IF22UYTT.mjs';
|
|
2
2
|
import '../chunk-RR3ZJQW5.mjs';
|
|
3
3
|
import '../chunk-AIXUFSA6.mjs';
|
|
4
4
|
import '../chunk-NRT6PVW5.mjs';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-RQ3ILHUQ.mjs';
|
|
6
6
|
import '../chunk-XPXAZXF2.mjs';
|
|
7
7
|
import { describe, it, expect, beforeEach, afterEach } from 'vitest';
|
|
8
8
|
|
package/dist/testing.d.mts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { $ZodType } from 'zod/v4/core';
|
|
3
|
-
export { A as AddFirstProductOptions, a as AddFirstProductResult, P as ProductSummary, T as TestClientHandle, c as createTestClient, f as fixtures } from './client-
|
|
4
|
-
import './client-
|
|
5
|
-
import './
|
|
6
|
-
import './
|
|
3
|
+
export { A as AddFirstProductOptions, a as AddFirstProductResult, P as ProductSummary, T as TestClientHandle, c as createTestClient, f as fixtures } from './client-MUD63aYS.mjs';
|
|
4
|
+
import './client-CDUY-6nC.mjs';
|
|
5
|
+
import './product-DiX-HGkT.mjs';
|
|
6
|
+
import './payment-Bse2XJ-c.mjs';
|
|
7
|
+
import './server-kakjHRgj.mjs';
|
|
7
8
|
import 'hono';
|
|
8
9
|
|
|
9
10
|
/**
|
package/dist/testing.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { $ZodType } from 'zod/v4/core';
|
|
3
|
-
export { A as AddFirstProductOptions, a as AddFirstProductResult, P as ProductSummary, T as TestClientHandle, c as createTestClient, f as fixtures } from './client-
|
|
4
|
-
import './client-
|
|
5
|
-
import './
|
|
6
|
-
import './
|
|
3
|
+
export { A as AddFirstProductOptions, a as AddFirstProductResult, P as ProductSummary, T as TestClientHandle, c as createTestClient, f as fixtures } from './client-BDYBB-ME.js';
|
|
4
|
+
import './client-aZInadOY.js';
|
|
5
|
+
import './product-DiX-HGkT.js';
|
|
6
|
+
import './payment-JcNqOf_T.js';
|
|
7
|
+
import './server-Bg3VtA1D.js';
|
|
7
8
|
import 'hono';
|
|
8
9
|
|
|
9
10
|
/**
|