@mediquo/elements 0.10.1 → 0.10.3

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 (95) hide show
  1. package/dist/chunks/api-chat-client-CzlZkbW1.js +1 -0
  2. package/dist/chunks/{apple-pay-outcomes-BU_PyQdT.js → apple-pay-outcomes-K8FQPELX.js} +1 -1
  3. package/dist/chunks/{documentation-view-CEfoq9vD.js → documentation-view-BqUQwjti.js} +1 -1
  4. package/dist/chunks/{index-Cgni0Is9.d.ts → index-C1325SFM.d.ts} +1 -1
  5. package/dist/chunks/{index-CYBd3XL2.js → index-DybIBddw.js} +1 -1
  6. package/dist/chunks/{index-DjD-3x4f.js → index-M3514yfv.js} +1 -1
  7. package/dist/chunks/{index-Bv4Mk1Ch.d.ts → index-kaUOEhUj.d.ts} +1 -1
  8. package/dist/chunks/{index-D0njwg5o.d.ts → index-pnQMnaEN.d.ts} +1 -1
  9. package/dist/chunks/{index.d-DeJP_xib.d.ts → index.d-CRSzJK71.d.ts} +15 -0
  10. package/dist/chunks/{mq-chat-room-B3ant6md.d.ts → mq-chat-room-CWIDQUxq.d.ts} +1 -1
  11. package/dist/chunks/{mq-next-appointments-BdsRyXJB.js → mq-next-appointments-BlIFuGgO.js} +1 -1
  12. package/dist/chunks/{mq-recent-documents-CNweIX5U.js → mq-recent-documents-D0krQAnf.js} +1 -1
  13. package/dist/chunks/{next-appointment-card-CWz0tef1.d.ts → next-appointment-card-Cd6GXAne.d.ts} +2 -2
  14. package/dist/chunks/{next-appointment-card-KXLkEJDg.js → next-appointment-card-fL1VemkX.js} +1 -1
  15. package/dist/env.js +1 -1
  16. package/dist/mq-api-client-provider.d.ts +1 -1
  17. package/dist/mq-api-client-provider.js +1 -1
  18. package/dist/mq-apple-pay-checkout.d.ts +1 -1
  19. package/dist/mq-apple-pay-checkout.js +1 -1
  20. package/dist/mq-appointment-checkout.d.ts +3 -1
  21. package/dist/mq-appointment-checkout.js +1 -1
  22. package/dist/mq-appointment-documentation.d.ts +3 -3
  23. package/dist/mq-appointment-documentation.js +1 -1
  24. package/dist/mq-chat-room.d.ts +2 -2
  25. package/dist/mq-chat-room.js +1 -1
  26. package/dist/mq-checkout.d.ts +1 -1
  27. package/dist/mq-checkout.js +1 -1
  28. package/dist/mq-dashboard.d.ts +5 -5
  29. package/dist/mq-dashboard.js +1 -1
  30. package/dist/mq-documents.d.ts +2 -2
  31. package/dist/mq-documents.js +1 -1
  32. package/dist/mq-google-pay-checkout.d.ts +1 -1
  33. package/dist/mq-google-pay-checkout.js +1 -1
  34. package/dist/mq-immediate-videocall-checkout.d.ts +1 -1
  35. package/dist/mq-immediate-videocall-checkout.js +1 -1
  36. package/dist/mq-my-appointments.d.ts +3 -3
  37. package/dist/mq-my-appointments.js +1 -1
  38. package/dist/mq-next-appointments.d.ts +3 -3
  39. package/dist/mq-next-appointments.js +1 -1
  40. package/dist/mq-payment-poller.d.ts +1 -1
  41. package/dist/mq-payment-poller.js +1 -1
  42. package/dist/mq-recent-documents.d.ts +2 -2
  43. package/dist/mq-recent-documents.js +1 -1
  44. package/dist/mq-schedule-success.d.ts +2 -2
  45. package/dist/mq-schedule-success.js +1 -1
  46. package/dist/mq-schedule.d.ts +9 -5
  47. package/dist/mq-schedule.js +1 -1
  48. package/dist/mq-support-chat.d.ts +3 -3
  49. package/dist/mq-support-chat.js +1 -1
  50. package/dist/mq-terms-and-conditions.d.ts +2 -2
  51. package/dist/mq-terms-and-conditions.js +1 -1
  52. package/dist/mq-videocall.d.ts +3 -3
  53. package/dist/mq-videocall.js +1 -1
  54. package/dist/react/mq-api-client-provider.d.ts +1 -1
  55. package/dist/react/mq-api-client-provider.js +1 -1
  56. package/dist/react/mq-apple-pay-checkout.d.ts +1 -1
  57. package/dist/react/mq-apple-pay-checkout.js +1 -1
  58. package/dist/react/mq-appointment-checkout.d.ts +2 -1
  59. package/dist/react/mq-appointment-checkout.js +1 -1
  60. package/dist/react/mq-appointment-documentation.d.ts +3 -3
  61. package/dist/react/mq-appointment-documentation.js +1 -1
  62. package/dist/react/mq-chat-room.d.ts +2 -2
  63. package/dist/react/mq-chat-room.js +1 -1
  64. package/dist/react/mq-checkout.d.ts +1 -1
  65. package/dist/react/mq-checkout.js +1 -1
  66. package/dist/react/mq-dashboard.d.ts +4 -4
  67. package/dist/react/mq-dashboard.js +1 -1
  68. package/dist/react/mq-documents-page.d.ts +2 -2
  69. package/dist/react/mq-documents-page.js +1 -1
  70. package/dist/react/mq-documents.d.ts +2 -2
  71. package/dist/react/mq-documents.js +1 -1
  72. package/dist/react/mq-google-pay-checkout.d.ts +1 -1
  73. package/dist/react/mq-google-pay-checkout.js +1 -1
  74. package/dist/react/mq-immediate-videocall-checkout.d.ts +1 -1
  75. package/dist/react/mq-immediate-videocall-checkout.js +1 -1
  76. package/dist/react/mq-my-appointments.d.ts +3 -3
  77. package/dist/react/mq-my-appointments.js +1 -1
  78. package/dist/react/mq-next-appointments.d.ts +3 -3
  79. package/dist/react/mq-next-appointments.js +1 -1
  80. package/dist/react/mq-payment-poller.d.ts +1 -1
  81. package/dist/react/mq-payment-poller.js +1 -1
  82. package/dist/react/mq-recent-documents.d.ts +2 -2
  83. package/dist/react/mq-recent-documents.js +1 -1
  84. package/dist/react/mq-schedule-success.d.ts +2 -2
  85. package/dist/react/mq-schedule-success.js +1 -1
  86. package/dist/react/mq-schedule.d.ts +1 -1
  87. package/dist/react/mq-schedule.js +1 -1
  88. package/dist/react/mq-support-chat.d.ts +2 -2
  89. package/dist/react/mq-support-chat.js +1 -1
  90. package/dist/react/mq-terms-and-conditions.d.ts +2 -2
  91. package/dist/react/mq-terms-and-conditions.js +1 -1
  92. package/dist/react/mq-videocall.d.ts +3 -3
  93. package/dist/react/mq-videocall.js +1 -1
  94. package/package.json +1 -1
  95. package/dist/chunks/api-chat-client-BhxUWldC.js +0 -1
