@harkenapp/sdk-react-native 0.0.1-alpha.1 → 0.0.1-alpha.2

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 (278) hide show
  1. package/README.md +44 -7
  2. package/app.plugin.cjs +12 -17
  3. package/dist/__mocks__/async-storage.d.ts +16 -0
  4. package/dist/__mocks__/async-storage.d.ts.map +1 -0
  5. package/dist/__mocks__/async-storage.js +39 -0
  6. package/dist/__mocks__/async-storage.js.map +1 -0
  7. package/dist/__mocks__/expo-document-picker.d.ts +26 -0
  8. package/dist/__mocks__/expo-document-picker.d.ts.map +1 -0
  9. package/dist/__mocks__/expo-document-picker.js +25 -0
  10. package/dist/__mocks__/expo-document-picker.js.map +1 -0
  11. package/dist/__mocks__/expo-file-system.d.ts +42 -0
  12. package/dist/__mocks__/expo-file-system.d.ts.map +1 -0
  13. package/dist/__mocks__/expo-file-system.js +37 -0
  14. package/dist/__mocks__/expo-file-system.js.map +1 -0
  15. package/dist/__mocks__/expo-image-picker.d.ts +30 -0
  16. package/dist/__mocks__/expo-image-picker.d.ts.map +1 -0
  17. package/dist/__mocks__/expo-image-picker.js +30 -0
  18. package/dist/__mocks__/expo-image-picker.js.map +1 -0
  19. package/dist/__mocks__/expo-secure-store.d.ts +15 -0
  20. package/dist/__mocks__/expo-secure-store.d.ts.map +1 -0
  21. package/dist/__mocks__/expo-secure-store.js +30 -0
  22. package/dist/__mocks__/expo-secure-store.js.map +1 -0
  23. package/dist/__mocks__/react-native.d.ts +73 -0
  24. package/dist/__mocks__/react-native.d.ts.map +1 -0
  25. package/dist/__mocks__/react-native.js +45 -0
  26. package/dist/__mocks__/react-native.js.map +1 -0
  27. package/dist/api/client.d.ts +8 -8
  28. package/dist/api/client.d.ts.map +1 -1
  29. package/dist/api/client.js +17 -19
  30. package/dist/api/client.js.map +1 -1
  31. package/dist/api/client.test.d.ts +2 -0
  32. package/dist/api/client.test.d.ts.map +1 -0
  33. package/dist/api/client.test.js +417 -0
  34. package/dist/api/client.test.js.map +1 -0
  35. package/dist/api/errors.d.ts +3 -3
  36. package/dist/api/errors.d.ts.map +1 -1
  37. package/dist/api/errors.js +3 -3
  38. package/dist/api/errors.js.map +1 -1
  39. package/dist/api/errors.test.d.ts +2 -0
  40. package/dist/api/errors.test.d.ts.map +1 -0
  41. package/dist/api/errors.test.js +155 -0
  42. package/dist/api/errors.test.js.map +1 -0
  43. package/dist/api/index.d.ts +6 -6
  44. package/dist/api/index.d.ts.map +1 -1
  45. package/dist/api/index.js.map +1 -1
  46. package/dist/api/retry.d.ts +1 -1
  47. package/dist/api/retry.d.ts.map +1 -1
  48. package/dist/api/retry.js.map +1 -1
  49. package/dist/api/retry.test.d.ts +2 -0
  50. package/dist/api/retry.test.d.ts.map +1 -0
  51. package/dist/api/retry.test.js +193 -0
  52. package/dist/api/retry.test.js.map +1 -0
  53. package/dist/attachments/FeedbackSheet.d.ts +36 -13
  54. package/dist/attachments/FeedbackSheet.d.ts.map +1 -1
  55. package/dist/attachments/FeedbackSheet.js +50 -30
  56. package/dist/attachments/FeedbackSheet.js.map +1 -1
  57. package/dist/attachments/index.d.ts +2 -2
  58. package/dist/components/AttachmentGrid.d.ts +12 -4
  59. package/dist/components/AttachmentGrid.d.ts.map +1 -1
  60. package/dist/components/AttachmentGrid.js +44 -34
  61. package/dist/components/AttachmentGrid.js.map +1 -1
  62. package/dist/components/AttachmentPicker.d.ts +3 -3
  63. package/dist/components/AttachmentPicker.d.ts.map +1 -1
  64. package/dist/components/AttachmentPicker.js +34 -36
  65. package/dist/components/AttachmentPicker.js.map +1 -1
  66. package/dist/components/AttachmentPreview.d.ts +10 -4
  67. package/dist/components/AttachmentPreview.d.ts.map +1 -1
  68. package/dist/components/AttachmentPreview.js +48 -34
  69. package/dist/components/AttachmentPreview.js.map +1 -1
  70. package/dist/components/CategorySelector.d.ts +3 -3
  71. package/dist/components/CategorySelector.d.ts.map +1 -1
  72. package/dist/components/CategorySelector.js +21 -27
  73. package/dist/components/CategorySelector.js.map +1 -1
  74. package/dist/components/FeedbackForm.d.ts +3 -3
  75. package/dist/components/FeedbackForm.d.ts.map +1 -1
  76. package/dist/components/FeedbackForm.js +7 -8
  77. package/dist/components/FeedbackForm.js.map +1 -1
  78. package/dist/components/FeedbackSheet.d.ts +34 -11
  79. package/dist/components/FeedbackSheet.d.ts.map +1 -1
  80. package/dist/components/FeedbackSheet.js +46 -28
  81. package/dist/components/FeedbackSheet.js.map +1 -1
  82. package/dist/components/ThemedButton.d.ts +16 -5
  83. package/dist/components/ThemedButton.d.ts.map +1 -1
  84. package/dist/components/ThemedButton.js +38 -29
  85. package/dist/components/ThemedButton.js.map +1 -1
  86. package/dist/components/ThemedText.d.ts +3 -3
  87. package/dist/components/ThemedText.d.ts.map +1 -1
  88. package/dist/components/ThemedText.js +1 -1
  89. package/dist/components/ThemedText.js.map +1 -1
  90. package/dist/components/ThemedTextInput.d.ts +11 -2
  91. package/dist/components/ThemedTextInput.d.ts.map +1 -1
  92. package/dist/components/ThemedTextInput.js +19 -9
  93. package/dist/components/ThemedTextInput.js.map +1 -1
  94. package/dist/components/UploadStatusOverlay.d.ts +11 -3
  95. package/dist/components/UploadStatusOverlay.d.ts.map +1 -1
  96. package/dist/components/UploadStatusOverlay.js +59 -76
  97. package/dist/components/UploadStatusOverlay.js.map +1 -1
  98. package/dist/components/index.d.ts +18 -18
  99. package/dist/components/index.d.ts.map +1 -1
  100. package/dist/components/index.js.map +1 -1
  101. package/dist/context/HarkenContext.d.ts +20 -15
  102. package/dist/context/HarkenContext.d.ts.map +1 -1
  103. package/dist/context/HarkenContext.js +20 -17
  104. package/dist/context/HarkenContext.js.map +1 -1
  105. package/dist/context/index.d.ts +2 -2
  106. package/dist/domain/index.d.ts +2 -2
  107. package/dist/domain/index.d.ts.map +1 -1
  108. package/dist/domain/index.js.map +1 -1
  109. package/dist/hooks/index.d.ts +5 -5
  110. package/dist/hooks/useAnonymousId.js +1 -1
  111. package/dist/hooks/useAnonymousId.test.d.ts +2 -0
  112. package/dist/hooks/useAnonymousId.test.d.ts.map +1 -0
  113. package/dist/hooks/useAnonymousId.test.js +154 -0
  114. package/dist/hooks/useAnonymousId.test.js.map +1 -0
  115. package/dist/hooks/useAttachmentPicker.d.ts +3 -3
  116. package/dist/hooks/useAttachmentPicker.js +7 -7
  117. package/dist/hooks/useAttachmentStatus.d.ts +1 -1
  118. package/dist/hooks/useAttachmentStatus.d.ts.map +1 -1
  119. package/dist/hooks/useAttachmentStatus.js.map +1 -1
  120. package/dist/hooks/useAttachmentUpload.d.ts +2 -2
  121. package/dist/hooks/useAttachmentUpload.d.ts.map +1 -1
  122. package/dist/hooks/useAttachmentUpload.js +5 -5
  123. package/dist/hooks/useAttachmentUpload.js.map +1 -1
  124. package/dist/hooks/useAttachmentUpload.test.d.ts +2 -0
  125. package/dist/hooks/useAttachmentUpload.test.d.ts.map +1 -0
  126. package/dist/hooks/useAttachmentUpload.test.js +542 -0
  127. package/dist/hooks/useAttachmentUpload.test.js.map +1 -0
  128. package/dist/hooks/useFeedback.d.ts +4 -4
  129. package/dist/hooks/useFeedback.d.ts.map +1 -1
  130. package/dist/hooks/useFeedback.js +3 -5
  131. package/dist/hooks/useFeedback.js.map +1 -1
  132. package/dist/hooks/useFeedback.test.d.ts +2 -0
  133. package/dist/hooks/useFeedback.test.d.ts.map +1 -0
  134. package/dist/hooks/useFeedback.test.js +299 -0
  135. package/dist/hooks/useFeedback.test.js.map +1 -0
  136. package/dist/hooks/useHarkenContext.d.ts +1 -1
  137. package/dist/hooks/useHarkenContext.js +1 -1
  138. package/dist/hooks/useHarkenTheme.d.ts +27 -3
  139. package/dist/hooks/useHarkenTheme.d.ts.map +1 -1
  140. package/dist/hooks/useHarkenTheme.js +26 -2
  141. package/dist/hooks/useHarkenTheme.js.map +1 -1
  142. package/dist/index.d.ts +28 -28
  143. package/dist/index.d.ts.map +1 -1
  144. package/dist/index.js.map +1 -1
  145. package/dist/services/index.d.ts +3 -3
  146. package/dist/services/index.d.ts.map +1 -1
  147. package/dist/services/index.js.map +1 -1
  148. package/dist/services/uploadQueueService.d.ts +2 -2
  149. package/dist/services/uploadQueueService.d.ts.map +1 -1
  150. package/dist/services/uploadQueueService.js +16 -17
  151. package/dist/services/uploadQueueService.js.map +1 -1
  152. package/dist/services/uploadQueueService.test.d.ts +2 -0
  153. package/dist/services/uploadQueueService.test.d.ts.map +1 -0
  154. package/dist/services/uploadQueueService.test.js +426 -0
  155. package/dist/services/uploadQueueService.test.js.map +1 -0
  156. package/dist/services/uploadQueueStorage.d.ts +1 -1
  157. package/dist/services/uploadQueueStorage.d.ts.map +1 -1
  158. package/dist/services/uploadQueueStorage.js +4 -4
  159. package/dist/services/uploadQueueStorage.js.map +1 -1
  160. package/dist/services/uploadQueueStorage.test.d.ts +2 -0
  161. package/dist/services/uploadQueueStorage.test.d.ts.map +1 -0
  162. package/dist/services/uploadQueueStorage.test.js +200 -0
  163. package/dist/services/uploadQueueStorage.test.js.map +1 -0
  164. package/dist/storage/IdentityStore.d.ts +1 -1
  165. package/dist/storage/IdentityStore.d.ts.map +1 -1
  166. package/dist/storage/IdentityStore.js.map +1 -1
  167. package/dist/storage/IdentityStore.test.d.ts +2 -0
  168. package/dist/storage/IdentityStore.test.d.ts.map +1 -0
  169. package/dist/storage/IdentityStore.test.js +176 -0
  170. package/dist/storage/IdentityStore.test.js.map +1 -0
  171. package/dist/storage/SecureStoreAdapter.d.ts +1 -1
  172. package/dist/storage/SecureStoreAdapter.test.d.ts +2 -0
  173. package/dist/storage/SecureStoreAdapter.test.d.ts.map +1 -0
  174. package/dist/storage/SecureStoreAdapter.test.js +114 -0
  175. package/dist/storage/SecureStoreAdapter.test.js.map +1 -0
  176. package/dist/storage/defaultStorage.d.ts +1 -1
  177. package/dist/storage/defaultStorage.js +4 -4
  178. package/dist/storage/defaultStorage.test.d.ts +2 -0
  179. package/dist/storage/defaultStorage.test.d.ts.map +1 -0
  180. package/dist/storage/defaultStorage.test.js +159 -0
  181. package/dist/storage/defaultStorage.test.js.map +1 -0
  182. package/dist/storage/index.d.ts +5 -5
  183. package/dist/storage/types.js +1 -1
  184. package/dist/theme/defaults.d.ts +14 -3
  185. package/dist/theme/defaults.d.ts.map +1 -1
  186. package/dist/theme/defaults.js +58 -43
  187. package/dist/theme/defaults.js.map +1 -1
  188. package/dist/theme/index.d.ts +3 -2
  189. package/dist/theme/index.d.ts.map +1 -1
  190. package/dist/theme/index.js +4 -1
  191. package/dist/theme/index.js.map +1 -1
  192. package/dist/theme/resolver.d.ts +16 -0
  193. package/dist/theme/resolver.d.ts.map +1 -0
  194. package/dist/theme/resolver.js +375 -0
  195. package/dist/theme/resolver.js.map +1 -0
  196. package/dist/theme/resolver.test.d.ts +2 -0
  197. package/dist/theme/resolver.test.d.ts.map +1 -0
  198. package/dist/theme/resolver.test.js +344 -0
  199. package/dist/theme/resolver.test.js.map +1 -0
  200. package/dist/theme/types.d.ts +378 -5
  201. package/dist/theme/types.d.ts.map +1 -1
  202. package/dist/types/config.d.ts +4 -4
  203. package/dist/types/index.d.ts +2 -2
  204. package/dist/utils/index.d.ts +1 -1
  205. package/dist/utils/uuid.d.ts.map +1 -1
  206. package/dist/utils/uuid.js +4 -5
  207. package/dist/utils/uuid.js.map +1 -1
  208. package/dist/utils/uuid.test.d.ts +2 -0
  209. package/dist/utils/uuid.test.d.ts.map +1 -0
  210. package/dist/utils/uuid.test.js +78 -0
  211. package/dist/utils/uuid.test.js.map +1 -0
  212. package/package.json +21 -13
  213. package/src/@types/expo-file-system-legacy.d.ts +3 -3
  214. package/src/__mocks__/async-storage.ts +46 -0
  215. package/src/__mocks__/expo-document-picker.ts +41 -0
  216. package/src/__mocks__/expo-file-system.ts +62 -0
  217. package/src/__mocks__/expo-image-picker.ts +48 -0
  218. package/src/__mocks__/expo-secure-store.ts +29 -0
  219. package/src/__mocks__/react-native.ts +46 -0
  220. package/src/api/client.test.ts +515 -0
  221. package/src/api/client.ts +45 -64
  222. package/src/api/errors.test.ts +193 -0
  223. package/src/api/errors.ts +7 -11
  224. package/src/api/index.ts +6 -10
  225. package/src/api/retry.test.ts +251 -0
  226. package/src/api/retry.ts +3 -6
  227. package/src/attachments/FeedbackSheet.tsx +100 -80
  228. package/src/attachments/index.ts +2 -2
  229. package/src/components/AttachmentGrid.tsx +54 -45
  230. package/src/components/AttachmentPicker.tsx +43 -54
  231. package/src/components/AttachmentPreview.tsx +51 -47
  232. package/src/components/CategorySelector.tsx +29 -35
  233. package/src/components/FeedbackForm.tsx +23 -35
  234. package/src/components/FeedbackSheet.tsx +89 -68
  235. package/src/components/ThemedButton.tsx +49 -47
  236. package/src/components/ThemedText.tsx +7 -10
  237. package/src/components/ThemedTextInput.tsx +23 -13
  238. package/src/components/UploadStatusOverlay.tsx +66 -89
  239. package/src/components/index.ts +18 -21
  240. package/src/context/HarkenContext.tsx +29 -28
  241. package/src/context/index.ts +2 -2
  242. package/src/domain/index.ts +2 -5
  243. package/src/domain/upload-queue.ts +5 -5
  244. package/src/hooks/index.ts +5 -5
  245. package/src/hooks/useAnonymousId.test.ts +189 -0
  246. package/src/hooks/useAnonymousId.ts +3 -3
  247. package/src/hooks/useAttachmentPicker.ts +12 -12
  248. package/src/hooks/useAttachmentStatus.ts +12 -16
  249. package/src/hooks/useAttachmentUpload.test.ts +632 -0
  250. package/src/hooks/useAttachmentUpload.ts +45 -54
  251. package/src/hooks/useFeedback.test.ts +376 -0
  252. package/src/hooks/useFeedback.ts +12 -14
  253. package/src/hooks/useHarkenContext.ts +4 -4
  254. package/src/hooks/useHarkenTheme.ts +30 -6
  255. package/src/index.ts +28 -52
  256. package/src/services/index.ts +3 -9
  257. package/src/services/uploadQueueService.test.ts +489 -0
  258. package/src/services/uploadQueueService.ts +40 -56
  259. package/src/services/uploadQueueStorage.test.ts +243 -0
  260. package/src/services/uploadQueueStorage.ts +7 -9
  261. package/src/storage/IdentityStore.test.ts +173 -0
  262. package/src/storage/IdentityStore.ts +4 -5
  263. package/src/storage/SecureStoreAdapter.test.ts +147 -0
  264. package/src/storage/SecureStoreAdapter.ts +1 -1
  265. package/src/storage/defaultStorage.test.ts +159 -0
  266. package/src/storage/defaultStorage.ts +6 -6
  267. package/src/storage/index.ts +5 -5
  268. package/src/storage/types.ts +1 -1
  269. package/src/theme/defaults.ts +75 -46
  270. package/src/theme/index.ts +15 -2
  271. package/src/theme/resolver.test.ts +411 -0
  272. package/src/theme/resolver.ts +446 -0
  273. package/src/theme/types.ts +453 -15
  274. package/src/types/config.ts +4 -4
  275. package/src/types/index.ts +2 -2
  276. package/src/utils/index.ts +1 -1
  277. package/src/utils/uuid.test.ts +85 -0
  278. package/src/utils/uuid.ts +4 -7
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,KAAK,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;AACtE,KAAK,0BAA0B,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,4BAA4B,CAAC,CAAC;AAItF,KAAK,wBAAwB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,CAAC;AAClF,KAAK,yBAAyB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,2BAA2B,CAAC,CAAC;AACpF,KAAK,wBAAwB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,CAAC;AAClF,KAAK,wBAAwB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,CAAC;AAIlF,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAG2B;gBAEtC,MAAM,EAAE,kBAAkB;IAUtC;;OAEG;IACG,cAAc,CAClB,UAAU,EAAE,kBAAkB,GAC7B,OAAO,CAAC,0BAA0B,CAAC;IAUtC;;OAEG;IACG,sBAAsB,CAC1B,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,yBAAyB,CAAC;IAcrC;;OAEG;IACG,iBAAiB,CACrB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,wBAAwB,CAAC;IAcpC;;;OAGG;IACG,uBAAuB,CAC3B,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,wBAAwB,CAAC;IAUpC;;OAEG;IACG,mBAAmB,CACvB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,wBAAwB,CAAC;IAMpC;;OAEG;YACW,OAAO;IAiErB;;OAEG;YACW,kBAAkB;IAchC;;;OAGG;IACH,OAAO,CAAC,eAAe;CAqBxB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,YAAY,CAE3E"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,KAAK,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;AACtE,KAAK,0BAA0B,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,4BAA4B,CAAC,CAAC;AAItF,KAAK,wBAAwB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,CAAC;AAClF,KAAK,yBAAyB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,2BAA2B,CAAC,CAAC;AACpF,KAAK,wBAAwB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,CAAC;AAClF,KAAK,wBAAwB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,CAAC;AAIlF,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAG2B;gBAEtC,MAAM,EAAE,kBAAkB;IAUtC;;OAEG;IACG,cAAc,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAWzF;;OAEG;IACG,sBAAsB,CAC1B,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,yBAAyB,CAAC;IAWrC;;OAEG;IACG,iBAAiB,CACrB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,wBAAwB,CAAC;IAWpC;;;OAGG;IACG,uBAAuB,CAC3B,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,wBAAwB,CAAC;IAOpC;;OAEG;IACG,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAIlF;;OAEG;YACW,OAAO;IA4DrB;;OAEG;YACW,kBAAkB;IAchC;;;OAGG;IACH,OAAO,CAAC,eAAe;CAqBxB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,YAAY,CAE3E"}
@@ -4,7 +4,7 @@ exports.HarkenClient = void 0;
4
4
  exports.createHarkenClient = createHarkenClient;
