@icanbwell/bwell-sdk-ts 0.2.0 → 0.3.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 (327) hide show
  1. package/README.md +20 -59
  2. package/dist/__version__.d.ts +1 -1
  3. package/dist/__version__.js +1 -2
  4. package/dist/api/api-provider-factory.js +0 -1
  5. package/dist/api/base/activity/activity-manager.d.ts +4 -0
  6. package/dist/api/base/activity/activity-manager.js +0 -1
  7. package/dist/api/base/activity/get-tasks-request.js +0 -1
  8. package/dist/api/base/activity/index.d.ts +1 -1
  9. package/dist/api/base/activity/index.js +0 -1
  10. package/dist/api/base/activity/types.js +0 -1
  11. package/dist/api/base/activity/update-task-status-request.js +0 -1
  12. package/dist/api/base/api-provider.js +0 -1
  13. package/dist/api/base/connection/connection-manager.d.ts +19 -5
  14. package/dist/api/base/connection/connection-manager.js +0 -1
  15. package/dist/api/base/connection/connection-request.js +0 -1
  16. package/dist/api/base/connection/index.d.ts +1 -1
  17. package/dist/api/base/connection/index.js +0 -1
  18. package/dist/api/base/device/device-manager.d.ts +1 -1
  19. package/dist/api/base/device/device-manager.js +1 -2
  20. package/dist/api/base/device/device-request.js +0 -1
  21. package/dist/api/base/device/index.d.ts +1 -1
  22. package/dist/api/base/device/index.js +1 -1
  23. package/dist/api/base/errors.js +0 -1
  24. package/dist/api/base/event/event-manager.d.ts +3 -0
  25. package/dist/api/base/event/event-manager.js +0 -1
  26. package/dist/api/base/event/event-request.js +1 -2
  27. package/dist/api/base/event/index.d.ts +1 -1
  28. package/dist/api/base/event/index.js +0 -1
  29. package/dist/api/base/health-data/health-data-request.js +0 -1
  30. package/dist/api/base/health-data/health-manager.d.ts +78 -21
  31. package/dist/api/base/health-data/health-manager.js +0 -1
  32. package/dist/api/base/health-data/index.d.ts +2 -2
  33. package/dist/api/base/health-data/index.js +1 -2
  34. package/dist/api/base/health-data/lab-knowledge-request.js +0 -1
  35. package/dist/api/base/health-data/medication-knowledge-request.js +0 -1
  36. package/dist/api/base/identity/identity-manager.d.ts +11 -2
  37. package/dist/api/base/identity/identity-manager.js +0 -1
  38. package/dist/api/base/identity/index.js +0 -1
  39. package/dist/api/base/index.js +0 -1
  40. package/dist/api/base/requests/index.js +0 -1
  41. package/dist/api/base/requests/search-date-validation-cases.js +0 -1
  42. package/dist/api/base/requests/search-date.js +0 -1
  43. package/dist/api/base/requests/search-token.js +0 -1
  44. package/dist/api/base/search/index.d.ts +1 -1
  45. package/dist/api/base/search/index.js +0 -1
  46. package/dist/api/base/search/request-connection-request.js +0 -1
  47. package/dist/api/base/search/search-manager.d.ts +7 -1
  48. package/dist/api/base/search/search-manager.js +0 -1
  49. package/dist/api/base/search/search-request.js +0 -1
  50. package/dist/api/base/user/create-consent-request.js +0 -1
  51. package/dist/api/base/user/get-consents-request.js +0 -1
  52. package/dist/api/base/user/index.d.ts +1 -1
  53. package/dist/api/base/user/index.js +0 -1
  54. package/dist/api/base/user/types.js +0 -1
  55. package/dist/api/base/user/update-profile-request.js +0 -1
  56. package/dist/api/base/user/user-manager.d.ts +6 -1
  57. package/dist/api/base/user/user-manager.js +0 -1
  58. package/dist/api/graphql-api/activity/activity-request-factories.js +0 -1
  59. package/dist/api/graphql-api/activity/graphql-activity-manager.js +0 -1
  60. package/dist/api/graphql-api/activity/index.js +0 -1
  61. package/dist/api/graphql-api/connection/graphql-connection-manager.js +0 -1
  62. package/dist/api/graphql-api/connection/graphql-get-member-connections-bwell-response-factory.js +0 -1
  63. package/dist/api/graphql-api/connection/index.js +0 -1
  64. package/dist/api/graphql-api/device/device-request-factory.js +0 -1
  65. package/dist/api/graphql-api/device/graphql-device-manager.js +0 -1
  66. package/dist/api/graphql-api/device/index.js +0 -1
  67. package/dist/api/graphql-api/errors/errors.js +11 -2
  68. package/dist/api/graphql-api/errors/index.js +0 -1
  69. package/dist/api/graphql-api/event/event-request-factory.js +0 -1
  70. package/dist/api/graphql-api/event/graphql-event-manager.js +0 -1
  71. package/dist/api/graphql-api/event/index.js +0 -1
  72. package/dist/api/graphql-api/graphql-api-provider.js +0 -1
  73. package/dist/api/graphql-api/graphql-manager/graphql-manager.js +0 -1
  74. package/dist/api/graphql-api/graphql-manager/index.js +0 -1
  75. package/dist/api/graphql-api/graphql-sdk/graphql-sdk.js +0 -1
  76. package/dist/api/graphql-api/graphql-sdk/index.js +0 -1
  77. package/dist/api/graphql-api/healthdata/graphql-health-manager.js +0 -1
  78. package/dist/api/graphql-api/healthdata/index.js +0 -1
  79. package/dist/api/graphql-api/identity/graphql-identity-manager.d.ts +3 -2
  80. package/dist/api/graphql-api/identity/graphql-identity-manager.js +27 -6
  81. package/dist/api/graphql-api/identity/index.js +0 -1
  82. package/dist/api/graphql-api/index.js +0 -1
  83. package/dist/api/graphql-api/search/connection-search-request-factory.js +0 -1
  84. package/dist/api/graphql-api/search/graphql-search-manager.js +0 -1
  85. package/dist/api/graphql-api/search/index.js +0 -1
  86. package/dist/api/graphql-api/search/provider-search-request-factory.js +0 -1
  87. package/dist/api/graphql-api/search/request-connection-request-factory.js +0 -1
  88. package/dist/api/graphql-api/search/search-request-factory.js +0 -1
  89. package/dist/api/graphql-api/user/create-consent-request-factory.js +0 -1
  90. package/dist/api/graphql-api/user/get-consent-request-factory.js +0 -1
  91. package/dist/api/graphql-api/user/graphql-user-manager.js +0 -1
  92. package/dist/api/graphql-api/user/index.js +0 -1
  93. package/dist/api/graphql-api/user/update-profile-request-factory.js +0 -1
  94. package/dist/api/identity-manager-factory.js +0 -1
  95. package/dist/api/index.js +0 -1
  96. package/dist/auth/auth-strategy-factory.js +8 -4
  97. package/dist/auth/auth-strategy.js +0 -1
  98. package/dist/auth/credentials.d.ts +1 -1
  99. package/dist/auth/credentials.js +1 -2
  100. package/dist/auth/index.js +0 -1
  101. package/dist/auth/oauth-strategy.js +1 -2
  102. package/dist/auth/username-password-strategy.d.ts +12 -0
  103. package/dist/auth/username-password-strategy.js +52 -0
  104. package/dist/bwell-sdk/bwell-sdk.d.ts +46 -0
  105. package/dist/bwell-sdk/bwell-sdk.js +47 -4
  106. package/dist/bwell-sdk/mocks.d.ts +0 -1
  107. package/dist/bwell-sdk/mocks.js +0 -1
  108. package/dist/config/bwell-config.js +0 -1
  109. package/dist/config/config-manager.js +0 -1
  110. package/dist/config/context.js +0 -1
  111. package/dist/config/index.js +0 -1
  112. package/dist/config/sdk-config.d.ts +2 -1
  113. package/dist/config/sdk-config.js +2 -2
  114. package/dist/errors/authentication-error.js +0 -1
  115. package/dist/errors/bwell-error.d.ts +13 -0
  116. package/dist/errors/bwell-error.js +13 -1
  117. package/dist/errors/illegal-argument-error.js +0 -1
  118. package/dist/errors/illegal-state-error.js +0 -1
  119. package/dist/errors/index.js +0 -1
  120. package/dist/errors/invalid-client-key-error.js +0 -1
  121. package/dist/errors/invalid-credentials-type-error.js +0 -1
  122. package/dist/errors/invalid-token-error.d.ts +4 -0
  123. package/dist/errors/invalid-token-error.js +4 -1
  124. package/dist/errors/network-error.js +0 -1
  125. package/dist/errors/operation-outcome-error.js +0 -1
  126. package/dist/errors/unknown-error.js +0 -1
  127. package/dist/errors/validation-error.js +0 -1
  128. package/dist/graphql/index.js +0 -1
  129. package/dist/graphql/operations/index.d.ts +23 -7
  130. package/dist/graphql/operations/index.js +38 -1
  131. package/dist/graphql/operations/types.d.ts +4692 -724
  132. package/dist/graphql/operations/types.js +0 -1
  133. package/dist/graphql/schema.d.ts +560 -274
  134. package/dist/graphql/schema.js +145 -25
  135. package/dist/index.d.ts +1 -0
  136. package/dist/index.js +1 -1
  137. package/dist/logger/console/console-formatter.js +0 -1
  138. package/dist/logger/console/console-logger-provider.js +0 -1
  139. package/dist/logger/console/console-logger.js +0 -1
  140. package/dist/logger/console/index.js +0 -1
  141. package/dist/logger/index.js +0 -1
  142. package/dist/logger/logger-formatter.js +0 -1
  143. package/dist/logger/logger-provider-factory.js +0 -1
  144. package/dist/logger/logger-provider.js +0 -1
  145. package/dist/logger/logger.js +0 -1
  146. package/dist/logger/otel/index.js +0 -1
  147. package/dist/logger/otel/otel-logger-provider.js +0 -1
  148. package/dist/logger/otel/otel-logger.js +0 -1
  149. package/dist/logger/severity.js +0 -1
  150. package/dist/models/coding.js +0 -1
  151. package/dist/models/fhir-error.js +0 -1
  152. package/dist/models/index.js +0 -1
  153. package/dist/models/operation-outcome.js +0 -1
  154. package/dist/models/user.js +0 -1
  155. package/dist/requests/index.js +0 -1
  156. package/dist/requests/paged-request.js +0 -1
  157. package/dist/requests/request.js +0 -1
  158. package/dist/requests/validator.js +0 -1
  159. package/dist/results/bwell-query-result-factory.js +0 -1
  160. package/dist/results/bwell-query-result.js +0 -1
  161. package/dist/results/bwell-transaction-result.d.ts +23 -10
  162. package/dist/results/bwell-transaction-result.js +10 -3
  163. package/dist/results/index.js +0 -1
  164. package/dist/telemetry/index.js +0 -1
  165. package/dist/telemetry/open-telemetry-instrumentation.d.ts +2 -1
  166. package/dist/telemetry/open-telemetry-instrumentation.js +7 -7
  167. package/dist/telemetry/open-telemetry.d.ts +2 -2
  168. package/dist/telemetry/open-telemetry.js +5 -13
  169. package/dist/telemetry/telemetry.js +0 -1
  170. package/dist/tokens/index.js +0 -1
  171. package/dist/tokens/jwt-token-manager.js +1 -2
  172. package/dist/tokens/token-storage.js +0 -1
  173. package/dist/utils/base64.js +0 -1
  174. package/dist/utils/index.js +0 -1
  175. package/dist/utils/parsing-utils.js +0 -1
  176. package/dist/utils/runtime.js +0 -1
  177. package/dist/utils/string-utils.js +0 -1
  178. package/dist/utils/type-utils.d.ts +2 -0
  179. package/dist/utils/type-utils.js +6 -1
  180. package/dist/utils/version.js +0 -1
  181. package/package.json +29 -27
  182. package/dist/__version__.js.map +0 -1
  183. package/dist/api/api-provider-factory.js.map +0 -1
  184. package/dist/api/base/activity/activity-manager.js.map +0 -1
  185. package/dist/api/base/activity/get-tasks-request.js.map +0 -1
  186. package/dist/api/base/activity/index.js.map +0 -1
  187. package/dist/api/base/activity/types.js.map +0 -1
  188. package/dist/api/base/activity/update-task-status-request.js.map +0 -1
  189. package/dist/api/base/api-provider.js.map +0 -1
  190. package/dist/api/base/connection/connection-manager.js.map +0 -1
  191. package/dist/api/base/connection/connection-request.js.map +0 -1
  192. package/dist/api/base/connection/index.js.map +0 -1
  193. package/dist/api/base/device/device-manager.js.map +0 -1
  194. package/dist/api/base/device/device-request.js.map +0 -1
  195. package/dist/api/base/device/index.js.map +0 -1
  196. package/dist/api/base/errors.js.map +0 -1
  197. package/dist/api/base/event/event-manager.js.map +0 -1
  198. package/dist/api/base/event/event-request.js.map +0 -1
  199. package/dist/api/base/event/index.js.map +0 -1
  200. package/dist/api/base/health-data/health-data-request.js.map +0 -1
  201. package/dist/api/base/health-data/health-manager.js.map +0 -1
  202. package/dist/api/base/health-data/index.js.map +0 -1
  203. package/dist/api/base/health-data/lab-knowledge-request.js.map +0 -1
  204. package/dist/api/base/health-data/medication-knowledge-request.js.map +0 -1
  205. package/dist/api/base/identity/identity-manager.js.map +0 -1
  206. package/dist/api/base/identity/index.js.map +0 -1
  207. package/dist/api/base/index.js.map +0 -1
  208. package/dist/api/base/requests/index.js.map +0 -1
  209. package/dist/api/base/requests/search-date-validation-cases.js.map +0 -1
  210. package/dist/api/base/requests/search-date.js.map +0 -1
  211. package/dist/api/base/requests/search-token.js.map +0 -1
  212. package/dist/api/base/search/index.js.map +0 -1
  213. package/dist/api/base/search/request-connection-request.js.map +0 -1
  214. package/dist/api/base/search/search-manager.js.map +0 -1
  215. package/dist/api/base/search/search-request.js.map +0 -1
  216. package/dist/api/base/user/create-consent-request.js.map +0 -1
  217. package/dist/api/base/user/get-consents-request.js.map +0 -1
  218. package/dist/api/base/user/index.js.map +0 -1
  219. package/dist/api/base/user/types.js.map +0 -1
  220. package/dist/api/base/user/update-profile-request.js.map +0 -1
  221. package/dist/api/base/user/user-manager.js.map +0 -1
  222. package/dist/api/graphql-api/activity/activity-request-factories.js.map +0 -1
  223. package/dist/api/graphql-api/activity/graphql-activity-manager.js.map +0 -1
  224. package/dist/api/graphql-api/activity/index.js.map +0 -1
  225. package/dist/api/graphql-api/connection/graphql-connection-manager.js.map +0 -1
  226. package/dist/api/graphql-api/connection/graphql-get-member-connections-bwell-response-factory.js.map +0 -1
  227. package/dist/api/graphql-api/connection/index.js.map +0 -1
  228. package/dist/api/graphql-api/device/device-request-factory.js.map +0 -1
  229. package/dist/api/graphql-api/device/graphql-device-manager.js.map +0 -1
  230. package/dist/api/graphql-api/device/index.js.map +0 -1
  231. package/dist/api/graphql-api/errors/errors.js.map +0 -1
  232. package/dist/api/graphql-api/errors/index.js.map +0 -1
  233. package/dist/api/graphql-api/event/event-request-factory.js.map +0 -1
  234. package/dist/api/graphql-api/event/graphql-event-manager.js.map +0 -1
  235. package/dist/api/graphql-api/event/index.js.map +0 -1
  236. package/dist/api/graphql-api/graphql-api-provider.js.map +0 -1
  237. package/dist/api/graphql-api/graphql-manager/graphql-manager.js.map +0 -1
  238. package/dist/api/graphql-api/graphql-manager/index.js.map +0 -1
  239. package/dist/api/graphql-api/graphql-sdk/graphql-sdk.js.map +0 -1
  240. package/dist/api/graphql-api/graphql-sdk/index.js.map +0 -1
  241. package/dist/api/graphql-api/healthdata/graphql-health-manager.js.map +0 -1
  242. package/dist/api/graphql-api/healthdata/index.js.map +0 -1
  243. package/dist/api/graphql-api/identity/graphql-identity-manager.js.map +0 -1
  244. package/dist/api/graphql-api/identity/index.js.map +0 -1
  245. package/dist/api/graphql-api/index.js.map +0 -1
  246. package/dist/api/graphql-api/search/connection-search-request-factory.js.map +0 -1
  247. package/dist/api/graphql-api/search/graphql-search-manager.js.map +0 -1
  248. package/dist/api/graphql-api/search/index.js.map +0 -1
  249. package/dist/api/graphql-api/search/provider-search-request-factory.js.map +0 -1
  250. package/dist/api/graphql-api/search/request-connection-request-factory.js.map +0 -1
  251. package/dist/api/graphql-api/search/search-request-factory.js.map +0 -1
  252. package/dist/api/graphql-api/user/create-consent-request-factory.js.map +0 -1
  253. package/dist/api/graphql-api/user/get-consent-request-factory.js.map +0 -1
  254. package/dist/api/graphql-api/user/graphql-user-manager.js.map +0 -1
  255. package/dist/api/graphql-api/user/index.js.map +0 -1
  256. package/dist/api/graphql-api/user/update-profile-request-factory.js.map +0 -1
  257. package/dist/api/identity-manager-factory.js.map +0 -1
  258. package/dist/api/index.js.map +0 -1
  259. package/dist/auth/auth-strategy-factory.js.map +0 -1
  260. package/dist/auth/auth-strategy.js.map +0 -1
  261. package/dist/auth/credentials.js.map +0 -1
  262. package/dist/auth/index.js.map +0 -1
  263. package/dist/auth/oauth-strategy.js.map +0 -1
  264. package/dist/bwell-sdk/bwell-sdk.js.map +0 -1
  265. package/dist/bwell-sdk/mocks.js.map +0 -1
  266. package/dist/config/bwell-config.js.map +0 -1
  267. package/dist/config/config-manager.js.map +0 -1
  268. package/dist/config/context.js.map +0 -1
  269. package/dist/config/index.js.map +0 -1
  270. package/dist/config/sdk-config.js.map +0 -1
  271. package/dist/errors/authentication-error.js.map +0 -1
  272. package/dist/errors/bwell-error.js.map +0 -1
  273. package/dist/errors/illegal-argument-error.js.map +0 -1
  274. package/dist/errors/illegal-state-error.js.map +0 -1
  275. package/dist/errors/index.js.map +0 -1
  276. package/dist/errors/invalid-client-key-error.js.map +0 -1
  277. package/dist/errors/invalid-credentials-type-error.js.map +0 -1
  278. package/dist/errors/invalid-token-error.js.map +0 -1
  279. package/dist/errors/network-error.js.map +0 -1
  280. package/dist/errors/operation-outcome-error.js.map +0 -1
  281. package/dist/errors/unknown-error.js.map +0 -1
  282. package/dist/errors/validation-error.js.map +0 -1
  283. package/dist/graphql/index.js.map +0 -1
  284. package/dist/graphql/operations/index.js.map +0 -1
  285. package/dist/graphql/operations/types.js.map +0 -1
  286. package/dist/graphql/schema.js.map +0 -1
  287. package/dist/index.js.map +0 -1
  288. package/dist/logger/console/console-formatter.js.map +0 -1
  289. package/dist/logger/console/console-logger-provider.js.map +0 -1
  290. package/dist/logger/console/console-logger.js.map +0 -1
  291. package/dist/logger/console/index.js.map +0 -1
  292. package/dist/logger/index.js.map +0 -1
  293. package/dist/logger/logger-formatter.js.map +0 -1
  294. package/dist/logger/logger-provider-factory.js.map +0 -1
  295. package/dist/logger/logger-provider.js.map +0 -1
  296. package/dist/logger/logger.js.map +0 -1
  297. package/dist/logger/otel/index.js.map +0 -1
  298. package/dist/logger/otel/otel-logger-provider.js.map +0 -1
  299. package/dist/logger/otel/otel-logger.js.map +0 -1
  300. package/dist/logger/severity.js.map +0 -1
  301. package/dist/models/coding.js.map +0 -1
  302. package/dist/models/fhir-error.js.map +0 -1
  303. package/dist/models/index.js.map +0 -1
  304. package/dist/models/operation-outcome.js.map +0 -1
  305. package/dist/models/user.js.map +0 -1
  306. package/dist/requests/index.js.map +0 -1
  307. package/dist/requests/paged-request.js.map +0 -1
  308. package/dist/requests/request.js.map +0 -1
  309. package/dist/requests/validator.js.map +0 -1
  310. package/dist/results/bwell-query-result-factory.js.map +0 -1
  311. package/dist/results/bwell-query-result.js.map +0 -1
  312. package/dist/results/bwell-transaction-result.js.map +0 -1
  313. package/dist/results/index.js.map +0 -1
  314. package/dist/telemetry/index.js.map +0 -1
  315. package/dist/telemetry/open-telemetry-instrumentation.js.map +0 -1
  316. package/dist/telemetry/open-telemetry.js.map +0 -1
  317. package/dist/telemetry/telemetry.js.map +0 -1
  318. package/dist/tokens/index.js.map +0 -1
  319. package/dist/tokens/jwt-token-manager.js.map +0 -1
  320. package/dist/tokens/token-storage.js.map +0 -1
  321. package/dist/utils/base64.js.map +0 -1
  322. package/dist/utils/index.js.map +0 -1
  323. package/dist/utils/parsing-utils.js.map +0 -1
  324. package/dist/utils/runtime.js.map +0 -1
  325. package/dist/utils/string-utils.js.map +0 -1
  326. package/dist/utils/type-utils.js.map +0 -1
  327. package/dist/utils/version.js.map +0 -1
