@everfur/sdk 0.5.0 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/CHANGELOG.md +375 -0
  2. package/dist/BookedScreen-BJPbXLCG.d.ts +54 -0
  3. package/dist/BookedScreen-Cnld-jB_.d.cts +54 -0
  4. package/dist/{Chat-TA-aTcVF.d.cts → Chat-B43wIXCv.d.cts} +3 -3
  5. package/dist/{Chat-BOX-03ho.d.ts → Chat-my5aJLz5.d.ts} +3 -3
  6. package/dist/{DepthViews-DSFyaSeL.d.cts → DepthViews-BBTv9VAs.d.cts} +1 -1
  7. package/dist/{DepthViews-Cviea-ri.d.cts → DepthViews-BLK0kgza.d.cts} +1 -1
  8. package/dist/{DepthViews-CgjX2AJ5.d.ts → DepthViews-CNqAyjne.d.ts} +1 -1
  9. package/dist/{DepthViews-D2dRqWRq.d.ts → DepthViews-G-7YRtOX.d.ts} +1 -1
  10. package/dist/animations/index.cjs +1 -1
  11. package/dist/animations/index.d.cts +3 -3
  12. package/dist/animations/index.d.ts +3 -3
  13. package/dist/animations/index.js +1 -1
  14. package/dist/{attachments-DHvnITuE.d.cts → attachments-CEmT52IA.d.cts} +5 -5
  15. package/dist/{attachments-oD5U2fXI.d.ts → attachments-CMNWE6YT.d.ts} +2 -2
  16. package/dist/{attachments-C_vtFu2f.d.ts → attachments-DU1djTNd.d.ts} +5 -5
  17. package/dist/{attachments-pIdGOQfm.d.cts → attachments-ZyjWsZdI.d.cts} +2 -2
  18. package/dist/{bookingCopy-CJir9mjb.d.ts → bookingCopy-BVhEt1bj.d.ts} +38 -200
  19. package/dist/{bookingCopy-DfuA13dh.d.cts → bookingCopy-ChZR5mtd.d.cts} +38 -200
  20. package/dist/bookingTypes-DCs8mmBb.d.cts +188 -0
  21. package/dist/bookingTypes-DCs8mmBb.d.ts +188 -0
  22. package/dist/{callCopy-rDH9JTFo.d.cts → callCopy-CPe9mbwG.d.cts} +7 -2
  23. package/dist/{callCopy-rDH9JTFo.d.ts → callCopy-CPe9mbwG.d.ts} +7 -2
  24. package/dist/{casesRepository-DHgIYKN9.d.ts → casesRepository-C5zrCcaE.d.ts} +1 -1
  25. package/dist/{casesRepository-B-Eg8ZJ3.d.cts → casesRepository-q2ak9AW0.d.cts} +1 -1
  26. package/dist/chat/index.cjs +1 -1
  27. package/dist/chat/index.d.cts +14 -10
  28. package/dist/chat/index.d.ts +14 -10
  29. package/dist/chat/index.js +1 -1
  30. package/dist/client/index.cjs +5 -5
  31. package/dist/client/index.d.cts +6 -6
  32. package/dist/client/index.d.ts +6 -6
  33. package/dist/client/index.js +5 -5
  34. package/dist/{config-ClI7QxB0.d.ts → config-DBpKJJbg.d.ts} +1 -1
  35. package/dist/{config-DAFbf721.d.cts → config-jocy3q66.d.cts} +1 -1
  36. package/dist/consent/index.cjs +1 -1
  37. package/dist/consent/index.d.cts +5 -5
  38. package/dist/consent/index.d.ts +5 -5
  39. package/dist/consent/index.js +1 -1
  40. package/dist/{context-B-dUM1Qf.d.cts → context-BfVBRgro.d.cts} +5 -5
  41. package/dist/{context-CZbgF_OH.d.ts → context-C3n9s4aG.d.ts} +5 -5
  42. package/dist/{copy-CneuYdrO.d.cts → copy-IysFx8yL.d.cts} +2 -2
  43. package/dist/{copy-CeRH3NXy.d.ts → copy-KP91zgtW.d.ts} +2 -2
  44. package/dist/core/index.cjs +7 -7
  45. package/dist/core/index.d.cts +12 -12
  46. package/dist/core/index.d.ts +12 -12
  47. package/dist/core/index.js +7 -7
  48. package/dist/{depth-DO3Ko_qs.d.ts → depth-BsMLLrQo.d.ts} +2 -2
  49. package/dist/{depth-B3NFKlF9.d.cts → depth-O9kiVUjs.d.cts} +2 -2
  50. package/dist/{entitlementRepository-74kW5mK0.d.ts → entitlementRepository-CHsY2kF3.d.ts} +2 -2
  51. package/dist/{entitlementRepository-m6zLUmiB.d.cts → entitlementRepository-DIG16pso.d.cts} +2 -2
  52. package/dist/{identity-C7uxGwfT.d.cts → identity-D7GKfOE7.d.cts} +1 -1
  53. package/dist/{identity-CLAUq-K4.d.ts → identity-k8nCQ_qM.d.ts} +1 -1
  54. package/dist/index.cjs +6 -6
  55. package/dist/index.d.cts +13 -13
  56. package/dist/index.d.ts +13 -13
  57. package/dist/index.js +6 -6
  58. package/dist/notifications/index.cjs +2 -2
  59. package/dist/notifications/index.d.cts +2 -2
  60. package/dist/notifications/index.d.ts +2 -2
  61. package/dist/notifications/index.js +2 -2
  62. package/dist/{pets-BoB5B7kp.d.cts → pets-Bod_DDiW.d.cts} +1 -1
  63. package/dist/{pets-w4M9d-Dn.d.ts → pets-C_QX8s5f.d.ts} +1 -1
  64. package/dist/{petsRepository-DZZoEG3r.d.cts → petsRepository-B3vr628I.d.cts} +1 -1
  65. package/dist/{petsRepository-BjKJ8UsN.d.ts → petsRepository-DdzgINfF.d.ts} +1 -1
  66. package/dist/photo/index.cjs +1 -1
  67. package/dist/photo/index.js +1 -1
  68. package/dist/{ports-C2EVK416.d.cts → ports-BSm48zIC.d.cts} +16 -5
  69. package/dist/{ports-BO3bzTJg.d.ts → ports-DHhxhn95.d.ts} +16 -5
  70. package/dist/records/depth/index.cjs +2 -2
  71. package/dist/records/depth/index.d.cts +7 -7
  72. package/dist/records/depth/index.d.ts +7 -7
  73. package/dist/records/depth/index.js +2 -2
  74. package/dist/records/index.cjs +3 -3
  75. package/dist/records/index.d.cts +10 -10
  76. package/dist/records/index.d.ts +10 -10
  77. package/dist/records/index.js +3 -3
  78. package/dist/{requestFunnel-D7ipek3e.d.ts → requestFunnel-CTG-wNc3.d.ts} +2 -2
  79. package/dist/{requestFunnel-Djjwgoe9.d.cts → requestFunnel-Dcjyh0j2.d.cts} +2 -2
  80. package/dist/{runtimeTypes-D2C9uD85.d.cts → runtimeTypes-4qptUulD.d.cts} +4 -4
  81. package/dist/{runtimeTypes-CTL3yToK.d.ts → runtimeTypes-CmpdQaE2.d.ts} +4 -4
  82. package/dist/server/events/index.cjs +1 -1
  83. package/dist/server/events/index.d.cts +2 -2
  84. package/dist/server/events/index.d.ts +2 -2
  85. package/dist/server/events/index.js +1 -1
  86. package/dist/server/index.cjs +2 -2
  87. package/dist/server/index.d.cts +3 -3
  88. package/dist/server/index.d.ts +3 -3
  89. package/dist/server/index.js +2 -2
  90. package/dist/televet/booking/index.cjs +1 -1
  91. package/dist/televet/booking/index.d.cts +31 -17
  92. package/dist/televet/booking/index.d.ts +31 -17
  93. package/dist/televet/booking/index.js +1 -1
  94. package/dist/televet/call/index.cjs +1 -1
  95. package/dist/televet/call/index.d.cts +13 -1
  96. package/dist/televet/call/index.d.ts +13 -1
  97. package/dist/televet/call/index.js +1 -1
  98. package/dist/televet/index.cjs +1 -1
  99. package/dist/televet/index.js +1 -1
  100. package/dist/testing/index.cjs +3 -3
  101. package/dist/testing/index.d.cts +1 -1
  102. package/dist/testing/index.d.ts +1 -1
  103. package/dist/testing/index.js +3 -3
  104. package/dist/testing/rn/index.cjs +1 -1
  105. package/dist/testing/rn/index.d.cts +7 -7
  106. package/dist/testing/rn/index.d.ts +7 -7
  107. package/dist/testing/rn/index.js +1 -1
  108. package/dist/testing/web/index.cjs +1 -1
  109. package/dist/testing/web/index.d.cts +7 -7
  110. package/dist/testing/web/index.d.ts +7 -7
  111. package/dist/testing/web/index.js +1 -1
  112. package/dist/{timelineRows-CzR1T2DR.d.cts → timelineRows-BkLhRUDt.d.cts} +1 -1
  113. package/dist/{timelineRows-7yFNK_rU.d.ts → timelineRows-Dp4ZSnAo.d.ts} +1 -1
  114. package/dist/{uploadTransport-DKJHs3Yj.d.cts → uploadTransport-C1p8FuG8.d.cts} +5 -1
  115. package/dist/{uploadTransport-D0M0T4hN.d.ts → uploadTransport-bZIKBTyK.d.ts} +5 -1
  116. package/dist/{useRecordsDepth-Bnw36jPr.d.cts → useRecordsDepth-DRNry1r9.d.cts} +1 -1
  117. package/dist/{useRecordsDepth-DFF7Faxx.d.ts → useRecordsDepth-DnDhTaUL.d.ts} +1 -1
  118. package/dist/video/index.cjs +1 -1
  119. package/dist/video/index.js +1 -1
  120. package/dist/{view-BqcOYFTr.d.ts → view-CwuOPIJc.d.ts} +7 -4
  121. package/dist/{view-CaJs8WFH.d.cts → view-D4VdPKCa.d.cts} +7 -4
  122. package/dist/web/consent/index.cjs +1 -1
  123. package/dist/web/consent/index.d.cts +5 -5
  124. package/dist/web/consent/index.d.ts +5 -5
  125. package/dist/web/consent/index.js +1 -1
  126. package/dist/web/index.cjs +10 -10
  127. package/dist/web/index.d.cts +14 -14
  128. package/dist/web/index.d.ts +14 -14
  129. package/dist/web/index.js +10 -10
  130. package/dist/web/notifications/index.cjs +2 -2
  131. package/dist/web/notifications/index.d.cts +3 -3
  132. package/dist/web/notifications/index.d.ts +3 -3
  133. package/dist/web/notifications/index.js +2 -2
  134. package/dist/web/records/depth/index.cjs +2 -2
  135. package/dist/web/records/depth/index.d.cts +7 -7
  136. package/dist/web/records/depth/index.d.ts +7 -7
  137. package/dist/web/records/depth/index.js +2 -2
  138. package/dist/web/records/index.cjs +3 -3
  139. package/dist/web/records/index.d.cts +9 -9
  140. package/dist/web/records/index.d.ts +9 -9
  141. package/dist/web/records/index.js +3 -3
  142. package/dist/web/televet/booking/index.cjs +2 -2
  143. package/dist/web/televet/booking/index.d.cts +41 -52
  144. package/dist/web/televet/booking/index.d.ts +41 -52
  145. package/dist/web/televet/booking/index.js +2 -2
  146. package/dist/web/televet/call/index.cjs +1 -1
  147. package/dist/web/televet/call/index.d.cts +12 -5
  148. package/dist/web/televet/call/index.d.ts +12 -5
  149. package/dist/web/televet/call/index.js +1 -1
  150. package/dist/web/televet/index.cjs +4 -1
  151. package/dist/web/televet/index.d.cts +31 -2
  152. package/dist/web/televet/index.d.ts +31 -2
  153. package/dist/web/televet/index.js +4 -1
  154. package/package.json +4 -3