@@ -1,4 +1,4 @@
1
- import{isValidLocale as t,setLocale as e,getLocale as i,initLocalization as o}from"./i18n.js";import{_ as n,c as a}from"./chunks/custom-element-D2ziPxYE.js";import{m as s,s as r}from"./chunks/runtime-Bg1WXVCx.js";import{l as c}from"./chunks/localized-decorator-BlOuLhym.js";import{A as p}from"./chunks/api-client-context-V1UAGtKW.js";import{i as l,a as d,x as m,E as u}from"./chunks/lit-element-DiWJYFwC.js";import{n as h}from"./chunks/property-scuRaFcM.js";import{r as v}from"./chunks/state-LQivXIgA.js";import{setEnv as g}from"./env.js";import{MqViewAppointmentsEvent as f,MqHomeEvent as k}from"./events.js";import{c as b,e as y,n as x,C as j}from"./chunks/api-chat-client-BhxUWldC.js";import{checkIcon as w}from"./ui/icons/check-icon.js";import"./ui/mq-callout.js";import"./ui/mq-button.js";import{e as $}from"./chunks/provide-BwI4DDGF.js";import{c as q}from"./chunks/consume-CovVqBjI.js";import{l as C}from"./chunks/chunk-S5RWG6G2-DPesx3Od.js";import"./chunks/professional-overview-B4E05rLd.js";import"./chunks/appointment-details-BriSqXWj.js";import{Q as _}from"./chunks/query-controller-BlO1Ax65.js";import{s as S}from"./chunks/chunk-6CCJWPGL-TiaqZaPV.js";import{g as z}from"./chunks/get-appointment-query-C-gTTuiQ.js";import{g as I}from"./chunks/get-patient-profile-query-4AO6xvVn.js";import{g as A}from"./chunks/chunk-Y4EKUX25-QqMl3eiq.js";import{b as O}from"./chunks/chunk-2TKJJNS7-BGwxtEg7.js";import{calendarIcon as P}from"./ui/icons/calendar-icon.js";import{chatbubbleIcon as T}from"./ui/icons/chat-bubble-icon.js";import{videoIcon as Q}from"./ui/icons/video-icon.js";import"./mq-chat-room.js";import"./ui/mq-floating-bubble.js";import"./ui/mq-unread-badge.js";import{g as E,t as N,l as V,a as H,n as B,o as U,p as F}from"./chunks/telemetry-client-DEIuDZfA.js";import{f as G}from"./chunks/price-DU3YLTpk.js";import"./ui/mq-skeleton.js";import"./ui/mq-card.js";import{Q as K}from"./chunks/chunk-RCFIJTXZ-C6Ir0-sM.js";import{a as M}from"./chunks/addSeconds-ofMnxlgT.js";import"./chunks/chunk-4FFT6DC2-CVWibomC.js";import"./chunks/external-CJj32K_p.js";import"./chunks/create-context-DqP79qjF.js";import"./chunks/isBefore-CPpTogxo.js";import"./chunks/parseISO-Dj3qSTG8.js";import"./chunks/if-defined-BYeVdwgd.js";import"./ui/icons/types.js";import"./ui/icons/info-circle-outine-icon.js";import"./chunks/class-map-Co76I6aw.js";import"./chunks/directive-2EDmOukv.js";import"./chunks/context-request-event-Dfydf1ub.js";import"./chunks/context-consumer-ESdICVAb.js";import"./ui/icons/chevron-down-icon.js";import"./ui/mq-text-button.js";import"./ui/mq-avatar.js";import"./ui/icons/briefcase-icon.js";import"./ui/icons/clock-icon.js";import"./ui/icons/message-bubble-icon.js";import"./ui/icons/phone-icon.js";import"./chunks/query-Cjvi4_dT.js";import"./chunks/format-CRFiCNHw.js";import"./theme.js";import"./ui/icons/x-icon.js";import"./chunks/chunk-BUV4MGML-CkhBbfUu.js";import"./ui/icons/chevron-left-icon.js";import"./chunks/query-CeeutdfT.js";import"./ui/icons/check-double-icon.js";import"./chunks/chunk-YTQUGGS3-DmCGIoFy.js";import"./chunks/mutation-controller-CR2qcqhH.js";import"./chunks/style-map-CIdqdn7C.js";const R=l`header{padding:var(--sp-6) var(--sp-4);display:flex;align-items:center;gap:var(--sp-2);max-width:var(--content-max-width);margin:0 auto}.summary{padding:var(--sp-6) var(--sp-4);background-color:var(--color-neutrals-background-weak);max-width:var(--content-max-width);margin:0 auto}.summary-content{display:flex;flex-direction:column;gap:var(--sp-4)}.manage-appointment{box-sizing:border-box;max-width:var(--content-max-width);margin:0 auto}`;let J=class MqScheduleSuccessSkeleton extends d{static{this.styles=R}render(){return m`<div><header><mq-skeleton width="220px" height="40px" border-radius="md"></mq-skeleton></header><div class="summary"><div class="summary-content"><mq-skeleton width="280px" height="32px" border-radius="md"></mq-skeleton><mq-skeleton width="100%" height="400px" border-radius="lg"></mq-skeleton><mq-skeleton width="100%" height="80px" border-radius="lg"></mq-skeleton></div></div><div class="manage-appointment"><mq-skeleton width="100%" height="313px" border-radius="lg"></mq-skeleton></div></div>`}};J=n([a("mq-schedule-success-skeleton")],J);const L=l`.success-title{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4)}.success-title .check{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--color-primary-background-extraWeak);color:var(--color-primary-icon-link)}header h1{font-family:var(--font-titles);font-size:var(--text-3xl);line-height:var(--text-3xl--line-height);font-weight:var(--font-weight-semibold);margin:0}h2{font-family:var(--font-titles);font-size:var(--text-2xl);line-height:var(--text-2xl--line-height);font-weight:var(--font-weight-bold);margin:0;margin-bottom:var(--sp-6)}.summary{padding:var(--sp-6) var(--sp-4)}.professional-card{padding:var(--sp-4)}.appointment-summary{margin-bottom:var(--sp-2);display:flex;flex-direction:column;gap:var(--sp-4)}.add-to-calendar-container{padding-top:var(--sp-4);border-top:1px solid var(--color-neutrals-border-disabled)}.price-breakdown{display:flex;flex-direction:column;gap:var(--sp-2)}.price-row{display:flex;justify-content:space-between;gap:var(--sp-4);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--text-base--line-height);color:var(--color-neutrals-text-default)}.price-row--total{font-weight:var(--font-weight-semibold)}.price-breakdown hr{width:100%;border:none;border-top:1px solid var(--color-neutrals-border-disabled);margin:var(--sp-1) 0}.floating-content{height:100%}.actions{display:flex;flex-direction:column;gap:var(--sp-4)}@media (min-width:768px){.actions{flex-direction:row}}.footer-cta{margin-top:var(--sp-4);padding:var(--sp-6) var(--sp-4)}.footer-cta h2{margin-bottom:var(--sp-2)}.footer-cta .description{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--text-base--line-height);color:var(--color-neutrals-text-default);margin:0 0 var(--sp-6)}.footer-cta .actions{display:flex;flex-direction:column;gap:var(--sp-3)}`;class OpenVideocallEvent extends Event{static{this.eventName="open-videocall"}constructor(t){super(OpenVideocallEvent.eventName,{bubbles:!0,composed:!0}),this.detail=t}}let W=class MqScheduleSuccess extends d{constructor(){super(...arguments),this.kind="schedule",this.showNavCtas=!1,this._trackedPageView=!1,this.apiClient=b(),this.getPatientProfileQuery=new _(this,()=>I(this.apiClient)),this.getAppointmentQuery=new _(this,()=>z(this.apiClient,{id:this.appointmentId})),this.getCouponQuery=new _(this,()=>{return t=this.apiClient,e={appointmentId:this.appointmentId},i={enabled:!!this.appointmentId},{queryKey:S(t,"appointment-consultation-coupon",e.appointmentId),queryFn:()=>t.payments.getAppointmentConsultationCoupon(e.appointmentId),retry:!1,...i};var t,e,i}),this.getOrganizationSpecialtiesQuery=new _(this,()=>E(this.apiClient)),this.isChatOpen=!1,this.unreadQuery=new _(this,()=>A(this.apiClient,{roomId:Number(this.getAppointmentQuery.result?.data?.room_id)},{enabled:!!this.getAppointmentQuery.result?.data?.room_id})),this._getCalloutText=t=>{switch(t.channel){case y.videocall:return s("Te enviaremos un enlace al email indicado cuando sea el momento de conectarte a la vídeoconsulta. Asegúrate de tener buena conexión a internet y un dispositivo con cámara y micrófono.");case y.phonecall:return s(r`El profesional te llamará al
1
+ import{isValidLocale as t,setLocale as e,getLocale as i,initLocalization as o}from"./i18n.js";import{_ as n,c as a}from"./chunks/custom-element-D2ziPxYE.js";import{m as s,s as r}from"./chunks/runtime-Bg1WXVCx.js";import{l as c}from"./chunks/localized-decorator-BlOuLhym.js";import{A as p}from"./chunks/api-client-context-V1UAGtKW.js";import{i as l,a as d,x as m,E as u}from"./chunks/lit-element-DiWJYFwC.js";import{n as h}from"./chunks/property-scuRaFcM.js";import{r as v}from"./chunks/state-LQivXIgA.js";import{setEnv as g}from"./env.js";import{MqViewAppointmentsEvent as f,MqHomeEvent as k}from"./events.js";import{c as b,e as y,n as x,C as j}from"./chunks/api-chat-client-CzlZkbW1.js";import{checkIcon as w}from"./ui/icons/check-icon.js";import"./ui/mq-callout.js";import"./ui/mq-button.js";import{e as $}from"./chunks/provide-BwI4DDGF.js";import{c as q}from"./chunks/consume-CovVqBjI.js";import{l as C}from"./chunks/chunk-S5RWG6G2-DPesx3Od.js";import"./chunks/professional-overview-B4E05rLd.js";import"./chunks/appointment-details-BriSqXWj.js";import{Q as _}from"./chunks/query-controller-BlO1Ax65.js";import{s as S}from"./chunks/chunk-6CCJWPGL-TiaqZaPV.js";import{g as z}from"./chunks/get-appointment-query-C-gTTuiQ.js";import{g as I}from"./chunks/get-patient-profile-query-4AO6xvVn.js";import{g as A}from"./chunks/chunk-Y4EKUX25-QqMl3eiq.js";import{b as O}from"./chunks/chunk-2TKJJNS7-BGwxtEg7.js";import{calendarIcon as P}from"./ui/icons/calendar-icon.js";import{chatbubbleIcon as T}from"./ui/icons/chat-bubble-icon.js";import{videoIcon as Q}from"./ui/icons/video-icon.js";import"./mq-chat-room.js";import"./ui/mq-floating-bubble.js";import"./ui/mq-unread-badge.js";import{g as E,t as N,l as V,a as H,n as B,o as U,p as F}from"./chunks/telemetry-client-DEIuDZfA.js";import{f as G}from"./chunks/price-DU3YLTpk.js";import"./ui/mq-skeleton.js";import"./ui/mq-card.js";import{Q as K}from"./chunks/chunk-RCFIJTXZ-C6Ir0-sM.js";import{a as M}from"./chunks/addSeconds-ofMnxlgT.js";import"./chunks/chunk-4FFT6DC2-CVWibomC.js";import"./chunks/external-CJj32K_p.js";import"./chunks/create-context-DqP79qjF.js";import"./chunks/isBefore-CPpTogxo.js";import"./chunks/parseISO-Dj3qSTG8.js";import"./chunks/if-defined-BYeVdwgd.js";import"./ui/icons/types.js";import"./ui/icons/info-circle-outine-icon.js";import"./chunks/class-map-Co76I6aw.js";import"./chunks/directive-2EDmOukv.js";import"./chunks/context-request-event-Dfydf1ub.js";import"./chunks/context-consumer-ESdICVAb.js";import"./ui/icons/chevron-down-icon.js";import"./ui/mq-text-button.js";import"./ui/mq-avatar.js";import"./ui/icons/briefcase-icon.js";import"./ui/icons/clock-icon.js";import"./ui/icons/message-bubble-icon.js";import"./ui/icons/phone-icon.js";import"./chunks/query-Cjvi4_dT.js";import"./chunks/format-CRFiCNHw.js";import"./theme.js";import"./ui/icons/x-icon.js";import"./chunks/chunk-BUV4MGML-CkhBbfUu.js";import"./ui/icons/chevron-left-icon.js";import"./chunks/query-CeeutdfT.js";import"./ui/icons/check-double-icon.js";import"./chunks/chunk-YTQUGGS3-DmCGIoFy.js";import"./chunks/mutation-controller-CR2qcqhH.js";import"./chunks/style-map-CIdqdn7C.js";const R=l`header{padding:var(--sp-6) var(--sp-4);display:flex;align-items:center;gap:var(--sp-2);max-width:var(--content-max-width);margin:0 auto}.summary{padding:var(--sp-6) var(--sp-4);background-color:var(--color-neutrals-background-weak);max-width:var(--content-max-width);margin:0 auto}.summary-content{display:flex;flex-direction:column;gap:var(--sp-4)}.manage-appointment{box-sizing:border-box;max-width:var(--content-max-width);margin:0 auto}`;let J=class MqScheduleSuccessSkeleton extends d{static{this.styles=R}render(){return m`<div><header><mq-skeleton width="220px" height="40px" border-radius="md"></mq-skeleton></header><div class="summary"><div class="summary-content"><mq-skeleton width="280px" height="32px" border-radius="md"></mq-skeleton><mq-skeleton width="100%" height="400px" border-radius="lg"></mq-skeleton><mq-skeleton width="100%" height="80px" border-radius="lg"></mq-skeleton></div></div><div class="manage-appointment"><mq-skeleton width="100%" height="313px" border-radius="lg"></mq-skeleton></div></div>`}};J=n([a("mq-schedule-success-skeleton")],J);const L=l`.success-title{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4)}.success-title .check{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--color-primary-background-extraWeak);color:var(--color-primary-icon-link)}header h1{font-family:var(--font-titles);font-size:var(--text-3xl);line-height:var(--text-3xl--line-height);font-weight:var(--font-weight-semibold);margin:0}h2{font-family:var(--font-titles);font-size:var(--text-2xl);line-height:var(--text-2xl--line-height);font-weight:var(--font-weight-bold);margin:0;margin-bottom:var(--sp-6)}.summary{padding:var(--sp-6) var(--sp-4)}.professional-card{padding:var(--sp-4)}.appointment-summary{margin-bottom:var(--sp-2);display:flex;flex-direction:column;gap:var(--sp-4)}.add-to-calendar-container{padding-top:var(--sp-4);border-top:1px solid var(--color-neutrals-border-disabled)}.price-breakdown{display:flex;flex-direction:column;gap:var(--sp-2)}.price-row{display:flex;justify-content:space-between;gap:var(--sp-4);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--text-base--line-height);color:var(--color-neutrals-text-default)}.price-row--total{font-weight:var(--font-weight-semibold)}.price-breakdown hr{width:100%;border:none;border-top:1px solid var(--color-neutrals-border-disabled);margin:var(--sp-1) 0}.floating-content{height:100%}.actions{display:flex;flex-direction:column;gap:var(--sp-4)}@media (min-width:768px){.actions{flex-direction:row}}.footer-cta{margin-top:var(--sp-4);padding:var(--sp-6) var(--sp-4)}.footer-cta h2{margin-bottom:var(--sp-2)}.footer-cta .description{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--text-base--line-height);color:var(--color-neutrals-text-default);margin:0 0 var(--sp-6)}.footer-cta .actions{display:flex;flex-direction:column;gap:var(--sp-3)}`;class OpenVideocallEvent extends Event{static{this.eventName="open-videocall"}constructor(t){super(OpenVideocallEvent.eventName,{bubbles:!0,composed:!0}),this.detail=t}}let W=class MqScheduleSuccess extends d{constructor(){super(...arguments),this.kind="schedule",this.showNavCtas=!1,this._trackedPageView=!1,this.apiClient=b(),this.getPatientProfileQuery=new _(this,()=>I(this.apiClient)),this.getAppointmentQuery=new _(this,()=>z(this.apiClient,{id:this.appointmentId})),this.getCouponQuery=new _(this,()=>{return t=this.apiClient,e={appointmentId:this.appointmentId},i={enabled:!!this.appointmentId},{queryKey:S(t,"appointment-consultation-coupon",e.appointmentId),queryFn:()=>t.payments.getAppointmentConsultationCoupon(e.appointmentId),retry:!1,...i};var t,e,i}),this.getOrganizationSpecialtiesQuery=new _(this,()=>E(this.apiClient)),this.isChatOpen=!1,this.unreadQuery=new _(this,()=>A(this.apiClient,{roomId:Number(this.getAppointmentQuery.result?.data?.room_id)},{enabled:!!this.getAppointmentQuery.result?.data?.room_id})),this._getCalloutText=t=>{switch(t.channel){case y.videocall:return s("Te enviaremos un enlace al email indicado cuando sea el momento de conectarte a la vídeoconsulta. Asegúrate de tener buena conexión a internet y un dispositivo con cámara y micrófono.");case y.phonecall:return s(r`El profesional te llamará al
2
2
  ${this.getPatientProfileQuery.result?.data?.profile.phone??""} en el horario
3
3
  seleccionado. Asegúrate de tener buena cobertura y poder atender en
4
4
  el horario elegido.`);case y.chat:return s("El profesional te enviará un mensaje para que podamos coordinar la cita. Asegúrate de tener buena cobertura y poder atender en el horario elegido.");default:return u}}}static{this.styles=L}get _accessToken(){return this.token??this.loginToken?.access_token}get _timezone(){return this.timezone||Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC"}willUpdate(i){i.has("env")&&this.env&&g(this.env),i.has("locale")&&this.locale&&t(this.locale)&&e(this.locale);const o=x(i,{env:this.env,apiKey:this.apiKey,token:this.token,locale:this.locale},this.inheritedApiClient);o&&(this.apiClient=o)}get _patientHash(){return this.getPatientProfileQuery.result?.data?.hash??""}connectedCallback(){super.connectedCallback(),this.queryClientContext?.invalidateQueries()}updated(){!this._trackedPageView&&this._patientHash&&(this._trackedPageView=!0,N.track(V(this._patientHash,this.appointmentId)))}renderPriceBreakdown(t,e,i){const o=t.price;if(null==o||o<=0)return u;const n=t.currency??"EUR",a=t.discount_amount??0,r=a>0,c=o-a,p=this.getCouponQuery.result?.data,l=p?.name??p?.code,d=r?p?.percent_off??Math.round(a/o*100):0,h=l?`${s("Promoción")} ${l}`:s("Promoción");return m`<div class="price-breakdown"><div class="price-row"><span>${i}</span> <span>${G({amount:o,currency:n},e)}</span></div>${r?m`<div class="price-row"><span>${h} (-${d}%)</span> <span>${G({amount:-a,currency:n},e)}</span></div><hr><div class="price-row price-row--total"><span>${s("Total")}</span> <span>${G({amount:c,currency:n},e)}</span></div>`:u}</div>`}render(){return this.getAppointmentQuery.render({pending:()=>m`<mq-schedule-success-skeleton></mq-schedule-success-skeleton>`,complete:t=>{const e=i(),o=O(t.start_date),n=M(o,t.duration),a=this.getOrganizationSpecialtiesQuery.result?.data?.find(e=>e.id===Number(t.speciality_id)),c=H(a?.code??"",e,a?.name),p=t.channel===y.videocall,l=t.channel===y.phonecall,d=!0===t.has_chat_in_appointment,h=(p||l)&&d,v=this._accessToken;return m`<div><header><div class="success-title"><span class="check">${w()}</span><h1>${"schedule"===this.kind?s("Cita confirmada"):s("Cita modificada")}</h1></div><h2>${s(r`Resumen de la cita para ${t?.to?.name??""}`)}</h2></header><mq-card class="summary" roundness="md"><div class="appointment-summary"><professional-overview .name="${t.from.name??""}" .specialtyName="${c}" .collegiateNumber="${t.from.collegiate_number??void 0}" .description="${t.from.description??""}" .languages="${t.from.languages??[]}" .avatar="${t.from.avatar??""}" always-expanded-on-desktop></professional-overview><appointment-details .startsAt="${o.toISOString()}" .duration="${t.duration}" .channel="${t.channel}" .timezone="${this._timezone}"></appointment-details>${this.renderPriceBreakdown(t,e,c||s("Consulta"))}<div class="add-to-calendar-container"><mq-text-button fontWeight="bold" size="sm" @click="${()=>{N.track(B(this._patientHash,this.appointmentId));const e=function({title:t,description:e,startsAt:i,endsAt:o}){const n=t=>t.toISOString().replace(/[-:]/g,"").replace(/\.\d{3}/,""),a=n(i),s=n(o);return`https://www.google.com/calendar/render?${new URLSearchParams({action:"TEMPLATE",text:t,dates:`${a}/${s}`,...e&&{details:e}}).toString()}`}({title:s(r`Cita agendada de ${t.from.speciality??""}`),startsAt:o,endsAt:n,description:p&&t.consultation_short_url?s(r`Enlace a la cita: ${t.consultation_short_url}`):void 0});window.open(e,"_blank")}}">${P({size:24})} ${s("Añadir al calendario")}</mq-text-button></div>${h||p?m`<div class="actions">${h?m`<mq-button variant="primary" fullwidth size="md" @click="${()=>{N.track(U(this._patientHash,this.appointmentId)),this.isChatOpen=!this.isChatOpen}}">${T({size:24})} ${s("Chatear con el profesional")} ${(this.unreadQuery.result?.data?.unread_count??0)>0?m`<mq-unread-badge></mq-unread-badge>`:u}</mq-button>`:u} ${p?m`<mq-button variant="outline" fullwidth size="md" @click="${()=>{N.track(F(this._patientHash,this.appointmentId)),this.dispatchEvent(new OpenVideocallEvent({appointmentId:this.appointmentId}))}}">${Q({size:24})} ${s("Ir a videollamada")}</mq-button>`:u}</div>`:u}</div><mq-callout background="default" variant="info" ?noPadding="${!(h||p)}">${this._getCalloutText(t)}</mq-callout></mq-card>${this.showNavCtas?m`<mq-card class="footer-cta" roundness="md"><h2>${s("Tus citas")}</h2><p class="description">${s("Accede, modifica o anula tus citas.")}</p><div class="actions"><mq-button variant="primary" size="md" fullwidth @click="${()=>{this.dispatchEvent(new f({tab:"next"}))}}">${s("Ver mis citas")}</mq-button><mq-button variant="outline" size="md" fullwidth @click="${()=>{this.dispatchEvent(new k)}}">${s("Volver al inicio")}</mq-button></div></mq-card>`:u}</div><mq-floating-bubble ?dismissable="${!1}" .open="${this.isChatOpen}" @mq-close="${()=>{this.isChatOpen=!1}}" hideCloseButton>${this.isChatOpen&&v?m`<div slot="content" class="floating-content"><mq-chat-room .consultationId="${t.id}" .consultationType="${j.appointment}" .token="${v}" .roomId="${Number(t.room_id)}" .professionalHash="${t.from.hash}" @mq-chat-room-close="${()=>{this.isChatOpen=!1}}"></mq-chat-room></div>`:u}</mq-floating-bubble>`}})}};n([h({type:String})],W.prototype,"kind",void 0),n([h({type:String})],W.prototype,"appointmentId",void 0),n([h({type:String,attribute:"api-key"})],W.prototype,"apiKey",void 0),n([h({type:String,attribute:"token"})],W.prototype,"token",void 0),n([h({type:String,attribute:"timezone"})],W.prototype,"timezone",void 0),n([h({type:String,attribute:"locale"})],W.prototype,"locale",void 0),n([h({type:String,attribute:"env"})],W.prototype,"env",void 0),n([h({type:Boolean,attribute:"show-nav-ctas"})],W.prototype,"showNavCtas",void 0),n([q({context:K,subscribe:!0})],W.prototype,"queryClientContext",void 0),n([q({context:C})],W.prototype,"loginToken",void 0),n([q({context:p,subscribe:!0}),v()],W.prototype,"inheritedApiClient",void 0),n([$({context:p}),v()],W.prototype,"apiClient",void 0),n([v()],W.prototype,"isChatOpen",void 0),W=n([c(),a("mq-schedule-success")],W),o();export{W as MqScheduleSuccess,OpenVideocallEvent};
@@ -2,7 +2,7 @@ import * as lit_html_directive_js from 'lit-html/directive.js';
2
2
  import * as lit_html_directives_keyed_js from 'lit-html/directives/keyed.js';
3
3
  import * as lit from 'lit';
4
4
  import { LitElement, PropertyValues, TemplateResult, nothing } from 'lit';
5
- import { M as MediquoApiChatClient, c as GetScheduleServicesResponse, C as CreatePaymentLinkRequest, P as PaymentProvider, d as GetProfessionalsBySpecialtyAndServiceResponse } from './chunks/index.d-DeJP_xib.js';
5
+ import { M as MediquoApiChatClient, c as GetScheduleServicesResponse, C as CreatePaymentLinkRequest, P as PaymentProvider, d as GetProfessionalsBySpecialtyAndServiceResponse } from './chunks/index.d-CRSzJK71.js';
6
6
  import './ui/mq-button.js';
7
7
  import { Env } from './env.js';
8
8
  import * as lit_html from 'lit-html';
@@ -115,6 +115,7 @@ declare const ScheduleSlotSchema: z$1.ZodObject<{
115
115
  } | null | undefined;
116
116
  }>;
117
117
  status: z$1.ZodEnum<["available", "reserved"]>;
118
+ payable_reference: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodString>>;
118
119
  }, "strip", z$1.ZodTypeAny, {
119
120
  status: "available" | "reserved";
120
121
  id: string;
@@ -137,6 +138,7 @@ declare const ScheduleSlotSchema: z$1.ZodObject<{
137
138
  id: string;
138
139
  name: string;
139
140
  }[];
141
+ payable_reference?: string | null | undefined;
140
142
  }, {
141
143
  status: "available" | "reserved";
142
144
  id: string;
@@ -159,6 +161,7 @@ declare const ScheduleSlotSchema: z$1.ZodObject<{
159
161
  id: string;
160
162
  name: string;
161
163
  }[];
164
+ payable_reference?: string | null | undefined;
162
165
  }>;
163
166
  type ScheduleSlot = z$1.infer<typeof ScheduleSlotSchema>;
164
167
 
@@ -406,9 +409,6 @@ declare global {
406
409
  * @fires google-pay-opened - Cancelable. Fired before the Google Pay popup opens.
407
410
  * Call preventDefault() to open the checkout URL yourself.
408
411
  * detail.url includes #token= (secret — do not log).
409
- * @fires mq-payment-redirect - Cancelable. Fired when paying hands the user over
410
- * to an off-site gateway (Stripe). Its default action is the navigation, so
411
- * hosts need no listener unless they must open the URL themselves.
412
412
  * @fires error - Fired when the polling timeout is reached
413
413
  */
414
414
  declare class PaymentStep extends LitElement {
@@ -449,6 +449,8 @@ declare class PaymentStep extends LitElement {
449
449
  private _pollStartTimeoutId?;
450
450
  private _pollDeadline;
451
451
  get isFullyDiscounted(): boolean;
452
+ /** Stripe card checkout uses the Mediquo `/pay` shell in the payment iframe. */
453
+ private get embedsHostedCheckout();
452
454
  private createScheduleAppointment;
453
455
  private confirmFree;
454
456
  private _paymentAmountCents;
@@ -456,6 +458,7 @@ declare class PaymentStep extends LitElement {
456
458
  private _paymentAmountLabel;
457
459
  private _buildApplePayUrl;
458
460
  private _buildGooglePayUrl;
461
+ private _buildPayUrl;
459
462
  private _buildWalletCheckoutUrl;
460
463
  private _stopPaymentPolling;
461
464
  private _startPaymentPolling;
@@ -469,6 +472,7 @@ declare class PaymentStep extends LitElement {
469
472
  private _walletReopenLinkLabel;
470
473
  private _walletReopenAgainLabel;
471
474
  private _onHeaderBack;
475
+ willUpdate(changed: PropertyValues): void;
472
476
  updated(changed: PropertyValues): void;
473
477
  connectedCallback(): void;
474
478
  disconnectedCallback(): void;
@@ -569,7 +573,7 @@ declare class ProfessionalsList extends LitElement {
569
573
  service_id: string | undefined;
570
574
  private getScheduleServicesQuery;
571
575
  private getProfessionalsBySpecialtyAndServiceQuery;
572
- render(): lit_html.TemplateResult<1> | typeof nothing | null;
576
+ render(): typeof nothing | lit_html.TemplateResult<1> | null;
573
577
  }
574
578
  declare global {
575
579
  interface HTMLElementTagNameMap {