@everfur/sdk 0.13.0 → 0.15.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 (206) hide show
  1. package/CHANGELOG.md +206 -0
  2. package/README.md +11 -10
  3. package/dist/{Chat.d-Dts8u_1a.d.cts → Chat.d-CtfANk3A.d.cts} +12 -4
  4. package/dist/{Chat.d-DUNTfzqC.d.ts → Chat.d-a7Ksz7NZ.d.ts} +12 -4
  5. package/dist/{DepthViews.d-CubkMPbU.d.ts → DepthViews.d-BqMnWSMu.d.cts} +1 -1
  6. package/dist/{DepthViews.d-BMU2jFPw.d.cts → DepthViews.d-CuBElgEc.d.ts} +1 -1
  7. package/dist/{DepthViews.d-Ce2Zhnrb.d.ts → DepthViews.d-DbJejGm3.d.ts} +1 -1
  8. package/dist/{DepthViews.d-BIp599lz.d.cts → DepthViews.d-dXWL6ToG.d.cts} +1 -1
  9. package/dist/RecordsPage.d-DKrZ9rHX.d.ts +93 -0
  10. package/dist/RecordsPage.d-DRPdUAo4.d.cts +93 -0
  11. package/dist/animations/index.cjs +1 -1
  12. package/dist/animations/index.d.cts +7 -5
  13. package/dist/animations/index.d.ts +7 -5
  14. package/dist/animations/index.js +1 -1
  15. package/dist/{attachments.d-Djy9z_0Z.d.ts → attachments.d-BGn2_knv.d.ts} +6 -24
  16. package/dist/{attachments.d-D1yhJjcZ.d.ts → attachments.d-CoQhXrP9.d.ts} +2 -2
  17. package/dist/{attachments.d-Bp2qbHxn.d.cts → attachments.d-CpaOfi2g.d.cts} +6 -24
  18. package/dist/{attachments.d-DisnvB9R.d.cts → attachments.d-CqHMGoER.d.cts} +2 -2
  19. package/dist/{bookingCopy.d-BlBmhAJc.d.cts → bookingCopy.d-Bnq2zk0F.d.cts} +2 -2
  20. package/dist/{bookingCopy.d-BJF6gd1A.d.ts → bookingCopy.d-BwCOCZUj.d.ts} +2 -2
  21. package/dist/{branding.d-DI8S400y.d.cts → branding.d-Bbc6p1XY.d.cts} +2 -2
  22. package/dist/{branding.d-OIGLbQeM.d.ts → branding.d-y6c0UwhE.d.ts} +2 -2
  23. package/dist/{casesRepository.d-CT2LTicS.d.cts → casesRepository.d-CsUJ2Oyb.d.cts} +1 -1
  24. package/dist/{casesRepository.d-UsWOz9bv.d.ts → casesRepository.d-DG83Ggbq.d.ts} +1 -1
  25. package/dist/chat/index.cjs +45 -43
  26. package/dist/chat/index.d.cts +26 -13
  27. package/dist/chat/index.d.ts +26 -13
  28. package/dist/chat/index.js +45 -43
  29. package/dist/client/index.cjs +3 -3
  30. package/dist/client/index.d.cts +12 -12
  31. package/dist/client/index.d.ts +12 -12
  32. package/dist/client/index.js +3 -3
  33. package/dist/clinicBatch.d-BLpbpS51.d.cts +71 -0
  34. package/dist/clinicBatch.d-Byjx4y_W.d.ts +71 -0
  35. package/dist/clinicModels.d-BXgKZqDb.d.cts +68 -0
  36. package/dist/clinicModels.d-CaS64-P-.d.ts +68 -0
  37. package/dist/clinicRequestProps.d-1dCtouGA.d.cts +65 -0
  38. package/dist/clinicRequestProps.d-CjsMg_OD.d.ts +65 -0
  39. package/dist/{config.d-BR3DT9ho.d.cts → config.d-C0WgjutL.d.cts} +1 -1
  40. package/dist/{config.d-Dy6igYlH.d.ts → config.d-zd2eTb2L.d.ts} +1 -1
  41. package/dist/consent/index.d.cts +5 -5
  42. package/dist/consent/index.d.ts +5 -5
  43. package/dist/{context.d-QcCgguzA.d.ts → context.d-BBjmV0rz.d.ts} +8 -8
  44. package/dist/{context.d-Cwks0p3C.d.cts → context.d-Du_UPxa1.d.cts} +8 -8
  45. package/dist/{copy.d-CiMn2IIt.d.ts → copy.d-D_VVj01o.d.ts} +2 -2
  46. package/dist/{copy.d-DLJTyRfT.d.cts → copy.d-Da_PP2K3.d.cts} +2 -2
  47. package/dist/core/index.cjs +3 -3
  48. package/dist/core/index.d.cts +21 -19
  49. package/dist/core/index.d.ts +21 -19
  50. package/dist/core/index.js +3 -3
  51. package/dist/{depth.d-OSALbYM7.d.ts → depth.d-BEedifOR.d.ts} +6 -133
  52. package/dist/{depth.d-CjPGVPDL.d.cts → depth.d-RTV61QNf.d.cts} +6 -133
  53. package/dist/{entitlementRepository.d-Cf3LbTwD.d.ts → entitlementRepository.d-BwThmh3V.d.ts} +4 -4
  54. package/dist/{entitlementRepository.d-CVQa1DA1.d.cts → entitlementRepository.d-C-stdRyA.d.cts} +4 -4
  55. package/dist/{features.d-fNsGcg0R.d.ts → features.d-DrQxTw3-.d.cts} +1 -1
  56. package/dist/{features.d-fNsGcg0R.d.cts → features.d-DrQxTw3-.d.ts} +1 -1
  57. package/dist/{focus.d-DMg2ngHI.d.ts → focus.d-CtotIyEt.d.ts} +127 -350
  58. package/dist/{focus.d-az9cqUz3.d.cts → focus.d-Dsm39DjO.d.cts} +127 -350
  59. package/dist/health-plan/index.cjs +182 -163
  60. package/dist/health-plan/index.d.cts +53 -11
  61. package/dist/health-plan/index.d.ts +53 -11
  62. package/dist/health-plan/index.js +185 -166
  63. package/dist/{idempotency.d-WpXx9zQo.d.ts → idempotency.d-Bfm7oIxS.d.cts} +158 -6
  64. package/dist/{idempotency.d-D461_DPD.d.cts → idempotency.d-Cv-B7SfC.d.ts} +158 -6
  65. package/dist/{identity.d-DzTijonw.d.ts → identity.d-BksOEa6m.d.ts} +1 -1
  66. package/dist/{identity.d-60LeJt_s.d.cts → identity.d-CioQhZrq.d.cts} +1 -1
  67. package/dist/index.cjs +48 -46
  68. package/dist/index.d.cts +20 -19
  69. package/dist/index.d.ts +20 -19
  70. package/dist/index.js +48 -46
  71. package/dist/introEvents.d-dS3fJCH1.d.cts +5 -0
  72. package/dist/introEvents.d-dS3fJCH1.d.ts +5 -0
  73. package/dist/introEvents.d-fAZitxMA.d.cts +175 -0
  74. package/dist/introEvents.d-tOi4o3F4.d.ts +175 -0
  75. package/dist/{models.d-BnLm3VAA.d.cts → models.d-BSqvbTE1.d.cts} +8 -1
  76. package/dist/{models.d-BagXhafD.d.ts → models.d-DOwnr8fi.d.ts} +8 -1
  77. package/dist/notifications/index.d.cts +4 -4
  78. package/dist/notifications/index.d.ts +4 -4
  79. package/dist/{optInView.d-acKpV8V2.d.ts → optInView.d-B8zTORO2.d.ts} +119 -3
  80. package/dist/{optInView.d-CEyHR6PK.d.cts → optInView.d-BkNSv4Gk.d.cts} +119 -3
  81. package/dist/{parse.d-C8CXyS58.d.ts → parse.d-B5JHS6Pr.d.ts} +1 -1
  82. package/dist/{parse.d-tEzufgJX.d.cts → parse.d-BgjO82mY.d.cts} +1 -1
  83. package/dist/{pets.d-NbJvP_kh.d.cts → pets.d-B_LoizOv.d.cts} +1 -1
  84. package/dist/{pets.d-C_53_fzo.d.ts → pets.d-OWxskXCP.d.ts} +1 -1
  85. package/dist/{petsRepository.d-lp1BHRqM.d.cts → petsRepository.d-B5DWzU7C.d.cts} +1 -1
  86. package/dist/{petsRepository.d-BuGHymNx.d.ts → petsRepository.d-Ba3xhJcj.d.ts} +1 -1
  87. package/dist/planSignals.d-Cl6n5QpS.d.cts +126 -0
  88. package/dist/planSignals.d-DtxZoWGM.d.ts +126 -0
  89. package/dist/{ports.d-COIyN624.d.ts → ports.d-BDtwHxmW.d.ts} +4 -4
  90. package/dist/{ports.d-CEROoqnA.d.cts → ports.d-gZNTn8Qf.d.cts} +4 -4
  91. package/dist/{presentation.d-DMbdad7G.d.cts → presentation.d-vy8kTGfR.d.cts} +6 -0
  92. package/dist/{presentation.d-DMbdad7G.d.ts → presentation.d-vy8kTGfR.d.ts} +6 -0
  93. package/dist/quickPrompts.d-NM_81Jc1.d.cts +19 -0
  94. package/dist/quickPrompts.d-NM_81Jc1.d.ts +19 -0
  95. package/dist/records/depth/index.d.cts +13 -9
  96. package/dist/records/depth/index.d.ts +13 -9
  97. package/dist/records/index.cjs +264 -140
  98. package/dist/records/index.d.cts +95 -24
  99. package/dist/records/index.d.ts +95 -24
  100. package/dist/records/index.js +265 -141
  101. package/dist/{requestFunnel.d-DWQQpjFR.d.cts → requestFunnel.d-CR4akGCY.d.cts} +2 -2
  102. package/dist/{requestFunnel.d-CXUMPw1K.d.ts → requestFunnel.d-DFf9C__p.d.ts} +2 -2
  103. package/dist/{resolve.d-jI8FmBj3.d.cts → resolve.d-CoQWUy1Y.d.cts} +1 -1
  104. package/dist/{resolve.d-jI8FmBj3.d.ts → resolve.d-CoQWUy1Y.d.ts} +1 -1
  105. package/dist/{runtimeTypes.d-4yFNNuYR.d.ts → runtimeTypes.d-BqBOrZxa.d.ts} +6 -6
  106. package/dist/{runtimeTypes.d-D6N_fhxx.d.cts → runtimeTypes.d-CHdH-y2c.d.cts} +6 -6
  107. package/dist/{useRecordsDepth.d-sAq2Qkhr.d.cts → screenProps.d-B1dIANI0.d.cts} +5 -91
  108. package/dist/{useRecordsDepth.d-DFcCfiXm.d.ts → screenProps.d-CVqFJw-J.d.ts} +5 -91
  109. package/dist/server/events/index.cjs +1 -1
  110. package/dist/server/events/index.d.cts +2 -2
  111. package/dist/server/events/index.d.ts +2 -2
  112. package/dist/server/events/index.js +1 -1
  113. package/dist/server/index.cjs +1 -1
  114. package/dist/server/index.d.cts +3 -3
  115. package/dist/server/index.d.ts +3 -3
  116. package/dist/server/index.js +1 -1
  117. package/dist/{sheetSeam.d-Cviqk89n.d.ts → sheetSeam.d-B09jf4YC.d.ts} +8 -4
  118. package/dist/{sheetSeam.d-DCS3LW8g.d.cts → sheetSeam.d-BBuEIVsa.d.cts} +8 -4
  119. package/dist/shop/index.cjs +227 -60
  120. package/dist/shop/index.d.cts +35 -5
  121. package/dist/shop/index.d.ts +35 -5
  122. package/dist/shop/index.js +228 -61
  123. package/dist/tabs/index.cjs +195 -0
  124. package/dist/tabs/index.d.cts +175 -0
  125. package/dist/tabs/index.d.ts +175 -0
  126. package/dist/tabs/index.js +195 -0
  127. package/dist/tabsModel.d-BfIQg6yS.d.cts +31 -0
  128. package/dist/tabsModel.d-BfIQg6yS.d.ts +31 -0
  129. package/dist/televet/booking/index.d.cts +6 -6
  130. package/dist/televet/booking/index.d.ts +6 -6
  131. package/dist/testing/index.cjs +1 -1
  132. package/dist/testing/index.d.cts +1 -1
  133. package/dist/testing/index.d.ts +1 -1
  134. package/dist/testing/index.js +1 -1
  135. package/dist/testing/rn/index.cjs +1 -1
  136. package/dist/testing/rn/index.d.cts +12 -12
  137. package/dist/testing/rn/index.d.ts +12 -12
  138. package/dist/testing/rn/index.js +1 -1
  139. package/dist/testing/web/index.d.cts +13 -13
  140. package/dist/testing/web/index.d.ts +13 -13
  141. package/dist/texting/index.cjs +40 -5
  142. package/dist/texting/index.d.cts +40 -7
  143. package/dist/texting/index.d.ts +40 -7
  144. package/dist/texting/index.js +40 -5
  145. package/dist/threadOptions.d-CnSfFVMr.d.cts +458 -0
  146. package/dist/threadOptions.d-DZ0AoQGk.d.ts +458 -0
  147. package/dist/{timelineRows.d-BNxgzYRW.d.cts → timelineRows.d-CF1KvLcQ.d.cts} +1 -1
  148. package/dist/{timelineRows.d-CU5GvvLk.d.ts → timelineRows.d-CtL0y7y1.d.ts} +1 -1
  149. package/dist/{tokens.d-DarDaV39.d.cts → tokens.d-BUVqme2D.d.cts} +1 -1
  150. package/dist/{tokens.d-DarDaV39.d.ts → tokens.d-BUVqme2D.d.ts} +1 -1
  151. package/dist/{typeStyle.d-C1HBRAI3.d.ts → typeStyle.d-B3Kdtjie.d.ts} +2 -2
  152. package/dist/{typeStyle.d-Bl8pzbBy.d.cts → typeStyle.d-DmlwyJq-.d.cts} +2 -2
  153. package/dist/useIntroSeen.d-CTWFUthO.d.cts +35 -0
  154. package/dist/useIntroSeen.d-CTWFUthO.d.ts +35 -0
  155. package/dist/usePresentation.d-BsR08Wxt.d.ts +285 -0
  156. package/dist/usePresentation.d-CZS0qlLI.d.cts +285 -0
  157. package/dist/{useRecords.d-Cb-36SF5.d.cts → useRecords.d-BYNX01El.d.cts} +2 -2
  158. package/dist/{useRecords.d-aQTzQZoV.d.ts → useRecords.d-DWk61a4c.d.ts} +2 -2
  159. package/dist/useRecordsDepth.d-DTAxFf5s.d.ts +32 -0
  160. package/dist/useRecordsDepth.d-k-zYIHTe.d.cts +32 -0
  161. package/dist/{view.d-C-SNpDJX.d.ts → view.d-BE7VOlsB.d.ts} +6 -4
  162. package/dist/{view.d-Dps5C8-s.d.cts → view.d-CAWQjcY_.d.cts} +6 -4
  163. package/dist/web/consent/index.d.cts +5 -5
  164. package/dist/web/consent/index.d.ts +5 -5
  165. package/dist/web/health-plan/index.cjs +65 -53
  166. package/dist/web/health-plan/index.d.cts +46 -192
  167. package/dist/web/health-plan/index.d.ts +46 -192
  168. package/dist/web/health-plan/index.js +79 -67
  169. package/dist/web/index.cjs +62 -46
  170. package/dist/web/index.d.cts +168 -27
  171. package/dist/web/index.d.ts +168 -27
  172. package/dist/web/index.js +63 -47
  173. package/dist/web/intro/index.cjs +167 -0
  174. package/dist/web/intro/index.d.cts +79 -0
  175. package/dist/web/intro/index.d.ts +79 -0
  176. package/dist/web/intro/index.js +167 -0
  177. package/dist/web/notifications/index.d.cts +3 -3
  178. package/dist/web/notifications/index.d.ts +3 -3
  179. package/dist/web/records/depth/index.d.cts +13 -9
  180. package/dist/web/records/depth/index.d.ts +13 -9
  181. package/dist/web/records/index.cjs +7 -7
  182. package/dist/web/records/index.d.cts +21 -82
  183. package/dist/web/records/index.d.ts +21 -82
  184. package/dist/web/records/index.js +7 -7
  185. package/dist/web/records-sheet/index.cjs +207 -128
  186. package/dist/web/records-sheet/index.d.cts +25 -16
  187. package/dist/web/records-sheet/index.d.ts +25 -16
  188. package/dist/web/records-sheet/index.js +207 -128
  189. package/dist/web/shop/index.cjs +194 -78
  190. package/dist/web/shop/index.d.cts +21 -4
  191. package/dist/web/shop/index.d.ts +21 -4
  192. package/dist/web/shop/index.js +194 -78
  193. package/dist/web/televet/booking/index.d.cts +7 -7
  194. package/dist/web/televet/booking/index.d.ts +7 -7
  195. package/dist/web/texting/index.cjs +36 -5
  196. package/dist/web/texting/index.d.cts +40 -7
  197. package/dist/web/texting/index.d.ts +40 -7
  198. package/dist/web/texting/index.js +36 -5
  199. package/package.json +36 -4
  200. package/tabs/package.json +8 -0
  201. package/web/intro/native-blocked.cjs +12 -0
  202. package/web/intro/package.json +8 -0
  203. package/dist/threadOptions.d-B1pTMmDF.d.cts +0 -260
  204. package/dist/threadOptions.d-B1pTMmDF.d.ts +0 -260
  205. package/dist/usePresentation.d-D6qsFzBz.d.cts +0 -9
  206. package/dist/usePresentation.d-DuGQe_Do.d.ts +0 -9