@@ -2,18 +2,20 @@ import { ReactNode, ComponentType, ReactElement } from 'react';
2
2
  import { StyleProp, ViewStyle } from 'react-native';
3
3
  import { P as PetRef } from '../../ids-B2GAAifq.cjs';
4
4
  export { B as Brand, _ as __brand } from '../../ids-B2GAAifq.cjs';
5
- import { T as TelevetEmptyRosterCause, a as TelevetStateInterestAction$1, b as TelevetMediaShortfall, c as TelevetConsult, d as TelevetBookingStep, e as TelevetBookingController, f as TelevetTriageRead, g as TelevetStateInterestWrite, h as TelevetCancelReceipt, i as TelevetSlot } from '../../bookingCopy-DfuA13dh.cjs';
6
- export { C as CANCELLATION_POLICY_VERSION_MAX, j as CANCEL_REASON_MAX, k as CONSULT_KINDS, l as CONSULT_MINUTES, m as CONSULT_STATUSES, n as ConsultKind, o as ConsultStatus, M as MEDIA_REFS_MAX, N as NO_MEDIA_SHORTFALL, R as REASON_TEXT_MAX, p as TELEVET_BOOKING_BASE, q as TELEVET_BOOKING_COPY, r as TELEVET_BOOKING_STEPS, s as TELEVET_CONSULT_PAGE_LIMIT, t as TELEVET_JOIN_CLOSES_MINUTES_AFTER, u as TELEVET_JOIN_OPENS_MINUTES_BEFORE, v as TERMINAL_CONSULT_STATUSES, w as TelevetBookingAction, x as TelevetBookingBody, y as TelevetBookingContext, z as TelevetBookingControllerDeps, A as TelevetBookingCopy, B as TelevetBookingDraft, D as TelevetBookingEntitlement, E as TelevetBookingFailure, F as TelevetBookingRefusal, G as TelevetBookingState, H as TelevetCancellationPolicy, I as TelevetClinician, J as TelevetEarlyTriage, K as TelevetEmptyRosterView, L as TelevetJoinReadiness, O as TelevetJoinState, P as TelevetMediaRefusal, Q as TelevetRead, S as TelevetSlotHold, U as TelevetStateInterestReason, V as TelevetStatePolicy, W as TelevetTriageVerdict, X as TelevetWrite, Y as attestation, Z as canConfirm, _ as canManageTelevetVisit, $ as createTelevetBookingController, a0 as currentStep, a1 as emptyTelevetDraft, a2 as formatVisitRange, a3 as formatWhen, a4 as formatWhenWithDay, a5 as hasPreviousStep, a6 as initialTelevetBookingState, a7 as isHoldExpired, a8 as isMediaShortfallEmpty, a9 as isSkipped, aa as isTelevetBookingCopyReady, ab as isWellFormedStateCode, ac as mediaShortfallFromUnsentPicks, ad as splitTelevetVisits, ae as televetBookingKey, af as televetBookingReducer, ag as televetBookingRefusal, ah as televetCancelCall, ai as televetConsultCall, aj as televetEmptyRosterCause, ak as televetEmptyRosterView, al as televetHoldCall, am as televetJoinCall, an as televetJoinOpensAtMs, ao as televetJoinReadiness, ap as televetMediaShortfallLines, aq as televetRescheduleCall, ar as useEarlyTriage, as as useStateInterest, at as useTelevetBookConsult, au as useTelevetBookingAvailable, av as useTelevetBookingController, aw as useTelevetBookingEntitlement, ax as useTelevetCancellationPolicy, ay as useTelevetClinicians, az as useTelevetHoldSlot, aA as useTelevetJoin, aB as useTelevetNextSlot, aC as useTelevetRescheduleConsult, aD as useTelevetSlots, aE as useTelevetStatePolicy, aF as validateBookingBody, aG as withUnsentPicks } from '../../bookingCopy-DfuA13dh.cjs';
5
+ import { T as TelevetEmptyRosterCause, a as TelevetStateInterestAction$1, b as TelevetMediaShortfall, c as TelevetBookingStep, d as TelevetBookingController, e as TelevetTriageRead, f as TelevetStateInterestWrite } from '../../bookingCopy-ChZR5mtd.cjs';
6
+ export { C as CONSULT_MINUTES, N as NO_MEDIA_SHORTFALL, g as TELEVET_BOOKING_BASE, h as TELEVET_BOOKING_COPY, i as TELEVET_BOOKING_STEPS, j as TELEVET_CONSULT_PAGE_LIMIT, k as TELEVET_JOIN_CLOSES_MINUTES_AFTER, l as TELEVET_JOIN_OPENS_MINUTES_BEFORE, m as TelevetBookingAction, n as TelevetBookingContext, o as TelevetBookingControllerDeps, p as TelevetBookingCopy, q as TelevetBookingDraft, r as TelevetBookingFailure, s as TelevetBookingRefusal, t as TelevetBookingState, u as TelevetEarlyTriage, v as TelevetEmptyRosterView, w as TelevetJoinReadiness, x as TelevetJoinState, y as TelevetMediaRefusal, z as TelevetRead, A as TelevetStateInterestReason, B as TelevetTriageVerdict, D as TelevetWrite, E as attestation, F as canConfirm, G as canManageTelevetVisit, H as createTelevetBookingController, I as currentStep, J as emptyTelevetDraft, K as formatVisitRange, L as formatWhen, M as formatWhenWithDay, O as hasPreviousStep, P as initialTelevetBookingState, Q as isHoldExpired, R as isMediaShortfallEmpty, S as isSkipped, U as isTelevetBookingCopyReady, V as mediaShortfallFromUnsentPicks, W as splitTelevetVisits, X as televetBookingKey, Y as televetBookingReducer, Z as televetBookingRefusal, _ as televetCancelCall, $ as televetConsultCall, a0 as televetEmptyRosterCause, a1 as televetEmptyRosterView, a2 as televetHoldCall, a3 as televetJoinCall, a4 as televetJoinOpensAtMs, a5 as televetJoinReadiness, a6 as televetMediaShortfallLines, a7 as televetRescheduleCall, a8 as useEarlyTriage, a9 as useStateInterest, aa as useTelevetBookConsult, ab as useTelevetBookingAvailable, ac as useTelevetBookingController, ad as useTelevetBookingEntitlement, ae as useTelevetCancellationPolicy, af as useTelevetClinicians, ag as useTelevetHoldSlot, ah as useTelevetJoin, ai as useTelevetNextSlot, aj as useTelevetRescheduleConsult, ak as useTelevetSlots, al as useTelevetStatePolicy, am as validateBookingBody, an as withUnsentPicks } from '../../bookingCopy-ChZR5mtd.cjs';
7
+ import { T as TelevetConsult, h as TelevetCancelReceipt, e as TelevetSlot } from '../../bookingTypes-DCs8mmBb.cjs';
8
+ export { i as CANCELLATION_POLICY_VERSION_MAX, j as CANCEL_REASON_MAX, k as CONSULT_KINDS, l as CONSULT_STATUSES, m as ConsultKind, C as ConsultStatus, M as MEDIA_REFS_MAX, R as REASON_TEXT_MAX, n as TERMINAL_CONSULT_STATUSES, g as TelevetBookingBody, b as TelevetBookingEntitlement, c as TelevetCancellationPolicy, d as TelevetClinician, f as TelevetSlotHold, a as TelevetStatePolicy, o as isWellFormedStateCode } from '../../bookingTypes-DCs8mmBb.cjs';
7
9
  import { V as VetVisitIntent } from '../../visitIntent-D7_yVp1I.cjs';