5
5
  const errors_1 = require("./errors");
6
6
  const retry_1 = require("./retry");
7
- const DEFAULT_API_BASE_URL = 'https://api.harken.app';
7
+ const DEFAULT_API_BASE_URL = "https://api.harken.app";
8
8
  /**
9
9
  * Low-level API client for Harken.
10
10
  */
@@ -23,8 +23,8 @@ class HarkenClient {
23
23
  * Submit feedback to the API.
24
24
  */
25
25
  async submitFeedback(submission) {
26
- return (0, retry_1.withRetry)(() => this.request('/v1/feedback', {
27
- method: 'POST',
26
+ return (0, retry_1.withRetry)(() => this.request("/v1/feedback", {
27
+ method: "POST",
28
28
  body: JSON.stringify(submission),
29
29
  }), this.config.retry);
30
30
  }
@@ -32,8 +32,8 @@ class HarkenClient {
32
32
  * Create a presigned URL for attachment upload.
33
33
  */
34
34
  async createAttachmentUpload(request) {
35
- return (0, retry_1.withRetry)(() => this.request('/v1/feedback/attachments/presign', {
36
- method: 'POST',
35
+ return (0, retry_1.withRetry)(() => this.request("/v1/feedback/attachments/presign", {
36
+ method: "POST",
37
37
  body: JSON.stringify(request),
38
38
  }), this.config.retry);
39
39
  }
@@ -42,7 +42,7 @@ class HarkenClient {
42
42
  */
43
43
  async confirmAttachment(attachmentId, request) {
44
44
  return (0, retry_1.withRetry)(() => this.request(`/v1/feedback/attachments/${attachmentId}/confirm`, {
45
- method: 'POST',
45
+ method: "POST",
46
46
  body: request ? JSON.stringify(request) : undefined,
47
47
  }), this.config.retry);
48
48
  }
@@ -52,7 +52,7 @@ class HarkenClient {
52
52
  */
53
53
  async reportAttachmentFailure(attachmentId, error) {
54
54
  return this.request(`/v1/feedback/attachments/${attachmentId}/fail`, {
55
- method: 'POST',
55
+ method: "POST",
56
56
  body: error ? JSON.stringify({ error }) : undefined,
57
57
  });
58
58
  }
@@ -68,12 +68,12 @@ class HarkenClient {
68
68
  async request(path, options = {}) {
69
69
  const url = `${this.config.baseUrl}${path}`;
70
70
  const headers = {
71
- 'Content-Type': 'application/json',
72
- 'X-Publishable-Key': this.config.publishableKey,
71
+ "Content-Type": "application/json",
72
+ "X-Publishable-Key": this.config.publishableKey,
73
73
  ...options.headers,
74
74
  };
75
75
  if (this.config.userToken) {
76
- headers['X-User-Token'] = this.config.userToken;
76
+ headers["X-User-Token"] = this.config.userToken;
77
77
  }
78
78
  // Create abort controller for timeout
79
79
  const controller = new AbortController();
@@ -88,9 +88,7 @@ class HarkenClient {
88
88
  if (!response.ok) {
89
89
  const errorBody = await this.parseErrorResponse(response);
90
90
  // Only parse Retry-After for 429 responses
91
- const retryAfter = response.status === 429
92
- ? this.parseRetryAfter(response)
93
- : undefined;
91
+ const retryAfter = response.status === 429 ? this.parseRetryAfter(response) : undefined;
94
92
  throw new errors_1.HarkenApiError(response.status, errorBody, { retryAfter });
95
93
  }
96
94
  return (await response.json());
@@ -102,15 +100,15 @@ class HarkenClient {
102
100
  throw error;
103
101
  }
104
102
  // Handle abort (timeout)
105
- if (error instanceof Error && error.name === 'AbortError') {
106
- throw new errors_1.HarkenNetworkError('Request timed out', error);
103
+ if (error instanceof Error && error.name === "AbortError") {
104
+ throw new errors_1.HarkenNetworkError("Request timed out", error);
107
105
  }
108
106
  // Handle other fetch errors (network issues)
109
107
  if (error instanceof TypeError) {
110
- throw new errors_1.HarkenNetworkError('Network request failed', error);
108
+ throw new errors_1.HarkenNetworkError("Network request failed", error);
111
109
  }
112
110
  // Unknown error
113
- throw new errors_1.HarkenNetworkError(error instanceof Error ? error.message : 'Unknown error', error instanceof Error ? error : undefined);
111
+ throw new errors_1.HarkenNetworkError(error instanceof Error ? error.message : "Unknown error", error instanceof Error ? error : undefined);
114
112
  }
115
113
  }
116
114
  /**
@@ -125,7 +123,7 @@ class HarkenClient {
125
123
  return {
126
124
  error: {
127
125
  code: `http_${response.status}`,
128
- message: response.statusText || 'Request failed',
126
+ message: response.statusText || "Request failed",
129
127
  },
130
128
  };
131
129
  }
@@ -135,7 +133,7 @@ class HarkenClient {
135
133
  * Supports both delta-seconds and HTTP-date formats.
136
134
  */
137
135
  parseRetryAfter(response) {
138
- const retryAfter = response.headers.get('Retry-After');
136
+ const retryAfter = response.headers.get("Retry-After");
139
137
  if (!retryAfter) {
140
138
  return undefined;
141
139
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=client.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.test.d.ts","sourceRoot":"","sources":["../../src/api/client.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,417 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const vitest_1 = require("vitest");
4
+ const client_1 = require("./client");
5
+ const errors_1 = require("./errors");
6
+ // Mock fetch globally
7
+ const mockFetch = vitest_1.vi.fn();
8
+ vitest_1.vi.stubGlobal("fetch", mockFetch);
9
+ // Mock retry module to avoid timing complexities in client tests
10
+ vitest_1.vi.mock("./retry", async () => {
11
+ // eslint-disable-next-line @typescript-eslint/consistent-type-imports
12
+ const original = await vitest_1.vi.importActual("./retry");
13
+ return {
14
+ ...original,
15
+ withRetry: vitest_1.vi.fn((fn) => fn()), // Execute immediately without retries
16
+ };
17
+ });
18
+ (0, vitest_1.describe)("HarkenClient", () => {
19
+ (0, vitest_1.beforeEach)(() => {
20
+ mockFetch.mockReset();
21
+ });
22
+ (0, vitest_1.afterEach)(() => {
23
+ vitest_1.vi.useRealTimers();
24
+ });
25
+ (0, vitest_1.describe)("constructor", () => {
26
+ (0, vitest_1.it)("creates client with required config", () => {
27
+ const client = new client_1.HarkenClient({
28
+ publishableKey: "pk_test_123",
29
+ });
30
+ (0, vitest_1.expect)(client).toBeInstanceOf(client_1.HarkenClient);
31
+ });
32
+ (0, vitest_1.it)("uses default base URL when not provided", async () => {
33
+ const client = new client_1.HarkenClient({
34
+ publishableKey: "pk_test_123",
35
+ });
36
+ mockFetch.mockResolvedValueOnce({
37
+ ok: true,
38
+ json: () => Promise.resolve({ id: "feedback_123" }),
39
+ });
40
+ await client.submitFeedback({
41
+ message: "Test",
42
+ category: "bug",
43
+ anon_id: "anon_123",
44
+ });
45
+ (0, vitest_1.expect)(mockFetch).toHaveBeenCalledWith("https://api.harken.app/v1/feedback", vitest_1.expect.any(Object));
46
+ });
47
+ (0, vitest_1.it)("uses custom base URL when provided", async () => {
48
+ const client = new client_1.HarkenClient({
49
+ publishableKey: "pk_test_123",
50
+ baseUrl: "https://custom.api.com",
51
+ });
52
+ mockFetch.mockResolvedValueOnce({
53
+ ok: true,
54
+ json: () => Promise.resolve({ id: "feedback_123" }),
55
+ });
56
+ await client.submitFeedback({
57
+ message: "Test",
58
+ category: "bug",
59
+ anon_id: "anon_123",
60
+ });
61
+ (0, vitest_1.expect)(mockFetch).toHaveBeenCalledWith("https://custom.api.com/v1/feedback", vitest_1.expect.any(Object));
62
+ });
63
+ });
64
+ (0, vitest_1.describe)("request headers", () => {
65
+ (0, vitest_1.it)("includes Content-Type and X-Publishable-Key headers", async () => {
66
+ const client = new client_1.HarkenClient({
67
+ publishableKey: "pk_test_123",
68
+ });
69
+ mockFetch.mockResolvedValueOnce({
70
+ ok: true,
71
+ json: () => Promise.resolve({ id: "feedback_123" }),
72
+ });
73
+ await client.submitFeedback({
74
+ message: "Test",
75
+ category: "bug",
76
+ anon_id: "anon_123",
77
+ });
78
+ const [, options] = mockFetch.mock.calls[0];
79
+ (0, vitest_1.expect)(options.headers).toMatchObject({
80
+ "Content-Type": "application/json",
81
+ "X-Publishable-Key": "pk_test_123",
82
+ });
83
+ });
84
+ (0, vitest_1.it)("includes X-User-Token header when userToken is set", async () => {
85
+ const client = new client_1.HarkenClient({
86
+ publishableKey: "pk_test_123",
87
+ userToken: "user_token_abc",
88
+ });
89
+ mockFetch.mockResolvedValueOnce({
90
+ ok: true,
91
+ json: () => Promise.resolve({ id: "feedback_123" }),
92
+ });
93
+ await client.submitFeedback({
94
+ message: "Test",
95
+ category: "bug",
96
+ anon_id: "anon_123",
97
+ });
98
+ const [, options] = mockFetch.mock.calls[0];
99
+ (0, vitest_1.expect)(options.headers).toMatchObject({
100
+ "X-User-Token": "user_token_abc",
101
+ });
102
+ });
103
+ (0, vitest_1.it)("does not include X-User-Token when not set", async () => {
104
+ const client = new client_1.HarkenClient({
105
+ publishableKey: "pk_test_123",
106
+ });
107
+ mockFetch.mockResolvedValueOnce({
108
+ ok: true,
109
+ json: () => Promise.resolve({ id: "feedback_123" }),
110
+ });
111
+ await client.submitFeedback({
112
+ message: "Test",
113
+ category: "bug",
114
+ anon_id: "anon_123",
115
+ });
116
+ const [, options] = mockFetch.mock.calls[0];
117
+ (0, vitest_1.expect)(options.headers["X-User-Token"]).toBeUndefined();
118
+ });
119
+ });
120
+ (0, vitest_1.describe)("submitFeedback", () => {
121
+ (0, vitest_1.it)("sends correct payload", async () => {
122
+ const client = new client_1.HarkenClient({
123
+ publishableKey: "pk_test_123",
124
+ });
125
+ mockFetch.mockResolvedValueOnce({
126
+ ok: true,
127
+ json: () => Promise.resolve({ id: "feedback_123" }),
128
+ });
129
+ await client.submitFeedback({
130
+ message: "This is feedback",
131
+ category: "idea",
132
+ anon_id: "anon_456",
133
+ metadata: { app_version: "1.0.0", platform: "ios" },
134
+ attachments: ["att_1", "att_2"],
135
+ });
136
+ const [, options] = mockFetch.mock.calls[0];
137
+ (0, vitest_1.expect)(JSON.parse(options.body)).toEqual({
138
+ message: "This is feedback",
139
+ category: "idea",
140
+ anon_id: "anon_456",
141
+ metadata: { app_version: "1.0.0", platform: "ios" },
142
+ attachments: ["att_1", "att_2"],
143
+ });
144
+ });
145
+ (0, vitest_1.it)("returns response on success", async () => {
146
+ const client = new client_1.HarkenClient({
147
+ publishableKey: "pk_test_123",
148
+ });
149
+ mockFetch.mockResolvedValueOnce({
150
+ ok: true,
151
+ json: () => Promise.resolve({
152
+ id: "feedback_123",
153
+ created_at: "2024-01-01T00:00:00Z",
154
+ }),
155
+ });
156
+ const result = await client.submitFeedback({
157
+ message: "Test",
158
+ category: "bug",
159
+ anon_id: "anon_123",
160
+ });
161
+ (0, vitest_1.expect)(result).toEqual({
162
+ id: "feedback_123",
163
+ created_at: "2024-01-01T00:00:00Z",
164
+ });
165
+ });
166
+ });
167
+ (0, vitest_1.describe)("createAttachmentUpload", () => {
168
+ (0, vitest_1.it)("sends correct payload and returns presigned URL", async () => {
169
+ const client = new client_1.HarkenClient({
170
+ publishableKey: "pk_test_123",
171
+ });
172
+ mockFetch.mockResolvedValueOnce({
173
+ ok: true,
174
+ json: () => Promise.resolve({
175
+ attachment_id: "att_123",
176
+ upload_url: "https://storage.example.com/upload",
177
+ expires_at: "2024-01-01T01:00:00Z",
178
+ }),
179
+ });
180
+ const result = await client.createAttachmentUpload({
181
+ filename: "screenshot.png",
182
+ content_type: "image/png",
183
+ size: 12345,
184
+ });
185
+ (0, vitest_1.expect)(mockFetch).toHaveBeenCalledWith(vitest_1.expect.stringContaining("/v1/feedback/attachments/presign"), vitest_1.expect.any(Object));
186
+ (0, vitest_1.expect)(result).toEqual({
187
+ attachment_id: "att_123",
188
+ upload_url: "https://storage.example.com/upload",
189
+ expires_at: "2024-01-01T01:00:00Z",
190
+ });
191
+ });
192
+ });
193
+ (0, vitest_1.describe)("confirmAttachment", () => {
194
+ (0, vitest_1.it)("confirms attachment upload", async () => {
195
+ const client = new client_1.HarkenClient({
196
+ publishableKey: "pk_test_123",
197
+ });
198
+ mockFetch.mockResolvedValueOnce({
199
+ ok: true,
200
+ json: () => Promise.resolve({
201
+ id: "att_123",
202
+ status: "confirmed",
203
+ }),
204
+ });
205
+ const result = await client.confirmAttachment("att_123");
206
+ (0, vitest_1.expect)(mockFetch).toHaveBeenCalledWith(vitest_1.expect.stringContaining("/v1/feedback/attachments/att_123/confirm"), vitest_1.expect.objectContaining({ method: "POST" }));
207
+ (0, vitest_1.expect)(result).toEqual({
208
+ id: "att_123",
209
+ status: "confirmed",
210
+ });
211
+ });
212
+ (0, vitest_1.it)("includes bytes_uploaded in confirm request when provided", async () => {
213
+ const client = new client_1.HarkenClient({
214
+ publishableKey: "pk_test_123",
215
+ });
216
+ mockFetch.mockResolvedValueOnce({
217
+ ok: true,
218
+ json: () => Promise.resolve({ id: "att_123", status: "confirmed" }),
219
+ });
220
+ await client.confirmAttachment("att_123", { bytes_uploaded: 12345 });
221
+ const [, options] = mockFetch.mock.calls[0];
222
+ (0, vitest_1.expect)(JSON.parse(options.body)).toEqual({
223
+ bytes_uploaded: 12345,
224
+ });
225
+ });
226
+ });
227
+ (0, vitest_1.describe)("reportAttachmentFailure", () => {
228
+ (0, vitest_1.it)("reports attachment failure with error message", async () => {
229
+ const client = new client_1.HarkenClient({
230
+ publishableKey: "pk_test_123",
231
+ });
232
+ mockFetch.mockResolvedValueOnce({
233
+ ok: true,
234
+ json: () => Promise.resolve({ id: "att_123", status: "failed" }),
235
+ });
236
+ const result = await client.reportAttachmentFailure("att_123", "Upload timed out");
237
+ (0, vitest_1.expect)(mockFetch).toHaveBeenCalledWith(vitest_1.expect.stringContaining("/v1/feedback/attachments/att_123/fail"), vitest_1.expect.objectContaining({ method: "POST" }));
238
+ (0, vitest_1.expect)(result.status).toBe("failed");
239
+ });
240
+ });
241
+ (0, vitest_1.describe)("getAttachmentStatus", () => {
242
+ (0, vitest_1.it)("retrieves attachment status", async () => {
243
+ const client = new client_1.HarkenClient({
244
+ publishableKey: "pk_test_123",
245
+ });
246
+ mockFetch.mockResolvedValueOnce({
247
+ ok: true,
248
+ json: () => Promise.resolve({
249
+ id: "att_123",
250
+ status: "confirmed",
251
+ download_url: "https://storage.example.com/download",
252
+ }),
253
+ });
254
+ const result = await client.getAttachmentStatus("att_123");
255
+ (0, vitest_1.expect)(mockFetch).toHaveBeenCalledWith(vitest_1.expect.stringContaining("/v1/feedback/attachments/att_123"), vitest_1.expect.any(Object));
256
+ (0, vitest_1.expect)(result).toEqual({
257
+ id: "att_123",
258
+ status: "confirmed",
259
+ download_url: "https://storage.example.com/download",
260
+ });
261
+ });
262
+ });
263
+ (0, vitest_1.describe)("error handling", () => {
264
+ (0, vitest_1.it)("throws HarkenApiError for non-OK responses", async () => {
265
+ const client = new client_1.HarkenClient({
266
+ publishableKey: "pk_test_123",
267
+ });
268
+ mockFetch.mockResolvedValueOnce({
269
+ ok: false,
270
+ status: 400,
271
+ statusText: "Bad Request",
272
+ headers: new Map(),
273
+ json: () => Promise.resolve({
274
+ error: {
275
+ code: "validation_error",
276
+ message: "Message is required",
277
+ details: [{ field: "message", message: "Required" }],
278
+ },
279
+ }),
280
+ });
281
+ await (0, vitest_1.expect)(client.submitFeedback({
282
+ message: "",
283
+ category: "bug",
284
+ anon_id: "anon_123",
285
+ })).rejects.toThrow(errors_1.HarkenApiError);
286
+ });
287
+ (0, vitest_1.it)("includes error code and details from API response", async () => {
288
+ const client = new client_1.HarkenClient({
289
+ publishableKey: "pk_test_123",
290
+ });
291
+ mockFetch.mockResolvedValueOnce({
292
+ ok: false,
293
+ status: 400,
294
+ statusText: "Bad Request",
295
+ headers: new Map(),
296
+ json: () => Promise.resolve({
297
+ error: {
298
+ code: "validation_error",
299
+ message: "Invalid category",
300
+ details: [{ field: "category", message: "Must be one of: bug, idea, ux, other" }],
301
+ },
302
+ }),
303
+ });
304
+ try {
305
+ await client.submitFeedback({
306
+ message: "Test",
307
+ category: "invalid",
308
+ anon_id: "anon_123",
309
+ });
310
+ vitest_1.expect.fail("Should have thrown");
311
+ }
312
+ catch (error) {
313
+ (0, vitest_1.expect)(error).toBeInstanceOf(errors_1.HarkenApiError);
314
+ const apiError = error;
315
+ (0, vitest_1.expect)(apiError.code).toBe("validation_error");
316
+ (0, vitest_1.expect)(apiError.status).toBe(400);
317
+ (0, vitest_1.expect)(apiError.details).toHaveLength(1);
318
+ }
319
+ });
320
+ (0, vitest_1.it)("parses Retry-After header for 429 responses", async () => {
321
+ const client = new client_1.HarkenClient({
322
+ publishableKey: "pk_test_123",
323
+ });
324
+ const headers = new Headers();
325
+ headers.set("Retry-After", "30");
326
+ mockFetch.mockResolvedValueOnce({
327
+ ok: false,
328
+ status: 429,
329
+ statusText: "Too Many Requests",
330
+ headers,
331
+ json: () => Promise.resolve({
332
+ error: {
333
+ code: "rate_limited",
334
+ message: "Too many requests",
335
+ },
336
+ }),
337
+ });
338
+ try {
339
+ await client.submitFeedback({
340
+ message: "Test",
341
+ category: "bug",
342
+ anon_id: "anon_123",
343
+ });
344
+ vitest_1.expect.fail("Should have thrown");
345
+ }
346
+ catch (error) {
347
+ (0, vitest_1.expect)(error).toBeInstanceOf(errors_1.HarkenApiError);
348
+ const apiError = error;
349
+ (0, vitest_1.expect)(apiError.status).toBe(429);
350
+ (0, vitest_1.expect)(apiError.retryAfter).toBe(30);
351
+ }
352
+ });
353
+ (0, vitest_1.it)("handles non-JSON error responses gracefully", async () => {
354
+ const client = new client_1.HarkenClient({
355
+ publishableKey: "pk_test_123",
356
+ });
357
+ mockFetch.mockResolvedValueOnce({
358
+ ok: false,
359
+ status: 502,
360
+ statusText: "Bad Gateway",
361
+ headers: new Map(),
362
+ json: () => Promise.reject(new Error("Invalid JSON")),
363
+ });
364
+ try {
365
+ await client.submitFeedback({
366
+ message: "Test",
367
+ category: "bug",
368
+ anon_id: "anon_123",
369
+ });
370
+ vitest_1.expect.fail("Should have thrown");
371
+ }
372
+ catch (error) {
373
+ (0, vitest_1.expect)(error).toBeInstanceOf(errors_1.HarkenApiError);
374
+ const apiError = error;
375
+ (0, vitest_1.expect)(apiError.status).toBe(502);
376
+ (0, vitest_1.expect)(apiError.code).toBe("http_502");
377
+ }
378
+ });
379
+ (0, vitest_1.it)("throws HarkenNetworkError for fetch TypeError", async () => {
380
+ const client = new client_1.HarkenClient({
381
+ publishableKey: "pk_test_123",
382
+ });
383
+ mockFetch.mockRejectedValueOnce(new TypeError("Failed to fetch"));
384
+ await (0, vitest_1.expect)(client.submitFeedback({
385
+ message: "Test",
386
+ category: "bug",
387
+ anon_id: "anon_123",
388
+ })).rejects.toThrow(errors_1.HarkenNetworkError);
389
+ });
390
+ (0, vitest_1.it)("throws HarkenNetworkError for timeout (AbortError)", async () => {
391
+ const client = new client_1.HarkenClient({
392
+ publishableKey: "pk_test_123",
393
+ timeout: 100,
394
+ });
395
+ vitest_1.vi.useFakeTimers();
396
+ const abortError = new Error("Aborted");
397
+ abortError.name = "AbortError";
398
+ mockFetch.mockRejectedValueOnce(abortError);
399
+ const promise = client.submitFeedback({
400
+ message: "Test",
401
+ category: "bug",
402
+ anon_id: "anon_123",
403
+ });
404
+ await (0, vitest_1.expect)(promise).rejects.toThrow(errors_1.HarkenNetworkError);
405
+ await (0, vitest_1.expect)(promise).rejects.toThrow("Request timed out");
406
+ });
407
+ });
408
+ });
409
+ (0, vitest_1.describe)("createHarkenClient", () => {
410
+ (0, vitest_1.it)("creates a HarkenClient instance", () => {
411
+ const client = (0, client_1.createHarkenClient)({
412
+ publishableKey: "pk_test_123",
413
+ });
414
+ (0, vitest_1.expect)(client).toBeInstanceOf(client_1.HarkenClient);
415
+ });
416
+ });
417
+ //# sourceMappingURL=client.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.test.js","sourceRoot":"","sources":["../../src/api/client.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { components } from '../types/index.js';
2
- type ErrorResponse = components['schemas']['ErrorResponse'];
3
- type ErrorDetail = components['schemas']['ErrorDetail'];
1
+ import type { components } from "../types/index.js";
2
+ type ErrorResponse = components["schemas"]["ErrorResponse"];
3
+ type ErrorDetail = components["schemas"]["ErrorDetail"];
4
4
  /**
5
5
  * Base error class for Harken API errors.
6
6
  */
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/api/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,KAAK,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;AAC5D,KAAK,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;AAExD;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C,uBAAuB;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACjC,wDAAwD;IACxD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;gBAG3B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAUnC,+CAA+C;IAC/C,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAED,0CAA0C;IAC1C,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,+CAA+C;IAC/C,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,2CAA2C;IAC3C,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,sCAAsC;IACtC,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IACjD,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;gBAEX,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;IAM1C,0CAA0C;IAC1C,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/api/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,KAAK,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;AAC5D,KAAK,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;AAExD;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,WAAW;IAC7C,uBAAuB;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACjC,wDAAwD;IACxD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;gBAEjB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAStF,+CAA+C;IAC/C,IAAI,iBAAiB,IAAI,OAAO,CAE/B;IAED,0CAA0C;IAC1C,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,+CAA+C;IAC/C,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,2CAA2C;IAC3C,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,sCAAsC;IACtC,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IACjD,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;gBAEX,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;IAM1C,0CAA0C;IAC1C,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF"}
@@ -7,7 +7,7 @@ exports.HarkenNetworkError = exports.HarkenApiError = exports.HarkenError = void
7
7
  class HarkenError extends Error {
8
8
  constructor(message) {
9
9
  super(message);
10
- this.name = 'HarkenError';
10
+ this.name = "HarkenError";
11
11
  }
12
12
  }
13
13
  exports.HarkenError = HarkenError;
@@ -25,7 +25,7 @@ class HarkenApiError extends HarkenError {
25
25
  retryAfter;
26
26
  constructor(status, response, options) {
27
27
  super(response.error.message);
28
- this.name = 'HarkenApiError';
28
+ this.name = "HarkenApiError";
29
29
  this.status = status;
30
30
  this.code = response.error.code;
31
31
  this.details = response.error.details;
@@ -60,7 +60,7 @@ class HarkenNetworkError extends HarkenError {
60
60
  cause;
61
61
  constructor(message, cause) {
62
62
  super(message);
63
- this.name = 'HarkenNetworkError';
63
+ this.name = "HarkenNetworkError";
64
64
  this.cause = cause;
65
65
  }
66
66
  /** Network errors are always retryable */