@@ -1,22 +1,25 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { StyleProp, ViewStyle } from 'react-native';
3
- import { C as CapabilityDecision } from '../resolve.d-jI8FmBj3.cjs';
3
+ import { a as CapabilityDecision } from '../resolve.d-CoQWUy1Y.cjs';
4
4
  import { E as EverfurError } from '../EverfurError.d-8NHtlgzA.cjs';
5
5
  export { a as EverfurErrorCategory, b as EverfurErrorCode } from '../EverfurError.d-8NHtlgzA.cjs';
6
6
  import { P as PetRef } from '../ids.d-B2GAAifq.cjs';
7
7
  export { B as Brand, C as ConversationId, R as RecordsRequestId, U as UserRef, _ as __brand } from '../ids.d-B2GAAifq.cjs';
8
- import { H as HealthPlanFocusCopy, a as HealthPlanFocusIcon, b as HealthPlanFocusDesign, c as HealthPlanItem, d as HealthPlanSubscription, e as HealthPlanOneBoxOrder, f as HealthPlanSubscriptionRepository, g as HealthPlanPageRepository, h as HealthPlanShopOrder, i as HealthPlanCheckoutProvider, j as HealthPlanPriceFormat, k as HealthPlanLayoutProps, l as HealthPlanCardOptions, m as HealthPlanImageVariant, n as HealthPlanReasonVariant, o as HealthPlanCart } from '../focus.d-az9cqUz3.cjs';
9
- export { E as EverfurHealthPlanOptions, p as EverfurHealthPlanState, q as EverfurHealthPlanStatus, r as HEALTH_PLAN_COPY, s as HEALTH_PLAN_COPY_PLACEHOLDERS, t as HEALTH_PLAN_FOCUS_COPY, u as HEALTH_PLAN_LAYOUT_DEFAULTS, v as HEALTH_PLAN_REASON_KINDS, w as HEALTH_PLAN_REASON_LABELS, x as HEALTH_PLAN_TEMPLATES, y as HealthPlan, z as HealthPlanAddButtonSize, A as HealthPlanAddedVariant, B as HealthPlanCardShadow, C as HealthPlanCartBarPlacement, D as HealthPlanCartBarVisibility, F as HealthPlanCartCheckoutRequest, G as HealthPlanCartDock, I as HealthPlanCartScope, J as HealthPlanCartScopeProps, K as HealthPlanCategoryVariant, L as HealthPlanCheckoutItem, M as HealthPlanCheckoutRefusal, N as HealthPlanCheckoutRequest, O as HealthPlanCheckoutSession, P as HealthPlanCheckoutState, Q as HealthPlanCheckoutStatus, R as HealthPlanController, S as HealthPlanFocusExtra, T as HealthPlanFocusPrices, U as HealthPlanFocusReasonRow, V as HealthPlanFocusReview, W as HealthPlanFocusSign, X as HealthPlanFocusStep, Y as HealthPlanFocusWait, Z as HealthPlanFontWeight, _ as HealthPlanHeaderContext, $ as HealthPlanOneBoxOffer, a0 as HealthPlanOneBoxOrderPage, a1 as HealthPlanOneBoxOrderPageOptions, a2 as HealthPlanOrderStatus, a3 as HealthPlanOrderTracking, a4 as HealthPlanOrderTrackingStatus, a5 as HealthPlanPage, a6 as HealthPlanPageContext, a7 as HealthPlanPageOptions, a8 as HealthPlanPagePet, a9 as HealthPlanPagePhase, aa as HealthPlanPageState, ab as HealthPlanPhase, ac as HealthPlanPurchase, ad as HealthPlanReason, ae as HealthPlanReasonKind, af as HealthPlanRepository, ag as HealthPlanRepositoryDeps, ah as HealthPlanRuntime, ai as HealthPlanShadow, aj as HealthPlanSnapshot, ak as HealthPlanSubscriptionQuote, al as HealthPlanSubscriptionRenewal, am as HealthPlanSubscriptionStatus, an as HealthPlanSubscriptionStep, ao as HealthPlanSubscriptionSupply, ap as HealthPlanTrackStep, aq as createHealthPlanPageRepository, ar as createHealthPlanPageRepositoryOver, as as createHealthPlanRepository, at as createHealthPlanRepositoryOver, au as formatHealthPlanDay, av as formatHealthPlanPrice, aw as formatHealthPlanPriceWith, ax as healthPlanCart, ay as healthPlanCheckoutRefusal, az as healthPlanCheckoutSessionFromWire, aA as healthPlanCheckoutStateFromWire, aB as healthPlanFocusDesignFromWire, aC as healthPlanFromWire, aD as healthPlanPageFromWire, aE as isHealthPlanSessionRequired, aF as showHealthPlanCartBar, aG as useEverfurHealthPlan, aH as useEverfurHealthPlanRepository, aI as useHealthPlanCartDock, aJ as useHealthPlanPage, aK as useHealthPlanPageRepository } from '../focus.d-az9cqUz3.cjs';
10
- import { i as EverfurPresentationInput } from '../presentation.d-DMbdad7G.cjs';
11
- export { E as EverfurChatAnswerStyle, a as EverfurChatComposerPlaceholder, b as EverfurChatComposerStyle, c as EverfurChatHistoryBarSetting, d as EverfurChatHistoryStyle, e as EverfurChatSendButtonSetting, f as EverfurChatTopCardSetting, g as EverfurHealthPlanLayout, h as EverfurPresentation, j as EverfurSafetyDisclaimerPlacement } from '../presentation.d-DMbdad7G.cjs';
8
+ import { c as HealthPlanFocusCopy, e as HealthPlanFocusIcon, b as HealthPlanFocusDesign, f as HealthPlanItem, g as HealthPlanSubscription, h as HealthPlanOneBoxOrder, i as HealthPlanSubscriptionRepository, j as HealthPlanPageRepository, k as HealthPlanShopOrder, l as HealthPlanCheckoutProvider } from '../focus.d-Dsm39DjO.cjs';
9
+ export { s as HEALTH_PLAN_FOCUS_COPY, t as HEALTH_PLAN_REASON_KINDS, m as HealthPlan, u as HealthPlanCartCheckoutRequest, v as HealthPlanCheckoutItem, w as HealthPlanCheckoutRefusal, x as HealthPlanCheckoutRequest, y as HealthPlanCheckoutSession, z as HealthPlanCheckoutState, A as HealthPlanCheckoutStatus, B as HealthPlanFocusExtra, C as HealthPlanFocusPrices, D as HealthPlanFocusReasonRow, E as HealthPlanFocusReview, F as HealthPlanFocusSign, G as HealthPlanFocusStep, I as HealthPlanFocusWait, J as HealthPlanOneBoxOffer, K as HealthPlanOneBoxOrderPage, L as HealthPlanOneBoxOrderPageOptions, M as HealthPlanOrderStatus, N as HealthPlanOrderTracking, O as HealthPlanOrderTrackingStatus, H as HealthPlanPage, r as HealthPlanPagePet, P as HealthPlanPurchase, Q as HealthPlanReason, o as HealthPlanReasonKind, n as HealthPlanRepository, R as HealthPlanRepositoryDeps, S as HealthPlanRuntime, q as HealthPlanSubscriptionQuote, T as HealthPlanSubscriptionRenewal, U as HealthPlanSubscriptionStatus, V as HealthPlanSubscriptionStep, W as HealthPlanSubscriptionSupply, X as HealthPlanTrackStep, Y as createHealthPlanPageRepository, Z as createHealthPlanPageRepositoryOver, _ as createHealthPlanRepository, $ as createHealthPlanRepositoryOver, a2 as formatHealthPlanDay, a3 as healthPlanCheckoutRefusal, a4 as healthPlanCheckoutSessionFromWire, a5 as healthPlanCheckoutStateFromWire, a7 as healthPlanFocusDesignFromWire, a8 as healthPlanFromWire, ac as healthPlanPageFromWire } from '../focus.d-Dsm39DjO.cjs';
10
+ import { i as EverfurPresentationInput } from '../presentation.d-vy8kTGfR.cjs';
11
+ export { E as EverfurChatAnswerStyle, a as EverfurChatComposerPlaceholder, b as EverfurChatComposerStyle, c as EverfurChatHistoryBarSetting, d as EverfurChatHistoryStyle, e as EverfurChatSendButtonSetting, f as EverfurChatTopCardSetting, g as EverfurHealthPlanLayout, h as EverfurPresentation, j as EverfurSafetyDisclaimerPlacement } from '../presentation.d-vy8kTGfR.cjs';
12
+ import { H as HealthPlanBlanksFacts, a as HealthPlanPriceFormat, b as HealthPlanLayoutProps, e as HealthPlanCardOptions, f as HealthPlanImageVariant, g as HealthPlanReasonVariant, d as HealthPlanCart } from '../usePresentation.d-CZS0qlLI.cjs';
13
+ export { E as EverfurHealthPlanOptions, h as EverfurHealthPlanState, i as EverfurHealthPlanStatus, j as HEALTH_PLAN_COPY, k as HEALTH_PLAN_COPY_PLACEHOLDERS, l as HEALTH_PLAN_LAYOUT_DEFAULTS, m as HEALTH_PLAN_REASON_LABELS, n as HEALTH_PLAN_TEMPLATES, o as HealthPlanAddButtonSize, p as HealthPlanAddedVariant, q as HealthPlanBlanksPhase, r as HealthPlanCardShadow, s as HealthPlanCartBarPlacement, t as HealthPlanCartBarVisibility, u as HealthPlanCategoryVariant, v as HealthPlanFontWeight, w as HealthPlanHeaderContext, x as HealthPlanPageContext, y as HealthPlanShadow, z as formatHealthPlanPrice, A as formatHealthPlanPriceWith, B as healthPlanBlanksFacts, C as healthPlanCart, D as healthPlanNextShotsAt, F as healthPlanRecordsWeightKg, G as isHealthPlanSessionRequired, I as showHealthPlanCartBar, J as useEverfurHealthPlan, K as useEverfurHealthPlanRepository, L as useEverfurPresentation } from '../usePresentation.d-CZS0qlLI.cjs';
12
14
  import { L as LifecyclePort } from '../LifecyclePort.d-Cr1p33a7.cjs';