8
10
  import { E as EverfurTelevetFlowRequest } from '../../televetGlobal-CEk0_cW9.cjs';
9
11
  export { b as VetCallCredential, c as VetCallJoinRefusal, d as VetCallLimits, p as parseVetCallCredential, v as vetCallJoinReason, e as vetCallJoinRefusal } from '../../callRoom-B_EqaUzx.cjs';
10
12
  export { E as EverfurError, a as EverfurErrorCategory, b as EverfurErrorCode } from '../../EverfurError-DmELDpXp.cjs';
11
13
  export { E as EverfurResult } from '../../EverfurResult-ZtH-YV1h.cjs';
12
- export { W as WidgetPet } from '../../petsRepository-DZZoEG3r.cjs';
13
- import '../../requestFunnel-Djjwgoe9.cjs';
14
+ export { W as WidgetPet } from '../../petsRepository-B3vr628I.cjs';
15
+ import '../../requestFunnel-Dcjyh0j2.cjs';
14
16
  import '../../ErrorPolicyPort-D6CybiqJ.cjs';
15
- import '../../config-DAFbf721.cjs';
16
- import '../../identity-C7uxGwfT.cjs';
17
+ import '../../config-jocy3q66.cjs';
18
+ import '../../identity-D7GKfOE7.cjs';
17
19
  import '../../TelemetryPort-BDNr00hu.cjs';
