@shushed/helpers 0.0.203-validate-fix-20251208135144 → 0.0.203

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 (303) hide show
  1. package/dist/cjs/contracts/asset.schema.json +78 -0
  2. package/dist/cjs/contracts/category.schema.json +86 -0
  3. package/dist/cjs/contracts/country.schema.json +258 -0
  4. package/dist/cjs/contracts/currency.schema.json +177 -0
  5. package/dist/cjs/contracts/customer-segment.schema.json +32 -0
  6. package/dist/cjs/contracts/development-colour.schema.json +97 -0
  7. package/dist/cjs/contracts/index.js +48 -0
  8. package/dist/cjs/contracts/marketing-preferences.schema.json +41 -0
  9. package/dist/cjs/contracts/messages/ean-change.schema.json +22 -0
  10. package/dist/cjs/contracts/messages/index.js +29 -0
  11. package/dist/cjs/contracts/messages/order/delivered.schema.json +26 -0
  12. package/dist/cjs/contracts/messages/order/index.js +18 -0
  13. package/dist/cjs/contracts/messages/order/new.schema.json +32 -0
  14. package/dist/cjs/contracts/messages/order/processed.schema.json +15 -0
  15. package/dist/cjs/contracts/messages/order/return-initiated.schema.json +26 -0
  16. package/dist/cjs/contracts/messages/order/returned.schema.json +25 -0
  17. package/dist/cjs/contracts/messages/order/shipped.schema.json +26 -0
  18. package/dist/cjs/contracts/messages/product-category.schema.json +21 -0
  19. package/dist/cjs/contracts/messages/product-draft.schema.json +66 -0
  20. package/dist/cjs/contracts/messages/product.schema.json +29 -0
  21. package/dist/cjs/contracts/money.schema.json +54 -0
  22. package/dist/cjs/contracts/order/address.schema.json +127 -0
  23. package/dist/cjs/contracts/order/customer.schema.json +149 -0
  24. package/dist/cjs/contracts/order/index.js +31 -0
  25. package/dist/cjs/contracts/order/item.schema.json +98 -0
  26. package/dist/cjs/contracts/order/payment.schema.json +115 -0
  27. package/dist/cjs/contracts/order/shipment/index.js +29 -0
  28. package/dist/cjs/contracts/order/shipment/item/index.js +8 -0
  29. package/dist/cjs/contracts/order/shipment/item/returned.schema.json +30 -0
  30. package/dist/cjs/contracts/order/shipment/item.schema.json +22 -0
  31. package/dist/cjs/contracts/order/shipment/pos/index.js +10 -0
  32. package/dist/cjs/contracts/order/shipment/pos/outbound.schema.json +37 -0
  33. package/dist/cjs/contracts/order/shipment/pos/return.schema.json +31 -0
  34. package/dist/cjs/contracts/order/shipment/pos.schema.json +48 -0
  35. package/dist/cjs/contracts/order/shipment/shipped/index.js +10 -0
  36. package/dist/cjs/contracts/order/shipment/shipped/outbound.schema.json +34 -0
  37. package/dist/cjs/contracts/order/shipment/shipped/return.schema.json +43 -0
  38. package/dist/cjs/contracts/order/shipment/shipped.schema.json +52 -0
  39. package/dist/cjs/contracts/order/shipment.schema.json +58 -0
  40. package/dist/cjs/contracts/product-category.schema.json +34 -0
  41. package/dist/cjs/contracts/product-draft.schema.json +782 -0
  42. package/dist/cjs/contracts/product.schema.json +816 -0
  43. package/dist/cjs/contracts/total.schema.json +41 -0
  44. package/dist/cjs/dist-dereferenced/asset.js +0 -1
  45. package/dist/cjs/dist-dereferenced/category.js +0 -1
  46. package/dist/cjs/dist-dereferenced/country.js +0 -1
  47. package/dist/cjs/dist-dereferenced/currency.js +0 -1
  48. package/dist/cjs/dist-dereferenced/customer-segment.js +0 -1
  49. package/dist/cjs/dist-dereferenced/development-colour.js +0 -1
  50. package/dist/cjs/dist-dereferenced/index.js +0 -1
  51. package/dist/cjs/dist-dereferenced/marketing-preferences.js +0 -1
  52. package/dist/cjs/dist-dereferenced/messages/ean-change.js +0 -1
  53. package/dist/cjs/dist-dereferenced/messages/index.js +0 -1
  54. package/dist/cjs/dist-dereferenced/messages/order/delivered.js +1 -2
  55. package/dist/cjs/dist-dereferenced/messages/order/index.js +0 -1
  56. package/dist/cjs/dist-dereferenced/messages/order/new.js +1 -2
  57. package/dist/cjs/dist-dereferenced/messages/order/processed.js +1 -2
  58. package/dist/cjs/dist-dereferenced/messages/order/return-initiated.js +1 -2
  59. package/dist/cjs/dist-dereferenced/messages/order/returned.js +1 -2
  60. package/dist/cjs/dist-dereferenced/messages/order/shipped.js +1 -2
  61. package/dist/cjs/dist-dereferenced/messages/price-change.js +0 -1
  62. package/dist/cjs/dist-dereferenced/messages/product-category.js +0 -1
  63. package/dist/cjs/dist-dereferenced/messages/product-draft.js +0 -1
  64. package/dist/cjs/dist-dereferenced/messages/product.js +0 -1
  65. package/dist/cjs/dist-dereferenced/money.js +0 -1
  66. package/dist/cjs/dist-dereferenced/order/address.js +0 -1
  67. package/dist/cjs/dist-dereferenced/order/customer.js +0 -1
  68. package/dist/cjs/dist-dereferenced/order/index.js +0 -1
  69. package/dist/cjs/dist-dereferenced/order/item.js +0 -1
  70. package/dist/cjs/dist-dereferenced/order/orderMain.js +1 -2
  71. package/dist/cjs/dist-dereferenced/order/payment.js +1 -2
  72. package/dist/cjs/dist-dereferenced/order/shipment/index.js +0 -1
  73. package/dist/cjs/dist-dereferenced/order/shipment/item/index.js +0 -1
  74. package/dist/cjs/dist-dereferenced/order/shipment/item/itemMain.js +0 -1
  75. package/dist/cjs/dist-dereferenced/order/shipment/item/returned.js +0 -1
  76. package/dist/cjs/dist-dereferenced/order/shipment/pos/index.js +0 -1
  77. package/dist/cjs/dist-dereferenced/order/shipment/pos/outbound.js +0 -1
  78. package/dist/cjs/dist-dereferenced/order/shipment/pos/posMain.js +0 -1
  79. package/dist/cjs/dist-dereferenced/order/shipment/pos/return.js +0 -1
  80. package/dist/cjs/dist-dereferenced/order/shipment/shipmentMain.js +0 -1
  81. package/dist/cjs/dist-dereferenced/order/shipment/shipped/index.js +0 -1
  82. package/dist/cjs/dist-dereferenced/order/shipment/shipped/outbound.js +0 -1
  83. package/dist/cjs/dist-dereferenced/order/shipment/shipped/return.js +0 -1
  84. package/dist/cjs/dist-dereferenced/order/shipment/shipped/shippedMain.js +0 -1
  85. package/dist/cjs/dist-dereferenced/price.js +0 -1
  86. package/dist/cjs/dist-dereferenced/product-category.js +0 -1
  87. package/dist/cjs/dist-dereferenced/product-draft.js +0 -1
  88. package/dist/cjs/dist-dereferenced/product.js +0 -1
  89. package/dist/cjs/dist-dereferenced/stock.js +0 -1
  90. package/dist/cjs/dist-dereferenced/total.js +0 -1
  91. package/dist/cjs/dist-types/asset.js +0 -1
  92. package/dist/cjs/dist-types/category.js +0 -1
  93. package/dist/cjs/dist-types/country.js +0 -1
  94. package/dist/cjs/dist-types/currency.js +0 -1
  95. package/dist/cjs/dist-types/customer-segment.js +0 -1
  96. package/dist/cjs/dist-types/development-colour.js +0 -1
  97. package/dist/cjs/dist-types/index.js +0 -1
  98. package/dist/cjs/dist-types/marketing-preferences.js +0 -1
  99. package/dist/cjs/dist-types/messages/ean-change.js +0 -1
  100. package/dist/cjs/dist-types/messages/index.js +0 -1
  101. package/dist/cjs/dist-types/messages/order/delivered.js +0 -1
  102. package/dist/cjs/dist-types/messages/order/index.js +0 -1
  103. package/dist/cjs/dist-types/messages/order/new.js +0 -1
  104. package/dist/cjs/dist-types/messages/order/processed.js +0 -1
  105. package/dist/cjs/dist-types/messages/order/return-initiated.js +0 -1
  106. package/dist/cjs/dist-types/messages/order/returned.js +0 -1
  107. package/dist/cjs/dist-types/messages/order/shipped.js +0 -1
  108. package/dist/cjs/dist-types/messages/price-change.js +0 -1
  109. package/dist/cjs/dist-types/messages/product-category.js +0 -1
  110. package/dist/cjs/dist-types/messages/product-draft.js +0 -1
  111. package/dist/cjs/dist-types/messages/product.js +0 -1
  112. package/dist/cjs/dist-types/money.js +0 -1
  113. package/dist/cjs/dist-types/order/address.js +0 -1
  114. package/dist/cjs/dist-types/order/customer.js +0 -1
  115. package/dist/cjs/dist-types/order/index.js +0 -1
  116. package/dist/cjs/dist-types/order/item.js +0 -1
  117. package/dist/cjs/dist-types/order/orderMain.js +0 -1
  118. package/dist/cjs/dist-types/order/payment.js +0 -1
  119. package/dist/cjs/dist-types/order/shipment/index.js +0 -1
  120. package/dist/cjs/dist-types/order/shipment/item/index.js +0 -1
  121. package/dist/cjs/dist-types/order/shipment/item/itemMain.js +0 -1
  122. package/dist/cjs/dist-types/order/shipment/item/returned.js +0 -1
  123. package/dist/cjs/dist-types/order/shipment/pos/index.js +0 -1
  124. package/dist/cjs/dist-types/order/shipment/pos/outbound.js +0 -1
  125. package/dist/cjs/dist-types/order/shipment/pos/posMain.js +0 -1
  126. package/dist/cjs/dist-types/order/shipment/pos/return.js +0 -1
  127. package/dist/cjs/dist-types/order/shipment/shipmentMain.js +0 -1
  128. package/dist/cjs/dist-types/order/shipment/shipped/index.js +0 -1
  129. package/dist/cjs/dist-types/order/shipment/shipped/outbound.js +0 -1
  130. package/dist/cjs/dist-types/order/shipment/shipped/return.js +0 -1
  131. package/dist/cjs/dist-types/order/shipment/shipped/shippedMain.js +0 -1
  132. package/dist/cjs/dist-types/price.js +0 -1
  133. package/dist/cjs/dist-types/product-category.js +0 -1
  134. package/dist/cjs/dist-types/product-draft.js +0 -1
  135. package/dist/cjs/dist-types/product.js +0 -1
  136. package/dist/cjs/dist-types/stock.js +0 -1
  137. package/dist/cjs/dist-types/total.js +0 -1
  138. package/dist/cjs/index.js +0 -1
  139. package/dist/cjs/src-public/airtable.js +0 -1
  140. package/dist/cjs/src-public/bcOrder.js +409 -74
  141. package/dist/cjs/src-public/bigquery.js +0 -1
  142. package/dist/cjs/src-public/centra.js +0 -1
  143. package/dist/cjs/src-public/cloudtasks.js +0 -1
  144. package/dist/cjs/src-public/dato.js +0 -1
  145. package/dist/cjs/src-public/env.js +0 -1
  146. package/dist/cjs/src-public/getEventTime.js +0 -1
  147. package/dist/cjs/src-public/index.js +0 -1
  148. package/dist/cjs/src-public/ipValidation.js +0 -1
  149. package/dist/cjs/src-public/jwks.js +0 -1
  150. package/dist/cjs/src-public/pubsub.js +0 -1
  151. package/dist/cjs/src-public/rateLimit.js +0 -1
  152. package/dist/cjs/src-public/redisClient.js +0 -1
  153. package/dist/cjs/src-public/runtime.js +0 -1
  154. package/dist/cjs/src-public/sanitize.js +0 -1
  155. package/dist/cjs/src-public/scheduler.js +0 -1
  156. package/dist/cjs/src-public/secret.js +0 -1
  157. package/dist/cjs/src-public/setHeaders.js +0 -1
  158. package/dist/cjs/src-public/types.js +0 -1
  159. package/dist/cjs/src-public/utils.js +0 -1
  160. package/dist/cjs/src-public/validate.js +28 -1
  161. package/dist/types/contracts/index.d.ts +15 -0
  162. package/dist/types/contracts/messages/index.d.ts +5 -0
  163. package/dist/types/contracts/messages/order/index.d.ts +6 -0
  164. package/dist/types/contracts/order/index.d.ts +6 -0
  165. package/dist/types/contracts/order/shipment/index.d.ts +6 -0
  166. package/dist/types/contracts/order/shipment/item/index.d.ts +1 -0
  167. package/dist/types/contracts/order/shipment/pos/index.d.ts +2 -0
  168. package/dist/types/contracts/order/shipment/shipped/index.d.ts +2 -0
  169. package/dist/types/dist-dereferenced/messages/order/delivered.d.ts +4 -4
  170. package/dist/types/dist-dereferenced/messages/order/new.d.ts +4 -4
  171. package/dist/types/dist-dereferenced/messages/order/processed.d.ts +4 -4
  172. package/dist/types/dist-dereferenced/messages/order/return-initiated.d.ts +4 -4
  173. package/dist/types/dist-dereferenced/messages/order/returned.d.ts +4 -4
  174. package/dist/types/dist-dereferenced/messages/order/shipped.d.ts +4 -4
  175. package/dist/types/dist-dereferenced/order/index.d.ts +4 -4
  176. package/dist/types/dist-dereferenced/order/orderMain.d.ts +4 -4
  177. package/dist/types/dist-dereferenced/order/payment.d.ts +4 -4
  178. package/dist/types/dist-types/messages/order/delivered.d.ts +2 -2
  179. package/dist/types/dist-types/messages/order/new.d.ts +2 -2
  180. package/dist/types/dist-types/messages/order/processed.d.ts +2 -2
  181. package/dist/types/dist-types/messages/order/return-initiated.d.ts +2 -2
  182. package/dist/types/dist-types/messages/order/returned.d.ts +2 -2
  183. package/dist/types/dist-types/messages/order/shipped.d.ts +2 -2
  184. package/dist/types/dist-types/order/orderMain.d.ts +2 -2
  185. package/dist/types/dist-types/order/payment.d.ts +2 -2
  186. package/package.json +1 -1
  187. package/dist/cjs/dist-dereferenced/asset.js.map +0 -1
  188. package/dist/cjs/dist-dereferenced/category.js.map +0 -1
  189. package/dist/cjs/dist-dereferenced/country.js.map +0 -1
  190. package/dist/cjs/dist-dereferenced/currency.js.map +0 -1
  191. package/dist/cjs/dist-dereferenced/customer-segment.js.map +0 -1
  192. package/dist/cjs/dist-dereferenced/development-colour.js.map +0 -1
  193. package/dist/cjs/dist-dereferenced/index.js.map +0 -1
  194. package/dist/cjs/dist-dereferenced/marketing-preferences.js.map +0 -1
  195. package/dist/cjs/dist-dereferenced/messages/ean-change.js.map +0 -1
  196. package/dist/cjs/dist-dereferenced/messages/index.js.map +0 -1
  197. package/dist/cjs/dist-dereferenced/messages/order/delivered.js.map +0 -1
  198. package/dist/cjs/dist-dereferenced/messages/order/index.js.map +0 -1
  199. package/dist/cjs/dist-dereferenced/messages/order/new.js.map +0 -1
  200. package/dist/cjs/dist-dereferenced/messages/order/processed.js.map +0 -1
  201. package/dist/cjs/dist-dereferenced/messages/order/return-initiated.js.map +0 -1
  202. package/dist/cjs/dist-dereferenced/messages/order/returned.js.map +0 -1
  203. package/dist/cjs/dist-dereferenced/messages/order/shipped.js.map +0 -1
  204. package/dist/cjs/dist-dereferenced/messages/price-change.js.map +0 -1
  205. package/dist/cjs/dist-dereferenced/messages/product-category.js.map +0 -1
  206. package/dist/cjs/dist-dereferenced/messages/product-draft.js.map +0 -1
  207. package/dist/cjs/dist-dereferenced/messages/product.js.map +0 -1
  208. package/dist/cjs/dist-dereferenced/money.js.map +0 -1
  209. package/dist/cjs/dist-dereferenced/order/address.js.map +0 -1
  210. package/dist/cjs/dist-dereferenced/order/customer.js.map +0 -1
  211. package/dist/cjs/dist-dereferenced/order/index.js.map +0 -1
  212. package/dist/cjs/dist-dereferenced/order/item.js.map +0 -1
  213. package/dist/cjs/dist-dereferenced/order/orderMain.js.map +0 -1
  214. package/dist/cjs/dist-dereferenced/order/payment.js.map +0 -1
  215. package/dist/cjs/dist-dereferenced/order/shipment/index.js.map +0 -1
  216. package/dist/cjs/dist-dereferenced/order/shipment/item/index.js.map +0 -1
  217. package/dist/cjs/dist-dereferenced/order/shipment/item/itemMain.js.map +0 -1
  218. package/dist/cjs/dist-dereferenced/order/shipment/item/returned.js.map +0 -1
  219. package/dist/cjs/dist-dereferenced/order/shipment/pos/index.js.map +0 -1
  220. package/dist/cjs/dist-dereferenced/order/shipment/pos/outbound.js.map +0 -1
  221. package/dist/cjs/dist-dereferenced/order/shipment/pos/posMain.js.map +0 -1
  222. package/dist/cjs/dist-dereferenced/order/shipment/pos/return.js.map +0 -1
  223. package/dist/cjs/dist-dereferenced/order/shipment/shipmentMain.js.map +0 -1
  224. package/dist/cjs/dist-dereferenced/order/shipment/shipped/index.js.map +0 -1
  225. package/dist/cjs/dist-dereferenced/order/shipment/shipped/outbound.js.map +0 -1
  226. package/dist/cjs/dist-dereferenced/order/shipment/shipped/return.js.map +0 -1
  227. package/dist/cjs/dist-dereferenced/order/shipment/shipped/shippedMain.js.map +0 -1
  228. package/dist/cjs/dist-dereferenced/price.js.map +0 -1
  229. package/dist/cjs/dist-dereferenced/product-category.js.map +0 -1
  230. package/dist/cjs/dist-dereferenced/product-draft.js.map +0 -1
  231. package/dist/cjs/dist-dereferenced/product.js.map +0 -1
  232. package/dist/cjs/dist-dereferenced/stock.js.map +0 -1
  233. package/dist/cjs/dist-dereferenced/total.js.map +0 -1
  234. package/dist/cjs/dist-types/asset.js.map +0 -1
  235. package/dist/cjs/dist-types/category.js.map +0 -1
  236. package/dist/cjs/dist-types/country.js.map +0 -1
  237. package/dist/cjs/dist-types/currency.js.map +0 -1
  238. package/dist/cjs/dist-types/customer-segment.js.map +0 -1
  239. package/dist/cjs/dist-types/development-colour.js.map +0 -1
  240. package/dist/cjs/dist-types/index.js.map +0 -1
  241. package/dist/cjs/dist-types/marketing-preferences.js.map +0 -1
  242. package/dist/cjs/dist-types/messages/ean-change.js.map +0 -1
  243. package/dist/cjs/dist-types/messages/index.js.map +0 -1
  244. package/dist/cjs/dist-types/messages/order/delivered.js.map +0 -1
  245. package/dist/cjs/dist-types/messages/order/index.js.map +0 -1
  246. package/dist/cjs/dist-types/messages/order/new.js.map +0 -1
  247. package/dist/cjs/dist-types/messages/order/processed.js.map +0 -1
  248. package/dist/cjs/dist-types/messages/order/return-initiated.js.map +0 -1
  249. package/dist/cjs/dist-types/messages/order/returned.js.map +0 -1
  250. package/dist/cjs/dist-types/messages/order/shipped.js.map +0 -1
  251. package/dist/cjs/dist-types/messages/price-change.js.map +0 -1
  252. package/dist/cjs/dist-types/messages/product-category.js.map +0 -1
  253. package/dist/cjs/dist-types/messages/product-draft.js.map +0 -1
  254. package/dist/cjs/dist-types/messages/product.js.map +0 -1
  255. package/dist/cjs/dist-types/money.js.map +0 -1
  256. package/dist/cjs/dist-types/order/address.js.map +0 -1
  257. package/dist/cjs/dist-types/order/customer.js.map +0 -1
  258. package/dist/cjs/dist-types/order/index.js.map +0 -1
  259. package/dist/cjs/dist-types/order/item.js.map +0 -1
  260. package/dist/cjs/dist-types/order/orderMain.js.map +0 -1
  261. package/dist/cjs/dist-types/order/payment.js.map +0 -1
  262. package/dist/cjs/dist-types/order/shipment/index.js.map +0 -1
  263. package/dist/cjs/dist-types/order/shipment/item/index.js.map +0 -1
  264. package/dist/cjs/dist-types/order/shipment/item/itemMain.js.map +0 -1
  265. package/dist/cjs/dist-types/order/shipment/item/returned.js.map +0 -1
  266. package/dist/cjs/dist-types/order/shipment/pos/index.js.map +0 -1
  267. package/dist/cjs/dist-types/order/shipment/pos/outbound.js.map +0 -1
  268. package/dist/cjs/dist-types/order/shipment/pos/posMain.js.map +0 -1
  269. package/dist/cjs/dist-types/order/shipment/pos/return.js.map +0 -1
  270. package/dist/cjs/dist-types/order/shipment/shipmentMain.js.map +0 -1
  271. package/dist/cjs/dist-types/order/shipment/shipped/index.js.map +0 -1
  272. package/dist/cjs/dist-types/order/shipment/shipped/outbound.js.map +0 -1
  273. package/dist/cjs/dist-types/order/shipment/shipped/return.js.map +0 -1
  274. package/dist/cjs/dist-types/order/shipment/shipped/shippedMain.js.map +0 -1
  275. package/dist/cjs/dist-types/price.js.map +0 -1
  276. package/dist/cjs/dist-types/product-category.js.map +0 -1
  277. package/dist/cjs/dist-types/product-draft.js.map +0 -1
  278. package/dist/cjs/dist-types/product.js.map +0 -1
  279. package/dist/cjs/dist-types/stock.js.map +0 -1
  280. package/dist/cjs/dist-types/total.js.map +0 -1
  281. package/dist/cjs/index.js.map +0 -1
  282. package/dist/cjs/src-public/airtable.js.map +0 -1
  283. package/dist/cjs/src-public/bcOrder.js.map +0 -1
  284. package/dist/cjs/src-public/bigquery.js.map +0 -1
  285. package/dist/cjs/src-public/centra.js.map +0 -1
  286. package/dist/cjs/src-public/cloudtasks.js.map +0 -1
  287. package/dist/cjs/src-public/dato.js.map +0 -1
  288. package/dist/cjs/src-public/env.js.map +0 -1
  289. package/dist/cjs/src-public/getEventTime.js.map +0 -1
  290. package/dist/cjs/src-public/index.js.map +0 -1
  291. package/dist/cjs/src-public/ipValidation.js.map +0 -1
  292. package/dist/cjs/src-public/jwks.js.map +0 -1
  293. package/dist/cjs/src-public/pubsub.js.map +0 -1
  294. package/dist/cjs/src-public/rateLimit.js.map +0 -1
  295. package/dist/cjs/src-public/redisClient.js.map +0 -1
  296. package/dist/cjs/src-public/runtime.js.map +0 -1
  297. package/dist/cjs/src-public/sanitize.js.map +0 -1
  298. package/dist/cjs/src-public/scheduler.js.map +0 -1
  299. package/dist/cjs/src-public/secret.js.map +0 -1
  300. package/dist/cjs/src-public/setHeaders.js.map +0 -1
  301. package/dist/cjs/src-public/types.js.map +0 -1
  302. package/dist/cjs/src-public/utils.js.map +0 -1
  303. package/dist/cjs/src-public/validate.js.map +0 -1