@@ -4,8 +4,13 @@ import type { BWellQueryResult, BWellTransactionResult } from "../../../results/
4
4
  import { BaseManagerError } from "../errors.js";
5
5
  import { RequestConnectionRequest } from "./request-connection-request.js";
6
6
  import { SearchRequest } from "./search-request.js";
7
- export type SearchResults = ProviderSearchQueryResults["providers"];
7
+ type SearchResultsType = ProviderSearchQueryResults["providers"];
8
+ export interface SearchResults extends SearchResultsType {
9
+ }
8
10
  export type RequestConnectionResults = RequestConnectionMutationResults["requestConnection"];
11
+ /**
12
+ * The SearchManager interface provides methods for searching for providers and connections.
13
+ */
9
14
  export interface SearchManager {
10
15
  /**
11
16
  * Performs a general search based on a SearchRequest
@@ -39,3 +44,4 @@ export interface SearchManager {
39
44
  */
40
45
  requestConnection(request: RequestConnectionRequest): Promise<BWellTransactionResult<RequestConnectionResults, BaseManagerError>>;
41
46
  }
47
+ export {};
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=search-manager.js.map
@@ -76,4 +76,3 @@ const filterFieldValueCache = new Set(Object.values(GraphQLFilterField));
76
76
  export function isValidFilterField(filterField) {
77
77
  return filterFieldValueCache.has(filterField);
78
78
  }