18
20
  import '../../profile-CSs1wlXT.cjs';
19
21
 
@@ -128,14 +130,19 @@ interface TelevetEntitlementInterestStateProps {
128
130
  readonly onCheckAvailability?: (() => void) | undefined;
129
131
  }
130
132
  /**
131
- * THE SUBSCRIPTION TRUTH WITH THE ONE DELIBERATELY NON-BOOKING ESCAPE HATCH.
133
+ * THE PARTNER'S BOOKING IS PAUSED, WITH THE ONE DELIBERATELY NON-BOOKING ESCAPE HATCH.
132
134
  *
133
- * WHAT CHANGED FROM WHAT THIS SURFACE HAD. The container already rendered `confirmNotEntitled` in a bare
134
- * card with no action, on the reasoning that "nothing the owner presses inside the booking flow grants an
135
- * entitlement". That reasoning is correct and is not what this adds: the escape hatch does not grant
136
- * anything, it reads the roster, and it exists because the member may be in a state where no clinician is
137
- * licensed at all - which is a fact they are owed regardless of what they are entitled to, and the one route
138
- * from this screen to the interest write.
135
+ * ── WHY THIS IS THE PAUSED STATE AND NOT A MEMBERSHIP SENTENCE ──────────────────────────────────────────
136
+ * On the partner plane the entitlement read (and a 402 at Confirm) answers whether the PARTNER's televet
137
+ * funding is on: missing, suspended, capped at 0 or spent all read `active: false`. It never means the member
138
+ * lacks a plan, because the partner pays and a partner member has no Everfur membership to buy. So this draws
139
+ * what the unavailable branch draws (the host's `renderUnavailable`, else `bookingPausedTitle`). It used to
140
+ * draw `confirmNotEntitled`, "A Pro membership is needed to book a video visit.", and the 2026-09-23
141
+ * end-to-end run met it on the first screen of every vet entry, with Close as the only control.
142
+ *
143
+ * THE ESCAPE HATCH IS UNCHANGED. It does not grant anything, it reads the roster, and it exists because the
144
+ * member may be in a state where no clinician is licensed at all - which is a fact they are owed regardless of
145
+ * funding, and the one route from this screen to the interest write.
139
146
  */
