@unidy.io/sdk 1.2.0-alpha9 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (715) hide show
  1. package/dist/cjs/_commonjsHelpers-CFO10eej.js +10 -0
  2. package/dist/cjs/_commonjsHelpers-CFO10eej.js.map +1 -0
  3. package/dist/cjs/app-globals-C-Wl5lPS.js +10 -0
  4. package/dist/cjs/app-globals-C-Wl5lPS.js.map +1 -0
  5. package/dist/cjs/{auth-store-DPmGKHZ2.js → auth-store-0vv3uOib.js} +4 -4
  6. package/dist/cjs/{auth-store-DPmGKHZ2.js.map → auth-store-0vv3uOib.js.map} +1 -1
  7. package/dist/cjs/component-DLxnZCW6.js +34 -0
  8. package/dist/cjs/component-DLxnZCW6.js.map +1 -0
  9. package/dist/cjs/component-utils-XXctnOM9.js +38 -0
  10. package/dist/cjs/component-utils-XXctnOM9.js.map +1 -0
  11. package/dist/cjs/de-BWF6Glzg.js +704 -0
  12. package/dist/cjs/de-BWF6Glzg.js.map +1 -0
  13. package/dist/cjs/en-GB-DhD5mdQw.js +119 -0
  14. package/dist/cjs/en-GB-DhD5mdQw.js.map +1 -0
  15. package/dist/cjs/{flash-store-gbSYhPAV.js → flash-store-CR6Umh1O.js} +3 -3
  16. package/dist/cjs/{flash-store-gbSYhPAV.js.map → flash-store-CR6Umh1O.js.map} +1 -1
  17. package/dist/cjs/fr-j2wwoj-A.js +577 -0
  18. package/dist/cjs/fr-j2wwoj-A.js.map +1 -0
  19. package/dist/cjs/has-slot-content-CfJbU4t-.js +37 -0
  20. package/dist/cjs/has-slot-content-CfJbU4t-.js.map +1 -0
  21. package/dist/cjs/{i18n-D5j_Zl-4.js → i18n-ClWrNmGh.js} +100 -4
  22. package/dist/cjs/{i18n-D5j_Zl-4.js.map → i18n-ClWrNmGh.js.map} +1 -1
  23. package/dist/cjs/{index-B325yXfO.js → index-2Fz3r5o0.js} +5 -41
  24. package/dist/cjs/index-2Fz3r5o0.js.map +1 -0
  25. package/dist/cjs/{index-yaeiYlfa.js → index-C6ZBKFYr.js} +3 -3
  26. package/dist/cjs/{index-yaeiYlfa.js.map → index-C6ZBKFYr.js.map} +1 -1
  27. package/dist/cjs/{index-BzPYBLYC.js → index-CpPKy1CZ.js} +1170 -1087
  28. package/dist/cjs/index-CpPKy1CZ.js.map +1 -0
  29. package/dist/cjs/index.cjs.js +24 -11
  30. package/dist/cjs/index.cjs.js.map +1 -1
  31. package/dist/cjs/loader.cjs.js +3 -3
  32. package/dist/cjs/{newsletter-helpers-hdDC5X-V.js → newsletter-helpers-BHvOI8M4.js} +46 -9
  33. package/dist/cjs/newsletter-helpers-BHvOI8M4.js.map +1 -0
  34. package/dist/cjs/{newsletter-store-CupsLgO9.js → newsletter-store-22Jswiqe.js} +5 -3
  35. package/dist/cjs/newsletter-store-22Jswiqe.js.map +1 -0
  36. package/dist/cjs/nl-BE-yKvOp1-G.js +542 -0
  37. package/dist/cjs/nl-BE-yKvOp1-G.js.map +1 -0
  38. package/dist/cjs/{profile-helpers-Bprrm-Xl.js → profile-helpers-BBpAqHjK.js} +4 -4
  39. package/dist/cjs/{profile-helpers-Bprrm-Xl.js.map → profile-helpers-BBpAqHjK.js.map} +1 -1
  40. package/dist/cjs/{profile-store-C_q-TuA_.js → profile-store-CQEQhPQD.js} +4 -4
  41. package/dist/cjs/{profile-store-C_q-TuA_.js.map → profile-store-CQEQhPQD.js.map} +1 -1
  42. package/dist/cjs/redirect-with-token-wupYX97S.js +37 -0
  43. package/dist/cjs/redirect-with-token-wupYX97S.js.map +1 -0
  44. package/dist/cjs/ro-CXq9d1lv.js +578 -0
  45. package/dist/cjs/ro-CXq9d1lv.js.map +1 -0
  46. package/dist/cjs/sdk.cjs.js +3 -3
  47. package/dist/cjs/sv-CMln4V33.js +597 -0
  48. package/dist/cjs/sv-CMln4V33.js.map +1 -0
  49. package/dist/cjs/u-conditional-render.cjs.entry.js +14 -14
  50. package/dist/cjs/u-conditional-render.entry.cjs.js.map +1 -1
  51. package/dist/cjs/u-config.cjs.entry.js +24 -11
  52. package/dist/cjs/u-config.entry.cjs.js.map +1 -1
  53. package/dist/cjs/u-email-field.cjs.entry.js +7 -7
  54. package/dist/cjs/u-error-message.cjs.entry.js +49 -22
  55. package/dist/cjs/u-error-message.entry.cjs.js.map +1 -1
  56. package/dist/cjs/u-field.u-raw-field.entry.cjs.js.map +1 -1
  57. package/dist/cjs/u-field_2.cjs.entry.js +124 -12
  58. package/dist/cjs/u-flash-message.cjs.entry.js +3 -3
  59. package/dist/cjs/u-full-profile.cjs.entry.js +6 -6
  60. package/dist/cjs/u-jump-to-service.cjs.entry.js +23 -44
  61. package/dist/cjs/u-jump-to-service.entry.cjs.js.map +1 -1
  62. package/dist/cjs/u-jump-to-unidy.cjs.entry.js +22 -43
  63. package/dist/cjs/u-jump-to-unidy.entry.cjs.js.map +1 -1
  64. package/dist/cjs/u-logout-button.u-signed-in.entry.cjs.js.map +1 -1
  65. package/dist/cjs/u-logout-button_2.cjs.entry.js +15 -22
  66. package/dist/cjs/u-magic-code-field.cjs.entry.js +8 -9
  67. package/dist/cjs/u-magic-code-field.entry.cjs.js.map +1 -1
  68. package/dist/cjs/u-missing-field.cjs.entry.js +6 -5
  69. package/dist/cjs/u-missing-field.entry.cjs.js.map +1 -1
  70. package/dist/cjs/u-missing-fields-submit-button.cjs.entry.js +16 -14
  71. package/dist/cjs/u-missing-fields-submit-button.entry.cjs.js.map +1 -1
  72. package/dist/cjs/u-newsletter-checkbox.cjs.entry.js +11 -12
  73. package/dist/cjs/u-newsletter-checkbox.entry.cjs.js.map +1 -1
  74. package/dist/cjs/u-newsletter-consent-checkbox.cjs.entry.js +4 -4
  75. package/dist/cjs/u-newsletter-logout-button.cjs.entry.js +15 -20
  76. package/dist/cjs/u-newsletter-logout-button.entry.cjs.js.map +1 -1
  77. package/dist/cjs/u-newsletter-preference-checkbox.cjs.entry.js +11 -12
  78. package/dist/cjs/u-newsletter-preference-checkbox.entry.cjs.js.map +1 -1
  79. package/dist/cjs/u-newsletter-resend-doi-button.cjs.entry.js +10 -11
  80. package/dist/cjs/u-newsletter-resend-doi-button.entry.cjs.js.map +1 -1
  81. package/dist/cjs/u-newsletter-root.cjs.entry.js +45 -22
  82. package/dist/cjs/u-newsletter-root.entry.cjs.js.map +1 -1
  83. package/dist/cjs/u-newsletter-toggle-subscription-button.cjs.entry.js +11 -12
  84. package/dist/cjs/u-newsletter-toggle-subscription-button.entry.cjs.js.map +1 -1
  85. package/dist/cjs/u-pagination-button.cjs.entry.js +4 -4
  86. package/dist/cjs/u-pagination-button.entry.cjs.js.map +1 -1
  87. package/dist/cjs/u-pagination-page.cjs.entry.js +4 -4
  88. package/dist/cjs/u-pagination-page.entry.cjs.js.map +1 -1
  89. package/dist/cjs/u-passkey.cjs.entry.js +8 -9
  90. package/dist/cjs/u-passkey.entry.cjs.js.map +1 -1
  91. package/dist/cjs/u-password-field.cjs.entry.js +5 -5
  92. package/dist/cjs/u-profile.u-submit-button.entry.cjs.js.map +1 -1
  93. package/dist/cjs/u-profile_2.cjs.entry.js +31 -33
  94. package/dist/cjs/u-registration-button.cjs.entry.js +5 -5
  95. package/dist/cjs/u-reset-password-button.cjs.entry.js +12 -15
  96. package/dist/cjs/u-reset-password-button.entry.cjs.js.map +1 -1
  97. package/dist/cjs/u-send-magic-code-button.cjs.entry.js +8 -9
  98. package/dist/cjs/u-send-magic-code-button.entry.cjs.js.map +1 -1
  99. package/dist/cjs/u-signin-root.cjs.entry.js +6 -8
  100. package/dist/cjs/u-signin-root.entry.cjs.js.map +1 -1
  101. package/dist/cjs/u-signin-step.cjs.entry.js +17 -21
  102. package/dist/cjs/u-signin-step.entry.cjs.js.map +1 -1
  103. package/dist/cjs/u-social-login-button.cjs.entry.js +16 -15
  104. package/dist/cjs/u-social-login-button.entry.cjs.js.map +1 -1
  105. package/dist/cjs/u-spinner.cjs.entry.js +3 -3
  106. package/dist/cjs/u-spinner.entry.cjs.js.map +1 -1
  107. package/dist/cjs/u-ticketable-export.cjs.entry.js +76 -0
  108. package/dist/cjs/u-ticketable-export.entry.cjs.js.map +1 -0
  109. package/dist/cjs/u-ticketable-list-D3M8iA-g.js +3991 -0
  110. package/dist/cjs/u-ticketable-list-D3M8iA-g.js.map +1 -0
  111. package/dist/cjs/u-ticketable-list.cjs.entry.js +11 -6118
  112. package/dist/cjs/u-ticketable-list.entry.cjs.js.map +1 -1
  113. package/dist/cjs/{unidy-store-BGnWn9pc.js → unidy-store-Bvnl24i9.js} +3 -3
  114. package/dist/cjs/{unidy-store-BGnWn9pc.js.map → unidy-store-Bvnl24i9.js.map} +1 -1
  115. package/dist/collection/api/base-service.js.map +1 -1
  116. package/dist/collection/api/client.js.map +1 -1
  117. package/dist/collection/api/index.js +6 -6
  118. package/dist/collection/api/index.js.map +1 -1
  119. package/dist/collection/api/standalone.js +88 -39
  120. package/dist/collection/api/standalone.js.map +1 -1
  121. package/dist/collection/auth/api/auth.js.map +1 -1
  122. package/dist/collection/auth/api/schemas.js +5 -5
  123. package/dist/collection/auth/api/schemas.js.map +1 -1
  124. package/dist/collection/auth/auth-helpers.js +7 -8
  125. package/dist/collection/auth/auth-helpers.js.map +1 -1
  126. package/dist/collection/auth/auth.js +1 -0
  127. package/dist/collection/auth/auth.js.map +1 -1
  128. package/dist/collection/auth/components/jump-to-service/jump-to-service.js +20 -40
  129. package/dist/collection/auth/components/jump-to-service/jump-to-service.js.map +1 -1
  130. package/dist/collection/auth/components/jump-to-unidy/jump-to-unidy.js +20 -39
  131. package/dist/collection/auth/components/jump-to-unidy/jump-to-unidy.js.map +1 -1
  132. package/dist/collection/auth/components/logout-button/logout-button.js +7 -11
  133. package/dist/collection/auth/components/logout-button/logout-button.js.map +1 -1
  134. package/dist/collection/auth/components/missing-field/missing-field.js +25 -1
  135. package/dist/collection/auth/components/missing-field/missing-field.js.map +1 -1
  136. package/dist/collection/auth/components/missing-fields-submit-button/missing-fields-submit-button.js +33 -7
  137. package/dist/collection/auth/components/missing-fields-submit-button/missing-fields-submit-button.js.map +1 -1
  138. package/dist/collection/auth/components/password-field/password-field.js +1 -1
  139. package/dist/collection/auth/components/reset-pass-button/reset-pass-button.js +6 -8
  140. package/dist/collection/auth/components/reset-pass-button/reset-pass-button.js.map +1 -1
  141. package/dist/collection/auth/components/signed-in/signed-in.js +2 -5
  142. package/dist/collection/auth/components/signed-in/signed-in.js.map +1 -1
  143. package/dist/collection/auth/components/signin-root/signin-root.js +2 -5
  144. package/dist/collection/auth/components/signin-root/signin-root.js.map +1 -1
  145. package/dist/collection/auth/components/signin-step/signin-step.js +9 -13
  146. package/dist/collection/auth/components/signin-step/signin-step.js.map +1 -1
  147. package/dist/collection/auth/components/social-logins/social-login-button.css +1 -1
  148. package/dist/collection/auth/components/social-logins/social-login-button.js +11 -12
  149. package/dist/collection/auth/components/social-logins/social-login-button.js.map +1 -1
  150. package/dist/collection/auth/components/submit-button/auth-submit-button.js +10 -0
  151. package/dist/collection/auth/components/submit-button/auth-submit-button.js.map +1 -1
  152. package/dist/collection/collection-manifest.json +1 -0
  153. package/dist/collection/locales/de.json +16 -0
  154. package/dist/collection/locales/en.json +16 -0
  155. package/dist/collection/locales/fr.json +16 -0
  156. package/dist/collection/locales/it.json +16 -0
  157. package/dist/collection/locales/nl_be.json +16 -0
  158. package/dist/collection/locales/ro.json +16 -0
  159. package/dist/collection/logger.js +0 -37
  160. package/dist/collection/logger.js.map +1 -1
  161. package/dist/collection/newsletter/api/newsletters.js +19 -18
  162. package/dist/collection/newsletter/api/newsletters.js.map +1 -1
  163. package/dist/collection/newsletter/components/consent-checkbox/consent-checkbox.js +1 -1
  164. package/dist/collection/newsletter/components/logout-button/logout-button.js +6 -10
  165. package/dist/collection/newsletter/components/logout-button/logout-button.js.map +1 -1
  166. package/dist/collection/newsletter/components/newsletter-checkbox/newsletter-checkbox.js +1 -1
  167. package/dist/collection/newsletter/components/newsletter-root/newsletter-root.js +65 -10
  168. package/dist/collection/newsletter/components/newsletter-root/newsletter-root.js.map +1 -1
  169. package/dist/collection/newsletter/components/preference-checkbox/preference-checkbox.js +1 -1
  170. package/dist/collection/newsletter/components/toggle-subscription-button/toggle-subscription-button.js +1 -1
  171. package/dist/collection/newsletter/newsletter-helpers.js +39 -2
  172. package/dist/collection/newsletter/newsletter-helpers.js.map +1 -1
  173. package/dist/collection/newsletter/store/newsletter-store.js +2 -0
  174. package/dist/collection/newsletter/store/newsletter-store.js.map +1 -1
  175. package/dist/collection/profile/api/profile.js.map +1 -1
  176. package/dist/collection/profile/api/schemas.js +1 -1
  177. package/dist/collection/profile/api/schemas.js.map +1 -1
  178. package/dist/collection/profile/components/field/field.js +3 -1
  179. package/dist/collection/profile/components/field/field.js.map +1 -1
  180. package/dist/collection/profile/components/full-profile/full-profile.js +1 -1
  181. package/dist/collection/profile/components/raw-field/raw-field.js +40 -7
  182. package/dist/collection/profile/components/raw-field/raw-field.js.map +1 -1
  183. package/dist/collection/profile/store/profile-store.js +1 -1
  184. package/dist/collection/profile/store/profile-store.js.map +1 -1
  185. package/dist/collection/shared/base/component.js +28 -0
  186. package/dist/collection/shared/base/component.js.map +1 -0
  187. package/dist/collection/shared/base/has-slot-content.js +31 -0
  188. package/dist/collection/shared/base/has-slot-content.js.map +1 -0
  189. package/dist/collection/shared/component-utils.js +23 -27
  190. package/dist/collection/shared/component-utils.js.map +1 -1
  191. package/dist/collection/shared/components/conditional-render/conditional-render.js +4 -5
  192. package/dist/collection/shared/components/conditional-render/conditional-render.js.map +1 -1
  193. package/dist/collection/shared/components/config/config.js +18 -5
  194. package/dist/collection/shared/components/config/config.js.map +1 -1
  195. package/dist/collection/shared/components/email-field/email-field.js +1 -1
  196. package/dist/collection/shared/components/error-message/error-message.css +1 -1
  197. package/dist/collection/shared/components/error-message/error-message.js +44 -17
  198. package/dist/collection/shared/components/error-message/error-message.js.map +1 -1
  199. package/dist/collection/shared/components/spinner/spinner.css +1 -1
  200. package/dist/collection/shared/components/spinner/spinner.js +1 -1
  201. package/dist/collection/shared/components/submit-button/submit-button.css +1 -1
  202. package/dist/collection/shared/components/submit-button/submit-button.js +12 -23
  203. package/dist/collection/shared/components/submit-button/submit-button.js.map +1 -1
  204. package/dist/collection/shared/context-utils.js +96 -0
  205. package/dist/collection/shared/context-utils.js.map +1 -0
  206. package/dist/collection/shared/utils/redirect-with-token.js +30 -0
  207. package/dist/collection/shared/utils/redirect-with-token.js.map +1 -0
  208. package/dist/collection/shared/utils/url-utils.js +25 -0
  209. package/dist/collection/shared/utils/url-utils.js.map +1 -0
  210. package/dist/collection/ticketable/api/schemas.js +10 -2
  211. package/dist/collection/ticketable/api/schemas.js.map +1 -1
  212. package/dist/collection/ticketable/api/subscriptions.js +22 -1
  213. package/dist/collection/ticketable/api/subscriptions.js.map +1 -1
  214. package/dist/collection/ticketable/api/tickets.js +22 -1
  215. package/dist/collection/ticketable/api/tickets.js.map +1 -1
  216. package/dist/collection/ticketable/components/pagination/pagination-button.js +3 -5
  217. package/dist/collection/ticketable/components/pagination/pagination-button.js.map +1 -1
  218. package/dist/collection/ticketable/components/pagination/pagination-page.js +3 -5
  219. package/dist/collection/ticketable/components/pagination/pagination-page.js.map +1 -1
  220. package/dist/collection/ticketable/components/ticketable-export/ticketable-export.js +175 -0
  221. package/dist/collection/ticketable/components/ticketable-export/ticketable-export.js.map +1 -0
  222. package/dist/collection/ticketable/components/ticketable-list/ticketable-list.js +163 -25
  223. package/dist/collection/ticketable/components/ticketable-list/ticketable-list.js.map +1 -1
  224. package/dist/collection/ticketable/index.js +1 -0
  225. package/dist/collection/ticketable/index.js.map +1 -1
  226. package/dist/components/_commonjsHelpers.js +8 -0
  227. package/dist/components/_commonjsHelpers.js.map +1 -0
  228. package/dist/components/component-utils.js +25 -28
  229. package/dist/components/component-utils.js.map +1 -1
  230. package/dist/components/component.js +33 -0
  231. package/dist/components/component.js.map +1 -0
  232. package/dist/components/de.js +702 -0
  233. package/dist/components/de.js.map +1 -0
  234. package/dist/components/en-GB.js +117 -0
  235. package/dist/components/en-GB.js.map +1 -0
  236. package/dist/components/field.js +3 -1
  237. package/dist/components/field.js.map +1 -1
  238. package/dist/components/fr.js +575 -0
  239. package/dist/components/fr.js.map +1 -0
  240. package/dist/components/has-slot-content.js +35 -0
  241. package/dist/components/has-slot-content.js.map +1 -0
  242. package/dist/components/i18n.js +96 -0
  243. package/dist/components/i18n.js.map +1 -1
  244. package/dist/components/index.js +11 -3
  245. package/dist/components/index.js.map +1 -1
  246. package/dist/components/index2.js +1158 -1083
  247. package/dist/components/index2.js.map +1 -1
  248. package/dist/components/logger.js +1 -39
  249. package/dist/components/logger.js.map +1 -1
  250. package/dist/components/newsletter-helpers.js +39 -2
  251. package/dist/components/newsletter-helpers.js.map +1 -1
  252. package/dist/components/newsletter-store.js +2 -0
  253. package/dist/components/newsletter-store.js.map +1 -1
  254. package/dist/components/nl-BE.js +540 -0
  255. package/dist/components/nl-BE.js.map +1 -0
  256. package/dist/components/profile-store.js +1 -1
  257. package/dist/components/profile-store.js.map +1 -1
  258. package/dist/components/raw-field.js +116 -7
  259. package/dist/components/raw-field.js.map +1 -1
  260. package/dist/components/redirect-with-token.js +35 -0
  261. package/dist/components/redirect-with-token.js.map +1 -0
  262. package/dist/components/ro.js +576 -0
  263. package/dist/components/ro.js.map +1 -0
  264. package/dist/components/spinner.js +2 -2
  265. package/dist/components/spinner.js.map +1 -1
  266. package/dist/components/submit-button.js +21 -24
  267. package/dist/components/submit-button.js.map +1 -1
  268. package/dist/components/sv.js +595 -0
  269. package/dist/components/sv.js.map +1 -0
  270. package/dist/components/u-conditional-render.js +5 -6
  271. package/dist/components/u-conditional-render.js.map +1 -1
  272. package/dist/components/u-config.js +16 -3
  273. package/dist/components/u-config.js.map +1 -1
  274. package/dist/components/u-email-field.js +1 -1
  275. package/dist/components/u-error-message.js +44 -19
  276. package/dist/components/u-error-message.js.map +1 -1
  277. package/dist/components/u-full-profile.js +1 -1
  278. package/dist/components/u-jump-to-service.js +16 -38
  279. package/dist/components/u-jump-to-service.js.map +1 -1
  280. package/dist/components/u-jump-to-unidy.js +16 -37
  281. package/dist/components/u-jump-to-unidy.js.map +1 -1
  282. package/dist/components/u-logout-button.js +5 -11
  283. package/dist/components/u-logout-button.js.map +1 -1
  284. package/dist/components/u-missing-field.js +5 -2
  285. package/dist/components/u-missing-field.js.map +1 -1
  286. package/dist/components/u-missing-fields-submit-button.js +10 -8
  287. package/dist/components/u-missing-fields-submit-button.js.map +1 -1
  288. package/dist/components/u-newsletter-checkbox.js +1 -1
  289. package/dist/components/u-newsletter-consent-checkbox.js +1 -1
  290. package/dist/components/u-newsletter-logout-button.js +6 -12
  291. package/dist/components/u-newsletter-logout-button.js.map +1 -1
  292. package/dist/components/u-newsletter-preference-checkbox.js +1 -1
  293. package/dist/components/u-newsletter-root.js +35 -12
  294. package/dist/components/u-newsletter-root.js.map +1 -1
  295. package/dist/components/u-newsletter-toggle-subscription-button.js +1 -1
  296. package/dist/components/u-pagination-button.js +3 -4
  297. package/dist/components/u-pagination-button.js.map +1 -1
  298. package/dist/components/u-pagination-page.js +3 -4
  299. package/dist/components/u-pagination-page.js.map +1 -1
  300. package/dist/components/u-reset-password-button.js +4 -8
  301. package/dist/components/u-reset-password-button.js.map +1 -1
  302. package/dist/components/u-signed-in.js +3 -6
  303. package/dist/components/u-signed-in.js.map +1 -1
  304. package/dist/components/u-signin-root.js +3 -6
  305. package/dist/components/u-signin-root.js.map +1 -1
  306. package/dist/components/u-signin-step.js +10 -14
  307. package/dist/components/u-signin-step.js.map +1 -1
  308. package/dist/components/u-social-login-button.js +13 -14
  309. package/dist/components/u-social-login-button.js.map +1 -1
  310. package/dist/components/u-ticketable-export.d.ts +11 -0
  311. package/dist/components/u-ticketable-export.js +93 -0
  312. package/dist/components/u-ticketable-export.js.map +1 -0
  313. package/dist/components/u-ticketable-list.js +256 -2396
  314. package/dist/components/u-ticketable-list.js.map +1 -1
  315. package/dist/esm/_commonjsHelpers-B85MJLTf.js +8 -0
  316. package/dist/esm/_commonjsHelpers-B85MJLTf.js.map +1 -0
  317. package/dist/esm/app-globals-J743qnJf.js +8 -0
  318. package/dist/esm/app-globals-J743qnJf.js.map +1 -0
  319. package/dist/esm/{auth-store-DBlGNGhq.js → auth-store-CSpEdi46.js} +4 -4
  320. package/dist/esm/{auth-store-DBlGNGhq.js.map → auth-store-CSpEdi46.js.map} +1 -1
  321. package/dist/esm/component-qfegGRWr.js +32 -0
  322. package/dist/esm/component-qfegGRWr.js.map +1 -0
  323. package/dist/esm/component-utils-WEof9bTg.js +36 -0
  324. package/dist/esm/component-utils-WEof9bTg.js.map +1 -0
  325. package/dist/esm/de-C6AnCqsA.js +702 -0
  326. package/dist/esm/de-C6AnCqsA.js.map +1 -0
  327. package/dist/esm/en-GB-DO63WPxt.js +117 -0
  328. package/dist/esm/en-GB-DO63WPxt.js.map +1 -0
  329. package/dist/esm/{flash-store-Df2YkLTB.js → flash-store-Dn1Bava8.js} +3 -3
  330. package/dist/esm/{flash-store-Df2YkLTB.js.map → flash-store-Dn1Bava8.js.map} +1 -1
  331. package/dist/esm/fr-C0oU6-EJ.js +575 -0
  332. package/dist/esm/fr-C0oU6-EJ.js.map +1 -0
  333. package/dist/esm/has-slot-content-DSMkJu9G.js +35 -0
  334. package/dist/esm/has-slot-content-DSMkJu9G.js.map +1 -0
  335. package/dist/esm/{i18n-Da7S9Oqf.js → i18n-ioyZxWsT.js} +100 -4
  336. package/dist/esm/{i18n-Da7S9Oqf.js.map → i18n-ioyZxWsT.js.map} +1 -1
  337. package/dist/esm/{index-FTKB5a1d.js → index-BsJDptgj.js} +4 -40
  338. package/dist/esm/index-BsJDptgj.js.map +1 -0
  339. package/dist/esm/{index-BnAYOYR5.js → index-C8kmD3tu.js} +3 -3
  340. package/dist/esm/{index-BnAYOYR5.js.map → index-C8kmD3tu.js.map} +1 -1
  341. package/dist/esm/{index-BVlbCQEX.js → index-kgGjfc-n.js} +1163 -1088
  342. package/dist/esm/index-kgGjfc-n.js.map +1 -0
  343. package/dist/esm/index.js +18 -12
  344. package/dist/esm/index.js.map +1 -1
  345. package/dist/esm/loader.js +4 -4
  346. package/dist/esm/{newsletter-helpers-fCpxzovf.js → newsletter-helpers-DoKGN_Kq.js} +46 -9
  347. package/dist/esm/newsletter-helpers-DoKGN_Kq.js.map +1 -0
  348. package/dist/esm/{newsletter-store-BB618FgS.js → newsletter-store-DpR85vaC.js} +5 -3
  349. package/dist/esm/newsletter-store-DpR85vaC.js.map +1 -0
  350. package/dist/esm/nl-BE-C8uPYb_H.js +540 -0
  351. package/dist/esm/nl-BE-C8uPYb_H.js.map +1 -0
  352. package/dist/esm/{profile-helpers-CXK2X6Ts.js → profile-helpers-BMJy0ei_.js} +4 -4
  353. package/dist/esm/{profile-helpers-CXK2X6Ts.js.map → profile-helpers-BMJy0ei_.js.map} +1 -1
  354. package/dist/esm/{profile-store-CHlSKuTY.js → profile-store-7wBS3gBH.js} +4 -4
  355. package/dist/esm/{profile-store-CHlSKuTY.js.map → profile-store-7wBS3gBH.js.map} +1 -1
  356. package/dist/esm/redirect-with-token-StCLJlSp.js +35 -0
  357. package/dist/esm/redirect-with-token-StCLJlSp.js.map +1 -0
  358. package/dist/esm/ro-BlDHz7d-.js +576 -0
  359. package/dist/esm/ro-BlDHz7d-.js.map +1 -0
  360. package/dist/esm/sdk.js +4 -4
  361. package/dist/esm/sv-B_Gq29K0.js +595 -0
  362. package/dist/esm/sv-B_Gq29K0.js.map +1 -0
  363. package/dist/esm/u-conditional-render.entry.js +14 -14
  364. package/dist/esm/u-conditional-render.entry.js.map +1 -1
  365. package/dist/esm/u-config.entry.js +24 -11
  366. package/dist/esm/u-config.entry.js.map +1 -1
  367. package/dist/esm/u-email-field.entry.js +7 -7
  368. package/dist/esm/u-error-message.entry.js +49 -22
  369. package/dist/esm/u-error-message.entry.js.map +1 -1
  370. package/dist/esm/u-field.u-raw-field.entry.js.map +1 -1
  371. package/dist/esm/u-field_2.entry.js +124 -12
  372. package/dist/esm/u-flash-message.entry.js +3 -3
  373. package/dist/esm/u-full-profile.entry.js +6 -6
  374. package/dist/esm/u-jump-to-service.entry.js +23 -44
  375. package/dist/esm/u-jump-to-service.entry.js.map +1 -1
  376. package/dist/esm/u-jump-to-unidy.entry.js +22 -43
  377. package/dist/esm/u-jump-to-unidy.entry.js.map +1 -1
  378. package/dist/esm/u-logout-button.u-signed-in.entry.js.map +1 -1
  379. package/dist/esm/u-logout-button_2.entry.js +15 -22
  380. package/dist/esm/u-magic-code-field.entry.js +8 -9
  381. package/dist/esm/u-magic-code-field.entry.js.map +1 -1
  382. package/dist/esm/u-missing-field.entry.js +6 -5
  383. package/dist/esm/u-missing-field.entry.js.map +1 -1
  384. package/dist/esm/u-missing-fields-submit-button.entry.js +16 -14
  385. package/dist/esm/u-missing-fields-submit-button.entry.js.map +1 -1
  386. package/dist/esm/u-newsletter-checkbox.entry.js +11 -12
  387. package/dist/esm/u-newsletter-checkbox.entry.js.map +1 -1
  388. package/dist/esm/u-newsletter-consent-checkbox.entry.js +4 -4
  389. package/dist/esm/u-newsletter-logout-button.entry.js +15 -20
  390. package/dist/esm/u-newsletter-logout-button.entry.js.map +1 -1
  391. package/dist/esm/u-newsletter-preference-checkbox.entry.js +11 -12
  392. package/dist/esm/u-newsletter-preference-checkbox.entry.js.map +1 -1
  393. package/dist/esm/u-newsletter-resend-doi-button.entry.js +10 -11
  394. package/dist/esm/u-newsletter-resend-doi-button.entry.js.map +1 -1
  395. package/dist/esm/u-newsletter-root.entry.js +42 -19
  396. package/dist/esm/u-newsletter-root.entry.js.map +1 -1
  397. package/dist/esm/u-newsletter-toggle-subscription-button.entry.js +11 -12
  398. package/dist/esm/u-newsletter-toggle-subscription-button.entry.js.map +1 -1
  399. package/dist/esm/u-pagination-button.entry.js +4 -4
  400. package/dist/esm/u-pagination-button.entry.js.map +1 -1
  401. package/dist/esm/u-pagination-page.entry.js +4 -4
  402. package/dist/esm/u-pagination-page.entry.js.map +1 -1
  403. package/dist/esm/u-passkey.entry.js +8 -9
  404. package/dist/esm/u-passkey.entry.js.map +1 -1
  405. package/dist/esm/u-password-field.entry.js +5 -5
  406. package/dist/esm/u-profile.u-submit-button.entry.js.map +1 -1
  407. package/dist/esm/u-profile_2.entry.js +31 -33
  408. package/dist/esm/u-registration-button.entry.js +5 -5
  409. package/dist/esm/u-reset-password-button.entry.js +12 -15
  410. package/dist/esm/u-reset-password-button.entry.js.map +1 -1
  411. package/dist/esm/u-send-magic-code-button.entry.js +8 -9
  412. package/dist/esm/u-send-magic-code-button.entry.js.map +1 -1
  413. package/dist/esm/u-signin-root.entry.js +6 -8
  414. package/dist/esm/u-signin-root.entry.js.map +1 -1
  415. package/dist/esm/u-signin-step.entry.js +17 -21
  416. package/dist/esm/u-signin-step.entry.js.map +1 -1
  417. package/dist/esm/u-social-login-button.entry.js +16 -15
  418. package/dist/esm/u-social-login-button.entry.js.map +1 -1
  419. package/dist/esm/u-spinner.entry.js +3 -3
  420. package/dist/esm/u-spinner.entry.js.map +1 -1
  421. package/dist/esm/u-ticketable-export.entry.js +74 -0
  422. package/dist/esm/u-ticketable-export.entry.js.map +1 -0
  423. package/dist/esm/u-ticketable-list-D2p21JjR.js +3981 -0
  424. package/dist/esm/u-ticketable-list-D2p21JjR.js.map +1 -0
  425. package/dist/esm/u-ticketable-list.entry.js +10 -6121
  426. package/dist/esm/u-ticketable-list.entry.js.map +1 -1
  427. package/dist/esm/{unidy-store-Bg7IaIMd.js → unidy-store-B5Bf4Vit.js} +3 -3
  428. package/dist/esm/{unidy-store-Bg7IaIMd.js.map → unidy-store-B5Bf4Vit.js.map} +1 -1
  429. package/dist/sdk/index.esm.js +1 -1
  430. package/dist/sdk/index.esm.js.map +1 -1
  431. package/dist/sdk/locales/de.json +16 -0
  432. package/dist/sdk/locales/en.json +16 -0
  433. package/dist/sdk/locales/fr.json +16 -0
  434. package/dist/sdk/locales/it.json +16 -0
  435. package/dist/sdk/locales/nl_be.json +16 -0
  436. package/dist/sdk/locales/ro.json +16 -0
  437. package/dist/sdk/p-02dce5da.entry.js +2 -0
  438. package/dist/sdk/p-02dce5da.entry.js.map +1 -0
  439. package/dist/sdk/p-043c7643.entry.js +2 -0
  440. package/dist/sdk/p-043c7643.entry.js.map +1 -0
  441. package/dist/sdk/p-18c17747.entry.js +2 -0
  442. package/dist/sdk/p-18c17747.entry.js.map +1 -0
  443. package/dist/sdk/p-1a1c1af0.entry.js +2 -0
  444. package/dist/sdk/p-1a1c1af0.entry.js.map +1 -0
  445. package/dist/sdk/p-271781c7.entry.js +2 -0
  446. package/dist/sdk/{p-1a8973a6.entry.js.map → p-271781c7.entry.js.map} +1 -1
  447. package/dist/sdk/p-29473a55.entry.js +2 -0
  448. package/dist/sdk/p-29473a55.entry.js.map +1 -0
  449. package/dist/sdk/p-2a25d62e.entry.js +2 -0
  450. package/dist/sdk/p-2a25d62e.entry.js.map +1 -0
  451. package/dist/sdk/{p-C8lRzJEX.js → p-2bKltz_F.js} +2 -2
  452. package/dist/sdk/{p-C8lRzJEX.js.map → p-2bKltz_F.js.map} +1 -1
  453. package/dist/sdk/p-2cc3a00d.entry.js +2 -0
  454. package/dist/sdk/p-2cc3a00d.entry.js.map +1 -0
  455. package/dist/sdk/p-2f49e0cb.entry.js +2 -0
  456. package/dist/sdk/p-2f49e0cb.entry.js.map +1 -0
  457. package/dist/sdk/p-34f5d201.entry.js +2 -0
  458. package/dist/sdk/p-34f5d201.entry.js.map +1 -0
  459. package/dist/sdk/p-52c4bdd9.entry.js +2 -0
  460. package/dist/sdk/p-52c4bdd9.entry.js.map +1 -0
  461. package/dist/sdk/p-585a0efa.entry.js +2 -0
  462. package/dist/sdk/p-585a0efa.entry.js.map +1 -0
  463. package/dist/sdk/p-60675019.entry.js +2 -0
  464. package/dist/sdk/p-60675019.entry.js.map +1 -0
  465. package/dist/sdk/p-79ef9a70.entry.js +2 -0
  466. package/dist/sdk/p-79ef9a70.entry.js.map +1 -0
  467. package/dist/sdk/p-7d88e21c.entry.js +2 -0
  468. package/dist/sdk/p-7d88e21c.entry.js.map +1 -0
  469. package/dist/sdk/p-7eaf3468.entry.js +2 -0
  470. package/dist/sdk/p-7eaf3468.entry.js.map +1 -0
  471. package/dist/sdk/{p-88beb872.entry.js → p-8412762c.entry.js} +2 -2
  472. package/dist/sdk/p-8ea70c08.entry.js +2 -0
  473. package/dist/sdk/p-8ea70c08.entry.js.map +1 -0
  474. package/dist/sdk/p-946cdb0a.entry.js +2 -0
  475. package/dist/sdk/p-946cdb0a.entry.js.map +1 -0
  476. package/dist/sdk/p-94bb0217.entry.js +2 -0
  477. package/dist/sdk/p-94bb0217.entry.js.map +1 -0
  478. package/dist/sdk/{p-bcca06f1.entry.js → p-96860b09.entry.js} +2 -2
  479. package/dist/sdk/p-B1A6Nu24.js +2 -0
  480. package/dist/sdk/p-B1A6Nu24.js.map +1 -0
  481. package/dist/sdk/p-B85MJLTf.js +2 -0
  482. package/dist/sdk/p-B85MJLTf.js.map +1 -0
  483. package/dist/sdk/p-B8N6Bwsa.js +2 -0
  484. package/dist/sdk/{p-DCG3L43i.js.map → p-B8N6Bwsa.js.map} +1 -1
  485. package/dist/sdk/p-Ba5szISo.js +2 -0
  486. package/dist/sdk/p-Ba5szISo.js.map +1 -0
  487. package/dist/sdk/p-BsJDptgj.js +14 -0
  488. package/dist/sdk/p-BsJDptgj.js.map +1 -0
  489. package/dist/sdk/{p-bpXpOZY_.js → p-C0Mo15qt.js} +2 -2
  490. package/dist/sdk/{p-bpXpOZY_.js.map → p-C0Mo15qt.js.map} +1 -1
  491. package/dist/sdk/p-C10MAuCE.js +2 -0
  492. package/dist/sdk/p-C10MAuCE.js.map +1 -0
  493. package/dist/sdk/p-CTy6pQSg.js +2 -0
  494. package/dist/sdk/p-CTy6pQSg.js.map +1 -0
  495. package/dist/sdk/p-CW6kGAuQ.js +2 -0
  496. package/dist/sdk/p-CW6kGAuQ.js.map +1 -0
  497. package/dist/sdk/{p-DdMKVWx8.js → p-CbSP8My1.js} +2 -2
  498. package/dist/sdk/{p-DdMKVWx8.js.map → p-CbSP8My1.js.map} +1 -1
  499. package/dist/sdk/p-CbzzI4uW.js +2 -0
  500. package/dist/sdk/p-CbzzI4uW.js.map +1 -0
  501. package/dist/sdk/p-CgT6fZjb.js +2 -0
  502. package/dist/sdk/p-CgT6fZjb.js.map +1 -0
  503. package/dist/sdk/p-CuHZ3IkE.js +2 -0
  504. package/dist/sdk/p-CuHZ3IkE.js.map +1 -0
  505. package/dist/sdk/p-Cysk_vik.js +2 -0
  506. package/dist/sdk/p-Cysk_vik.js.map +1 -0
  507. package/dist/sdk/p-D0ut3waq.js +2 -0
  508. package/dist/sdk/p-D0ut3waq.js.map +1 -0
  509. package/dist/sdk/{p-BigbTrKk.js → p-D2Rf-QGm.js} +2 -2
  510. package/dist/sdk/{p-BigbTrKk.js.map → p-D2Rf-QGm.js.map} +1 -1
  511. package/dist/sdk/{p-6rqGeAfT.js → p-D9yFO_ID.js} +2 -2
  512. package/dist/sdk/{p-6rqGeAfT.js.map → p-D9yFO_ID.js.map} +1 -1
  513. package/dist/sdk/p-DD_5soRi.js +2 -0
  514. package/dist/sdk/p-DD_5soRi.js.map +1 -0
  515. package/dist/sdk/p-DHuvvagO.js +2 -0
  516. package/dist/sdk/p-DHuvvagO.js.map +1 -0
  517. package/dist/sdk/p-DSMkJu9G.js +2 -0
  518. package/dist/sdk/p-DSMkJu9G.js.map +1 -0
  519. package/dist/sdk/p-DcirMfca.js +2 -0
  520. package/dist/sdk/p-DcirMfca.js.map +1 -0
  521. package/dist/sdk/p-J0cv5IOA.js +2 -0
  522. package/dist/sdk/p-J0cv5IOA.js.map +1 -0
  523. package/dist/sdk/p-_5evboqW.js +2 -0
  524. package/dist/sdk/{p-DSktNM_k.js.map → p-_5evboqW.js.map} +1 -1
  525. package/dist/sdk/{p-7ee2f2ab.entry.js → p-ac3a6bbf.entry.js} +2 -2
  526. package/dist/sdk/p-b498bcdd.entry.js +2 -0
  527. package/dist/sdk/p-b498bcdd.entry.js.map +1 -0
  528. package/dist/sdk/p-b5dd5b4c.entry.js +2 -0
  529. package/dist/sdk/p-b5dd5b4c.entry.js.map +1 -0
  530. package/dist/sdk/{p-6b061b18.entry.js → p-b99588a8.entry.js} +2 -2
  531. package/dist/sdk/p-bf9c27a8.entry.js +2 -0
  532. package/dist/sdk/p-bf9c27a8.entry.js.map +1 -0
  533. package/dist/sdk/p-c10d9b8e.entry.js +2 -0
  534. package/dist/sdk/p-c10d9b8e.entry.js.map +1 -0
  535. package/dist/sdk/{p-10e20afd.entry.js → p-c2634439.entry.js} +2 -2
  536. package/dist/sdk/p-d6777395.entry.js +2 -0
  537. package/dist/sdk/p-d6777395.entry.js.map +1 -0
  538. package/dist/sdk/p-dbfe7b29.entry.js +2 -0
  539. package/dist/sdk/p-dbfe7b29.entry.js.map +1 -0
  540. package/dist/sdk/p-def4e874.entry.js +2 -0
  541. package/dist/sdk/p-def4e874.entry.js.map +1 -0
  542. package/dist/sdk/p-e872a012.entry.js +2 -0
  543. package/dist/sdk/p-e872a012.entry.js.map +1 -0
  544. package/dist/sdk/p-eaaf3989.entry.js +2 -0
  545. package/dist/sdk/p-eaaf3989.entry.js.map +1 -0
  546. package/dist/sdk/p-fd46b459.entry.js +2 -0
  547. package/dist/sdk/{p-830778eb.entry.js.map → p-fd46b459.entry.js.map} +1 -1
  548. package/dist/sdk/sdk.esm.js +1 -1
  549. package/dist/sdk/u-conditional-render.entry.esm.js.map +1 -1
  550. package/dist/sdk/u-config.entry.esm.js.map +1 -1
  551. package/dist/sdk/u-error-message.entry.esm.js.map +1 -1
  552. package/dist/sdk/u-field.u-raw-field.entry.esm.js.map +1 -1
  553. package/dist/sdk/u-jump-to-service.entry.esm.js.map +1 -1
  554. package/dist/sdk/u-jump-to-unidy.entry.esm.js.map +1 -1
  555. package/dist/sdk/u-logout-button.u-signed-in.entry.esm.js.map +1 -1
  556. package/dist/sdk/u-magic-code-field.entry.esm.js.map +1 -1
  557. package/dist/sdk/u-missing-field.entry.esm.js.map +1 -1
  558. package/dist/sdk/u-missing-fields-submit-button.entry.esm.js.map +1 -1
  559. package/dist/sdk/u-newsletter-checkbox.entry.esm.js.map +1 -1
  560. package/dist/sdk/u-newsletter-logout-button.entry.esm.js.map +1 -1
  561. package/dist/sdk/u-newsletter-preference-checkbox.entry.esm.js.map +1 -1
  562. package/dist/sdk/u-newsletter-resend-doi-button.entry.esm.js.map +1 -1
  563. package/dist/sdk/u-newsletter-root.entry.esm.js.map +1 -1
  564. package/dist/sdk/u-newsletter-toggle-subscription-button.entry.esm.js.map +1 -1
  565. package/dist/sdk/u-pagination-button.entry.esm.js.map +1 -1
  566. package/dist/sdk/u-pagination-page.entry.esm.js.map +1 -1
  567. package/dist/sdk/u-passkey.entry.esm.js.map +1 -1
  568. package/dist/sdk/u-profile.u-submit-button.entry.esm.js.map +1 -1
  569. package/dist/sdk/u-reset-password-button.entry.esm.js.map +1 -1
  570. package/dist/sdk/u-send-magic-code-button.entry.esm.js.map +1 -1
  571. package/dist/sdk/u-signin-root.entry.esm.js.map +1 -1
  572. package/dist/sdk/u-signin-step.entry.esm.js.map +1 -1
  573. package/dist/sdk/u-social-login-button.entry.esm.js.map +1 -1
  574. package/dist/sdk/u-spinner.entry.esm.js.map +1 -1
  575. package/dist/sdk/u-ticketable-export.entry.esm.js.map +1 -0
  576. package/dist/sdk/u-ticketable-list.entry.esm.js.map +1 -1
  577. package/dist/types/api/client.d.ts +1 -1
  578. package/dist/types/api/index.d.ts +4 -4
  579. package/dist/types/api/standalone.d.ts +9 -9
  580. package/dist/types/auth/api/auth.d.ts +2 -3
  581. package/dist/types/auth/api/schemas.d.ts +19 -19
  582. package/dist/types/auth/auth-helpers.d.ts +1 -0
  583. package/dist/types/auth/components/jump-to-service/jump-to-service.d.ts +13 -5
  584. package/dist/types/auth/components/jump-to-unidy/jump-to-unidy.d.ts +13 -9
  585. package/dist/types/auth/components/logout-button/logout-button.d.ts +13 -4
  586. package/dist/types/auth/components/missing-field/missing-field.d.ts +1 -0
  587. package/dist/types/auth/components/missing-fields-submit-button/missing-fields-submit-button.d.ts +14 -2
  588. package/dist/types/auth/components/reset-pass-button/reset-pass-button.d.ts +13 -4
  589. package/dist/types/auth/components/social-logins/social-login-button.d.ts +11 -7
  590. package/dist/types/components.d.ts +73 -0
  591. package/dist/types/logger.d.ts +0 -34
  592. package/dist/types/newsletter/components/logout-button/logout-button.d.ts +13 -4
  593. package/dist/types/newsletter/components/newsletter-root/newsletter-root.d.ts +16 -2
  594. package/dist/types/newsletter/newsletter-helpers.d.ts +8 -2
  595. package/dist/types/newsletter/store/newsletter-store.d.ts +8 -1
  596. package/dist/types/profile/api/profile.d.ts +2 -2
  597. package/dist/types/profile/api/schemas.d.ts +21 -21
  598. package/dist/types/profile/components/raw-field/raw-field.d.ts +14 -2
  599. package/dist/types/shared/base/component.d.ts +46 -0
  600. package/dist/types/shared/base/has-slot-content.d.ts +10 -0
  601. package/dist/types/shared/component-utils.d.ts +20 -12
  602. package/dist/types/shared/components/conditional-render/conditional-render.d.ts +7 -2
  603. package/dist/types/shared/components/config/config.d.ts +7 -2
  604. package/dist/types/shared/components/error-message/error-message.d.ts +14 -2
  605. package/dist/types/shared/components/submit-button/submit-button.d.ts +13 -4
  606. package/dist/types/shared/context-utils.d.ts +73 -0
  607. package/dist/types/shared/utils/redirect-with-token.d.ts +21 -0
  608. package/dist/types/shared/utils/url-utils.d.ts +16 -0
  609. package/dist/types/ticketable/api/schemas.d.ts +16 -2
  610. package/dist/types/ticketable/api/subscriptions.d.ts +8 -3
  611. package/dist/types/ticketable/api/tickets.d.ts +8 -3
  612. package/dist/types/ticketable/components/pagination/pagination-button.d.ts +8 -4
  613. package/dist/types/ticketable/components/pagination/pagination-page.d.ts +8 -4
  614. package/dist/types/ticketable/components/ticketable-export/ticketable-export.d.ts +24 -0
  615. package/dist/types/ticketable/components/ticketable-list/ticketable-list.d.ts +10 -4
  616. package/dist/types/ticketable/index.d.ts +1 -0
  617. package/package.json +6 -2
  618. package/readme.md +248 -27
  619. package/dist/cjs/app-globals-hdkLqF51.js +0 -10
  620. package/dist/cjs/app-globals-hdkLqF51.js.map +0 -1
  621. package/dist/cjs/component-utils-bu3SY4dE.js +0 -42
  622. package/dist/cjs/component-utils-bu3SY4dE.js.map +0 -1
  623. package/dist/cjs/index-B325yXfO.js.map +0 -1
  624. package/dist/cjs/index-BzPYBLYC.js.map +0 -1
  625. package/dist/cjs/newsletter-helpers-hdDC5X-V.js.map +0 -1
  626. package/dist/cjs/newsletter-store-CupsLgO9.js.map +0 -1
  627. package/dist/cjs/pagination-store-zo48QpTm.js +0 -16
  628. package/dist/cjs/pagination-store-zo48QpTm.js.map +0 -1
  629. package/dist/components/pagination-store.js +0 -14
  630. package/dist/components/pagination-store.js.map +0 -1
  631. package/dist/esm/app-globals-iHhGdwBB.js +0 -8
  632. package/dist/esm/app-globals-iHhGdwBB.js.map +0 -1
  633. package/dist/esm/component-utils-BGq0leDV.js +0 -39
  634. package/dist/esm/component-utils-BGq0leDV.js.map +0 -1
  635. package/dist/esm/index-BVlbCQEX.js.map +0 -1
  636. package/dist/esm/index-FTKB5a1d.js.map +0 -1
  637. package/dist/esm/newsletter-helpers-fCpxzovf.js.map +0 -1
  638. package/dist/esm/newsletter-store-BB618FgS.js.map +0 -1
  639. package/dist/esm/pagination-store-DxmcQH8R.js +0 -14
  640. package/dist/esm/pagination-store-DxmcQH8R.js.map +0 -1
  641. package/dist/sdk/p-1a8973a6.entry.js +0 -2
  642. package/dist/sdk/p-35ad60ab.entry.js +0 -2
  643. package/dist/sdk/p-35ad60ab.entry.js.map +0 -1
  644. package/dist/sdk/p-3f352f38.entry.js +0 -2
  645. package/dist/sdk/p-3f352f38.entry.js.map +0 -1
  646. package/dist/sdk/p-468aaf62.entry.js +0 -2
  647. package/dist/sdk/p-468aaf62.entry.js.map +0 -1
  648. package/dist/sdk/p-4e2e6a13.entry.js +0 -2
  649. package/dist/sdk/p-4e2e6a13.entry.js.map +0 -1
  650. package/dist/sdk/p-57c8dc68.entry.js +0 -2
  651. package/dist/sdk/p-57c8dc68.entry.js.map +0 -1
  652. package/dist/sdk/p-594aec0c.entry.js +0 -2
  653. package/dist/sdk/p-594aec0c.entry.js.map +0 -1
  654. package/dist/sdk/p-60c8be64.entry.js +0 -2
  655. package/dist/sdk/p-60c8be64.entry.js.map +0 -1
  656. package/dist/sdk/p-760718d3.entry.js +0 -2
  657. package/dist/sdk/p-760718d3.entry.js.map +0 -1
  658. package/dist/sdk/p-77f541f3.entry.js +0 -2
  659. package/dist/sdk/p-77f541f3.entry.js.map +0 -1
  660. package/dist/sdk/p-830778eb.entry.js +0 -2
  661. package/dist/sdk/p-8839648e.entry.js +0 -2
  662. package/dist/sdk/p-8839648e.entry.js.map +0 -1
  663. package/dist/sdk/p-B6MYe-dh.js +0 -2
  664. package/dist/sdk/p-B6MYe-dh.js.map +0 -1
  665. package/dist/sdk/p-BGq0leDV.js +0 -2
  666. package/dist/sdk/p-BGq0leDV.js.map +0 -1
  667. package/dist/sdk/p-C_UZBwdm.js +0 -2
  668. package/dist/sdk/p-C_UZBwdm.js.map +0 -1
  669. package/dist/sdk/p-CbazSxaZ.js +0 -2
  670. package/dist/sdk/p-CbazSxaZ.js.map +0 -1
  671. package/dist/sdk/p-DCG3L43i.js +0 -2
  672. package/dist/sdk/p-DEUPZOH-.js +0 -2
  673. package/dist/sdk/p-DEUPZOH-.js.map +0 -1
  674. package/dist/sdk/p-DSktNM_k.js +0 -2
  675. package/dist/sdk/p-FTKB5a1d.js +0 -14
  676. package/dist/sdk/p-FTKB5a1d.js.map +0 -1
  677. package/dist/sdk/p-a7ffcff9.entry.js +0 -2
  678. package/dist/sdk/p-a7ffcff9.entry.js.map +0 -1
  679. package/dist/sdk/p-acaba1d5.entry.js +0 -2
  680. package/dist/sdk/p-acaba1d5.entry.js.map +0 -1
  681. package/dist/sdk/p-ae47a7a3.entry.js +0 -2
  682. package/dist/sdk/p-ae47a7a3.entry.js.map +0 -1
  683. package/dist/sdk/p-aec580e4.entry.js +0 -2
  684. package/dist/sdk/p-aec580e4.entry.js.map +0 -1
  685. package/dist/sdk/p-b63438ff.entry.js +0 -2
  686. package/dist/sdk/p-b63438ff.entry.js.map +0 -1
  687. package/dist/sdk/p-baaaa7f5.entry.js +0 -2
  688. package/dist/sdk/p-baaaa7f5.entry.js.map +0 -1
  689. package/dist/sdk/p-bba2da84.entry.js +0 -2
  690. package/dist/sdk/p-bba2da84.entry.js.map +0 -1
  691. package/dist/sdk/p-bc47f42b.entry.js +0 -2
  692. package/dist/sdk/p-bc47f42b.entry.js.map +0 -1
  693. package/dist/sdk/p-bd51e26f.entry.js +0 -2
  694. package/dist/sdk/p-bd51e26f.entry.js.map +0 -1
  695. package/dist/sdk/p-c3552f75.entry.js +0 -2
  696. package/dist/sdk/p-c3552f75.entry.js.map +0 -1
  697. package/dist/sdk/p-d9900482.entry.js +0 -2
  698. package/dist/sdk/p-d9900482.entry.js.map +0 -1
  699. package/dist/sdk/p-e6796c38.entry.js +0 -2
  700. package/dist/sdk/p-e6796c38.entry.js.map +0 -1
  701. package/dist/sdk/p-f272eb38.entry.js +0 -2
  702. package/dist/sdk/p-f272eb38.entry.js.map +0 -1
  703. package/dist/sdk/p-f4a47ef8.entry.js +0 -2
  704. package/dist/sdk/p-f4a47ef8.entry.js.map +0 -1
  705. package/dist/sdk/p-f608e64a.entry.js +0 -2
  706. package/dist/sdk/p-f608e64a.entry.js.map +0 -1
  707. package/dist/sdk/p-f762ac70.entry.js +0 -2
  708. package/dist/sdk/p-f762ac70.entry.js.map +0 -1
  709. package/dist/sdk/p-l6NinBiD.js +0 -2
  710. package/dist/sdk/p-l6NinBiD.js.map +0 -1
  711. /package/dist/sdk/{p-88beb872.entry.js.map → p-8412762c.entry.js.map} +0 -0
  712. /package/dist/sdk/{p-bcca06f1.entry.js.map → p-96860b09.entry.js.map} +0 -0
  713. /package/dist/sdk/{p-7ee2f2ab.entry.js.map → p-ac3a6bbf.entry.js.map} +0 -0
  714. /package/dist/sdk/{p-6b061b18.entry.js.map → p-b99588a8.entry.js.map} +0 -0
  715. /package/dist/sdk/{p-10e20afd.entry.js.map → p-c2634439.entry.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-yaeiYlfa.js');
3
+ var index = require('./index-C6ZBKFYr.js');
4
4
 
5
5
  const initialState = {
6
6
  mode: "production",
@@ -36,6 +36,6 @@ function waitForConfig() {
36
36
  exports.onChange = onChange;
37
37
  exports.unidyState = unidyState;
38
38
  exports.waitForConfig = waitForConfig;
39
- //# sourceMappingURL=unidy-store-BGnWn9pc.js.map
39
+ //# sourceMappingURL=unidy-store-Bvnl24i9.js.map
40
40
 
41
- //# sourceMappingURL=unidy-store-BGnWn9pc.js.map
41
+ //# sourceMappingURL=unidy-store-Bvnl24i9.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unidy-store-BGnWn9pc.js","sources":["src/shared/store/unidy-store.ts"],"sourcesContent":["import { createStore } from \"@stencil/store\";\n\nexport interface UnidyState {\n mode: \"production\" | \"development\";\n apiKey: string;\n baseUrl: string;\n locale: string;\n\n isConfigured: boolean;\n backendConnected: boolean;\n}\n\nconst initialState: UnidyState = {\n mode: \"production\",\n apiKey: \"\",\n baseUrl: \"\",\n locale: \"en\",\n\n isConfigured: false,\n backendConnected: true,\n};\n\nconst store = createStore<UnidyState>(initialState);\n\nexport const unidyState = store.state;\nexport const reset = store.reset;\nexport const onChange: <K extends keyof UnidyState>(prop: K, cb: (value: UnidyState[K]) => void) => () => void = store.onChange;\n\nconst CONFIG_TIMEOUT_MS = 1000;\n\nexport function waitForConfig(): Promise<void> {\n if (unidyState.isConfigured) {\n return Promise.resolve();\n }\n\n return new Promise((resolve, reject) => {\n const timeout = setTimeout(() => {\n unsubscribe();\n reject(new Error(`Unidy SDK: <u-config> not found or not loaded within ${CONFIG_TIMEOUT_MS}ms`));\n }, CONFIG_TIMEOUT_MS);\n\n const unsubscribe = onChange(\"isConfigured\", (value) => {\n if (value) {\n clearTimeout(timeout);\n unsubscribe();\n resolve();\n }\n });\n });\n}\n"],"names":["createStore"],"mappings":";;;;AAYA,MAAM,YAAY,GAAe;AAC/B,IAAA,IAAI,EAAE,YAAY;AAClB,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,OAAO,EAAE,EAAE;AACX,IAAA,MAAM,EAAE,IAAI;AAEZ,IAAA,YAAY,EAAE,KAAK;AACnB,IAAA,gBAAgB,EAAE,IAAI;CACvB;AAED,MAAM,KAAK,GAAGA,iBAAW,CAAa,YAAY,CAAC;AAEtC,MAAA,UAAU,GAAG,KAAK,CAAC;AAEnB,MAAA,QAAQ,GAA4F,KAAK,CAAC;AAEvH,MAAM,iBAAiB,GAAG,IAAI;SAEd,aAAa,GAAA;AAC3B,IAAA,IAAI,UAAU,CAAC,YAAY,EAAE;AAC3B,QAAA,OAAO,OAAO,CAAC,OAAO,EAAE;;IAG1B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAK;AAC9B,YAAA,WAAW,EAAE;YACb,MAAM,CAAC,IAAI,KAAK,CAAC,wDAAwD,iBAAiB,CAAA,EAAA,CAAI,CAAC,CAAC;SACjG,EAAE,iBAAiB,CAAC;QAErB,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,KAAI;YACrD,IAAI,KAAK,EAAE;gBACT,YAAY,CAAC,OAAO,CAAC;AACrB,gBAAA,WAAW,EAAE;AACb,gBAAA,OAAO,EAAE;;AAEb,SAAC,CAAC;AACJ,KAAC,CAAC;AACJ;;;;;;"}
1
+ {"version":3,"file":"unidy-store-Bvnl24i9.js","sources":["src/shared/store/unidy-store.ts"],"sourcesContent":["import { createStore } from \"@stencil/store\";\n\nexport interface UnidyState {\n mode: \"production\" | \"development\";\n apiKey: string;\n baseUrl: string;\n locale: string;\n\n isConfigured: boolean;\n backendConnected: boolean;\n}\n\nconst initialState: UnidyState = {\n mode: \"production\",\n apiKey: \"\",\n baseUrl: \"\",\n locale: \"en\",\n\n isConfigured: false,\n backendConnected: true,\n};\n\nconst store = createStore<UnidyState>(initialState);\n\nexport const unidyState = store.state;\nexport const reset = store.reset;\nexport const onChange: <K extends keyof UnidyState>(prop: K, cb: (value: UnidyState[K]) => void) => () => void = store.onChange;\n\nconst CONFIG_TIMEOUT_MS = 1000;\n\nexport function waitForConfig(): Promise<void> {\n if (unidyState.isConfigured) {\n return Promise.resolve();\n }\n\n return new Promise((resolve, reject) => {\n const timeout = setTimeout(() => {\n unsubscribe();\n reject(new Error(`Unidy SDK: <u-config> not found or not loaded within ${CONFIG_TIMEOUT_MS}ms`));\n }, CONFIG_TIMEOUT_MS);\n\n const unsubscribe = onChange(\"isConfigured\", (value) => {\n if (value) {\n clearTimeout(timeout);\n unsubscribe();\n resolve();\n }\n });\n });\n}\n"],"names":["createStore"],"mappings":";;;;AAYA,MAAM,YAAY,GAAe;AAC/B,IAAA,IAAI,EAAE,YAAY;AAClB,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,OAAO,EAAE,EAAE;AACX,IAAA,MAAM,EAAE,IAAI;AAEZ,IAAA,YAAY,EAAE,KAAK;AACnB,IAAA,gBAAgB,EAAE,IAAI;CACvB;AAED,MAAM,KAAK,GAAGA,iBAAW,CAAa,YAAY,CAAC;AAEtC,MAAA,UAAU,GAAG,KAAK,CAAC;AAEnB,MAAA,QAAQ,GAA4F,KAAK,CAAC;AAEvH,MAAM,iBAAiB,GAAG,IAAI;SAEd,aAAa,GAAA;AAC3B,IAAA,IAAI,UAAU,CAAC,YAAY,EAAE;AAC3B,QAAA,OAAO,OAAO,CAAC,OAAO,EAAE;;IAG1B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAK;AAC9B,YAAA,WAAW,EAAE;YACb,MAAM,CAAC,IAAI,KAAK,CAAC,wDAAwD,iBAAiB,CAAA,EAAA,CAAI,CAAC,CAAC;SACjG,EAAE,iBAAiB,CAAC;QAErB,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,KAAI;YACrD,IAAI,KAAK,EAAE;gBACT,YAAY,CAAC,OAAO,CAAC;AACrB,gBAAA,WAAW,EAAE;AACb,gBAAA,OAAO,EAAE;;AAEb,SAAC,CAAC;AACJ,KAAC,CAAC;AACJ;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"base-service.js","sourceRoot":"","sources":["../../src/api/base-service.ts"],"names":[],"mappings":"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","sourcesContent":["import * as z from \"zod\";\nimport type { ApiResponse, QueryParams } from \"./base-client\";\nimport { SchemaValidationErrorSchema, type SchemaValidationError } from \"./shared\";\n\n/**\n * Minimal logger interface that services depend on\n */\nexport interface Logger {\n // biome-ignore lint/suspicious/noExplicitAny: Logger accepts any args\n error: (...args: any[]) => void;\n // biome-ignore lint/suspicious/noExplicitAny: Logger accepts any args\n warn: (...args: any[]) => void;\n // biome-ignore lint/suspicious/noExplicitAny: Logger accepts any args\n info: (...args: any[]) => void;\n // biome-ignore lint/suspicious/noExplicitAny: Logger accepts any args\n debug: (...args: any[]) => void;\n}\n\n/**\n * Error reporter interface for capturing exceptions\n */\nexport interface ErrorReporter {\n captureException: (error: unknown, context?: Record<string, unknown>) => void;\n}\n\n/**\n * Dependencies that can be injected into services\n */\nexport interface ServiceDependencies {\n /** Logger instance - defaults to console */\n logger?: Logger;\n /** Error reporter (e.g., Sentry) - defaults to no-op */\n errorReporter?: ErrorReporter;\n /** Get the current ID token for authenticated requests */\n getIdToken?: () => Promise<string | null>;\n /** Get the current locale for i18n */\n getLocale?: () => string;\n}\n\n// Helper types for unified method interfaces\nexport type Payload<T> = { payload: T };\nexport type Options<T> = { options?: Partial<T> };\n\n/**\n * API Client interface that services depend on\n */\nexport interface ApiClientInterface {\n baseUrl: string;\n api_key: string;\n get<T>(endpoint: string, headers?: HeadersInit, params?: QueryParams): Promise<ApiResponse<T>>;\n post<T>(endpoint: string, body: object, headers?: HeadersInit): Promise<ApiResponse<T>>;\n patch<T>(endpoint: string, body: object, headers?: HeadersInit): Promise<ApiResponse<T>>;\n delete<T>(endpoint: string, headers?: HeadersInit): Promise<ApiResponse<T>>;\n}\n\nexport type CommonErrors =\n | [\"connection_failed\", null]\n | [\"schema_validation_error\", SchemaValidationError]\n | [\"internal_error\", null];\n\nexport type ServiceResult<TSuccess, TError extends string = never> =\n | CommonErrors\n | (TError extends never ? never : [TError, { error_identifier: string; [key: string]: unknown }])\n | [null, TSuccess];\n\n/** Default no-op error reporter */\nconst noopErrorReporter: ErrorReporter = {\n captureException: () => {},\n};\n\nexport abstract class BaseService {\n protected logger: Logger;\n protected errorReporter: ErrorReporter;\n protected getIdToken: () => Promise<string | null>;\n protected getLocale: () => string;\n\n constructor(\n protected client: ApiClientInterface,\n serviceName: string,\n deps?: ServiceDependencies,\n ) {\n // Use injected dependencies or defaults\n this.errorReporter = deps?.errorReporter ?? noopErrorReporter;\n this.getIdToken = deps?.getIdToken ?? (async () => null);\n this.getLocale = deps?.getLocale ?? (() => \"en\");\n\n // Use injected logger or create a prefixed console logger\n this.logger = deps?.logger ?? {\n error: (...args) => console.error(`[${serviceName}]`, ...args),\n warn: (...args) => console.warn(`[${serviceName}]`, ...args),\n info: (...args) => console.info(`[${serviceName}]`, ...args),\n debug: (...args) => console.debug(`[${serviceName}]`, ...args),\n };\n }\n\n protected handleResponse<T>(\n response: ApiResponse<unknown>,\n handler: () => T,\n ): T | [\"connection_failed\", null] | [\"schema_validation_error\", SchemaValidationError] | [\"internal_error\", null] {\n if (response.connectionError) {\n return [\"connection_failed\", null];\n }\n\n try {\n return handler();\n } catch (error) {\n // Only treat Zod errors as schema validation errors\n if (error instanceof z.ZodError) {\n this.logger.error(\"Schema validation error\", error);\n this.errorReporter.captureException(error);\n // Use safeParse to avoid throwing if response.data doesn't match the schema\n const parsed = SchemaValidationErrorSchema.safeParse(response.data);\n const schemaError: SchemaValidationError = parsed.success\n ? parsed.data\n : { error_identifier: \"schema_validation_error\", errors: [String(error)] };\n return [\"schema_validation_error\", schemaError];\n }\n\n // Non-Zod errors are internal errors (bugs) - don't mask them\n this.logger.error(\"Internal error in response handler\", error);\n this.errorReporter.captureException(error);\n return [\"internal_error\", null];\n }\n }\n\n protected buildAuthHeaders(headers: Record<string, string | undefined>): HeadersInit | undefined {\n const filtered = Object.entries(headers).reduce(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = value;\n }\n return acc;\n },\n {} as Record<string, string>,\n );\n\n return Object.keys(filtered).length > 0 ? filtered : undefined;\n }\n}\n"]}
1
+ {"version":3,"file":"base-service.js","sourceRoot":"","sources":["../../src/api/base-service.ts"],"names":[],"mappings":"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","sourcesContent":["import * as z from \"zod\";\nimport type { ApiResponse, QueryParams } from \"./base-client\";\nimport { type SchemaValidationError, SchemaValidationErrorSchema } from \"./shared\";\n\n/**\n * Minimal logger interface that services depend on\n */\nexport interface Logger {\n // biome-ignore lint/suspicious/noExplicitAny: Logger accepts any args\n error: (...args: any[]) => void;\n // biome-ignore lint/suspicious/noExplicitAny: Logger accepts any args\n warn: (...args: any[]) => void;\n // biome-ignore lint/suspicious/noExplicitAny: Logger accepts any args\n info: (...args: any[]) => void;\n // biome-ignore lint/suspicious/noExplicitAny: Logger accepts any args\n debug: (...args: any[]) => void;\n}\n\n/**\n * Error reporter interface for capturing exceptions\n */\nexport interface ErrorReporter {\n captureException: (error: unknown, context?: Record<string, unknown>) => void;\n}\n\n/**\n * Dependencies that can be injected into services\n */\nexport interface ServiceDependencies {\n /** Logger instance - defaults to console */\n logger?: Logger;\n /** Error reporter (e.g., Sentry) - defaults to no-op */\n errorReporter?: ErrorReporter;\n /** Get the current ID token for authenticated requests */\n getIdToken?: () => Promise<string | null>;\n /** Get the current locale for i18n */\n getLocale?: () => string;\n}\n\n// Helper types for unified method interfaces\nexport type Payload<T> = { payload: T };\nexport type Options<T> = { options?: Partial<T> };\n\n/**\n * API Client interface that services depend on\n */\nexport interface ApiClientInterface {\n baseUrl: string;\n api_key: string;\n get<T>(endpoint: string, headers?: HeadersInit, params?: QueryParams): Promise<ApiResponse<T>>;\n post<T>(endpoint: string, body: object, headers?: HeadersInit): Promise<ApiResponse<T>>;\n patch<T>(endpoint: string, body: object, headers?: HeadersInit): Promise<ApiResponse<T>>;\n delete<T>(endpoint: string, headers?: HeadersInit): Promise<ApiResponse<T>>;\n}\n\nexport type CommonErrors = [\"connection_failed\", null] | [\"schema_validation_error\", SchemaValidationError] | [\"internal_error\", null];\n\nexport type ServiceResult<TSuccess, TError extends string = never> =\n | CommonErrors\n | (TError extends never ? never : [TError, { error_identifier: string; [key: string]: unknown }])\n | [null, TSuccess];\n\n/** Default no-op error reporter */\nconst noopErrorReporter: ErrorReporter = {\n captureException: () => {},\n};\n\nexport abstract class BaseService {\n protected logger: Logger;\n protected errorReporter: ErrorReporter;\n protected getIdToken: () => Promise<string | null>;\n protected getLocale: () => string;\n\n constructor(\n protected client: ApiClientInterface,\n serviceName: string,\n deps?: ServiceDependencies,\n ) {\n // Use injected dependencies or defaults\n this.errorReporter = deps?.errorReporter ?? noopErrorReporter;\n this.getIdToken = deps?.getIdToken ?? (async () => null);\n this.getLocale = deps?.getLocale ?? (() => \"en\");\n\n // Use injected logger or create a prefixed console logger\n this.logger = deps?.logger ?? {\n error: (...args) => console.error(`[${serviceName}]`, ...args),\n warn: (...args) => console.warn(`[${serviceName}]`, ...args),\n info: (...args) => console.info(`[${serviceName}]`, ...args),\n debug: (...args) => console.debug(`[${serviceName}]`, ...args),\n };\n }\n\n protected handleResponse<T>(\n response: ApiResponse<unknown>,\n handler: () => T,\n ): T | [\"connection_failed\", null] | [\"schema_validation_error\", SchemaValidationError] | [\"internal_error\", null] {\n if (response.connectionError) {\n return [\"connection_failed\", null];\n }\n\n try {\n return handler();\n } catch (error) {\n // Only treat Zod errors as schema validation errors\n if (error instanceof z.ZodError) {\n this.logger.error(\"Schema validation error\", error);\n this.errorReporter.captureException(error);\n // Use safeParse to avoid throwing if response.data doesn't match the schema\n const parsed = SchemaValidationErrorSchema.safeParse(response.data);\n const schemaError: SchemaValidationError = parsed.success\n ? parsed.data\n : { error_identifier: \"schema_validation_error\", errors: [String(error)] };\n return [\"schema_validation_error\", schemaError];\n }\n\n // Non-Zod errors are internal errors (bugs) - don't mask them\n this.logger.error(\"Internal error in response handler\", error);\n this.errorReporter.captureException(error);\n return [\"internal_error\", null];\n }\n }\n\n protected buildAuthHeaders(headers: Record<string, string | undefined>): HeadersInit | undefined {\n const filtered = Object.entries(headers).reduce(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = value;\n }\n return acc;\n },\n {} as Record<string, string>,\n );\n\n return Object.keys(filtered).length > 0 ? filtered : undefined;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C;;GAEG;AACH,MAAM,OAAO,SAAU,SAAQ,aAAa;IAC1C,YAAY,OAAe,EAAE,MAAc,EAAE,kBAAmD;QAC9F,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACjD,CAAC;IAES,mBAAmB,CAAC,WAAoB;QAChD,KAAK,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACvC,UAAU,CAAC,gBAAgB,GAAG,WAAW,CAAC;IAC5C,CAAC;IAES,iBAAiB;QACzB,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,SAAS;SACvB,CAAC;IACJ,CAAC;IAES,qBAAqB,CAAC,KAAc,EAAE,QAAgB,EAAE,MAAc;QAC9E,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE;YAC7B,IAAI,EAAE,EAAE,UAAU,EAAE,kBAAkB,EAAE;YACxC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;SAC5B,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["import * as Sentry from \"@sentry/browser\";\nimport { unidyState } from \"../shared/store/unidy-store\";\nimport { BaseApiClient } from \"./base-client\";\n\n// Re-export types from base-client for backwards compatibility\nexport type { ApiResponse, ApiClientConfig, QueryParams } from \"./base-client\";\n\n/**\n * Browser-specific API client with CORS mode and Sentry error reporting.\n */\nexport class ApiClient extends BaseApiClient {\n constructor(baseUrl: string, apiKey: string, onConnectionChange?: (isConnected: boolean) => void) {\n super({ baseUrl, apiKey, onConnectionChange });\n }\n\n protected setConnectionStatus(isConnected: boolean): void {\n super.setConnectionStatus(isConnected);\n unidyState.backendConnected = isConnected;\n }\n\n protected getRequestOptions(): RequestInit {\n return {\n mode: \"cors\",\n credentials: \"include\",\n };\n }\n\n protected handleConnectionError(error: unknown, endpoint: string, method: string): void {\n Sentry.captureException(error, {\n tags: { error_type: \"connection_error\" },\n extra: { endpoint, method },\n });\n }\n}\n"]}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAK9C;;GAEG;AACH,MAAM,OAAO,SAAU,SAAQ,aAAa;IAC1C,YAAY,OAAe,EAAE,MAAc,EAAE,kBAAmD;QAC9F,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACjD,CAAC;IAES,mBAAmB,CAAC,WAAoB;QAChD,KAAK,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACvC,UAAU,CAAC,gBAAgB,GAAG,WAAW,CAAC;IAC5C,CAAC;IAES,iBAAiB;QACzB,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,SAAS;SACvB,CAAC;IACJ,CAAC;IAES,qBAAqB,CAAC,KAAc,EAAE,QAAgB,EAAE,MAAc;QAC9E,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE;YAC7B,IAAI,EAAE,EAAE,UAAU,EAAE,kBAAkB,EAAE;YACxC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;SAC5B,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["import * as Sentry from \"@sentry/browser\";\nimport { unidyState } from \"../shared/store/unidy-store\";\nimport { BaseApiClient } from \"./base-client\";\n\n// Re-export types from base-client for backwards compatibility\nexport type { ApiClientConfig, ApiResponse, QueryParams } from \"./base-client\";\n\n/**\n * Browser-specific API client with CORS mode and Sentry error reporting.\n */\nexport class ApiClient extends BaseApiClient {\n constructor(baseUrl: string, apiKey: string, onConnectionChange?: (isConnected: boolean) => void) {\n super({ baseUrl, apiKey, onConnectionChange });\n }\n\n protected setConnectionStatus(isConnected: boolean): void {\n super.setConnectionStatus(isConnected);\n unidyState.backendConnected = isConnected;\n }\n\n protected getRequestOptions(): RequestInit {\n return {\n mode: \"cors\",\n credentials: \"include\",\n };\n }\n\n protected handleConnectionError(error: unknown, endpoint: string, method: string): void {\n Sentry.captureException(error, {\n tags: { error_type: \"connection_error\" },\n extra: { endpoint, method },\n });\n }\n}\n"]}
@@ -1,20 +1,20 @@
1
1
  import * as Sentry from "@sentry/browser";
2
- import { ApiClient } from "./client";
3
2
  import { AuthService } from "../auth/api/auth";
3
+ import { Auth } from "../auth/auth";
4
+ import { createLogger } from "../logger";
4
5
  import { NewsletterService } from "../newsletter";
5
6
  import { ProfileService } from "../profile";
6
7
  import { unidyState } from "../shared/store/unidy-store";
7
8
  import { SubscriptionsService, TicketsService } from "../ticketable";
8
- import { createLogger } from "../logger";
9
- import { Auth } from "../auth/auth";
9
+ import { ApiClient } from "./client";
10
10
  export * from "../auth/api/auth";
11
11
  export * from "../newsletter/api/newsletters";
12
12
  export * from "../profile/api/profile";
13
- export * from "./shared";
14
- export * from "./base-service";
15
13
  export * from "../ticketable/api/subscriptions";
16
14
  export * from "../ticketable/api/tickets";
17
- export { StandaloneApiClient, StandaloneUnidyClient, createStandaloneClient } from "./standalone";
15
+ export * from "./base-service";
16
+ export * from "./shared";
17
+ export { createStandaloneClient, StandaloneApiClient, StandaloneUnidyClient } from "./standalone";
18
18
  /** Default browser dependencies using Sentry and the SDK logger */
19
19
  function createBrowserDeps(serviceName) {
20
20
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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","sourcesContent":["import * as Sentry from \"@sentry/browser\";\nimport { ApiClient, ApiResponse } from \"./client\";\nimport { AuthService } from \"../auth/api/auth\";\nimport { NewsletterService } from \"../newsletter\";\nimport { ProfileService } from \"../profile\";\nimport { unidyState } from \"../shared/store/unidy-store\";\nimport { SubscriptionsService, TicketsService } from \"../ticketable\";\nimport { createLogger } from \"../logger\";\nimport type { ServiceDependencies } from \"./base-service\";\nimport { Auth } from \"../auth/auth\";\n\nexport * from \"../auth/api/auth\";\nexport * from \"../newsletter/api/newsletters\";\nexport * from \"../profile/api/profile\";\nexport * from \"./shared\";\nexport * from \"./base-service\";\nexport * from \"../ticketable/api/subscriptions\";\nexport * from \"../ticketable/api/tickets\";\nexport { StandaloneApiClient, StandaloneUnidyClient, createStandaloneClient } from \"./standalone\";\nexport type { StandaloneUnidyClientConfig } from \"./standalone\";\n\n/** Default browser dependencies using Sentry and the SDK logger */\nfunction createBrowserDeps(serviceName: string): ServiceDependencies {\n return {\n logger: createLogger(serviceName),\n errorReporter: {\n captureException: (error, context) => Sentry.captureException(error, { extra: context }),\n },\n getIdToken: async () => {\n const auth = await Auth.getInstance();\n const token = await auth.getToken();\n return typeof token === \"string\" ? token : null;\n },\n getLocale: () => unidyState.locale,\n };\n}\n\nexport class UnidyClient {\n private apiClient: ApiClient;\n\n newsletters: NewsletterService;\n profile: ProfileService;\n auth: AuthService;\n tickets: TicketsService;\n subscriptions: SubscriptionsService;\n\n constructor(baseUrl: string, apiKey: string) {\n this.apiClient = new ApiClient(baseUrl, apiKey);\n\n // Initialize services with browser-specific dependencies\n this.newsletters = new NewsletterService(this.apiClient, createBrowserDeps(\"NewsletterService\"));\n this.profile = new ProfileService(this.apiClient, createBrowserDeps(\"ProfileService\"));\n this.auth = new AuthService(this.apiClient, createBrowserDeps(\"AuthService\"));\n this.tickets = new TicketsService(this.apiClient, createBrowserDeps(\"TicketsService\"));\n this.subscriptions = new SubscriptionsService(this.apiClient, createBrowserDeps(\"SubscriptionsService\"));\n }\n}\n\nlet instance: UnidyClient | null = null;\n\nfunction getUnidyClient(): UnidyClient {\n if (!unidyState.isConfigured) {\n throw new Error(\n \"Config not initialized. Ensure <u-config> is loaded before making API calls by using waitForConfig() to wait for initialization.\",\n );\n }\n\n if (!instance) {\n instance = new UnidyClient(unidyState.baseUrl, unidyState.apiKey);\n }\n\n return instance;\n}\n\nexport { getUnidyClient, ApiClient, ApiResponse };\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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","sourcesContent":["import * as Sentry from \"@sentry/browser\";\nimport { AuthService } from \"../auth/api/auth\";\nimport { Auth } from \"../auth/auth\";\nimport { createLogger } from \"../logger\";\nimport { NewsletterService } from \"../newsletter\";\nimport { ProfileService } from \"../profile\";\nimport { unidyState } from \"../shared/store/unidy-store\";\nimport { SubscriptionsService, TicketsService } from \"../ticketable\";\nimport type { ServiceDependencies } from \"./base-service\";\nimport { ApiClient, ApiResponse } from \"./client\";\n\nexport * from \"../auth/api/auth\";\nexport * from \"../newsletter/api/newsletters\";\nexport * from \"../profile/api/profile\";\nexport * from \"../ticketable/api/subscriptions\";\nexport * from \"../ticketable/api/tickets\";\nexport * from \"./base-service\";\nexport * from \"./shared\";\nexport type { StandaloneUnidyClientConfig } from \"./standalone\";\nexport { createStandaloneClient, StandaloneApiClient, StandaloneUnidyClient } from \"./standalone\";\n\n/** Default browser dependencies using Sentry and the SDK logger */\nfunction createBrowserDeps(serviceName: string): ServiceDependencies {\n return {\n logger: createLogger(serviceName),\n errorReporter: {\n captureException: (error, context) => Sentry.captureException(error, { extra: context }),\n },\n getIdToken: async () => {\n const auth = await Auth.getInstance();\n const token = await auth.getToken();\n return typeof token === \"string\" ? token : null;\n },\n getLocale: () => unidyState.locale,\n };\n}\n\nexport class UnidyClient {\n private apiClient: ApiClient;\n\n newsletters: NewsletterService;\n profile: ProfileService;\n auth: AuthService;\n tickets: TicketsService;\n subscriptions: SubscriptionsService;\n\n constructor(baseUrl: string, apiKey: string) {\n this.apiClient = new ApiClient(baseUrl, apiKey);\n\n // Initialize services with browser-specific dependencies\n this.newsletters = new NewsletterService(this.apiClient, createBrowserDeps(\"NewsletterService\"));\n this.profile = new ProfileService(this.apiClient, createBrowserDeps(\"ProfileService\"));\n this.auth = new AuthService(this.apiClient, createBrowserDeps(\"AuthService\"));\n this.tickets = new TicketsService(this.apiClient, createBrowserDeps(\"TicketsService\"));\n this.subscriptions = new SubscriptionsService(this.apiClient, createBrowserDeps(\"SubscriptionsService\"));\n }\n}\n\nlet instance: UnidyClient | null = null;\n\nfunction getUnidyClient(): UnidyClient {\n if (!unidyState.isConfigured) {\n throw new Error(\n \"Config not initialized. Ensure <u-config> is loaded before making API calls by using waitForConfig() to wait for initialization.\",\n );\n }\n\n if (!instance) {\n instance = new UnidyClient(unidyState.baseUrl, unidyState.apiKey);\n }\n\n return instance;\n}\n\nexport { getUnidyClient, ApiClient, ApiResponse };\n"]}
@@ -5051,7 +5051,7 @@ var BaseFieldDataSchema = object({
5051
5051
  label: string2(),
5052
5052
  attr_name: string2(),
5053
5053
  locked: boolean2().optional(),
5054
- locked_text: string2().optional()
5054
+ locked_text: string2().nullish()
5055
5055
  }).strict();
5056
5056
  var SelectOptionSchema = object({
5057
5057
  value: string2(),
@@ -7168,7 +7168,7 @@ var createStore = (defaultState, shouldUpdate) => {
7168
7168
 
7169
7169
  // src/profile/store/profile-store.ts
7170
7170
  var initialState = {
7171
- loading: true,
7171
+ loading: false,
7172
7172
  data: {},
7173
7173
  configuration: {},
7174
7174
  errors: {},
@@ -7194,7 +7194,7 @@ var CreateSignInResponseSchema = object({
7194
7194
  var ErrorSchema = BaseErrorSchema;
7195
7195
  var SendMagicCodeResponseSchema = object({
7196
7196
  enable_resend_after: number2(),
7197
- sid: string2().optional(),
7197
+ sid: string2().nullish(),
7198
7198
  login_options: object({
7199
7199
  magic_link: boolean2()
7200
7200
  }).optional()
@@ -7204,7 +7204,7 @@ var SendMagicCodeErrorSchema = BaseErrorSchema.extend({
7204
7204
  });
7205
7205
  var TokenResponseSchema = object({
7206
7206
  jwt: string2(),
7207
- sid: string2().optional()
7207
+ sid: string2().nullish()
7208
7208
  });
7209
7209
  var RequiredFieldsResponseSchema = object({
7210
7210
  error_identifier: literal("missing_required_fields"),
@@ -7212,7 +7212,7 @@ var RequiredFieldsResponseSchema = object({
7212
7212
  fields: UserProfileSchema.omit({ custom_attributes: true }).partial().extend({
7213
7213
  custom_attributes: UserProfileSchema.shape.custom_attributes?.optional()
7214
7214
  }),
7215
- sid: string2().optional()
7215
+ sid: string2().nullish()
7216
7216
  })
7217
7217
  }).transform(({ error_identifier, meta: meta2 }) => ({
7218
7218
  error_identifier,
@@ -7249,8 +7249,8 @@ var JumpToUnidyErrorSchema = object({
7249
7249
  });
7250
7250
  var JumpToServiceRequestSchema = object({
7251
7251
  email: string2(),
7252
- redirect_uri: string2().optional(),
7253
- scopes: array(string2()).optional(),
7252
+ redirect_uri: string2().nullish(),
7253
+ scopes: array(string2()).nullish(),
7254
7254
  skip_oauth_authorization: boolean2().optional()
7255
7255
  });
7256
7256
  var JumpToUnidyRequestSchema = object({
@@ -7632,27 +7632,27 @@ class NewsletterService extends BaseService {
7632
7632
  const headers = await this.buildNewsletterAuthHeaders(options);
7633
7633
  const response = await this.client.post("/api/sdk/v1/newsletters/newsletter_subscription", payload, headers);
7634
7634
  return this.handleResponse(response, () => {
7635
- if (!response.success) {
7636
- const parsed = NewsletterErrorResponseSchema.safeParse(response.data);
7637
- const error2 = parsed.success ? parsed.data : { error_identifier: "unknown_error" };
7638
- switch (response.status) {
7639
- case 401:
7640
- return ["unauthorized", error2];
7641
- case 429:
7642
- this.logger.warn("Rate limit exceeded");
7643
- return ["rate_limit_exceeded", error2];
7644
- case 500:
7645
- this.errorReporter.captureException(response);
7646
- return ["server_error", error2];
7647
- default:
7648
- return ["server_error", error2];
7635
+ if (response.success || response.status === 422) {
7636
+ const data = CreateSubscriptionsResponseSchema.parse(response.data);
7637
+ if (data.errors.length > 0) {
7638
+ return ["newsletter_error", data];
7649
7639
  }
7640
+ return [null, data];
7650
7641
  }
7651
- const data = CreateSubscriptionsResponseSchema.parse(response.data);
7652
- if (data.errors.length > 0) {
7653
- return ["newsletter_error", data];
7642
+ const parsed = NewsletterErrorResponseSchema.safeParse(response.data);
7643
+ const error2 = parsed.success ? parsed.data : { error_identifier: "unknown_error" };
7644
+ switch (response.status) {
7645
+ case 401:
7646
+ return ["unauthorized", error2];
7647
+ case 429:
7648
+ this.logger.warn("Rate limit exceeded");
7649
+ return ["rate_limit_exceeded", error2];
7650
+ case 500:
7651
+ this.errorReporter.captureException(response);
7652
+ return ["server_error", error2];
7653
+ default:
7654
+ return ["server_error", error2];
7654
7655
  }
7655
- return [null, data];
7656
7656
  });
7657
7657
  }
7658
7658
  async list(args) {
@@ -7821,11 +7821,16 @@ class NewsletterService extends BaseService {
7821
7821
  }
7822
7822
 
7823
7823
  // src/ticketable/api/schemas.ts
7824
+ var ExportFormat = _enum(["pdf", "pkpass"]);
7825
+ var ExportLinkResponseSchema = object({
7826
+ url: string2().url(),
7827
+ expires_in: number2()
7828
+ });
7824
7829
  var TicketableListParamsSchema = object({
7825
7830
  page: number2().int().positive().optional(),
7826
7831
  perPage: number2().int().positive().max(250).optional(),
7827
- state: string2().optional(),
7828
- paymentState: string2().optional(),
7832
+ state: string2().nullish(),
7833
+ paymentState: string2().nullish(),
7829
7834
  orderBy: _enum(["starts_at", "ends_at", "reference", "created_at"]).optional(),
7830
7835
  orderDirection: _enum(["asc", "desc"]).optional(),
7831
7836
  serviceId: number2().int().positive().optional()
@@ -7839,6 +7844,7 @@ var TicketSchema = object({
7839
7844
  reference: string2(),
7840
7845
  metadata: record(string2(), unknown()).nullable(),
7841
7846
  wallet_export: record(string2(), unknown()).nullable(),
7847
+ exportable_to_wallet: boolean2(),
7842
7848
  state: string2(),
7843
7849
  payment_state: string2().nullable(),
7844
7850
  button_cta_url: string2().nullable(),
@@ -7865,6 +7871,7 @@ var SubscriptionSchema = object({
7865
7871
  payment_frequency: string2().nullable(),
7866
7872
  metadata: record(string2(), unknown()).nullable(),
7867
7873
  wallet_export: record(string2(), unknown()).nullable(),
7874
+ exportable_to_wallet: boolean2(),
7868
7875
  state: string2(),
7869
7876
  reference: string2(),
7870
7877
  payment_state: string2().nullable(),
@@ -7960,33 +7967,75 @@ class TicketableService extends BaseService {
7960
7967
  }
7961
7968
  }
7962
7969
 
7963
- // src/ticketable/api/tickets.ts
7964
- class TicketsService extends TicketableService {
7970
+ // src/ticketable/api/subscriptions.ts
7971
+ class SubscriptionsService extends TicketableService {
7965
7972
  constructor(client, deps) {
7966
- super(client, "TicketsService", deps);
7973
+ super(client, "SubscriptionsService", deps);
7967
7974
  }
7968
7975
  async list(args = {}) {
7969
- const params = this.buildListParams(args, "ticket_category_id", args.ticketCategoryId);
7976
+ const params = this.buildListParams(args, "subscription_category_id", args.subscriptionCategoryId);
7970
7977
  const queryString = this.toQueryString(params);
7971
- return this.handleList("/api/sdk/v1/tickets", queryString, TicketsListResponseSchema, "tickets", args);
7978
+ return this.handleList("/api/sdk/v1/subscriptions", queryString, SubscriptionsListResponseSchema, "subscriptions", args);
7972
7979
  }
7973
7980
  async get(args) {
7974
- return this.handleGet(`/api/sdk/v1/tickets/${args.id}`, TicketSchema, "ticket");
7981
+ return this.handleGet(`/api/sdk/v1/subscriptions/${args.id}`, SubscriptionSchema, "subscription");
7982
+ }
7983
+ async getExportLink(args) {
7984
+ const idToken = await this.getIdToken();
7985
+ if (!idToken) {
7986
+ return ["missing_id_token", null];
7987
+ }
7988
+ const response = await this.client.post(`/api/sdk/v1/subscriptions/${args.id}/export_link`, { format: args.format }, this.buildAuthHeaders({ "X-ID-Token": idToken }));
7989
+ return this.handleResponse(response, () => {
7990
+ if (!response.success) {
7991
+ if (response.status === 401 || response.status === 403) {
7992
+ return ["unauthorized", null];
7993
+ }
7994
+ return ["server_error", null];
7995
+ }
7996
+ const parsed = ExportLinkResponseSchema.safeParse(response.data);
7997
+ if (!parsed.success) {
7998
+ this.logger.error("Invalid export link response", parsed.error);
7999
+ return ["invalid_response", null];
8000
+ }
8001
+ return [null, parsed.data];
8002
+ });
7975
8003
  }
7976
8004
  }
7977
8005
 
7978
- // src/ticketable/api/subscriptions.ts
7979
- class SubscriptionsService extends TicketableService {
8006
+ // src/ticketable/api/tickets.ts
8007
+ class TicketsService extends TicketableService {
7980
8008
  constructor(client, deps) {
7981
- super(client, "SubscriptionsService", deps);
8009
+ super(client, "TicketsService", deps);
7982
8010
  }
7983
8011
  async list(args = {}) {
7984
- const params = this.buildListParams(args, "subscription_category_id", args.subscriptionCategoryId);
8012
+ const params = this.buildListParams(args, "ticket_category_id", args.ticketCategoryId);
7985
8013
  const queryString = this.toQueryString(params);
7986
- return this.handleList("/api/sdk/v1/subscriptions", queryString, SubscriptionsListResponseSchema, "subscriptions", args);
8014
+ return this.handleList("/api/sdk/v1/tickets", queryString, TicketsListResponseSchema, "tickets", args);
7987
8015
  }
7988
8016
  async get(args) {
7989
- return this.handleGet(`/api/sdk/v1/subscriptions/${args.id}`, SubscriptionSchema, "subscription");
8017
+ return this.handleGet(`/api/sdk/v1/tickets/${args.id}`, TicketSchema, "ticket");
8018
+ }
8019
+ async getExportLink(args) {
8020
+ const idToken = await this.getIdToken();
8021
+ if (!idToken) {
8022
+ return ["missing_id_token", null];
8023
+ }
8024
+ const response = await this.client.post(`/api/sdk/v1/tickets/${args.id}/export_link`, { format: args.format }, this.buildAuthHeaders({ "X-ID-Token": idToken }));
8025
+ return this.handleResponse(response, () => {
8026
+ if (!response.success) {
8027
+ if (response.status === 401 || response.status === 403) {
8028
+ return ["unauthorized", null];
8029
+ }
8030
+ return ["server_error", null];
8031
+ }
8032
+ const parsed = ExportLinkResponseSchema.safeParse(response.data);
8033
+ if (!parsed.success) {
8034
+ this.logger.error("Invalid export link response", parsed.error);
8035
+ return ["invalid_response", null];
8036
+ }
8037
+ return [null, parsed.data];
8038
+ });
7990
8039
  }
7991
8040
  }
7992
8041
 
@@ -1 +1 @@
1
- {"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../src/api/standalone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAG9C;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,4BAA4B;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAmBvE;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,mBAAoB,SAAQ,aAAa;IAC1C,iBAAiB;QACzB,oDAAoD;QACpD,OAAO,EAAE,CAAC;IACZ,CAAC;IAES,qBAAqB,CAAC,MAAe,EAAE,SAAiB,EAAE,OAAe;QACjF,kGAAkG;IACpG,CAAC;CACF;AA6BD,MAAM,OAAO,qBAAqB;IACzB,IAAI,CAAc;IAClB,WAAW,CAAoB;IAC/B,OAAO,CAAiB;IACxB,OAAO,CAAiB;IACxB,aAAa,CAAuB;IAE3C,YAAY,MAAmC;QAC7C,MAAM,SAAS,GAAG,IAAI,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAEzB,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,IAAI,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;CACF;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAmC;IACxE,OAAO,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC","sourcesContent":["import { AuthService } from \"../auth/api/auth\";\nimport { NewsletterService } from \"../newsletter/api/newsletters\";\nimport { ProfileService } from \"../profile/api/profile\";\nimport { TicketsService } from \"../ticketable/api/tickets\";\nimport { SubscriptionsService } from \"../ticketable/api/subscriptions\";\nimport { BaseApiClient } from \"./base-client\";\nimport type { ServiceDependencies } from \"./base-service\";\n\n/**\n * Standalone API client and services for use outside of Stencil components.\n * This module can be used in Node.js or any other JavaScript environment.\n *\n * @example\n * ```typescript\n * import {\n * StandaloneApiClient,\n * AuthService,\n * NewsletterService,\n * } from '@unidy.io/sdk/standalone';\n *\n * // Create the API client\n * const client = new StandaloneApiClient({\n * baseUrl: 'https://api.unidy.io',\n * apiKey: 'your-api-key',\n * });\n *\n * // Create services with optional custom logger/error reporter\n * const auth = new AuthService(client, {\n * logger: console,\n * errorReporter: { captureException: (e) => myErrorTracker.capture(e) },\n * });\n *\n * // Use the services\n * const result = await auth.createSignIn({ payload: { email: 'user@example.com' } });\n * ```\n */\n\n// Re-export service classes\nexport { AuthService } from \"../auth/api/auth\";\nexport { NewsletterService } from \"../newsletter/api/newsletters\";\nexport { ProfileService } from \"../profile/api/profile\";\nexport { TicketsService } from \"../ticketable/api/tickets\";\nexport { SubscriptionsService } from \"../ticketable/api/subscriptions\";\n\n// Re-export types\nexport type * from \"../auth/api/auth\";\nexport type * from \"../newsletter/api/newsletters\";\nexport type * from \"../profile/api/profile\";\nexport type * from \"../ticketable/api/tickets\";\nexport type * from \"../ticketable/api/subscriptions\";\nexport type { SchemaValidationError, PaginationMeta, PaginationParams } from \"./shared\";\nexport type {\n CommonErrors,\n ServiceResult,\n Logger,\n ErrorReporter,\n ServiceDependencies,\n ApiClientInterface,\n} from \"./base-service\";\nexport type { ApiResponse, ApiClientConfig, QueryParams } from \"./base-client\";\n\n/**\n * Standalone API client without browser-specific dependencies.\n *\n * This client provides the same interface as the browser ApiClient but without\n * dependencies on Sentry, i18n, localStorage, or other browser APIs.\n *\n * @example\n * ```typescript\n * import { StandaloneApiClient, AuthService } from '@unidy.io/sdk/standalone';\n *\n * const client = new StandaloneApiClient({\n * baseUrl: 'https://api.unidy.io',\n * apiKey: 'your-api-key',\n * });\n *\n * const auth = new AuthService(client);\n * const result = await auth.createSignIn({ payload: { email: 'user@example.com' } });\n * ```\n */\nexport class StandaloneApiClient extends BaseApiClient {\n protected getRequestOptions(): RequestInit {\n // No browser-specific options for standalone client\n return {};\n }\n\n protected handleConnectionError(_error: unknown, _endpoint: string, _method: string): void {\n // No-op for standalone client - users can inject their own error reporter via ServiceDependencies\n }\n}\n\nimport type { ApiClientConfig } from \"./base-client\";\n\n/**\n * Creates a standalone Unidy client with all services for use outside of Stencil.\n *\n * @example\n * ```typescript\n * import { createStandaloneClient } from '@unidy.io/sdk/standalone';\n *\n * const client = createStandaloneClient({\n * baseUrl: 'https://api.unidy.io',\n * apiKey: 'your-api-key',\n * // Optional: inject custom dependencies\n * deps: {\n * logger: myLogger,\n * errorReporter: { captureException: (e) => Sentry.captureException(e) },\n * },\n * });\n *\n * const signIn = await client.auth.createSignIn({ payload: { email: 'user@example.com' } });\n * ```\n */\nexport interface StandaloneUnidyClientConfig extends ApiClientConfig {\n /** Optional dependencies to inject into all services */\n deps?: ServiceDependencies;\n}\n\nexport class StandaloneUnidyClient {\n public auth: AuthService;\n public newsletters: NewsletterService;\n public profile: ProfileService;\n public tickets: TicketsService;\n public subscriptions: SubscriptionsService;\n\n constructor(config: StandaloneUnidyClientConfig) {\n const apiClient = new StandaloneApiClient(config);\n const deps = config.deps;\n\n this.auth = new AuthService(apiClient, deps);\n this.newsletters = new NewsletterService(apiClient, deps);\n this.profile = new ProfileService(apiClient, deps);\n this.tickets = new TicketsService(apiClient, deps);\n this.subscriptions = new SubscriptionsService(apiClient, deps);\n }\n}\n\nexport function createStandaloneClient(config: StandaloneUnidyClientConfig): StandaloneUnidyClient {\n return new StandaloneUnidyClient(config);\n}\n"]}
1
+ {"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../src/api/standalone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAkC9C,4BAA4B;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAY3D;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,mBAAoB,SAAQ,aAAa;IAC1C,iBAAiB;QACzB,oDAAoD;QACpD,OAAO,EAAE,CAAC;IACZ,CAAC;IAES,qBAAqB,CAAC,MAAe,EAAE,SAAiB,EAAE,OAAe;QACjF,kGAAkG;IACpG,CAAC;CACF;AA6BD,MAAM,OAAO,qBAAqB;IACzB,IAAI,CAAc;IAClB,WAAW,CAAoB;IAC/B,OAAO,CAAiB;IACxB,OAAO,CAAiB;IACxB,aAAa,CAAuB;IAE3C,YAAY,MAAmC;QAC7C,MAAM,SAAS,GAAG,IAAI,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAEzB,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,IAAI,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;CACF;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAmC;IACxE,OAAO,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC","sourcesContent":["import { AuthService } from \"../auth/api/auth\";\nimport { NewsletterService } from \"../newsletter/api/newsletters\";\nimport { ProfileService } from \"../profile/api/profile\";\nimport { SubscriptionsService } from \"../ticketable/api/subscriptions\";\nimport { TicketsService } from \"../ticketable/api/tickets\";\nimport { BaseApiClient } from \"./base-client\";\nimport type { ServiceDependencies } from \"./base-service\";\n\n/**\n * Standalone API client and services for use outside of Stencil components.\n * This module can be used in Node.js or any other JavaScript environment.\n *\n * @example\n * ```typescript\n * import {\n * StandaloneApiClient,\n * AuthService,\n * NewsletterService,\n * } from '@unidy.io/sdk/standalone';\n *\n * // Create the API client\n * const client = new StandaloneApiClient({\n * baseUrl: 'https://api.unidy.io',\n * apiKey: 'your-api-key',\n * });\n *\n * // Create services with optional custom logger/error reporter\n * const auth = new AuthService(client, {\n * logger: console,\n * errorReporter: { captureException: (e) => myErrorTracker.capture(e) },\n * });\n *\n * // Use the services\n * const result = await auth.createSignIn({ payload: { email: 'user@example.com' } });\n * ```\n */\n\n// Re-export types\nexport type * from \"../auth/api/auth\";\n// Re-export service classes\nexport { AuthService } from \"../auth/api/auth\";\nexport type * from \"../newsletter/api/newsletters\";\nexport { NewsletterService } from \"../newsletter/api/newsletters\";\nexport type * from \"../profile/api/profile\";\nexport { ProfileService } from \"../profile/api/profile\";\nexport type * from \"../ticketable/api/subscriptions\";\nexport { SubscriptionsService } from \"../ticketable/api/subscriptions\";\nexport type * from \"../ticketable/api/tickets\";\nexport { TicketsService } from \"../ticketable/api/tickets\";\nexport type { ApiClientConfig, ApiResponse, QueryParams } from \"./base-client\";\nexport type {\n ApiClientInterface,\n CommonErrors,\n ErrorReporter,\n Logger,\n ServiceDependencies,\n ServiceResult,\n} from \"./base-service\";\nexport type { PaginationMeta, PaginationParams, SchemaValidationError } from \"./shared\";\n\n/**\n * Standalone API client without browser-specific dependencies.\n *\n * This client provides the same interface as the browser ApiClient but without\n * dependencies on Sentry, i18n, localStorage, or other browser APIs.\n *\n * @example\n * ```typescript\n * import { StandaloneApiClient, AuthService } from '@unidy.io/sdk/standalone';\n *\n * const client = new StandaloneApiClient({\n * baseUrl: 'https://api.unidy.io',\n * apiKey: 'your-api-key',\n * });\n *\n * const auth = new AuthService(client);\n * const result = await auth.createSignIn({ payload: { email: 'user@example.com' } });\n * ```\n */\nexport class StandaloneApiClient extends BaseApiClient {\n protected getRequestOptions(): RequestInit {\n // No browser-specific options for standalone client\n return {};\n }\n\n protected handleConnectionError(_error: unknown, _endpoint: string, _method: string): void {\n // No-op for standalone client - users can inject their own error reporter via ServiceDependencies\n }\n}\n\nimport type { ApiClientConfig } from \"./base-client\";\n\n/**\n * Creates a standalone Unidy client with all services for use outside of Stencil.\n *\n * @example\n * ```typescript\n * import { createStandaloneClient } from '@unidy.io/sdk/standalone';\n *\n * const client = createStandaloneClient({\n * baseUrl: 'https://api.unidy.io',\n * apiKey: 'your-api-key',\n * // Optional: inject custom dependencies\n * deps: {\n * logger: myLogger,\n * errorReporter: { captureException: (e) => Sentry.captureException(e) },\n * },\n * });\n *\n * const signIn = await client.auth.createSignIn({ payload: { email: 'user@example.com' } });\n * ```\n */\nexport interface StandaloneUnidyClientConfig extends ApiClientConfig {\n /** Optional dependencies to inject into all services */\n deps?: ServiceDependencies;\n}\n\nexport class StandaloneUnidyClient {\n public auth: AuthService;\n public newsletters: NewsletterService;\n public profile: ProfileService;\n public tickets: TicketsService;\n public subscriptions: SubscriptionsService;\n\n constructor(config: StandaloneUnidyClientConfig) {\n const apiClient = new StandaloneApiClient(config);\n const deps = config.deps;\n\n this.auth = new AuthService(apiClient, deps);\n this.newsletters = new NewsletterService(apiClient, deps);\n this.profile = new ProfileService(apiClient, deps);\n this.tickets = new TicketsService(apiClient, deps);\n this.subscriptions = new SubscriptionsService(apiClient, deps);\n }\n}\n\nexport function createStandaloneClient(config: StandaloneUnidyClientConfig): StandaloneUnidyClient {\n return new StandaloneUnidyClient(config);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/auth/api/auth.ts"],"names":[],"mappings":"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","sourcesContent":["import { BaseService, type ApiClientInterface, type CommonErrors, type ServiceDependencies, type Payload } from \"../../api/base-service\";\nimport {\n CreateSignInResponseSchema,\n ErrorSchema,\n InvalidPasswordResponseSchema,\n JumpToServiceErrorSchema,\n JumpToServiceRequestSchema,\n JumpToServiceResponseSchema,\n JumpToUnidyErrorSchema,\n JumpToUnidyRequestSchema,\n JumpToUnidyResponseSchema,\n PasskeyOptionsResponseSchema,\n RequiredFieldsResponseSchema,\n SendMagicCodeErrorSchema,\n SendMagicCodeResponseSchema,\n TokenResponseSchema,\n type CreateSignInResponse,\n type ErrorResponse,\n type InvalidPasswordResponse,\n type JumpToServiceRequest,\n type JumpToUnidyRequest,\n type PasskeyCredential,\n type PasskeyOptionsResponse,\n type RequiredFieldsResponse,\n type SendMagicCodeError,\n type SendMagicCodeResponse,\n type TokenResponse,\n} from \"./schemas\";\n\n// Re-export types for external use\nexport type {\n ErrorResponse,\n CreateSignInResponse,\n TokenResponse,\n SendMagicCodeResponse,\n RequiredFieldsResponse,\n SendMagicCodeError,\n InvalidPasswordResponse,\n PasskeyOptionsResponse,\n PasskeyCredential,\n} from \"./schemas\";\n\nexport type { LoginOptions } from \"./schemas\";\n\n// Argument types for unified interface\nexport type CreateSignInArgs = Payload<{ email: string; password?: string; sendMagicCode?: boolean }>;\nexport type SendMagicCodeArgs = { signInId: string };\nexport type AuthenticateWithPasswordArgs = { signInId: string } & Payload<{ password: string }>;\nexport type AuthenticateWithMagicCodeArgs = { signInId: string } & Payload<{ code: string }>;\n// biome-ignore lint/suspicious/noExplicitAny: user fields are dynamic\nexport type UpdateMissingFieldsArgs = { signInId: string } & Payload<{ user: Record<string, any> }>;\nexport type RefreshTokenArgs = { signInId: string };\nexport type SendResetPasswordEmailArgs = { signInId: string } & Payload<{ returnTo: string }>;\nexport type ResetPasswordArgs = { signInId: string; token: string } & Payload<{ password: string; passwordConfirmation: string }>;\nexport type ValidateResetPasswordTokenArgs = { signInId: string; token: string };\nexport type SignOutArgs = { signInId: string; globalLogout?: boolean };\nexport type GetPasskeyOptionsArgs = { signInId?: string };\nexport type AuthenticateWithPasskeyArgs = Payload<{ credential: PasskeyCredential }>;\n\n// Result types\nexport type CreateSignInResult =\n | CommonErrors\n | [\"account_not_found\", ErrorResponse]\n | [null, CreateSignInResponse]\n | AuthenticateWithPasswordResult\n | SendMagicCodeResult;\n\nexport type AuthenticateResultShared =\n | CommonErrors\n | [\"sign_in_not_found\", ErrorResponse]\n | [\"sign_in_expired\", ErrorResponse]\n | [\"account_locked\", ErrorResponse]\n | [\"missing_required_fields\", RequiredFieldsResponse]\n | [null, TokenResponse];\n\nexport type SendMagicCodeResult =\n | CommonErrors\n | [\"magic_code_recently_created\", SendMagicCodeError]\n | [\"sign_in_not_found\", ErrorResponse]\n | [\"sign_in_expired\", ErrorResponse]\n | [\"account_locked\", ErrorResponse]\n | [null, SendMagicCodeResponse];\n\nexport type AuthenticateWithPasswordResult = [\"invalid_password\", ErrorResponse] | AuthenticateResultShared;\n\nexport type AuthenticateWithMagicCodeResult =\n | [\"not_valid\", ErrorResponse]\n | [\"used\", ErrorResponse]\n | [\"expired\", ErrorResponse]\n | AuthenticateResultShared;\n\nexport type RefreshTokenResult =\n | CommonErrors\n | [\"invalid_refresh_token\", ErrorResponse]\n | [\"refresh_token_revoked\", ErrorResponse]\n | [\"sign_in_not_found\", ErrorResponse]\n | [null, TokenResponse];\n\nexport type SendResetPasswordEmailResult =\n | CommonErrors\n | [\"password_not_set\", ErrorResponse]\n | [\"reset_password_already_sent\", ErrorResponse]\n | [\"sign_in_not_found\", ErrorResponse]\n | [\"invalid_return_to\", ErrorResponse]\n | [\"return_to_required\", ErrorResponse]\n | [null, null];\n\nexport type ResetPasswordResult =\n | CommonErrors\n | [\"reset_token_missing\", ErrorResponse]\n | [\"invalid_reset_token\", ErrorResponse]\n | [\"reset_token_expired\", ErrorResponse]\n | [\"invalid_password\", InvalidPasswordResponse]\n | [null, null];\n\nexport type ValidateResetPasswordTokenResult =\n | CommonErrors\n | [\"reset_token_missing\", ErrorResponse]\n | [\"invalid_reset_token\", ErrorResponse]\n | [\"reset_token_expired\", ErrorResponse]\n | [null, null];\n\nexport type SignOutResult =\n | CommonErrors\n | [\"sign_in_not_found\", ErrorResponse]\n | [\"missing_id_token\", ErrorResponse]\n | [\"invalid_id_token\", ErrorResponse]\n | [null, null];\n\nexport type SignedInResult = CommonErrors | [\"not_found\", ErrorResponse] | [null, TokenResponse];\n\nexport type GetPasskeyOptionsResult = CommonErrors | [\"bad_request\", ErrorResponse] | [null, PasskeyOptionsResponse];\n\nexport type AuthenticateWithPasskeyResult =\n | CommonErrors\n | [\"invalid_passkey\", ErrorResponse]\n | [\"verification_failed\", ErrorResponse]\n | [\"authentication_failed\", ErrorResponse]\n | [\"bad_request\", ErrorResponse]\n | [null, TokenResponse];\n\nexport type JumpToServiceResult =\n | CommonErrors\n | [\"user_not_found\", ErrorResponse]\n | [\"application_not_found\", ErrorResponse]\n | [\"invalid_redirect_uri\", ErrorResponse]\n | [\"invalid_scope\", ErrorResponse]\n | [null, string];\n\nexport type JumpToUnidyResult =\n | CommonErrors\n | [\"user_not_found\", ErrorResponse]\n | [\"invalid_path\", ErrorResponse]\n | [null, string];\n\nexport class AuthService extends BaseService {\n constructor(client: ApiClientInterface, deps?: ServiceDependencies) {\n super(client, \"AuthService\", deps);\n }\n\n /** Safely parse error response, returning a fallback if parsing fails */\n private parseErrorResponse(data: unknown): ErrorResponse {\n const parsed = ErrorSchema.safeParse(data);\n return parsed.success ? parsed.data : { error_identifier: \"unknown_error\" };\n }\n\n async createSignIn(args: CreateSignInArgs): Promise<CreateSignInResult> {\n const { email, password, sendMagicCode } = args.payload;\n const response = await this.client.post<CreateSignInResponse>(\"/api/sdk/v1/sign_ins\", { email, password, sendMagicCode });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const missing_fields_check = RequiredFieldsResponseSchema.safeParse(response.data);\n\n if (missing_fields_check.success) {\n return [\"missing_required_fields\", missing_fields_check.data];\n }\n const error_response = this.parseErrorResponse(response.data);\n return [\n error_response.error_identifier as\n | \"account_not_found\"\n | \"sign_in_not_found\"\n | \"sign_in_expired\"\n | \"account_locked\"\n | \"invalid_password\",\n error_response,\n ];\n }\n\n if (password) {\n return [null, TokenResponseSchema.parse(response.data)];\n }\n\n if (sendMagicCode) {\n return [null, SendMagicCodeResponseSchema.parse(response.data)];\n }\n\n return [null, CreateSignInResponseSchema.parse(response.data)];\n });\n }\n\n async sendMagicCode(args: SendMagicCodeArgs): Promise<SendMagicCodeResult> {\n const { signInId } = args;\n const response = await this.client.post<SendMagicCodeResponse>(`/api/sdk/v1/sign_ins/${signInId}/send_magic_code`, {});\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const magicCodeError = SendMagicCodeErrorSchema.safeParse(response.data);\n if (magicCodeError.success) {\n return [\"magic_code_recently_created\", magicCodeError.data];\n }\n const error_response = this.parseErrorResponse(response.data);\n return [error_response.error_identifier as \"sign_in_not_found\" | \"sign_in_expired\" | \"account_locked\", error_response];\n }\n\n return [null, SendMagicCodeResponseSchema.parse(response.data)];\n });\n }\n\n async authenticateWithPassword(args: AuthenticateWithPasswordArgs): Promise<AuthenticateWithPasswordResult> {\n const { signInId, payload } = args;\n const response = await this.client.post<{ password: string }>(`/api/sdk/v1/sign_ins/${signInId}/authenticate`, {\n password: payload.password,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const missing_fields_check = RequiredFieldsResponseSchema.safeParse(response.data);\n\n if (missing_fields_check.success) {\n return [\"missing_required_fields\", missing_fields_check.data];\n }\n const error_response = this.parseErrorResponse(response.data);\n\n return [\n error_response.error_identifier as \"sign_in_not_found\" | \"sign_in_expired\" | \"account_locked\" | \"invalid_password\",\n error_response,\n ];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async updateMissingFields(args: UpdateMissingFieldsArgs): Promise<AuthenticateResultShared> {\n const { signInId, payload } = args;\n const response = await this.client.patch<unknown>(`/api/sdk/v1/sign_ins/${signInId}/update_required_fields`, {\n user: payload.user,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const missing_fields_check = RequiredFieldsResponseSchema.safeParse(response.data);\n if (missing_fields_check.success) {\n return [\"missing_required_fields\", missing_fields_check.data];\n }\n\n const error_response = this.parseErrorResponse(response.data);\n\n return [error_response.error_identifier as \"sign_in_not_found\" | \"sign_in_expired\" | \"account_locked\", error_response];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async authenticateWithMagicCode(args: AuthenticateWithMagicCodeArgs): Promise<AuthenticateWithMagicCodeResult> {\n const { signInId, payload } = args;\n const response = await this.client.post<{ code: string }>(`/api/sdk/v1/sign_ins/${signInId}/authenticate`, {\n code: payload.code,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const missing_fields_check = RequiredFieldsResponseSchema.safeParse(response.data);\n\n if (missing_fields_check.success) {\n return [\"missing_required_fields\", missing_fields_check.data];\n }\n\n const error_response = this.parseErrorResponse(response.data);\n\n return [\n error_response.error_identifier as \"sign_in_not_found\" | \"sign_in_expired\" | \"account_locked\" | \"not_valid\" | \"used\" | \"expired\",\n error_response,\n ];\n }\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async refreshToken(args: RefreshTokenArgs): Promise<RefreshTokenResult> {\n const { signInId } = args;\n const response = await this.client.post<Record<string, never>>(`/api/sdk/v1/sign_ins/${signInId}/refresh_token`, {});\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n\n return [error_response.error_identifier as \"invalid_refresh_token\" | \"refresh_token_revoked\" | \"sign_in_not_found\", error_response];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async sendResetPasswordEmail(args: SendResetPasswordEmailArgs): Promise<SendResetPasswordEmailResult> {\n const { signInId, payload } = args;\n const response = await this.client.post<null>(`/api/sdk/v1/sign_ins/${signInId}/password_reset/send`, {\n return_to: payload.returnTo,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n\n return [\n error_response.error_identifier as\n | \"password_not_set\"\n | \"reset_password_already_sent\"\n | \"sign_in_not_found\"\n | \"invalid_return_to\"\n | \"return_to_required\",\n error_response,\n ];\n }\n\n return [null, null];\n });\n }\n\n async resetPassword(args: ResetPasswordArgs): Promise<ResetPasswordResult> {\n const { signInId, token, payload } = args;\n const response = await this.client.patch<null>(`/api/sdk/v1/sign_ins/${signInId}/password_reset`, {\n token,\n password: payload.password,\n password_confirmation: payload.passwordConfirmation,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n // invalid_password has a different response shape (error_details.password)\n const invalidPasswordParsed = InvalidPasswordResponseSchema.safeParse(response.data);\n if (invalidPasswordParsed.success) {\n return [\"invalid_password\", invalidPasswordParsed.data];\n }\n\n const error_response = this.parseErrorResponse(response.data);\n return [error_response.error_identifier as \"reset_token_missing\" | \"invalid_reset_token\" | \"reset_token_expired\", error_response];\n }\n\n return [null, null];\n });\n }\n\n async validateResetPasswordToken(args: ValidateResetPasswordTokenArgs): Promise<ValidateResetPasswordTokenResult> {\n const { signInId, token } = args;\n const response = await this.client.get<{ valid: boolean }>(\n `/api/sdk/v1/sign_ins/${signInId}/password_reset?token=${encodeURIComponent(token)}`,\n );\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n return [error_response.error_identifier as \"reset_token_missing\" | \"invalid_reset_token\" | \"reset_token_expired\", error_response];\n }\n\n return [null, null];\n });\n }\n\n async signOut(args: SignOutArgs): Promise<SignOutResult> {\n const { signInId, globalLogout = false } = args;\n const response = await this.client.post<null>(`/api/sdk/v1/sign_ins/${signInId}/sign_out`, { globalLogout });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n\n return [error_response.error_identifier as \"sign_in_not_found\" | \"missing_id_token\" | \"invalid_id_token\", error_response];\n }\n\n return [null, null];\n });\n }\n\n async signedIn(): Promise<SignedInResult> {\n const response = await this.client.get<TokenResponse>(\"/api/sdk/v1/sign_ins/signed_in\");\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n return [\"not_found\", error_response];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async getPasskeyOptions(args?: GetPasskeyOptionsArgs): Promise<GetPasskeyOptionsResult> {\n const signInId = args?.signInId;\n const endpoint = signInId ? `/api/sdk/v1/passkeys/new?sid=${encodeURIComponent(signInId)}` : \"/api/sdk/v1/passkeys/new\";\n const response = await this.client.get<PasskeyOptionsResponse>(endpoint);\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n return [\"bad_request\", error_response];\n }\n\n return [null, PasskeyOptionsResponseSchema.parse(response.data)];\n });\n }\n\n async authenticateWithPasskey(args: AuthenticateWithPasskeyArgs): Promise<AuthenticateWithPasskeyResult> {\n const { payload } = args;\n const response = await this.client.post<{ publicKeyCredential: PasskeyCredential }>(\"/api/sdk/v1/passkeys\", {\n publicKeyCredential: payload.credential,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n return [\n error_response.error_identifier as \"invalid_passkey\" | \"verification_failed\" | \"authentication_failed\" | \"bad_request\",\n error_response,\n ];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async jumpToService(serviceId: string, request: JumpToServiceRequest): Promise<JumpToServiceResult> {\n const validatedRequest = JumpToServiceRequestSchema.parse(request);\n\n const response = await this.client.post<unknown>(`/api/sdk/v1/jump_to/service/${serviceId}`, validatedRequest);\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const errorParse = JumpToServiceErrorSchema.safeParse(response.data);\n if (errorParse.success) {\n const errorIdentifier = errorParse.data.error_identifier;\n return [\n errorIdentifier as \"user_not_found\" | \"application_not_found\" | \"invalid_redirect_uri\" | \"invalid_scope\",\n { error_identifier: errorIdentifier },\n ];\n }\n\n return [\"user_not_found\", { error_identifier: \"unknown_error\" }];\n }\n\n const parsed = JumpToServiceResponseSchema.safeParse(response.data);\n if (!parsed.success) {\n return [\"schema_validation_error\", { error_identifier: \"schema_validation_error\", errors: [] }];\n }\n\n return [null, parsed.data.token];\n });\n }\n\n async jumpToUnidy(request: JumpToUnidyRequest): Promise<JumpToUnidyResult> {\n const validatedRequest = JumpToUnidyRequestSchema.parse(request);\n\n const response = await this.client.post<unknown>(\"/api/sdk/v1/jump_to/unidy\", validatedRequest);\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const errorParse = JumpToUnidyErrorSchema.safeParse(response.data);\n if (errorParse.success) {\n const errorIdentifier = errorParse.data.error_identifier;\n return [errorIdentifier as \"user_not_found\" | \"invalid_path\", { error_identifier: errorIdentifier }];\n }\n\n return [\"user_not_found\", { error_identifier: \"unknown_error\" }];\n }\n\n const parsed = JumpToUnidyResponseSchema.safeParse(response.data);\n if (!parsed.success) {\n return [\"schema_validation_error\", { error_identifier: \"schema_validation_error\", errors: [] }];\n }\n\n return [null, parsed.data.token];\n });\n }\n}\n"]}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/auth/api/auth.ts"],"names":[],"mappings":"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","sourcesContent":["import { type ApiClientInterface, BaseService, type CommonErrors, type Payload, type ServiceDependencies } from \"../../api/base-service\";\nimport {\n type CreateSignInResponse,\n CreateSignInResponseSchema,\n type ErrorResponse,\n ErrorSchema,\n type InvalidPasswordResponse,\n InvalidPasswordResponseSchema,\n JumpToServiceErrorSchema,\n type JumpToServiceRequest,\n JumpToServiceRequestSchema,\n JumpToServiceResponseSchema,\n JumpToUnidyErrorSchema,\n type JumpToUnidyRequest,\n JumpToUnidyRequestSchema,\n JumpToUnidyResponseSchema,\n type PasskeyCredential,\n type PasskeyOptionsResponse,\n PasskeyOptionsResponseSchema,\n type RequiredFieldsResponse,\n RequiredFieldsResponseSchema,\n type SendMagicCodeError,\n SendMagicCodeErrorSchema,\n type SendMagicCodeResponse,\n SendMagicCodeResponseSchema,\n type TokenResponse,\n TokenResponseSchema,\n} from \"./schemas\";\n\n// Re-export types for external use\nexport type {\n CreateSignInResponse,\n ErrorResponse,\n InvalidPasswordResponse,\n LoginOptions,\n PasskeyCredential,\n PasskeyOptionsResponse,\n RequiredFieldsResponse,\n SendMagicCodeError,\n SendMagicCodeResponse,\n TokenResponse,\n} from \"./schemas\";\n\n// Argument types for unified interface\nexport type CreateSignInArgs = Payload<{ email: string; password?: string; sendMagicCode?: boolean }>;\nexport type SendMagicCodeArgs = { signInId: string };\nexport type AuthenticateWithPasswordArgs = { signInId: string } & Payload<{ password: string }>;\nexport type AuthenticateWithMagicCodeArgs = { signInId: string } & Payload<{ code: string }>;\n// biome-ignore lint/suspicious/noExplicitAny: user fields are dynamic\nexport type UpdateMissingFieldsArgs = { signInId: string } & Payload<{ user: Record<string, any> }>;\nexport type RefreshTokenArgs = { signInId: string };\nexport type SendResetPasswordEmailArgs = { signInId: string } & Payload<{ returnTo: string }>;\nexport type ResetPasswordArgs = { signInId: string; token: string } & Payload<{ password: string; passwordConfirmation: string }>;\nexport type ValidateResetPasswordTokenArgs = { signInId: string; token: string };\nexport type SignOutArgs = { signInId: string; globalLogout?: boolean };\nexport type GetPasskeyOptionsArgs = { signInId?: string };\nexport type AuthenticateWithPasskeyArgs = Payload<{ credential: PasskeyCredential }>;\n\n// Result types\nexport type CreateSignInResult =\n | CommonErrors\n | [\"account_not_found\", ErrorResponse]\n | [null, CreateSignInResponse]\n | AuthenticateWithPasswordResult\n | SendMagicCodeResult;\n\nexport type AuthenticateResultShared =\n | CommonErrors\n | [\"sign_in_not_found\", ErrorResponse]\n | [\"sign_in_expired\", ErrorResponse]\n | [\"account_locked\", ErrorResponse]\n | [\"missing_required_fields\", RequiredFieldsResponse]\n | [null, TokenResponse];\n\nexport type SendMagicCodeResult =\n | CommonErrors\n | [\"magic_code_recently_created\", SendMagicCodeError]\n | [\"sign_in_not_found\", ErrorResponse]\n | [\"sign_in_expired\", ErrorResponse]\n | [\"account_locked\", ErrorResponse]\n | [null, SendMagicCodeResponse];\n\nexport type AuthenticateWithPasswordResult = [\"invalid_password\", ErrorResponse] | AuthenticateResultShared;\n\nexport type AuthenticateWithMagicCodeResult =\n | [\"not_valid\", ErrorResponse]\n | [\"used\", ErrorResponse]\n | [\"expired\", ErrorResponse]\n | AuthenticateResultShared;\n\nexport type RefreshTokenResult =\n | CommonErrors\n | [\"invalid_refresh_token\", ErrorResponse]\n | [\"refresh_token_revoked\", ErrorResponse]\n | [\"sign_in_not_found\", ErrorResponse]\n | [null, TokenResponse];\n\nexport type SendResetPasswordEmailResult =\n | CommonErrors\n | [\"password_not_set\", ErrorResponse]\n | [\"reset_password_already_sent\", ErrorResponse]\n | [\"sign_in_not_found\", ErrorResponse]\n | [\"invalid_return_to\", ErrorResponse]\n | [\"return_to_required\", ErrorResponse]\n | [null, null];\n\nexport type ResetPasswordResult =\n | CommonErrors\n | [\"reset_token_missing\", ErrorResponse]\n | [\"invalid_reset_token\", ErrorResponse]\n | [\"reset_token_expired\", ErrorResponse]\n | [\"invalid_password\", InvalidPasswordResponse]\n | [null, null];\n\nexport type ValidateResetPasswordTokenResult =\n | CommonErrors\n | [\"reset_token_missing\", ErrorResponse]\n | [\"invalid_reset_token\", ErrorResponse]\n | [\"reset_token_expired\", ErrorResponse]\n | [null, null];\n\nexport type SignOutResult =\n | CommonErrors\n | [\"sign_in_not_found\", ErrorResponse]\n | [\"missing_id_token\", ErrorResponse]\n | [\"invalid_id_token\", ErrorResponse]\n | [null, null];\n\nexport type SignedInResult = CommonErrors | [\"not_found\", ErrorResponse] | [null, TokenResponse];\n\nexport type GetPasskeyOptionsResult = CommonErrors | [\"bad_request\", ErrorResponse] | [null, PasskeyOptionsResponse];\n\nexport type AuthenticateWithPasskeyResult =\n | CommonErrors\n | [\"invalid_passkey\", ErrorResponse]\n | [\"verification_failed\", ErrorResponse]\n | [\"authentication_failed\", ErrorResponse]\n | [\"bad_request\", ErrorResponse]\n | [null, TokenResponse];\n\nexport type JumpToServiceResult =\n | CommonErrors\n | [\"user_not_found\", ErrorResponse]\n | [\"application_not_found\", ErrorResponse]\n | [\"invalid_redirect_uri\", ErrorResponse]\n | [\"invalid_scope\", ErrorResponse]\n | [null, string];\n\nexport type JumpToUnidyResult = CommonErrors | [\"user_not_found\", ErrorResponse] | [\"invalid_path\", ErrorResponse] | [null, string];\n\nexport class AuthService extends BaseService {\n constructor(client: ApiClientInterface, deps?: ServiceDependencies) {\n super(client, \"AuthService\", deps);\n }\n\n /** Safely parse error response, returning a fallback if parsing fails */\n private parseErrorResponse(data: unknown): ErrorResponse {\n const parsed = ErrorSchema.safeParse(data);\n return parsed.success ? parsed.data : { error_identifier: \"unknown_error\" };\n }\n\n async createSignIn(args: CreateSignInArgs): Promise<CreateSignInResult> {\n const { email, password, sendMagicCode } = args.payload;\n const response = await this.client.post<CreateSignInResponse>(\"/api/sdk/v1/sign_ins\", { email, password, sendMagicCode });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const missing_fields_check = RequiredFieldsResponseSchema.safeParse(response.data);\n\n if (missing_fields_check.success) {\n return [\"missing_required_fields\", missing_fields_check.data];\n }\n const error_response = this.parseErrorResponse(response.data);\n return [\n error_response.error_identifier as\n | \"account_not_found\"\n | \"sign_in_not_found\"\n | \"sign_in_expired\"\n | \"account_locked\"\n | \"invalid_password\",\n error_response,\n ];\n }\n\n if (password) {\n return [null, TokenResponseSchema.parse(response.data)];\n }\n\n if (sendMagicCode) {\n return [null, SendMagicCodeResponseSchema.parse(response.data)];\n }\n\n return [null, CreateSignInResponseSchema.parse(response.data)];\n });\n }\n\n async sendMagicCode(args: SendMagicCodeArgs): Promise<SendMagicCodeResult> {\n const { signInId } = args;\n const response = await this.client.post<SendMagicCodeResponse>(`/api/sdk/v1/sign_ins/${signInId}/send_magic_code`, {});\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const magicCodeError = SendMagicCodeErrorSchema.safeParse(response.data);\n if (magicCodeError.success) {\n return [\"magic_code_recently_created\", magicCodeError.data];\n }\n const error_response = this.parseErrorResponse(response.data);\n return [error_response.error_identifier as \"sign_in_not_found\" | \"sign_in_expired\" | \"account_locked\", error_response];\n }\n\n return [null, SendMagicCodeResponseSchema.parse(response.data)];\n });\n }\n\n async authenticateWithPassword(args: AuthenticateWithPasswordArgs): Promise<AuthenticateWithPasswordResult> {\n const { signInId, payload } = args;\n const response = await this.client.post<{ password: string }>(`/api/sdk/v1/sign_ins/${signInId}/authenticate`, {\n password: payload.password,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const missing_fields_check = RequiredFieldsResponseSchema.safeParse(response.data);\n\n if (missing_fields_check.success) {\n return [\"missing_required_fields\", missing_fields_check.data];\n }\n const error_response = this.parseErrorResponse(response.data);\n\n return [\n error_response.error_identifier as \"sign_in_not_found\" | \"sign_in_expired\" | \"account_locked\" | \"invalid_password\",\n error_response,\n ];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async updateMissingFields(args: UpdateMissingFieldsArgs): Promise<AuthenticateResultShared> {\n const { signInId, payload } = args;\n const response = await this.client.patch<unknown>(`/api/sdk/v1/sign_ins/${signInId}/update_required_fields`, {\n user: payload.user,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const missing_fields_check = RequiredFieldsResponseSchema.safeParse(response.data);\n if (missing_fields_check.success) {\n return [\"missing_required_fields\", missing_fields_check.data];\n }\n\n const error_response = this.parseErrorResponse(response.data);\n\n return [error_response.error_identifier as \"sign_in_not_found\" | \"sign_in_expired\" | \"account_locked\", error_response];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async authenticateWithMagicCode(args: AuthenticateWithMagicCodeArgs): Promise<AuthenticateWithMagicCodeResult> {\n const { signInId, payload } = args;\n const response = await this.client.post<{ code: string }>(`/api/sdk/v1/sign_ins/${signInId}/authenticate`, {\n code: payload.code,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const missing_fields_check = RequiredFieldsResponseSchema.safeParse(response.data);\n\n if (missing_fields_check.success) {\n return [\"missing_required_fields\", missing_fields_check.data];\n }\n\n const error_response = this.parseErrorResponse(response.data);\n\n return [\n error_response.error_identifier as \"sign_in_not_found\" | \"sign_in_expired\" | \"account_locked\" | \"not_valid\" | \"used\" | \"expired\",\n error_response,\n ];\n }\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async refreshToken(args: RefreshTokenArgs): Promise<RefreshTokenResult> {\n const { signInId } = args;\n const response = await this.client.post<Record<string, never>>(`/api/sdk/v1/sign_ins/${signInId}/refresh_token`, {});\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n\n return [error_response.error_identifier as \"invalid_refresh_token\" | \"refresh_token_revoked\" | \"sign_in_not_found\", error_response];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async sendResetPasswordEmail(args: SendResetPasswordEmailArgs): Promise<SendResetPasswordEmailResult> {\n const { signInId, payload } = args;\n const response = await this.client.post<null>(`/api/sdk/v1/sign_ins/${signInId}/password_reset/send`, {\n return_to: payload.returnTo,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n\n return [\n error_response.error_identifier as\n | \"password_not_set\"\n | \"reset_password_already_sent\"\n | \"sign_in_not_found\"\n | \"invalid_return_to\"\n | \"return_to_required\",\n error_response,\n ];\n }\n\n return [null, null];\n });\n }\n\n async resetPassword(args: ResetPasswordArgs): Promise<ResetPasswordResult> {\n const { signInId, token, payload } = args;\n const response = await this.client.patch<null>(`/api/sdk/v1/sign_ins/${signInId}/password_reset`, {\n token,\n password: payload.password,\n password_confirmation: payload.passwordConfirmation,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n // invalid_password has a different response shape (error_details.password)\n const invalidPasswordParsed = InvalidPasswordResponseSchema.safeParse(response.data);\n if (invalidPasswordParsed.success) {\n return [\"invalid_password\", invalidPasswordParsed.data];\n }\n\n const error_response = this.parseErrorResponse(response.data);\n return [error_response.error_identifier as \"reset_token_missing\" | \"invalid_reset_token\" | \"reset_token_expired\", error_response];\n }\n\n return [null, null];\n });\n }\n\n async validateResetPasswordToken(args: ValidateResetPasswordTokenArgs): Promise<ValidateResetPasswordTokenResult> {\n const { signInId, token } = args;\n const response = await this.client.get<{ valid: boolean }>(\n `/api/sdk/v1/sign_ins/${signInId}/password_reset?token=${encodeURIComponent(token)}`,\n );\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n return [error_response.error_identifier as \"reset_token_missing\" | \"invalid_reset_token\" | \"reset_token_expired\", error_response];\n }\n\n return [null, null];\n });\n }\n\n async signOut(args: SignOutArgs): Promise<SignOutResult> {\n const { signInId, globalLogout = false } = args;\n const response = await this.client.post<null>(`/api/sdk/v1/sign_ins/${signInId}/sign_out`, { globalLogout });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n\n return [error_response.error_identifier as \"sign_in_not_found\" | \"missing_id_token\" | \"invalid_id_token\", error_response];\n }\n\n return [null, null];\n });\n }\n\n async signedIn(): Promise<SignedInResult> {\n const response = await this.client.get<TokenResponse>(\"/api/sdk/v1/sign_ins/signed_in\");\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n return [\"not_found\", error_response];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async getPasskeyOptions(args?: GetPasskeyOptionsArgs): Promise<GetPasskeyOptionsResult> {\n const signInId = args?.signInId;\n const endpoint = signInId ? `/api/sdk/v1/passkeys/new?sid=${encodeURIComponent(signInId)}` : \"/api/sdk/v1/passkeys/new\";\n const response = await this.client.get<PasskeyOptionsResponse>(endpoint);\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n return [\"bad_request\", error_response];\n }\n\n return [null, PasskeyOptionsResponseSchema.parse(response.data)];\n });\n }\n\n async authenticateWithPasskey(args: AuthenticateWithPasskeyArgs): Promise<AuthenticateWithPasskeyResult> {\n const { payload } = args;\n const response = await this.client.post<{ publicKeyCredential: PasskeyCredential }>(\"/api/sdk/v1/passkeys\", {\n publicKeyCredential: payload.credential,\n });\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const error_response = this.parseErrorResponse(response.data);\n return [\n error_response.error_identifier as \"invalid_passkey\" | \"verification_failed\" | \"authentication_failed\" | \"bad_request\",\n error_response,\n ];\n }\n\n return [null, TokenResponseSchema.parse(response.data)];\n });\n }\n\n async jumpToService(serviceId: string, request: JumpToServiceRequest): Promise<JumpToServiceResult> {\n const validatedRequest = JumpToServiceRequestSchema.parse(request);\n\n const response = await this.client.post<unknown>(`/api/sdk/v1/jump_to/service/${serviceId}`, validatedRequest);\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const errorParse = JumpToServiceErrorSchema.safeParse(response.data);\n if (errorParse.success) {\n const errorIdentifier = errorParse.data.error_identifier;\n return [\n errorIdentifier as \"user_not_found\" | \"application_not_found\" | \"invalid_redirect_uri\" | \"invalid_scope\",\n { error_identifier: errorIdentifier },\n ];\n }\n\n return [\"user_not_found\", { error_identifier: \"unknown_error\" }];\n }\n\n const parsed = JumpToServiceResponseSchema.safeParse(response.data);\n if (!parsed.success) {\n return [\"schema_validation_error\", { error_identifier: \"schema_validation_error\", errors: [] }];\n }\n\n return [null, parsed.data.token];\n });\n }\n\n async jumpToUnidy(request: JumpToUnidyRequest): Promise<JumpToUnidyResult> {\n const validatedRequest = JumpToUnidyRequestSchema.parse(request);\n\n const response = await this.client.post<unknown>(\"/api/sdk/v1/jump_to/unidy\", validatedRequest);\n\n return this.handleResponse(response, () => {\n if (!response.success) {\n const errorParse = JumpToUnidyErrorSchema.safeParse(response.data);\n if (errorParse.success) {\n const errorIdentifier = errorParse.data.error_identifier;\n return [errorIdentifier as \"user_not_found\" | \"invalid_path\", { error_identifier: errorIdentifier }];\n }\n\n return [\"user_not_found\", { error_identifier: \"unknown_error\" }];\n }\n\n const parsed = JumpToUnidyResponseSchema.safeParse(response.data);\n if (!parsed.success) {\n return [\"schema_validation_error\", { error_identifier: \"schema_validation_error\", errors: [] }];\n }\n\n return [null, parsed.data.token];\n });\n }\n}\n"]}
@@ -23,7 +23,7 @@ export const ErrorSchema = BaseErrorSchema;
23
23
  // Magic code response
24
24
  export const SendMagicCodeResponseSchema = z.object({
25
25
  enable_resend_after: z.number(),
26
- sid: z.string().optional(),
26
+ sid: z.string().nullish(),
27
27
  login_options: z
28
28
  .object({
29
29
  magic_link: z.boolean(),
@@ -37,7 +37,7 @@ export const SendMagicCodeErrorSchema = BaseErrorSchema.extend({
37
37
  // JWT token response
38
38
  export const TokenResponseSchema = z.object({
39
39
  jwt: z.string(),
40
- sid: z.string().optional(),
40
+ sid: z.string().nullish(),
41
41
  });
42
42
  // Missing required fields response extends base error with specific error_identifier
43
43
  export const RequiredFieldsResponseSchema = z
@@ -47,7 +47,7 @@ export const RequiredFieldsResponseSchema = z
47
47
  fields: UserProfileSchema.omit({ custom_attributes: true }).partial().extend({
48
48
  custom_attributes: UserProfileSchema.shape.custom_attributes?.optional(),
49
49
  }),
50
- sid: z.string().optional(),
50
+ sid: z.string().nullish(),
51
51
  }),
52
52
  })
53
53
  .transform(({ error_identifier, meta }) => ({
@@ -89,8 +89,8 @@ export const JumpToUnidyErrorSchema = z.object({
89
89
  });
90
90
  export const JumpToServiceRequestSchema = z.object({
91
91
  email: z.string(),
92
- redirect_uri: z.string().optional(),
93
- scopes: z.array(z.string()).optional(),
92
+ redirect_uri: z.string().nullish(),
93
+ scopes: z.array(z.string()).nullish(),
94
94
  skip_oauth_authorization: z.boolean().optional(),
95
95
  });
96
96
  export const JumpToUnidyRequestSchema = z.object({