79
- //# sourceMappingURL=search-request.js.map
@@ -30,4 +30,3 @@ export class CreateConsentRequest extends ValidationRequest {
30
30
  this.validator = new CreateConsentRequestValidator();
31
31
  }
32
32
  }
33
- //# sourceMappingURL=create-consent-request.js.map
@@ -13,4 +13,3 @@ export class GetConsentsRequest extends ValidationRequest {
13
13
  this.validator = new GetConsentsRequestValidator();
14
14
  }
15
15
  }
16
- //# sourceMappingURL=get-consents-request.js.map
@@ -2,4 +2,4 @@ export { UpdateProfileRequest, UpdateProfileRequestInput, } from "./update-profi
2
2
  export { GetConsentsRequestInput, GetConsentsRequest, } from "./get-consents-request.js";
3
3
  export { CreateConsentRequest, CreateConsentRequestInput, } from "./create-consent-request.js";
4
4
  export type { CategoryCode, ConsentProvisionType, ConsentStatus, PersonGender, } from "./types.js";
5
- export { ProfileResults, DeleteUserResults, UpdateProfileResults, GetConsentsResults, CreateConsentResults, } from "./user-manager.js";
5
+ export { ProfileResults, DeleteUserResults, UpdateProfileResults, GetConsentsResults, CreateConsentResults, UserManager, } from "./user-manager.js";
@@ -1,4 +1,3 @@
1
1
  export { UpdateProfileRequest, } from "./update-profile-request.js";
