@oxyhq/services 5.7.5 → 5.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/README.md +76 -76
  2. package/lib/commonjs/core/index.js +177 -102
  3. package/lib/commonjs/core/index.js.map +1 -1
  4. package/lib/commonjs/index.js +88 -29
  5. package/lib/commonjs/index.js.map +1 -1
  6. package/lib/commonjs/node/createAuth.js +585 -7
  7. package/lib/commonjs/node/createAuth.js.map +1 -1
  8. package/lib/commonjs/node/index.js +38 -1
  9. package/lib/commonjs/node/index.js.map +1 -1
  10. package/lib/commonjs/ui/components/Avatar.js +15 -6
  11. package/lib/commonjs/ui/components/Avatar.js.map +1 -1
  12. package/lib/commonjs/ui/components/GroupedItem.js +58 -13
  13. package/lib/commonjs/ui/components/GroupedItem.js.map +1 -1
  14. package/lib/commonjs/ui/components/GroupedSection.js +7 -1
  15. package/lib/commonjs/ui/components/GroupedSection.js.map +1 -1
  16. package/lib/commonjs/ui/components/Header.js +322 -0
  17. package/lib/commonjs/ui/components/Header.js.map +1 -0
  18. package/lib/commonjs/ui/components/OxyProvider.js +23 -7
  19. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
  20. package/lib/commonjs/ui/components/index.js +7 -0
  21. package/lib/commonjs/ui/components/index.js.map +1 -1
  22. package/lib/commonjs/ui/components/internal/GroupedPillButtons.js +1 -1
  23. package/lib/commonjs/ui/components/internal/GroupedPillButtons.js.map +1 -1
  24. package/lib/commonjs/ui/components/internal/TextField.js +606 -546
  25. package/lib/commonjs/ui/components/internal/TextField.js.map +1 -1
  26. package/lib/commonjs/ui/components/internal/TextField.md +436 -0
  27. package/lib/commonjs/ui/context/OxyContext.js +122 -78
  28. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  29. package/lib/commonjs/ui/hooks/useSessionSocket.js +5 -2
  30. package/lib/commonjs/ui/hooks/useSessionSocket.js.map +1 -1
  31. package/lib/commonjs/ui/navigation/OxyRouter.js +1 -1
  32. package/lib/commonjs/ui/navigation/OxyRouter.js.map +1 -1
  33. package/lib/commonjs/ui/screens/AccountCenterScreen.js +6 -6
  34. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  35. package/lib/commonjs/ui/screens/AccountManagementDemo.js +3 -3
  36. package/lib/commonjs/ui/screens/AccountManagementDemo.js.map +1 -1
  37. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +241 -598
  38. package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -1
  39. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +1151 -406
  40. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  41. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +135 -237
  42. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
  43. package/lib/commonjs/ui/screens/AppInfoScreen.js +246 -463
  44. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
  45. package/lib/commonjs/ui/screens/FeedbackScreen.js +3 -3
  46. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
  47. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +808 -650
  48. package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
  49. package/lib/commonjs/ui/screens/RecoverAccountScreen.js +51 -72
  50. package/lib/commonjs/ui/screens/RecoverAccountScreen.js.map +1 -1
  51. package/lib/commonjs/ui/screens/SessionManagementScreen.js +11 -29
  52. package/lib/commonjs/ui/screens/SessionManagementScreen.js.map +1 -1
  53. package/lib/commonjs/ui/screens/SignInScreen.js +30 -303
  54. package/lib/commonjs/ui/screens/SignInScreen.js.map +1 -1
  55. package/lib/commonjs/ui/screens/SignUpScreen.js +4 -4
  56. package/lib/commonjs/ui/screens/SignUpScreen.js.map +1 -1
  57. package/lib/commonjs/ui/screens/internal/SignInPasswordStep.js +19 -31
  58. package/lib/commonjs/ui/screens/internal/SignInPasswordStep.js.map +1 -1
  59. package/lib/commonjs/ui/screens/internal/SignInUsernameStep.js +7 -10
  60. package/lib/commonjs/ui/screens/internal/SignInUsernameStep.js.map +1 -1
  61. package/lib/commonjs/ui/screens/internal/SignUpIdentityStep.js +11 -5
  62. package/lib/commonjs/ui/screens/internal/SignUpIdentityStep.js.map +1 -1
  63. package/lib/commonjs/ui/screens/internal/SignUpSecurityStep.js +11 -4
  64. package/lib/commonjs/ui/screens/internal/SignUpSecurityStep.js.map +1 -1
  65. package/lib/commonjs/ui/stores/authStore.js +12 -0
  66. package/lib/commonjs/ui/stores/authStore.js.map +1 -1
  67. package/lib/commonjs/ui/styles/authStyles.js +337 -0
  68. package/lib/commonjs/ui/styles/authStyles.js.map +1 -0
  69. package/lib/commonjs/ui/styles/index.js +11 -0
  70. package/lib/commonjs/ui/styles/index.js.map +1 -1
  71. package/lib/module/core/index.js +177 -41
  72. package/lib/module/core/index.js.map +1 -1
  73. package/lib/module/index.js +26 -4
  74. package/lib/module/index.js.map +1 -1
  75. package/lib/module/node/createAuth.js +584 -7
  76. package/lib/module/node/createAuth.js.map +1 -1
  77. package/lib/module/node/index.js +7 -1
  78. package/lib/module/node/index.js.map +1 -1
  79. package/lib/module/ui/components/Avatar.js +15 -6
  80. package/lib/module/ui/components/Avatar.js.map +1 -1
  81. package/lib/module/ui/components/GroupedItem.js +59 -14
  82. package/lib/module/ui/components/GroupedItem.js.map +1 -1
  83. package/lib/module/ui/components/GroupedSection.js +7 -1
  84. package/lib/module/ui/components/GroupedSection.js.map +1 -1
  85. package/lib/module/ui/components/Header.js +317 -0
  86. package/lib/module/ui/components/Header.js.map +1 -0
  87. package/lib/module/ui/components/OxyProvider.js +25 -9
  88. package/lib/module/ui/components/OxyProvider.js.map +1 -1
  89. package/lib/module/ui/components/index.js +1 -0
  90. package/lib/module/ui/components/index.js.map +1 -1
  91. package/lib/module/ui/components/internal/GroupedPillButtons.js +1 -1
  92. package/lib/module/ui/components/internal/GroupedPillButtons.js.map +1 -1
  93. package/lib/module/ui/components/internal/TextField.js +607 -547
  94. package/lib/module/ui/components/internal/TextField.js.map +1 -1
  95. package/lib/module/ui/components/internal/TextField.md +436 -0
  96. package/lib/module/ui/context/OxyContext.js +121 -77
  97. package/lib/module/ui/context/OxyContext.js.map +1 -1
  98. package/lib/module/ui/hooks/useSessionSocket.js +5 -2
  99. package/lib/module/ui/hooks/useSessionSocket.js.map +1 -1
  100. package/lib/module/ui/navigation/OxyRouter.js +1 -1
  101. package/lib/module/ui/navigation/OxyRouter.js.map +1 -1
  102. package/lib/module/ui/screens/AccountCenterScreen.js +6 -6
  103. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  104. package/lib/module/ui/screens/AccountManagementDemo.js +3 -3
  105. package/lib/module/ui/screens/AccountManagementDemo.js.map +1 -1
  106. package/lib/module/ui/screens/AccountOverviewScreen.js +242 -597
  107. package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -1
  108. package/lib/module/ui/screens/AccountSettingsScreen.js +1152 -407
  109. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  110. package/lib/module/ui/screens/AccountSwitcherScreen.js +135 -237
  111. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
  112. package/lib/module/ui/screens/AppInfoScreen.js +248 -465
  113. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
  114. package/lib/module/ui/screens/FeedbackScreen.js +3 -3
  115. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
  116. package/lib/module/ui/screens/PaymentGatewayScreen.js +809 -651
  117. package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
  118. package/lib/module/ui/screens/RecoverAccountScreen.js +53 -74
  119. package/lib/module/ui/screens/RecoverAccountScreen.js.map +1 -1
  120. package/lib/module/ui/screens/SessionManagementScreen.js +11 -29
  121. package/lib/module/ui/screens/SessionManagementScreen.js.map +1 -1
  122. package/lib/module/ui/screens/SignInScreen.js +32 -305
  123. package/lib/module/ui/screens/SignInScreen.js.map +1 -1
  124. package/lib/module/ui/screens/SignUpScreen.js +5 -5
  125. package/lib/module/ui/screens/SignUpScreen.js.map +1 -1
  126. package/lib/module/ui/screens/internal/SignInPasswordStep.js +19 -31
  127. package/lib/module/ui/screens/internal/SignInPasswordStep.js.map +1 -1
  128. package/lib/module/ui/screens/internal/SignInUsernameStep.js +7 -10
  129. package/lib/module/ui/screens/internal/SignInUsernameStep.js.map +1 -1
  130. package/lib/module/ui/screens/internal/SignUpIdentityStep.js +11 -5
  131. package/lib/module/ui/screens/internal/SignUpIdentityStep.js.map +1 -1
  132. package/lib/module/ui/screens/internal/SignUpSecurityStep.js +11 -4
  133. package/lib/module/ui/screens/internal/SignUpSecurityStep.js.map +1 -1
  134. package/lib/module/ui/stores/authStore.js +12 -0
  135. package/lib/module/ui/stores/authStore.js.map +1 -1
  136. package/lib/module/ui/styles/authStyles.js +332 -0
  137. package/lib/module/ui/styles/authStyles.js.map +1 -0
  138. package/lib/module/ui/styles/index.js +1 -0
  139. package/lib/module/ui/styles/index.js.map +1 -1
  140. package/lib/typescript/core/index.d.ts +68 -24
  141. package/lib/typescript/core/index.d.ts.map +1 -1
  142. package/lib/typescript/index.d.ts +13 -3
  143. package/lib/typescript/index.d.ts.map +1 -1
  144. package/lib/typescript/node/createAuth.d.ts +112 -0
  145. package/lib/typescript/node/createAuth.d.ts.map +1 -1
  146. package/lib/typescript/node/index.d.ts +2 -0
  147. package/lib/typescript/node/index.d.ts.map +1 -1
  148. package/lib/typescript/ui/components/Avatar.d.ts.map +1 -1
  149. package/lib/typescript/ui/components/GroupedItem.d.ts +6 -0
  150. package/lib/typescript/ui/components/GroupedItem.d.ts.map +1 -1
  151. package/lib/typescript/ui/components/GroupedSection.d.ts +6 -0
  152. package/lib/typescript/ui/components/GroupedSection.d.ts.map +1 -1
  153. package/lib/typescript/ui/components/Header.d.ts +22 -0
  154. package/lib/typescript/ui/components/Header.d.ts.map +1 -0
  155. package/lib/typescript/ui/components/OxyProvider.d.ts.map +1 -1
  156. package/lib/typescript/ui/components/index.d.ts +1 -0
  157. package/lib/typescript/ui/components/index.d.ts.map +1 -1
  158. package/lib/typescript/ui/components/internal/TextField.d.ts +31 -16
  159. package/lib/typescript/ui/components/internal/TextField.d.ts.map +1 -1
  160. package/lib/typescript/ui/context/OxyContext.d.ts +5 -2
  161. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  162. package/lib/typescript/ui/hooks/useSessionSocket.d.ts.map +1 -1
  163. package/lib/typescript/ui/navigation/types.d.ts +9 -2
  164. package/lib/typescript/ui/navigation/types.d.ts.map +1 -1
  165. package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts.map +1 -1
  166. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  167. package/lib/typescript/ui/screens/AccountSwitcherScreen.d.ts.map +1 -1
  168. package/lib/typescript/ui/screens/AppInfoScreen.d.ts.map +1 -1
  169. package/lib/typescript/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
  170. package/lib/typescript/ui/screens/RecoverAccountScreen.d.ts +5 -1
  171. package/lib/typescript/ui/screens/RecoverAccountScreen.d.ts.map +1 -1
  172. package/lib/typescript/ui/screens/SessionManagementScreen.d.ts.map +1 -1
  173. package/lib/typescript/ui/screens/SignInScreen.d.ts.map +1 -1
  174. package/lib/typescript/ui/screens/internal/SignInPasswordStep.d.ts +1 -1
  175. package/lib/typescript/ui/screens/internal/SignInPasswordStep.d.ts.map +1 -1
  176. package/lib/typescript/ui/screens/internal/SignInUsernameStep.d.ts +0 -1
  177. package/lib/typescript/ui/screens/internal/SignInUsernameStep.d.ts.map +1 -1
  178. package/lib/typescript/ui/screens/internal/SignUpIdentityStep.d.ts.map +1 -1
  179. package/lib/typescript/ui/screens/internal/SignUpSecurityStep.d.ts.map +1 -1
  180. package/lib/typescript/ui/stores/authStore.d.ts.map +1 -1
  181. package/lib/typescript/ui/styles/authStyles.d.ts +326 -0
  182. package/lib/typescript/ui/styles/authStyles.d.ts.map +1 -0
  183. package/lib/typescript/ui/styles/index.d.ts +1 -0
  184. package/lib/typescript/ui/styles/index.d.ts.map +1 -1
  185. package/package.json +1 -4
  186. package/src/core/index.ts +195 -41
  187. package/src/index.ts +72 -4
  188. package/src/node/createAuth.ts +623 -7
  189. package/src/node/index.ts +19 -1
  190. package/src/ui/components/Avatar.tsx +11 -5
  191. package/src/ui/components/GroupedItem.tsx +57 -9
  192. package/src/ui/components/GroupedSection.tsx +12 -0
  193. package/src/ui/components/Header.tsx +364 -0
  194. package/src/ui/components/OxyProvider.tsx +31 -15
  195. package/src/ui/components/index.ts +1 -0
  196. package/src/ui/components/internal/GroupedPillButtons.tsx +1 -1
  197. package/src/ui/components/internal/TextField.md +436 -0
  198. package/src/ui/components/internal/TextField.tsx +720 -620
  199. package/src/ui/context/OxyContext.tsx +150 -63
  200. package/src/ui/hooks/useSessionSocket.ts +5 -2
  201. package/src/ui/navigation/OxyRouter.tsx +1 -1
  202. package/src/ui/navigation/types.ts +10 -2
  203. package/src/ui/screens/AccountCenterScreen.tsx +5 -5
  204. package/src/ui/screens/AccountManagementDemo.tsx +9 -9
  205. package/src/ui/screens/AccountOverviewScreen.tsx +265 -414
  206. package/src/ui/screens/AccountSettingsScreen.tsx +1165 -403
  207. package/src/ui/screens/AccountSwitcherScreen.tsx +158 -202
  208. package/src/ui/screens/AppInfoScreen.tsx +270 -497
  209. package/src/ui/screens/FeedbackScreen.tsx +3 -3
  210. package/src/ui/screens/PaymentGatewayScreen.tsx +668 -365
  211. package/src/ui/screens/ProfileScreen.tsx +5 -5
  212. package/src/ui/screens/RecoverAccountScreen.tsx +46 -74
  213. package/src/ui/screens/SessionManagementScreen.tsx +14 -22
  214. package/src/ui/screens/SignInScreen.tsx +27 -294
  215. package/src/ui/screens/SignUpScreen.tsx +5 -5
  216. package/src/ui/screens/internal/SignInPasswordStep.tsx +11 -22
  217. package/src/ui/screens/internal/SignInUsernameStep.tsx +3 -10
  218. package/src/ui/screens/internal/SignUpIdentityStep.tsx +2 -5
  219. package/src/ui/screens/internal/SignUpSecurityStep.tsx +3 -4
  220. package/src/ui/stores/authStore.ts +12 -0
  221. package/src/ui/styles/authStyles.ts +352 -0
  222. package/src/ui/styles/index.ts +1 -0
  223. package/lib/commonjs/core/auth-manager.js +0 -440
  224. package/lib/commonjs/core/auth-manager.js.map +0 -1
  225. package/lib/commonjs/core/use-auth.js +0 -244
  226. package/lib/commonjs/core/use-auth.js.map +0 -1
  227. package/lib/module/core/auth-manager.js +0 -432
  228. package/lib/module/core/auth-manager.js.map +0 -1
  229. package/lib/module/core/use-auth.js +0 -235
  230. package/lib/module/core/use-auth.js.map +0 -1
  231. package/lib/typescript/core/auth-manager.d.ts +0 -136
  232. package/lib/typescript/core/auth-manager.d.ts.map +0 -1
  233. package/lib/typescript/core/use-auth.d.ts +0 -79
  234. package/lib/typescript/core/use-auth.d.ts.map +0 -1
  235. package/src/__tests__/middleware.test.ts +0 -105
  236. package/src/__tests__/setup.ts +0 -10
  237. package/src/__tests__/zero-config-auth.test.ts +0 -607
  238. package/src/core/auth-manager.ts +0 -500
  239. package/src/core/use-auth.tsx +0 -245
