@kizlo/woocommerce 1.0.0-alpha.1 → 1.0.0-alpha.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.
@@ -0,0 +1,857 @@
1
+ //#region rolldown:runtime
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
10
+ key = keys[i];
11
+ if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
12
+ get: ((k) => from[k]).bind(null, key),
13
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
14
+ });
15
+ }
16
+ return to;
17
+ };
18
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
19
+ value: mod,
20
+ enumerable: true
21
+ }) : target, mod));
22
+
23
+ //#endregion
24
+ let kizlo = require("kizlo");
25
+ kizlo = __toESM(kizlo);
26
+ let kizlo_extensions = require("kizlo/extensions");
27
+ kizlo_extensions = __toESM(kizlo_extensions);
28
+
29
+ //#region src/client.extension.ts
30
+ const woocommerceProcedure = kizlo_extensions.procedure.use(kizlo_extensions.procedure.middleware(({ context, next }) => {
31
+ return next({ context: { woocommerce: new KizloWoocommerce(context.kizlo) } });
32
+ }));
33
+ function woocommerce$1() {
34
+ return (0, kizlo_extensions.createClientExtension)({
35
+ type: "router",
36
+ name: "woocommerce",
37
+ init() {
38
+ return woocommerceRouter;
39
+ }
40
+ });
41
+ }
42
+
43
+ //#endregion
44
+ //#region src/cart/client.ts
45
+ var KizloCartItem = class {
46
+ constructor(kizlo$1) {
47
+ this.kizlo = kizlo$1;
48
+ }
49
+ async add(input) {
50
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
51
+ const response = await this.kizlo._.http.post("/cart/items", {
52
+ body: input,
53
+ headers
54
+ });
55
+ if (response.error) return this.kizlo._.http.error(response.error);
56
+ return this.kizlo._.http.success(response.data);
57
+ });
58
+ }
59
+ async update(input) {
60
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
61
+ const response = await this.kizlo._.http.put(`/cart/items/${input.key}`, {
62
+ body: input,
63
+ headers
64
+ });
65
+ if (response.error) return this.kizlo._.http.error(response.error);
66
+ return this.kizlo._.http.success(response.data);
67
+ });
68
+ }
69
+ async remove(input) {
70
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
71
+ const response = await this.kizlo._.http.delete(`/cart/items/${input.key}`, { headers });
72
+ if (response.error) return this.kizlo._.http.error(response.error);
73
+ return this.kizlo._.http.success(response.data);
74
+ });
75
+ }
76
+ };
77
+ var KizloCoupon = class {
78
+ constructor(kizlo$1) {
79
+ this.kizlo = kizlo$1;
80
+ }
81
+ async apply(input) {
82
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
83
+ const response = await this.kizlo._.http.post(`/cart/coupons/${input.code}`, { headers });
84
+ if (response.error) return this.kizlo._.http.error(response.error);
85
+ return this.kizlo._.http.success(response.data);
86
+ });
87
+ }
88
+ async remove(input) {
89
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
90
+ const response = await this.kizlo._.http.delete(`/cart/coupons/${input.code}`, { headers });
91
+ if (response.error) return this.kizlo._.http.error(response.error);
92
+ return this.kizlo._.http.success(response.data);
93
+ });
94
+ }
95
+ };
96
+ var KizloCart = class {
97
+ items;
98
+ coupons;
99
+ constructor(kizlo$1) {
100
+ this.kizlo = kizlo$1;
101
+ this.items = new KizloCartItem(this.kizlo);
102
+ this.coupons = new KizloCoupon(this.kizlo);
103
+ }
104
+ async retrieve() {
105
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
106
+ const response = await this.kizlo._.http.get("/cart", { headers });
107
+ if (response.error) return this.kizlo._.http.error(response.error);
108
+ return this.kizlo._.http.success(response.data);
109
+ });
110
+ }
111
+ async update(input) {
112
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
113
+ const response = await this.kizlo._.http.put("/cart", {
114
+ body: input,
115
+ headers
116
+ });
117
+ if (response.error) return this.kizlo._.http.error(response.error);
118
+ return this.kizlo._.http.success(response.data);
119
+ });
120
+ }
121
+ };
122
+ const cart = {
123
+ retrieve: woocommerceProcedure.output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ context }) => {
124
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.cart.retrieve());
125
+ }),
126
+ update: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
127
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.cart.update(input));
128
+ }),
129
+ items: {
130
+ add: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
131
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.cart.items.add(input));
132
+ }),
133
+ update: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
134
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.cart.items.update(input));
135
+ }),
136
+ remove: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
137
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.cart.items.remove(input));
138
+ })
139
+ },
140
+ coupons: {
141
+ apply: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
142
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.cart.coupons.apply(input));
143
+ }),
144
+ remove: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
145
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.cart.coupons.remove(input));
146
+ })
147
+ }
148
+ };
149
+
150
+ //#endregion
151
+ //#region src/customer/client.ts
152
+ var KizloAddress = class {
153
+ constructor(kizlo$1) {
154
+ this.kizlo = kizlo$1;
155
+ }
156
+ async create(input) {
157
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
158
+ const response = await this.kizlo._.http.post("/customers/addresses", {
159
+ headers,
160
+ body: input
161
+ });
162
+ if (response.error) return this.kizlo._.http.error(response.error);
163
+ return this.kizlo._.http.success(response.data);
164
+ });
165
+ }
166
+ async update(input) {
167
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
168
+ const response = await this.kizlo._.http.put(`/customers/addresses/${input.id}`, {
169
+ body: input,
170
+ headers
171
+ });
172
+ if (response.error) return this.kizlo._.http.error(response.error);
173
+ return this.kizlo._.http.success(response.data);
174
+ });
175
+ }
176
+ async delete(input) {
177
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
178
+ const response = await this.kizlo._.http.delete(`/customers/addresses/${input.id}`, { headers });
179
+ if (response.error) return this.kizlo._.http.error(response.error);
180
+ return this.kizlo._.http.success(response.data);
181
+ });
182
+ }
183
+ };
184
+ var KizloCustomer = class {
185
+ address;
186
+ constructor(kizlo$1) {
187
+ this.kizlo = kizlo$1;
188
+ this.address = new KizloAddress(this.kizlo);
189
+ }
190
+ async retrieve() {
191
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
192
+ const response = await this.kizlo._.http.get("/customers", { headers });
193
+ if (response.error) return this.kizlo._.http.error(response.error);
194
+ return this.kizlo._.http.success(response.data);
195
+ });
196
+ }
197
+ };
198
+ const customer = {
199
+ retrieve: woocommerceProcedure.output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ context }) => {
200
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.customer.retrieve());
201
+ }),
202
+ address: {
203
+ create: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
204
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.customer.address.create(input));
205
+ }),
206
+ update: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
207
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.customer.address.update(input));
208
+ }),
209
+ delete: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
210
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.customer.address.delete(input));
211
+ })
212
+ }
213
+ };
214
+
215
+ //#endregion
216
+ //#region src/order/client.ts
217
+ var KizloOrder = class {
218
+ constructor(kizlo$1) {
219
+ this.kizlo = kizlo$1;
220
+ }
221
+ async retrieve(input) {
222
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
223
+ const response = await this.kizlo._.http.get(`/orders/${input.id}`, { headers });
224
+ if (response.error) return this.kizlo._.http.error(response.error);
225
+ return this.kizlo._.http.success(response.data);
226
+ });
227
+ }
228
+ async list(input) {
229
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
230
+ const response = await this.kizlo._.http.get("/orders", {
231
+ headers,
232
+ query: input
233
+ });
234
+ if (response.error) return this.kizlo._.http.error(response.error);
235
+ return this.kizlo._.http.success(response.data);
236
+ });
237
+ }
238
+ };
239
+ const orders = {
240
+ retrieve: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
241
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.orders.retrieve(input));
242
+ }),
243
+ list: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
244
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.orders.list(input));
245
+ })
246
+ };
247
+
248
+ //#endregion
249
+ //#region src/generated/contract.server.json
250
+ var contract_server_default = {
251
+ cart: {
252
+ "retrieve": { "~orpc": {
253
+ "errorMap": {},
254
+ "meta": {},
255
+ "route": {}
256
+ } },
257
+ "update": { "~orpc": {
258
+ "errorMap": {},
259
+ "meta": {},
260
+ "route": {}
261
+ } },
262
+ "items": {
263
+ "add": { "~orpc": {
264
+ "errorMap": {},
265
+ "meta": {},
266
+ "route": {}
267
+ } },
268
+ "update": { "~orpc": {
269
+ "errorMap": {},
270
+ "meta": {},
271
+ "route": {}
272
+ } },
273
+ "remove": { "~orpc": {
274
+ "errorMap": {},
275
+ "meta": {},
276
+ "route": {}
277
+ } }
278
+ },
279
+ "coupons": {
280
+ "apply": { "~orpc": {
281
+ "errorMap": {},
282
+ "meta": {},
283
+ "route": {}
284
+ } },
285
+ "remove": { "~orpc": {
286
+ "errorMap": {},
287
+ "meta": {},
288
+ "route": {}
289
+ } }
290
+ }
291
+ },
292
+ orders: {
293
+ "retrieve": { "~orpc": {
294
+ "errorMap": {},
295
+ "meta": {},
296
+ "route": {}
297
+ } },
298
+ "list": { "~orpc": {
299
+ "errorMap": {},
300
+ "meta": {},
301
+ "route": {}
302
+ } }
303
+ },
304
+ customer: {
305
+ "retrieve": { "~orpc": {
306
+ "errorMap": {},
307
+ "meta": {},
308
+ "route": {}
309
+ } },
310
+ "address": {
311
+ "create": { "~orpc": {
312
+ "errorMap": {},
313
+ "meta": {},
314
+ "route": {}
315
+ } },
316
+ "update": { "~orpc": {
317
+ "errorMap": {},
318
+ "meta": {},
319
+ "route": {}
320
+ } },
321
+ "delete": { "~orpc": {
322
+ "errorMap": {},
323
+ "meta": {},
324
+ "route": {}
325
+ } }
326
+ }
327
+ },
328
+ products: {
329
+ "retrieve": { "~orpc": {
330
+ "errorMap": {},
331
+ "meta": {},
332
+ "route": {}
333
+ } },
334
+ "list": { "~orpc": {
335
+ "errorMap": {},
336
+ "meta": {},
337
+ "route": {}
338
+ } },
339
+ "collection": { "~orpc": {
340
+ "errorMap": {},
341
+ "meta": {},
342
+ "route": {}
343
+ } },
344
+ "categories": { "list": { "~orpc": {
345
+ "errorMap": {},
346
+ "meta": {},
347
+ "route": {}
348
+ } } },
349
+ "reviews": {
350
+ "retrieve": { "~orpc": {
351
+ "errorMap": {},
352
+ "meta": {},
353
+ "route": {}
354
+ } },
355
+ "list": { "~orpc": {
356
+ "errorMap": {},
357
+ "meta": {},
358
+ "route": {}
359
+ } },
360
+ "create": { "~orpc": {
361
+ "errorMap": {},
362
+ "meta": {},
363
+ "route": {}
364
+ } }
365
+ }
366
+ },
367
+ payment: {
368
+ "confirm": { "~orpc": {
369
+ "errorMap": {},
370
+ "meta": {},
371
+ "route": {}
372
+ } },
373
+ "update": { "~orpc": {
374
+ "errorMap": {},
375
+ "meta": {},
376
+ "route": {}
377
+ } },
378
+ "methods": { "~orpc": {
379
+ "errorMap": {},
380
+ "meta": {},
381
+ "route": { "method": "GET" }
382
+ } },
383
+ "pay": { "~orpc": {
384
+ "errorMap": {},
385
+ "meta": {},
386
+ "route": {}
387
+ } },
388
+ "webhooks": { "~orpc": {
389
+ "errorMap": {},
390
+ "meta": {},
391
+ "route": {
392
+ "method": "POST",
393
+ "path": "/payment/webhooks/{id}",
394
+ "inputStructure": "detailed"
395
+ }
396
+ } }
397
+ }
398
+ };
399
+
400
+ //#endregion
401
+ //#region src/server.client.ts
402
+ function createWoocommerceServerRouter(options) {
403
+ return {
404
+ ...woocommerceRouter,
405
+ payment: createPaymentServerRouter(options)
406
+ };
407
+ }
408
+
409
+ //#endregion
410
+ //#region src/server.extension.ts
411
+ const woocommerceRemoteProcedure = kizlo_extensions.remoteProcedure.use(kizlo_extensions.remoteProcedure.middleware(({ context, next }) => {
412
+ return next({ context: { woocommerce: new KizloWoocommerce(context.kizlo) } });
413
+ }));
414
+ const woocommerceOpenApiProcedure = kizlo_extensions.openApiProcedure.use(kizlo_extensions.openApiProcedure.middleware(({ context, next }) => {
415
+ return next({ context: { woocommerce: new KizloWoocommerce(context.kizlo) } });
416
+ }));
417
+ function woocommerce(options) {
418
+ return (0, kizlo_extensions.createServerExtension)({
419
+ name: "woocommerce",
420
+ init() {
421
+ return createWoocommerceServerRouter(options);
422
+ }
423
+ });
424
+ }
425
+
426
+ //#endregion
427
+ //#region src/payment/client.ts
428
+ var KizloPayment = class {
429
+ admin;
430
+ rpc;
431
+ constructor(kizlo$1) {
432
+ this.kizlo = kizlo$1;
433
+ this.admin = new KizloPaymentAdmin(this.kizlo);
434
+ this.rpc = (0, kizlo.createSafeClient)((0, kizlo.createRemoteFetchClient)(contract_server_default, `${this.kizlo._.serverBaseUrl}/woocommerce`));
435
+ }
436
+ async methods() {
437
+ const { error, data, isDefined } = await this.rpc.payment.methods();
438
+ if (error) {
439
+ if (isDefined) return this.kizlo._.http.error({
440
+ code: error.code,
441
+ message: error.message,
442
+ status: error.status
443
+ });
444
+ throw error;
445
+ }
446
+ return this.kizlo._.http.success(data);
447
+ }
448
+ async pay(input) {
449
+ const { error, data, isDefined } = await this.rpc.payment.pay(input);
450
+ if (error) {
451
+ if (isDefined) return this.kizlo._.http.error({
452
+ code: error.code,
453
+ message: error.message,
454
+ status: error.status
455
+ });
456
+ throw error;
457
+ }
458
+ return this.kizlo._.http.success(data);
459
+ }
460
+ };
461
+ var KizloPaymentAdmin = class {
462
+ constructor(kizlo$1) {
463
+ this.kizlo = kizlo$1;
464
+ }
465
+ async confirm(input) {
466
+ const response = await this.kizlo._.http.post("/payment", { body: input });
467
+ if (response.error) return this.kizlo._.http.error(response.error);
468
+ return this.kizlo._.http.success(response.data);
469
+ }
470
+ async update(input) {
471
+ const response = await this.kizlo._.http.put(`/payment/${input.order_id}`, { body: input });
472
+ if (response.error) return this.kizlo._.http.error(response.error);
473
+ return this.kizlo._.http.success(response.data);
474
+ }
475
+ async methods(input) {
476
+ const groups = /* @__PURE__ */ new Map();
477
+ for (const adapter of input.adapters) {
478
+ const config = adapter;
479
+ if (!groups.has(config.type)) groups.set(config.type, []);
480
+ groups.get(config.type)?.push(config);
481
+ }
482
+ const getPrioritizedAdapter = (group) => {
483
+ let best = null;
484
+ for (const adapter of group) if (!best || adapter.priority > best.priority) best = adapter;
485
+ return best;
486
+ };
487
+ const methods = [];
488
+ for (const [, group] of groups) {
489
+ const selectedAdapters = [];
490
+ const combinableAdapters = group.filter((adapter) => adapter.isCombinable);
491
+ if (combinableAdapters.length > 1) for (const adapter of combinableAdapters) selectedAdapters.push(adapter);
492
+ else {
493
+ const bestAdapter = getPrioritizedAdapter(group);
494
+ if (bestAdapter) selectedAdapters.push(bestAdapter);
495
+ }
496
+ for (const adapter of selectedAdapters) {
497
+ const eligibility = await adapter.eligibility?.(input.context);
498
+ if (eligibility?.is_hidden) continue;
499
+ methods.push({
500
+ id: adapter.id,
501
+ type: adapter.type,
502
+ name: eligibility?.name ?? adapter.name,
503
+ is_disabled: eligibility?.is_disabled ?? false,
504
+ description: eligibility?.description ?? adapter.description
505
+ });
506
+ }
507
+ }
508
+ if (new Set(methods.map((method) => method.id)).size !== methods.length) return this.kizlo._.http.error("PAYMENT_DUPLICATE_ADAPTERS");
509
+ return this.kizlo._.http.success(methods);
510
+ }
511
+ async pay(input) {
512
+ const adapter = input.adapters.find((adp) => adp.id === input.payment_method_id);
513
+ if (!adapter) return this.kizlo._.http.error("PAYMENT_ADAPTER_NOT_FOUND");
514
+ const session = await this.kizlo.auth.session.retrieve();
515
+ if (!session) return this.kizlo._.http.error("AUTH_REQUIRED");
516
+ const confirmResult = await this.confirm({
517
+ user_id: session.user.id,
518
+ payment_method_id: adapter.id,
519
+ payment_method_name: adapter.name,
520
+ payment_method_type: adapter.type
521
+ });
522
+ if (confirmResult.isError) return this.kizlo._.http.error(confirmResult.error);
523
+ if (adapter.type === "online") {
524
+ const intent = await adapter.create({ order: confirmResult.data }, input.context);
525
+ if (!intent || !intent.url) return this.kizlo._.http.error("PAYMENT_ADAPTER_NOT_FOUND");
526
+ const updateResult = await this.update({
527
+ order_id: confirmResult.data.id,
528
+ payment_status: intent.status,
529
+ payment_session_id: intent.id,
530
+ transaction_id: intent.transaction_id,
531
+ payment_url: intent.url
532
+ });
533
+ if (updateResult.isError) return this.kizlo._.http.error(updateResult.error);
534
+ return this.kizlo._.http.success({ redirect_url: intent.url });
535
+ }
536
+ return this.kizlo._.http.success({ redirect_url: "" });
537
+ }
538
+ async handleWebhook(input) {
539
+ const adapter = input.adapters.find((a) => a.id === input.payment_method_id);
540
+ if (!adapter || adapter.type !== "online") return this.kizlo._.http.error("PAYMENT_ADAPTER_NOT_FOUND");
541
+ const data = await adapter.verify(input.context);
542
+ if (!data) return this.kizlo._.http.error("UNAUTHORIZED");
543
+ const updateResult = await this.update({
544
+ order_id: data.order_id,
545
+ payment_status: data.status,
546
+ transaction_id: data.transaction_id
547
+ });
548
+ if (updateResult.error) return this.kizlo._.http.error(updateResult.error);
549
+ return this.kizlo._.http.success({ success: true });
550
+ }
551
+ };
552
+ const paymentRouter = {
553
+ methods: woocommerceProcedure.output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ context }) => {
554
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.payment.methods());
555
+ }),
556
+ pay: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
557
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.payment.pay(input));
558
+ })
559
+ };
560
+ function createPaymentServerRouter(options) {
561
+ return {
562
+ confirm: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
563
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.payment.admin.confirm(input));
564
+ }),
565
+ update: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
566
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.payment.admin.update(input));
567
+ }),
568
+ methods: woocommerceRemoteProcedure.route({ method: "GET" }).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ context }) => {
569
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.payment.admin.methods({
570
+ context,
571
+ adapters: options?.paymentAdapters ?? []
572
+ }));
573
+ }),
574
+ pay: woocommerceRemoteProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
575
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.payment.admin.pay({
576
+ context,
577
+ adapters: options?.paymentAdapters ?? [],
578
+ payment_method_id: input.payment_method_id
579
+ }));
580
+ }),
581
+ webhooks: woocommerceOpenApiProcedure.route({
582
+ method: "POST",
583
+ path: "/payment/webhooks/{id}",
584
+ inputStructure: "detailed"
585
+ }).input((0, kizlo.type)()).handler(async ({ input, context }) => {
586
+ return (0, kizlo.ensureProcedureResult)(context.woocommerce.payment.admin.handleWebhook({
587
+ context,
588
+ payment_method_id: input.params.id,
589
+ adapters: options?.paymentAdapters ?? []
590
+ }));
591
+ })
592
+ };
593
+ }
594
+
595
+ //#endregion
596
+ //#region src/product/client.ts
597
+ var KizloProductCategory = class {
598
+ constructor(kizlo$1) {
599
+ this.kizlo = kizlo$1;
600
+ }
601
+ async list(input) {
602
+ const response = await this.kizlo._.http.get("/products/categories", { query: input });
603
+ if (response.error) return this.kizlo._.http.error(response.error);
604
+ return this.kizlo._.http.success(response.data);
605
+ }
606
+ };
607
+ var KizloProductReview = class {
608
+ constructor(kizlo$1) {
609
+ this.kizlo = kizlo$1;
610
+ }
611
+ async retrieve(input) {
612
+ const response = await this.kizlo._.http.get(`/products/reviews/${input.id}`, { query: input });
613
+ if (response.error) return this.kizlo._.http.error(response.error);
614
+ return this.kizlo._.http.success(response.data);
615
+ }
616
+ async list(input) {
617
+ const response = await this.kizlo._.http.get("/products/reviews", { query: input });
618
+ if (response.error) return this.kizlo._.http.error(response.error);
619
+ return this.kizlo._.http.success(response.data);
620
+ }
621
+ async create(input) {
622
+ return this.kizlo.auth.session.ensure(async ({ headers }) => {
623
+ const response = await this.kizlo._.http.post("/products/reviews", {
624
+ headers,
625
+ body: input
626
+ });
627
+ if (response.error) return this.kizlo._.http.error(response.error);
628
+ return this.kizlo._.http.success(response.data);
629
+ });
630
+ }
631
+ };
632
+ var KizloProduct = class {
633
+ reviews;
634
+ categories;
635
+ constructor(kizlo$1) {
636
+ this.kizlo = kizlo$1;
637
+ this.reviews = new KizloProductReview(this.kizlo);
638
+ this.categories = new KizloProductCategory(this.kizlo);
639
+ }
640
+ async retrieve(input) {
641
+ const response = await this.kizlo._.http.get(`/products/${input.slug}`, { query: input });
642
+ if (response.error) return this.kizlo._.http.error(response.error);
643
+ return this.kizlo._.http.success(response.data);
644
+ }
645
+ async list(input) {
646
+ const response = await this.kizlo._.http.get("/products", { query: input });
647
+ if (response.error) return this.kizlo._.http.error(response.error);
648
+ return this.kizlo._.http.success(response.data);
649
+ }
650
+ async collection(input) {
651
+ const response = await this.kizlo._.http.get("/products/collection", { query: input });
652
+ if (response.error) return this.kizlo._.http.error(response.error);
653
+ return this.kizlo._.http.success(response.data);
654
+ }
655
+ };
656
+ const products = {
657
+ retrieve: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
658
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.products.retrieve(input));
659
+ }),
660
+ list: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
661
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.products.list(input));
662
+ }),
663
+ collection: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
664
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.products.collection(input));
665
+ }),
666
+ categories: { list: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
667
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.products.categories.list(input));
668
+ }) },
669
+ reviews: {
670
+ retrieve: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
671
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.products.reviews.retrieve(input));
672
+ }),
673
+ list: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
674
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.products.reviews.list(input));
675
+ }),
676
+ create: woocommerceProcedure.input((0, kizlo.type)()).output((0, kizlo.type)()).errors((0, kizlo_extensions.procedureErrors)()).handler(async ({ input, context }) => {
677
+ return (0, kizlo.ensureProcedureResult)(await context.woocommerce.products.reviews.create(input));
678
+ })
679
+ }
680
+ };
681
+
682
+ //#endregion
683
+ //#region src/client.ts
684
+ var KizloWoocommerce = class {
685
+ cart;
686
+ orders;
687
+ customer;
688
+ products;
689
+ payment;
690
+ constructor(kizlo$1) {
691
+ this.kizlo = kizlo$1;
692
+ this.cart = new KizloCart(this.kizlo);
693
+ this.orders = new KizloOrder(this.kizlo);
694
+ this.customer = new KizloCustomer(this.kizlo);
695
+ this.products = new KizloProduct(this.kizlo);
696
+ this.payment = new KizloPayment(this.kizlo);
697
+ }
698
+ };
699
+ const woocommerceRouter = {
700
+ cart,
701
+ orders,
702
+ customer,
703
+ products,
704
+ payment: paymentRouter
705
+ };
706
+
707
+ //#endregion
708
+ Object.defineProperty(exports, 'KizloAddress', {
709
+ enumerable: true,
710
+ get: function () {
711
+ return KizloAddress;
712
+ }
713
+ });
714
+ Object.defineProperty(exports, 'KizloCart', {
715
+ enumerable: true,
716
+ get: function () {
717
+ return KizloCart;
718
+ }
719
+ });
720
+ Object.defineProperty(exports, 'KizloCartItem', {
721
+ enumerable: true,
722
+ get: function () {
723
+ return KizloCartItem;
724
+ }
725
+ });
726
+ Object.defineProperty(exports, 'KizloCoupon', {
727
+ enumerable: true,
728
+ get: function () {
729
+ return KizloCoupon;
730
+ }
731
+ });
732
+ Object.defineProperty(exports, 'KizloCustomer', {
733
+ enumerable: true,
734
+ get: function () {
735
+ return KizloCustomer;
736
+ }
737
+ });
738
+ Object.defineProperty(exports, 'KizloOrder', {
739
+ enumerable: true,
740
+ get: function () {
741
+ return KizloOrder;
742
+ }
743
+ });
744
+ Object.defineProperty(exports, 'KizloPayment', {
745
+ enumerable: true,
746
+ get: function () {
747
+ return KizloPayment;
748
+ }
749
+ });
750
+ Object.defineProperty(exports, 'KizloPaymentAdmin', {
751
+ enumerable: true,
752
+ get: function () {
753
+ return KizloPaymentAdmin;
754
+ }
755
+ });
756
+ Object.defineProperty(exports, 'KizloProduct', {
757
+ enumerable: true,
758
+ get: function () {
759
+ return KizloProduct;
760
+ }
761
+ });
762
+ Object.defineProperty(exports, 'KizloProductCategory', {
763
+ enumerable: true,
764
+ get: function () {
765
+ return KizloProductCategory;
766
+ }
767
+ });
768
+ Object.defineProperty(exports, 'KizloProductReview', {
769
+ enumerable: true,
770
+ get: function () {
771
+ return KizloProductReview;
772
+ }
773
+ });
774
+ Object.defineProperty(exports, 'KizloWoocommerce', {
775
+ enumerable: true,
776
+ get: function () {
777
+ return KizloWoocommerce;
778
+ }
779
+ });
780
+ Object.defineProperty(exports, 'cart', {
781
+ enumerable: true,
782
+ get: function () {
783
+ return cart;
784
+ }
785
+ });
786
+ Object.defineProperty(exports, 'createPaymentServerRouter', {
787
+ enumerable: true,
788
+ get: function () {
789
+ return createPaymentServerRouter;
790
+ }
791
+ });
792
+ Object.defineProperty(exports, 'createWoocommerceServerRouter', {
793
+ enumerable: true,
794
+ get: function () {
795
+ return createWoocommerceServerRouter;
796
+ }
797
+ });
798
+ Object.defineProperty(exports, 'customer', {
799
+ enumerable: true,
800
+ get: function () {
801
+ return customer;
802
+ }
803
+ });
804
+ Object.defineProperty(exports, 'orders', {
805
+ enumerable: true,
806
+ get: function () {
807
+ return orders;
808
+ }
809
+ });
810
+ Object.defineProperty(exports, 'paymentRouter', {
811
+ enumerable: true,
812
+ get: function () {
813
+ return paymentRouter;
814
+ }
815
+ });
816
+ Object.defineProperty(exports, 'products', {
817
+ enumerable: true,
818
+ get: function () {
819
+ return products;
820
+ }
821
+ });
822
+ Object.defineProperty(exports, 'woocommerce', {
823
+ enumerable: true,
824
+ get: function () {
825
+ return woocommerce;
826
+ }
827
+ });
828
+ Object.defineProperty(exports, 'woocommerce$1', {
829
+ enumerable: true,
830
+ get: function () {
831
+ return woocommerce$1;
832
+ }
833
+ });
834
+ Object.defineProperty(exports, 'woocommerceOpenApiProcedure', {
835
+ enumerable: true,
836
+ get: function () {
837
+ return woocommerceOpenApiProcedure;
838
+ }
839
+ });
840
+ Object.defineProperty(exports, 'woocommerceProcedure', {
841
+ enumerable: true,
842
+ get: function () {
843
+ return woocommerceProcedure;
844
+ }
845
+ });
846
+ Object.defineProperty(exports, 'woocommerceRemoteProcedure', {
847
+ enumerable: true,
848
+ get: function () {
849
+ return woocommerceRemoteProcedure;
850
+ }
851
+ });
852
+ Object.defineProperty(exports, 'woocommerceRouter', {
853
+ enumerable: true,
854
+ get: function () {
855
+ return woocommerceRouter;
856
+ }
857
+ });