13
15
  import { E as EverfurResult } from '../EverfurResult.d-BFH-3s6E.cjs';
14
16
  import { R as RecordsRecordWire } from '../ports.d-BX4f4UsB.cjs';
15
- export { A as AuthContext, I as IdentityProvider, M as MintedToken, T as TokenProvider } from '../identity.d-60LeJt_s.cjs';
16
- export { A as AcceptedFrame, a as AnalysisCompleteFrame, b as AnalysisStartedFrame, D as DeltaFrame, c as DoneFrame, E as ErrorFrame, d as EverfurRequest, e as EverfurRequestBase, F as Frame, f as FrameBase, g as FrameKind, H as HeartbeatFrame, h as HttpMethod, M as MultipartBody, T as TransportPort, U as UnknownFrame, i as UrgencyLevel } from '../config.d-BR3DT9ho.cjs';
17
+ export { H as HealthPlanCartDock, a as HealthPlanCartScope, b as HealthPlanCartScopeProps, c as HealthPlanController, d as HealthPlanNoVetListener, e as HealthPlanPageOptions, f as HealthPlanPagePhase, g as HealthPlanPageState, h as HealthPlanPhase, i as HealthPlanRecordsLandedListener, j as HealthPlanRecordsLandedSource, k as HealthPlanSnapshot, l as healthPlanNoVet, n as notifyHealthPlanRecordsLanded, o as onHealthPlanNoVet, m as onHealthPlanRecordsLanded, s as setHealthPlanNoVet, u as useHealthPlanCartDock, p as useHealthPlanPage, q as useHealthPlanPageRepository } from '../planSignals.d-Cl6n5QpS.cjs';
18
+ export { A as AuthContext, I as IdentityProvider, M as MintedToken, T as TokenProvider } from '../identity.d-CioQhZrq.cjs';
19
+ export { A as AcceptedFrame, a as AnalysisCompleteFrame, b as AnalysisStartedFrame, D as DeltaFrame, c as DoneFrame, E as ErrorFrame, d as EverfurRequest, e as EverfurRequestBase, F as Frame, f as FrameBase, g as FrameKind, H as HeartbeatFrame, h as HttpMethod, M as MultipartBody, T as TransportPort, U as UnknownFrame, i as UrgencyLevel } from '../config.d-C0WgjutL.cjs';
17
20
  export { E as ErrorPolicyPort } from '../ErrorPolicyPort.d-DirW9hgO.cjs';