2
2
  export { GetConsentsRequest, } from "./get-consents-request.js";
3
3
  export { CreateConsentRequest, } from "./create-consent-request.js";
4
- //# sourceMappingURL=index.js.map
@@ -15,4 +15,3 @@ const consentProvisionTypeCache = new Set(Object.values(GraphQLConsentProvisionT
15
15
  export function isValidConsentProvisionType(type) {
16
16
  return consentProvisionTypeCache.has(type);
17
17
  }
18
- //# sourceMappingURL=types.js.map
@@ -18,4 +18,3 @@ export class UpdateProfileRequest extends ValidationRequest {
18
18
  this.validator = new UpdateProfileRequestValidator();
19
19
  }
20
20
  }
21
- //# sourceMappingURL=update-profile-request.js.map
@@ -6,10 +6,15 @@ import { CreateConsentRequest } from "./create-consent-request.js";
6
6
  import { GetConsentsRequest } from "./get-consents-request.js";
7
7
  import { UpdateProfileRequest } from "./update-profile-request.js";
8
8
  export type ProfileResults = GetProfileQueryResults["userProfile"];
9
- export type DeleteUserResults = DeleteMutationResults["updateUserAccountStatus"];
9
+ export type DeleteUserResultsType = DeleteMutationResults["updateUserAccountStatus"];
10
+ export interface DeleteUserResults extends DeleteUserResultsType {
11
+ }
10
12
  export type UpdateProfileResults = UpdateUserProfileMutationResults["updateUserProfile"];
11
13
  export type GetConsentsResults = SearchConsentQueryResults["search"];
12
14
  export type CreateConsentResults = CreateConsentMutationResults["createConsent"];
15
+ /**
16
+ * The UserManager interface provides methods for managing user data, including FHIR Consent (https://build.fhir.org/consent.html)
17
+ */
13
18
  export interface UserManager {
14
19
  /**
15
20
  * Retrieves a user's profile data.
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=user-manager.js.map
@@ -64,4 +64,3 @@ _GetTasksRequestFactory_instances = new WeakSet(), _GetTasksRequestFactory_toSea
64
64
  values: [searchTokenValues],
65
65
  };
66
66
  };
67
- //# sourceMappingURL=activity-request-factories.js.map
@@ -70,4 +70,3 @@ export class GraphQLActivityManager extends GraphQLManager {
70
70
  }
71
71
  }
72
72
  _GraphQLActivityManager_logger = new WeakMap(), _GraphQLActivityManager_sdk = new WeakMap(), _GraphQLActivityManager_getTaskRequestFactory = new WeakMap();
73
- //# sourceMappingURL=graphql-activity-manager.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-activity-manager.js";
2
- //# sourceMappingURL=index.js.map
@@ -139,4 +139,3 @@ export class GraphQLConnectionManager extends GraphQLManager {
139
139
  }
140
140
  }
141
141
  _GraphQLConnectionManager_sdk = new WeakMap(), _GraphQLConnectionManager_logger = new WeakMap(), _GraphQLConnectionManager_memberConnectionsResponseFactory = new WeakMap();
142
- //# sourceMappingURL=graphql-connection-manager.js.map
@@ -38,4 +38,3 @@ export class GraphQLGetMemberConnectionsBWellResponseFactory {
38
38
  }), result.error);
39
39
  }
40
40
  }
41
- //# sourceMappingURL=graphql-get-member-connections-bwell-response-factory.js.map
@@ -1,3 +1,2 @@
1
1
  export * from "./graphql-connection-manager.js";
2
2
  export * from "./graphql-get-member-connections-bwell-response-factory.js";
3
- //# sourceMappingURL=index.js.map
@@ -13,4 +13,3 @@ export class RegisterDeviceRequestFactory {
13
13
  return Object.assign(Object.assign({}, request.data()), { notificationPreference: true });
14
14
  }
15
15
  }
16
- //# sourceMappingURL=device-request-factory.js.map
@@ -71,4 +71,3 @@ export class GraphQLDeviceManager extends GraphQLManager {
71
71
  }
72
72
  }
73
73
  _GraphQLDeviceManager_sdk = new WeakMap(), _GraphQLDeviceManager_logger = new WeakMap(), _GraphQLDeviceManager_deregisterDeviceRequestFactory = new WeakMap(), _GraphQLDeviceManager_registerDeviceRequestFactory = new WeakMap();
74
- //# sourceMappingURL=graphql-device-manager.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-device-manager.js";
2
- //# sourceMappingURL=index.js.map
@@ -1,5 +1,6 @@
1
1
  import { OperationOutcomeError } from "../../../errors/index.js";
2
2
  import { OperationOutcome, } from "../../../models/index.js";
3
+ import { isNullOrUndefinedOrEmptyString } from "../../../utils/type-utils.js";
3
4
  /**
4
5
  * Checks errors object for an error that should represent an 500 Internal Server Error.
5
6
  *
@@ -68,7 +69,16 @@ export function getBwellErrorFromGraphQLResponse(errors = []) {
68
69
  return null;
69
70
  }
70
71
  const operationOutcome = new OperationOutcome(issues);
71
- return new OperationOutcomeError(operationOutcome);
72
+ const result = new OperationOutcomeError(operationOutcome);
73
+ // If there is no message, we will set the message to be the concatenated error messages
74
+ // If that is also empty, we will set the message to be a generic error message
75
+ if (isNullOrUndefinedOrEmptyString(result.message)) {
76
+ const errorMessages = errors.map((e) => e.message).join(", ");
77
+ result.message = isNullOrUndefinedOrEmptyString(errorMessages)
78
+ ? "Unknown error. Contact b.well support for further assistance."
79
+ : errorMessages;
80
+ }
81
+ return result;
72
82
  }
73
83
  function getFhirErrorFromGraphQLError(error) {
74
84
  const extension = error.extensions;
@@ -92,4 +102,3 @@ function isValidResource(resource) {
92
102
  }
93
103
  return Array.isArray(issue);
94
104
  }
95
- //# sourceMappingURL=errors.js.map
@@ -1,2 +1 @@
1
1
  export * from "./errors.js";
2
- //# sourceMappingURL=index.js.map
@@ -9,4 +9,3 @@ export class HandleNotificationRequestFactory {
9
9
  };
10
10
  }
11
11
  }
12
- //# sourceMappingURL=event-request-factory.js.map
@@ -63,4 +63,3 @@ export class GraphQLEventManager extends GraphQLManager {
63
63
  }
64
64
  }
65
65
  _GraphQLEventManager_sdk = new WeakMap(), _GraphQLEventManager_logger = new WeakMap(), _GraphQLEventManager_handleNotificationRequestFactory = new WeakMap();
66
- //# sourceMappingURL=graphql-event-manager.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-event-manager.js";
2
- //# sourceMappingURL=index.js.map
@@ -34,4 +34,3 @@ export class GraphQLApiProvider {
34
34
  }
35
35
  }
36
36
  _GraphQLApiProvider_logger = new WeakMap(), _GraphQLApiProvider_graphqlSDK = new WeakMap();
37
- //# sourceMappingURL=graphql-api-provider.js.map
@@ -116,4 +116,3 @@ _GraphQLManager_instances = new WeakSet(), _GraphQLManager_isClientError = funct
116
116
  // At this point, we aren't sure what happenend.
117
117
  return new BWellTransactionFailure(new UnknownError("Unknown error", error));
118
118
  };
119
- //# sourceMappingURL=graphql-manager.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-manager.js";
2
- //# sourceMappingURL=index.js.map
@@ -42,4 +42,3 @@ export function createAuthMiddleware(tokenManager) {
42
42
  return Object.assign(Object.assign({}, request), { headers: Object.assign(Object.assign({}, request.headers), { Authorization: `Bearer ${accessToken}` }) });
43
43
  });
44
44
  }
45
- //# sourceMappingURL=graphql-sdk.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-sdk.js";
2
- //# sourceMappingURL=index.js.map
@@ -403,4 +403,3 @@ export class GraphQLHealthManager extends GraphQLManager {
403
403
  }
404
404
  }
405
405
  _GraphQLHealthManager_sdk = new WeakMap(), _GraphQLHealthManager_logger = new WeakMap();
406
- //# sourceMappingURL=graphql-health-manager.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-health-manager.js";
2
- //# sourceMappingURL=index.js.map
@@ -1,13 +1,14 @@
1
1
  import { type LoggerProvider } from "../../../logger/index.js";
2
2
  import { BWellTransactionResult } from "../../../results/index.js";
3
3
  import { BaseManagerError } from "../../base/errors.js";
4
- import { IdentityManager, type AuthenticateRequest, type AuthenticateResults, type RefreshTokenResults, type RefreshTokensRequest, type SdkConfigurationResult } from "../../base/identity/index.js";
4
+ import { IdentityManager, UsernamePasswordAuthenticateRequest, type AuthenticateResults, type OauthAuthenticateRequest, type RefreshTokenResults, type RefreshTokensRequest, type SdkConfigurationResult } from "../../base/identity/index.js";
5
5
  import { GraphQLManager } from "../graphql-manager/index.js";
6
6
  import type { GraphQLSdk } from "../graphql-sdk/index.js";
7
7
  export declare class GraphQLIdentityManager extends GraphQLManager implements IdentityManager {
8
8
  #private;
9
9
  constructor(sdk: GraphQLSdk, loggerProvider?: LoggerProvider);
10
10
  initialize(clientKey: string): Promise<BWellTransactionResult<SdkConfigurationResult, BaseManagerError>>;
11
- authenticate(authenticateRequest: AuthenticateRequest): Promise<BWellTransactionResult<AuthenticateResults, BaseManagerError>>;
11
+ authenticateWithOauth(authenticateRequest: OauthAuthenticateRequest): Promise<BWellTransactionResult<AuthenticateResults, BaseManagerError>>;
12
+ authenticateWithUsernamePassword(authenticateRequest: UsernamePasswordAuthenticateRequest): Promise<BWellTransactionResult<AuthenticateResults, BaseManagerError>>;
12
13
  refreshAccessToken(refreshTokensRequest: RefreshTokensRequest): Promise<BWellTransactionResult<RefreshTokenResults, BaseManagerError>>;
13
14
  }
@@ -45,19 +45,19 @@ export class GraphQLIdentityManager extends GraphQLManager {
45
45
  return BWellTransactionResult.success(initializeResult.data().initSdk);
46
46
  });
47
47
  }
48
- authenticate(authenticateRequest) {
48
+ authenticateWithOauth(authenticateRequest) {
49
49
  return __awaiter(this, void 0, void 0, function* () {
50
- __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").verbose("exectuting authenticate query...");
50
+ __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").verbose("exectuting oauth authenticate query...");
51
51
  const authResponse = yield this.handleTransaction(__classPrivateFieldGet(this, _GraphQLIdentityManager_sdk, "f").authenticate({}, {
52
52
  Authorization: authenticateRequest.jweToken,
53
53
  ClientKey: authenticateRequest.clientKey,
54
54
  }));
55
- __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").verbose("authenticate query complete", authResponse);
55
+ __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").verbose("oauth authenticate query complete", authResponse);
56
56
  if (authResponse.failure()) {
57
- __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").error("authenticate failed", authResponse);
57
+ __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").error("oauth authenticate failed", authResponse);
58
58
  return authResponse.intoFailure();
59
59
  }
60
- __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").info("authenticate success");
60
+ __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").info("oauth authenticate success");
61
61
  const data = authResponse.data();
62
62
  const authenticateResults = {
63
63
  accessToken: data.getToken.accessToken.jwtToken,
@@ -67,6 +67,28 @@ export class GraphQLIdentityManager extends GraphQLManager {
67
67
  return BWellTransactionResult.success(authenticateResults);
68
68
  });
69
69
  }
70
+ authenticateWithUsernamePassword(authenticateRequest) {
71
+ return __awaiter(this, void 0, void 0, function* () {
72
+ __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").verbose("exectuting username/password authenticate query...");
73
+ const authResponse = yield this.handleTransaction(__classPrivateFieldGet(this, _GraphQLIdentityManager_sdk, "f").login({
74
+ email: authenticateRequest.email,
75
+ password: authenticateRequest.password,
76
+ }));
77
+ __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").verbose("username/password authenticate query complete", authResponse);
78
+ if (authResponse.failure()) {
79
+ __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").error("username/password authenticate failed", authResponse);
80
+ return authResponse.intoFailure();
81
+ }
82
+ __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").info("username/password authenticate success");
83
+ const data = authResponse.data();
84
+ const authenticateResults = {
85
+ accessToken: data.login.accessToken.jwtToken,
86
+ idToken: data.login.idToken.jwtToken,
87
+ refreshToken: data.login.refreshToken.token,
88
+ };
89
+ return BWellTransactionResult.success(authenticateResults);
90
+ });
91
+ }
70
92
  refreshAccessToken(refreshTokensRequest) {
71
93
  return __awaiter(this, void 0, void 0, function* () {
72
94
  __classPrivateFieldGet(this, _GraphQLIdentityManager_logger, "f").verbose("executing refreshAccessToken query...");
@@ -85,4 +107,3 @@ export class GraphQLIdentityManager extends GraphQLManager {
85
107
  }
86
108
  }
87
109
  _GraphQLIdentityManager_sdk = new WeakMap(), _GraphQLIdentityManager_logger = new WeakMap();
88
- //# sourceMappingURL=graphql-identity-manager.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-identity-manager.js";
2
- //# sourceMappingURL=index.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-api-provider.js";
2
- //# sourceMappingURL=index.js.map
@@ -19,4 +19,3 @@ export class ConnectionSearchRequestFactory {
19
19
  }
20
20
  }
21
21
  _ConnectionSearchRequestFactory_searchRequestFactory = new WeakMap();
22
- //# sourceMappingURL=connection-search-request-factory.js.map
@@ -110,4 +110,3 @@ export class GraphQLSearchManager extends GraphQLManager {
110
110
  }
111
111
  }
112
112
  _GraphQLSearchManager_sdk = new WeakMap(), _GraphQLSearchManager_logger = new WeakMap(), _GraphQLSearchManager_searchRequestFactory = new WeakMap(), _GraphQLSearchManager_providerSearchRequestFactory = new WeakMap(), _GraphQLSearchManager_connectionSearchRequestFactory = new WeakMap(), _GraphQLSearchManager_requestConnectionRequestFactory = new WeakMap();
113
- //# sourceMappingURL=graphql-search-manager.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-search-manager.js";
2
- //# sourceMappingURL=index.js.map
@@ -19,4 +19,3 @@ export class ProviderSearchRequestFactory {
19
19
  }
20
20
  }
21
21
  _ProviderSearchRequestFactory_searchRequestFactory = new WeakMap();
22
- //# sourceMappingURL=provider-search-request-factory.js.map
@@ -10,4 +10,3 @@ export class RequestConnectionRequestFactory {
10
10
  };
11
11
  }
12
12
  }
13
- //# sourceMappingURL=request-connection-request-factory.js.map
@@ -42,4 +42,3 @@ export class SearchRequestFactory {
42
42
  return data;
43
43
  }
44
44
  }
45
- //# sourceMappingURL=search-request-factory.js.map
@@ -37,4 +37,3 @@ export class CreateConsentRequestFactory {
37
37
  };
38
38
  }
39
39
  }
40
- //# sourceMappingURL=create-consent-request-factory.js.map
@@ -6,4 +6,3 @@ export class GetConsentRequestFactory {
6
6
  };
7
7
  }
8
8
  }
9
- //# sourceMappingURL=get-consent-request-factory.js.map
@@ -119,4 +119,3 @@ export class GraphQLUserManager extends GraphQLManager {
119
119
  }
120
120
  }
121
121
  _GraphQLUserManager_sdk = new WeakMap(), _GraphQLUserManager_logger = new WeakMap(), _GraphQLUserManager_createConsentRequestFactory = new WeakMap(), _GraphQLUserManager_updateProfileRequestFactory = new WeakMap(), _GraphQLUserManager_getConsentRequestFactory = new WeakMap();
122
- //# sourceMappingURL=graphql-user-manager.js.map
@@ -1,2 +1 @@
1
1
  export * from "./graphql-user-manager.js";
2
- //# sourceMappingURL=index.js.map
@@ -120,4 +120,3 @@ _UpdateProfileRequestFactory_instances = new WeakSet(), _UpdateProfileRequestFac
120
120
  }
121
121
  data.telecom = contactPoints;
122
122
  };
123
- //# sourceMappingURL=update-profile-request-factory.js.map
@@ -6,4 +6,3 @@ export class IdentityManagerFactory {
6
6
  return new GraphQLIdentityManager(sdk, loggerProvider);
7
7
  }
8
8
  }
9
- //# sourceMappingURL=identity-manager-factory.js.map
package/dist/api/index.js CHANGED
@@ -1,2 +1 @@
1
1
  export * from "./base/index.js";
2
- //# sourceMappingURL=index.js.map
@@ -1,15 +1,19 @@
1
1
  import { AuthType } from "../config/index.js";
2
2
  import { ConsoleLoggerProvider } from "../logger/index.js";
3
3
  import { OAuthStrategy } from "./oauth-strategy.js";
4
+ import { UsernamePasswordStrategy } from "./username-password-strategy.js";
4
5
  /**
5
6
  * Factory class to create an AuthStrategy based on a user's configuration
6
7
  */
7
8
  export class AuthStrategyFactory {
8
9
  createAuthStrategy(config, identityManager, loggerProvider = new ConsoleLoggerProvider()) {
9
- if (config.authType !== AuthType.OAuth) {
10
- throw new Error(`Authentication Strategy ${config.authType} has not been implemented yet`);
10
+ switch (config.authType) {
11
+ case AuthType.OAuth:
12
+ return new OAuthStrategy(config, identityManager, loggerProvider);
13
+ case AuthType.UsernamePassword:
14
+ return new UsernamePasswordStrategy(config, identityManager, loggerProvider);
15
+ default:
16
+ throw new Error(`Authentication Strategy ${config.authType} has not been implemented yet`);
11
17
  }
12
- return new OAuthStrategy(config, identityManager, loggerProvider);
13
18
  }
14
19
  }
15
- //# sourceMappingURL=auth-strategy-factory.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=auth-strategy.js.map
@@ -2,7 +2,7 @@ export type OAuthCredentials = {
2
2
  token: string;
3
3
  };
4
4
  export type UserPassCredentials = {
5
- username: string;
5
+ email: string;
6
6
  password: string;
7
7
  };
8
8
  export type Credentials = OAuthCredentials | UserPassCredentials;
@@ -2,6 +2,5 @@ export function isOauthCredentials(credentials) {
2
2
  return "token" in credentials;
3
3
  }
4
4
  export function isUserPassCredentials(credentials) {
5
- return "username" in credentials && "password" in credentials;
5
+ return "email" in credentials && "password" in credentials;
6
6
  }
7
- //# sourceMappingURL=credentials.js.map
@@ -1,3 +1,2 @@
1
1
  export { OAuthStrategy } from "./oauth-strategy.js";
2
2
  export { AuthStrategyFactory } from "./auth-strategy-factory.js";
3
- //# sourceMappingURL=index.js.map
@@ -39,7 +39,7 @@ export class OAuthStrategy {
39
39
  return BWellTransactionResult.failure(new InvalidCredentialsTypeError("Expected OAuthCredentials", credentials));
40
40
  }
41
41
  __classPrivateFieldGet(this, _OAuthStrategy_logger, "f").verbose("authenticating via OAuth strategy...");
42
- const authResults = yield __classPrivateFieldGet(this, _OAuthStrategy_identityManager, "f").authenticate({
42
+ const authResults = yield __classPrivateFieldGet(this, _OAuthStrategy_identityManager, "f").authenticateWithOauth({
43
43
  jweToken: credentials.token,
44
44
  clientKey: __classPrivateFieldGet(this, _OAuthStrategy_sdkConfig, "f").context.clientKey,
45
45
  });
@@ -49,4 +49,3 @@ export class OAuthStrategy {
49
49
  }
50
50
  }
51
51
  _OAuthStrategy_identityManager = new WeakMap(), _OAuthStrategy_logger = new WeakMap(), _OAuthStrategy_sdkConfig = new WeakMap();
52
- //# sourceMappingURL=oauth-strategy.js.map
@@ -0,0 +1,12 @@
1
+ import { AuthenticateResults, IdentityManager } from "../api/base/identity/identity-manager.js";
2
+ import { SdkConfig } from "../config/index.js";
3
+ import { LoggerProvider } from "../logger/index.js";
4
+ import { BWellTransactionResult } from "../results/index.js";
5
+ import { AuthStrategy } from "./auth-strategy.js";
6
+ import type { AuthenticateErrors } from "./auth-strategy.js";
7
+ import { Credentials } from "./credentials.js";
8
+ export declare class UsernamePasswordStrategy implements AuthStrategy {
9
+ #private;
10
+ constructor(sdkConfig: SdkConfig, identityManager: IdentityManager, loggerProvider?: LoggerProvider);
11
+ authenticate(credentials: Credentials): Promise<BWellTransactionResult<AuthenticateResults, AuthenticateErrors>>;
12
+ }
@@ -0,0 +1,52 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
11
+ if (kind === "m") throw new TypeError("Private method is not writable");
12
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
13
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
14
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
15
+ };
16
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
17
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
18
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
19
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
20
+ };
21
+ var _UsernamePasswordStrategy_identityManager, _UsernamePasswordStrategy_logger, _UsernamePasswordStrategy_sdkConfig;
22
+ import { InvalidCredentialsTypeError } from "../errors/index.js";
23
+ import { ConsoleLoggerProvider, } from "../logger/index.js";
24
+ import { BWellTransactionResult } from "../results/index.js";
25
+ import { isUserPassCredentials } from "./credentials.js";
26
+ export class UsernamePasswordStrategy {
27
+ constructor(sdkConfig, identityManager, loggerProvider = new ConsoleLoggerProvider()) {
28
+ _UsernamePasswordStrategy_identityManager.set(this, void 0);
29
+ _UsernamePasswordStrategy_logger.set(this, void 0);
30
+ _UsernamePasswordStrategy_sdkConfig.set(this, void 0);
31
+ __classPrivateFieldSet(this, _UsernamePasswordStrategy_identityManager, identityManager, "f");
32
+ __classPrivateFieldSet(this, _UsernamePasswordStrategy_sdkConfig, sdkConfig, "f");
33
+ __classPrivateFieldSet(this, _UsernamePasswordStrategy_logger, loggerProvider.getLogger("UsernamePasswordStrategy"), "f");
34
+ }
35
+ authenticate(credentials) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ if (!isUserPassCredentials(credentials)) {
38
+ __classPrivateFieldGet(this, _UsernamePasswordStrategy_logger, "f").error("Invalid credentials type provided to UsernamePasswordStrategy. Please provide username and password.");
39
+ return BWellTransactionResult.failure(new InvalidCredentialsTypeError("Expected UserPassCredentials", credentials));
40
+ }
41
+ __classPrivateFieldGet(this, _UsernamePasswordStrategy_logger, "f").verbose("authenticating via UsernamePassword strategy...");
42
+ const authResults = yield __classPrivateFieldGet(this, _UsernamePasswordStrategy_identityManager, "f").authenticateWithUsernamePassword({
43
+ clientKey: __classPrivateFieldGet(this, _UsernamePasswordStrategy_sdkConfig, "f").context.clientKey,
44
+ email: credentials.email,
45
+ password: credentials.password,
46
+ });
47
+ __classPrivateFieldGet(this, _UsernamePasswordStrategy_logger, "f").verbose("finished OAuth authentication");
48
+ return authResults;
49
+ });
50
+ }
51
+ }
52
+ _UsernamePasswordStrategy_identityManager = new WeakMap(), _UsernamePasswordStrategy_logger = new WeakMap(), _UsernamePasswordStrategy_sdkConfig = new WeakMap();
@@ -9,10 +9,56 @@ import { type Credentials } from "../auth/index.js";
9
9
  import { type BWellConfig } from "../config/index.js";