@@ -0,0 +1,782 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://shushed.example.com/product-draft.schema.json",
4
+ "title": "ProductDraft",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "properties": {
8
+ "development_colourway_id": {
9
+ "type": "string",
10
+ "pattern": "^[A-Z]{2}\\d{2}[A-Z]+?-\\d{6}-\\d{4}$",
11
+ "description": "Code from Object Colorway; must match format like 'AW20FTW-000004-2763'. Identifies product-draft"
12
+ },
13
+ "development_style_id": {
14
+ "type": "string",
15
+ "pattern": "^[A-Z]{2}\\d{2}[A-Z]+?-\\d{6}$",
16
+ "description": "HS_Style_DevCode_String from Object Style; must match format like 'AW20FTW-000004'."
17
+ },
18
+ "product_id": {
19
+ "type": [
20
+ "string"
21
+ ],
22
+ "faker": {
23
+ "custom.product": []
24
+ },
25
+ "description": "Code from Object style and Code from Object Colorway - Example: 000697-3203 "
26
+ },
27
+ "created_at": {
28
+ "type": "string",
29
+ "format": "date-time",
30
+ "faker": {
31
+ "date.between": [
32
+ "2024-01-01T00:00:00.000Z",
33
+ "2025-04-30T00:00:00.000Z"
34
+ ]
35
+ }
36
+ },
37
+ "is_colourway_approved": {
38
+ "type": "boolean",
39
+ "description": "Is the colourway approved"
40
+ },
41
+ "product_name": {
42
+ "type": [
43
+ "string",
44
+ "null"
45
+ ],
46
+ "description": "HS_Style_OfficialName_String from Object Style - Example: Midi Cord Dress. Does not indiciate the colour of the level. Used to represented product name in the channels. "
47
+ },
48
+ "colour_id": {
49
+ "type": "string",
50
+ "description": "ID of the colour inside the colour library. Part of the product ID (for the 000697-3203 it would be 3203). Warning! The id dos not link to a single generally-understood colour. I.e. leopard print has ~40 different colour ids. Instead it links to SPECIFIC leopard print ordered for this specific material (specific shared of Navy Dusk Blue etc.)"
51
+ },
52
+ "colour_label": {
53
+ "type": [
54
+ "string",
55
+ "null"
56
+ ],
57
+ "faker": {
58
+ "color.human": []
59
+ },
60
+ "description": "Node Name from Object Colorway - Example: Toffee Brown. Should be the same as the Colour display (Hush) name for the given Colour ID, unfortunately not the case historically."
61
+ },
62
+ "style_id": {
63
+ "type": [
64
+ "string"
65
+ ],
66
+ "faker": {
67
+ "custom.style": []
68
+ },
69
+ "description": "Code from Object style - Example: 000697"
70
+ },
71
+ "season_id": {
72
+ "type": "string",
73
+ "description": "Code from Object Season, must match format like 'AW20'"
74
+ },
75
+ "size_curves": {
76
+ "type": "array",
77
+ "items": {
78
+ "type": "object",
79
+ "properties": {
80
+ "channel": {
81
+ "type": "string"
82
+ },
83
+ "name": {
84
+ "type": "string"
85
+ }
86
+ }
87
+ }
88
+ },
89
+ "plm_buying_quantities": {
90
+ "type": "array",
91
+ "items": {
92
+ "type": "object",
93
+ "$id": "BuyingQuantitiesChannel",
94
+ "properties": {
95
+ "channel": {
96
+ "type": "string"
97
+ },
98
+ "round": {
99
+ "type": "number",
100
+ "minimum": 0
101
+ }
102
+ },
103
+ "is_approved": {
104
+ "type": "boolean"
105
+ },
106
+ "quantity": {
107
+ "type": "number"
108
+ }
109
+ }
110
+ },
111
+ "drops": {
112
+ "type": "array",
113
+ "items": {
114
+ "type": "object",
115
+ "$id": "DropChannel",
116
+ "properties": {
117
+ "channel": {
118
+ "type": "string"
119
+ },
120
+ "drop_name": {
121
+ "type": "string",
122
+ "description": "HS_Colorway_{channel}Drop_Enum_Value from Object Colorway via dropMapping; must be a month or 'carryover'"
123
+ }
124
+ }
125
+ }
126
+ },
127
+ "stock_type": {
128
+ "type": [
129
+ "string",
130
+ "null"
131
+ ],
132
+ "description": "HS_Style_StockType_Enum from Object Style - Example: Daywear"
133
+ },
134
+ "block": {
135
+ "type": [
136
+ "string",
137
+ "null"
138
+ ],
139
+ "description": "HS_Style_Block_Enum from Object Style - Example: LS Raglan"
140
+ },
141
+ "packing_method": {
142
+ "type": [
143
+ "string",
144
+ "null"
145
+ ],
146
+ "description": "HS_StyleAttr_DeliveryMethod_Enum from Object StyleAttributes"
147
+ },
148
+ "is_bought_in_product": {
149
+ "type": [
150
+ "boolean",
151
+ "null"
152
+ ],
153
+ "description": "HS_StyleAttr_BoughtinProduct_Boolean from Object StyleAttributes - Example: true or false"
154
+ },
155
+ "reprocess_method": {
156
+ "type": [
157
+ "string",
158
+ "null"
159
+ ],
160
+ "description": "HS_LookupItem_ReprocessingMethod_String from Object LookupItem - Example: None"
161
+ },
162
+ "is_carry_over": {
163
+ "type": [
164
+ "boolean",
165
+ "null"
166
+ ],
167
+ "description": "CarryOver from Object Colorway - Example: true or false"
168
+ },
169
+ "image_url": {
170
+ "type": [
171
+ "string",
172
+ "null"
173
+ ],
174
+ "format": "uri",
175
+ "description": "Generated using generateImageURL on HS_Colorway_Image_URL from Object Colorway with centric baseURL"
176
+ },
177
+ "attributes": {
178
+ "type": "object",
179
+ "additionalProperties": false,
180
+ "properties": {
181
+ "product_type": {
182
+ "type": [
183
+ "string",
184
+ "null"
185
+ ],
186
+ "description": "HS_ColorwayAttr_ProductTypeNodeName from Object ColorwayAttributes - Example: Woven"
187
+ },
188
+ "product_category": {
189
+ "type": [
190
+ "string",
191
+ "null"
192
+ ],
193
+ "faker": {
194
+ "commerce.department": []
195
+ },
196
+ "description": "HS_ColorwayAttr_ProductCategoryNodeName from Object ColorwayAttributes - Example: Dresses"
197
+ },
198
+ "product_subcategory": {
199
+ "type": [
200
+ "string",
201
+ "null"
202
+ ],
203
+ "faker": {
204
+ "commerce.product": []
205
+ },
206
+ "description": "HS_ColorwayAttr_SubCategoryNodeName from Object ColorwayAttributes - Example: Smart"
207
+ },
208
+ "division": {
209
+ "type": [
210
+ "string",
211
+ "null"
212
+ ],
213
+ "description": "HS_ColorwayAttr_DivisionNodeName from Object ColorwayAttributes - Example: Women"
214
+ },
215
+ "care_instructions": {
216
+ "type": "array",
217
+ "items": {
218
+ "type": "string"
219
+ },
220
+ "description": "HS_Colorway_Fabric_and_Care from Object Colorway - Example: Fabric unlined, do not tumble dry"
221
+ },
222
+ "embelishment": {
223
+ "type": [
224
+ "string",
225
+ "null"
226
+ ],
227
+ "description": "Embelishment from Object Colorway"
228
+ },
229
+ "lining": {
230
+ "type": [
231
+ "string",
232
+ "null"
233
+ ],
234
+ "description": "Lining details"
235
+ },
236
+ "rise": {
237
+ "type": [
238
+ "string",
239
+ "null"
240
+ ],
241
+ "description": "The rise details"
242
+ },
243
+ "sleeve": {
244
+ "type": [
245
+ "string",
246
+ "null"
247
+ ],
248
+ "description": "The sleeve details"
249
+ },
250
+ "shape": {
251
+ "type": [
252
+ "string",
253
+ "null"
254
+ ],
255
+ "description": "The shape details"
256
+ },
257
+ "straps": {
258
+ "type": [
259
+ "string",
260
+ "null"
261
+ ],
262
+ "description": "The straps details"
263
+ },
264
+ "designer": {
265
+ "type": [
266
+ "string",
267
+ "null"
268
+ ],
269
+ "description": "The main designer of the piece"
270
+ },
271
+ "sustainability_callout": {
272
+ "type": [
273
+ "string",
274
+ "null"
275
+ ],
276
+ "description": "The sustainability_callout for the product"
277
+ },
278
+ "certificate": {
279
+ "anyOf": [
280
+ {
281
+ "type": "object",
282
+ "additionalProperties": false,
283
+ "properties": {
284
+ "type": {
285
+ "type": [
286
+ "string"
287
+ ]
288
+ },
289
+ "file": {
290
+ "type": [
291
+ "string"
292
+ ]
293
+ }
294
+ }
295
+ },
296
+ {
297
+ "type": "null"
298
+ }
299
+ ]
300
+ },
301
+ "bias_cut": {
302
+ "anyOf": [
303
+ {
304
+ "type": "object",
305
+ "additionalProperties": false,
306
+ "properties": {
307
+ "type": {
308
+ "type": [
309
+ "string"
310
+ ],
311
+ "description": "Bias cut"
312
+ },
313
+ "statement": {
314
+ "type": [
315
+ "string"
316
+ ],
317
+ "description": "Bias cut statement"
318
+ }
319
+ }
320
+ },
321
+ {
322
+ "type": "null"
323
+ }
324
+ ]
325
+ },
326
+ "design": {
327
+ "anyOf": [
328
+ {
329
+ "type": "object",
330
+ "additionalProperties": false,
331
+ "properties": {
332
+ "type": {
333
+ "type": [
334
+ "string"
335
+ ]
336
+ },
337
+ "statement": {
338
+ "type": [
339
+ "string"
340
+ ]
341
+ }
342
+ }
343
+ },
344
+ {
345
+ "type": "null"
346
+ }
347
+ ]
348
+ },
349
+ "fabric": {
350
+ "anyOf": [
351
+ {
352
+ "type": "object",
353
+ "additionalProperties": false,
354
+ "properties": {
355
+ "type": {
356
+ "type": [
357
+ "string"
358
+ ]
359
+ },
360
+ "statement": {
361
+ "type": [
362
+ "string"
363
+ ]
364
+ }
365
+ }
366
+ },
367
+ {
368
+ "type": "null"
369
+ }
370
+ ]
371
+ },
372
+ "fit": {
373
+ "anyOf": [
374
+ {
375
+ "type": "object",
376
+ "additionalProperties": false,
377
+ "properties": {
378
+ "type": {
379
+ "type": [
380
+ "string"
381
+ ]
382
+ },
383
+ "statement": {
384
+ "type": [
385
+ "string"
386
+ ]
387
+ }
388
+ }
389
+ },
390
+ {
391
+ "type": "null"
392
+ }
393
+ ]
394
+ },
395
+ "pockets": {
396
+ "type": [
397
+ "string",
398
+ "null"
399
+ ],
400
+ "description": "Description of pockets"
401
+ },
402
+ "pleatsGathers": {
403
+ "type": [
404
+ "string",
405
+ "null"
406
+ ],
407
+ "description": "Description of pleats and / or gathers"
408
+ },
409
+ "lining_statement": {
410
+ "type": [
411
+ "string",
412
+ "null"
413
+ ],
414
+ "description": "Lining statement"
415
+ },
416
+ "range": {
417
+ "type": [
418
+ "string",
419
+ "null"
420
+ ],
421
+ "description": "HS_Style_Range_Enum from Object Style - Example: Seasonal"
422
+ },
423
+ "main_fibre": {
424
+ "type": [
425
+ "string",
426
+ "null"
427
+ ],
428
+ "description": "HS_Style_MainFibre_Enum Object Style - Example: Cotton"
429
+ },
430
+ "main_fibre_composition": {
431
+ "type": [
432
+ "string",
433
+ "null"
434
+ ],
435
+ "description": "The main fibre in the composition including certification data"
436
+ },
437
+ "size_range": {
438
+ "type": [
439
+ "string",
440
+ "null"
441
+ ],
442
+ "faker": {
443
+ "custom.size": []
444
+ },
445
+ "description": "HS_ColorwayAttr_SizeRangeNodeName from Object ColorwayAttributes - Example: 10-16"
446
+ },
447
+ "sizes": {
448
+ "type": [
449
+ "string",
450
+ "null"
451
+ ],
452
+ "description": "HS_STYLEATT_SizeRangeProductSizesNames from Object StyleAttributes. A comma-separated list of sizes Example: can be one of these 'XS,S,M,L' or '4,6,8' or 'One' or '37-39,40-42'"
453
+ },
454
+ "occasion": {
455
+ "type": [
456
+ "string",
457
+ "null"
458
+ ],
459
+ "description": "HS_Colorway_Occasion_Enum from Object Colorway - Example: Smart"
460
+ },
461
+ "strategy_type": {
462
+ "type": [
463
+ "string",
464
+ "null"
465
+ ],
466
+ "description": "HS_Colorway_StrategyType_Enum from Object Colorway - Example: Seasonal New"
467
+ },
468
+ "pattern_name": {
469
+ "type": [
470
+ "string",
471
+ "null"
472
+ ],
473
+ "description": "HS_Colorway_Pattern_Enum from Object Colorway - Example: Floral"
474
+ },
475
+ "neckline": {
476
+ "type": [
477
+ "string",
478
+ "null"
479
+ ],
480
+ "description": "HS_Style_Neckline_Enum from Style - Example: Crew"
481
+ },
482
+ "sleeve_length": {
483
+ "type": [
484
+ "string",
485
+ "null"
486
+ ],
487
+ "description": "HS_Style_SleeveLength_Enum from Object Style - Example: Long Sleeve"
488
+ },
489
+ "leg_length": {
490
+ "type": [
491
+ "string",
492
+ "null"
493
+ ],
494
+ "description": "HS_Style_LegLength_Enum from Object Style - Example: Knee Length"
495
+ },
496
+ "heel_height": {
497
+ "type": [
498
+ "string",
499
+ "null"
500
+ ],
501
+ "description": "HS_Style_HeelHeight_Enum from Object Style - Example: "
502
+ },
503
+ "heel_shape": {
504
+ "type": [
505
+ "string",
506
+ "null"
507
+ ],
508
+ "description": "HS_Style_HeelShape_Enum from Object Style - Example: Flat"
509
+ },
510
+ "toe_shape": {
511
+ "type": [
512
+ "string",
513
+ "null"
514
+ ],
515
+ "description": "HS_Style_ToeShape_Enum from Object Style - Example: Round"
516
+ },
517
+ "handle_straps": {
518
+ "type": [
519
+ "string",
520
+ "null"
521
+ ],
522
+ "description": "HS_Style_HandleStraps_Enum from Object Style - example: "
523
+ },
524
+ "fastening": {
525
+ "anyOf": [
526
+ {
527
+ "type": [
528
+ "array",
529
+ "null"
530
+ ],
531
+ "items": {
532
+ "type": "string"
533
+ }
534
+ },
535
+ {
536
+ "type": "null"
537
+ }
538
+ ],
539
+ "description": "Fastening - Example: Zip Front"
540
+ },
541
+ "sole_code": {
542
+ "type": [
543
+ "string",
544
+ "null"
545
+ ],
546
+ "description": "HS_Style_Sole_Enum from OIbject style Example: Rubber"
547
+ },
548
+ "fashionability": {
549
+ "type": [
550
+ "string",
551
+ "null"
552
+ ],
553
+ "description": "HS_Colorway_Fashionability_Enum from Object Colorway - Example: Core"
554
+ },
555
+ "fashion_type": {
556
+ "type": [
557
+ "string",
558
+ "null"
559
+ ],
560
+ "description": "HS_Colorway_FashionType_Enum from Object Colorway - Example: "
561
+ },
562
+ "development_type": {
563
+ "type": [
564
+ "string",
565
+ "null"
566
+ ],
567
+ "description": "DevelopmentType from Object Colorway - Example: Re-Colour"
568
+ },
569
+ "weight_statement": {
570
+ "type": [
571
+ "string",
572
+ "null"
573
+ ],
574
+ "description": "HS_Style_Weight_Enum from Object Srtyle - Example: Light"
575
+ },
576
+ "weight": {
577
+ "type": [
578
+ "number",
579
+ "null"
580
+ ],
581
+ "minimum": 0,
582
+ "description": "HS_Style_AverageWeight_Double from Object Style. Average weight in grams. Example: 0"
583
+ },
584
+ "extra_selling_points": {
585
+ "type": "array",
586
+ "items": {
587
+ "type": "string"
588
+ },
589
+ "description": "HS_Style_ExtraSellingPoints_String from Object Style - Example: Lovely Print"
590
+ },
591
+ "length_measurement": {
592
+ "type": [
593
+ "string",
594
+ "null"
595
+ ],
596
+ "description": "HS_Style_LengthMeasurement_String from Object Style - Example: "
597
+ },
598
+ "fabric_composition": {
599
+ "type": [
600
+ "string",
601
+ "null"
602
+ ],
603
+ "faker": {
604
+ "commerce.productMaterial": []
605
+ },
606
+ "description": "HS_ColorwayAttr_FabricCompositionFootwear from Object ColorwayAttributes - Example: 1005 Cotton (Organic)"
607
+ }
608
+ }
609
+ },
610
+ "retail_price": {
611
+ "oneOf": [
612
+ {
613
+ "$ref": "https://shushed.example.com/money.schema.json"
614
+ },
615
+ {
616
+ "type": "null"
617
+ }
618
+ ]
619
+ },
620
+ "cost": {
621
+ "type": "object",
622
+ "additionalProperties": false,
623
+ "properties": {
624
+ "current_cost": {
625
+ "oneOf": [
626
+ {
627
+ "$ref": "https://shushed.example.com/money.schema.json"
628
+ },
629
+ {
630
+ "type": "null"
631
+ }
632
+ ]
633
+ },
634
+ "finishing_cost": {
635
+ "oneOf": [
636
+ {
637
+ "$ref": "https://shushed.example.com/money.schema.json"
638
+ },
639
+ {
640
+ "type": "null"
641
+ }
642
+ ]
643
+ },
644
+ "other_costs": {
645
+ "oneOf": [
646
+ {
647
+ "$ref": "https://shushed.example.com/money.schema.json"
648
+ },
649
+ {
650
+ "type": "null"
651
+ }
652
+ ]
653
+ },
654
+ "commission_rate": {
655
+ "type": [
656
+ "number",
657
+ "null"
658
+ ],
659
+ "description": "The decimal value of the commission"
660
+ },
661
+ "freight_rate": {
662
+ "type": [
663
+ "number",
664
+ "null"
665
+ ],
666
+ "description": "The decimal value of the freight rate"
667
+ },
668
+ "duty_rate": {
669
+ "type": [
670
+ "number",
671
+ "null"
672
+ ],
673
+ "description": "The decimal value of the duty rate"
674
+ }
675
+ }
676
+ },
677
+ "duty": {
678
+ "material": {
679
+ "type": [
680
+ "string",
681
+ "null"
682
+ ],
683
+ "description": "The material of the product as in the duty declaration"
684
+ },
685
+ "category": {
686
+ "type": [
687
+ "string",
688
+ "null"
689
+ ],
690
+ "description": "The category of the product as in the duty declaration"
691
+ },
692
+ "commodity_code": {
693
+ "type": [
694
+ "string",
695
+ "null"
696
+ ],
697
+ "description": "Commodity rate in the format 'C0/101888|DutyRate'"
698
+ }
699
+ },
700
+ "payment_terms": {
701
+ "type": "object",
702
+ "additionalProperties": false,
703
+ "properties": {
704
+ "supplier_payment_terms": {
705
+ "type": [
706
+ "string",
707
+ "null"
708
+ ],
709
+ "description": "HS_ColorwayAttr_Supplier_PaymentTerms from Object ColorwayAttributes - Example: FOB"
710
+ },
711
+ "supplier_inco_terms": {
712
+ "type": [
713
+ "string",
714
+ "null"
715
+ ],
716
+ "description": "HS_ColorwayAttr_Supplier_INCOTerms from Object ColorwayAttributes - Example: 90D"
717
+ }
718
+ }
719
+ },
720
+ "supplier_data": {
721
+ "type": "object",
722
+ "additionalProperties": false,
723
+ "properties": {
724
+ "country_of_origin": {
725
+ "oneOf": [
726
+ {
727
+ "$ref": "https://shushed.example.com/country.schema.json"
728
+ },
729
+ {
730
+ "type": "null"
731
+ }
732
+ ]
733
+ },
734
+ "port_of_origin": {
735
+ "type": [
736
+ "string",
737
+ "null"
738
+ ],
739
+ "description": "HS_ColorwayAttr_ShippingPortOfOrigin from Object ColorwayAttributes - Example: China"
740
+ },
741
+ "moq": {
742
+ "type": [
743
+ "number",
744
+ "null"
745
+ ],
746
+ "minimum": 0,
747
+ "description": "Minimum order quantity. Example: 500"
748
+ },
749
+ "supplier_id": {
750
+ "type": [
751
+ "string",
752
+ "null"
753
+ ],
754
+ "description": "Supplier ID in the format 'SUP00099', where 'SUP' is followed by exactly five digits - Example: HCM PORT (VIETNAM LCL)"
755
+ },
756
+ "supplier_name": {
757
+ "type": [
758
+ "string",
759
+ "null"
760
+ ],
761
+ "description": "HS_ColorwayAttr_Supplier_Name from Object ColorwayAttributes - Example: Binh Dinh Footwear Joint Stock Company"
762
+ },
763
+ "factory_id": {
764
+ "type": [
765
+ "string",
766
+ "null"
767
+ ],
768
+ "description": "Factory ID in the format 'FAC00074', where 'FAC' is followed by exactly five digits"
769
+ }
770
+ }
771
+ }
772
+ },
773
+ "required": [
774
+ "development_colourway_id",
775
+ "development_style_id",
776
+ "product_id",
777
+ "colour_id",
778
+ "style_id",
779
+ "created_at",
780
+ "season_id"
781
+ ]
782
+ }