@crvouga/mockingbird-service-junction 0.1.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 (62) hide show
  1. package/README.md +319 -0
  2. package/dist/catalog.d.ts +63 -0
  3. package/dist/catalog.d.ts.map +1 -0
  4. package/dist/catalog.js +736 -0
  5. package/dist/catalog.js.map +1 -0
  6. package/dist/coverage-corpus.d.ts +76 -0
  7. package/dist/coverage-corpus.d.ts.map +1 -0
  8. package/dist/coverage-corpus.js +166 -0
  9. package/dist/coverage-corpus.js.map +1 -0
  10. package/dist/generated/openapi.d.ts +7 -0
  11. package/dist/generated/openapi.d.ts.map +1 -0
  12. package/dist/generated/openapi.js +5 -0
  13. package/dist/generated/openapi.js.map +1 -0
  14. package/dist/index.d.ts +49 -0
  15. package/dist/index.d.ts.map +1 -0
  16. package/dist/index.js +121 -0
  17. package/dist/index.js.map +1 -0
  18. package/dist/lab-accounts.d.ts +38 -0
  19. package/dist/lab-accounts.d.ts.map +1 -0
  20. package/dist/lab-accounts.js +213 -0
  21. package/dist/lab-accounts.js.map +1 -0
  22. package/dist/orders.d.ts +18 -0
  23. package/dist/orders.d.ts.map +1 -0
  24. package/dist/orders.js +1247 -0
  25. package/dist/orders.js.map +1 -0
  26. package/dist/prefetch.d.ts +43 -0
  27. package/dist/prefetch.d.ts.map +1 -0
  28. package/dist/prefetch.js +131 -0
  29. package/dist/prefetch.js.map +1 -0
  30. package/dist/reshape.d.ts +22 -0
  31. package/dist/reshape.d.ts.map +1 -0
  32. package/dist/reshape.js +190 -0
  33. package/dist/reshape.js.map +1 -0
  34. package/dist/results.d.ts +19 -0
  35. package/dist/results.d.ts.map +1 -0
  36. package/dist/results.js +221 -0
  37. package/dist/results.js.map +1 -0
  38. package/dist/scheduling.d.ts +113 -0
  39. package/dist/scheduling.d.ts.map +1 -0
  40. package/dist/scheduling.js +1508 -0
  41. package/dist/scheduling.js.map +1 -0
  42. package/dist/sealed-corpus.d.ts +28 -0
  43. package/dist/sealed-corpus.d.ts.map +1 -0
  44. package/dist/sealed-corpus.js +17 -0
  45. package/dist/sealed-corpus.js.map +1 -0
  46. package/dist/seed-from.d.ts +27 -0
  47. package/dist/seed-from.d.ts.map +1 -0
  48. package/dist/seed-from.js +523 -0
  49. package/dist/seed-from.js.map +1 -0
  50. package/dist/seeds.d.ts +9 -0
  51. package/dist/seeds.d.ts.map +1 -0
  52. package/dist/seeds.js +9 -0
  53. package/dist/seeds.js.map +1 -0
  54. package/dist/state.d.ts +270 -0
  55. package/dist/state.d.ts.map +1 -0
  56. package/dist/state.js +448 -0
  57. package/dist/state.js.map +1 -0
  58. package/dist/users.d.ts +13 -0
  59. package/dist/users.d.ts.map +1 -0
  60. package/dist/users.js +669 -0
  61. package/dist/users.js.map +1 -0
  62. package/package.json +80 -0
