@brytdesigns/shopify-ajax-predictive-search-api 1.0.5 → 3.0.0

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.
@@ -1,144 +1,117 @@
1
- import * as Schema from 'effect/Schema';
2
- import { Ajax, Resource } from '@brytdesigns/shopify-utils/effect';
3
-
4
- const Input = Schema.extend(
5
- Ajax.Sections.Input,
6
- Schema.Struct({
7
- q: Schema.String,
8
- resources: Schema.optional(
9
- Schema.Struct({
10
- limit: Schema.optionalWith(Schema.Number.pipe(Schema.between(1, 10)), {
11
- default: () => 10
12
- }),
13
- limit_scope: Schema.optionalWith(Schema.Literal("all", "each"), {
14
- default: () => "all"
15
- }),
16
- options: Schema.optional(
17
- Schema.Struct({
18
- unavailable_products: Schema.optionalWith(
19
- Schema.Literal("show", "hide", "last"),
20
- { default: () => "last" }
21
- ),
22
- fields: Schema.optional(
23
- Schema.transform(
24
- Schema.Array(
25
- Schema.Literal(
26
- "author",
27
- "body",
28
- "product_type",
29
- "tag",
30
- "title",
31
- "variants.barcode",
32
- "variants.sku",
33
- "variants.title",
34
- "vendor"
35
- )
36
- ),
37
- Schema.String,
38
- {
39
- decode(fields) {
40
- return fields.join(",");
41
- },
42
- encode(fields) {
43
- return fields.split(",");
44
- }
45
- }
46
- )
47
- )
48
- })
49
- )
50
- })
51
- )
52
- })
53
- );
54
- const Image = Schema.Struct({
55
- aspect_ratio: Schema.NullOr(Schema.Number),
56
- alt: Schema.NullOr(Schema.String),
57
- height: Schema.NullOr(Schema.Number),
58
- url: Schema.NullOr(Schema.String),
59
- width: Schema.NullOr(Schema.Number)
60
- });
61
- const Variant = Schema.Struct({
62
- available: Schema.Boolean,
63
- compare_at_price: Schema.NullOr(Schema.NumberFromString),
64
- id: Resource.ID,
65
- image: Schema.NullOr(Schema.String),
66
- price: Schema.NumberFromString,
67
- title: Schema.String,
68
- url: Schema.String,
69
- featured_image: Image
1
+ import { Ajax, Resource } from "@brytdesigns/shopify-utils/effect";
2
+ import * as Schema from "effect/Schema";
3
+ import * as Effect from "effect/Effect";
4
+ import * as SchemaGetter from "effect/SchemaGetter";
5
+ //#region src/effect/schema.ts
6
+ var Input = Ajax.Sections.Input.pipe(Schema.fieldsAssign({
7
+ q: Schema.String,
8
+ resources: Schema.optional(Schema.Struct({
9
+ limit: Schema.Number.check(Schema.isBetween({
10
+ minimum: 1,
11
+ maximum: 10
12
+ })).pipe(Schema.withDecodingDefaultType(Effect.succeed(10))),
13
+ limit_scope: Schema.Literals(["all", "each"]).pipe(Schema.withDecodingDefaultType(Effect.succeed("all"))),
14
+ options: Schema.optional(Schema.Struct({
15
+ unavailable_products: Schema.Literals([
16
+ "show",
17
+ "hide",
18
+ "last"
19
+ ]).pipe(Schema.withDecodingDefaultType(Effect.succeed("last"))),
20
+ fields: Schema.optional(Schema.Array(Schema.Literals([
21
+ "author",
22
+ "body",
23
+ "product_type",
24
+ "tag",
25
+ "title",
26
+ "variants.barcode",
27
+ "variants.sku",
28
+ "variants.title",
29
+ "vendor"
30
+ ])).pipe(Schema.decodeTo(Schema.String, {
31
+ decode: SchemaGetter.transform((fields) => fields.join(",")),
32
+ encode: SchemaGetter.transform((value) => value.split(","))
33
+ })))
34
+ }))
35
+ }))
36
+ }));
37
+ var Image = Schema.Struct({
38
+ aspect_ratio: Schema.NullOr(Schema.Number),
39
+ alt: Schema.NullOr(Schema.String),
40
+ height: Schema.NullOr(Schema.Number),
41
+ url: Schema.NullOr(Schema.String),
42
+ width: Schema.NullOr(Schema.Number)
70
43
  });
71
- const Product = Schema.Struct({
72
- available: Schema.Boolean,
73
- body: Schema.String,
74
- compare_at_price_max: Schema.NumberFromString,
75
- compare_at_price_min: Schema.NumberFromString,
76
- handle: Schema.String,
77
- id: Resource.ID,
78
- image: Schema.NullOr(Schema.String),
79
- price: Schema.NumberFromString,
80
- price_max: Schema.NumberFromString,
81
- price_min: Schema.NumberFromString,
82
- tags: Schema.optionalWith(Schema.Array(Schema.String), { default: () => [] }),
83
- title: Schema.String,
84
- type: Schema.String,
85
- url: Schema.String,
86
- variants: Schema.Array(Variant),
87
- vendor: Schema.NullOr(Schema.String),
88
- featured_image: Image
44
+ var Variant = Schema.Struct({
45
+ available: Schema.Boolean,
46
+ compare_at_price: Schema.NullOr(Schema.NumberFromString),
47
+ id: Resource.ID,
48
+ image: Schema.NullOr(Schema.String),
49
+ price: Schema.NumberFromString,
50
+ title: Schema.String,
51
+ url: Schema.String,
52
+ featured_image: Image
89
53
  });
90
- const Collection = Schema.Struct({
91
- body: Schema.String,
92
- handle: Schema.String,
93
- id: Resource.ID,
94
- featured_image: Image,
95
- published_at: Schema.DateFromString,
96
- title: Schema.String,
97
- url: Schema.String
54
+ var Product = Schema.Struct({
55
+ available: Schema.Boolean,
56
+ body: Schema.String,
57
+ compare_at_price_max: Schema.NumberFromString,
58
+ compare_at_price_min: Schema.NumberFromString,
59
+ handle: Schema.String,
60
+ id: Resource.ID,
61
+ image: Schema.NullOr(Schema.String),
62
+ price: Schema.NumberFromString,
63
+ price_max: Schema.NumberFromString,
64
+ price_min: Schema.NumberFromString,
65
+ tags: Schema.Array(Schema.String).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
66
+ title: Schema.String,
67
+ type: Schema.String,
68
+ url: Schema.String,
69
+ variants: Schema.Array(Variant),
70
+ vendor: Schema.NullOr(Schema.String),
71
+ featured_image: Image
98
72
  });
99
- const Query = Schema.Struct({
100
- url: Schema.String,
101
- text: Schema.String,
102
- styled_text: Schema.String
73
+ var Collection = Schema.Struct({
74
+ body: Schema.String,
75
+ handle: Schema.String,
76
+ id: Resource.ID,
77
+ featured_image: Image,
78
+ published_at: Schema.DateFromString,
79
+ title: Schema.String,
80
+ url: Schema.String
103
81
  });
104
- const Page = Schema.Struct({
105
- author: Schema.String,
106
- body: Schema.String,
107
- handle: Schema.String,
108
- id: Resource.ID,
109
- published_at: Schema.DateFromString,
110
- title: Schema.String,
111
- url: Schema.String
82
+ var Query = Schema.Struct({
83
+ url: Schema.String,
84
+ text: Schema.String,
85
+ styled_text: Schema.String
112
86
  });
113
- const Article = Schema.Struct({
114
- author: Schema.String,
115
- body: Schema.String,
116
- handle: Schema.String,
117
- id: Resource.ID,
118
- published_at: Schema.DateFromString,
119
- summary_html: Schema.String,
120
- tags: Schema.optionalWith(Schema.Array(Schema.String), { default: () => [] }),
121
- title: Schema.String,
122
- url: Schema.String
87
+ var Page = Schema.Struct({
88
+ author: Schema.String,
89
+ body: Schema.String,
90
+ handle: Schema.String,
91
+ id: Resource.ID,
92
+ published_at: Schema.DateFromString,
93
+ title: Schema.String,
94
+ url: Schema.String
123
95
  });
124
- const Output = Schema.Struct({
125
- resources: Schema.Struct({
126
- results: Schema.Struct({
127
- queries: Schema.optionalWith(Schema.Array(Query), { default: () => [] }),
128
- products: Schema.optionalWith(Schema.Array(Product), {
129
- default: () => []
130
- }),
131
- collections: Schema.optionalWith(Schema.Array(Collection), {
132
- default: () => []
133
- }),
134
- pages: Schema.optionalWith(Schema.Array(Page), { default: () => [] }),
135
- articles: Schema.optionalWith(Schema.Array(Article), {
136
- default: () => []
137
- })
138
- })
139
- })
96
+ var Article = Schema.Struct({
97
+ author: Schema.String,
98
+ body: Schema.String,
99
+ handle: Schema.String,
100
+ id: Resource.ID,
101
+ published_at: Schema.DateFromString,
102
+ summary_html: Schema.String,
103
+ tags: Schema.Array(Schema.String).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
104
+ title: Schema.String,
105
+ url: Schema.String
140
106
  });
141
-
107
+ var Output = Schema.Struct({ resources: Schema.Struct({ results: Schema.Struct({
108
+ queries: Schema.Array(Query).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
109
+ products: Schema.Array(Product).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
110
+ collections: Schema.Array(Collection).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
111
+ pages: Schema.Array(Page).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
112
+ articles: Schema.Array(Article).pipe(Schema.withDecodingDefaultType(Effect.succeed([])))
113
+ }) }) });
114
+ //#endregion
142
115
  export { Image, Input, Output };
143
- //# sourceMappingURL=schema.js.map
116
+
144
117
  //# 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 { Ajax, Resource } from \"@brytdesigns/shopify-utils/effect\";\n\nexport type Input = Schema.Schema.Encoded<typeof Input>;\nexport const Input = Schema.extend(\n Ajax.Sections.Input,\n Schema.Struct({\n q: Schema.String,\n resources: Schema.optional(\n Schema.Struct({\n limit: Schema.optionalWith(Schema.Number.pipe(Schema.between(1, 10)), {\n default: () => 10,\n }),\n limit_scope: Schema.optionalWith(Schema.Literal(\"all\", \"each\"), {\n default: () => \"all\",\n }),\n options: Schema.optional(\n Schema.Struct({\n unavailable_products: Schema.optionalWith(\n Schema.Literal(\"show\", \"hide\", \"last\"),\n { default: () => \"last\" },\n ),\n fields: Schema.optional(\n Schema.transform(\n Schema.Array(\n Schema.Literal(\n \"author\",\n \"body\",\n \"product_type\",\n \"tag\",\n \"title\",\n \"variants.barcode\",\n \"variants.sku\",\n \"variants.title\",\n \"vendor\",\n ),\n ),\n Schema.String,\n {\n decode(fields) {\n return fields.join(\",\");\n },\n encode(fields) {\n return fields.split(\",\") as any;\n },\n },\n ),\n ),\n }),\n ),\n }),\n ),\n }),\n);\n\nexport const Image = Schema.Struct({\n aspect_ratio: Schema.NullOr(Schema.Number),\n alt: Schema.NullOr(Schema.String),\n height: Schema.NullOr(Schema.Number),\n url: Schema.NullOr(Schema.String),\n width: Schema.NullOr(Schema.Number),\n});\n\nconst Variant = Schema.Struct({\n available: Schema.Boolean,\n compare_at_price: Schema.NullOr(Schema.NumberFromString),\n id: Resource.ID,\n image: Schema.NullOr(Schema.String),\n price: Schema.NumberFromString,\n title: Schema.String,\n url: Schema.String,\n featured_image: Image,\n});\n\nconst Product = Schema.Struct({\n available: Schema.Boolean,\n body: Schema.String,\n compare_at_price_max: Schema.NumberFromString,\n compare_at_price_min: Schema.NumberFromString,\n handle: Schema.String,\n id: Resource.ID,\n image: Schema.NullOr(Schema.String),\n price: Schema.NumberFromString,\n price_max: Schema.NumberFromString,\n price_min: Schema.NumberFromString,\n tags: Schema.optionalWith(Schema.Array(Schema.String), { default: () => [] }),\n title: Schema.String,\n type: Schema.String,\n url: Schema.String,\n variants: Schema.Array(Variant),\n vendor: Schema.NullOr(Schema.String),\n featured_image: Image,\n});\n\nconst Collection = Schema.Struct({\n body: Schema.String,\n handle: Schema.String,\n id: Resource.ID,\n featured_image: Image,\n published_at: Schema.DateFromString,\n title: Schema.String,\n url: Schema.String,\n});\n\nconst Query = Schema.Struct({\n url: Schema.String,\n text: Schema.String,\n styled_text: Schema.String,\n});\n\nconst Page = Schema.Struct({\n author: Schema.String,\n body: Schema.String,\n handle: Schema.String,\n id: Resource.ID,\n published_at: Schema.DateFromString,\n title: Schema.String,\n url: Schema.String,\n});\n\nconst Article = Schema.Struct({\n author: Schema.String,\n body: Schema.String,\n handle: Schema.String,\n id: Resource.ID,\n published_at: Schema.DateFromString,\n summary_html: Schema.String,\n tags: Schema.optionalWith(Schema.Array(Schema.String), { default: () => [] }),\n title: Schema.String,\n url: Schema.String,\n});\n\nexport type Output = Schema.Schema.Type<typeof Output>;\nexport const Output = Schema.Struct({\n resources: Schema.Struct({\n results: Schema.Struct({\n queries: Schema.optionalWith(Schema.Array(Query), { default: () => [] }),\n products: Schema.optionalWith(Schema.Array(Product), {\n default: () => [],\n }),\n collections: Schema.optionalWith(Schema.Array(Collection), {\n default: () => [],\n }),\n pages: Schema.optionalWith(Schema.Array(Page), { default: () => [] }),\n articles: Schema.optionalWith(Schema.Array(Article), {\n default: () => [],\n }),\n }),\n }),\n});\n"]}
1
+ {"version":3,"file":"schema.js","names":[],"sources":["../../src/effect/schema.ts"],"sourcesContent":["import { Ajax, Resource } from \"@brytdesigns/shopify-utils/effect\";\nimport * as Effect from \"effect/Effect\";\nimport * as Schema from \"effect/Schema\";\nimport * as SchemaGetter from \"effect/SchemaGetter\";\n\nexport type Input = Schema.Codec.Encoded<typeof Input>;\nexport const Input = Ajax.Sections.Input.pipe(\n\tSchema.fieldsAssign({\n\t\tq: Schema.String,\n\t\tresources: Schema.optional(\n\t\t\tSchema.Struct({\n\t\t\t\tlimit: Schema.Number.check(\n\t\t\t\t\tSchema.isBetween({ minimum: 1, maximum: 10 }),\n\t\t\t\t).pipe(Schema.withDecodingDefaultType(Effect.succeed(10))),\n\t\t\t\tlimit_scope: Schema.Literals([\"all\", \"each\"]).pipe(\n\t\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed(\"all\" as const)),\n\t\t\t\t),\n\t\t\t\toptions: Schema.optional(\n\t\t\t\t\tSchema.Struct({\n\t\t\t\t\t\tunavailable_products: Schema.Literals([\n\t\t\t\t\t\t\t\"show\",\n\t\t\t\t\t\t\t\"hide\",\n\t\t\t\t\t\t\t\"last\",\n\t\t\t\t\t\t]).pipe(\n\t\t\t\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed(\"last\" as const)),\n\t\t\t\t\t\t),\n\t\t\t\t\t\tfields: Schema.optional(\n\t\t\t\t\t\t\tSchema.Array(\n\t\t\t\t\t\t\t\tSchema.Literals([\n\t\t\t\t\t\t\t\t\t\"author\",\n\t\t\t\t\t\t\t\t\t\"body\",\n\t\t\t\t\t\t\t\t\t\"product_type\",\n\t\t\t\t\t\t\t\t\t\"tag\",\n\t\t\t\t\t\t\t\t\t\"title\",\n\t\t\t\t\t\t\t\t\t\"variants.barcode\",\n\t\t\t\t\t\t\t\t\t\"variants.sku\",\n\t\t\t\t\t\t\t\t\t\"variants.title\",\n\t\t\t\t\t\t\t\t\t\"vendor\",\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t).pipe(\n\t\t\t\t\t\t\t\tSchema.decodeTo(Schema.String, {\n\t\t\t\t\t\t\t\t\tdecode: SchemaGetter.transform(\n\t\t\t\t\t\t\t\t\t\t(fields: ReadonlyArray<string>) => fields.join(\",\"),\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tencode: SchemaGetter.transform(\n\t\t\t\t\t\t\t\t\t\t(value: string) => value.split(\",\") as any,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t),\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t}),\n\t\t),\n\t}),\n);\n\nexport const Image = Schema.Struct({\n\taspect_ratio: Schema.NullOr(Schema.Number),\n\talt: Schema.NullOr(Schema.String),\n\theight: Schema.NullOr(Schema.Number),\n\turl: Schema.NullOr(Schema.String),\n\twidth: Schema.NullOr(Schema.Number),\n});\n\nconst Variant = Schema.Struct({\n\tavailable: Schema.Boolean,\n\tcompare_at_price: Schema.NullOr(Schema.NumberFromString),\n\tid: Resource.ID,\n\timage: Schema.NullOr(Schema.String),\n\tprice: Schema.NumberFromString,\n\ttitle: Schema.String,\n\turl: Schema.String,\n\tfeatured_image: Image,\n});\n\nconst Product = Schema.Struct({\n\tavailable: Schema.Boolean,\n\tbody: Schema.String,\n\tcompare_at_price_max: Schema.NumberFromString,\n\tcompare_at_price_min: Schema.NumberFromString,\n\thandle: Schema.String,\n\tid: Resource.ID,\n\timage: Schema.NullOr(Schema.String),\n\tprice: Schema.NumberFromString,\n\tprice_max: Schema.NumberFromString,\n\tprice_min: Schema.NumberFromString,\n\ttags: Schema.Array(Schema.String).pipe(\n\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t),\n\ttitle: Schema.String,\n\ttype: Schema.String,\n\turl: Schema.String,\n\tvariants: Schema.Array(Variant),\n\tvendor: Schema.NullOr(Schema.String),\n\tfeatured_image: Image,\n});\n\nconst Collection = Schema.Struct({\n\tbody: Schema.String,\n\thandle: Schema.String,\n\tid: Resource.ID,\n\tfeatured_image: Image,\n\tpublished_at: Schema.DateFromString,\n\ttitle: Schema.String,\n\turl: Schema.String,\n});\n\nconst Query = Schema.Struct({\n\turl: Schema.String,\n\ttext: Schema.String,\n\tstyled_text: Schema.String,\n});\n\nconst Page = Schema.Struct({\n\tauthor: Schema.String,\n\tbody: Schema.String,\n\thandle: Schema.String,\n\tid: Resource.ID,\n\tpublished_at: Schema.DateFromString,\n\ttitle: Schema.String,\n\turl: Schema.String,\n});\n\nconst Article = Schema.Struct({\n\tauthor: Schema.String,\n\tbody: Schema.String,\n\thandle: Schema.String,\n\tid: Resource.ID,\n\tpublished_at: Schema.DateFromString,\n\tsummary_html: Schema.String,\n\ttags: Schema.Array(Schema.String).pipe(\n\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t),\n\ttitle: Schema.String,\n\turl: Schema.String,\n});\n\nexport type Output = Schema.Schema.Type<typeof Output>;\nexport const Output = Schema.Struct({\n\tresources: Schema.Struct({\n\t\tresults: Schema.Struct({\n\t\t\tqueries: Schema.Array(Query).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t\tproducts: Schema.Array(Product).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t\tcollections: Schema.Array(Collection).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t\tpages: Schema.Array(Page).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t\tarticles: Schema.Array(Article).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t}),\n\t}),\n});\n"],"mappings":"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"}
@@ -1,12 +1,14 @@
1
- import * as AjaxClient from '@brytdesigns/shopify-ajax-client';
2
- import { Output, Input } from './schema';
3
-
4
- const get = AjaxClient.makeFactory({
5
- routeName: "predictive_search_url",
6
- inputSchema: Input,
7
- outputSchema: Output
1
+ import { Input, Output } from "./schema.js";
2
+ import * as AjaxClient from "@brytdesigns/shopify-ajax-client";
3
+ import { Ajax } from "@brytdesigns/shopify-utils/effect";
4
+ import * as Schema from "effect/Schema";
5
+ //#region src/effect/index.ts
6
+ var get = AjaxClient.makeRoute({
7
+ routeName: "predictive_search_url",
8
+ inputSchema: Input,
9
+ outputSchema: (sections) => sections === void 0 ? Output : Output.pipe(Schema.fieldsAssign({ sections: Ajax.Sections.makeResponseSchema(sections) }))
8
10
  });
9
-
11
+ //#endregion
10
12
  export { get };
11
- //# sourceMappingURL=index.js.map
13
+
12
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/effect/index.ts"],"names":[],"mappings":";;;AAMa,MAAA,GAAA,GAAM,WAAW,WAAY,CAAA;AAAA,EACxC,SAAW,EAAA,uBAAA;AAAA,EACX,WAAa,EAAA,KAAA;AAAA,EACb,YAAc,EAAA;AAChB,CAAC","file":"index.js","sourcesContent":["import * as AjaxClient from \"@brytdesigns/shopify-ajax-client\";\nimport { type Input as _Input, Input, Output } from \"./schema\";\n\nexport namespace get {\n export type Input = _Input;\n}\nexport const get = AjaxClient.makeFactory({\n routeName: \"predictive_search_url\",\n inputSchema: Input,\n outputSchema: Output,\n});\n"]}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/effect/index.ts"],"sourcesContent":["import * as AjaxClient from \"@brytdesigns/shopify-ajax-client\";\nimport { Ajax } from \"@brytdesigns/shopify-utils/effect\";\nimport * as Schema from \"effect/Schema\";\nimport { type Input as _Input, Input, Output } from \"./schema\";\n\nexport namespace get {\n\texport type Input = _Input;\n}\n\nexport const get = AjaxClient.makeRoute({\n\trouteName: \"predictive_search_url\",\n\tinputSchema: Input,\n\t// Composed here rather than inside makeRoute: v4 can only extend a Struct,\n\t// and Output is one, so the caller is the right place to add the field.\n\toutputSchema: (sections?: string) =>\n\t\tsections === undefined\n\t\t\t? Output\n\t\t\t: Output.pipe(\n\t\t\t\t\tSchema.fieldsAssign({\n\t\t\t\t\t\tsections: Ajax.Sections.makeResponseSchema(sections),\n\t\t\t\t\t}),\n\t\t\t\t),\n});\n"],"mappings":";;;;;AASA,IAAa,MAAM,WAAW,UAAU;CACvC,WAAW;CACX,aAAa;CAGb,eAAe,aACd,aAAa,KAAA,IACV,SACA,OAAO,KACP,OAAO,aAAa,EACnB,UAAU,KAAK,SAAS,mBAAmB,QAAQ,EACpD,CAAC,CACF;AACJ,CAAC"}
@@ -1,144 +1,117 @@
1
- import * as Schema from 'effect/Schema';
2
- import { Ajax, Resource } from '@brytdesigns/shopify-utils/effect';
3
-
4
- const Input = Schema.extend(
5
- Ajax.Sections.Input,
6
- Schema.Struct({
7
- q: Schema.String,
8
- resources: Schema.optional(
9
- Schema.Struct({
10
- limit: Schema.optionalWith(Schema.Number.pipe(Schema.between(1, 10)), {
11
- default: () => 10
12
- }),
13
- limit_scope: Schema.optionalWith(Schema.Literal("all", "each"), {
14
- default: () => "all"
15
- }),
16
- options: Schema.optional(
17
- Schema.Struct({
18
- unavailable_products: Schema.optionalWith(
19
- Schema.Literal("show", "hide", "last"),
20
- { default: () => "last" }
21
- ),
22
- fields: Schema.optional(
23
- Schema.transform(
24
- Schema.Array(
25
- Schema.Literal(
26
- "author",
27
- "body",
28
- "product_type",
29
- "tag",
30
- "title",
31
- "variants.barcode",
32
- "variants.sku",
33
- "variants.title",
34
- "vendor"
35
- )
36
- ),
37
- Schema.String,
38
- {
39
- decode(fields) {
40
- return fields.join(",");
41
- },
42
- encode(fields) {
43
- return fields.split(",");
44
- }
45
- }
46
- )
47
- )
48
- })
49
- )
50
- })
51
- )
52
- })
53
- );
54
- const Image = Schema.Struct({
55
- aspect_ratio: Schema.NullOr(Schema.Number),
56
- alt: Schema.NullOr(Schema.String),
57
- height: Schema.NullOr(Schema.Number),
58
- url: Schema.NullOr(Schema.String),
59
- width: Schema.NullOr(Schema.Number)
60
- });
61
- const Variant = Schema.Struct({
62
- available: Schema.Boolean,
63
- compare_at_price: Schema.NullOr(Schema.NumberFromString),
64
- id: Resource.ID,
65
- image: Schema.NullOr(Schema.String),
66
- price: Schema.NumberFromString,
67
- title: Schema.String,
68
- url: Schema.String,
69
- featured_image: Image
1
+ import * as Effect from "effect/Effect";
2
+ import { Ajax, Resource } from "@brytdesigns/shopify-utils/effect";
3
+ import * as Schema from "effect/Schema";
4
+ import * as SchemaGetter from "effect/SchemaGetter";
5
+ //#region src/effect/schema.ts
6
+ var Input = Ajax.Sections.Input.pipe(Schema.fieldsAssign({
7
+ q: Schema.String,
8
+ resources: Schema.optional(Schema.Struct({
9
+ limit: Schema.Number.check(Schema.isBetween({
10
+ minimum: 1,
11
+ maximum: 10
12
+ })).pipe(Schema.withDecodingDefaultType(Effect.succeed(10))),
13
+ limit_scope: Schema.Literals(["all", "each"]).pipe(Schema.withDecodingDefaultType(Effect.succeed("all"))),
14
+ options: Schema.optional(Schema.Struct({
15
+ unavailable_products: Schema.Literals([
16
+ "show",
17
+ "hide",
18
+ "last"
19
+ ]).pipe(Schema.withDecodingDefaultType(Effect.succeed("last"))),
20
+ fields: Schema.optional(Schema.Array(Schema.Literals([
21
+ "author",
22
+ "body",
23
+ "product_type",
24
+ "tag",
25
+ "title",
26
+ "variants.barcode",
27
+ "variants.sku",
28
+ "variants.title",
29
+ "vendor"
30
+ ])).pipe(Schema.decodeTo(Schema.String, {
31
+ decode: SchemaGetter.transform((fields) => fields.join(",")),
32
+ encode: SchemaGetter.transform((value) => value.split(","))
33
+ })))
34
+ }))
35
+ }))
36
+ }));
37
+ var Image = Schema.Struct({
38
+ aspect_ratio: Schema.NullOr(Schema.Number),
39
+ alt: Schema.NullOr(Schema.String),
40
+ height: Schema.NullOr(Schema.Number),
41
+ url: Schema.NullOr(Schema.String),
42
+ width: Schema.NullOr(Schema.Number)
70
43
  });
71
- const Product = Schema.Struct({
72
- available: Schema.Boolean,
73
- body: Schema.String,
74
- compare_at_price_max: Schema.NumberFromString,
75
- compare_at_price_min: Schema.NumberFromString,
76
- handle: Schema.String,
77
- id: Resource.ID,
78
- image: Schema.NullOr(Schema.String),
79
- price: Schema.NumberFromString,
80
- price_max: Schema.NumberFromString,
81
- price_min: Schema.NumberFromString,
82
- tags: Schema.optionalWith(Schema.Array(Schema.String), { default: () => [] }),
83
- title: Schema.String,
84
- type: Schema.String,
85
- url: Schema.String,
86
- variants: Schema.Array(Variant),
87
- vendor: Schema.NullOr(Schema.String),
88
- featured_image: Image
44
+ var Variant = Schema.Struct({
45
+ available: Schema.Boolean,
46
+ compare_at_price: Schema.NullOr(Schema.NumberFromString),
47
+ id: Resource.ID,
48
+ image: Schema.NullOr(Schema.String),
49
+ price: Schema.NumberFromString,
50
+ title: Schema.String,
51
+ url: Schema.String,
52
+ featured_image: Image
89
53
  });
90
- const Collection = Schema.Struct({
91
- body: Schema.String,
92
- handle: Schema.String,
93
- id: Resource.ID,
94
- featured_image: Image,
95
- published_at: Schema.DateFromString,
96
- title: Schema.String,
97
- url: Schema.String
54
+ var Product = Schema.Struct({
55
+ available: Schema.Boolean,
56
+ body: Schema.String,
57
+ compare_at_price_max: Schema.NumberFromString,
58
+ compare_at_price_min: Schema.NumberFromString,
59
+ handle: Schema.String,
60
+ id: Resource.ID,
61
+ image: Schema.NullOr(Schema.String),
62
+ price: Schema.NumberFromString,
63
+ price_max: Schema.NumberFromString,
64
+ price_min: Schema.NumberFromString,
65
+ tags: Schema.Array(Schema.String).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
66
+ title: Schema.String,
67
+ type: Schema.String,
68
+ url: Schema.String,
69
+ variants: Schema.Array(Variant),
70
+ vendor: Schema.NullOr(Schema.String),
71
+ featured_image: Image
98
72
  });
99
- const Query = Schema.Struct({
100
- url: Schema.String,
101
- text: Schema.String,
102
- styled_text: Schema.String
73
+ var Collection = Schema.Struct({
74
+ body: Schema.String,
75
+ handle: Schema.String,
76
+ id: Resource.ID,
77
+ featured_image: Image,
78
+ published_at: Schema.DateFromString,
79
+ title: Schema.String,
80
+ url: Schema.String
103
81
  });
104
- const Page = Schema.Struct({
105
- author: Schema.String,
106
- body: Schema.String,
107
- handle: Schema.String,
108
- id: Resource.ID,
109
- published_at: Schema.DateFromString,
110
- title: Schema.String,
111
- url: Schema.String
82
+ var Query = Schema.Struct({
83
+ url: Schema.String,
84
+ text: Schema.String,
85
+ styled_text: Schema.String
112
86
  });
113
- const Article = Schema.Struct({
114
- author: Schema.String,
115
- body: Schema.String,
116
- handle: Schema.String,
117
- id: Resource.ID,
118
- published_at: Schema.DateFromString,
119
- summary_html: Schema.String,
120
- tags: Schema.optionalWith(Schema.Array(Schema.String), { default: () => [] }),
121
- title: Schema.String,
122
- url: Schema.String
87
+ var Page = Schema.Struct({
88
+ author: Schema.String,
89
+ body: Schema.String,
90
+ handle: Schema.String,
91
+ id: Resource.ID,
92
+ published_at: Schema.DateFromString,
93
+ title: Schema.String,
94
+ url: Schema.String
123
95
  });
124
- const Output = Schema.Struct({
125
- resources: Schema.Struct({
126
- results: Schema.Struct({
127
- queries: Schema.optionalWith(Schema.Array(Query), { default: () => [] }),
128
- products: Schema.optionalWith(Schema.Array(Product), {
129
- default: () => []
130
- }),
131
- collections: Schema.optionalWith(Schema.Array(Collection), {
132
- default: () => []
133
- }),
134
- pages: Schema.optionalWith(Schema.Array(Page), { default: () => [] }),
135
- articles: Schema.optionalWith(Schema.Array(Article), {
136
- default: () => []
137
- })
138
- })
139
- })
96
+ var Article = Schema.Struct({
97
+ author: Schema.String,
98
+ body: Schema.String,
99
+ handle: Schema.String,
100
+ id: Resource.ID,
101
+ published_at: Schema.DateFromString,
102
+ summary_html: Schema.String,
103
+ tags: Schema.Array(Schema.String).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
104
+ title: Schema.String,
105
+ url: Schema.String
140
106
  });
141
-
107
+ var Output = Schema.Struct({ resources: Schema.Struct({ results: Schema.Struct({
108
+ queries: Schema.Array(Query).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
109
+ products: Schema.Array(Product).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
110
+ collections: Schema.Array(Collection).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
111
+ pages: Schema.Array(Page).pipe(Schema.withDecodingDefaultType(Effect.succeed([]))),
112
+ articles: Schema.Array(Article).pipe(Schema.withDecodingDefaultType(Effect.succeed([])))
113
+ }) }) });
114
+ //#endregion
142
115
  export { Image, Input, Output };
143
- //# sourceMappingURL=schema.js.map
116
+
144
117
  //# 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 { Ajax, Resource } from \"@brytdesigns/shopify-utils/effect\";\n\nexport type Input = Schema.Schema.Encoded<typeof Input>;\nexport const Input = Schema.extend(\n Ajax.Sections.Input,\n Schema.Struct({\n q: Schema.String,\n resources: Schema.optional(\n Schema.Struct({\n limit: Schema.optionalWith(Schema.Number.pipe(Schema.between(1, 10)), {\n default: () => 10,\n }),\n limit_scope: Schema.optionalWith(Schema.Literal(\"all\", \"each\"), {\n default: () => \"all\",\n }),\n options: Schema.optional(\n Schema.Struct({\n unavailable_products: Schema.optionalWith(\n Schema.Literal(\"show\", \"hide\", \"last\"),\n { default: () => \"last\" },\n ),\n fields: Schema.optional(\n Schema.transform(\n Schema.Array(\n Schema.Literal(\n \"author\",\n \"body\",\n \"product_type\",\n \"tag\",\n \"title\",\n \"variants.barcode\",\n \"variants.sku\",\n \"variants.title\",\n \"vendor\",\n ),\n ),\n Schema.String,\n {\n decode(fields) {\n return fields.join(\",\");\n },\n encode(fields) {\n return fields.split(\",\") as any;\n },\n },\n ),\n ),\n }),\n ),\n }),\n ),\n }),\n);\n\nexport const Image = Schema.Struct({\n aspect_ratio: Schema.NullOr(Schema.Number),\n alt: Schema.NullOr(Schema.String),\n height: Schema.NullOr(Schema.Number),\n url: Schema.NullOr(Schema.String),\n width: Schema.NullOr(Schema.Number),\n});\n\nconst Variant = Schema.Struct({\n available: Schema.Boolean,\n compare_at_price: Schema.NullOr(Schema.NumberFromString),\n id: Resource.ID,\n image: Schema.NullOr(Schema.String),\n price: Schema.NumberFromString,\n title: Schema.String,\n url: Schema.String,\n featured_image: Image,\n});\n\nconst Product = Schema.Struct({\n available: Schema.Boolean,\n body: Schema.String,\n compare_at_price_max: Schema.NumberFromString,\n compare_at_price_min: Schema.NumberFromString,\n handle: Schema.String,\n id: Resource.ID,\n image: Schema.NullOr(Schema.String),\n price: Schema.NumberFromString,\n price_max: Schema.NumberFromString,\n price_min: Schema.NumberFromString,\n tags: Schema.optionalWith(Schema.Array(Schema.String), { default: () => [] }),\n title: Schema.String,\n type: Schema.String,\n url: Schema.String,\n variants: Schema.Array(Variant),\n vendor: Schema.NullOr(Schema.String),\n featured_image: Image,\n});\n\nconst Collection = Schema.Struct({\n body: Schema.String,\n handle: Schema.String,\n id: Resource.ID,\n featured_image: Image,\n published_at: Schema.DateFromString,\n title: Schema.String,\n url: Schema.String,\n});\n\nconst Query = Schema.Struct({\n url: Schema.String,\n text: Schema.String,\n styled_text: Schema.String,\n});\n\nconst Page = Schema.Struct({\n author: Schema.String,\n body: Schema.String,\n handle: Schema.String,\n id: Resource.ID,\n published_at: Schema.DateFromString,\n title: Schema.String,\n url: Schema.String,\n});\n\nconst Article = Schema.Struct({\n author: Schema.String,\n body: Schema.String,\n handle: Schema.String,\n id: Resource.ID,\n published_at: Schema.DateFromString,\n summary_html: Schema.String,\n tags: Schema.optionalWith(Schema.Array(Schema.String), { default: () => [] }),\n title: Schema.String,\n url: Schema.String,\n});\n\nexport type Output = Schema.Schema.Type<typeof Output>;\nexport const Output = Schema.Struct({\n resources: Schema.Struct({\n results: Schema.Struct({\n queries: Schema.optionalWith(Schema.Array(Query), { default: () => [] }),\n products: Schema.optionalWith(Schema.Array(Product), {\n default: () => [],\n }),\n collections: Schema.optionalWith(Schema.Array(Collection), {\n default: () => [],\n }),\n pages: Schema.optionalWith(Schema.Array(Page), { default: () => [] }),\n articles: Schema.optionalWith(Schema.Array(Article), {\n default: () => [],\n }),\n }),\n }),\n});\n"]}
1
+ {"version":3,"file":"schema.js","names":[],"sources":["../../../src/effect/schema.ts"],"sourcesContent":["import { Ajax, Resource } from \"@brytdesigns/shopify-utils/effect\";\nimport * as Effect from \"effect/Effect\";\nimport * as Schema from \"effect/Schema\";\nimport * as SchemaGetter from \"effect/SchemaGetter\";\n\nexport type Input = Schema.Codec.Encoded<typeof Input>;\nexport const Input = Ajax.Sections.Input.pipe(\n\tSchema.fieldsAssign({\n\t\tq: Schema.String,\n\t\tresources: Schema.optional(\n\t\t\tSchema.Struct({\n\t\t\t\tlimit: Schema.Number.check(\n\t\t\t\t\tSchema.isBetween({ minimum: 1, maximum: 10 }),\n\t\t\t\t).pipe(Schema.withDecodingDefaultType(Effect.succeed(10))),\n\t\t\t\tlimit_scope: Schema.Literals([\"all\", \"each\"]).pipe(\n\t\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed(\"all\" as const)),\n\t\t\t\t),\n\t\t\t\toptions: Schema.optional(\n\t\t\t\t\tSchema.Struct({\n\t\t\t\t\t\tunavailable_products: Schema.Literals([\n\t\t\t\t\t\t\t\"show\",\n\t\t\t\t\t\t\t\"hide\",\n\t\t\t\t\t\t\t\"last\",\n\t\t\t\t\t\t]).pipe(\n\t\t\t\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed(\"last\" as const)),\n\t\t\t\t\t\t),\n\t\t\t\t\t\tfields: Schema.optional(\n\t\t\t\t\t\t\tSchema.Array(\n\t\t\t\t\t\t\t\tSchema.Literals([\n\t\t\t\t\t\t\t\t\t\"author\",\n\t\t\t\t\t\t\t\t\t\"body\",\n\t\t\t\t\t\t\t\t\t\"product_type\",\n\t\t\t\t\t\t\t\t\t\"tag\",\n\t\t\t\t\t\t\t\t\t\"title\",\n\t\t\t\t\t\t\t\t\t\"variants.barcode\",\n\t\t\t\t\t\t\t\t\t\"variants.sku\",\n\t\t\t\t\t\t\t\t\t\"variants.title\",\n\t\t\t\t\t\t\t\t\t\"vendor\",\n\t\t\t\t\t\t\t\t]),\n\t\t\t\t\t\t\t).pipe(\n\t\t\t\t\t\t\t\tSchema.decodeTo(Schema.String, {\n\t\t\t\t\t\t\t\t\tdecode: SchemaGetter.transform(\n\t\t\t\t\t\t\t\t\t\t(fields: ReadonlyArray<string>) => fields.join(\",\"),\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tencode: SchemaGetter.transform(\n\t\t\t\t\t\t\t\t\t\t(value: string) => value.split(\",\") as any,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t),\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t}),\n\t\t),\n\t}),\n);\n\nexport const Image = Schema.Struct({\n\taspect_ratio: Schema.NullOr(Schema.Number),\n\talt: Schema.NullOr(Schema.String),\n\theight: Schema.NullOr(Schema.Number),\n\turl: Schema.NullOr(Schema.String),\n\twidth: Schema.NullOr(Schema.Number),\n});\n\nconst Variant = Schema.Struct({\n\tavailable: Schema.Boolean,\n\tcompare_at_price: Schema.NullOr(Schema.NumberFromString),\n\tid: Resource.ID,\n\timage: Schema.NullOr(Schema.String),\n\tprice: Schema.NumberFromString,\n\ttitle: Schema.String,\n\turl: Schema.String,\n\tfeatured_image: Image,\n});\n\nconst Product = Schema.Struct({\n\tavailable: Schema.Boolean,\n\tbody: Schema.String,\n\tcompare_at_price_max: Schema.NumberFromString,\n\tcompare_at_price_min: Schema.NumberFromString,\n\thandle: Schema.String,\n\tid: Resource.ID,\n\timage: Schema.NullOr(Schema.String),\n\tprice: Schema.NumberFromString,\n\tprice_max: Schema.NumberFromString,\n\tprice_min: Schema.NumberFromString,\n\ttags: Schema.Array(Schema.String).pipe(\n\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t),\n\ttitle: Schema.String,\n\ttype: Schema.String,\n\turl: Schema.String,\n\tvariants: Schema.Array(Variant),\n\tvendor: Schema.NullOr(Schema.String),\n\tfeatured_image: Image,\n});\n\nconst Collection = Schema.Struct({\n\tbody: Schema.String,\n\thandle: Schema.String,\n\tid: Resource.ID,\n\tfeatured_image: Image,\n\tpublished_at: Schema.DateFromString,\n\ttitle: Schema.String,\n\turl: Schema.String,\n});\n\nconst Query = Schema.Struct({\n\turl: Schema.String,\n\ttext: Schema.String,\n\tstyled_text: Schema.String,\n});\n\nconst Page = Schema.Struct({\n\tauthor: Schema.String,\n\tbody: Schema.String,\n\thandle: Schema.String,\n\tid: Resource.ID,\n\tpublished_at: Schema.DateFromString,\n\ttitle: Schema.String,\n\turl: Schema.String,\n});\n\nconst Article = Schema.Struct({\n\tauthor: Schema.String,\n\tbody: Schema.String,\n\thandle: Schema.String,\n\tid: Resource.ID,\n\tpublished_at: Schema.DateFromString,\n\tsummary_html: Schema.String,\n\ttags: Schema.Array(Schema.String).pipe(\n\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t),\n\ttitle: Schema.String,\n\turl: Schema.String,\n});\n\nexport type Output = Schema.Schema.Type<typeof Output>;\nexport const Output = Schema.Struct({\n\tresources: Schema.Struct({\n\t\tresults: Schema.Struct({\n\t\t\tqueries: Schema.Array(Query).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t\tproducts: Schema.Array(Product).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t\tcollections: Schema.Array(Collection).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t\tpages: Schema.Array(Page).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t\tarticles: Schema.Array(Article).pipe(\n\t\t\t\tSchema.withDecodingDefaultType(Effect.succeed([])),\n\t\t\t),\n\t\t}),\n\t}),\n});\n"],"mappings":"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"}