@brytdesigns/shopify-ajax-cart-api 1.0.12 → 1.0.13
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/effect/api/CartClear.js +2 -2
- package/dist/effect/api/CartClear.js.map +1 -1
- package/dist/effect/api/CartGet.js +2 -2
- package/dist/effect/api/CartGet.js.map +1 -1
- package/dist/effect/index.d.ts +0 -92
- package/dist/effect/schema.js +69 -66
- package/dist/effect/schema.js.map +1 -1
- package/dist/esm/index.js +54 -55
- package/dist/esm/index.js.map +1 -1
- package/dist/main/effect/api/CartClear.js +2 -2
- package/dist/main/effect/api/CartClear.js.map +1 -1
- package/dist/main/effect/api/CartGet.js +2 -2
- package/dist/main/effect/api/CartGet.js.map +1 -1
- package/dist/main/effect/schema.js +69 -66
- package/dist/main/effect/schema.js.map +1 -1
- package/dist/main/index.d.ts +0 -184
- package/dist/main/index.js +2 -2
- package/dist/main/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CartOutput, CartClearInput } from '../schema.js';
|
|
2
2
|
import * as AjaxRequest from '../services/AjaxRequest.js';
|
|
3
3
|
|
|
4
4
|
const make = AjaxRequest.makeFactory({
|
|
5
5
|
routeName: "cart_clear_url",
|
|
6
6
|
method: "post",
|
|
7
7
|
inputSchema: CartClearInput,
|
|
8
|
-
outputSchema:
|
|
8
|
+
outputSchema: CartOutput
|
|
9
9
|
});
|
|
10
10
|
|
|
11
11
|
export { make };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/effect/api/CartClear.ts"],"names":[],"mappings":";;;AAMa,MAAA,IAAA,GAAO,YAAY,WAAY,CAAA;AAAA,EAC1C,SAAW,EAAA,gBAAA;AAAA,EACX,MAAQ,EAAA,MAAA;AAAA,EACR,WAAa,EAAA,cAAA;AAAA,EACb,YAAc,EAAA;AAChB,CAAC","file":"CartClear.js","sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/effect/api/CartClear.ts"],"names":[],"mappings":";;;AAMa,MAAA,IAAA,GAAO,YAAY,WAAY,CAAA;AAAA,EAC1C,SAAW,EAAA,gBAAA;AAAA,EACX,MAAQ,EAAA,MAAA;AAAA,EACR,WAAa,EAAA,cAAA;AAAA,EACb,YAAc,EAAA;AAChB,CAAC","file":"CartClear.js","sourcesContent":["import { CartOutput, CartClearInput } from \"../schema.js\";\n\nimport * as AjaxRequest from \"../services/AjaxRequest.js\";\n\nexport type ClearInput = CartClearInput;\n\nexport const make = AjaxRequest.makeFactory({\n routeName: \"cart_clear_url\",\n method: \"post\",\n inputSchema: CartClearInput,\n outputSchema: CartOutput,\n});\n"]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CartOutput, CartGetInput } from '../schema.js';
|
|
2
2
|
import * as AjaxRequest from '../services/AjaxRequest.js';
|
|
3
3
|
|
|
4
4
|
const make = AjaxRequest.makeFactory({
|
|
5
5
|
routeName: "cart_url",
|
|
6
6
|
method: "get",
|
|
7
7
|
inputSchema: CartGetInput,
|
|
8
|
-
outputSchema:
|
|
8
|
+
outputSchema: CartOutput
|
|
9
9
|
});
|
|
10
10
|
|
|
11
11
|
export { make };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/effect/api/CartGet.ts"],"names":[],"mappings":";;;AAMa,MAAA,IAAA,GAAO,YAAY,WAAY,CAAA;AAAA,EAC1C,SAAW,EAAA,UAAA;AAAA,EACX,MAAQ,EAAA,KAAA;AAAA,EACR,WAAa,EAAA,YAAA;AAAA,EACb,YAAc,EAAA;AAChB,CAAC","file":"CartGet.js","sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../../src/effect/api/CartGet.ts"],"names":[],"mappings":";;;AAMa,MAAA,IAAA,GAAO,YAAY,WAAY,CAAA;AAAA,EAC1C,SAAW,EAAA,UAAA;AAAA,EACX,MAAQ,EAAA,KAAA;AAAA,EACR,WAAa,EAAA,YAAA;AAAA,EACb,YAAc,EAAA;AAChB,CAAC","file":"CartGet.js","sourcesContent":["import { CartOutput, CartGetInput } from \"../schema.js\";\n\nimport * as AjaxRequest from \"../services/AjaxRequest.js\";\n\nexport type GetInput = CartGetInput;\n\nexport const make = AjaxRequest.makeFactory({\n routeName: \"cart_url\",\n method: \"get\",\n inputSchema: CartGetInput,\n outputSchema: CartOutput,\n});\n"]}
|
package/dist/effect/index.d.ts
CHANGED
|
@@ -604,45 +604,6 @@ export declare const change: (input?: ({
|
|
|
604
604
|
readonly key: string;
|
|
605
605
|
readonly value: string | number | boolean | null;
|
|
606
606
|
}[];
|
|
607
|
-
} & {
|
|
608
|
-
readonly items_added: readonly {
|
|
609
|
-
readonly title: string;
|
|
610
|
-
readonly url: string;
|
|
611
|
-
readonly price: string;
|
|
612
|
-
readonly id: string;
|
|
613
|
-
readonly quantity: number;
|
|
614
|
-
readonly variant_id: number;
|
|
615
|
-
readonly sku: string;
|
|
616
|
-
readonly vendor: string;
|
|
617
|
-
readonly product_id: number;
|
|
618
|
-
readonly image: string;
|
|
619
|
-
readonly product_type: string;
|
|
620
|
-
readonly product_title: string;
|
|
621
|
-
readonly variant_title: string;
|
|
622
|
-
readonly presentment_price: number;
|
|
623
|
-
readonly untranslated_product_title: string;
|
|
624
|
-
readonly untranslated_variant_title: string;
|
|
625
|
-
readonly view_key: string;
|
|
626
|
-
}[];
|
|
627
|
-
readonly items_removed: readonly {
|
|
628
|
-
readonly title: string;
|
|
629
|
-
readonly url: string;
|
|
630
|
-
readonly price: string;
|
|
631
|
-
readonly id: string;
|
|
632
|
-
readonly quantity: number;
|
|
633
|
-
readonly variant_id: number;
|
|
634
|
-
readonly sku: string;
|
|
635
|
-
readonly vendor: string;
|
|
636
|
-
readonly product_id: number;
|
|
637
|
-
readonly image: string;
|
|
638
|
-
readonly product_type: string;
|
|
639
|
-
readonly product_title: string;
|
|
640
|
-
readonly variant_title: string;
|
|
641
|
-
readonly presentment_price: number;
|
|
642
|
-
readonly untranslated_product_title: string;
|
|
643
|
-
readonly untranslated_variant_title: string;
|
|
644
|
-
readonly view_key: string;
|
|
645
|
-
}[];
|
|
646
607
|
} & {
|
|
647
608
|
readonly sections: {
|
|
648
609
|
readonly [x: string]: string | null;
|
|
@@ -821,45 +782,6 @@ export declare const change: (input?: ({
|
|
|
821
782
|
readonly key: string;
|
|
822
783
|
readonly value: string | number | boolean | null;
|
|
823
784
|
}[];
|
|
824
|
-
} & {
|
|
825
|
-
readonly items_added: readonly {
|
|
826
|
-
readonly title: string;
|
|
827
|
-
readonly url: string;
|
|
828
|
-
readonly price: string;
|
|
829
|
-
readonly id: string;
|
|
830
|
-
readonly quantity: number;
|
|
831
|
-
readonly variant_id: number;
|
|
832
|
-
readonly sku: string;
|
|
833
|
-
readonly vendor: string;
|
|
834
|
-
readonly product_id: number;
|
|
835
|
-
readonly image: string;
|
|
836
|
-
readonly product_type: string;
|
|
837
|
-
readonly product_title: string;
|
|
838
|
-
readonly variant_title: string;
|
|
839
|
-
readonly presentment_price: number;
|
|
840
|
-
readonly untranslated_product_title: string;
|
|
841
|
-
readonly untranslated_variant_title: string;
|
|
842
|
-
readonly view_key: string;
|
|
843
|
-
}[];
|
|
844
|
-
readonly items_removed: readonly {
|
|
845
|
-
readonly title: string;
|
|
846
|
-
readonly url: string;
|
|
847
|
-
readonly price: string;
|
|
848
|
-
readonly id: string;
|
|
849
|
-
readonly quantity: number;
|
|
850
|
-
readonly variant_id: number;
|
|
851
|
-
readonly sku: string;
|
|
852
|
-
readonly vendor: string;
|
|
853
|
-
readonly product_id: number;
|
|
854
|
-
readonly image: string;
|
|
855
|
-
readonly product_type: string;
|
|
856
|
-
readonly product_title: string;
|
|
857
|
-
readonly variant_title: string;
|
|
858
|
-
readonly presentment_price: number;
|
|
859
|
-
readonly untranslated_product_title: string;
|
|
860
|
-
readonly untranslated_variant_title: string;
|
|
861
|
-
readonly view_key: string;
|
|
862
|
-
}[];
|
|
863
785
|
} & {
|
|
864
786
|
readonly sections: null;
|
|
865
787
|
}>, InvalidAjaxMethodError | import("@effect/platform/HttpClientError").HttpClientError | import("effect/ParseResult").ParseError | import("@effect/platform/HttpBody").HttpBodyError, import("@effect/platform/HttpClient").HttpClient>;
|
|
@@ -1774,13 +1696,6 @@ export declare const update: (input?: ({
|
|
|
1774
1696
|
readonly key: string;
|
|
1775
1697
|
readonly value: string | number | boolean | null;
|
|
1776
1698
|
}[];
|
|
1777
|
-
} & {
|
|
1778
|
-
readonly items_changelog: {
|
|
1779
|
-
readonly added: readonly {
|
|
1780
|
-
readonly quantity: number;
|
|
1781
|
-
readonly variant_id: number;
|
|
1782
|
-
}[];
|
|
1783
|
-
};
|
|
1784
1699
|
} & {
|
|
1785
1700
|
readonly sections: {
|
|
1786
1701
|
readonly [x: string]: string | null;
|
|
@@ -1959,13 +1874,6 @@ export declare const update: (input?: ({
|
|
|
1959
1874
|
readonly key: string;
|
|
1960
1875
|
readonly value: string | number | boolean | null;
|
|
1961
1876
|
}[];
|
|
1962
|
-
} & {
|
|
1963
|
-
readonly items_changelog: {
|
|
1964
|
-
readonly added: readonly {
|
|
1965
|
-
readonly quantity: number;
|
|
1966
|
-
readonly variant_id: number;
|
|
1967
|
-
}[];
|
|
1968
|
-
};
|
|
1969
1877
|
} & {
|
|
1970
1878
|
readonly sections: null;
|
|
1971
1879
|
}>, InvalidAjaxMethodError | import("@effect/platform/HttpClientError").HttpClientError | import("effect/ParseResult").ParseError | import("@effect/platform/HttpBody").HttpBodyError, import("@effect/platform/HttpClient").HttpClient>;
|
package/dist/effect/schema.js
CHANGED
|
@@ -297,66 +297,65 @@ const BaseCart = Schema.Struct({
|
|
|
297
297
|
items_subtotal_price: Schema.Number,
|
|
298
298
|
cart_level_discount_applications: Schema.Array(CartLevelDiscountApplication)
|
|
299
299
|
});
|
|
300
|
-
const Cart = Schema.
|
|
300
|
+
const Cart = Schema.extend(
|
|
301
301
|
BaseCart,
|
|
302
|
-
Schema.
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
attributes_array: Schema.optionalWith(BaseAttributesArray, {
|
|
306
|
-
default: () => []
|
|
307
|
-
}),
|
|
308
|
-
private_attributes: Schema.optionalWith(BasePrivateAttributes, {
|
|
309
|
-
default: () => ({})
|
|
310
|
-
}),
|
|
311
|
-
private_attributes_array: Schema.optionalWith(
|
|
312
|
-
BasePrivateAttributesArray,
|
|
313
|
-
{
|
|
314
|
-
default: () => []
|
|
315
|
-
}
|
|
316
|
-
),
|
|
317
|
-
public_attributes: Schema.optionalWith(BasePublicAttributes, {
|
|
318
|
-
default: () => ({})
|
|
319
|
-
}),
|
|
320
|
-
public_attributes_array: Schema.optionalWith(BasePrivateAttributesArray, {
|
|
321
|
-
default: () => []
|
|
322
|
-
})
|
|
323
|
-
})
|
|
324
|
-
),
|
|
325
|
-
{
|
|
326
|
-
decode: (cart) => ({
|
|
327
|
-
...cart,
|
|
328
|
-
attributes_array: cart.attributes,
|
|
329
|
-
private_attributes: cart.attributes,
|
|
330
|
-
private_attributes_array: cart.attributes,
|
|
331
|
-
public_attributes: cart.attributes,
|
|
332
|
-
public_attributes_array: cart.attributes
|
|
302
|
+
Schema.Struct({
|
|
303
|
+
attributes_array: Schema.optionalWith(BaseAttributesArray, {
|
|
304
|
+
default: () => []
|
|
333
305
|
}),
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
306
|
+
private_attributes: Schema.optionalWith(BasePrivateAttributes, {
|
|
307
|
+
default: () => ({})
|
|
308
|
+
}),
|
|
309
|
+
private_attributes_array: Schema.optionalWith(BasePrivateAttributesArray, {
|
|
310
|
+
default: () => []
|
|
311
|
+
}),
|
|
312
|
+
public_attributes: Schema.optionalWith(BasePublicAttributes, {
|
|
313
|
+
default: () => ({})
|
|
314
|
+
}),
|
|
315
|
+
public_attributes_array: Schema.optionalWith(BasePrivateAttributesArray, {
|
|
316
|
+
default: () => []
|
|
317
|
+
})
|
|
318
|
+
})
|
|
342
319
|
);
|
|
320
|
+
const makeCartTransformSchema = (schema) => Schema.transform(schema, Cart, {
|
|
321
|
+
decode: (cart) => ({
|
|
322
|
+
...cart,
|
|
323
|
+
attributes_array: cart.attributes,
|
|
324
|
+
private_attributes: cart.attributes,
|
|
325
|
+
private_attributes_array: cart.attributes,
|
|
326
|
+
public_attributes: cart.attributes,
|
|
327
|
+
public_attributes_array: cart.attributes
|
|
328
|
+
}),
|
|
329
|
+
encode: (cart) => pipe(
|
|
330
|
+
Record.remove("attributes_array")(cart),
|
|
331
|
+
Record.remove("private_attributes"),
|
|
332
|
+
Record.remove("private_attributes_array"),
|
|
333
|
+
Record.remove("public_attributes"),
|
|
334
|
+
Record.remove("public_attributes_array")
|
|
335
|
+
)
|
|
336
|
+
});
|
|
337
|
+
const CartOutput = makeCartTransformSchema(BaseCart);
|
|
343
338
|
const makeCartSchema = (sections) => {
|
|
344
339
|
if (sections) {
|
|
345
|
-
return
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
Schema.
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
340
|
+
return makeCartTransformSchema(
|
|
341
|
+
Schema.extend(
|
|
342
|
+
BaseCart,
|
|
343
|
+
Schema.Struct({
|
|
344
|
+
sections: Schema.optionalWith(
|
|
345
|
+
Schema.NullOr(Ajax.Sections.makeResponseSchema(sections)),
|
|
346
|
+
{ default: () => null }
|
|
347
|
+
)
|
|
348
|
+
})
|
|
349
|
+
)
|
|
353
350
|
);
|
|
354
351
|
}
|
|
355
|
-
return
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
352
|
+
return makeCartTransformSchema(
|
|
353
|
+
Schema.extend(
|
|
354
|
+
BaseCart,
|
|
355
|
+
Schema.Struct({
|
|
356
|
+
sections: Schema.optionalWith(Schema.Null, { default: () => null })
|
|
357
|
+
})
|
|
358
|
+
)
|
|
360
359
|
);
|
|
361
360
|
};
|
|
362
361
|
const AddItemInput = Schema.Struct({
|
|
@@ -395,13 +394,15 @@ const ItemAddedChangelog = Schema.Struct({
|
|
|
395
394
|
variant_id: Schema.Number,
|
|
396
395
|
quantity: Schema.Number
|
|
397
396
|
});
|
|
398
|
-
const CartUpdateOutput =
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
397
|
+
const CartUpdateOutput = makeCartTransformSchema(
|
|
398
|
+
Schema.extend(
|
|
399
|
+
BaseCart,
|
|
400
|
+
Schema.Struct({
|
|
401
|
+
items_changelog: Schema.Struct({
|
|
402
|
+
added: Schema.Array(ItemAddedChangelog)
|
|
403
|
+
})
|
|
403
404
|
})
|
|
404
|
-
|
|
405
|
+
)
|
|
405
406
|
);
|
|
406
407
|
const CartChangeItemOptionalInput = Schema.Struct({
|
|
407
408
|
quantity: Schema.optional(Schema.Number),
|
|
@@ -444,12 +445,14 @@ const CartChangeInput = Schema.Union(
|
|
|
444
445
|
})
|
|
445
446
|
)
|
|
446
447
|
);
|
|
447
|
-
const CartChangeOutput =
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
448
|
+
const CartChangeOutput = makeCartTransformSchema(
|
|
449
|
+
Schema.extend(
|
|
450
|
+
BaseCart,
|
|
451
|
+
Schema.Struct({
|
|
452
|
+
items_added: Schema.Array(LineItemChange),
|
|
453
|
+
items_removed: Schema.Array(LineItemChange)
|
|
454
|
+
})
|
|
455
|
+
)
|
|
453
456
|
);
|
|
454
457
|
const CartClearInput = Ajax.Sections.Input;
|
|
455
458
|
const CartGetInput = Ajax.Sections.Input;
|
|
@@ -457,6 +460,6 @@ const CartUpdateDiscountsInput = Schema.mutable(
|
|
|
457
460
|
Schema.Array(Schema.NonEmptyString)
|
|
458
461
|
);
|
|
459
462
|
|
|
460
|
-
export { AddItemInput, Attributes, BaseAttributes, BaseAttributesArray, BaseCart, BaseInput, Cart, CartAddInput, CartAddOutput, CartChangeInput, CartChangeItemOptionalInput, CartChangeOutput, CartClearInput, CartGetInput, CartLevelDiscountApplication, CartUpdateDiscountsInput, CartUpdateInput, CartUpdateOutput, CurrencyCode, Discount, DiscountApplication, Image, ItemAddedChangelog, LineItem, LineItemChange, LineLevelDiscountAllocation, OptionWithValue, QuantityRule, SellingPlan, SellingPlanAllocation, SellingPlanAllocationPriceAdjustment, SellingPlanOption, SellingPlanPriceAdjustment, UnitPriceMeasurement, UpdateItemRecordInput, makeCartSchema };
|
|
463
|
+
export { AddItemInput, Attributes, BaseAttributes, BaseAttributesArray, BaseCart, BaseInput, Cart, CartAddInput, CartAddOutput, CartChangeInput, CartChangeItemOptionalInput, CartChangeOutput, CartClearInput, CartGetInput, CartLevelDiscountApplication, CartOutput, CartUpdateDiscountsInput, CartUpdateInput, CartUpdateOutput, CurrencyCode, Discount, DiscountApplication, Image, ItemAddedChangelog, LineItem, LineItemChange, LineLevelDiscountAllocation, OptionWithValue, QuantityRule, SellingPlan, SellingPlanAllocation, SellingPlanAllocationPriceAdjustment, SellingPlanOption, SellingPlanPriceAdjustment, UnitPriceMeasurement, UpdateItemRecordInput, makeCartSchema, makeCartTransformSchema };
|
|
461
464
|
//# sourceMappingURL=schema.js.map
|
|
462
465
|
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/effect/schema.ts"],"names":[],"mappings":"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","file":"schema.js","sourcesContent":["import * as Schema from \"effect/Schema\";\nimport * as Array from \"effect/Array\";\nimport * as Record from \"effect/Record\";\nimport { Resource, Ajax } from \"@brytdesigns/shopify-utils/effect\";\nimport { pipe, identity } from \"effect\";\n\ntype BaseAttributeValue = Schema.Schema.Type<typeof BaseAttributeValue>;\nconst BaseAttributeValue = Schema.Union(\n Schema.Null,\n Schema.String,\n Schema.Boolean,\n Schema.Number,\n);\n\nconst AttributesArray = Schema.Array(\n Schema.Struct({ key: Schema.String, value: BaseAttributeValue }),\n);\n\nexport type BaseAttributes = Schema.Schema.Type<typeof BaseAttributes>;\nexport const BaseAttributes = Schema.Record({\n key: Schema.String,\n value: BaseAttributeValue,\n});\n\nexport const BaseAttributesArray = Schema.transform(\n BaseAttributes,\n AttributesArray,\n {\n decode: (record) =>\n Record.toEntries(record).map(([key, value]) => ({ key, value })),\n encode: (array) =>\n Record.fromEntries(\n pipe(\n array,\n Array.map(({ key, value }) => [key, value]),\n ),\n ),\n },\n);\n\nconst BasePrivateAttributes = Schema.transform(BaseAttributes, BaseAttributes, {\n decode: Record.filter((value, key) => key.startsWith(\"_\")),\n encode: identity,\n});\n\nconst BasePublicAttributes = Schema.transform(BaseAttributes, BaseAttributes, {\n decode: Record.filter((value, key) => !key.startsWith(\"_\")),\n encode: identity,\n});\n\nconst BasePrivateAttributesArray = Schema.transform(\n BasePrivateAttributes,\n AttributesArray,\n {\n decode: (record) =>\n Record.toEntries(record).map(([key, value]) => ({ key, value })),\n encode: (array) =>\n Record.fromEntries(\n pipe(\n array,\n Array.map(({ key, value }) => [key, value]),\n ),\n ),\n },\n);\n\nconst BasePublicAttributesArray = Schema.transform(\n BasePublicAttributes,\n AttributesArray,\n {\n decode: (record) =>\n Record.toEntries(record).map(([key, value]) => ({ key, value })),\n encode: (array) =>\n Record.fromEntries(\n pipe(\n array,\n Array.map(({ key, value }) => [key, value]),\n ),\n ),\n },\n);\n\nexport const Attributes = Schema.transform(\n BaseAttributes,\n Schema.Struct({\n private: Schema.Struct({\n array: BasePrivateAttributesArray,\n record: BasePrivateAttributes,\n }),\n public: Schema.Struct({\n array: BasePublicAttributesArray,\n record: BasePublicAttributes,\n }),\n }),\n {\n decode: (attributes) => ({\n private: {\n array: attributes,\n record: attributes,\n },\n public: {\n array: attributes,\n record: attributes,\n },\n }),\n encode: (attributes) => ({\n ...attributes.private.record,\n ...attributes.public.record,\n }),\n },\n);\n\nexport type DiscountApplication = Schema.Schema.Type<\n typeof DiscountApplication\n>;\n\nexport const DiscountApplication = Schema.Struct({\n target_selection: Schema.Literal(\"all\", \"entitled\", \"explicit\"),\n target_type: Schema.Literal(\"line_item\", \"shipping_line\"),\n title: Schema.NonEmptyString,\n total_allocated_amount: Schema.Number,\n type: Schema.Literal(\"\", \"automatic\", \"discount_code\", \"manual\", \"script\"),\n value: Schema.Union(Schema.Number, Schema.NumberFromString),\n value_type: Schema.Literal(\"fixed_amount\", \"percentage\"),\n description: Schema.NullOr(Schema.String),\n});\n\nexport const Discount = Schema.Struct({\n amount: Schema.Number,\n title: Schema.String,\n});\n\nexport type CurrencyCode = Schema.Schema.Type<typeof CurrencyCode>;\nexport const CurrencyCode = Schema.String;\n\nexport type Image = Schema.Schema.Type<typeof Image>;\nexport const Image = Schema.Struct({\n aspect_ratio: Schema.Number,\n alt: Schema.String,\n height: Schema.Number,\n url: Schema.String,\n width: Schema.Number,\n});\n\nexport type OptionWithValue = Schema.Schema.Type<typeof OptionWithValue>;\nexport const OptionWithValue = Schema.Struct({\n name: Schema.String,\n value: Schema.String,\n});\n\nexport type QuantityRule = Schema.Schema.Type<typeof QuantityRule>;\nexport const QuantityRule = Schema.Struct({\n min: Schema.Number,\n max: Schema.NullOr(Schema.Number),\n increment: Schema.Number,\n});\n\nexport type SellingPlanAllocationPriceAdjustment = Schema.Schema.Type<\n typeof SellingPlanAllocationPriceAdjustment\n>;\nexport const SellingPlanAllocationPriceAdjustment = Schema.Struct({\n position: Schema.Number,\n price: Schema.Number,\n});\n\nexport const SellingPlanPriceAdjustment = Schema.Struct({\n order_count: Schema.NullOr(Schema.Number),\n position: Schema.Number,\n value: Schema.Union(Schema.Number, Schema.String),\n value_type: Schema.Literal(\"percentage\", \"fixed_amount\", \"price\"),\n});\n\nexport type SellingPlanOption = Schema.Schema.Type<typeof SellingPlanOption>;\nexport const SellingPlanOption = Schema.Struct({\n name: Schema.String,\n position: Schema.Number,\n value: Schema.String,\n});\n\nexport type SellingPlan = Schema.Schema.Type<typeof SellingPlan>;\nexport const SellingPlan = Schema.Struct({\n id: Resource.ID,\n name: Schema.String,\n description: Schema.NullOr(Schema.String),\n options: Schema.Array(SellingPlanOption),\n recurring_deliveries: Schema.optionalWith(Schema.Boolean, {\n default: () => false,\n }),\n fixed_selling_plan: Schema.optionalWith(Schema.Boolean, {\n default: () => false,\n }),\n price_adjustments: Schema.Array(SellingPlanPriceAdjustment),\n});\n\nexport type SellingPlanAllocation = Schema.Schema.Type<\n typeof SellingPlanAllocation\n>;\nexport const SellingPlanAllocation = Schema.Struct({\n price_adjustments: Schema.Array(SellingPlanAllocationPriceAdjustment),\n price: Schema.Number,\n compare_at_price: Schema.Number,\n per_delivery_price: Schema.Number,\n selling_plan: SellingPlan,\n});\n\nexport type LineLevelDiscountAllocation = Schema.Schema.Type<\n typeof LineLevelDiscountAllocation\n>;\nexport const LineLevelDiscountAllocation = Schema.Struct({\n amount: Schema.Number,\n discount_application: DiscountApplication,\n});\n\nconst CartLevelDiscountApplicationUpdate = Schema.transform(\n Schema.Struct({\n discount_application: DiscountApplication,\n }),\n DiscountApplication,\n {\n decode: (application) => application.discount_application,\n encode: (discountApplication) => ({\n discount_application: discountApplication,\n }),\n strict: false,\n },\n);\n\nexport const CartLevelDiscountApplication = Schema.Union(\n DiscountApplication,\n CartLevelDiscountApplicationUpdate,\n);\n\nexport type UnitPriceMeasurement = Schema.Schema.Type<\n typeof UnitPriceMeasurement\n>;\nexport const UnitPriceMeasurement = Schema.Struct({\n measured_type: Schema.Literal(\"volume\", \"weight\", \"dimension\"),\n quantity_unit: Schema.String,\n quantity_value: Schema.Number,\n reference_unit: Schema.String,\n reference_value: Schema.Number,\n});\n\nexport type BaseLineItem = Schema.Schema.Type<typeof BaseLineItem>;\nconst BaseLineItem = Schema.Struct({\n id: Resource.ID,\n properties: BaseAttributes,\n quantity: Schema.Number,\n variant_id: Resource.ID,\n key: Schema.String,\n title: Schema.String,\n price: Schema.Number,\n original_price: Schema.Number,\n discounted_price: Schema.Number,\n line_price: Schema.Number,\n original_line_price: Schema.Number,\n total_discount: Schema.Number,\n discounts: Schema.optionalWith(Schema.Array(Discount), { default: () => [] }),\n sku: Schema.NullOr(Schema.String),\n grams: Schema.Number,\n vendor: Schema.String,\n taxable: Schema.Boolean,\n product_id: Resource.ID,\n product_has_only_default_variant: Schema.Boolean,\n gift_card: Schema.Boolean,\n final_line_price: Schema.Number,\n final_price: Schema.Number,\n url: Schema.String,\n featured_image: Schema.optional(Image),\n image: Schema.String,\n handle: Schema.String,\n requires_shipping: Schema.Boolean,\n product_type: Schema.String,\n product_title: Schema.String,\n product_description: Schema.String,\n variant_title: Schema.NullOr(Schema.String),\n variant_options: Schema.Array(Schema.String),\n options_with_values: Schema.Array(OptionWithValue),\n line_level_discount_allocations: Schema.Array(LineLevelDiscountAllocation),\n line_level_total_discount: Schema.Number,\n quantity_rule: Schema.optional(QuantityRule),\n has_components: Schema.optionalWith(Schema.Boolean, { default: () => false }),\n unit_price: Schema.optional(Schema.Number),\n unit_price_measurement: Schema.optional(UnitPriceMeasurement),\n selling_plan_allocation: Schema.optionalWith(\n Schema.NullOr(SellingPlanAllocation),\n { default: () => null },\n ),\n});\n\nexport type LineItem = Schema.Schema.Type<typeof LineItem>;\nexport const LineItem = Schema.transform(\n BaseLineItem,\n Schema.extend(\n BaseLineItem,\n Schema.Struct({\n properties_array: Schema.optionalWith(BaseAttributesArray, {\n default: () => [],\n }),\n private_properties: Schema.optionalWith(BasePrivateAttributes, {\n default: () => ({}),\n }),\n private_properties_array: Schema.optionalWith(\n BasePrivateAttributesArray,\n {\n default: () => [],\n },\n ),\n public_properties: Schema.optionalWith(BasePublicAttributes, {\n default: () => ({}),\n }),\n public_properties_array: Schema.optionalWith(BasePrivateAttributesArray, {\n default: () => [],\n }),\n }),\n ),\n {\n decode: (lineItem) => ({\n ...lineItem,\n properties_array: lineItem.properties,\n private_properties: lineItem.properties,\n private_properties_array: lineItem.properties,\n public_properties: lineItem.properties,\n public_properties_array: lineItem.properties,\n }),\n encode: (lineItem) =>\n pipe(\n Record.remove(\"properties_array\")(lineItem),\n Record.remove(\"private_properties\"),\n Record.remove(\"private_properties_array\"),\n Record.remove(\"public_properties\"),\n Record.remove(\"public_properties_array\"),\n ) as BaseLineItem,\n },\n);\n\ntype BaseCart = Schema.Schema.Type<typeof BaseCart>;\nexport const BaseCart = Schema.Struct({\n token: Schema.String,\n note: Schema.NullOr(Schema.String),\n attributes: BaseAttributes,\n discounts: Schema.optionalWith(Schema.Array(Discount), { default: () => [] }),\n discount_codes: Schema.optionalWith(\n Schema.Array(\n Schema.Struct({ code: Schema.String, applicable: Schema.Boolean }),\n ),\n { default: () => [] },\n ),\n original_total_price: Schema.Number,\n total_price: Schema.Number,\n total_discount: Schema.Number,\n total_weight: Schema.Number,\n item_count: Schema.Number,\n items: Schema.Array(LineItem),\n requires_shipping: Schema.Boolean,\n currency: CurrencyCode,\n items_subtotal_price: Schema.Number,\n cart_level_discount_applications: Schema.Array(CartLevelDiscountApplication),\n});\n\nexport const Cart = Schema.transform(\n BaseCart,\n Schema.extend(\n BaseCart,\n Schema.Struct({\n attributes_array: Schema.optionalWith(BaseAttributesArray, {\n default: () => [],\n }),\n private_attributes: Schema.optionalWith(BasePrivateAttributes, {\n default: () => ({}),\n }),\n private_attributes_array: Schema.optionalWith(\n BasePrivateAttributesArray,\n {\n default: () => [],\n },\n ),\n public_attributes: Schema.optionalWith(BasePublicAttributes, {\n default: () => ({}),\n }),\n public_attributes_array: Schema.optionalWith(BasePrivateAttributesArray, {\n default: () => [],\n }),\n }),\n ),\n {\n decode: (cart) => ({\n ...cart,\n attributes_array: cart.attributes,\n private_attributes: cart.attributes,\n private_attributes_array: cart.attributes,\n public_attributes: cart.attributes,\n public_attributes_array: cart.attributes,\n }),\n encode: (cart) =>\n pipe(\n Record.remove(\"attributes_array\")(cart),\n Record.remove(\"private_attributes\"),\n Record.remove(\"private_attributes_array\"),\n Record.remove(\"public_attributes\"),\n Record.remove(\"public_attributes_array\"),\n ) as BaseCart,\n },\n);\n\nexport const makeCartSchema = (sections?: string) => {\n if (sections) {\n return Schema.extend(\n Cart,\n Schema.Struct({\n sections: Schema.optionalWith(\n Schema.NullOr(Ajax.Sections.makeResponseSchema(sections)),\n { default: () => null },\n ),\n }),\n );\n }\n return Schema.extend(\n Cart,\n Schema.Struct({\n sections: Schema.optionalWith(Schema.Null, { default: () => null }),\n }),\n );\n};\n\nexport type AddItemInput = Schema.Schema.Encoded<typeof AddItemInput>;\nexport const AddItemInput = Schema.Struct({\n id: Resource.ID,\n quantity: Schema.optionalWith(Schema.Number, { default: () => 1 }),\n properties: Schema.optionalWith(BaseAttributes, { default: () => ({}) }),\n selling_plan: Schema.optional(Resource.ID),\n});\n\nexport const BaseInput = Schema.extend(Ajax.Sections.Input);\n\nexport type CartAddInput = Schema.Schema.Encoded<typeof CartAddInput>;\nexport const CartAddInput = Schema.Struct({\n items: Schema.Array(AddItemInput),\n}).pipe(BaseInput);\n\nexport type CartAddOutput = Schema.Schema.Type<typeof CartAddOutput>;\nexport const CartAddOutput = Schema.Struct({\n items: Schema.Array(LineItem),\n});\n\nexport type UpdateItemRecordInput = Schema.Schema.Encoded<\n typeof UpdateItemRecordInput\n>;\nexport const UpdateItemRecordInput = Schema.Record({\n key: Schema.String,\n value: Schema.Number,\n});\n\nconst DiscountCodeInput = Schema.Array(Schema.String);\nconst DiscountCodeTransformed = Schema.String;\n\nexport type CartUpdateInput = Schema.Schema.Encoded<typeof CartUpdateInput>;\nexport const CartUpdateInput = Schema.Struct({\n updates: Schema.optional(\n Schema.Union(UpdateItemRecordInput, Schema.Array(Schema.Number)),\n ),\n note: Schema.optional(Schema.NullOr(Schema.String)),\n attributes: Schema.optional(BaseAttributes),\n discount: Schema.optional(\n Schema.transform(DiscountCodeInput, DiscountCodeTransformed, {\n decode: (input) => input.join(\",\"),\n encode: (input) => input.split(\",\"),\n }),\n ),\n}).pipe(BaseInput);\n\nexport type ItemAddedChangelog = Schema.Schema.Type<typeof ItemAddedChangelog>;\nexport const ItemAddedChangelog = Schema.Struct({\n variant_id: Schema.Number,\n quantity: Schema.Number,\n});\n\nexport type CartUpdateOutput = Schema.Schema.Type<typeof CartUpdateOutput>;\nexport const CartUpdateOutput = Schema.extend(\n Cart,\n Schema.Struct({\n items_changelog: Schema.Struct({\n added: Schema.Array(ItemAddedChangelog),\n }),\n }),\n);\n\nexport const CartChangeItemOptionalInput = Schema.Struct({\n quantity: Schema.optional(Schema.Number),\n properties: Schema.optional(\n Schema.Record({\n key: Schema.String,\n value: Schema.NullOr(Schema.String),\n }),\n ),\n selling_plan: Schema.optional(Schema.NullOr(Resource.ID)),\n}).pipe(BaseInput);\n\nexport const LineItemChange = Schema.Struct({\n product_id: Schema.Number,\n variant_id: Schema.Number,\n id: Schema.String,\n image: Schema.String,\n price: Schema.String,\n presentment_price: Schema.Number,\n quantity: Schema.Number,\n title: Schema.String,\n product_title: Schema.String,\n variant_title: Schema.String,\n vendor: Schema.String,\n product_type: Schema.String,\n sku: Schema.String,\n url: Schema.String,\n untranslated_product_title: Schema.String,\n untranslated_variant_title: Schema.String,\n view_key: Schema.String,\n});\n\nexport type CartChangeInput = Schema.Schema.Encoded<typeof CartChangeInput>;\nexport const CartChangeInput = Schema.Union(\n Schema.extend(CartChangeItemOptionalInput)(\n Schema.Struct({\n id: Schema.String,\n }),\n ),\n Schema.extend(CartChangeItemOptionalInput)(\n Schema.Struct({\n line: Schema.Number,\n }),\n ),\n);\n\nexport type CartChangeOutput = Schema.Schema.Type<typeof CartChangeOutput>;\nexport const CartChangeOutput = Schema.extend(\n Cart,\n Schema.Struct({\n items_added: Schema.Array(LineItemChange),\n items_removed: Schema.Array(LineItemChange),\n }),\n);\n\nexport type CartClearInput = Schema.Schema.Encoded<typeof CartClearInput>;\nexport const CartClearInput = Ajax.Sections.Input;\n\nexport type CartGetInput = Schema.Schema.Encoded<typeof CartClearInput>;\nexport const CartGetInput = Ajax.Sections.Input;\n\nexport type CartUpdateDiscountsInput = Schema.Schema.Encoded<\n typeof CartUpdateDiscountsInput\n>;\nexport const CartUpdateDiscountsInput = Schema.mutable(\n Schema.Array(Schema.NonEmptyString),\n);\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/effect/schema.ts"],"names":[],"mappings":"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","file":"schema.js","sourcesContent":["import * as Schema from \"effect/Schema\";\nimport * as Array from \"effect/Array\";\nimport * as Record from \"effect/Record\";\nimport { Resource, Ajax } from \"@brytdesigns/shopify-utils/effect\";\nimport { pipe, identity } from \"effect\";\n\ntype BaseAttributeValue = Schema.Schema.Type<typeof BaseAttributeValue>;\nconst BaseAttributeValue = Schema.Union(\n Schema.Null,\n Schema.String,\n Schema.Boolean,\n Schema.Number,\n);\n\nconst AttributesArray = Schema.Array(\n Schema.Struct({ key: Schema.String, value: BaseAttributeValue }),\n);\n\nexport type BaseAttributes = Schema.Schema.Type<typeof BaseAttributes>;\nexport const BaseAttributes = Schema.Record({\n key: Schema.String,\n value: BaseAttributeValue,\n});\n\nexport const BaseAttributesArray = Schema.transform(\n BaseAttributes,\n AttributesArray,\n {\n decode: (record) =>\n Record.toEntries(record).map(([key, value]) => ({ key, value })),\n encode: (array) =>\n Record.fromEntries(\n pipe(\n array,\n Array.map(({ key, value }) => [key, value]),\n ),\n ),\n },\n);\n\nconst BasePrivateAttributes = Schema.transform(BaseAttributes, BaseAttributes, {\n decode: Record.filter((value, key) => key.startsWith(\"_\")),\n encode: identity,\n});\n\nconst BasePublicAttributes = Schema.transform(BaseAttributes, BaseAttributes, {\n decode: Record.filter((value, key) => !key.startsWith(\"_\")),\n encode: identity,\n});\n\nconst BasePrivateAttributesArray = Schema.transform(\n BasePrivateAttributes,\n AttributesArray,\n {\n decode: (record) =>\n Record.toEntries(record).map(([key, value]) => ({ key, value })),\n encode: (array) =>\n Record.fromEntries(\n pipe(\n array,\n Array.map(({ key, value }) => [key, value]),\n ),\n ),\n },\n);\n\nconst BasePublicAttributesArray = Schema.transform(\n BasePublicAttributes,\n AttributesArray,\n {\n decode: (record) =>\n Record.toEntries(record).map(([key, value]) => ({ key, value })),\n encode: (array) =>\n Record.fromEntries(\n pipe(\n array,\n Array.map(({ key, value }) => [key, value]),\n ),\n ),\n },\n);\n\nexport const Attributes = Schema.transform(\n BaseAttributes,\n Schema.Struct({\n private: Schema.Struct({\n array: BasePrivateAttributesArray,\n record: BasePrivateAttributes,\n }),\n public: Schema.Struct({\n array: BasePublicAttributesArray,\n record: BasePublicAttributes,\n }),\n }),\n {\n decode: (attributes) => ({\n private: {\n array: attributes,\n record: attributes,\n },\n public: {\n array: attributes,\n record: attributes,\n },\n }),\n encode: (attributes) => ({\n ...attributes.private.record,\n ...attributes.public.record,\n }),\n },\n);\n\nexport type DiscountApplication = Schema.Schema.Type<\n typeof DiscountApplication\n>;\n\nexport const DiscountApplication = Schema.Struct({\n target_selection: Schema.Literal(\"all\", \"entitled\", \"explicit\"),\n target_type: Schema.Literal(\"line_item\", \"shipping_line\"),\n title: Schema.NonEmptyString,\n total_allocated_amount: Schema.Number,\n type: Schema.Literal(\"\", \"automatic\", \"discount_code\", \"manual\", \"script\"),\n value: Schema.Union(Schema.Number, Schema.NumberFromString),\n value_type: Schema.Literal(\"fixed_amount\", \"percentage\"),\n description: Schema.NullOr(Schema.String),\n});\n\nexport const Discount = Schema.Struct({\n amount: Schema.Number,\n title: Schema.String,\n});\n\nexport type CurrencyCode = Schema.Schema.Type<typeof CurrencyCode>;\nexport const CurrencyCode = Schema.String;\n\nexport type Image = Schema.Schema.Type<typeof Image>;\nexport const Image = Schema.Struct({\n aspect_ratio: Schema.Number,\n alt: Schema.String,\n height: Schema.Number,\n url: Schema.String,\n width: Schema.Number,\n});\n\nexport type OptionWithValue = Schema.Schema.Type<typeof OptionWithValue>;\nexport const OptionWithValue = Schema.Struct({\n name: Schema.String,\n value: Schema.String,\n});\n\nexport type QuantityRule = Schema.Schema.Type<typeof QuantityRule>;\nexport const QuantityRule = Schema.Struct({\n min: Schema.Number,\n max: Schema.NullOr(Schema.Number),\n increment: Schema.Number,\n});\n\nexport type SellingPlanAllocationPriceAdjustment = Schema.Schema.Type<\n typeof SellingPlanAllocationPriceAdjustment\n>;\nexport const SellingPlanAllocationPriceAdjustment = Schema.Struct({\n position: Schema.Number,\n price: Schema.Number,\n});\n\nexport const SellingPlanPriceAdjustment = Schema.Struct({\n order_count: Schema.NullOr(Schema.Number),\n position: Schema.Number,\n value: Schema.Union(Schema.Number, Schema.String),\n value_type: Schema.Literal(\"percentage\", \"fixed_amount\", \"price\"),\n});\n\nexport type SellingPlanOption = Schema.Schema.Type<typeof SellingPlanOption>;\nexport const SellingPlanOption = Schema.Struct({\n name: Schema.String,\n position: Schema.Number,\n value: Schema.String,\n});\n\nexport type SellingPlan = Schema.Schema.Type<typeof SellingPlan>;\nexport const SellingPlan = Schema.Struct({\n id: Resource.ID,\n name: Schema.String,\n description: Schema.NullOr(Schema.String),\n options: Schema.Array(SellingPlanOption),\n recurring_deliveries: Schema.optionalWith(Schema.Boolean, {\n default: () => false,\n }),\n fixed_selling_plan: Schema.optionalWith(Schema.Boolean, {\n default: () => false,\n }),\n price_adjustments: Schema.Array(SellingPlanPriceAdjustment),\n});\n\nexport type SellingPlanAllocation = Schema.Schema.Type<\n typeof SellingPlanAllocation\n>;\nexport const SellingPlanAllocation = Schema.Struct({\n price_adjustments: Schema.Array(SellingPlanAllocationPriceAdjustment),\n price: Schema.Number,\n compare_at_price: Schema.Number,\n per_delivery_price: Schema.Number,\n selling_plan: SellingPlan,\n});\n\nexport type LineLevelDiscountAllocation = Schema.Schema.Type<\n typeof LineLevelDiscountAllocation\n>;\nexport const LineLevelDiscountAllocation = Schema.Struct({\n amount: Schema.Number,\n discount_application: DiscountApplication,\n});\n\nconst CartLevelDiscountApplicationUpdate = Schema.transform(\n Schema.Struct({\n discount_application: DiscountApplication,\n }),\n DiscountApplication,\n {\n decode: (application) => application.discount_application,\n encode: (discountApplication) => ({\n discount_application: discountApplication,\n }),\n strict: false,\n },\n);\n\nexport const CartLevelDiscountApplication = Schema.Union(\n DiscountApplication,\n CartLevelDiscountApplicationUpdate,\n);\n\nexport type UnitPriceMeasurement = Schema.Schema.Type<\n typeof UnitPriceMeasurement\n>;\nexport const UnitPriceMeasurement = Schema.Struct({\n measured_type: Schema.Literal(\"volume\", \"weight\", \"dimension\"),\n quantity_unit: Schema.String,\n quantity_value: Schema.Number,\n reference_unit: Schema.String,\n reference_value: Schema.Number,\n});\n\nexport type BaseLineItem = Schema.Schema.Type<typeof BaseLineItem>;\nconst BaseLineItem = Schema.Struct({\n id: Resource.ID,\n properties: BaseAttributes,\n quantity: Schema.Number,\n variant_id: Resource.ID,\n key: Schema.String,\n title: Schema.String,\n price: Schema.Number,\n original_price: Schema.Number,\n discounted_price: Schema.Number,\n line_price: Schema.Number,\n original_line_price: Schema.Number,\n total_discount: Schema.Number,\n discounts: Schema.optionalWith(Schema.Array(Discount), { default: () => [] }),\n sku: Schema.NullOr(Schema.String),\n grams: Schema.Number,\n vendor: Schema.String,\n taxable: Schema.Boolean,\n product_id: Resource.ID,\n product_has_only_default_variant: Schema.Boolean,\n gift_card: Schema.Boolean,\n final_line_price: Schema.Number,\n final_price: Schema.Number,\n url: Schema.String,\n featured_image: Schema.optional(Image),\n image: Schema.String,\n handle: Schema.String,\n requires_shipping: Schema.Boolean,\n product_type: Schema.String,\n product_title: Schema.String,\n product_description: Schema.String,\n variant_title: Schema.NullOr(Schema.String),\n variant_options: Schema.Array(Schema.String),\n options_with_values: Schema.Array(OptionWithValue),\n line_level_discount_allocations: Schema.Array(LineLevelDiscountAllocation),\n line_level_total_discount: Schema.Number,\n quantity_rule: Schema.optional(QuantityRule),\n has_components: Schema.optionalWith(Schema.Boolean, { default: () => false }),\n unit_price: Schema.optional(Schema.Number),\n unit_price_measurement: Schema.optional(UnitPriceMeasurement),\n selling_plan_allocation: Schema.optionalWith(\n Schema.NullOr(SellingPlanAllocation),\n { default: () => null },\n ),\n});\n\nexport type LineItem = Schema.Schema.Type<typeof LineItem>;\nexport const LineItem = Schema.transform(\n BaseLineItem,\n Schema.extend(\n BaseLineItem,\n Schema.Struct({\n properties_array: Schema.optionalWith(BaseAttributesArray, {\n default: () => [],\n }),\n private_properties: Schema.optionalWith(BasePrivateAttributes, {\n default: () => ({}),\n }),\n private_properties_array: Schema.optionalWith(\n BasePrivateAttributesArray,\n {\n default: () => [],\n },\n ),\n public_properties: Schema.optionalWith(BasePublicAttributes, {\n default: () => ({}),\n }),\n public_properties_array: Schema.optionalWith(BasePrivateAttributesArray, {\n default: () => [],\n }),\n }),\n ),\n {\n decode: (lineItem) => ({\n ...lineItem,\n properties_array: lineItem.properties,\n private_properties: lineItem.properties,\n private_properties_array: lineItem.properties,\n public_properties: lineItem.properties,\n public_properties_array: lineItem.properties,\n }),\n encode: (lineItem) =>\n pipe(\n Record.remove(\"properties_array\")(lineItem),\n Record.remove(\"private_properties\"),\n Record.remove(\"private_properties_array\"),\n Record.remove(\"public_properties\"),\n Record.remove(\"public_properties_array\"),\n ) as BaseLineItem,\n },\n);\n\ntype BaseCart = Schema.Schema.Type<typeof BaseCart>;\nexport const BaseCart = Schema.Struct({\n token: Schema.String,\n note: Schema.NullOr(Schema.String),\n attributes: BaseAttributes,\n discounts: Schema.optionalWith(Schema.Array(Discount), { default: () => [] }),\n discount_codes: Schema.optionalWith(\n Schema.Array(\n Schema.Struct({ code: Schema.String, applicable: Schema.Boolean }),\n ),\n { default: () => [] },\n ),\n original_total_price: Schema.Number,\n total_price: Schema.Number,\n total_discount: Schema.Number,\n total_weight: Schema.Number,\n item_count: Schema.Number,\n items: Schema.Array(LineItem),\n requires_shipping: Schema.Boolean,\n currency: CurrencyCode,\n items_subtotal_price: Schema.Number,\n cart_level_discount_applications: Schema.Array(CartLevelDiscountApplication),\n});\n\ntype Cart = Schema.Schema.Type<typeof Cart>;\nexport const Cart = Schema.extend(\n BaseCart,\n Schema.Struct({\n attributes_array: Schema.optionalWith(BaseAttributesArray, {\n default: () => [],\n }),\n private_attributes: Schema.optionalWith(BasePrivateAttributes, {\n default: () => ({}),\n }),\n private_attributes_array: Schema.optionalWith(BasePrivateAttributesArray, {\n default: () => [],\n }),\n public_attributes: Schema.optionalWith(BasePublicAttributes, {\n default: () => ({}),\n }),\n public_attributes_array: Schema.optionalWith(BasePrivateAttributesArray, {\n default: () => [],\n }),\n }),\n);\n\nexport const makeCartTransformSchema = <\n A extends Schema.Schema.Type<typeof BaseCart>,\n I,\n R,\n>(\n schema: Schema.Schema<A, I, R>,\n) =>\n Schema.transform(schema, Cart, {\n decode: (cart) => ({\n ...cart,\n attributes_array: cart.attributes,\n private_attributes: cart.attributes,\n private_attributes_array: cart.attributes,\n public_attributes: cart.attributes,\n public_attributes_array: cart.attributes,\n }),\n encode: (cart) =>\n pipe(\n Record.remove(\"attributes_array\")(cart),\n Record.remove(\"private_attributes\"),\n Record.remove(\"private_attributes_array\"),\n Record.remove(\"public_attributes\"),\n Record.remove(\"public_attributes_array\"),\n ) as Schema.Schema.Type<Schema.Schema<A, I, R>>,\n });\n\nexport const CartOutput = makeCartTransformSchema(BaseCart);\n\nexport const makeCartSchema = (sections?: string) => {\n if (sections) {\n return makeCartTransformSchema(\n Schema.extend(\n BaseCart,\n Schema.Struct({\n sections: Schema.optionalWith(\n Schema.NullOr(Ajax.Sections.makeResponseSchema(sections)),\n { default: () => null },\n ),\n }),\n ),\n );\n }\n return makeCartTransformSchema(\n Schema.extend(\n BaseCart,\n Schema.Struct({\n sections: Schema.optionalWith(Schema.Null, { default: () => null }),\n }),\n ),\n );\n};\n\nexport type AddItemInput = Schema.Schema.Encoded<typeof AddItemInput>;\nexport const AddItemInput = Schema.Struct({\n id: Resource.ID,\n quantity: Schema.optionalWith(Schema.Number, { default: () => 1 }),\n properties: Schema.optionalWith(BaseAttributes, { default: () => ({}) }),\n selling_plan: Schema.optional(Resource.ID),\n});\n\nexport const BaseInput = Schema.extend(Ajax.Sections.Input);\n\nexport type CartAddInput = Schema.Schema.Encoded<typeof CartAddInput>;\nexport const CartAddInput = Schema.Struct({\n items: Schema.Array(AddItemInput),\n}).pipe(BaseInput);\n\nexport type CartAddOutput = Schema.Schema.Type<typeof CartAddOutput>;\nexport const CartAddOutput = Schema.Struct({\n items: Schema.Array(LineItem),\n});\n\nexport type UpdateItemRecordInput = Schema.Schema.Encoded<\n typeof UpdateItemRecordInput\n>;\nexport const UpdateItemRecordInput = Schema.Record({\n key: Schema.String,\n value: Schema.Number,\n});\n\nconst DiscountCodeInput = Schema.Array(Schema.String);\nconst DiscountCodeTransformed = Schema.String;\n\nexport type CartUpdateInput = Schema.Schema.Encoded<typeof CartUpdateInput>;\nexport const CartUpdateInput = Schema.Struct({\n updates: Schema.optional(\n Schema.Union(UpdateItemRecordInput, Schema.Array(Schema.Number)),\n ),\n note: Schema.optional(Schema.NullOr(Schema.String)),\n attributes: Schema.optional(BaseAttributes),\n discount: Schema.optional(\n Schema.transform(DiscountCodeInput, DiscountCodeTransformed, {\n decode: (input) => input.join(\",\"),\n encode: (input) => input.split(\",\"),\n }),\n ),\n}).pipe(BaseInput);\n\nexport type ItemAddedChangelog = Schema.Schema.Type<typeof ItemAddedChangelog>;\nexport const ItemAddedChangelog = Schema.Struct({\n variant_id: Schema.Number,\n quantity: Schema.Number,\n});\n\nexport type CartUpdateOutput = Schema.Schema.Type<typeof CartUpdateOutput>;\nexport const CartUpdateOutput = makeCartTransformSchema(\n Schema.extend(\n BaseCart,\n Schema.Struct({\n items_changelog: Schema.Struct({\n added: Schema.Array(ItemAddedChangelog),\n }),\n }),\n ),\n);\n\nexport const CartChangeItemOptionalInput = Schema.Struct({\n quantity: Schema.optional(Schema.Number),\n properties: Schema.optional(\n Schema.Record({\n key: Schema.String,\n value: Schema.NullOr(Schema.String),\n }),\n ),\n selling_plan: Schema.optional(Schema.NullOr(Resource.ID)),\n}).pipe(BaseInput);\n\nexport const LineItemChange = Schema.Struct({\n product_id: Schema.Number,\n variant_id: Schema.Number,\n id: Schema.String,\n image: Schema.String,\n price: Schema.String,\n presentment_price: Schema.Number,\n quantity: Schema.Number,\n title: Schema.String,\n product_title: Schema.String,\n variant_title: Schema.String,\n vendor: Schema.String,\n product_type: Schema.String,\n sku: Schema.String,\n url: Schema.String,\n untranslated_product_title: Schema.String,\n untranslated_variant_title: Schema.String,\n view_key: Schema.String,\n});\n\nexport type CartChangeInput = Schema.Schema.Encoded<typeof CartChangeInput>;\nexport const CartChangeInput = Schema.Union(\n Schema.extend(CartChangeItemOptionalInput)(\n Schema.Struct({\n id: Schema.String,\n }),\n ),\n Schema.extend(CartChangeItemOptionalInput)(\n Schema.Struct({\n line: Schema.Number,\n }),\n ),\n);\n\nexport type CartChangeOutput = Schema.Schema.Type<typeof CartChangeOutput>;\nexport const CartChangeOutput = makeCartTransformSchema(\n Schema.extend(\n BaseCart,\n Schema.Struct({\n items_added: Schema.Array(LineItemChange),\n items_removed: Schema.Array(LineItemChange),\n }),\n ),\n);\n\nexport type CartClearInput = Schema.Schema.Encoded<typeof CartClearInput>;\nexport const CartClearInput = Ajax.Sections.Input;\n\nexport type CartGetInput = Schema.Schema.Encoded<typeof CartClearInput>;\nexport const CartGetInput = Ajax.Sections.Input;\n\nexport type CartUpdateDiscountsInput = Schema.Schema.Encoded<\n typeof CartUpdateDiscountsInput\n>;\nexport const CartUpdateDiscountsInput = Schema.mutable(\n Schema.Array(Schema.NonEmptyString),\n);\n"]}
|
package/dist/esm/index.js
CHANGED
|
@@ -17155,49 +17155,44 @@ var BaseCart = Struct({
|
|
|
17155
17155
|
items_subtotal_price: Number$,
|
|
17156
17156
|
cart_level_discount_applications: Array$(CartLevelDiscountApplication)
|
|
17157
17157
|
});
|
|
17158
|
-
var Cart =
|
|
17158
|
+
var Cart = extend3(
|
|
17159
17159
|
BaseCart,
|
|
17160
|
-
|
|
17161
|
-
|
|
17162
|
-
|
|
17163
|
-
attributes_array: optionalWith(BaseAttributesArray, {
|
|
17164
|
-
default: () => []
|
|
17165
|
-
}),
|
|
17166
|
-
private_attributes: optionalWith(BasePrivateAttributes, {
|
|
17167
|
-
default: () => ({})
|
|
17168
|
-
}),
|
|
17169
|
-
private_attributes_array: optionalWith(
|
|
17170
|
-
BasePrivateAttributesArray,
|
|
17171
|
-
{
|
|
17172
|
-
default: () => []
|
|
17173
|
-
}
|
|
17174
|
-
),
|
|
17175
|
-
public_attributes: optionalWith(BasePublicAttributes, {
|
|
17176
|
-
default: () => ({})
|
|
17177
|
-
}),
|
|
17178
|
-
public_attributes_array: optionalWith(BasePrivateAttributesArray, {
|
|
17179
|
-
default: () => []
|
|
17180
|
-
})
|
|
17181
|
-
})
|
|
17182
|
-
),
|
|
17183
|
-
{
|
|
17184
|
-
decode: (cart) => ({
|
|
17185
|
-
...cart,
|
|
17186
|
-
attributes_array: cart.attributes,
|
|
17187
|
-
private_attributes: cart.attributes,
|
|
17188
|
-
private_attributes_array: cart.attributes,
|
|
17189
|
-
public_attributes: cart.attributes,
|
|
17190
|
-
public_attributes_array: cart.attributes
|
|
17160
|
+
Struct({
|
|
17161
|
+
attributes_array: optionalWith(BaseAttributesArray, {
|
|
17162
|
+
default: () => []
|
|
17191
17163
|
}),
|
|
17192
|
-
|
|
17193
|
-
|
|
17194
|
-
|
|
17195
|
-
|
|
17196
|
-
|
|
17197
|
-
|
|
17198
|
-
|
|
17199
|
-
|
|
17164
|
+
private_attributes: optionalWith(BasePrivateAttributes, {
|
|
17165
|
+
default: () => ({})
|
|
17166
|
+
}),
|
|
17167
|
+
private_attributes_array: optionalWith(BasePrivateAttributesArray, {
|
|
17168
|
+
default: () => []
|
|
17169
|
+
}),
|
|
17170
|
+
public_attributes: optionalWith(BasePublicAttributes, {
|
|
17171
|
+
default: () => ({})
|
|
17172
|
+
}),
|
|
17173
|
+
public_attributes_array: optionalWith(BasePrivateAttributesArray, {
|
|
17174
|
+
default: () => []
|
|
17175
|
+
})
|
|
17176
|
+
})
|
|
17200
17177
|
);
|
|
17178
|
+
var makeCartTransformSchema = (schema) => transform2(schema, Cart, {
|
|
17179
|
+
decode: (cart) => ({
|
|
17180
|
+
...cart,
|
|
17181
|
+
attributes_array: cart.attributes,
|
|
17182
|
+
private_attributes: cart.attributes,
|
|
17183
|
+
private_attributes_array: cart.attributes,
|
|
17184
|
+
public_attributes: cart.attributes,
|
|
17185
|
+
public_attributes_array: cart.attributes
|
|
17186
|
+
}),
|
|
17187
|
+
encode: (cart) => pipe(
|
|
17188
|
+
remove("attributes_array")(cart),
|
|
17189
|
+
remove("private_attributes"),
|
|
17190
|
+
remove("private_attributes_array"),
|
|
17191
|
+
remove("public_attributes"),
|
|
17192
|
+
remove("public_attributes_array")
|
|
17193
|
+
)
|
|
17194
|
+
});
|
|
17195
|
+
var CartOutput = makeCartTransformSchema(BaseCart);
|
|
17201
17196
|
var AddItemInput = Struct({
|
|
17202
17197
|
id: Resource_exports.ID,
|
|
17203
17198
|
quantity: optionalWith(Number$, { default: () => 1 }),
|
|
@@ -17234,13 +17229,15 @@ var ItemAddedChangelog = Struct({
|
|
|
17234
17229
|
variant_id: Number$,
|
|
17235
17230
|
quantity: Number$
|
|
17236
17231
|
});
|
|
17237
|
-
var CartUpdateOutput =
|
|
17238
|
-
|
|
17239
|
-
|
|
17240
|
-
|
|
17241
|
-
|
|
17232
|
+
var CartUpdateOutput = makeCartTransformSchema(
|
|
17233
|
+
extend3(
|
|
17234
|
+
BaseCart,
|
|
17235
|
+
Struct({
|
|
17236
|
+
items_changelog: Struct({
|
|
17237
|
+
added: Array$(ItemAddedChangelog)
|
|
17238
|
+
})
|
|
17242
17239
|
})
|
|
17243
|
-
|
|
17240
|
+
)
|
|
17244
17241
|
);
|
|
17245
17242
|
var CartChangeItemOptionalInput = Struct({
|
|
17246
17243
|
quantity: optional(Number$),
|
|
@@ -17283,12 +17280,14 @@ var CartChangeInput = Union2(
|
|
|
17283
17280
|
})
|
|
17284
17281
|
)
|
|
17285
17282
|
);
|
|
17286
|
-
var CartChangeOutput =
|
|
17287
|
-
|
|
17288
|
-
|
|
17289
|
-
|
|
17290
|
-
|
|
17291
|
-
|
|
17283
|
+
var CartChangeOutput = makeCartTransformSchema(
|
|
17284
|
+
extend3(
|
|
17285
|
+
BaseCart,
|
|
17286
|
+
Struct({
|
|
17287
|
+
items_added: Array$(LineItemChange),
|
|
17288
|
+
items_removed: Array$(LineItemChange)
|
|
17289
|
+
})
|
|
17290
|
+
)
|
|
17292
17291
|
);
|
|
17293
17292
|
var CartClearInput = Ajax_exports.Sections.Input;
|
|
17294
17293
|
var CartGetInput = Ajax_exports.Sections.Input;
|
|
@@ -18424,7 +18423,7 @@ var make55 = makeFactory({
|
|
|
18424
18423
|
routeName: "cart_clear_url",
|
|
18425
18424
|
method: "post",
|
|
18426
18425
|
inputSchema: CartClearInput,
|
|
18427
|
-
outputSchema:
|
|
18426
|
+
outputSchema: CartOutput
|
|
18428
18427
|
});
|
|
18429
18428
|
|
|
18430
18429
|
// src/effect/api/CartGet.ts
|
|
@@ -18432,7 +18431,7 @@ var make56 = makeFactory({
|
|
|
18432
18431
|
routeName: "cart_url",
|
|
18433
18432
|
method: "get",
|
|
18434
18433
|
inputSchema: CartGetInput,
|
|
18435
|
-
outputSchema:
|
|
18434
|
+
outputSchema: CartOutput
|
|
18436
18435
|
});
|
|
18437
18436
|
|
|
18438
18437
|
// src/effect/api/CartUpdate.ts
|
|
@@ -18451,7 +18450,7 @@ var get18 = make56;
|
|
|
18451
18450
|
var update5 = make57;
|
|
18452
18451
|
|
|
18453
18452
|
// src/index.ts
|
|
18454
|
-
var validateCart = (cart) => runSync(decodeUnknown2(
|
|
18453
|
+
var validateCart = (cart) => runSync(decodeUnknown2(CartOutput)(cart));
|
|
18455
18454
|
var createAjaxCartApi = ({ debug = false }) => {
|
|
18456
18455
|
let baseLayer = empty30;
|
|
18457
18456
|
let minimumLogLevel2 = None3;
|