@aimee.shop/sdk 0.0.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 (479) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +144 -0
  3. package/dist/browser/browser-auth.d.ts +115 -0
  4. package/dist/browser/browser-auth.d.ts.map +1 -0
  5. package/dist/browser/browser-auth.js +234 -0
  6. package/dist/browser/browser-auth.js.map +1 -0
  7. package/dist/browser/index.d.ts +62 -0
  8. package/dist/browser/index.d.ts.map +1 -0
  9. package/dist/browser/index.js +69 -0
  10. package/dist/browser/index.js.map +1 -0
  11. package/dist/core/auth/api-key.authenticator.d.ts +16 -0
  12. package/dist/core/auth/api-key.authenticator.d.ts.map +1 -0
  13. package/dist/core/auth/api-key.authenticator.js +28 -0
  14. package/dist/core/auth/api-key.authenticator.js.map +1 -0
  15. package/dist/core/auth/auth-chain.d.ts +33 -0
  16. package/dist/core/auth/auth-chain.d.ts.map +1 -0
  17. package/dist/core/auth/auth-chain.js +65 -0
  18. package/dist/core/auth/auth-chain.js.map +1 -0
  19. package/dist/core/auth/authenticator.d.ts +19 -0
  20. package/dist/core/auth/authenticator.d.ts.map +1 -0
  21. package/dist/core/auth/authenticator.js +2 -0
  22. package/dist/core/auth/authenticator.js.map +1 -0
  23. package/dist/core/auth/cognito.authenticator.d.ts +28 -0
  24. package/dist/core/auth/cognito.authenticator.d.ts.map +1 -0
  25. package/dist/core/auth/cognito.authenticator.js +89 -0
  26. package/dist/core/auth/cognito.authenticator.js.map +1 -0
  27. package/dist/core/auth/index.d.ts +8 -0
  28. package/dist/core/auth/index.d.ts.map +1 -0
  29. package/dist/core/auth/index.js +6 -0
  30. package/dist/core/auth/index.js.map +1 -0
  31. package/dist/core/auth/interactive.authenticator.d.ts +22 -0
  32. package/dist/core/auth/interactive.authenticator.d.ts.map +1 -0
  33. package/dist/core/auth/interactive.authenticator.js +126 -0
  34. package/dist/core/auth/interactive.authenticator.js.map +1 -0
  35. package/dist/core/auth/lazy-interactive.authenticator.d.ts +51 -0
  36. package/dist/core/auth/lazy-interactive.authenticator.d.ts.map +1 -0
  37. package/dist/core/auth/lazy-interactive.authenticator.js +112 -0
  38. package/dist/core/auth/lazy-interactive.authenticator.js.map +1 -0
  39. package/dist/core/auth/token.authenticator.d.ts +20 -0
  40. package/dist/core/auth/token.authenticator.d.ts.map +1 -0
  41. package/dist/core/auth/token.authenticator.js +45 -0
  42. package/dist/core/auth/token.authenticator.js.map +1 -0
  43. package/dist/core/config.d.ts +72 -0
  44. package/dist/core/config.d.ts.map +1 -0
  45. package/dist/core/config.js +120 -0
  46. package/dist/core/config.js.map +1 -0
  47. package/dist/core/errors/index.d.ts +101 -0
  48. package/dist/core/errors/index.d.ts.map +1 -0
  49. package/dist/core/errors/index.js +119 -0
  50. package/dist/core/errors/index.js.map +1 -0
  51. package/dist/core/events/event-envelope.d.ts +34 -0
  52. package/dist/core/events/event-envelope.d.ts.map +1 -0
  53. package/dist/core/events/event-envelope.js +2 -0
  54. package/dist/core/events/event-envelope.js.map +1 -0
  55. package/dist/core/events/event-names.d.ts +552 -0
  56. package/dist/core/events/event-names.d.ts.map +1 -0
  57. package/dist/core/events/event-names.js +593 -0
  58. package/dist/core/events/event-names.js.map +1 -0
  59. package/dist/core/events/index.d.ts +4 -0
  60. package/dist/core/events/index.d.ts.map +1 -0
  61. package/dist/core/events/index.js +11 -0
  62. package/dist/core/events/index.js.map +1 -0
  63. package/dist/core/http-client.d.ts +88 -0
  64. package/dist/core/http-client.d.ts.map +1 -0
  65. package/dist/core/http-client.js +293 -0
  66. package/dist/core/http-client.js.map +1 -0
  67. package/dist/core/retry.d.ts +48 -0
  68. package/dist/core/retry.d.ts.map +1 -0
  69. package/dist/core/retry.js +57 -0
  70. package/dist/core/retry.js.map +1 -0
  71. package/dist/core/sdk.d.ts +153 -0
  72. package/dist/core/sdk.d.ts.map +1 -0
  73. package/dist/core/sdk.js +327 -0
  74. package/dist/core/sdk.js.map +1 -0
  75. package/dist/core/types/address.d.ts +18 -0
  76. package/dist/core/types/address.d.ts.map +1 -0
  77. package/dist/core/types/address.js +2 -0
  78. package/dist/core/types/address.js.map +1 -0
  79. package/dist/core/types/geo.d.ts +59 -0
  80. package/dist/core/types/geo.d.ts.map +1 -0
  81. package/dist/core/types/geo.js +78 -0
  82. package/dist/core/types/geo.js.map +1 -0
  83. package/dist/core/types/pagination.d.ts +42 -0
  84. package/dist/core/types/pagination.d.ts.map +1 -0
  85. package/dist/core/types/pagination.js +2 -0
  86. package/dist/core/types/pagination.js.map +1 -0
  87. package/dist/index.d.ts +68 -0
  88. package/dist/index.d.ts.map +1 -0
  89. package/dist/index.js +37 -0
  90. package/dist/index.js.map +1 -0
  91. package/dist/services/core/assets.client.d.ts +520 -0
  92. package/dist/services/core/assets.client.d.ts.map +1 -0
  93. package/dist/services/core/assets.client.js +297 -0
  94. package/dist/services/core/assets.client.js.map +1 -0
  95. package/dist/services/core/base-resource.d.ts +70 -0
  96. package/dist/services/core/base-resource.d.ts.map +1 -0
  97. package/dist/services/core/base-resource.js +97 -0
  98. package/dist/services/core/base-resource.js.map +1 -0
  99. package/dist/services/core/cart-messages/cart-messages.client.d.ts +30 -0
  100. package/dist/services/core/cart-messages/cart-messages.client.d.ts.map +1 -0
  101. package/dist/services/core/cart-messages/cart-messages.client.js +30 -0
  102. package/dist/services/core/cart-messages/cart-messages.client.js.map +1 -0
  103. package/dist/services/core/cart-messages/index.d.ts +4 -0
  104. package/dist/services/core/cart-messages/index.d.ts.map +1 -0
  105. package/dist/services/core/cart-messages/index.js +3 -0
  106. package/dist/services/core/cart-messages/index.js.map +1 -0
  107. package/dist/services/core/cart-messages/types.d.ts +106 -0
  108. package/dist/services/core/cart-messages/types.d.ts.map +1 -0
  109. package/dist/services/core/cart-messages/types.js +6 -0
  110. package/dist/services/core/cart-messages/types.js.map +1 -0
  111. package/dist/services/core/carts.client.d.ts +253 -0
  112. package/dist/services/core/carts.client.d.ts.map +1 -0
  113. package/dist/services/core/carts.client.js +110 -0
  114. package/dist/services/core/carts.client.js.map +1 -0
  115. package/dist/services/core/categories.client.d.ts +105 -0
  116. package/dist/services/core/categories.client.d.ts.map +1 -0
  117. package/dist/services/core/categories.client.js +135 -0
  118. package/dist/services/core/categories.client.js.map +1 -0
  119. package/dist/services/core/checkout.client.d.ts +414 -0
  120. package/dist/services/core/checkout.client.d.ts.map +1 -0
  121. package/dist/services/core/checkout.client.js +153 -0
  122. package/dist/services/core/checkout.client.js.map +1 -0
  123. package/dist/services/core/cms/cms.client.d.ts +111 -0
  124. package/dist/services/core/cms/cms.client.d.ts.map +1 -0
  125. package/dist/services/core/cms/cms.client.js +148 -0
  126. package/dist/services/core/cms/cms.client.js.map +1 -0
  127. package/dist/services/core/cms/collections.client.d.ts +45 -0
  128. package/dist/services/core/cms/collections.client.d.ts.map +1 -0
  129. package/dist/services/core/cms/collections.client.js +67 -0
  130. package/dist/services/core/cms/collections.client.js.map +1 -0
  131. package/dist/services/core/cms/content-types.client.d.ts +101 -0
  132. package/dist/services/core/cms/content-types.client.d.ts.map +1 -0
  133. package/dist/services/core/cms/content-types.client.js +143 -0
  134. package/dist/services/core/cms/content-types.client.js.map +1 -0
  135. package/dist/services/core/cms/entries.client.d.ts +187 -0
  136. package/dist/services/core/cms/entries.client.d.ts.map +1 -0
  137. package/dist/services/core/cms/entries.client.js +265 -0
  138. package/dist/services/core/cms/entries.client.js.map +1 -0
  139. package/dist/services/core/cms/index.d.ts +10 -0
  140. package/dist/services/core/cms/index.d.ts.map +1 -0
  141. package/dist/services/core/cms/index.js +10 -0
  142. package/dist/services/core/cms/index.js.map +1 -0
  143. package/dist/services/core/cms/media.client.d.ts +63 -0
  144. package/dist/services/core/cms/media.client.d.ts.map +1 -0
  145. package/dist/services/core/cms/media.client.js +95 -0
  146. package/dist/services/core/cms/media.client.js.map +1 -0
  147. package/dist/services/core/cms/modules.client.d.ts +64 -0
  148. package/dist/services/core/cms/modules.client.d.ts.map +1 -0
  149. package/dist/services/core/cms/modules.client.js +88 -0
  150. package/dist/services/core/cms/modules.client.js.map +1 -0
  151. package/dist/services/core/cms/navigation.client.d.ts +78 -0
  152. package/dist/services/core/cms/navigation.client.d.ts.map +1 -0
  153. package/dist/services/core/cms/navigation.client.js +116 -0
  154. package/dist/services/core/cms/navigation.client.js.map +1 -0
  155. package/dist/services/core/cms/public.client.d.ts +64 -0
  156. package/dist/services/core/cms/public.client.d.ts.map +1 -0
  157. package/dist/services/core/cms/public.client.js +102 -0
  158. package/dist/services/core/cms/public.client.js.map +1 -0
  159. package/dist/services/core/cms/types.d.ts +804 -0
  160. package/dist/services/core/cms/types.d.ts.map +1 -0
  161. package/dist/services/core/cms/types.js +43 -0
  162. package/dist/services/core/cms/types.js.map +1 -0
  163. package/dist/services/core/customers.client.d.ts +285 -0
  164. package/dist/services/core/customers.client.d.ts.map +1 -0
  165. package/dist/services/core/customers.client.js +133 -0
  166. package/dist/services/core/customers.client.js.map +1 -0
  167. package/dist/services/core/discounts.client.d.ts +197 -0
  168. package/dist/services/core/discounts.client.d.ts.map +1 -0
  169. package/dist/services/core/discounts.client.js +81 -0
  170. package/dist/services/core/discounts.client.js.map +1 -0
  171. package/dist/services/core/exports/exports.client.d.ts +55 -0
  172. package/dist/services/core/exports/exports.client.d.ts.map +1 -0
  173. package/dist/services/core/exports/exports.client.js +80 -0
  174. package/dist/services/core/exports/exports.client.js.map +1 -0
  175. package/dist/services/core/exports/index.d.ts +4 -0
  176. package/dist/services/core/exports/index.d.ts.map +1 -0
  177. package/dist/services/core/exports/index.js +3 -0
  178. package/dist/services/core/exports/index.js.map +1 -0
  179. package/dist/services/core/exports/types.d.ts +68 -0
  180. package/dist/services/core/exports/types.d.ts.map +1 -0
  181. package/dist/services/core/exports/types.js +25 -0
  182. package/dist/services/core/exports/types.js.map +1 -0
  183. package/dist/services/core/facets.client.d.ts +127 -0
  184. package/dist/services/core/facets.client.d.ts.map +1 -0
  185. package/dist/services/core/facets.client.js +81 -0
  186. package/dist/services/core/facets.client.js.map +1 -0
  187. package/dist/services/core/fulfillments.client.d.ts +94 -0
  188. package/dist/services/core/fulfillments.client.d.ts.map +1 -0
  189. package/dist/services/core/fulfillments.client.js +66 -0
  190. package/dist/services/core/fulfillments.client.js.map +1 -0
  191. package/dist/services/core/inventory/adjustments.client.d.ts +60 -0
  192. package/dist/services/core/inventory/adjustments.client.d.ts.map +1 -0
  193. package/dist/services/core/inventory/adjustments.client.js +76 -0
  194. package/dist/services/core/inventory/adjustments.client.js.map +1 -0
  195. package/dist/services/core/inventory/index.d.ts +8 -0
  196. package/dist/services/core/inventory/index.d.ts.map +1 -0
  197. package/dist/services/core/inventory/index.js +7 -0
  198. package/dist/services/core/inventory/index.js.map +1 -0
  199. package/dist/services/core/inventory/inventory.client.d.ts +90 -0
  200. package/dist/services/core/inventory/inventory.client.d.ts.map +1 -0
  201. package/dist/services/core/inventory/inventory.client.js +135 -0
  202. package/dist/services/core/inventory/inventory.client.js.map +1 -0
  203. package/dist/services/core/inventory/locations.client.d.ts +71 -0
  204. package/dist/services/core/inventory/locations.client.d.ts.map +1 -0
  205. package/dist/services/core/inventory/locations.client.js +107 -0
  206. package/dist/services/core/inventory/locations.client.js.map +1 -0
  207. package/dist/services/core/inventory/reservations.client.d.ts +58 -0
  208. package/dist/services/core/inventory/reservations.client.d.ts.map +1 -0
  209. package/dist/services/core/inventory/reservations.client.js +87 -0
  210. package/dist/services/core/inventory/reservations.client.js.map +1 -0
  211. package/dist/services/core/inventory/stock.client.d.ts +74 -0
  212. package/dist/services/core/inventory/stock.client.d.ts.map +1 -0
  213. package/dist/services/core/inventory/stock.client.js +113 -0
  214. package/dist/services/core/inventory/stock.client.js.map +1 -0
  215. package/dist/services/core/inventory/types.d.ts +337 -0
  216. package/dist/services/core/inventory/types.d.ts.map +1 -0
  217. package/dist/services/core/inventory/types.js +2 -0
  218. package/dist/services/core/inventory/types.js.map +1 -0
  219. package/dist/services/core/invoices.client.d.ts +92 -0
  220. package/dist/services/core/invoices.client.d.ts.map +1 -0
  221. package/dist/services/core/invoices.client.js +68 -0
  222. package/dist/services/core/invoices.client.js.map +1 -0
  223. package/dist/services/core/notification-config.client.d.ts +57 -0
  224. package/dist/services/core/notification-config.client.d.ts.map +1 -0
  225. package/dist/services/core/notification-config.client.js +41 -0
  226. package/dist/services/core/notification-config.client.js.map +1 -0
  227. package/dist/services/core/openai-feed.client.d.ts +90 -0
  228. package/dist/services/core/openai-feed.client.d.ts.map +1 -0
  229. package/dist/services/core/openai-feed.client.js +63 -0
  230. package/dist/services/core/openai-feed.client.js.map +1 -0
  231. package/dist/services/core/option-types.client.d.ts +119 -0
  232. package/dist/services/core/option-types.client.d.ts.map +1 -0
  233. package/dist/services/core/option-types.client.js +81 -0
  234. package/dist/services/core/option-types.client.js.map +1 -0
  235. package/dist/services/core/option-values.client.d.ts +72 -0
  236. package/dist/services/core/option-values.client.d.ts.map +1 -0
  237. package/dist/services/core/option-values.client.js +64 -0
  238. package/dist/services/core/option-values.client.js.map +1 -0
  239. package/dist/services/core/order-edits.client.d.ts +88 -0
  240. package/dist/services/core/order-edits.client.d.ts.map +1 -0
  241. package/dist/services/core/order-edits.client.js +62 -0
  242. package/dist/services/core/order-edits.client.js.map +1 -0
  243. package/dist/services/core/orders.client.d.ts +284 -0
  244. package/dist/services/core/orders.client.d.ts.map +1 -0
  245. package/dist/services/core/orders.client.js +150 -0
  246. package/dist/services/core/orders.client.js.map +1 -0
  247. package/dist/services/core/pricing/currencies.client.d.ts +109 -0
  248. package/dist/services/core/pricing/currencies.client.d.ts.map +1 -0
  249. package/dist/services/core/pricing/currencies.client.js +145 -0
  250. package/dist/services/core/pricing/currencies.client.js.map +1 -0
  251. package/dist/services/core/pricing/customer-groups.client.d.ts +126 -0
  252. package/dist/services/core/pricing/customer-groups.client.d.ts.map +1 -0
  253. package/dist/services/core/pricing/customer-groups.client.js +154 -0
  254. package/dist/services/core/pricing/customer-groups.client.js.map +1 -0
  255. package/dist/services/core/pricing/geo-zones.client.d.ts +89 -0
  256. package/dist/services/core/pricing/geo-zones.client.d.ts.map +1 -0
  257. package/dist/services/core/pricing/geo-zones.client.js +116 -0
  258. package/dist/services/core/pricing/geo-zones.client.js.map +1 -0
  259. package/dist/services/core/pricing/index.d.ts +13 -0
  260. package/dist/services/core/pricing/index.d.ts.map +1 -0
  261. package/dist/services/core/pricing/index.js +13 -0
  262. package/dist/services/core/pricing/index.js.map +1 -0
  263. package/dist/services/core/pricing/markets.client.d.ts +154 -0
  264. package/dist/services/core/pricing/markets.client.d.ts.map +1 -0
  265. package/dist/services/core/pricing/markets.client.js +194 -0
  266. package/dist/services/core/pricing/markets.client.js.map +1 -0
  267. package/dist/services/core/pricing/pricing.client.d.ts +280 -0
  268. package/dist/services/core/pricing/pricing.client.d.ts.map +1 -0
  269. package/dist/services/core/pricing/pricing.client.js +363 -0
  270. package/dist/services/core/pricing/pricing.client.js.map +1 -0
  271. package/dist/services/core/pricing/product-geo-restrictions.client.d.ts +79 -0
  272. package/dist/services/core/pricing/product-geo-restrictions.client.d.ts.map +1 -0
  273. package/dist/services/core/pricing/product-geo-restrictions.client.js +109 -0
  274. package/dist/services/core/pricing/product-geo-restrictions.client.js.map +1 -0
  275. package/dist/services/core/pricing/product-market-settings.client.d.ts +168 -0
  276. package/dist/services/core/pricing/product-market-settings.client.d.ts.map +1 -0
  277. package/dist/services/core/pricing/product-market-settings.client.js +213 -0
  278. package/dist/services/core/pricing/product-market-settings.client.js.map +1 -0
  279. package/dist/services/core/pricing/rules.client.d.ts +46 -0
  280. package/dist/services/core/pricing/rules.client.d.ts.map +1 -0
  281. package/dist/services/core/pricing/rules.client.js +57 -0
  282. package/dist/services/core/pricing/rules.client.js.map +1 -0
  283. package/dist/services/core/pricing/store-markets.client.d.ts +168 -0
  284. package/dist/services/core/pricing/store-markets.client.d.ts.map +1 -0
  285. package/dist/services/core/pricing/store-markets.client.js +209 -0
  286. package/dist/services/core/pricing/store-markets.client.js.map +1 -0
  287. package/dist/services/core/pricing/tiers.client.d.ts +57 -0
  288. package/dist/services/core/pricing/tiers.client.d.ts.map +1 -0
  289. package/dist/services/core/pricing/tiers.client.js +72 -0
  290. package/dist/services/core/pricing/tiers.client.js.map +1 -0
  291. package/dist/services/core/pricing/types.d.ts +782 -0
  292. package/dist/services/core/pricing/types.d.ts.map +1 -0
  293. package/dist/services/core/pricing/types.js +2 -0
  294. package/dist/services/core/pricing/types.js.map +1 -0
  295. package/dist/services/core/pricing/variant-prices.client.d.ts +307 -0
  296. package/dist/services/core/pricing/variant-prices.client.d.ts.map +1 -0
  297. package/dist/services/core/pricing/variant-prices.client.js +347 -0
  298. package/dist/services/core/pricing/variant-prices.client.js.map +1 -0
  299. package/dist/services/core/product-relations.client.d.ts +260 -0
  300. package/dist/services/core/product-relations.client.d.ts.map +1 -0
  301. package/dist/services/core/product-relations.client.js +141 -0
  302. package/dist/services/core/product-relations.client.js.map +1 -0
  303. package/dist/services/core/products.client.d.ts +564 -0
  304. package/dist/services/core/products.client.d.ts.map +1 -0
  305. package/dist/services/core/products.client.js +277 -0
  306. package/dist/services/core/products.client.js.map +1 -0
  307. package/dist/services/core/returns.client.d.ts +199 -0
  308. package/dist/services/core/returns.client.d.ts.map +1 -0
  309. package/dist/services/core/returns.client.js +106 -0
  310. package/dist/services/core/returns.client.js.map +1 -0
  311. package/dist/services/core/reviews.client.d.ts +218 -0
  312. package/dist/services/core/reviews.client.d.ts.map +1 -0
  313. package/dist/services/core/reviews.client.js +161 -0
  314. package/dist/services/core/reviews.client.js.map +1 -0
  315. package/dist/services/core/search.client.d.ts +127 -0
  316. package/dist/services/core/search.client.d.ts.map +1 -0
  317. package/dist/services/core/search.client.js +120 -0
  318. package/dist/services/core/search.client.js.map +1 -0
  319. package/dist/services/core/shipping/classes.client.d.ts +20 -0
  320. package/dist/services/core/shipping/classes.client.d.ts.map +1 -0
  321. package/dist/services/core/shipping/classes.client.js +43 -0
  322. package/dist/services/core/shipping/classes.client.js.map +1 -0
  323. package/dist/services/core/shipping/index.d.ts +11 -0
  324. package/dist/services/core/shipping/index.d.ts.map +1 -0
  325. package/dist/services/core/shipping/index.js +11 -0
  326. package/dist/services/core/shipping/index.js.map +1 -0
  327. package/dist/services/core/shipping/labels.client.d.ts +20 -0
  328. package/dist/services/core/shipping/labels.client.d.ts.map +1 -0
  329. package/dist/services/core/shipping/labels.client.js +49 -0
  330. package/dist/services/core/shipping/labels.client.js.map +1 -0
  331. package/dist/services/core/shipping/providers.client.d.ts +19 -0
  332. package/dist/services/core/shipping/providers.client.d.ts.map +1 -0
  333. package/dist/services/core/shipping/providers.client.js +46 -0
  334. package/dist/services/core/shipping/providers.client.js.map +1 -0
  335. package/dist/services/core/shipping/rates.client.d.ts +19 -0
  336. package/dist/services/core/shipping/rates.client.d.ts.map +1 -0
  337. package/dist/services/core/shipping/rates.client.js +37 -0
  338. package/dist/services/core/shipping/rates.client.js.map +1 -0
  339. package/dist/services/core/shipping/rules.client.d.ts +17 -0
  340. package/dist/services/core/shipping/rules.client.d.ts.map +1 -0
  341. package/dist/services/core/shipping/rules.client.js +34 -0
  342. package/dist/services/core/shipping/rules.client.js.map +1 -0
  343. package/dist/services/core/shipping/shipper-identity.client.d.ts +49 -0
  344. package/dist/services/core/shipping/shipper-identity.client.d.ts.map +1 -0
  345. package/dist/services/core/shipping/shipper-identity.client.js +61 -0
  346. package/dist/services/core/shipping/shipper-identity.client.js.map +1 -0
  347. package/dist/services/core/shipping/shipping.client.d.ts +99 -0
  348. package/dist/services/core/shipping/shipping.client.d.ts.map +1 -0
  349. package/dist/services/core/shipping/shipping.client.js +165 -0
  350. package/dist/services/core/shipping/shipping.client.js.map +1 -0
  351. package/dist/services/core/shipping/store-providers.client.d.ts +48 -0
  352. package/dist/services/core/shipping/store-providers.client.d.ts.map +1 -0
  353. package/dist/services/core/shipping/store-providers.client.js +59 -0
  354. package/dist/services/core/shipping/store-providers.client.js.map +1 -0
  355. package/dist/services/core/shipping/types.d.ts +488 -0
  356. package/dist/services/core/shipping/types.d.ts.map +1 -0
  357. package/dist/services/core/shipping/types.js +3 -0
  358. package/dist/services/core/shipping/types.js.map +1 -0
  359. package/dist/services/core/shipping/zones.client.d.ts +16 -0
  360. package/dist/services/core/shipping/zones.client.d.ts.map +1 -0
  361. package/dist/services/core/shipping/zones.client.js +29 -0
  362. package/dist/services/core/shipping/zones.client.js.map +1 -0
  363. package/dist/services/core/storefront/index.d.ts +10 -0
  364. package/dist/services/core/storefront/index.d.ts.map +1 -0
  365. package/dist/services/core/storefront/index.js +10 -0
  366. package/dist/services/core/storefront/index.js.map +1 -0
  367. package/dist/services/core/storefront/storefront-addresses.client.d.ts +67 -0
  368. package/dist/services/core/storefront/storefront-addresses.client.d.ts.map +1 -0
  369. package/dist/services/core/storefront/storefront-addresses.client.js +95 -0
  370. package/dist/services/core/storefront/storefront-addresses.client.js.map +1 -0
  371. package/dist/services/core/storefront/storefront-auth.client.d.ts +104 -0
  372. package/dist/services/core/storefront/storefront-auth.client.d.ts.map +1 -0
  373. package/dist/services/core/storefront/storefront-auth.client.js +132 -0
  374. package/dist/services/core/storefront/storefront-auth.client.js.map +1 -0
  375. package/dist/services/core/storefront/storefront-orders.client.d.ts +73 -0
  376. package/dist/services/core/storefront/storefront-orders.client.d.ts.map +1 -0
  377. package/dist/services/core/storefront/storefront-orders.client.js +78 -0
  378. package/dist/services/core/storefront/storefront-orders.client.js.map +1 -0
  379. package/dist/services/core/storefront/storefront-plans.client.d.ts +76 -0
  380. package/dist/services/core/storefront/storefront-plans.client.d.ts.map +1 -0
  381. package/dist/services/core/storefront/storefront-plans.client.js +52 -0
  382. package/dist/services/core/storefront/storefront-plans.client.js.map +1 -0
  383. package/dist/services/core/storefront/storefront-reviews.client.d.ts +60 -0
  384. package/dist/services/core/storefront/storefront-reviews.client.d.ts.map +1 -0
  385. package/dist/services/core/storefront/storefront-reviews.client.js +88 -0
  386. package/dist/services/core/storefront/storefront-reviews.client.js.map +1 -0
  387. package/dist/services/core/storefront/storefront-subscriptions.client.d.ts +199 -0
  388. package/dist/services/core/storefront/storefront-subscriptions.client.d.ts.map +1 -0
  389. package/dist/services/core/storefront/storefront-subscriptions.client.js +149 -0
  390. package/dist/services/core/storefront/storefront-subscriptions.client.js.map +1 -0
  391. package/dist/services/core/storefront/storefront.client.d.ts +166 -0
  392. package/dist/services/core/storefront/storefront.client.d.ts.map +1 -0
  393. package/dist/services/core/storefront/storefront.client.js +228 -0
  394. package/dist/services/core/storefront/storefront.client.js.map +1 -0
  395. package/dist/services/core/storefront/types.d.ts +131 -0
  396. package/dist/services/core/storefront/types.d.ts.map +1 -0
  397. package/dist/services/core/storefront/types.js +3 -0
  398. package/dist/services/core/storefront/types.js.map +1 -0
  399. package/dist/services/core/storefront-redirects/index.d.ts +4 -0
  400. package/dist/services/core/storefront-redirects/index.d.ts.map +1 -0
  401. package/dist/services/core/storefront-redirects/index.js +3 -0
  402. package/dist/services/core/storefront-redirects/index.js.map +1 -0
  403. package/dist/services/core/storefront-redirects/storefront-redirects.client.d.ts +79 -0
  404. package/dist/services/core/storefront-redirects/storefront-redirects.client.d.ts.map +1 -0
  405. package/dist/services/core/storefront-redirects/storefront-redirects.client.js +132 -0
  406. package/dist/services/core/storefront-redirects/storefront-redirects.client.js.map +1 -0
  407. package/dist/services/core/storefront-redirects/storefront-redirects.public.client.d.ts +35 -0
  408. package/dist/services/core/storefront-redirects/storefront-redirects.public.client.d.ts.map +1 -0
  409. package/dist/services/core/storefront-redirects/storefront-redirects.public.client.js +42 -0
  410. package/dist/services/core/storefront-redirects/storefront-redirects.public.client.js.map +1 -0
  411. package/dist/services/core/storefront-redirects/types.d.ts +117 -0
  412. package/dist/services/core/storefront-redirects/types.d.ts.map +1 -0
  413. package/dist/services/core/storefront-redirects/types.js +2 -0
  414. package/dist/services/core/storefront-redirects/types.js.map +1 -0
  415. package/dist/services/core/stores/ai-discovery.client.d.ts +98 -0
  416. package/dist/services/core/stores/ai-discovery.client.d.ts.map +1 -0
  417. package/dist/services/core/stores/ai-discovery.client.js +72 -0
  418. package/dist/services/core/stores/ai-discovery.client.js.map +1 -0
  419. package/dist/services/core/stores/configuration.client.d.ts +238 -0
  420. package/dist/services/core/stores/configuration.client.d.ts.map +1 -0
  421. package/dist/services/core/stores/configuration.client.js +88 -0
  422. package/dist/services/core/stores/configuration.client.js.map +1 -0
  423. package/dist/services/core/stores/index.d.ts +11 -0
  424. package/dist/services/core/stores/index.d.ts.map +1 -0
  425. package/dist/services/core/stores/index.js +6 -0
  426. package/dist/services/core/stores/index.js.map +1 -0
  427. package/dist/services/core/stores/members.client.d.ts +91 -0
  428. package/dist/services/core/stores/members.client.d.ts.map +1 -0
  429. package/dist/services/core/stores/members.client.js +70 -0
  430. package/dist/services/core/stores/members.client.js.map +1 -0
  431. package/dist/services/core/stores/stores.client.d.ts +190 -0
  432. package/dist/services/core/stores/stores.client.d.ts.map +1 -0
  433. package/dist/services/core/stores/stores.client.js +177 -0
  434. package/dist/services/core/stores/stores.client.js.map +1 -0
  435. package/dist/services/core/stores/theme.types.d.ts +109 -0
  436. package/dist/services/core/stores/theme.types.d.ts.map +1 -0
  437. package/dist/services/core/stores/theme.types.js +27 -0
  438. package/dist/services/core/stores/theme.types.js.map +1 -0
  439. package/dist/services/core/taxes/index.d.ts +7 -0
  440. package/dist/services/core/taxes/index.d.ts.map +1 -0
  441. package/dist/services/core/taxes/index.js +7 -0
  442. package/dist/services/core/taxes/index.js.map +1 -0
  443. package/dist/services/core/taxes/jurisdictions.client.d.ts +61 -0
  444. package/dist/services/core/taxes/jurisdictions.client.d.ts.map +1 -0
  445. package/dist/services/core/taxes/jurisdictions.client.js +93 -0
  446. package/dist/services/core/taxes/jurisdictions.client.js.map +1 -0
  447. package/dist/services/core/taxes/providers.client.d.ts +111 -0
  448. package/dist/services/core/taxes/providers.client.d.ts.map +1 -0
  449. package/dist/services/core/taxes/providers.client.js +188 -0
  450. package/dist/services/core/taxes/providers.client.js.map +1 -0
  451. package/dist/services/core/taxes/rates.client.d.ts +63 -0
  452. package/dist/services/core/taxes/rates.client.d.ts.map +1 -0
  453. package/dist/services/core/taxes/rates.client.js +97 -0
  454. package/dist/services/core/taxes/rates.client.js.map +1 -0
  455. package/dist/services/core/taxes/store-providers.client.d.ts +48 -0
  456. package/dist/services/core/taxes/store-providers.client.d.ts.map +1 -0
  457. package/dist/services/core/taxes/store-providers.client.js +59 -0
  458. package/dist/services/core/taxes/store-providers.client.js.map +1 -0
  459. package/dist/services/core/taxes/taxes.client.d.ts +81 -0
  460. package/dist/services/core/taxes/taxes.client.d.ts.map +1 -0
  461. package/dist/services/core/taxes/taxes.client.js +117 -0
  462. package/dist/services/core/taxes/taxes.client.js.map +1 -0
  463. package/dist/services/core/taxes/types.d.ts +406 -0
  464. package/dist/services/core/taxes/types.d.ts.map +1 -0
  465. package/dist/services/core/taxes/types.js +3 -0
  466. package/dist/services/core/taxes/types.js.map +1 -0
  467. package/dist/services/core/variants.client.d.ts +415 -0
  468. package/dist/services/core/variants.client.d.ts.map +1 -0
  469. package/dist/services/core/variants.client.js +289 -0
  470. package/dist/services/core/variants.client.js.map +1 -0
  471. package/dist/services/core/wishlists.client.d.ts +151 -0
  472. package/dist/services/core/wishlists.client.d.ts.map +1 -0
  473. package/dist/services/core/wishlists.client.js +125 -0
  474. package/dist/services/core/wishlists.client.js.map +1 -0
  475. package/dist/storefront/index.d.ts +152 -0
  476. package/dist/storefront/index.d.ts.map +1 -0
  477. package/dist/storefront/index.js +189 -0
  478. package/dist/storefront/index.js.map +1 -0
  479. package/package.json +66 -0