@@ -1 +0,0 @@
1
- {"version":3,"names":["useState","useEffect","useCallback","useContext","createContext","getAuthManager","initializeAuth","jsx","_jsx","AuthContext","AuthProvider","children","baseURL","state","setState","isAuthenticated","isLoading","user","error","authManager","unsubscribe","onAuthStateChange","authState","prevState","login","username","password","prev","Error","message","register","email","logout","console","getCurrentUser","checkUsernameAvailability","checkEmailAvailability","clearError","contextValue","Provider","value","useAuth","context","withAuth","Component","options","redirectTo","LoadingComponent","requireAuth","AuthenticatedComponent","props","useOxyClient","getClient","useAuthStatus","useCurrentUser","refetch"],"sourceRoot":"../../../src","sources":["core/use-auth.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAEA,SAASA,QAAQ,EAAEC,SAAS,EAAEC,WAAW,EAAEC,UAAU,EAAEC,aAAa,QAAmB,OAAO;AAC9F,SAAgCC,cAAc,EAAEC,cAAc,QAAQ,gBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAmBvF,MAAMC,WAAW,gBAAGL,aAAa,CAA0B,IAAI,CAAC;AAOhE;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASM,YAAYA,CAAC;EAAEC,QAAQ;EAAEC,OAAO,GAAG;AAAwC,CAAC,EAAE;EAC5F,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGd,QAAQ,CAAY;IAC5Ce,eAAe,EAAE,KAAK;IACtBC,SAAS,EAAE,IAAI;IACfC,IAAI,EAAE,IAAI;IACVC,KAAK,EAAE;EACT,CAAC,CAAC;EAEF,MAAMC,WAAW,GAAGb,cAAc,CAACM,OAAO,CAAC;;EAE3C;EACAX,SAAS,CAAC,MAAM;IACd,MAAMmB,WAAW,GAAGD,WAAW,CAACE,iBAAiB,CAAEC,SAAS,IAAK;MAC/DR,QAAQ,CAACS,SAAS,KAAK;QACrB,GAAGA,SAAS;QACZR,eAAe,EAAEO,SAAS,CAACP,eAAe;QAC1CE,IAAI,EAAEK,SAAS,CAACL,IAAI;QACpBD,SAAS,EAAE;MACb,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAOI,WAAW;EACpB,CAAC,EAAE,CAACD,WAAW,CAAC,CAAC;EAEjB,MAAMK,KAAK,GAAGtB,WAAW,CAAC,OAAOuB,QAAgB,EAAEC,QAAgB,KAAK;IACtEZ,QAAQ,CAACa,IAAI,KAAK;MAAE,GAAGA,IAAI;MAAEX,SAAS,EAAE,IAAI;MAAEE,KAAK,EAAE;IAAK,CAAC,CAAC,CAAC;IAE7D,IAAI;MACF,MAAMC,WAAW,CAACK,KAAK,CAAC;QAAEC,QAAQ;QAAEC;MAAS,CAAC,CAAC;MAC/C;IACF,CAAC,CAAC,OAAOR,KAAK,EAAE;MACdJ,QAAQ,CAACa,IAAI,KAAK;QAChB,GAAGA,IAAI;QACPX,SAAS,EAAE,KAAK;QAChBE,KAAK,EAAEA,KAAK,YAAYU,KAAK,GAAGV,KAAK,CAACW,OAAO,GAAG;MAClD,CAAC,CAAC,CAAC;MACH,MAAMX,KAAK;IACb;EACF,CAAC,EAAE,CAACC,WAAW,CAAC,CAAC;EAEjB,MAAMW,QAAQ,GAAG5B,WAAW,CAAC,OAAOuB,QAAgB,EAAEM,KAAa,EAAEL,QAAgB,KAAK;IACxFZ,QAAQ,CAACa,IAAI,KAAK;MAAE,GAAGA,IAAI;MAAEX,SAAS,EAAE,IAAI;MAAEE,KAAK,EAAE;IAAK,CAAC,CAAC,CAAC;IAE7D,IAAI;MACF,MAAMC,WAAW,CAACW,QAAQ,CAAC;QAAEL,QAAQ;QAAEM,KAAK;QAAEL;MAAS,CAAC,CAAC;MACzD;IACF,CAAC,CAAC,OAAOR,KAAK,EAAE;MACdJ,QAAQ,CAACa,IAAI,KAAK;QAChB,GAAGA,IAAI;QACPX,SAAS,EAAE,KAAK;QAChBE,KAAK,EAAEA,KAAK,YAAYU,KAAK,GAAGV,KAAK,CAACW,OAAO,GAAG;MAClD,CAAC,CAAC,CAAC;MACH,MAAMX,KAAK;IACb;EACF,CAAC,EAAE,CAACC,WAAW,CAAC,CAAC;EAEjB,MAAMa,MAAM,GAAG9B,WAAW,CAAC,YAAY;IACrCY,QAAQ,CAACa,IAAI,KAAK;MAAE,GAAGA,IAAI;MAAEX,SAAS,EAAE,IAAI;MAAEE,KAAK,EAAE;IAAK,CAAC,CAAC,CAAC;IAE7D,IAAI;MACF,MAAMC,WAAW,CAACa,MAAM,CAAC,CAAC;MAC1B;IACF,CAAC,CAAC,OAAOd,KAAK,EAAE;MACde,OAAO,CAACf,KAAK,CAAC,eAAe,EAAEA,KAAK,CAAC;MACrCJ,QAAQ,CAACa,IAAI,KAAK;QAChB,GAAGA,IAAI;QACPX,SAAS,EAAE,KAAK;QAChBE,KAAK,EAAEA,KAAK,YAAYU,KAAK,GAAGV,KAAK,CAACW,OAAO,GAAG;MAClD,CAAC,CAAC,CAAC;IACL;EACF,CAAC,EAAE,CAACV,WAAW,CAAC,CAAC;EAEjB,MAAMe,cAAc,GAAGhC,WAAW,CAAC,YAAY;IAC7C,IAAI;MACF,OAAO,MAAMiB,WAAW,CAACe,cAAc,CAAC,CAAC;IAC3C,CAAC,CAAC,OAAOhB,KAAK,EAAE;MACdJ,QAAQ,CAACa,IAAI,KAAK;QAChB,GAAGA,IAAI;QACPT,KAAK,EAAEA,KAAK,YAAYU,KAAK,GAAGV,KAAK,CAACW,OAAO,GAAG;MAClD,CAAC,CAAC,CAAC;MACH,MAAMX,KAAK;IACb;EACF,CAAC,EAAE,CAACC,WAAW,CAAC,CAAC;EAEjB,MAAMgB,yBAAyB,GAAGjC,WAAW,CAAC,MAAOuB,QAAgB,IAAK;IACxE,OAAO,MAAMN,WAAW,CAACgB,yBAAyB,CAACV,QAAQ,CAAC;EAC9D,CAAC,EAAE,CAACN,WAAW,CAAC,CAAC;EAEjB,MAAMiB,sBAAsB,GAAGlC,WAAW,CAAC,MAAO6B,KAAa,IAAK;IAClE,OAAO,MAAMZ,WAAW,CAACiB,sBAAsB,CAACL,KAAK,CAAC;EACxD,CAAC,EAAE,CAACZ,WAAW,CAAC,CAAC;EAEjB,MAAMkB,UAAU,GAAGnC,WAAW,CAAC,MAAM;IACnCY,QAAQ,CAACa,IAAI,KAAK;MAAE,GAAGA,IAAI;MAAET,KAAK,EAAE;IAAK,CAAC,CAAC,CAAC;EAC9C,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMoB,YAA8B,GAAG;IACrC,GAAGzB,KAAK;IACRW,KAAK;IACLM,QAAQ;IACRE,MAAM;IACNE,cAAc;IACdC,yBAAyB;IACzBC,sBAAsB;IACtBC;EACF,CAAC;EAED,oBACE7B,IAAA,CAACC,WAAW,CAAC8B,QAAQ;IAACC,KAAK,EAAEF,YAAa;IAAA3B,QAAA,EACvCA;EAAQ,CACW,CAAC;AAE3B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAS8B,OAAOA,CAAA,EAAqB;EAC1C,MAAMC,OAAO,GAAGvC,UAAU,CAACM,WAAW,CAAC;EAEvC,IAAI,CAACiC,OAAO,EAAE;IACZ,MAAM,IAAId,KAAK,CAAC,6CAA6C,CAAC;EAChE;EAEA,OAAOc,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,QAAQA,CACtBC,SAAiC,EACjCC,OAIC,GAAG,CAAC,CAAC,EACN;EACA,MAAM;IACJC,UAAU;IACVC,gBAAgB,GAAGA,CAAA,KAAM,IAAI;IAC7BC,WAAW,GAAG;EAChB,CAAC,GAAGH,OAAO;EAEX,OAAO,SAASI,sBAAsBA,CAACC,KAAQ,EAAE;IAC/C,MAAM;MAAEnC,eAAe;MAAEC;IAAU,CAAC,GAAGyB,OAAO,CAAC,CAAC;IAEhD,IAAIzB,SAAS,EAAE;MACb,oBAAOR,IAAA,CAACuC,gBAAgB,IAAE,CAAC;IAC7B;IAEA,IAAIC,WAAW,IAAI,CAACjC,eAAe,EAAE;MACnC,IAAI+B,UAAU,EAAE;QACdA,UAAU,CAAC,CAAC;QACZ,OAAO,IAAI;MACb;;MAEA;MACA,OAAO,IAAI;IACb;IAEA,IAAI,CAACE,WAAW,IAAIjC,eAAe,EAAE;MACnC;MACA,OAAO,IAAI;IACb;IAEA,oBAAOP,IAAA,CAACoC,SAAS;MAAA,GAAKM;IAAK,CAAG,CAAC;EACjC,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAAA,EAAG;EAC7B,MAAMhC,WAAW,GAAGd,cAAc,CAAC,CAAC;EACpC,OAAOc,WAAW,CAACiC,SAAS,CAAC,CAAC;AAChC;;AAEA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAAA,EAAqD;EAChF,MAAM;IAAEtC,eAAe;IAAEC;EAAU,CAAC,GAAGyB,OAAO,CAAC,CAAC;EAChD,OAAO;IAAE1B,eAAe;IAAEC;EAAU,CAAC;AACvC;;AAEA;AACA;AACA;AACA,OAAO,SAASsC,cAAcA,CAAA,EAA0E;EACtG,MAAM;IAAErC,IAAI;IAAED,SAAS;IAAEkB;EAAe,CAAC,GAAGO,OAAO,CAAC,CAAC;EAErD,OAAO;IACLxB,IAAI;IACJD,SAAS;IACTuC,OAAO,EAAErB;EACX,CAAC;AACH","ignoreList":[]}
@@ -1,136 +0,0 @@
1
- /**
2
- * Zero-Config Authentication Manager
3
- *
4
- * This module provides automatic token management, session handling,
5
- * and seamless authentication for Oxy services.
6
- */
7
- import { AxiosInstance } from 'axios';
8
- interface AuthTokens {
9
- accessToken: string;
10
- refreshToken: string;
11
- }
12
- interface AuthState {
13
- isAuthenticated: boolean;
14
- user: any | null;
15
- tokens: AuthTokens | null;
16
- }
17
- interface LoginCredentials {
18
- username: string;
19
- password: string;
20
- }
21
- interface LoginResponse {
22
- success: boolean;
23
- accessToken: string;
24
- refreshToken: string;
25
- user: any;
26
- message?: string;
27
- }
28
- export declare class AuthenticationManager {
29
- private client;
30
- private tokens;
31
- private user;
32
- private refreshPromise;
33
- private listeners;
34
- private storageKey;
35
- constructor(baseURL: string);
36
- /**
37
- * Setup axios interceptors for automatic token management
38
- */
39
- private setupInterceptors;
40
- /**
41
- * Check if endpoint is public (doesn't require authentication)
42
- */
43
- private isPublicEndpoint;
44
- /**
45
- * Initialize authentication state from persistent storage
46
- */
47
- private initializeFromStorage;
48
- /**
49
- * Validate stored tokens without making network calls if possible
50
- */
51
- private validateStoredTokens;
52
- /**
53
- * Ensure we have a valid access token
54
- */
55
- private ensureValidToken;
56
- /**
57
- * Login with credentials
58
- */
59
- login(credentials: LoginCredentials): Promise<LoginResponse>;
60
- /**
61
- * Register new user
62
- */
63
- register(userData: {
64
- username: string;
65
- email: string;
66
- password: string;
67
- }): Promise<LoginResponse>;
68
- /**
69
- * Logout user and clear all tokens
70
- */
71
- logout(): Promise<void>;
72
- /**
73
- * Refresh access token using refresh token
74
- */
75
- private refreshTokens;
76
- /**
77
- * Perform the actual token refresh
78
- */
79
- private performTokenRefresh;
80
- /**
81
- * Set tokens and persist to storage
82
- */
83
- private setTokens;
84
- /**
85
- * Fetch current user profile
86
- */
87
- private fetchCurrentUser;
88
- /**
89
- * Get current authentication state
90
- */
91
- getAuthState(): AuthState;
92
- /**
93
- * Get current user (loads if not cached)
94
- */
95
- getCurrentUser(): Promise<any>;
96
- /**
97
- * Subscribe to authentication state changes
98
- */
99
- onAuthStateChange(callback: (state: AuthState) => void): () => void;
100
- /**
101
- * Notify all listeners of state changes
102
- */
103
- private notifyStateChange;
104
- /**
105
- * Format error responses consistently
106
- */
107
- private formatError;
108
- /**
109
- * Get authenticated HTTP client for making API calls
110
- */
111
- getClient(): AxiosInstance;
112
- /**
113
- * Check username availability
114
- */
115
- checkUsernameAvailability(username: string): Promise<{
116
- available: boolean;
117
- message: string;
118
- }>;
119
- /**
120
- * Check email availability
121
- */
122
- checkEmailAvailability(email: string): Promise<{
123
- available: boolean;
124
- message: string;
125
- }>;
126
- }
127
- /**
128
- * Initialize global authentication manager
129
- */
130
- export declare function initializeAuth(baseURL: string): AuthenticationManager;
131
- /**
132
- * Get global authentication manager instance
133
- */
134
- export declare function getAuthManager(): AuthenticationManager;
135
- export {};
136
- //# sourceMappingURL=auth-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-manager.d.ts","sourceRoot":"","sources":["../../../src/core/auth-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAc,EAAE,aAAa,EAA0C,MAAM,OAAO,CAAC;AAIrF,UAAU,UAAU;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AASD,UAAU,SAAS;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;CAC3B;AAED,UAAU,gBAAgB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,aAAa;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,GAAG,CAAC;IACV,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,qBAAqB;IAChC,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,IAAI,CAAoB;IAChC,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,SAAS,CAAsC;IACvD,OAAO,CAAC,UAAU,CAAsB;gBAE5B,OAAO,EAAE,MAAM;IAW3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA4DzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAcxB;;OAEG;YACW,qBAAqB;IAsBnC;;OAEG;YACW,oBAAoB;IAmBlC;;OAEG;YACW,gBAAgB;IAsB9B;;OAEG;IACG,KAAK,CAAC,WAAW,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IAuBlE;;OAEG;IACG,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAuBvG;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B7B;;OAEG;YACW,aAAa;IAsB3B;;OAEG;YACW,mBAAmB;IAoBjC;;OAEG;YACW,SAAS;IAUvB;;OAEG;YACW,gBAAgB;IAU9B;;OAEG;IACH,YAAY,IAAI,SAAS;IAQzB;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC;IAYpC;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,GAAG,MAAM,IAAI;IAYnE;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;OAEG;IACH,OAAO,CAAC,WAAW;IAYnB;;OAEG;IACH,SAAS,IAAI,aAAa;IAI1B;;OAEG;IACG,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAanG;;OAEG;IACG,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAY9F;AAKD;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAKrE;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,qBAAqB,CAKtD"}
@@ -1,79 +0,0 @@
1
- /**
2
- * Zero-Config Authentication Hook for React/React Native
3
- *
4
- * Provides automatic authentication state management with minimal setup required.
5
- */
6
- import { ReactNode } from 'react';
7
- interface AuthState {
8
- isAuthenticated: boolean;
9
- isLoading: boolean;
10
- user: any | null;
11
- error: string | null;
12
- }
13
- interface AuthContextValue extends AuthState {
14
- login: (username: string, password: string) => Promise<void>;
15
- register: (username: string, email: string, password: string) => Promise<void>;
16
- logout: () => Promise<void>;
17
- getCurrentUser: () => Promise<any>;
18
- checkUsernameAvailability: (username: string) => Promise<{
19
- available: boolean;
20
- message: string;
21
- }>;
22
- checkEmailAvailability: (email: string) => Promise<{
23
- available: boolean;
24
- message: string;
25
- }>;
26
- clearError: () => void;
27
- }
28
- interface AuthProviderProps {
29
- children: ReactNode;
30
- baseURL?: string;
31
- }
32
- /**
33
- * Authentication Provider Component
34
- *
35
- * Wrap your app with this provider to enable zero-config authentication.
36
- * All authentication state will be automatically managed.
37
- */
38
- export declare function AuthProvider({ children, baseURL }: AuthProviderProps): import("react/jsx-runtime").JSX.Element;
39
- /**
40
- * Authentication Hook
41
- *
42
- * Use this hook in any component to access authentication state and methods.
43
- * No additional setup required - just wrap your app with AuthProvider.
44
- */
45
- export declare function useAuth(): AuthContextValue;
46
- /**
47
- * Higher-Order Component for authentication
48
- *
49
- * Wraps a component to ensure user is authenticated before rendering.
50
- * Automatically redirects to login if not authenticated.
51
- */
52
- export declare function withAuth<P extends object>(Component: React.ComponentType<P>, options?: {
53
- redirectTo?: () => void;
54
- LoadingComponent?: React.ComponentType;
55
- requireAuth?: boolean;
56
- }): (props: P) => import("react/jsx-runtime").JSX.Element | null;
57
- /**
58
- * Hook for authenticated API calls
59
- *
60
- * Returns an authenticated HTTP client that automatically handles tokens.
61
- */
62
- export declare function useOxyClient(): import("axios").AxiosInstance;
63
- /**
64
- * Hook for authentication status only (minimal re-renders)
65
- */
66
- export declare function useAuthStatus(): {
67
- isAuthenticated: boolean;
68
- isLoading: boolean;
69
- };
70
- /**
71
- * Hook for current user data
72
- */
73
- export declare function useCurrentUser(): {
74
- user: any | null;
75
- isLoading: boolean;
76
- refetch: () => Promise<any>;
77
- };
78
- export {};
79
- //# sourceMappingURL=use-auth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-auth.d.ts","sourceRoot":"","sources":["../../../src/core/use-auth.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAA+D,SAAS,EAAE,MAAM,OAAO,CAAC;AAG/F,UAAU,SAAS;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,UAAU,gBAAiB,SAAQ,SAAS;IAC1C,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,cAAc,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClG,sBAAsB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5F,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,OAA8B,EAAE,EAAE,iBAAiB,2CAgH3F;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,IAAI,gBAAgB,CAQ1C;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,MAAM,EACvC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EACjC,OAAO,GAAE;IACP,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,gBAAgB,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;CAClB,IAQiC,OAAO,CAAC,oDAwBhD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,kCAG3B;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI;IAAE,eAAe,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAGhF;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI;IAAE,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;CAAE,CAQtG"}
@@ -1,105 +0,0 @@
1
- import { OxyServices } from '../core';
2
- import jwt from 'jsonwebtoken';
3
-
4
- // Mock axios
5
- jest.mock('axios', () => ({
6
- create: jest.fn(() => ({
7
- get: jest.fn(),
8
- post: jest.fn(),
9
- put: jest.fn(),
10
- delete: jest.fn(),
11
- interceptors: {
12
- request: { use: jest.fn() },
13
- response: { use: jest.fn() }
14
- },
15
- defaults: { baseURL: 'http://localhost:3001' }
16
- }))
17
- }));
18
-
19
- describe('createAuthenticateTokenMiddleware', () => {
20
- let oxyServices: OxyServices;
21
- let mockReq: any;
22
- let mockRes: any;
23
- let mockNext: any;
24
-
25
- beforeEach(() => {
26
- oxyServices = new OxyServices({ baseURL: 'http://localhost:3001' });
27
-
28
- mockReq = {
29
- headers: {
30
- authorization: 'Bearer test-token'
31
- }
32
- };
33
-
34
- mockRes = {
35
- status: jest.fn().mockReturnThis(),
36
- json: jest.fn()
37
- };
38
-
39
- mockNext = jest.fn();
40
- });
41
-
42
- it('should create middleware function', () => {
43
- const middleware = oxyServices.createAuthenticateTokenMiddleware();
44
- expect(typeof middleware).toBe('function');
45
- });
46
-
47
- it('should handle missing token', async () => {
48
- mockReq.headers.authorization = undefined;
49
-
50
- const middleware = oxyServices.createAuthenticateTokenMiddleware();
51
- await middleware(mockReq, mockRes, mockNext);
52
-
53
- expect(mockRes.status).toHaveBeenCalledWith(401);
54
- expect(mockRes.json).toHaveBeenCalledWith({
55
- message: 'Access token required',
56
- code: 'MISSING_TOKEN'
57
- });
58
- expect(mockNext).not.toHaveBeenCalled();
59
- });
60
-
61
- it('should handle invalid authorization header format', async () => {
62
- mockReq.headers.authorization = 'InvalidFormat test-token';
63
-
64
- const middleware = oxyServices.createAuthenticateTokenMiddleware();
65
- await middleware(mockReq, mockRes, mockNext);
66
-
67
- expect(mockRes.status).toHaveBeenCalledWith(401);
68
- expect(mockRes.json).toHaveBeenCalledWith({
69
- message: 'Access token required',
70
- code: 'MISSING_TOKEN'
71
- });
72
- expect(mockNext).not.toHaveBeenCalled();
73
- });
74
-
75
- it('should call custom error handler when provided', async () => {
76
- mockReq.headers.authorization = undefined;
77
- const customErrorHandler = jest.fn();
78
-
79
- const middleware = oxyServices.createAuthenticateTokenMiddleware({
80
- onError: customErrorHandler
81
- });
82
-
83
- await middleware(mockReq, mockRes, mockNext);
84
-
85
- expect(customErrorHandler).toHaveBeenCalledWith({
86
- message: 'Access token required',
87
- code: 'MISSING_TOKEN',
88
- status: 401
89
- });
90
- expect(mockNext).not.toHaveBeenCalled();
91
- });
92
-
93
- it('should set loadFullUser to true by default', () => {
94
- const middleware = oxyServices.createAuthenticateTokenMiddleware();
95
- // This is an internal implementation detail, but we can verify the function exists
96
- expect(typeof middleware).toBe('function');
97
- });
98
-
99
- it('should accept loadFullUser option', () => {
100
- const middleware = oxyServices.createAuthenticateTokenMiddleware({
101
- loadFullUser: false
102
- });
103
- expect(typeof middleware).toBe('function');
104
- });
105
- });
@@ -1,10 +0,0 @@
1
- // Jest setup file
2
- import '@testing-library/jest-dom';
3
-
4
- // Mock console methods to reduce noise in tests
5
- global.console = {
6
- ...console,
7
- warn: jest.fn(),
8
- error: jest.fn(),
9
- log: jest.fn(),
10
- };