@omni-graph/omni-model 0.9.0 → 0.9.1

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.
Files changed (41) hide show
  1. package/dist/zod/recommendations/feed-optimization/google-feed/basicProductData.d.ts +15 -0
  2. package/dist/zod/recommendations/feed-optimization/google-feed/basicProductData.d.ts.map +1 -0
  3. package/dist/zod/recommendations/feed-optimization/google-feed/basicProductData.js +26 -0
  4. package/dist/zod/recommendations/feed-optimization/google-feed/basicProductData.js.map +1 -0
  5. package/dist/zod/recommendations/feed-optimization/google-feed/detailedProductDescription.d.ts +65 -0
  6. package/dist/zod/recommendations/feed-optimization/google-feed/detailedProductDescription.d.ts.map +1 -0
  7. package/dist/zod/recommendations/feed-optimization/google-feed/detailedProductDescription.js +43 -0
  8. package/dist/zod/recommendations/feed-optimization/google-feed/detailedProductDescription.js.map +1 -0
  9. package/dist/zod/recommendations/feed-optimization/google-feed/googleFeedRecommendation.d.ts +1585 -0
  10. package/dist/zod/recommendations/feed-optimization/google-feed/googleFeedRecommendation.d.ts.map +1 -0
  11. package/dist/zod/recommendations/feed-optimization/google-feed/googleFeedRecommendation.js +39 -0
  12. package/dist/zod/recommendations/feed-optimization/google-feed/googleFeedRecommendation.js.map +1 -0
  13. package/dist/zod/recommendations/feed-optimization/google-feed/index.d.ts +13 -0
  14. package/dist/zod/recommendations/feed-optimization/google-feed/index.d.ts.map +1 -0
  15. package/dist/zod/recommendations/feed-optimization/google-feed/index.js +11 -0
  16. package/dist/zod/recommendations/feed-optimization/google-feed/index.js.map +1 -0
  17. package/dist/zod/recommendations/feed-optimization/google-feed/priceAndAvailability.d.ts +97 -0
  18. package/dist/zod/recommendations/feed-optimization/google-feed/priceAndAvailability.d.ts.map +1 -0
  19. package/dist/zod/recommendations/feed-optimization/google-feed/priceAndAvailability.js +15 -0
  20. package/dist/zod/recommendations/feed-optimization/google-feed/priceAndAvailability.js.map +1 -0
  21. package/dist/zod/recommendations/feed-optimization/google-feed/productCategory.d.ts +11 -0
  22. package/dist/zod/recommendations/feed-optimization/google-feed/productCategory.d.ts.map +1 -0
  23. package/dist/zod/recommendations/feed-optimization/google-feed/productCategory.js +13 -0
  24. package/dist/zod/recommendations/feed-optimization/google-feed/productCategory.js.map +1 -0
  25. package/dist/zod/recommendations/feed-optimization/google-feed/productIdentifiers.d.ts +13 -0
  26. package/dist/zod/recommendations/feed-optimization/google-feed/productIdentifiers.d.ts.map +1 -0
  27. package/dist/zod/recommendations/feed-optimization/google-feed/productIdentifiers.js +24 -0
  28. package/dist/zod/recommendations/feed-optimization/google-feed/productIdentifiers.js.map +1 -0
  29. package/dist/zod/recommendations/feed-optimization/google-feed/subtypes.d.ts +110 -0
  30. package/dist/zod/recommendations/feed-optimization/google-feed/subtypes.d.ts.map +1 -0
  31. package/dist/zod/recommendations/feed-optimization/google-feed/subtypes.js +26 -0
  32. package/dist/zod/recommendations/feed-optimization/google-feed/subtypes.js.map +1 -0
  33. package/dist/zod/recommendations/feed-optimization/index.d.ts +2 -0
  34. package/dist/zod/recommendations/feed-optimization/index.d.ts.map +1 -0
  35. package/dist/zod/recommendations/feed-optimization/index.js +2 -0
  36. package/dist/zod/recommendations/feed-optimization/index.js.map +1 -0
  37. package/dist/zod/recommendations/index.d.ts +635 -0
  38. package/dist/zod/recommendations/index.d.ts.map +1 -1
  39. package/dist/zod/recommendations/index.js +3 -0
  40. package/dist/zod/recommendations/index.js.map +1 -1
  41. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googleFeedRecommendation.d.ts","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/googleFeedRecommendation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAQtB;;;;GAIG;AACH,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK7C,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAE9F;;;GAGG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF;;GAEG;AACH,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIjD,CAAC;AAEH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sCAAsC,CAAC,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { z } from 'zod';