@@ -0,0 +1,112 @@
1
+ import { AuthenticationError } from '../errors/index.js';
2
+ /**
3
+ * Lazy-loading wrapper for InteractiveAuthenticator.
4
+ *
5
+ * Uses dynamic import() to load the real InteractiveAuthenticator only when needed,
6
+ * avoiding static imports of Node.js built-ins (readline) that break browser builds.
7
+ *
8
+ * In browser environments, this authenticator:
9
+ * - Returns false from canAuthenticate()
10
+ * - Throws AuthenticationError if getAuthHeaders() is called
11
+ */
12
+ export class LazyInteractiveAuthenticator {
13
+ name = 'interactive';
14
+ priority = 3;
15
+ realAuthenticator = null;
16
+ loadPromise = null;
17
+ loadError = null;
18
+ /**
19
+ * Check if this authenticator can authenticate.
20
+ * Returns false in browser environments or non-TTY terminals.
21
+ */
22
+ canAuthenticate() {
23
+ if (!this.isNodeEnvironment() || !this.isTTY()) {
24
+ return false;
25
+ }
26
+ if (this.realAuthenticator) {
27
+ return this.realAuthenticator.canAuthenticate();
28
+ }
29
+ if (this.loadError) {
30
+ return false;
31
+ }
32
+ // Optimistic - will verify when actually authenticating
33
+ return true;
34
+ }
35
+ /**
36
+ * Check if current credentials/tokens are expired.
37
+ * Returns true until real authenticator is loaded.
38
+ */
39
+ isExpired() {
40
+ return this.realAuthenticator?.isExpired() ?? true;
41
+ }
42
+ /**
43
+ * Get authorization headers. Triggers lazy load of InteractiveAuthenticator.
44
+ */
45
+ async getAuthHeaders() {
46
+ if (!this.isNodeEnvironment()) {
47
+ throw new AuthenticationError('Interactive authentication is not available in browser environments. ' +
48
+ 'Please provide an API key or use Cognito credentials instead.');
49
+ }
50
+ if (!this.isTTY()) {
51
+ throw new AuthenticationError('Interactive authentication requires a TTY environment. ' +
52
+ 'Please provide credentials via config or environment variables.');
53
+ }
54
+ const authenticator = await this.loadAuthenticator();
55
+ return authenticator.getAuthHeaders();
56
+ }
57
+ /**
58
+ * Refresh credentials if possible.
59
+ */
60
+ async refresh() {
61
+ if (this.realAuthenticator) {
62
+ await this.realAuthenticator.refresh();
63
+ }
64
+ }
65
+ /**
66
+ * Lazily load the real InteractiveAuthenticator.
67
+ * Caches the result to avoid repeated imports.
68
+ */
69
+ async loadAuthenticator() {
70
+ if (this.realAuthenticator) {
71
+ return this.realAuthenticator;
72
+ }
73
+ if (this.loadError) {
74
+ throw this.loadError;
75
+ }
76
+ if (this.loadPromise) {
77
+ return this.loadPromise;
78
+ }
79
+ this.loadPromise = this.doLoad();
80
+ try {
81
+ this.realAuthenticator = await this.loadPromise;
82
+ return this.realAuthenticator;
83
+ }
84
+ catch (error) {
85
+ this.loadError = error instanceof Error ? error : new Error(String(error));
86
+ throw this.loadError;
87
+ }
88
+ finally {
89
+ this.loadPromise = null;
90
+ }
91
+ }
92
+ async doLoad() {
93
+ const { InteractiveAuthenticator } = await import('./interactive.authenticator.js');
94
+ return new InteractiveAuthenticator();
95
+ }
96
+ /**
97
+ * Check if running in a Node.js environment.
98
+ */
99
+ isNodeEnvironment() {
100
+ return (typeof process !== 'undefined' && process.versions != null && process.versions.node != null);
101
+ }
102
+ /**
103
+ * Check if running in a TTY environment.
104
+ */
105
+ isTTY() {
106
+ if (!this.isNodeEnvironment()) {
107
+ return false;
108
+ }
109
+ return !!(process.stdout?.isTTY && process.stdin?.isTTY);
110
+ }
111
+ }
112
+ //# sourceMappingURL=lazy-interactive.authenticator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lazy-interactive.authenticator.js","sourceRoot":"","sources":["../../../../../src/core/auth/lazy-interactive.authenticator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { Authenticator } from './authenticator.js';
2
+ /**
3
+ * Token-based authenticator for browser environments.
4
+ * Uses a callback function to get a fresh access token before each request.
5
+ * This is ideal for frontend apps that manage their own auth session (e.g., Cognito in browser).
6
+ *
7
+ * When no token is available (user not logged in), returns empty headers.
8
+ * The AuthChain will then fall through to try the next authenticator.
9
+ */
10
+ export declare class TokenAuthenticator implements Authenticator {
11
+ private readonly getToken;
12
+ readonly name = "token";
13
+ readonly priority = 0;
14
+ constructor(getToken: () => Promise<string | null>);
15
+ canAuthenticate(): boolean;
16
+ getAuthHeaders(): Promise<Record<string, string>>;
17
+ isExpired(): boolean;
18
+ refresh(): Promise<void>;
19
+ }
20
+ //# sourceMappingURL=token.authenticator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.authenticator.d.ts","sourceRoot":"","sources":["../../../../../src/core/auth/token.authenticator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;;;GAOG;AACH,qBAAa,kBAAmB,YAAW,aAAa;IAI1C,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAHrC,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,QAAQ,KAAK;gBAEO,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAEnE,eAAe,IAAI,OAAO;IAMpB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAevD,SAAS,IAAI,OAAO;IAMd,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAI/B"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Token-based authenticator for browser environments.
3
+ * Uses a callback function to get a fresh access token before each request.
4
+ * This is ideal for frontend apps that manage their own auth session (e.g., Cognito in browser).
5
+ *
6
+ * When no token is available (user not logged in), returns empty headers.
7
+ * The AuthChain will then fall through to try the next authenticator.
8
+ */
9
+ export class TokenAuthenticator {
10
+ getToken;
11
+ name = 'token';
12
+ priority = 0; // Highest priority - if token getter is provided, use it first
13
+ constructor(getToken) {
14
+ this.getToken = getToken;
15
+ }
16
+ canAuthenticate() {
17
+ // We can authenticate as long as we have a token getter function.
18
+ // Actual token availability is checked in getAuthHeaders().
19
+ return !!this.getToken;
20
+ }
21
+ async getAuthHeaders() {
22
+ const token = await this.getToken();
23
+ if (!token) {
24
+ // Return empty headers - AuthChain will fall through to next authenticator.
25
+ // This allows graceful degradation when user is not logged in.
26
+ if (process.env.NODE_ENV === 'development') {
27
+ console.warn('[TokenAuthenticator] No access token available. User may not be logged in.');
28
+ }
29
+ return {};
30
+ }
31
+ return {
32
+ Authorization: `Bearer ${token}`,
33
+ };
34
+ }
35
+ isExpired() {
36
+ // Token expiration is managed by the caller (e.g., Cognito session in browser)
37
+ // Always return false to avoid unnecessary refresh attempts
38
+ return false;
39
+ }
40
+ async refresh() {
41
+ // No-op: token refresh is handled by the external auth system
42
+ // The getToken callback will return a fresh token when called
43
+ }
44
+ }
45
+ //# sourceMappingURL=token.authenticator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.authenticator.js","sourceRoot":"","sources":["../../../../../src/core/auth/token.authenticator.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,OAAO,kBAAkB;IAIA;IAHpB,IAAI,GAAG,OAAO,CAAC;IACf,QAAQ,GAAG,CAAC,CAAC,CAAC,+DAA+D;IAEtF,YAA6B,QAAsC;QAAtC,aAAQ,GAAR,QAAQ,CAA8B;IAAG,CAAC;IAEvE,eAAe;QACb,kEAAkE;QAClE,4DAA4D;QAC5D,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,4EAA4E;YAC5E,+DAA+D;YAC/D,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;gBAC3C,OAAO,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO;YACL,aAAa,EAAE,UAAU,KAAK,EAAE;SACjC,CAAC;IACJ,CAAC;IAED,SAAS;QACP,+EAA+E;QAC/E,4DAA4D;QAC5D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,OAAO;QACX,8DAA8D;QAC9D,8DAA8D;IAChE,CAAC;CACF"}
@@ -0,0 +1,72 @@
1
+ import type { AxiosRequestConfig } from 'axios';
2
+ import type { ZiftrError } from './errors/index.js';
3
+ import type { RetryOptions } from './retry.js';
4
+ export type ZiftrEnvironment = 'local' | 'dev' | 'staging' | 'production';
5
+ /**
6
+ * Configuration options for the Ziftr SDK
7
+ */
8
+ export interface ZiftrSDKConfig {
9
+ apiKey?: string;
10
+ email?: string;
11
+ password?: string;
12
+ /**
13
+ * Token getter function for browser-based auth.
14
+ * Called before each request to get a fresh access token.
15
+ * Use this when the SDK is used in a browser with an existing auth session.
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const sdk = new ZiftrSDK({
20
+ * getAccessToken: () => authContext.getToken(),
21
+ * });
22
+ * ```
23
+ */
24
+ getAccessToken?: () => Promise<string | null>;
25
+ tenantId?: string;
26
+ storeId?: string;
27
+ environment?: ZiftrEnvironment;
28
+ coreApiUrl?: string;
29
+ rbacApiUrl?: string;
30
+ paymentsApiUrl?: string;
31
+ workflowsApiUrl?: string;
32
+ notificationsApiUrl?: string;
33
+ aiApiUrl?: string;
34
+ timeout?: number;
35
+ debug?: boolean;
36
+ interactive?: boolean;
37
+ retry?: RetryOptions;
38
+ onRequest?: (config: AxiosRequestConfig) => AxiosRequestConfig | Promise<AxiosRequestConfig>;
39
+ onResponse?: <T>(response: T) => T | Promise<T>;
40
+ onError?: (error: ZiftrError) => void | Promise<void>;
41
+ }
42
+ /**
43
+ * Service endpoint URLs
44
+ */
45
+ export interface ServiceEndpoints {
46
+ coreApi: string;
47
+ rbacApi: string;
48
+ paymentsApi: string;
49
+ workflowsApi: string;
50
+ notificationsApi: string;
51
+ aiApi: string;
52
+ }
53
+ export declare const ENVIRONMENT_ENDPOINTS: Record<ZiftrEnvironment, ServiceEndpoints>;
54
+ /**
55
+ * Cognito configuration per environment
56
+ */
57
+ export interface CognitoConfig {
58
+ userPoolId: string;
59
+ clientId: string;
60
+ region: string;
61
+ }
62
+ /**
63
+ * Default SDK configuration values
64
+ */
65
+ export declare const DEFAULT_CONFIG: {
66
+ readonly timeout: 30000;
67
+ readonly debug: false;
68
+ readonly interactive: false;
69
+ };
70
+ export declare function detectEnvironment(): ZiftrEnvironment;
71
+ export declare const COGNITO_CONFIG: CognitoConfig;
72
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/core/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,GAAG,YAAY,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,cAAc;IAE7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAG9C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAG/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,YAAY,CAAC;IAGrB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC7F,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAkFD,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,gBAAgB,EAAE,gBAAgB,CAK5E,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAqBD;;GAEG;AACH,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AAQX,wBAAgB,iBAAiB,IAAI,gBAAgB,CAKpD;AAED,eAAO,MAAM,cAAc,EAAE,aAAgC,CAAC"}
@@ -0,0 +1,120 @@
1
+ /**
2
+ * Static map of NEXT_PUBLIC_ env var references.
3
+ * Next.js replaces process.env.NEXT_PUBLIC_* at compile time using static
4
+ * string matching. Dynamic lookups like process.env[`NEXT_PUBLIC_${name}`]
5
+ * are never matched. Every variable must appear as a literal property access.
6
+ */
7
+ function getNextPublicEnv(name) {
8
+ if (typeof process === 'undefined' || !process.env)
9
+ return undefined;
10
+ switch (name) {
11
+ case 'ZIFTR_CORE_API_URL':
12
+ return process.env.NEXT_PUBLIC_ZIFTR_CORE_API_URL;
13
+ case 'ZIFTR_RBAC_API_URL':
14
+ return process.env.NEXT_PUBLIC_ZIFTR_RBAC_API_URL;
15
+ case 'ZIFTR_PAYMENTS_API_URL':
16
+ return process.env.NEXT_PUBLIC_ZIFTR_PAYMENTS_API_URL;
17
+ case 'ZIFTR_WORKFLOWS_API_URL':
18
+ return process.env.NEXT_PUBLIC_ZIFTR_WORKFLOWS_API_URL;
19
+ case 'ZIFTR_NOTIFICATIONS_API_URL':
20
+ return process.env.NEXT_PUBLIC_ZIFTR_NOTIFICATIONS_API_URL;
21
+ case 'ZIFTR_AI_API_URL':
22
+ return process.env.NEXT_PUBLIC_ZIFTR_AI_API_URL;
23
+ case 'ZIFTR_COGNITO_USER_POOL_ID':
24
+ return process.env.NEXT_PUBLIC_ZIFTR_COGNITO_USER_POOL_ID;
25
+ case 'ZIFTR_COGNITO_CLIENT_ID':
26
+ return process.env.NEXT_PUBLIC_ZIFTR_COGNITO_CLIENT_ID;
27
+ case 'ZIFTR_COGNITO_REGION':
28
+ return process.env.NEXT_PUBLIC_ZIFTR_COGNITO_REGION;
29
+ case 'ZIFTR_ENV':
30
+ return process.env.NEXT_PUBLIC_ZIFTR_ENV;
31
+ default:
32
+ return undefined;
33
+ }
34
+ }
35
+ function getEnv(name) {
36
+ if (typeof process !== 'undefined' && process.env) {
37
+ return process.env[name] ?? getNextPublicEnv(name);
38
+ }
39
+ return undefined;
40
+ }
41
+ function gatewayEndpoints(baseUrl) {
42
+ // Service clients include /v1/ and the service prefix in their paths
43
+ // (e.g., /v1/rbac/roles, /v1/payments/intents), so baseUrl should NOT include it
44
+ return {
45
+ coreApi: baseUrl,
46
+ rbacApi: baseUrl,
47
+ paymentsApi: baseUrl,
48
+ workflowsApi: baseUrl,
49
+ notificationsApi: baseUrl,
50
+ aiApi: baseUrl,
51
+ };
52
+ }
53
+ // Canonical Cloudflare edge hosts per environment (see api-routing-standard.md).
54
+ // Each host is the bare gateway origin with NO /v1 -- clients append /v1/<service>.
55
+ const CANONICAL_HOSTS = {
56
+ local: 'http://localhost:3000',
57
+ dev: 'https://api-dev.ziftr.ai',
58
+ staging: 'https://api-staging.ziftr.ai',
59
+ production: 'https://api.ziftr.com',
60
+ };
61
+ // Per-service precedence: ZIFTR_<SERVICE>_API_URL > ZIFTR_CORE_API_URL > canonical host.
62
+ // Locally, non-core services fall back to localhost:3000 and expect a per-service override
63
+ // (e.g. ZIFTR_RBAC_API_URL=http://localhost:3001) for direct-to-service access.
64
+ function resolveEndpoints(env) {
65
+ const base = getEnv('ZIFTR_CORE_API_URL') ?? CANONICAL_HOSTS[env];
66
+ return {
67
+ ...gatewayEndpoints(base),
68
+ rbacApi: getEnv('ZIFTR_RBAC_API_URL') ?? base,
69
+ paymentsApi: getEnv('ZIFTR_PAYMENTS_API_URL') ?? base,
70
+ workflowsApi: getEnv('ZIFTR_WORKFLOWS_API_URL') ?? base,
71
+ notificationsApi: getEnv('ZIFTR_NOTIFICATIONS_API_URL') ?? base,
72
+ aiApi: getEnv('ZIFTR_AI_API_URL') ?? base,
73
+ };
74
+ }
75
+ // Each environment maps to a canonical gateway host; env vars override per service.
76
+ export const ENVIRONMENT_ENDPOINTS = {
77
+ local: resolveEndpoints('local'),
78
+ dev: resolveEndpoints('dev'),
79
+ staging: resolveEndpoints('staging'),
80
+ production: resolveEndpoints('production'),
81
+ };
82
+ const PROD_COGNITO = {
83
+ userPoolId: 'us-east-2_PLACEHOLDER',
84
+ clientId: 'PLACEHOLDER',
85
+ region: 'us-east-2',
86
+ };
87
+ function resolveCognito() {
88
+ const userPoolId = getEnv('ZIFTR_COGNITO_USER_POOL_ID');
89
+ const clientId = getEnv('ZIFTR_COGNITO_CLIENT_ID');
90
+ if (userPoolId && clientId) {
91
+ return {
92
+ userPoolId,
93
+ clientId,
94
+ region: getEnv('ZIFTR_COGNITO_REGION') ?? 'us-east-2',
95
+ };
96
+ }
97
+ return PROD_COGNITO;
98
+ }
99
+ /**
100
+ * Default SDK configuration values
101
+ */
102
+ export const DEFAULT_CONFIG = {
103
+ timeout: 30000,
104
+ debug: false,
105
+ interactive: false,
106
+ };
107
+ const VALID_ENVIRONMENTS = ['local', 'dev', 'staging', 'production'];
108
+ function isZiftrEnvironment(env) {
109
+ return VALID_ENVIRONMENTS.some((validEnvironment) => validEnvironment === env);
110
+ }
111
+ export function detectEnvironment() {
112
+ const env = getEnv('ZIFTR_ENV');
113
+ if (env && isZiftrEnvironment(env))
114
+ return env;
115
+ if (typeof process !== 'undefined' && process.env?.NODE_ENV === 'development')
116
+ return 'local';
117
+ return 'production';
118
+ }
119
+ export const COGNITO_CONFIG = resolveCognito();
120
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/core/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Base error class for all Ziftr SDK errors.
3
+ * Provides consistent error structure with code, statusCode, and JSON serialization.
4
+ */
5
+ export declare abstract class ZiftrError extends Error {
6
+ abstract readonly code: string;
7
+ abstract readonly statusCode: number;
8
+ constructor(message: string);
9
+ toJSON(): Record<string, unknown>;
10
+ }
11
+ /**
12
+ * Thrown when authentication fails (401).
13
+ * Examples: Invalid API key, expired token, missing credentials.
14
+ */
15
+ export declare class AuthenticationError extends ZiftrError {
16
+ readonly code = "AUTHENTICATION_ERROR";
17
+ readonly statusCode = 401;
18
+ }
19
+ /**
20
+ * Thrown when authorization fails (403).
21
+ * Examples: Insufficient permissions, wrong tenant context.
22
+ */
23
+ export declare class AuthorizationError extends ZiftrError {
24
+ readonly code = "AUTHORIZATION_ERROR";
25
+ readonly statusCode = 403;
26
+ }
27
+ /**
28
+ * Field-level validation error detail
29
+ */
30
+ export interface FieldError {
31
+ field: string;
32
+ message: string;
33
+ code?: string;
34
+ }
35
+ /**
36
+ * Thrown when request validation fails (400).
37
+ * Includes field-level errors for form handling.
38
+ */
39
+ export declare class ValidationError extends ZiftrError {
40
+ readonly code = "VALIDATION_ERROR";
41
+ readonly statusCode = 400;
42
+ readonly errors: FieldError[];
43
+ constructor(message: string, errors?: FieldError[]);
44
+ toJSON(): Record<string, unknown>;
45
+ }
46
+ /**
47
+ * Thrown when a resource is not found (404).
48
+ */
49
+ export declare class NotFoundError extends ZiftrError {
50
+ readonly code = "NOT_FOUND";
51
+ readonly statusCode = 404;
52
+ }
53
+ /**
54
+ * Thrown when a request conflicts with current resource state (409).
55
+ * Examples: stale navigation revision (If-Match / expectedRevision mismatch).
56
+ */
57
+ export declare class ConflictError extends ZiftrError {
58
+ readonly code = "CONFLICT";
59
+ readonly statusCode = 409;
60
+ }
61
+ /**
62
+ * Thrown when a conditional GET matches the current representation (304).
63
+ * Examples: public getNavigation with a matching If-None-Match ETag.
64
+ * This is a cache hit, not a failure -- catch it instead of treating as ApiError.
65
+ */
66
+ export declare class NotModifiedError extends ZiftrError {
67
+ readonly code = "NOT_MODIFIED";
68
+ readonly statusCode = 304;
69
+ }
70
+ /**
71
+ * Thrown when rate limit is exceeded (429).
72
+ * Includes retryAfter in seconds.
73
+ */
74
+ export declare class RateLimitError extends ZiftrError {
75
+ readonly code = "RATE_LIMIT_EXCEEDED";
76
+ readonly statusCode = 429;
77
+ readonly retryAfter: number;
78
+ constructor(message: string, retryAfter: number);
79
+ toJSON(): Record<string, unknown>;
80
+ }
81
+ /**
82
+ * Thrown when the SDK is constructed with invalid configuration
83
+ * (e.g. a secret key passed to a browser entry point). Client-side only;
84
+ * statusCode 0 because no request was made.
85
+ */
86
+ export declare class ConfigurationError extends ZiftrError {
87
+ readonly code = "CONFIGURATION_ERROR";
88
+ readonly statusCode = 0;
89
+ }
90
+ /**
91
+ * Generic API error for unhandled status codes.
92
+ * Use when no specific error type matches.
93
+ */
94
+ export declare class ApiError extends ZiftrError {
95
+ readonly code: string;
96
+ readonly statusCode: number;
97
+ readonly details?: unknown;
98
+ constructor(message: string, statusCode: number, code: string, details?: unknown);
99
+ toJSON(): Record<string, unknown>;
100
+ }
101
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/errors/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,8BAAsB,UAAW,SAAQ,KAAK;IAC5C,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEzB,OAAO,EAAE,MAAM;IAM3B,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAQlC;AAED;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,UAAU;IACjD,QAAQ,CAAC,IAAI,0BAA0B;IACvC,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;IAChD,QAAQ,CAAC,IAAI,yBAAyB;IACtC,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,UAAU,OAAO;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC;gBAElB,OAAO,EAAE,MAAM,EAAE,MAAM,GAAE,UAAU,EAAO;IAK7C,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAG3C;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,QAAQ,CAAC,IAAI,eAAe;IAC5B,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED;;;GAGG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,QAAQ,CAAC,IAAI,cAAc;IAC3B,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,UAAU;IAC9C,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED;;;GAGG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C,QAAQ,CAAC,IAAI,yBAAyB;IACtC,QAAQ,CAAC,UAAU,OAAO;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEhB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAKtC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAG3C;AAED;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;IAChD,QAAQ,CAAC,IAAI,yBAAyB;IACtC,QAAQ,CAAC,UAAU,KAAK;CACzB;AAED;;;GAGG;AACH,qBAAa,QAAS,SAAQ,UAAU;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;gBAEf,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;IAOvE,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAG3C"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Base error class for all Ziftr SDK errors.
3
+ * Provides consistent error structure with code, statusCode, and JSON serialization.
4
+ */
5
+ export class ZiftrError extends Error {
6
+ constructor(message) {
7
+ super(message);
8
+ this.name = this.constructor.name;
9
+ Error.captureStackTrace?.(this, this.constructor);
10
+ }
11
+ toJSON() {
12
+ return {
13
+ name: this.name,
14
+ code: this.code,
15
+ statusCode: this.statusCode,
16
+ message: this.message,
17
+ };
18
+ }
19
+ }
20
+ /**
21
+ * Thrown when authentication fails (401).
22
+ * Examples: Invalid API key, expired token, missing credentials.
23
+ */
24
+ export class AuthenticationError extends ZiftrError {
25
+ code = 'AUTHENTICATION_ERROR';
26
+ statusCode = 401;
27
+ }
28
+ /**
29
+ * Thrown when authorization fails (403).
30
+ * Examples: Insufficient permissions, wrong tenant context.
31
+ */
32
+ export class AuthorizationError extends ZiftrError {
33
+ code = 'AUTHORIZATION_ERROR';
34
+ statusCode = 403;
35
+ }
36
+ /**
37
+ * Thrown when request validation fails (400).
38
+ * Includes field-level errors for form handling.
39
+ */
40
+ export class ValidationError extends ZiftrError {
41
+ code = 'VALIDATION_ERROR';
42
+ statusCode = 400;
43
+ errors;
44
+ constructor(message, errors = []) {
45
+ super(message);
46
+ this.errors = errors;
47
+ }
48
+ toJSON() {
49
+ return { ...super.toJSON(), errors: this.errors };
50
+ }
51
+ }
52
+ /**
53
+ * Thrown when a resource is not found (404).
54
+ */
55
+ export class NotFoundError extends ZiftrError {
56
+ code = 'NOT_FOUND';
57
+ statusCode = 404;
58
+ }
59
+ /**
60
+ * Thrown when a request conflicts with current resource state (409).
61
+ * Examples: stale navigation revision (If-Match / expectedRevision mismatch).
62
+ */
63
+ export class ConflictError extends ZiftrError {
64
+ code = 'CONFLICT';
65
+ statusCode = 409;
66
+ }
67
+ /**
68
+ * Thrown when a conditional GET matches the current representation (304).
69
+ * Examples: public getNavigation with a matching If-None-Match ETag.
70
+ * This is a cache hit, not a failure -- catch it instead of treating as ApiError.
71
+ */
72
+ export class NotModifiedError extends ZiftrError {
73
+ code = 'NOT_MODIFIED';
74
+ statusCode = 304;
75
+ }
76
+ /**
77
+ * Thrown when rate limit is exceeded (429).
78
+ * Includes retryAfter in seconds.
79
+ */
80
+ export class RateLimitError extends ZiftrError {
81
+ code = 'RATE_LIMIT_EXCEEDED';
82
+ statusCode = 429;
83
+ retryAfter;
84
+ constructor(message, retryAfter) {
85
+ super(message);
86
+ this.retryAfter = retryAfter;
87
+ }
88
+ toJSON() {
89
+ return { ...super.toJSON(), retryAfter: this.retryAfter };
90
+ }
91
+ }
92
+ /**
93
+ * Thrown when the SDK is constructed with invalid configuration
94
+ * (e.g. a secret key passed to a browser entry point). Client-side only;
95
+ * statusCode 0 because no request was made.
96
+ */
97
+ export class ConfigurationError extends ZiftrError {
98
+ code = 'CONFIGURATION_ERROR';
99
+ statusCode = 0;
100
+ }
101
+ /**
102
+ * Generic API error for unhandled status codes.
103
+ * Use when no specific error type matches.
104
+ */
105
+ export class ApiError extends ZiftrError {
106
+ code;
107
+ statusCode;
108
+ details;
109
+ constructor(message, statusCode, code, details) {
110
+ super(message);
111
+ this.statusCode = statusCode;
112
+ this.code = code;
113
+ this.details = details;
114
+ }
115
+ toJSON() {
116
+ return { ...super.toJSON(), details: this.details };
117
+ }
118
+ }
119
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/core/errors/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { DomainEventName } from './event-names.js';
2
+ /**
3
+ * Consumer-facing event envelope for downstream services (analytics, audit, webhooks).
4
+ *
5
+ * Derived from the internal BaseOTELEvent wire format but flattened for consumer ergonomics:
6
+ * - `tenantId` flattened from `context.attributes['tenant.id']`
7
+ * - `traceId` flattened from `context.trace.traceId`
8
+ * - Internal OTEL fields (spanId, traceFlags, baggage, resource, semantic attributes) omitted
9
+ *
10
+ * @typeParam TPayload - The domain-specific event payload type. Defaults to a generic record.
11
+ */
12
+ export interface BaseEventEnvelope<TPayload = Record<string, unknown>> {
13
+ /** Unique event identifier (UUID v4) */
14
+ eventId: string;
15
+ /** Canonical event name in dot notation (e.g., 'order.created') */
16
+ eventType: DomainEventName;
17
+ /** Event schema version (e.g., '1.0') */
18
+ eventVersion: string;
19
+ /** ISO 8601 timestamp of when the event was emitted */
20
+ timestamp: string;
21
+ /** Service that emitted the event (e.g., 'ziftr.core-api') */
22
+ source: string;
23
+ /** Tenant identifier -- always present for multi-tenant isolation */
24
+ tenantId: string;
25
+ /** Store identifier -- present when the event is scoped to a specific store */
26
+ storeId?: string;
27
+ /** User identifier -- present when the event was triggered by a user action */
28
+ userId?: string;
29
+ /** W3C trace ID for distributed tracing correlation */
30
+ traceId?: string;
31
+ /** Domain-specific event data */
32
+ payload: TPayload;
33
+ }
34
+ //# sourceMappingURL=event-envelope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-envelope.d.ts","sourceRoot":"","sources":["../../../../../src/core/events/event-envelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,SAAS,EAAE,eAAe,CAAC;IAC3B,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iCAAiC;IACjC,OAAO,EAAE,QAAQ,CAAC;CACnB"}