10
10
  import { type AuthenticationError, type InvalidClientKeyError, type InvalidTokenError, type OperationOutcomeError } from "../errors/index.js";
11
11
  import { BWellTransactionResult } from "../results/index.js";
12
+ /**
13
+ * The BWell SDK is the main entry point for the SDK.
14
+ *
15
+ * It is responsible for initializing the SDK, authenticating the user, and providing access to all of the SDK's functionality via the manager classes (see
16
+ [Interfaces](../README.md#interfaces)).
17
+ *
18
+ * @example
19
+ * Simple initialization with oauth authentication and only required config properties. Note that the SDK must be initialized and authenticated for most data access methods to work properly.
20
+ * ```typescript
21
+ * const sdk = new BWellSDK({
22
+ * clientKey: "YOUR_CLIENT_KEY",
23
+ * clientSecret: "YOUR_CLIENT_SECRET",
24
+ * });
25
+ * ```
26
+ */
12
27
  export declare class BWellSDK {
13
28
  #private;
14
29
  constructor(config: BWellConfig);
30
+ /**
31
+ * Initializes the SDK with the provided configuration.
32
+ * @returns A promise that resolves to a BWellTransactionResult with a null data value if the SDK was initialized successfully, or an error if it was not.
33
+ * @example
34
+ * ```typescript
35
+ * const sdk = new BWellSDK({
36
+ * clientKey: "YOUR_CLIENT_KEY",
37
+ * clientSecret: "YOUR_CLIENT_SECRET",
38
+ * });
39
+ *
40
+ * await sdk.initialize();
41
+ * ```
42
+ */
15
43
  initialize(): Promise<BWellTransactionResult<null, InvalidClientKeyError | OperationOutcomeError>>;
44
+ /**
45
+ * Authenticates the user with the provided credentials.
46
+ * @param credentials The credentials to be used for authentication.
47
+ * @returns A promise that resolves to a BWellTransactionResult with a null data value if the user was authenticated successfully, or an error if they were not.
48
+ * @example
49
+ * ```typescript
50
+ * const sdk = new BWellSDK({
51
+ * clientKey: "YOUR_CLIENT_KEY",
52
+ * clientSecret: "YOUR_CLIENT_SECRET",
53
+ * });
54
+ *
55
+ * await sdk.initialize();
56
+ *
57
+ * await sdk.authenticate({
58
+ * token: "YOUR_TOKEN",
59
+ * });
60
+ * ```
61
+ */
16
62
  authenticate(credentials: Credentials): Promise<BWellTransactionResult<null, AuthenticationError | InvalidTokenError>>;
17
63
  get health(): HealthManager;
18
64
  get user(): UserManager;