2
+ import { ObjectScopedRecommendationV2Schema } from '../../base';
3
+ import { SupportedLanguageCodesSchema } from '../../../../constants';
4
+ import { PriceValueSchema } from './subtypes';
5
+ // Union type for output_data and original_data that supports all Google Feed data types
6
+ const GoogleFeedDataValue = z.union([z.string(), z.boolean(), z.number(), z.array(z.string()), PriceValueSchema]);
7
+ /**
8
+ * Google Feed recommendation data schema
9
+ * Uses a consistent structure with output_data, output_language, input_language, and original_data
10
+ * The category is determined by the parent recommendation's 'category' field
11
+ */
12
+ export const GoogleFeedRecommendationDataSchema = z.object({
13
+ output_data: GoogleFeedDataValue.nullable(),
14
+ output_language: SupportedLanguageCodesSchema,
15
+ input_language: SupportedLanguageCodesSchema,
16
+ original_data: GoogleFeedDataValue.nullable(),
17
+ });
18
+ /**
19
+ * Complete Google Feed recommendation schema
20
+ * Extends ObjectScopedRecommendationV2Schema with Google Feed specific fields
21
+ */
22
+ export const GoogleFeedRecommendationSchema = ObjectScopedRecommendationV2Schema.extend({
23
+ analyticsId: z.literal('feed_optimization__google'),
24
+ recommendationData: GoogleFeedRecommendationDataSchema,
25
+ editedRecommendationData: z
26
+ .object({
27
+ recommendationData: GoogleFeedRecommendationDataSchema.optional(),
28
+ })
29
+ .optional(),
30
+ });
31
+ /**
32
+ * Response schema for Google Feed recommendations
33
+ */
34
+ export const GoogleFeedRecommendationResponseSchema = z.object({
35
+ recommendations: z.array(GoogleFeedRecommendationSchema),
36
+ hasMoreRows: z.boolean().optional(),
37
+ totalCount: z.number().optional(),
38
+ });
39
+ //# sourceMappingURL=googleFeedRecommendation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googleFeedRecommendation.js","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/googleFeedRecommendation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,kCAAkC,EAAC,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAC,4BAA4B,EAAC,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAC,gBAAgB,EAAC,MAAM,YAAY,CAAC;AAE5C,wFAAwF;AACxF,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAElH;;;;GAIG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,WAAW,EAAE,mBAAmB,CAAC,QAAQ,EAAE;IAC3C,eAAe,EAAE,4BAA4B;IAC7C,cAAc,EAAE,4BAA4B;IAC5C,aAAa,EAAE,mBAAmB,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC;AAIH;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,kCAAkC,CAAC,MAAM,CAAC;IACtF,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC;IACnD,kBAAkB,EAAE,kCAAkC;IACtD,wBAAwB,EAAE,CAAC;SACxB,MAAM,CAAC;QACN,kBAAkB,EAAE,kCAAkC,CAAC,QAAQ,EAAE;KAClE,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7D,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,8BAA8B,CAAC;IACxD,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ export * from './subtypes';
2
+ export { BasicProductDataSchema } from './basicProductData';
3
+ export { PriceAndAvailabilitySchema } from './priceAndAvailability';
4
+ export { ProductCategorySchema } from './productCategory';
5
+ export { ProductIdentifiersSchema } from './productIdentifiers';
6
+ export { DetailedProductDescriptionSchema } from './detailedProductDescription';
7
+ export type { BasicProductDataType } from './basicProductData';
8
+ export type { PriceAndAvailabilityType } from './priceAndAvailability';
9
+ export type { ProductCategoryType } from './productCategory';
10
+ export type { ProductIdentifiersType } from './productIdentifiers';
11
+ export type { DetailedProductDescriptionType } from './detailedProductDescription';
12
+ export * from "./googleFeedRecommendation";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAC,0BAA0B,EAAC,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAC,qBAAqB,EAAC,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAC,wBAAwB,EAAC,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAC,gCAAgC,EAAC,MAAM,8BAA8B,CAAC;AAG9E,YAAY,EAAC,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AAC7D,YAAY,EAAC,wBAAwB,EAAC,MAAM,wBAAwB,CAAC;AACrE,YAAY,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AAC3D,YAAY,EAAC,sBAAsB,EAAC,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAC,8BAA8B,EAAC,MAAM,8BAA8B,CAAC;AAGjF,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,11 @@
1
+ // Re-export subtypes (enums and their types)
2
+ export * from './subtypes';
3
+ // Re-export individual schemas (for reference only)
4
+ export { BasicProductDataSchema } from './basicProductData';
5
+ export { PriceAndAvailabilitySchema } from './priceAndAvailability';
6
+ export { ProductCategorySchema } from './productCategory';
7
+ export { ProductIdentifiersSchema } from './productIdentifiers';
8
+ export { DetailedProductDescriptionSchema } from './detailedProductDescription';
9
+ // Export the recommendation schemas
10
+ export * from "./googleFeedRecommendation";
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,cAAc,YAAY,CAAC;AAE3B,oDAAoD;AACpD,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAC,0BAA0B,EAAC,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAC,qBAAqB,EAAC,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAC,wBAAwB,EAAC,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAC,gCAAgC,EAAC,MAAM,8BAA8B,CAAC;AAS9E,oCAAoC;AACpC,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,97 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Price and Availability schema for Google Merchant Center
4
+ * Reference: https://support.google.com/merchants/answer/7052112#price_availability
5
+ */
6
+ export declare const PriceAndAvailabilitySchema: z.ZodObject<{
7
+ price: z.ZodObject<{
8
+ amount: z.ZodCoercedNumber<unknown>;
9
+ currency_code: z.ZodCatch<z.ZodOptional<z.ZodEnum<{
10
+ AED: "AED";
11
+ ARS: "ARS";
12
+ AUD: "AUD";
13
+ BGN: "BGN";
14
+ BRL: "BRL";
15
+ CAD: "CAD";
16
+ CHF: "CHF";
17
+ CLP: "CLP";
18
+ CNY: "CNY";
19
+ COP: "COP";
20
+ CZK: "CZK";
21
+ DKK: "DKK";
22
+ EUR: "EUR";
23
+ GBP: "GBP";
24
+ HKD: "HKD";
25
+ HUF: "HUF";
26
+ IDR: "IDR";
27
+ ILS: "ILS";
28
+ INR: "INR";
29
+ JPY: "JPY";
30
+ KRW: "KRW";
31
+ MXN: "MXN";
32
+ MYR: "MYR";
33
+ NOK: "NOK";
34
+ NZD: "NZD";
35
+ PHP: "PHP";
36
+ PLN: "PLN";
37
+ RON: "RON";
38
+ RUB: "RUB";
39
+ SEK: "SEK";
40
+ SGD: "SGD";
41
+ THB: "THB";
42
+ TRY: "TRY";
43
+ USD: "USD";
44
+ ZAR: "ZAR";
45
+ UNKNOWN: "UNKNOWN";
46
+ }>>>;
47
+ }, z.core.$strip>;
48
+ sale_price: z.ZodOptional<z.ZodNullable<z.ZodObject<{
49
+ amount: z.ZodCoercedNumber<unknown>;
50
+ currency_code: z.ZodCatch<z.ZodOptional<z.ZodEnum<{
51
+ AED: "AED";
52
+ ARS: "ARS";
53
+ AUD: "AUD";
54
+ BGN: "BGN";
55
+ BRL: "BRL";
56
+ CAD: "CAD";
57
+ CHF: "CHF";
58
+ CLP: "CLP";
59
+ CNY: "CNY";
60
+ COP: "COP";
61
+ CZK: "CZK";
62
+ DKK: "DKK";
63
+ EUR: "EUR";
64
+ GBP: "GBP";
65
+ HKD: "HKD";
66
+ HUF: "HUF";
67
+ IDR: "IDR";
68
+ ILS: "ILS";
69
+ INR: "INR";
70
+ JPY: "JPY";
71
+ KRW: "KRW";
72
+ MXN: "MXN";
73
+ MYR: "MYR";
74
+ NOK: "NOK";
75
+ NZD: "NZD";
76
+ PHP: "PHP";
77
+ PLN: "PLN";
78
+ RON: "RON";
79
+ RUB: "RUB";
80
+ SEK: "SEK";
81
+ SGD: "SGD";
82
+ THB: "THB";
83
+ TRY: "TRY";
84
+ USD: "USD";
85
+ ZAR: "ZAR";
86
+ UNKNOWN: "UNKNOWN";
87
+ }>>>;
88
+ }, z.core.$strip>>>;
89
+ availability: z.ZodEnum<{
90
+ in_stock: "in_stock";
91
+ out_of_stock: "out_of_stock";
92
+ preorder: "preorder";
93
+ backorder: "backorder";
94
+ }>;
95
+ }, z.core.$strip>;
96
+ export type PriceAndAvailabilityType = z.infer<typeof PriceAndAvailabilitySchema>;
97
+ //# sourceMappingURL=priceAndAvailability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"priceAndAvailability.d.ts","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/priceAndAvailability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB;;;GAGG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBASrC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { z } from 'zod';
2
+ import { AvailabilityEnum, PriceValueSchema } from './subtypes';
3
+ /**
4
+ * Price and Availability schema for Google Merchant Center
5
+ * Reference: https://support.google.com/merchants/answer/7052112#price_availability
6
+ */
7
+ export const PriceAndAvailabilitySchema = z.object({
8
+ // Required: Price of the product as structured object
9
+ price: PriceValueSchema,
10
+ // Optional: Sale price of the product as structured object
11
+ sale_price: PriceValueSchema.nullish(),
12
+ // Required: Availability status of the product
13
+ availability: AvailabilityEnum,
14
+ });
15
+ //# sourceMappingURL=priceAndAvailability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"priceAndAvailability.js","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/priceAndAvailability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,YAAY,CAAC;AAE9D;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,sDAAsD;IACtD,KAAK,EAAE,gBAAgB;IAEvB,2DAA2D;IAC3D,UAAU,EAAE,gBAAgB,CAAC,OAAO,EAAE;IAEtC,+CAA+C;IAC/C,YAAY,EAAE,gBAAgB;CAC/B,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Product Category schema for Google Merchant Center
4
+ * Reference: https://support.google.com/merchants/answer/7052112#product_category
5
+ */
6
+ export declare const ProductCategorySchema: z.ZodObject<{
7
+ google_product_category: z.ZodOptional<z.ZodString>;
8
+ product_type: z.ZodOptional<z.ZodString>;
9
+ }, z.core.$strip>;
10
+ export type ProductCategoryType = z.infer<typeof ProductCategorySchema>;
11
+ //# sourceMappingURL=productCategory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"productCategory.d.ts","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/productCategory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;iBAMhC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Product Category schema for Google Merchant Center
4
+ * Reference: https://support.google.com/merchants/answer/7052112#product_category
5
+ */
6
+ export const ProductCategorySchema = z.object({
7
+ // Optional: Google-defined product category (can be category ID or full path)
8
+ google_product_category: z.string().optional(),
9
+ // Optional: Product type defined by the merchant
10
+ // Max 750 characters
11
+ product_type: z.string().max(750).optional(),
12
+ });
13
+ //# sourceMappingURL=productCategory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"productCategory.js","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/productCategory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,8EAA8E;IAC9E,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9C,iDAAiD;IACjD,qBAAqB;IACrB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Product Identifiers schema for Google Merchant Center
4
+ * Reference: https://support.google.com/merchants/answer/7052112#product_identifiers
5
+ */
6
+ export declare const ProductIdentifiersSchema: z.ZodObject<{
7
+ brand: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8
+ gtin: z.ZodOptional<z.ZodNullable<z.ZodString>>;
9
+ mpn: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10
+ identifier_exists: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
11
+ }, z.core.$strip>;
12
+ export type ProductIdentifiersType = z.infer<typeof ProductIdentifiersSchema>;
13
+ //# sourceMappingURL=productIdentifiers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"productIdentifiers.d.ts","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/productIdentifiers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB;;;GAGG;AACH,eAAO,MAAM,wBAAwB;;;;;iBAoBnC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Product Identifiers schema for Google Merchant Center
4
+ * Reference: https://support.google.com/merchants/answer/7052112#product_identifiers
5
+ */
6
+ export const ProductIdentifiersSchema = z.object({
7
+ // Optional: Brand name of the product
8
+ // Max 70 characters
9
+ brand: z.string().max(70).nullish(),
10
+ // Optional: Global Trade Item Number (GTIN) - UPC, EAN, JAN, or ISBN
11
+ // 8, 12, 13, or 14 digits
12
+ gtin: z
13
+ .string()
14
+ .regex(/^\d{8}$|^\d{12}$|^\d{13}$|^\d{14}$/, {
15
+ message: 'GTIN must be 8, 12, 13, or 14 digits',
16
+ })
17
+ .nullish(),
18
+ // Optional: Manufacturer Part Number (MPN)
19
+ // Max 70 characters
20
+ mpn: z.string().max(70).nullish(),
21
+ // Required: Whether the product has unique product identifiers
22
+ identifier_exists: z.boolean().nullish(),
23
+ });
24
+ //# sourceMappingURL=productIdentifiers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"productIdentifiers.js","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/productIdentifiers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,sCAAsC;IACtC,oBAAoB;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;IAEnC,qEAAqE;IACrE,0BAA0B;IAC1B,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,KAAK,CAAC,oCAAoC,EAAE;QAC3C,OAAO,EAAE,sCAAsC;KAChD,CAAC;SACD,OAAO,EAAE;IAEZ,2CAA2C;IAC3C,oBAAoB;IACpB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;IAEjC,+DAA+D;IAC/D,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE;CACzC,CAAC,CAAC"}
@@ -0,0 +1,110 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Subtypes for Google Feed schemas
4
+ * These are reusable enum types used across different Google Feed schemas
5
+ */
6
+ export declare const PriceValueSchema: z.ZodObject<{
7
+ amount: z.ZodCoercedNumber<unknown>;
8
+ currency_code: z.ZodCatch<z.ZodOptional<z.ZodEnum<{
9
+ AED: "AED";
10
+ ARS: "ARS";
11
+ AUD: "AUD";
12
+ BGN: "BGN";
13
+ BRL: "BRL";
14
+ CAD: "CAD";
15
+ CHF: "CHF";
16
+ CLP: "CLP";
17
+ CNY: "CNY";
18
+ COP: "COP";
19
+ CZK: "CZK";
20
+ DKK: "DKK";
21
+ EUR: "EUR";
22
+ GBP: "GBP";
23
+ HKD: "HKD";
24
+ HUF: "HUF";
25
+ IDR: "IDR";
26
+ ILS: "ILS";
27
+ INR: "INR";
28
+ JPY: "JPY";
29
+ KRW: "KRW";
30
+ MXN: "MXN";
31
+ MYR: "MYR";
32
+ NOK: "NOK";
33
+ NZD: "NZD";
34
+ PHP: "PHP";
35
+ PLN: "PLN";
36
+ RON: "RON";
37
+ RUB: "RUB";
38
+ SEK: "SEK";
39
+ SGD: "SGD";
40
+ THB: "THB";
41
+ TRY: "TRY";
42
+ USD: "USD";
43
+ ZAR: "ZAR";
44
+ UNKNOWN: "UNKNOWN";
45
+ }>>>;
46
+ }, z.core.$strip>;
47
+ export type PriceValueType = z.infer<typeof PriceValueSchema>;
48
+ export declare const ConditionEnum: z.ZodEnum<{
49
+ new: "new";
50
+ refurbished: "refurbished";
51
+ used: "used";
52
+ }>;
53
+ export type ConditionType = z.infer<typeof ConditionEnum>;
54
+ export declare const AgeGroupEnum: z.ZodEnum<{
55
+ newborn: "newborn";
56
+ infant: "infant";
57
+ toddler: "toddler";
58
+ kids: "kids";
59
+ adult: "adult";
60
+ }>;
61
+ export type AgeGroupType = z.infer<typeof AgeGroupEnum>;
62
+ export declare const GenderEnum: z.ZodEnum<{
63
+ male: "male";
64
+ female: "female";
65
+ unisex: "unisex";
66
+ }>;
67
+ export type GenderType = z.infer<typeof GenderEnum>;
68
+ export declare const SizeTypeEnum: z.ZodEnum<{
69
+ regular: "regular";
70
+ petite: "petite";
71
+ plus: "plus";
72
+ "big and tall": "big and tall";
73
+ maternity: "maternity";
74
+ }>;
75
+ export type SizeTypeType = z.infer<typeof SizeTypeEnum>;
76
+ export declare const SizeSystemEnum: z.ZodEnum<{
77
+ US: "US";
78
+ UK: "UK";
79
+ EU: "EU";
80
+ DE: "DE";
81
+ FR: "FR";
82
+ JP: "JP";
83
+ CN: "CN";
84
+ IT: "IT";
85
+ BR: "BR";
86
+ MEX: "MEX";
87
+ AU: "AU";
88
+ }>;
89
+ export type SizeSystemType = z.infer<typeof SizeSystemEnum>;
90
+ export declare const EnergyEfficiencyClassEnum: z.ZodEnum<{
91
+ "A+++": "A+++";
92
+ "A++": "A++";
93
+ "A+": "A+";
94
+ A: "A";
95
+ B: "B";
96
+ C: "C";
97
+ D: "D";
98
+ E: "E";
99
+ F: "F";
100
+ G: "G";
101
+ }>;
102
+ export type EnergyEfficiencyClassType = z.infer<typeof EnergyEfficiencyClassEnum>;
103
+ export declare const AvailabilityEnum: z.ZodEnum<{
104
+ in_stock: "in_stock";
105
+ out_of_stock: "out_of_stock";
106
+ preorder: "preorder";
107
+ backorder: "backorder";
108
+ }>;
109
+ export type AvailabilityType = z.infer<typeof AvailabilityEnum>;
110
+ //# sourceMappingURL=subtypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subtypes.d.ts","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/subtypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB;;;GAGG;AAGH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG3B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG9D,eAAO,MAAM,aAAa;;;;EAAyC,CAAC;AACpE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAG1D,eAAO,MAAM,YAAY;;;;;;EAA4D,CAAC;AACtF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAGxD,eAAO,MAAM,UAAU;;;;EAAuC,CAAC;AAC/D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAGpD,eAAO,MAAM,YAAY;;;;;;EAAqE,CAAC;AAC/F,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAGxD,eAAO,MAAM,cAAc;;;;;;;;;;;;EAA8E,CAAC;AAC1G,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAG5D,eAAO,MAAM,yBAAyB;;;;;;;;;;;EAAmE,CAAC;AAC1G,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAGlF,eAAO,MAAM,gBAAgB;;;;;EAAgE,CAAC;AAC9F,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { z } from 'zod';
2
+ import { SupportedCurrencySchema } from '../../../../constants';
3
+ /**
4
+ * Subtypes for Google Feed schemas
5
+ * These are reusable enum types used across different Google Feed schemas
6
+ */
7
+ // Price value (consistent with metafields MoneyValueSchema)
8
+ export const PriceValueSchema = z.object({
9
+ amount: z.coerce.number(),
10
+ currency_code: SupportedCurrencySchema,
11
+ });
12
+ // Condition of the product
13
+ export const ConditionEnum = z.enum(['new', 'refurbished', 'used']);
14
+ // Age group the product is targeted towards
15
+ export const AgeGroupEnum = z.enum(['newborn', 'infant', 'toddler', 'kids', 'adult']);
16
+ // Gender the product is targeted towards
17
+ export const GenderEnum = z.enum(['male', 'female', 'unisex']);
18
+ // Size type
19
+ export const SizeTypeEnum = z.enum(['regular', 'petite', 'plus', 'big and tall', 'maternity']);
20
+ // Size system
21
+ export const SizeSystemEnum = z.enum(['US', 'UK', 'EU', 'DE', 'FR', 'JP', 'CN', 'IT', 'BR', 'MEX', 'AU']);
22
+ // Energy efficiency class
23
+ export const EnergyEfficiencyClassEnum = z.enum(['A+++', 'A++', 'A+', 'A', 'B', 'C', 'D', 'E', 'F', 'G']);
24
+ // Availability status
25
+ export const AvailabilityEnum = z.enum(['in_stock', 'out_of_stock', 'preorder', 'backorder']);
26
+ //# sourceMappingURL=subtypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subtypes.js","sourceRoot":"","sources":["../../../../../src/zod/recommendations/feed-optimization/google-feed/subtypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,EAAC,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AAE9D;;;GAGG;AAEH,4DAA4D;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;IACzB,aAAa,EAAE,uBAAuB;CACvC,CAAC,CAAC;AAGH,2BAA2B;AAC3B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;AAGpE,4CAA4C;AAC5C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAGtF,yCAAyC;AACzC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAG/D,YAAY;AACZ,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC;AAG/F,cAAc;AACd,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAG1G,0BAA0B;AAC1B,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAG1G,sBAAsB;AACtB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './google-feed';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/zod/recommendations/feed-optimization/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './google-feed';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/zod/recommendations/feed-optimization/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}