@@ -0,0 +1,213 @@
1
+ /**
2
+ * Team-level lab-account fixtures.
3
+ *
4
+ * Mirrors https://docs.junction.com/lab/overview/lab-accounts for a team-scoped API key:
5
+ * the `ClientFacingLabAccount` shape, the account filters, the four documented selection
6
+ * branches when `lab_account_id` is omitted, and the `allowed_billing` rules.
7
+ *
8
+ * No fixture is placed on `ussl` — an account there would flip that lab from the
9
+ * platform branch to the linked branches and change shipped order behavior. The
10
+ * branch-fixture labs (`nexus`, `mtl`, `crl`, `ihd`) have no catalog lab tests, so the
11
+ * property suite seeds synthetic tests for them.
12
+ */
13
+ import { HttpError, opaqueToken } from "@crvouga/mockingbird-service";
14
+ import { TEAM_LABS } from "./catalog.js";
15
+ import { deterministicUuid, MOCK_TEAM_ID } from "./state.js";
16
+ /** The 50 `USState` values from the docs, alphabetical by state name. */
17
+ export const US_STATES = [
18
+ "AL",
19
+ "AK",
20
+ "AZ",
21
+ "AR",
22
+ "CA",
23
+ "CO",
24
+ "CT",
25
+ "DE",
26
+ "FL",
27
+ "GA",
28
+ "HI",
29
+ "ID",
30
+ "IL",
31
+ "IN",
32
+ "IA",
33
+ "KS",
34
+ "KY",
35
+ "LA",
36
+ "ME",
37
+ "MD",
38
+ "MA",
39
+ "MI",
40
+ "MN",
41
+ "MS",
42
+ "MO",
43
+ "MT",
44
+ "NE",
45
+ "NV",
46
+ "NH",
47
+ "NJ",
48
+ "NM",
49
+ "NY",
50
+ "NC",
51
+ "ND",
52
+ "OH",
53
+ "OK",
54
+ "OR",
55
+ "PA",
56
+ "RI",
57
+ "SC",
58
+ "SD",
59
+ "TN",
60
+ "TX",
61
+ "UT",
62
+ "VT",
63
+ "VA",
64
+ "WA",
65
+ "WV",
66
+ "WI",
67
+ "WY",
68
+ ];
69
+ export const ALL_BILLING_STATES = US_STATES;
70
+ /** `billing_type` values the vendored create-order body accepts. */
71
+ export const BILLING_TYPES = [
72
+ "client_bill",
73
+ "commercial_insurance",
74
+ "patient_bill_passthrough",
75
+ "patient_bill",
76
+ "upfront_payment",
77
+ ];
78
+ export const LAB_ACCOUNT_STATUSES = [
79
+ "active",
80
+ "pending",
81
+ "suspended",
82
+ "ready_to_launch",
83
+ ];
84
+ export const MOCK_ORG_ID = deterministicUuid("junction:org:mock");
85
+ /** Junction platform accounts support every billing type in every state. */
86
+ const PLATFORM_BILLING = Object.fromEntries(BILLING_TYPES.map((type) => [type, ALL_BILLING_STATES]));
87
+ const CLIENT_BILL_ONLY = { client_bill: ALL_BILLING_STATES };
88
+ const account = (key, lab, fields) => ({
89
+ id: deterministicUuid(`junction:lab-account:${key}`),
90
+ lab,
91
+ org_id: fields.org_id ?? MOCK_ORG_ID,
92
+ status: fields.status,
93
+ delegated_flow: "not_delegated",
94
+ provider_account_id: opaqueToken(`junction:lab-account-provider:${key}`, 16),
95
+ account_name: fields.account_name ?? null,
96
+ default_clinical_notes: null,
97
+ business_units: fields.business_units ?? null,
98
+ allowed_billing: fields.allowed_billing,
99
+ team_id_allowlist: fields.team_id_allowlist,
100
+ });
101
+ export const TEAM_LAB_ACCOUNTS = [
102
+ // Branch 2: exactly one active account linked for `quest`; the commercial-insurance
103
+ // state rule lives on this account.
104
+ account("quest-primary", "quest", {
105
+ status: "active",
106
+ account_name: "Quest Diagnostics — primary",
107
+ business_units: ["core", "specialty"],
108
+ allowed_billing: {
109
+ client_bill: ALL_BILLING_STATES,
110
+ commercial_insurance: ["AZ", "CA"],
111
+ },
112
+ team_id_allowlist: [MOCK_TEAM_ID],
113
+ }),
114
+ // Listed but never selected; exercises `status` filters and the explicit-id rejection.
115
+ account("quest-pending", "quest", {
116
+ status: "pending",
117
+ account_name: "Quest Diagnostics — pending",
118
+ allowed_billing: CLIENT_BILL_ONLY,
119
+ team_id_allowlist: [MOCK_TEAM_ID],
120
+ }),
121
+ // Branch 3: multiple active accounts linked for `nexus`.
122
+ account("nexus-a", "nexus", {
123
+ status: "active",
124
+ account_name: "Nexus — A",
125
+ allowed_billing: CLIENT_BILL_ONLY,
126
+ team_id_allowlist: [MOCK_TEAM_ID],
127
+ }),
128
+ account("nexus-b", "nexus", {
129
+ status: "active",
130
+ account_name: "Nexus — B",
131
+ allowed_billing: CLIENT_BILL_ONLY,
132
+ team_id_allowlist: [MOCK_TEAM_ID],
133
+ }),
134
+ // Branch 4: linked accounts, none active.
135
+ account("mtl-suspended", "mtl", {
136
+ status: "suspended",
137
+ account_name: "Molecular Testing Labs — suspended",
138
+ allowed_billing: CLIENT_BILL_ONLY,
139
+ team_id_allowlist: [MOCK_TEAM_ID],
140
+ }),
141
+ account("mtl-pending", "mtl", {
142
+ status: "pending",
143
+ allowed_billing: CLIENT_BILL_ONLY,
144
+ team_id_allowlist: [MOCK_TEAM_ID],
145
+ }),
146
+ // `status` filter coverage for the enum's last value.
147
+ account("crl-ready", "crl", {
148
+ status: "ready_to_launch",
149
+ allowed_billing: CLIENT_BILL_ONLY,
150
+ team_id_allowlist: [MOCK_TEAM_ID],
151
+ }),
152
+ // Org-owned account of another team: absent from the team listing, rejected when used.
153
+ account("ihd-other-team", "ihd", {
154
+ status: "active",
155
+ account_name: "IHD — other team",
156
+ allowed_billing: CLIENT_BILL_ONLY,
157
+ team_id_allowlist: [],
158
+ }),
159
+ ];
160
+ /** Every lab slug in the team lab inventory — these labs have a Junction platform account. */
161
+ export const PLATFORM_ACCOUNT_LABS = TEAM_LABS.map((lab) => String(lab.slug));
162
+ export const labAccountById = (id) => TEAM_LAB_ACCOUNTS.find((entry) => entry.id === id);
163
+ /** Team-linked accounts for a lab, in fixture order. */
164
+ export const linkedLabAccounts = (labSlug, teamId) => TEAM_LAB_ACCOUNTS.filter((entry) => entry.lab === labSlug && entry.team_id_allowlist.includes(teamId));
165
+ export const effectiveBilling = (account) => account === "platform" ? PLATFORM_BILLING : account.allowed_billing;
166
+ /**
167
+ * The documented selection rules, in order: an explicit id must exist, be linked to the
168
+ * team, match the ordered lab and be active; with no id, linked accounts are evaluated
169
+ * against the four documented branches.
170
+ */
171
+ export const selectLabAccount = (labSlug, requestedId, teamId) => {
172
+ if (requestedId !== null) {
173
+ const linked = labAccountById(requestedId);
174
+ if (!linked)
175
+ throw new HttpError(400, { detail: "Lab account does not exist" });
176
+ if (!linked.team_id_allowlist.includes(teamId))
177
+ throw new HttpError(400, { detail: "Lab account is not linked to your team" });
178
+ if (linked.lab !== labSlug)
179
+ throw new HttpError(400, { detail: `Lab account is not associated with lab ${labSlug}` });
180
+ if (linked.status !== "active")
181
+ throw new HttpError(400, { detail: "Lab account is not active" });
182
+ return linked;
183
+ }
184
+ const candidates = linkedLabAccounts(labSlug, teamId);
185
+ if (candidates.length === 0) {
186
+ if (PLATFORM_ACCOUNT_LABS.includes(labSlug))
187
+ return "platform";
188
+ throw new HttpError(400, { detail: `No active lab account is available for lab ${labSlug}` });
189
+ }
190
+ const active = candidates.filter((entry) => entry.status === "active");
191
+ if (active.length === 1)
192
+ return active[0];
193
+ if (active.length > 1)
194
+ throw new HttpError(400, {
195
+ detail: "Multiple active lab accounts are linked to your team for this lab; provide lab_account_id",
196
+ });
197
+ throw new HttpError(400, { detail: "No active lab account is available for this lab" });
198
+ };
199
+ /** Render only the documented `ClientFacingLabAccount` keys. */
200
+ export const renderLabAccount = (entry) => ({
201
+ id: entry.id,
202
+ lab: entry.lab,
203
+ org_id: entry.org_id,
204
+ status: entry.status,
205
+ delegated_flow: entry.delegated_flow,
206
+ provider_account_id: entry.provider_account_id,
207
+ account_name: entry.account_name,
208
+ default_clinical_notes: entry.default_clinical_notes,
209
+ business_units: entry.business_units === null ? null : [...entry.business_units],
210
+ allowed_billing: Object.fromEntries(Object.entries(entry.allowed_billing).map(([type, states]) => [type, [...states]])),
211
+ team_id_allowlist: [...entry.team_id_allowlist],
212
+ });
213
+ //# sourceMappingURL=lab-accounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lab-accounts.js","sourceRoot":"","sources":["../src/lab-accounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { type OperationContext } from "@crvouga/mockingbird-service";
2
+ import type { JunctionState } from "./state.js";
3
+ export declare const orderHandlers: (state: JunctionState) => {
4
+ get_paginated_lab_tests_for_team_v3_lab_test_get: () => Promise<Response>;
5
+ get_lab_test_for_team_v3_lab_tests__lab_test_id__get: (context: OperationContext) => Promise<Response>;
6
+ get_labs_v3_lab_tests_labs_get: () => Promise<Response>;
7
+ get_team_lab_accounts_v3_lab_test_lab_account_get: (context: OperationContext) => Promise<Response>;
8
+ get_markers_for_lab_test_v3_lab_tests__lab_test_id__markers_get: (context: OperationContext) => Promise<Response>;
9
+ list_order_set_markers_v3_lab_tests_list_order_set_markers_post: (context: OperationContext) => Promise<Response>;
10
+ create_order_v3_order_post: (context: OperationContext) => Promise<Response>;
11
+ cancel_order_v3_order__order_id__cancel_post: (context: OperationContext) => Promise<Response>;
12
+ simulate_order_v3_order__order_id__test_post: (context: OperationContext) => Promise<Response>;
13
+ get_order_v3_order__order_id__get: (context: OperationContext) => Promise<Response>;
14
+ get_orders_v3_orders_get: (context: OperationContext) => Promise<Response>;
15
+ get_order_transaction_v3_order_transaction__transaction_id__get: (context: OperationContext) => Promise<Response>;
16
+ get_order_transaction_result_v3_order_transaction__transaction_id__result_get: (context: OperationContext) => Promise<Response>;
17
+ };
18
+ //# sourceMappingURL=orders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orders.d.ts","sourceRoot":"","sources":["../src/orders.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,gBAAgB,EAEtB,MAAM,8BAA8B,CAAA;AAUrC,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,YAAY,CAAA;AA+sB5D,eAAO,MAAM,aAAa,GAAI,OAAO,aAAa;;oEAOsB,gBAAgB;;iEASnB,gBAAgB;+EAWxE,gBAAgB;+EAchB,gBAAgB;0CAsBiB,gBAAgB;4DAqSE,gBAAgB;4DAgEhB,gBAAgB;iDAuD3B,gBAAgB;wCAczB,gBAAgB;+EAoC/C,gBAAgB;6FAehB,gBAAgB;CA8B3B,CAAA"}