18
- export { u as useEverfurPresentation } from '../usePresentation.d-D6qsFzBz.cjs';
19
- import '../requestFunnel.d-DWQQpjFR.cjs';
21
+ import '../requestFunnel.d-CR4akGCY.cjs';
22
+ import '../models.d-BSqvbTE1.cjs';
20
23
 
21
24
  /** The pet facts the words are sized to. */
22
25
  interface HealthPlanPetWords {
@@ -67,7 +70,10 @@ interface HealthPlanFocusRnOverlayControls {
67
70
  /** True for a full screen (no bottom tabs under it): the cart, the order placed, the started screen. */
68
71
  readonly full?: boolean;
69
72
  }
70
- /** The pet's records read the layout needs: only whether there are any. */
73
+ /**
74
+ * Your own read of the pet's record (tests, a stub backend): only whether anything is on file. Without it the layout
75
+ * reads the records the way the records surface does (`@everfur/sdk/records`), which also fills her three blanks.
76
+ */
71
77
  interface HealthPlanRecordsReader {
72
78
  getRecord(petRef: PetRef): Promise<EverfurResult<RecordsRecordWire>>;
73
79
  }
@@ -130,6 +136,16 @@ interface HealthPlanFocusRnOptions {
130
136
  */
131
137
  readonly recordsMissing?: boolean;
132
138
  readonly onConnectRecords?: () => void;
139
+ /**
140
+ * Her three blanks: where her clinic request stands and what her records hold (`healthPlanBlanksFacts`). Null: no
141
+ * card. Omit it and, with `onConnectRecords` (and no `recordsRepository`), they are read from the pet's records.
142
+ */
143
+ readonly recordsBlanks?: HealthPlanBlanksFacts | null;
144
+ /**
145
+ * True when the member has no vet for this pet yet (the intro's "doesn't have a vet yet"). Absent: what
146
+ * `setHealthPlanNoVet` last said for this pet in this app run, else false.
147
+ */
148
+ readonly noVet?: boolean;
133
149
  /**
134
150
  * The waiting state (Q3, for example a partner's test result not in yet): return your card and the plan's sections give way
135
151
  * to it. Return null and the plan draws as usual. The words are yours.
@@ -248,4 +264,30 @@ interface HealthPlanCartBarProps {
248
264
  /** The cart bar of a Health Plan. */
249
265
  declare function HealthPlanCartBar(props: HealthPlanCartBarProps): ReactNode;
250
266
 
251
- export { EverfurError, EverfurHealthPlan, type EverfurHealthPlanProps, EverfurPresentationInput, EverfurResult, HEALTH_PLAN_FOCUS_RN_COPY, HealthPlanCardOptions, HealthPlanCart, HealthPlanCartBar, type HealthPlanCartBarProps, HealthPlanCheckoutProvider, HealthPlanFocus, type HealthPlanFocusCheckoutRow, HealthPlanFocusCopy, HealthPlanFocusDesign, HealthPlanFocusIcon, type HealthPlanFocusProps, type HealthPlanFocusRnCopy, type HealthPlanFocusRnOptions, type HealthPlanFocusRnOverlay, type HealthPlanFocusRnOverlayControls, HealthPlanImageVariant, HealthPlanItem, HealthPlanItemCard, type HealthPlanItemCardProps, HealthPlanLayoutProps, HealthPlanOneBoxOrder, HealthPlanPageRepository, type HealthPlanPetWords, HealthPlanPriceFormat, HealthPlanReasonVariant, type HealthPlanRecordsReader, HealthPlanShopOrder, HealthPlanSubscription, HealthPlanSubscriptionRepository, LifecyclePort, PetRef, RecordsRecordWire, healthPlanPetCopy, healthPlanPossessive };
267
+ /** One row: the words before the blank, the value (null: still a blank), the words after it, and its source line. */
268
+ interface HealthPlanBlanksRow {
269
+ readonly key: string;
270
+ readonly lead: string;
271
+ readonly value: string | null;
272
+ readonly trail: string;
273
+ readonly source: string;
274
+ /** The blank's width: `s` short (a count), `l` long (a date), absent the usual. */
275
+ readonly width?: 's' | 'l';
276
+ }
277
+ interface HealthPlanBlanksProps {
278
+ readonly phase: 'empty' | 'wait' | 'filled';
279
+ /** The card's kicker ("Asked Juniper Street Vet"); '' draws nothing there. */
280
+ readonly kicker: string;
281
+ /** The pill beside it ("2 to 5 days", "3 of 3 filled"); '' draws no pill. */
282
+ readonly pill: string;
283
+ readonly rows: readonly HealthPlanBlanksRow[];
284
+ /** A blank's name for a screen reader ("blank"). */
285
+ readonly blankLabel: string;
286
+ /** The card's accessible name ("Her three blanks"). */
287
+ readonly label: string;
288
+ /** Changing it to a new non-null value plays the yellow flash once over the filled blanks. */
289
+ readonly flashKey?: string | null;
290
+ }
291
+ declare function HealthPlanBlanks(props: HealthPlanBlanksProps): ReactNode;
292
+
293
+ export { EverfurError, EverfurHealthPlan, type EverfurHealthPlanProps, EverfurPresentationInput, EverfurResult, HEALTH_PLAN_FOCUS_RN_COPY, HealthPlanBlanks, HealthPlanBlanksFacts, type HealthPlanBlanksProps, type HealthPlanBlanksRow, HealthPlanCardOptions, HealthPlanCart, HealthPlanCartBar, type HealthPlanCartBarProps, HealthPlanCheckoutProvider, HealthPlanFocus, type HealthPlanFocusCheckoutRow, HealthPlanFocusCopy, HealthPlanFocusDesign, HealthPlanFocusIcon, type HealthPlanFocusProps, type HealthPlanFocusRnCopy, type HealthPlanFocusRnOptions, type HealthPlanFocusRnOverlay, type HealthPlanFocusRnOverlayControls, HealthPlanImageVariant, HealthPlanItem, HealthPlanItemCard, type HealthPlanItemCardProps, HealthPlanLayoutProps, HealthPlanOneBoxOrder, HealthPlanPageRepository, type HealthPlanPetWords, HealthPlanPriceFormat, HealthPlanReasonVariant, type HealthPlanRecordsReader, HealthPlanShopOrder, HealthPlanSubscription, HealthPlanSubscriptionRepository, LifecyclePort, PetRef, RecordsRecordWire, healthPlanPetCopy, healthPlanPossessive };
@@ -1,22 +1,25 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { StyleProp, ViewStyle } from 'react-native';
3
- import { C as CapabilityDecision } from '../resolve.d-jI8FmBj3.js';
3
+ import { a as CapabilityDecision } from '../resolve.d-CoQWUy1Y.js';
4
4
  import { E as EverfurError } from '../EverfurError.d-8NHtlgzA.js';
5
5
  export { a as EverfurErrorCategory, b as EverfurErrorCode } from '../EverfurError.d-8NHtlgzA.js';
6
6
  import { P as PetRef } from '../ids.d-B2GAAifq.js';
7
7
  export { B as Brand, C as ConversationId, R as RecordsRequestId, U as UserRef, _ as __brand } from '../ids.d-B2GAAifq.js';
8
- import { H as HealthPlanFocusCopy, a as HealthPlanFocusIcon, b as HealthPlanFocusDesign, c as HealthPlanItem, d as HealthPlanSubscription, e as HealthPlanOneBoxOrder, f as HealthPlanSubscriptionRepository, g as HealthPlanPageRepository, h as HealthPlanShopOrder, i as HealthPlanCheckoutProvider, j as HealthPlanPriceFormat, k as HealthPlanLayoutProps, l as HealthPlanCardOptions, m as HealthPlanImageVariant, n as HealthPlanReasonVariant, o as HealthPlanCart } from '../focus.d-DMg2ngHI.js';
9
- export { E as EverfurHealthPlanOptions, p as EverfurHealthPlanState, q as EverfurHealthPlanStatus, r as HEALTH_PLAN_COPY, s as HEALTH_PLAN_COPY_PLACEHOLDERS, t as HEALTH_PLAN_FOCUS_COPY, u as HEALTH_PLAN_LAYOUT_DEFAULTS, v as HEALTH_PLAN_REASON_KINDS, w as HEALTH_PLAN_REASON_LABELS, x as HEALTH_PLAN_TEMPLATES, y as HealthPlan, z as HealthPlanAddButtonSize, A as HealthPlanAddedVariant, B as HealthPlanCardShadow, C as HealthPlanCartBarPlacement, D as HealthPlanCartBarVisibility, F as HealthPlanCartCheckoutRequest, G as HealthPlanCartDock, I as HealthPlanCartScope, J as HealthPlanCartScopeProps, K as HealthPlanCategoryVariant, L as HealthPlanCheckoutItem, M as HealthPlanCheckoutRefusal, N as HealthPlanCheckoutRequest, O as HealthPlanCheckoutSession, P as HealthPlanCheckoutState, Q as HealthPlanCheckoutStatus, R as HealthPlanController, S as HealthPlanFocusExtra, T as HealthPlanFocusPrices, U as HealthPlanFocusReasonRow, V as HealthPlanFocusReview, W as HealthPlanFocusSign, X as HealthPlanFocusStep, Y as HealthPlanFocusWait, Z as HealthPlanFontWeight, _ as HealthPlanHeaderContext, $ as HealthPlanOneBoxOffer, a0 as HealthPlanOneBoxOrderPage, a1 as HealthPlanOneBoxOrderPageOptions, a2 as HealthPlanOrderStatus, a3 as HealthPlanOrderTracking, a4 as HealthPlanOrderTrackingStatus, a5 as HealthPlanPage, a6 as HealthPlanPageContext, a7 as HealthPlanPageOptions, a8 as HealthPlanPagePet, a9 as HealthPlanPagePhase, aa as HealthPlanPageState, ab as HealthPlanPhase, ac as HealthPlanPurchase, ad as HealthPlanReason, ae as HealthPlanReasonKind, af as HealthPlanRepository, ag as HealthPlanRepositoryDeps, ah as HealthPlanRuntime, ai as HealthPlanShadow, aj as HealthPlanSnapshot, ak as HealthPlanSubscriptionQuote, al as HealthPlanSubscriptionRenewal, am as HealthPlanSubscriptionStatus, an as HealthPlanSubscriptionStep, ao as HealthPlanSubscriptionSupply, ap as HealthPlanTrackStep, aq as createHealthPlanPageRepository, ar as createHealthPlanPageRepositoryOver, as as createHealthPlanRepository, at as createHealthPlanRepositoryOver, au as formatHealthPlanDay, av as formatHealthPlanPrice, aw as formatHealthPlanPriceWith, ax as healthPlanCart, ay as healthPlanCheckoutRefusal, az as healthPlanCheckoutSessionFromWire, aA as healthPlanCheckoutStateFromWire, aB as healthPlanFocusDesignFromWire, aC as healthPlanFromWire, aD as healthPlanPageFromWire, aE as isHealthPlanSessionRequired, aF as showHealthPlanCartBar, aG as useEverfurHealthPlan, aH as useEverfurHealthPlanRepository, aI as useHealthPlanCartDock, aJ as useHealthPlanPage, aK as useHealthPlanPageRepository } from '../focus.d-DMg2ngHI.js';
10
- import { i as EverfurPresentationInput } from '../presentation.d-DMbdad7G.js';
11
- export { E as EverfurChatAnswerStyle, a as EverfurChatComposerPlaceholder, b as EverfurChatComposerStyle, c as EverfurChatHistoryBarSetting, d as EverfurChatHistoryStyle, e as EverfurChatSendButtonSetting, f as EverfurChatTopCardSetting, g as EverfurHealthPlanLayout, h as EverfurPresentation, j as EverfurSafetyDisclaimerPlacement } from '../presentation.d-DMbdad7G.js';
8
+ import { c as HealthPlanFocusCopy, e as HealthPlanFocusIcon, b as HealthPlanFocusDesign, f as HealthPlanItem, g as HealthPlanSubscription, h as HealthPlanOneBoxOrder, i as HealthPlanSubscriptionRepository, j as HealthPlanPageRepository, k as HealthPlanShopOrder, l as HealthPlanCheckoutProvider } from '../focus.d-CtotIyEt.js';
9
+ export { s as HEALTH_PLAN_FOCUS_COPY, t as HEALTH_PLAN_REASON_KINDS, m as HealthPlan, u as HealthPlanCartCheckoutRequest, v as HealthPlanCheckoutItem, w as HealthPlanCheckoutRefusal, x as HealthPlanCheckoutRequest, y as HealthPlanCheckoutSession, z as HealthPlanCheckoutState, A as HealthPlanCheckoutStatus, B as HealthPlanFocusExtra, C as HealthPlanFocusPrices, D as HealthPlanFocusReasonRow, E as HealthPlanFocusReview, F as HealthPlanFocusSign, G as HealthPlanFocusStep, I as HealthPlanFocusWait, J as HealthPlanOneBoxOffer, K as HealthPlanOneBoxOrderPage, L as HealthPlanOneBoxOrderPageOptions, M as HealthPlanOrderStatus, N as HealthPlanOrderTracking, O as HealthPlanOrderTrackingStatus, H as HealthPlanPage, r as HealthPlanPagePet, P as HealthPlanPurchase, Q as HealthPlanReason, o as HealthPlanReasonKind, n as HealthPlanRepository, R as HealthPlanRepositoryDeps, S as HealthPlanRuntime, q as HealthPlanSubscriptionQuote, T as HealthPlanSubscriptionRenewal, U as HealthPlanSubscriptionStatus, V as HealthPlanSubscriptionStep, W as HealthPlanSubscriptionSupply, X as HealthPlanTrackStep, Y as createHealthPlanPageRepository, Z as createHealthPlanPageRepositoryOver, _ as createHealthPlanRepository, $ as createHealthPlanRepositoryOver, a2 as formatHealthPlanDay, a3 as healthPlanCheckoutRefusal, a4 as healthPlanCheckoutSessionFromWire, a5 as healthPlanCheckoutStateFromWire, a7 as healthPlanFocusDesignFromWire, a8 as healthPlanFromWire, ac as healthPlanPageFromWire } from '../focus.d-CtotIyEt.js';
10
+ import { i as EverfurPresentationInput } from '../presentation.d-vy8kTGfR.js';
11
+ export { E as EverfurChatAnswerStyle, a as EverfurChatComposerPlaceholder, b as EverfurChatComposerStyle, c as EverfurChatHistoryBarSetting, d as EverfurChatHistoryStyle, e as EverfurChatSendButtonSetting, f as EverfurChatTopCardSetting, g as EverfurHealthPlanLayout, h as EverfurPresentation, j as EverfurSafetyDisclaimerPlacement } from '../presentation.d-vy8kTGfR.js';
12
+ import { H as HealthPlanBlanksFacts, a as HealthPlanPriceFormat, b as HealthPlanLayoutProps, e as HealthPlanCardOptions, f as HealthPlanImageVariant, g as HealthPlanReasonVariant, d as HealthPlanCart } from '../usePresentation.d-BsR08Wxt.js';
13
+ export { E as EverfurHealthPlanOptions, h as EverfurHealthPlanState, i as EverfurHealthPlanStatus, j as HEALTH_PLAN_COPY, k as HEALTH_PLAN_COPY_PLACEHOLDERS, l as HEALTH_PLAN_LAYOUT_DEFAULTS, m as HEALTH_PLAN_REASON_LABELS, n as HEALTH_PLAN_TEMPLATES, o as HealthPlanAddButtonSize, p as HealthPlanAddedVariant, q as HealthPlanBlanksPhase, r as HealthPlanCardShadow, s as HealthPlanCartBarPlacement, t as HealthPlanCartBarVisibility, u as HealthPlanCategoryVariant, v as HealthPlanFontWeight, w as HealthPlanHeaderContext, x as HealthPlanPageContext, y as HealthPlanShadow, z as formatHealthPlanPrice, A as formatHealthPlanPriceWith, B as healthPlanBlanksFacts, C as healthPlanCart, D as healthPlanNextShotsAt, F as healthPlanRecordsWeightKg, G as isHealthPlanSessionRequired, I as showHealthPlanCartBar, J as useEverfurHealthPlan, K as useEverfurHealthPlanRepository, L as useEverfurPresentation } from '../usePresentation.d-BsR08Wxt.js';
12
14
  import { L as LifecyclePort } from '../LifecyclePort.d-Cr1p33a7.js';
13
15
  import { E as EverfurResult } from '../EverfurResult.d-D_-254ZY.js';
14
16
  import { R as RecordsRecordWire } from '../ports.d-BX4f4UsB.js';
15
- export { A as AuthContext, I as IdentityProvider, M as MintedToken, T as TokenProvider } from '../identity.d-DzTijonw.js';
16
- export { A as AcceptedFrame, a as AnalysisCompleteFrame, b as AnalysisStartedFrame, D as DeltaFrame, c as DoneFrame, E as ErrorFrame, d as EverfurRequest, e as EverfurRequestBase, F as Frame, f as FrameBase, g as FrameKind, H as HeartbeatFrame, h as HttpMethod, M as MultipartBody, T as TransportPort, U as UnknownFrame, i as UrgencyLevel } from '../config.d-Dy6igYlH.js';
17
+ export { H as HealthPlanCartDock, a as HealthPlanCartScope, b as HealthPlanCartScopeProps, c as HealthPlanController, d as HealthPlanNoVetListener, e as HealthPlanPageOptions, f as HealthPlanPagePhase, g as HealthPlanPageState, h as HealthPlanPhase, i as HealthPlanRecordsLandedListener, j as HealthPlanRecordsLandedSource, k as HealthPlanSnapshot, l as healthPlanNoVet, n as notifyHealthPlanRecordsLanded, o as onHealthPlanNoVet, m as onHealthPlanRecordsLanded, s as setHealthPlanNoVet, u as useHealthPlanCartDock, p as useHealthPlanPage, q as useHealthPlanPageRepository } from '../planSignals.d-DtxZoWGM.js';
18
+ export { A as AuthContext, I as IdentityProvider, M as MintedToken, T as TokenProvider } from '../identity.d-BksOEa6m.js';
19
+ export { A as AcceptedFrame, a as AnalysisCompleteFrame, b as AnalysisStartedFrame, D as DeltaFrame, c as DoneFrame, E as ErrorFrame, d as EverfurRequest, e as EverfurRequestBase, F as Frame, f as FrameBase, g as FrameKind, H as HeartbeatFrame, h as HttpMethod, M as MultipartBody, T as TransportPort, U as UnknownFrame, i as UrgencyLevel } from '../config.d-zd2eTb2L.js';
17
20
  export { E as ErrorPolicyPort } from '../ErrorPolicyPort.d-68yrE3BE.js';
18
- export { u as useEverfurPresentation } from '../usePresentation.d-DuGQe_Do.js';
19
- import '../requestFunnel.d-CXUMPw1K.js';
21
+ import '../requestFunnel.d-DFf9C__p.js';
22
+ import '../models.d-DOwnr8fi.js';
20
23
 
21
24
  /** The pet facts the words are sized to. */
22
25
  interface HealthPlanPetWords {
@@ -67,7 +70,10 @@ interface HealthPlanFocusRnOverlayControls {
67
70
  /** True for a full screen (no bottom tabs under it): the cart, the order placed, the started screen. */
68
71
  readonly full?: boolean;
69
72
  }
70
- /** The pet's records read the layout needs: only whether there are any. */
73
+ /**
74
+ * Your own read of the pet's record (tests, a stub backend): only whether anything is on file. Without it the layout
75
+ * reads the records the way the records surface does (`@everfur/sdk/records`), which also fills her three blanks.
76
+ */
71
77
  interface HealthPlanRecordsReader {
72
78
  getRecord(petRef: PetRef): Promise<EverfurResult<RecordsRecordWire>>;
73
79
  }
@@ -130,6 +136,16 @@ interface HealthPlanFocusRnOptions {
130
136
  */
131
137
  readonly recordsMissing?: boolean;
132
138
  readonly onConnectRecords?: () => void;
139
+ /**
140
+ * Her three blanks: where her clinic request stands and what her records hold (`healthPlanBlanksFacts`). Null: no
141
+ * card. Omit it and, with `onConnectRecords` (and no `recordsRepository`), they are read from the pet's records.
142
+ */
143
+ readonly recordsBlanks?: HealthPlanBlanksFacts | null;
144
+ /**
145
+ * True when the member has no vet for this pet yet (the intro's "doesn't have a vet yet"). Absent: what
146
+ * `setHealthPlanNoVet` last said for this pet in this app run, else false.
147
+ */
148
+ readonly noVet?: boolean;
133
149
  /**
134
150
  * The waiting state (Q3, for example a partner's test result not in yet): return your card and the plan's sections give way
135
151
  * to it. Return null and the plan draws as usual. The words are yours.
@@ -248,4 +264,30 @@ interface HealthPlanCartBarProps {
248
264
  /** The cart bar of a Health Plan. */
249
265
  declare function HealthPlanCartBar(props: HealthPlanCartBarProps): ReactNode;
250
266
 
251
- export { EverfurError, EverfurHealthPlan, type EverfurHealthPlanProps, EverfurPresentationInput, EverfurResult, HEALTH_PLAN_FOCUS_RN_COPY, HealthPlanCardOptions, HealthPlanCart, HealthPlanCartBar, type HealthPlanCartBarProps, HealthPlanCheckoutProvider, HealthPlanFocus, type HealthPlanFocusCheckoutRow, HealthPlanFocusCopy, HealthPlanFocusDesign, HealthPlanFocusIcon, type HealthPlanFocusProps, type HealthPlanFocusRnCopy, type HealthPlanFocusRnOptions, type HealthPlanFocusRnOverlay, type HealthPlanFocusRnOverlayControls, HealthPlanImageVariant, HealthPlanItem, HealthPlanItemCard, type HealthPlanItemCardProps, HealthPlanLayoutProps, HealthPlanOneBoxOrder, HealthPlanPageRepository, type HealthPlanPetWords, HealthPlanPriceFormat, HealthPlanReasonVariant, type HealthPlanRecordsReader, HealthPlanShopOrder, HealthPlanSubscription, HealthPlanSubscriptionRepository, LifecyclePort, PetRef, RecordsRecordWire, healthPlanPetCopy, healthPlanPossessive };
267
+ /** One row: the words before the blank, the value (null: still a blank), the words after it, and its source line. */
268
+ interface HealthPlanBlanksRow {
269
+ readonly key: string;
270
+ readonly lead: string;
271
+ readonly value: string | null;
272
+ readonly trail: string;
273
+ readonly source: string;
274
+ /** The blank's width: `s` short (a count), `l` long (a date), absent the usual. */
275
+ readonly width?: 's' | 'l';
276
+ }
277
+ interface HealthPlanBlanksProps {
278
+ readonly phase: 'empty' | 'wait' | 'filled';
279
+ /** The card's kicker ("Asked Juniper Street Vet"); '' draws nothing there. */
280
+ readonly kicker: string;
281
+ /** The pill beside it ("2 to 5 days", "3 of 3 filled"); '' draws no pill. */
282
+ readonly pill: string;
283
+ readonly rows: readonly HealthPlanBlanksRow[];
284
+ /** A blank's name for a screen reader ("blank"). */
285
+ readonly blankLabel: string;
286
+ /** The card's accessible name ("Her three blanks"). */
287
+ readonly label: string;
288
+ /** Changing it to a new non-null value plays the yellow flash once over the filled blanks. */
289
+ readonly flashKey?: string | null;
290
+ }
291
+ declare function HealthPlanBlanks(props: HealthPlanBlanksProps): ReactNode;
292
+
293
+ export { EverfurError, EverfurHealthPlan, type EverfurHealthPlanProps, EverfurPresentationInput, EverfurResult, HEALTH_PLAN_FOCUS_RN_COPY, HealthPlanBlanks, HealthPlanBlanksFacts, type HealthPlanBlanksProps, type HealthPlanBlanksRow, HealthPlanCardOptions, HealthPlanCart, HealthPlanCartBar, type HealthPlanCartBarProps, HealthPlanCheckoutProvider, HealthPlanFocus, type HealthPlanFocusCheckoutRow, HealthPlanFocusCopy, HealthPlanFocusDesign, HealthPlanFocusIcon, type HealthPlanFocusProps, type HealthPlanFocusRnCopy, type HealthPlanFocusRnOptions, type HealthPlanFocusRnOverlay, type HealthPlanFocusRnOverlayControls, HealthPlanImageVariant, HealthPlanItem, HealthPlanItemCard, type HealthPlanItemCardProps, HealthPlanLayoutProps, HealthPlanOneBoxOrder, HealthPlanPageRepository, type HealthPlanPetWords, HealthPlanPriceFormat, HealthPlanReasonVariant, type HealthPlanRecordsReader, HealthPlanShopOrder, HealthPlanSubscription, HealthPlanSubscriptionRepository, LifecyclePort, PetRef, RecordsRecordWire, healthPlanPetCopy, healthPlanPossessive };