140
147
  declare function TelevetEntitlementInterestState({ onCheckAvailability, }: TelevetEntitlementInterestStateProps): ReactNode;
141
148
  interface TelevetMediaDropNoticeProps {
@@ -322,7 +329,8 @@ interface EverfurTelevetBookingProps {
322
329
  */
323
330
  readonly canJoinInApp?: boolean;
324
331
  /**
325
- * What to render when the partner booking surface is not served for this tenant.
332
+ * What to render when the partner booking surface is not served for this tenant, or when your televet
333
+ * allowance is off (the entitlement read answers `active: false`, or Confirm is refused with a 402).
326
334
  *
327
335
  * Absent, the paused card, inside the chrome whose Close is the way out. Nothing leaves the app by default;
328
336
  * a host that wants the hosted visit offered here passes `() => <VetVisitButton prefer="redirect" />`.
@@ -449,8 +457,8 @@ interface TelevetJoinScreenProps {
449
457
  readonly onLeave: () => void;
450
458
  readonly style?: StyleProp<ViewStyle>;
451
459
  }
452
- /** Mint the room credential for one consult and join it in the app. */
453
- declare function TelevetJoinScreen({ consultId, controller: injected, clinicianName, petName, onLeave, style }: TelevetJoinScreenProps): ReactNode;
460
+ /** Ask for the recording notice, then mint the room credential for one consult and join it in the app. */
461
+ declare function TelevetJoinScreen({ consultId, ...screen }: TelevetJoinScreenProps): ReactNode;
454
462
 
455
463
  interface TelevetVisitsScreenProps {
456
464
  /** Host/test seam: inject a booking controller instead of building one from the provider's session. */
@@ -528,12 +536,18 @@ interface TelevetSlotPickerProps {
528
536
  /** The slot whose hold is in flight, or null. Disables the whole grid. */
529
537
  readonly busySlotId: string | null;
530
538
  readonly onPick: (slot: TelevetSlot) => void;
539
+ /**
540
+ * The slot already chosen, if any. The strip opens on ITS day rather than on the first offered day, so a
541
+ * member who goes Back from a later step sees the day they picked and not the start of the window. Ignored
542
+ * when that day is not in `slots`.
543
+ */
544
+ readonly selectedSlot?: TelevetSlot | null;
531
545
  /** Rendered above the strip, for example a failure line from the container. */
532
546
  readonly ListHeaderComponent?: ComponentType | ReactElement | null;
533
547
  readonly rowTestIdPrefix?: string;
534
548
  readonly testID?: string;
535
549
  }
536
- declare function TelevetSlotPicker({ slots, busySlotId, onPick, ListHeaderComponent, rowTestIdPrefix, testID, }: TelevetSlotPickerProps): ReactNode;
550
+ declare function TelevetSlotPicker({ slots, busySlotId, onPick, selectedSlot, ListHeaderComponent, rowTestIdPrefix, testID, }: TelevetSlotPickerProps): ReactNode;
537
551
 
538
552
  /** One "label ... value" row in the summary card. */
539
553
  declare function TelevetSummaryRow({ label, value, last, testID, }: {
@@ -2,18 +2,20 @@ import { ReactNode, ComponentType, ReactElement } from 'react';
2
2
  import { StyleProp, ViewStyle } from 'react-native';
3
3
  import { P as PetRef } from '../../ids-B2GAAifq.js';
4
4
  export { B as Brand, _ as __brand } from '../../ids-B2GAAifq.js';
5
- import { T as TelevetEmptyRosterCause, a as TelevetStateInterestAction$1, b as TelevetMediaShortfall, c as TelevetConsult, d as TelevetBookingStep, e as TelevetBookingController, f as TelevetTriageRead, g as TelevetStateInterestWrite, h as TelevetCancelReceipt, i as TelevetSlot } from '../../bookingCopy-CJir9mjb.js';
6
- export { C as CANCELLATION_POLICY_VERSION_MAX, j as CANCEL_REASON_MAX, k as CONSULT_KINDS, l as CONSULT_MINUTES, m as CONSULT_STATUSES, n as ConsultKind, o as ConsultStatus, M as MEDIA_REFS_MAX, N as NO_MEDIA_SHORTFALL, R as REASON_TEXT_MAX, p as TELEVET_BOOKING_BASE, q as TELEVET_BOOKING_COPY, r as TELEVET_BOOKING_STEPS, s as TELEVET_CONSULT_PAGE_LIMIT, t as TELEVET_JOIN_CLOSES_MINUTES_AFTER, u as TELEVET_JOIN_OPENS_MINUTES_BEFORE, v as TERMINAL_CONSULT_STATUSES, w as TelevetBookingAction, x as TelevetBookingBody, y as TelevetBookingContext, z as TelevetBookingControllerDeps, A as TelevetBookingCopy, B as TelevetBookingDraft, D as TelevetBookingEntitlement, E as TelevetBookingFailure, F as TelevetBookingRefusal, G as TelevetBookingState, H as TelevetCancellationPolicy, I as TelevetClinician, J as TelevetEarlyTriage, K as TelevetEmptyRosterView, L as TelevetJoinReadiness, O as TelevetJoinState, P as TelevetMediaRefusal, Q as TelevetRead, S as TelevetSlotHold, U as TelevetStateInterestReason, V as TelevetStatePolicy, W as TelevetTriageVerdict, X as TelevetWrite, Y as attestation, Z as canConfirm, _ as canManageTelevetVisit, $ as createTelevetBookingController, a0 as currentStep, a1 as emptyTelevetDraft, a2 as formatVisitRange, a3 as formatWhen, a4 as formatWhenWithDay, a5 as hasPreviousStep, a6 as initialTelevetBookingState, a7 as isHoldExpired, a8 as isMediaShortfallEmpty, a9 as isSkipped, aa as isTelevetBookingCopyReady, ab as isWellFormedStateCode, ac as mediaShortfallFromUnsentPicks, ad as splitTelevetVisits, ae as televetBookingKey, af as televetBookingReducer, ag as televetBookingRefusal, ah as televetCancelCall, ai as televetConsultCall, aj as televetEmptyRosterCause, ak as televetEmptyRosterView, al as televetHoldCall, am as televetJoinCall, an as televetJoinOpensAtMs, ao as televetJoinReadiness, ap as televetMediaShortfallLines, aq as televetRescheduleCall, ar as useEarlyTriage, as as useStateInterest, at as useTelevetBookConsult, au as useTelevetBookingAvailable, av as useTelevetBookingController, aw as useTelevetBookingEntitlement, ax as useTelevetCancellationPolicy, ay as useTelevetClinicians, az as useTelevetHoldSlot, aA as useTelevetJoin, aB as useTelevetNextSlot, aC as useTelevetRescheduleConsult, aD as useTelevetSlots, aE as useTelevetStatePolicy, aF as validateBookingBody, aG as withUnsentPicks } from '../../bookingCopy-CJir9mjb.js';
5
+ import { T as TelevetEmptyRosterCause, a as TelevetStateInterestAction$1, b as TelevetMediaShortfall, c as TelevetBookingStep, d as TelevetBookingController, e as TelevetTriageRead, f as TelevetStateInterestWrite } from '../../bookingCopy-BVhEt1bj.js';
6
+ export { C as CONSULT_MINUTES, N as NO_MEDIA_SHORTFALL, g as TELEVET_BOOKING_BASE, h as TELEVET_BOOKING_COPY, i as TELEVET_BOOKING_STEPS, j as TELEVET_CONSULT_PAGE_LIMIT, k as TELEVET_JOIN_CLOSES_MINUTES_AFTER, l as TELEVET_JOIN_OPENS_MINUTES_BEFORE, m as TelevetBookingAction, n as TelevetBookingContext, o as TelevetBookingControllerDeps, p as TelevetBookingCopy, q as TelevetBookingDraft, r as TelevetBookingFailure, s as TelevetBookingRefusal, t as TelevetBookingState, u as TelevetEarlyTriage, v as TelevetEmptyRosterView, w as TelevetJoinReadiness, x as TelevetJoinState, y as TelevetMediaRefusal, z as TelevetRead, A as TelevetStateInterestReason, B as TelevetTriageVerdict, D as TelevetWrite, E as attestation, F as canConfirm, G as canManageTelevetVisit, H as createTelevetBookingController, I as currentStep, J as emptyTelevetDraft, K as formatVisitRange, L as formatWhen, M as formatWhenWithDay, O as hasPreviousStep, P as initialTelevetBookingState, Q as isHoldExpired, R as isMediaShortfallEmpty, S as isSkipped, U as isTelevetBookingCopyReady, V as mediaShortfallFromUnsentPicks, W as splitTelevetVisits, X as televetBookingKey, Y as televetBookingReducer, Z as televetBookingRefusal, _ as televetCancelCall, $ as televetConsultCall, a0 as televetEmptyRosterCause, a1 as televetEmptyRosterView, a2 as televetHoldCall, a3 as televetJoinCall, a4 as televetJoinOpensAtMs, a5 as televetJoinReadiness, a6 as televetMediaShortfallLines, a7 as televetRescheduleCall, a8 as useEarlyTriage, a9 as useStateInterest, aa as useTelevetBookConsult, ab as useTelevetBookingAvailable, ac as useTelevetBookingController, ad as useTelevetBookingEntitlement, ae as useTelevetCancellationPolicy, af as useTelevetClinicians, ag as useTelevetHoldSlot, ah as useTelevetJoin, ai as useTelevetNextSlot, aj as useTelevetRescheduleConsult, ak as useTelevetSlots, al as useTelevetStatePolicy, am as validateBookingBody, an as withUnsentPicks } from '../../bookingCopy-BVhEt1bj.js';
7
+ import { T as TelevetConsult, h as TelevetCancelReceipt, e as TelevetSlot } from '../../bookingTypes-DCs8mmBb.js';
8
+ export { i as CANCELLATION_POLICY_VERSION_MAX, j as CANCEL_REASON_MAX, k as CONSULT_KINDS, l as CONSULT_STATUSES, m as ConsultKind, C as ConsultStatus, M as MEDIA_REFS_MAX, R as REASON_TEXT_MAX, n as TERMINAL_CONSULT_STATUSES, g as TelevetBookingBody, b as TelevetBookingEntitlement, c as TelevetCancellationPolicy, d as TelevetClinician, f as TelevetSlotHold, a as TelevetStatePolicy, o as isWellFormedStateCode } from '../../bookingTypes-DCs8mmBb.js';
7
9
  import { V as VetVisitIntent } from '../../visitIntent-D7_yVp1I.js';
8
10
  import { E as EverfurTelevetFlowRequest } from '../../televetGlobal-Cs9Wbqsy.js';
9
11
  export { b as VetCallCredential, c as VetCallJoinRefusal, d as VetCallLimits, p as parseVetCallCredential, v as vetCallJoinReason, e as vetCallJoinRefusal } from '../../callRoom-7wrE3RP2.js';
10
12
  export { E as EverfurError, a as EverfurErrorCategory, b as EverfurErrorCode } from '../../EverfurError-DmELDpXp.js';
11
13
  export { E as EverfurResult } from '../../EverfurResult-SGvHKsCB.js';
12
- export { W as WidgetPet } from '../../petsRepository-BjKJ8UsN.js';
13
- import '../../requestFunnel-D7ipek3e.js';
14
+ export { W as WidgetPet } from '../../petsRepository-DdzgINfF.js';
15
+ import '../../requestFunnel-CTG-wNc3.js';
14
16
  import '../../ErrorPolicyPort-D22LUVrK.js';
15
- import '../../config-ClI7QxB0.js';
16
- import '../../identity-CLAUq-K4.js';
17
+ import '../../config-DBpKJJbg.js';
18
+ import '../../identity-k8nCQ_qM.js';
17
19
  import '../../TelemetryPort-BDNr00hu.js';
18
20
  import '../../profile-CSs1wlXT.js';
19
21
 
@@ -128,14 +130,19 @@ interface TelevetEntitlementInterestStateProps {
128
130
  readonly onCheckAvailability?: (() => void) | undefined;
129
131
  }
130
132
  /**
131
- * THE SUBSCRIPTION TRUTH WITH THE ONE DELIBERATELY NON-BOOKING ESCAPE HATCH.
133
+ * THE PARTNER'S BOOKING IS PAUSED, WITH THE ONE DELIBERATELY NON-BOOKING ESCAPE HATCH.
132
134
  *
133
- * WHAT CHANGED FROM WHAT THIS SURFACE HAD. The container already rendered `confirmNotEntitled` in a bare
134
- * card with no action, on the reasoning that "nothing the owner presses inside the booking flow grants an
135
- * entitlement". That reasoning is correct and is not what this adds: the escape hatch does not grant
136
- * anything, it reads the roster, and it exists because the member may be in a state where no clinician is
137
- * licensed at all - which is a fact they are owed regardless of what they are entitled to, and the one route
138
- * from this screen to the interest write.
135
+ * ── WHY THIS IS THE PAUSED STATE AND NOT A MEMBERSHIP SENTENCE ──────────────────────────────────────────
136
+ * On the partner plane the entitlement read (and a 402 at Confirm) answers whether the PARTNER's televet
137
+ * funding is on: missing, suspended, capped at 0 or spent all read `active: false`. It never means the member
138
+ * lacks a plan, because the partner pays and a partner member has no Everfur membership to buy. So this draws
139
+ * what the unavailable branch draws (the host's `renderUnavailable`, else `bookingPausedTitle`). It used to
140
+ * draw `confirmNotEntitled`, "A Pro membership is needed to book a video visit.", and the 2026-09-23
141
+ * end-to-end run met it on the first screen of every vet entry, with Close as the only control.
142
+ *
143
+ * THE ESCAPE HATCH IS UNCHANGED. It does not grant anything, it reads the roster, and it exists because the
144
+ * member may be in a state where no clinician is licensed at all - which is a fact they are owed regardless of
145
+ * funding, and the one route from this screen to the interest write.
139
146
  */
140
147
  declare function TelevetEntitlementInterestState({ onCheckAvailability, }: TelevetEntitlementInterestStateProps): ReactNode;
141
148
  interface TelevetMediaDropNoticeProps {
@@ -322,7 +329,8 @@ interface EverfurTelevetBookingProps {
322
329
  */
323
330
  readonly canJoinInApp?: boolean;
324
331
  /**
325
- * What to render when the partner booking surface is not served for this tenant.
332
+ * What to render when the partner booking surface is not served for this tenant, or when your televet
333
+ * allowance is off (the entitlement read answers `active: false`, or Confirm is refused with a 402).
326
334
  *
327
335
  * Absent, the paused card, inside the chrome whose Close is the way out. Nothing leaves the app by default;
328
336
  * a host that wants the hosted visit offered here passes `() => <VetVisitButton prefer="redirect" />`.
@@ -449,8 +457,8 @@ interface TelevetJoinScreenProps {
449
457
  readonly onLeave: () => void;
450
458
  readonly style?: StyleProp<ViewStyle>;
451
459
  }
452
- /** Mint the room credential for one consult and join it in the app. */
453
- declare function TelevetJoinScreen({ consultId, controller: injected, clinicianName, petName, onLeave, style }: TelevetJoinScreenProps): ReactNode;
460
+ /** Ask for the recording notice, then mint the room credential for one consult and join it in the app. */
461
+ declare function TelevetJoinScreen({ consultId, ...screen }: TelevetJoinScreenProps): ReactNode;
454
462
 
455
463
  interface TelevetVisitsScreenProps {
456
464
  /** Host/test seam: inject a booking controller instead of building one from the provider's session. */
@@ -528,12 +536,18 @@ interface TelevetSlotPickerProps {
528
536
  /** The slot whose hold is in flight, or null. Disables the whole grid. */
529
537
  readonly busySlotId: string | null;
530
538
  readonly onPick: (slot: TelevetSlot) => void;
539
+ /**
540
+ * The slot already chosen, if any. The strip opens on ITS day rather than on the first offered day, so a
541
+ * member who goes Back from a later step sees the day they picked and not the start of the window. Ignored
542
+ * when that day is not in `slots`.
543
+ */
544
+ readonly selectedSlot?: TelevetSlot | null;
531
545
  /** Rendered above the strip, for example a failure line from the container. */
532
546
  readonly ListHeaderComponent?: ComponentType | ReactElement | null;
533
547
  readonly rowTestIdPrefix?: string;
534
548
  readonly testID?: string;
535
549
  }
536
- declare function TelevetSlotPicker({ slots, busySlotId, onPick, ListHeaderComponent, rowTestIdPrefix, testID, }: TelevetSlotPickerProps): ReactNode;
550
+ declare function TelevetSlotPicker({ slots, busySlotId, onPick, selectedSlot, ListHeaderComponent, rowTestIdPrefix, testID, }: TelevetSlotPickerProps): ReactNode;
537
551
 
538
552
  /** One "label ... value" row in the summary card. */
539
553
  declare function TelevetSummaryRow({ label, value, last, testID, }: {