your-ai-workflow-firebase-os 2.0.8 → 2.0.9

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 (139) hide show
  1. package/dist/{Assets-Dd_96avv.js → Assets-COH4Ji57.js} +5 -5
  2. package/dist/{Assets-CBBNIHrw.cjs → Assets-D7fDckSi.cjs} +1 -1
  3. package/dist/{Attachments-C6QrTcNt.cjs → Attachments-BMuQ0CD4.cjs} +1 -1
  4. package/dist/{Attachments-YyjQmhBx.js → Attachments-Co1UkdWB.js} +2 -2
  5. package/dist/{Billing-B6f49cGH.cjs → Billing-DkuJdls5.cjs} +1 -1
  6. package/dist/{Billing-BZafAizg.js → Billing-kk4ZMd3z.js} +4 -4
  7. package/dist/{BookingCalendar-DYsA71vl.cjs → BookingCalendar-BcvJiyaq.cjs} +1 -1
  8. package/dist/{BookingCalendar-_xoRa2tL.js → BookingCalendar-Bej__mIs.js} +1 -1
  9. package/dist/{Button-DSldWACF.js → Button-BGN6q7lY.js} +1 -1
  10. package/dist/{Button-PyTaaoyu.cjs → Button-Ccy4wFZ1.cjs} +1 -1
  11. package/dist/{ConfirmModal-CQ73WYUg.cjs → ConfirmModal-BUNtss4a.cjs} +1 -1
  12. package/dist/{ConfirmModal-C1dM-bzk.js → ConfirmModal-BW9e6Y7d.js} +3 -3
  13. package/dist/{ContactPopup-D5Hh0bfE.cjs → ContactPopup-D8aSSlmS.cjs} +1 -1
  14. package/dist/{ContactPopup-CL4AMwK9.js → ContactPopup-Fs7wzrOX.js} +7 -7
  15. package/dist/{CopyLink-BnYpVy6H.cjs → CopyLink-C5lKLyOU.cjs} +1 -1
  16. package/dist/{CopyLink-rLr_5eNM.js → CopyLink-CNjDLzOl.js} +2 -2
  17. package/dist/{DashboardNav-B0G943ux.js → DashboardNav-CEd8gGPm.js} +3 -3
  18. package/dist/{DashboardNav-DOl9gJuu.cjs → DashboardNav-GgEUpyTa.cjs} +1 -1
  19. package/dist/{EmailAdmin-CWHMMybh.cjs → EmailAdmin-d_gWd48U.cjs} +1 -1
  20. package/dist/{EmailAdmin-humrSTzI.js → EmailAdmin-pbQ-f9Ge.js} +9 -9
  21. package/dist/{EventCard-CrPswwyG.js → EventCard-BSGLYD64.js} +2 -2
  22. package/dist/{EventCard-6eCfvOA-.cjs → EventCard-DAsGsicK.cjs} +1 -1
  23. package/dist/{FileViewerPopup-DQmhXMSg.cjs → FileViewerPopup-CkLUYCNo.cjs} +1 -1
  24. package/dist/{FileViewerPopup-Dnl3td2o.js → FileViewerPopup-gqhRT22v.js} +2 -2
  25. package/dist/{FormNote-BWGLs9lx.js → FormNote-DJ9HBokL.js} +1 -1
  26. package/dist/{FormNote-CX2rSBDB.cjs → FormNote-DP0GK9ya.cjs} +1 -1
  27. package/dist/{FormsAdmin-Tg20B0iA.cjs → FormsAdmin-5KTTp6zo.cjs} +1 -1
  28. package/dist/{FormsAdmin-CHwmKnYU.js → FormsAdmin-BNI63vEk.js} +9 -9
  29. package/dist/{Inbox-Cgq4MALU.js → Inbox-D9Y5K8Se.js} +9 -9
  30. package/dist/{Inbox-BPwIiThg.cjs → Inbox-DjslBakx.cjs} +1 -1
  31. package/dist/{Loader-DP_dL5qC.js → Loader-CVoz1Zf0.js} +1 -1
  32. package/dist/{Loader-p3eNQDUU.cjs → Loader-QHqQsXLr.cjs} +1 -1
  33. package/dist/{ManagePlanButton-BRW7Sevd.cjs → ManagePlanButton-Buwfs2bU.cjs} +1 -1
  34. package/dist/{ManagePlanButton-CNLCxK-o.js → ManagePlanButton-CE4uyh_7.js} +2 -2
  35. package/dist/{MyBookings-C_pqsSEk.js → MyBookings-B4DndHV6.js} +7 -7
  36. package/dist/{MyBookings-BC5sn_fE.cjs → MyBookings-CkEioQIj.cjs} +1 -1
  37. package/dist/{PageTitle-DFGW71q8.js → PageTitle-DCoUQWw6.js} +2 -2
  38. package/dist/{PageTitle-BWmE74WQ.cjs → PageTitle-DQkvCB11.cjs} +1 -1
  39. package/dist/PagesAdmin-D0qgoZtW.js +3 -0
  40. package/dist/{PagesAdmin-jjnDLYmF.js → PagesAdmin-DzLJWKBJ.js} +21 -21
  41. package/dist/PagesAdmin-KUxCI1Mr.cjs +1 -0
  42. package/dist/{PagesAdmin-BZZ3by92.cjs → PagesAdmin-YdYgmuEB.cjs} +1 -1
  43. package/dist/{PaymentsAdmin-CI0zXraR.cjs → PaymentsAdmin-B5l-f0mp.cjs} +1 -1
  44. package/dist/{PaymentsAdmin-DeBMmFFo.js → PaymentsAdmin-C3cEOeIs.js} +15 -15
  45. package/dist/{Popup-DmPEk98h.js → Popup-Bi63lzoS.js} +1 -1
  46. package/dist/{Popup-nq7YNM4N.cjs → Popup-COnHpbrY.cjs} +1 -1
  47. package/dist/{ProviderMark-DJ5mYjYn.cjs → ProviderMark--adeeajP.cjs} +1 -1
  48. package/dist/{ProviderMark-CAeOnBsB.js → ProviderMark-BvEMlZAm.js} +1 -1
  49. package/dist/{PublishApp-mMMwf_in.js → PublishApp-B9Fo6xN0.js} +7 -7
  50. package/dist/{PublishApp-DI96gX9b.cjs → PublishApp-Bc82Ijkq.cjs} +1 -1
  51. package/dist/{Said-DAD7Ctp_.js → Said-BvSRaEfZ.js} +1 -1
  52. package/dist/{Said-DlJOjNMN.cjs → Said-W3KFi5uX.cjs} +1 -1
  53. package/dist/{ScheduleAdmin-dWj_N_tf.cjs → ScheduleAdmin-Dh_hW6p4.cjs} +1 -1
  54. package/dist/{ScheduleAdmin-C4W8Ls0D.js → ScheduleAdmin-bk3GgxKP.js} +14 -14
  55. package/dist/{SchedulePicker-CwKId9JF.cjs → SchedulePicker-CN0755Ek.cjs} +1 -1
  56. package/dist/{SchedulePicker-BOSJEcfL.js → SchedulePicker-DO4PewPJ.js} +2 -2
  57. package/dist/{Setup-DcZzh6Xd.cjs → Setup-R4r6_tbV.cjs} +1 -1
  58. package/dist/{Setup-NOvtplUS.js → Setup-_G-s5y5Q.js} +3 -3
  59. package/dist/{SetupPayments-DrXK0LQa.js → SetupPayments-CkolcOtv.js} +5 -5
  60. package/dist/{SetupPayments-CZ0KqXdR.cjs → SetupPayments-CuFk9REC.cjs} +1 -1
  61. package/dist/{SignInAdmin-CwIUAJrv.cjs → SignInAdmin-B1yLLaQu.cjs} +1 -1
  62. package/dist/{SignInAdmin-Cb65ChHL.js → SignInAdmin-BLEn0rId.js} +9 -9
  63. package/dist/{SupportBar-528kXe-Z.js → SupportBar-DI_XbEsG.js} +4 -4
  64. package/dist/{SupportBar-CNVXSYwT.cjs → SupportBar-DLWruzQb.cjs} +1 -1
  65. package/dist/{SystemTabContent-EegzTuLd.cjs → SystemTabContent-BWhRHoXx.cjs} +1 -1
  66. package/dist/{SystemTabContent-C4azXKMs.js → SystemTabContent-CMyT7mDN.js} +2 -2
  67. package/dist/{TemplateDrive-XDRPkxIj.cjs → TemplateDrive-BJN-ReA_.cjs} +1 -1
  68. package/dist/{TemplateDrive-CfPXKMKX.js → TemplateDrive-DNBwL0oy.js} +10 -10
  69. package/dist/{ThemeAdmin-XLbC9fX7.js → ThemeAdmin-Cnqefrz6.js} +6 -6
  70. package/dist/ThemeAdmin-CoE_c5-P.cjs +1 -0
  71. package/dist/ThemeAdmin-DI7QaZ-0.js +2 -0
  72. package/dist/{ThemeAdmin-BrEozdpZ.cjs → ThemeAdmin-DkgmjW3g.cjs} +1 -1
  73. package/dist/TimeZoneField-Ckn1pKAL.cjs +11 -0
  74. package/dist/{TimeZoneField-Dv389mAe.js → TimeZoneField-oIMwb5_X.js} +119 -107
  75. package/dist/{TransactionsAdmin-X-NjI4NB.js → TransactionsAdmin-Brs-CEcG.js} +11 -11
  76. package/dist/{TransactionsAdmin-DgsG629u.cjs → TransactionsAdmin-C5wQRR1g.cjs} +1 -1
  77. package/dist/{Trouble-qjWYeKzC.js → Trouble-CtFq7tjk.js} +1 -1
  78. package/dist/{Trouble-DokPNHQZ.cjs → Trouble-KQZyf6aY.cjs} +1 -1
  79. package/dist/{Users-BEjl_Vjc.cjs → Users-B16L9cKI.cjs} +1 -1
  80. package/dist/{Users-BUGb7-Kz.js → Users-CbI4K_Le.js} +15 -15
  81. package/dist/{VideoPlayer-BVOkrJBR.cjs → VideoPlayer-CggwpVXH.cjs} +1 -1
  82. package/dist/{VideoPlayer-DB0oz6lM.js → VideoPlayer-QI1Jc3bS.js} +1 -1
  83. package/dist/appIcons-C90OKlV5.cjs +130 -0
  84. package/dist/{appIcons-CUXAX_gJ.js → appIcons-CCArfCDe.js} +761 -735
  85. package/dist/{arrivalRoads-BZk39p8Z.js → arrivalRoads-CGXm9Ntm.js} +0 -0
  86. package/dist/{arrivalRoads-CD7pt03E.cjs → arrivalRoads-Cc6AZM-d.cjs} +0 -0
  87. package/dist/{bookingPages-BxqkyZ-M.js → bookingPages-BFSY3Riv.js} +1 -1
  88. package/dist/{bookingPages-2fn9xPiA.cjs → bookingPages-Dx1ViiwW.cjs} +1 -1
  89. package/dist/{contentFallback-C6xLwXTs.js → contentFallback-BGGpI1Ts.js} +2 -2
  90. package/dist/{contentFallback-DLm_iHo9.cjs → contentFallback-DVCrIUvK.cjs} +1 -1
  91. package/dist/{email-DxxovRtf.js → email-PBHbXXgR.js} +1 -1
  92. package/dist/{email-DD48BP42.cjs → email-Sya6gl4F.cjs} +1 -1
  93. package/dist/lib/basket.d.ts +29 -9
  94. package/dist/lib/recordPrice.d.ts +1 -1
  95. package/dist/{notices-Cwon5Q0Y.cjs → notices-CKm9-Pqt.cjs} +1 -1
  96. package/dist/{notices-C4yqYzBw.js → notices-CysS7BLF.js} +1 -1
  97. package/dist/{ownerMail-CGmDk7aP.cjs → ownerMail-BS9SjJ2u.cjs} +1 -1
  98. package/dist/{ownerMail-Chzy5Ehy.js → ownerMail-DepG5-Qw.js} +2 -2
  99. package/dist/{pageFiles-BClshvXs.cjs → pageFiles-Cn0YQ4Ur.cjs} +1 -1
  100. package/dist/{pageFiles-D-GYqRgZ.js → pageFiles-ZFPSCDZz.js} +1 -1
  101. package/dist/{paidInFull-KuStok9_.cjs → paidInFull-CZywIs-V.cjs} +1 -1
  102. package/dist/{paidInFull-D14Eh0QV.js → paidInFull-mBOh9iwN.js} +1 -1
  103. package/dist/{paidSessions-Cr_93LGa.js → paidSessions-B8e5RHi4.js} +7 -7
  104. package/dist/{paidSessions-QXv7SHeb.cjs → paidSessions-D-zHC4oG.cjs} +1 -1
  105. package/dist/{people-D8nPPMlM.cjs → people-BwWVVLfy.cjs} +1 -1
  106. package/dist/{people-sk2DcHPi.js → people-Wk2opW4G.js} +1 -1
  107. package/dist/{publishSteps-DB1Hxr6H.js → publishSteps-Cf5pSB_H.js} +1 -1
  108. package/dist/{publishSteps-CaZRpC3C.cjs → publishSteps-DvWlF0p_.cjs} +1 -1
  109. package/dist/{recordLock-Dnz61J-_.js → recordLock-CMOiezNC.js} +1 -1
  110. package/dist/{recordLock-CLUp3QNh.cjs → recordLock-CiulizO1.cjs} +1 -1
  111. package/dist/{recordsKey-R5BjLoGQ.cjs → recordsKey-C4E2vOti.cjs} +1 -1
  112. package/dist/{recordsKey-DHJJWWOo.js → recordsKey-Cd216nq1.js} +2 -2
  113. package/dist/{registrationFields-COv8jW4n.cjs → registrationFields-DHHTptcl.cjs} +1 -1
  114. package/dist/{registrationFields-CeTZSerx.js → registrationFields-DdHoMPAQ.js} +1 -1
  115. package/dist/renderer.cjs.js +1 -1
  116. package/dist/renderer.es.js +1 -1
  117. package/dist/{roles-5juCr5sY.cjs → roles-BBDIJzox.cjs} +1 -1
  118. package/dist/{roles-hzcMnn_M.js → roles-DiwP6-WQ.js} +3 -3
  119. package/dist/{scheduleData-BpkfnBjP.cjs → scheduleData-BXjNXVHY.cjs} +1 -1
  120. package/dist/{scheduleData-BLCUm84s.js → scheduleData-DR6A-Q7Z.js} +1 -1
  121. package/dist/server.cjs.js +1 -1
  122. package/dist/server.es.js +1 -1
  123. package/dist/{serviceStatus-5sk8MPjW.js → serviceStatus-C9izcuQz.js} +2 -2
  124. package/dist/{serviceStatus-1pGLLilF.cjs → serviceStatus-Cde96_OO.cjs} +1 -1
  125. package/dist/{serviceSwitches-BWnZBooS.js → serviceSwitches-CZHwvVfP.js} +1 -1
  126. package/dist/{serviceSwitches-Do_pkFCu.cjs → serviceSwitches-mhJbQBrV.cjs} +1 -1
  127. package/dist/vite.cjs.js +1 -1
  128. package/dist/vite.es.js +1 -1
  129. package/dist/your-ai-workflow-firebase-os.cjs.js +8 -8
  130. package/dist/your-ai-workflow-firebase-os.css +1 -1
  131. package/dist/your-ai-workflow-firebase-os.es.js +358 -316
  132. package/package.json +1 -1
  133. package/src/index.css +41 -6
  134. package/dist/PagesAdmin-B-XopEi9.js +0 -3
  135. package/dist/PagesAdmin-nL5ZltFn.cjs +0 -1
  136. package/dist/ThemeAdmin-CwCiTp2I.js +0 -2
  137. package/dist/ThemeAdmin-Db5edTYj.cjs +0 -1
  138. package/dist/TimeZoneField-zR8N2Fj0.cjs +0 -11
  139. package/dist/appIcons-BNovDw6_.cjs +0 -130
@@ -1,22 +1,22 @@
1
1
  import { t as e } from "./forms-C2IxnO9p.js";
2
- import { t } from "./PageTitle-DFGW71q8.js";
3
- import { Ft as n, Mt as r, S as i, b as a, c as o, g as s, i as c, jt as ee, m as l, mi as u, nt as d, o as f, rt as p, ui as m, w as te } from "./TimeZoneField-Dv389mAe.js";
4
- import { S as ne, T as re, t as ie } from "./DashboardNav-B0G943ux.js";
2
+ import { t } from "./PageTitle-DCoUQWw6.js";
3
+ import { Ft as n, Mt as r, S as i, b as a, c as o, g as s, i as c, jt as ee, m as l, mi as u, nt as d, o as f, rt as p, ui as m, w as te } from "./TimeZoneField-oIMwb5_X.js";
4
+ import { S as ne, T as re, t as ie } from "./DashboardNav-CEd8gGPm.js";
5
5
  import { $t as ae, Mt as oe, Vt as se, a as ce, an as le, en as h, r as ue } from "./schedule-C13m_kiO.js";
6
6
  import { n as g, t as _ } from "./chevron-down--LwXEv9w.js";
7
- import { y as de } from "./scheduleData-BLCUm84s.js";
8
- import { t as fe } from "./ContactPopup-CL4AMwK9.js";
9
- import { t as pe } from "./SupportBar-528kXe-Z.js";
7
+ import { y as de } from "./scheduleData-DR6A-Q7Z.js";
8
+ import { t as fe } from "./ContactPopup-Fs7wzrOX.js";
9
+ import { t as pe } from "./SupportBar-DI_XbEsG.js";
10
10
  import { t as v } from "./eye-DBR-sZWU.js";
11
- import { n as me } from "./VideoPlayer-DB0oz6lM.js";
11
+ import { n as me } from "./VideoPlayer-QI1Jc3bS.js";
12
12
  import { r as y, t as b } from "./x-hax8aKt8.js";
13
13
  import { t as x } from "./plus-BKrt0Qx5.js";
14
14
  import { t as he } from "./send-D-Vm6vU4.js";
15
15
  import { t as ge } from "./trash-6Wj66gJi.js";
16
- import { t as _e } from "./ConfirmModal-C1dM-bzk.js";
16
+ import { t as _e } from "./ConfirmModal-BW9e6Y7d.js";
17
17
  import { i as ve } from "./AccessNotice-DGsp8Xfl.js";
18
18
  import { n as ye } from "./useIsPhone-gAClfVGG.js";
19
- import { n as be, t as xe } from "./SchedulePicker-BOSJEcfL.js";
19
+ import { n as be, t as xe } from "./SchedulePicker-DO4PewPJ.js";
20
20
  import { useEffect as Se, useRef as Ce, useState as S } from "react";
21
21
  import { Fragment as we, jsx as C, jsxs as w } from "react/jsx-runtime";
22
22
  import { collection as Te, deleteDoc as T, doc as E, getDocs as Ee, setDoc as D } from "firebase/firestore";
@@ -1,23 +1,23 @@
1
- import { h as e, p as t, t as n } from "./PageTitle-DFGW71q8.js";
2
- import { E as r, Ft as i, I as a, N as o, P as s, T as c, Zr as l, a as ee, f as te, ii as u, l as d, nt as f, o as p, rt as ne, tt as re, ui as m } from "./TimeZoneField-Dv389mAe.js";
3
- import { a as ie, t as ae, x as h } from "./DashboardNav-B0G943ux.js";
1
+ import { h as e, p as t, t as n } from "./PageTitle-DCoUQWw6.js";
2
+ import { E as r, Ft as i, I as a, N as o, P as s, T as c, Zr as l, a as ee, f as te, ii as u, l as d, nt as f, o as p, rt as ne, tt as re, ui as m } from "./TimeZoneField-oIMwb5_X.js";
3
+ import { a as ie, t as ae, x as h } from "./DashboardNav-CEd8gGPm.js";
4
4
  import { Sn as g, nt as _, wn as oe } from "./schedule-C13m_kiO.js";
5
5
  import { n as v } from "./chevron-down--LwXEv9w.js";
6
6
  import { t as se } from "./arrow-left-DdRja6es.js";
7
- import { t as ce } from "./FileViewerPopup-Dnl3td2o.js";
8
- import { t as le } from "./FormNote-BWGLs9lx.js";
7
+ import { t as ce } from "./FileViewerPopup-gqhRT22v.js";
8
+ import { t as le } from "./FormNote-DJ9HBokL.js";
9
9
  import { n as ue, t as de } from "./x-hax8aKt8.js";
10
10
  import { t as fe } from "./trash-6Wj66gJi.js";
11
11
  import { t as pe } from "./user-round-BXAihGcZ.js";
12
- import { n as y } from "./Loader-DP_dL5qC.js";
12
+ import { n as y } from "./Loader-CVoz1Zf0.js";
13
13
  import { l as b } from "./address-4GXKgkSk.js";
14
14
  import { a as x, i as S } from "./transactions-ycKW6zHa.js";
15
15
  import { i as C, o as me } from "./tabAudience-DJ6H5Uth.js";
16
- import { t as he } from "./ConfirmModal-C1dM-bzk.js";
17
- import { n as ge } from "./SystemTabContent-C4azXKMs.js";
16
+ import { t as he } from "./ConfirmModal-BW9e6Y7d.js";
17
+ import { n as ge } from "./SystemTabContent-CMyT7mDN.js";
18
18
  import { n as _e } from "./useIsPhone-gAClfVGG.js";
19
19
  import { n as w } from "./contentKey-DEiV3vR8.js";
20
- import { t as ve } from "./Attachments-YyjQmhBx.js";
20
+ import { t as ve } from "./Attachments-Co1UkdWB.js";
21
21
  import { useCallback as T, useDeferredValue as ye, useEffect as E, useMemo as be, useRef as D, useState as O } from "react";
22
22
  import { Fragment as k, jsx as A, jsxs as j } from "react/jsx-runtime";
23
23
  import { collection as xe, deleteDoc as M, doc as N, endAt as Se, getDoc as Ce, limit as we, onSnapshot as P, orderBy as F, query as Te, startAt as Ee, updateDoc as I } from "firebase/firestore";
@@ -1,3 +1,3 @@
1
- require(`./chunk-CiTBaPhY.cjs`);const e=require(`./PageTitle-BWmE74WQ.cjs`),t=require(`./TimeZoneField-zR8N2Fj0.cjs`),n=require(`./DashboardNav-DOl9gJuu.cjs`),r=require(`./schedule-BAea6q8_.cjs`),i=require(`./chevron-down-lyDK1rfL.cjs`),a=require(`./arrow-left-C39sNUA7.cjs`),o=require(`./FileViewerPopup-DQmhXMSg.cjs`),s=require(`./FormNote-CX2rSBDB.cjs`),c=require(`./x-Ci8c5p6T.cjs`),l=require(`./trash-D-CpYHCs.cjs`),u=require(`./user-round-DUV_u2Tg.cjs`),d=require(`./Loader-p3eNQDUU.cjs`),f=require(`./address-D88ICQCR.cjs`),p=require(`./transactions-CIU2NcKh.cjs`),m=require(`./tabAudience-2fJAN1aD.cjs`),ee=require(`./ConfirmModal-CQ73WYUg.cjs`),h=require(`./SystemTabContent-EegzTuLd.cjs`),te=require(`./useIsPhone-CoiQVcCo.cjs`),g=require(`./contentKey-BwicZ0gK.cjs`),_=require(`./Attachments-C6QrTcNt.cjs`);let v=require(`react`),y=require(`react/jsx-runtime`),b=require(`firebase/firestore`),ne=require(`react-router-dom`);var x={name:`arrow-down-to-line`,size:24,node:[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]};x.node;var S=i.n(x),C={name:`arrow-up-from-line`,size:24,node:[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]};C.node;var w=i.n(C),T={name:`reply`,size:24,node:[[`path`,{d:`M20 18v-2a4 4 0 0 0-4-4H4`,key:`5vmcpk`}],[`path`,{d:`m9 17-5-5 5-5`,key:`nvlc11`}]]};T.node;var re=i.n(T),E={anyone:{collectionName:`user_submissions`,chip:`Anyone`,said:`Not signed in`,filterLabel:`From anyone`},signedIn:{collectionName:`user_requests`,chip:`Signed-in user`,said:`Signed-in user`,filterLabel:`From signed-in users`}},D=[`id`,`source`,`uid`,`submittedAt`,`avatarUrl`,`isArchived`,`name`,`full_name`,`email`,`contactEmail`,`topic`],O=e=>e==null?``:typeof e==`boolean`?e?`Yes`:`No`:Array.isArray(e)?e.map(O).filter(Boolean).join(`
1
+ require(`./chunk-CiTBaPhY.cjs`);const e=require(`./PageTitle-DQkvCB11.cjs`),t=require(`./TimeZoneField-Ckn1pKAL.cjs`),n=require(`./DashboardNav-GgEUpyTa.cjs`),r=require(`./schedule-BAea6q8_.cjs`),i=require(`./chevron-down-lyDK1rfL.cjs`),a=require(`./arrow-left-C39sNUA7.cjs`),o=require(`./FileViewerPopup-CkLUYCNo.cjs`),s=require(`./FormNote-DP0GK9ya.cjs`),c=require(`./x-Ci8c5p6T.cjs`),l=require(`./trash-D-CpYHCs.cjs`),u=require(`./user-round-DUV_u2Tg.cjs`),d=require(`./Loader-QHqQsXLr.cjs`),f=require(`./address-D88ICQCR.cjs`),p=require(`./transactions-CIU2NcKh.cjs`),m=require(`./tabAudience-2fJAN1aD.cjs`),ee=require(`./ConfirmModal-BUNtss4a.cjs`),h=require(`./SystemTabContent-BWhRHoXx.cjs`),te=require(`./useIsPhone-CoiQVcCo.cjs`),g=require(`./contentKey-BwicZ0gK.cjs`),_=require(`./Attachments-BMuQ0CD4.cjs`);let v=require(`react`),y=require(`react/jsx-runtime`),b=require(`firebase/firestore`),ne=require(`react-router-dom`);var x={name:`arrow-down-to-line`,size:24,node:[[`path`,{d:`M12 17V3`,key:`1cwfxf`}],[`path`,{d:`m6 11 6 6 6-6`,key:`12ii2o`}],[`path`,{d:`M19 21H5`,key:`150jfl`}]]};x.node;var S=i.n(x),C={name:`arrow-up-from-line`,size:24,node:[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]};C.node;var w=i.n(C),T={name:`reply`,size:24,node:[[`path`,{d:`M20 18v-2a4 4 0 0 0-4-4H4`,key:`5vmcpk`}],[`path`,{d:`m9 17-5-5 5-5`,key:`nvlc11`}]]};T.node;var re=i.n(T),E={anyone:{collectionName:`user_submissions`,chip:`Anyone`,said:`Not signed in`,filterLabel:`From anyone`},signedIn:{collectionName:`user_requests`,chip:`Signed-in user`,said:`Signed-in user`,filterLabel:`From signed-in users`}},D=[`id`,`source`,`uid`,`submittedAt`,`avatarUrl`,`isArchived`,`name`,`full_name`,`email`,`contactEmail`,`topic`],O=e=>e==null?``:typeof e==`boolean`?e?`Yes`:`No`:Array.isArray(e)?e.map(O).filter(Boolean).join(`
2
2
  `):typeof e==`object`?typeof e.toDate==`function`?j(e):Object.entries(e).filter(([e])=>!p.i(e)).map(([e,t])=>`${e}: ${O(t)}`).join(` · `):String(e),k=`That message is gone.`,A=e=>{let t=e.submittedAt;if(!t)return 0;if(typeof t.toMillis==`function`)return t.toMillis();if(typeof t.toDate==`function`)return t.toDate().getTime();let n=new Date(t).getTime();return Number.isNaN(n)?0:n},j=e=>{if(!e)return`Just now`;let t=e.toDate?e.toDate():new Date(e);return new Intl.DateTimeFormat(`en-US`,{month:`short`,day:`numeric`,hour:`numeric`,minute:`numeric`}).format(t)},M=e=>{if(!e)return`now`;let t=e.toDate?e.toDate():new Date(e),n=new Date;return t.toDateString()===n.toDateString()?new Intl.DateTimeFormat(`en-US`,{hour:`numeric`,minute:`numeric`}).format(t):new Intl.DateTimeFormat(`en-US`,t.getFullYear()===n.getFullYear()?{month:`short`,day:`numeric`}:{month:`short`,year:`numeric`}).format(t)},ie=e=>{let t=new Date(e);return new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()},N=e=>{let t=A(e);if(!t)return`Older`;let n=Math.round((ie(Date.now())-ie(t))/864e5);return n<=0?`Today`:n===1?`Yesterday`:n<7?`This week`:n<30?`This month`:`Older`},ae=e=>e.reduce((e,t)=>{let n=N(t),r=e[e.length-1];return r&&r.label===n?r.items.push(t):e.push({label:n,items:[t]}),e},[]),oe=e=>e.submitterName||e.name||e.full_name||`Anonymous`,P=e=>e.contactEmail||e.email||``,F=e=>`${e.source}:${e.id}`,se=e=>{let t=e.indexOf(`:`),n=t>0?e.slice(0,t):``;return n===`anyone`||n===`signedIn`?{source:n,id:e.slice(t+1)}:{source:null,id:e}},ce=(e,t)=>se(t).source?F(e)===t:e.id===t,le=e=>{let t=Object.entries(e).filter(([t])=>!D.includes(t)&&!t.toLowerCase().startsWith(`submitter`)&&t.toLowerCase()!==`formid`&&!f.l(t,e));return e.topic?[[`topic`,e.topic],...t]:t},I=e=>e.replace(/_/g,` `).replace(/\b\w/g,e=>e.toUpperCase()),ue=e=>{let n=le(e).filter(([e])=>e!==`topic`),r=n.find(([,e])=>!t.I(e)&&O(e).trim()),i=n.filter(([,e])=>t.I(e)).reduce((e,[,n])=>e+t.P(n).length,0),a=(r?O(r[1]):i>0?`${i} ${i===1?`file`:`files`} attached`:P(e)).replace(/\s*\n+\s*/g,` · `).replace(/\s+/g,` `).trim();return[e.topic?String(e.topic).trim():``,a].filter(Boolean).join(` — `).slice(0,200)},L=e=>e.replace(/_/g,` `).replace(/^\w/,e=>e.toUpperCase()),R=(e,t)=>{let n={};for(let[r,i]of t)n[r]={...i?.config||{},...e[r]||{}};for(let[t,r]of Object.entries(e)){let i=String(r?.fileId||``);i&&i!==t&&!e[i]?(n[t]={...n[i]||{},...r},delete n[i]):n[t]||(n[t]=r)}return Object.entries(n)};function z(t,r={},i=n.x()){let a=g.n(t);if(!a)return{name:`Contact`,Icon:e.h};let o=typeof window<`u`&&window.__FBOS_FORMS__||{},s=o[a]||o[String(t)],c=null;for(let[e,t]of R(r,i)){let n=new Set([e,t?.contentKey,t?.pageId,t?.tabName,t?.pageName,t?.title].map(g.n).filter(e=>e.length>=3));for(let e of n)(a===e||a.startsWith(e))&&(!c||e.length>c.key.length)&&(c={key:e,page:t})}let l=c?.page;return{name:String(l?.tabName||l?.pageName||l?.title||s?.title||``).trim()||L(a),Icon:e.p(l?.iconName)||e.h}}var de=()=>{try{let e=localStorage.getItem(`fbos_nav_tabs`),t=e?JSON.parse(e):null;return t&&typeof t==`object`?t:{}}catch{return{}}};function B(){let[e,n]=(0,v.useState)(de);return(0,v.useEffect)(()=>t.Zr(`sys_tabs`,()=>(0,b.collection)(t.ui,`sys_tabs`),e=>{let t={};for(let n of e.docs||[])t[n.id]=n.data();n(t)},()=>{}),[]),(0,v.useCallback)(t=>z(t,e),[e])}var V=`fbos_inbox_seen_at`,H=`fbos_inbox_opened`,fe=500,pe=()=>{try{let e=Number(localStorage.getItem(V));if(e>0||localStorage.getItem(V)===`0`)return e;let t=Date.now();return localStorage.setItem(V,String(t)),t}catch{return Date.now()}},me=()=>{try{let e=JSON.parse(localStorage.getItem(H)||`[]`);return new Set(Array.isArray(e)?e.map(String):[])}catch{return new Set}};function he(){let[e,t]=(0,v.useState)(me);return[e,(0,v.useCallback)(e=>{t(t=>{if(t.has(e))return t;let n=new Set(t);n.add(e);try{localStorage.setItem(H,JSON.stringify([...n].slice(-fe)))}catch{}return n})},[])]}var U=new Map,W=e=>{let n=U.get(e);return n||(n=(0,b.getDoc)((0,b.doc)(t.ui,`user_profiles`,e)).then(e=>e.exists()?e.data():null).catch(t=>(console.error(`Failed to fetch profile`,t),U.delete(e),null)),U.set(e,n)),n},G=e=>!(e.formId===`booking`||r.nt(e)||p.a(e)),K=(e,t,n)=>Promise.all(e.filter(e=>G(e.data())).map(async e=>{let r={...e.data()},i=``;if(n&&r.uid&&r.uid!==`guest`){let e=await W(r.uid);e&&((e.avatar||e.photoURL)&&(i=e.avatar||e.photoURL),r.name||=e.name||e.displayName,r.email||=e.email,r.contactEmail||=e.email)}return{...r,id:e.id,source:t,avatarUrl:i}}));function ge(e,n,r){let[i,a]=(0,v.useState)([]),[o,s]=(0,v.useState)(!0),[c,l]=(0,v.useState)(null),[u,d]=(0,v.useState)({answeredFor:0,more:!1,reachedBack:0,lastStamp:null});return(0,v.useEffect)(()=>{let i=!1,o=0,c=E[e].collectionName,u=(0,b.onSnapshot)((0,b.query)((0,b.collection)(t.ui,c),(0,b.orderBy)(`submittedAt`,`desc`),(0,b.limit)(r)),async t=>{let c=++o,u=await K(t.docs,e,n);if(i||c!==o)return;let f=t.docs.length>=r,p=f?t.docs[t.docs.length-1].data():null;a(u),d({answeredFor:r,more:f,reachedBack:p?A(p):0,lastStamp:p?.submittedAt??null}),l(null),s(!1)},e=>{console.error(`Error loading ${c}:`,e),i||(l(e),d({answeredFor:r,more:!1,reachedBack:0,lastStamp:null}),s(!1))});return()=>{i=!0,u()}},[e,n,r]),{items:i,loading:o,refused:c,...u,waiting:u.answeredFor!==r}}function q(e,n,r,i){let[a,o]=(0,v.useState)({items:[],answered:!1,failed:null});return(0,v.useEffect)(()=>{if(r==null||i==null){o(e=>e.answered||e.items.length?{items:[],answered:!1,failed:null}:e);return}let a=!1,s=0,c=E[e].collectionName,l=(0,b.onSnapshot)((0,b.query)((0,b.collection)(t.ui,c),(0,b.orderBy)(`submittedAt`,`desc`),(0,b.startAt)(r),(0,b.endAt)(i)),async t=>{let r=++s,i=await K(t.docs,e,n);!a&&r===s&&o({items:i,answered:!0,failed:null})},e=>{console.error(`Error reading further back in ${c}:`,e),a||o({items:[],answered:!0,failed:e})});return()=>{a=!0,l()}},[e,n,r,i]),a}var _e=[.16,1,.3,1];function J({on:e,onClick:t,label:n,short:r,count:i}){return(0,y.jsxs)(`button`,{type:`button`,onClick:t,"aria-pressed":e,"aria-label":n,className:`h-7 px-2.5 inline-flex items-center gap-1.5 rounded-full text-[12.5px] font-medium border whitespace-nowrap transition-colors cursor-pointer active:scale-[0.98] ${e?`bg-accent/10 border-accent/30 text-accent`:`border-[var(--panel-border)] text-foreground/60 hover:text-foreground hover:bg-foreground/[0.03]`}`,children:[r?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(`span`,{className:`sm:hidden`,children:r}),(0,y.jsx)(`span`,{className:`max-sm:hidden`,children:n})]}):n,i?(0,y.jsx)(`span`,{className:`tabular-nums text-[11.5px] opacity-70`,children:i}):null]})}var Y=`w-8 h-8 inline-flex items-center justify-center rounded-lg text-foreground/50 hover:text-foreground hover:bg-foreground/[0.06] transition-colors cursor-pointer outline-none focus-visible:ring-2 focus-visible:ring-accent/50`;function ve({item:e,look:t,selected:n,unread:r,onSelect:i,onArchive:a,onDelete:o}){let s=oe(e),c=t.Icon,u=!!(a||o);return(0,y.jsxs)(`div`,{className:`group relative px-2 md:px-3`,children:[(0,y.jsxs)(`button`,{type:`button`,onClick:i,"aria-current":n?`true`:void 0,"aria-label":`Show details from ${s}`,"data-unread":r?`true`:void 0,className:`w-full flex items-center gap-3 px-3 py-2.5 rounded-xl text-left transition-colors cursor-pointer outline-none focus-visible:ring-2 focus-visible:ring-accent/40 ${n?`bg-accent/[0.1]`:r?`bg-accent/[0.05] hover:bg-accent/[0.08]`:`hover:bg-foreground/[0.03]`}`,children:[(0,y.jsx)(`span`,{"aria-hidden":`true`,className:`w-1.5 h-1.5 rounded-full shrink-0 ${r?`bg-accent`:`bg-transparent`}`}),(0,y.jsx)(c,{"aria-hidden":`true`,className:`w-4 h-4 shrink-0 ${n?`text-accent`:`text-foreground/45`}`}),(0,y.jsx)(`span`,{className:`shrink-0 max-w-[42%] truncate text-[13.5px] ${r?`font-semibold text-foreground`:`font-medium text-foreground/85`}`,children:s}),(0,y.jsx)(`span`,{className:`flex-1 min-w-0 truncate text-[13px] ${r?`text-foreground/65`:`text-foreground/50`}`,children:ue(e)}),(0,y.jsx)(`span`,{className:`shrink-0 text-[11.5px] tabular-nums text-foreground/40 transition-opacity ${u?`group-hover:opacity-0`:``}`,children:M(e.submittedAt)})]}),u&&(0,y.jsxs)(`div`,{className:`absolute right-4 md:right-5 top-1/2 -translate-y-1/2 flex items-center gap-0.5 rounded-lg bg-background/90 backdrop-blur-sm opacity-0 group-hover:opacity-100 focus-within:opacity-100 transition-opacity`,children:[a&&(0,y.jsx)(`button`,{type:`button`,onClick:a,"aria-label":e.isArchived?`Restore`:`Archive`,title:e.isArchived?`Restore`:`Archive`,className:Y,children:e.isArchived?(0,y.jsx)(w,{className:`w-4 h-4`}):(0,y.jsx)(S,{className:`w-4 h-4`})}),o&&(0,y.jsx)(`button`,{type:`button`,onClick:o,"aria-label":`Delete`,title:`Delete`,className:Y,children:(0,y.jsx)(l.t,{className:`w-4 h-4`})})]})]})}function ye({item:e,look:n,canOpenProfile:r,actions:i,onOpenFile:a}){let o=oe(e),s=P(e),c=le(e),l=!!e.uid&&e.uid!==`guest`;return(0,y.jsxs)(`article`,{"aria-label":`Message from ${o}`,className:`px-5 py-6 sm:px-8 sm:py-8 lg:px-10 flex flex-col gap-6 max-w-3xl`,children:[(0,y.jsxs)(`header`,{className:`flex flex-col gap-4`,children:[(0,y.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,y.jsxs)(`div`,{className:`min-w-0 flex flex-col gap-1`,children:[(0,y.jsx)(`p`,{className:`text-[12.5px] font-medium text-foreground/50`,children:n.name}),(0,y.jsx)(`h2`,{className:`text-[22px] sm:text-2xl font-semibold tracking-tight text-foreground leading-tight [overflow-wrap:anywhere]`,children:o}),(0,y.jsx)(`p`,{className:`text-[13px] text-foreground/60 flex flex-wrap items-center gap-x-2 gap-y-0.5`,children:[s?(0,y.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:s},`email`):null,(0,y.jsx)(`span`,{children:E[e.source].said},`who`),(0,y.jsx)(`span`,{className:`tabular-nums`,children:j(e.submittedAt)},`when`)].filter(Boolean).map((e,t)=>(0,y.jsxs)(`span`,{className:`inline-flex items-center gap-x-2`,children:[t>0&&(0,y.jsx)(`span`,{"aria-hidden":`true`,className:`text-foreground/30`,children:`·`}),e]},e.key))})]}),i&&(0,y.jsx)(`div`,{className:`flex items-center gap-1.5 shrink-0`,children:i})]}),l&&r&&(0,y.jsxs)(ne.Link,{to:`/users/${e.uid}`,className:`self-start inline-flex items-center gap-1.5 text-[13px] font-medium text-accent hover:underline`,children:[(0,y.jsx)(u.t,{className:`w-3.5 h-3.5`,"aria-hidden":`true`}),`Open this person’s profile`]})]}),c.length>0?(0,y.jsx)(`dl`,{className:`border-t border-[var(--panel-border)]/70 divide-y divide-[var(--panel-border)]/50`,children:c.map(([e,n])=>(0,y.jsxs)(`div`,{className:`py-3.5 sm:grid sm:grid-cols-[minmax(7rem,11rem)_minmax(0,1fr)] sm:gap-6`,children:[(0,y.jsx)(`dt`,{className:`text-[13px] text-foreground/60 mb-1 sm:mb-0 sm:pt-px`,children:I(e)}),(0,y.jsx)(`dd`,{className:`min-w-0`,children:t.I(n)?(0,y.jsx)(_.t,{value:n,onOpen:a}):(0,y.jsx)(`p`,{className:`text-[14.5px] text-foreground leading-relaxed whitespace-pre-wrap break-words [overflow-wrap:anywhere]`,children:O(n)||`No data provided`})})]},e))}):(0,y.jsx)(`p`,{className:`border-t border-[var(--panel-border)]/70 pt-4 text-[13.5px] text-foreground/50`,children:`This form only asked for a name and email.`})]})}function be({items:r,loading:i,refused:u,onArchive:f,onDelete:p,opensUsers:m,formLook:g,initialOpen:_=null,more:b=!1,loadingMore:x=!1,onShowMore:C,onFind:T,found:D=null}){let k=te.n(),j=t.tt(),[M,ie]=(0,v.useState)(`all`),[N,se]=(0,v.useState)(`all`),[I,ue]=(0,v.useState)(!1),[L,R]=(0,v.useState)(!1),[z,de]=(0,v.useState)(``),B=(0,v.useDeferredValue)(z.trim().toLowerCase()),[V,H]=(0,v.useState)(_),[fe,me]=(0,v.useState)(null),[U,W]=(0,v.useState)(``),[G,K]=(0,v.useState)(null),[ge,q]=(0,v.useState)(!1),[Y,be]=(0,v.useState)(null),[X,xe]=(0,v.useState)(``),[Se]=(0,v.useState)(pe),[Ce,we]=he(),Te=(0,v.useCallback)(e=>A(e)>Se&&!Ce.has(F(e)),[Se,Ce]),Ee=(0,v.useCallback)(e=>{let t=F(e);H(t),W(``),xe(``),we(t)},[we]),[De,Oe]=(0,ne.useSearchParams)(),Z=De.get(`open`);(0,v.useEffect)(()=>{if(!Z||i)return;let e=r.find(e=>ce(e,Z));if(e){e.isArchived&&R(!0),Ee(e),Oe({},{replace:!0});return}if(T){if(D?.key!==Z){T(Z);return}D.gone&&(H(null),xe(D.words||`That message is gone.`),Oe({},{replace:!0}))}},[Z,i,r,D]),(0,v.useEffect)(()=>{_&&r.find(e=>F(e)===_)?.isArchived&&R(!0)},[_]);let ke=k&&!!V;(0,v.useEffect)(()=>{if(!ke||typeof document>`u`)return;let e=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=e}},[ke]);let Ae=(0,v.useMemo)(()=>{let e=new Map;for(let t of r){let n=String(t.formId||``);e.has(n)||e.set(n,g(t.formId))}return e},[r,g]),je=[...Ae.entries()],Q=(0,v.useCallback)(e=>Ae.get(String(e.formId||``))||g(e.formId),[Ae,g]),Me=r.filter(e=>e.isArchived).length,Ne=r.filter(e=>!e.isArchived&&Te(e)).length,Pe=(0,v.useMemo)(()=>r.filter(e=>!(!!e.isArchived!==L||M!==`all`&&e.source!==M||N!==`all`&&String(e.formId||``)!==N||I&&!Te(e)||B&&![oe(e),P(e),Q(e).name,...le(e).map(([,e])=>t.I(e)?t.P(e).map(t.N).join(` `):O(e))].join(`
3
3
  `).toLowerCase().includes(B))),[r,L,M,N,I,B,Te,Q]),$=V&&r.find(e=>F(e)===V)||null,Fe=async e=>{if(!f)return;let n=F(e);me(n),W(``);try{await f(e),we(n),V===n&&H(null)}catch(e){W(t.ii(e,`The message could not be moved.`))}me(null)},Ie=async()=>{if(!(!G||!p)){q(!0),W(``);try{await p(G),V===F(G)&&H(null),K(null)}catch(e){W(t.ii(e,`The message could not be deleted.`)),K(null)}q(!1)}},Le=[{key:`all`,label:`Everything`,short:`All`},{key:`anyone`,label:E.anyone.filterLabel,short:`Anyone`},{key:`signedIn`,label:E.signedIn.filterLabel,short:`Signed in`}],Re=(e,n=!1)=>{let r=P(e);return r?(0,y.jsxs)(`a`,{href:`mailto:${r}`,title:`Reply by email`,"aria-label":`Reply by email`,className:`${t.a} ${n?`max-sm:w-8 max-sm:px-0 max-sm:gap-0 max-sm:border-transparent max-sm:hover:border-transparent max-sm:hover:bg-foreground/[0.06]`:``}`,children:[(0,y.jsx)(re,{className:`w-3.5 h-3.5 shrink-0`,"aria-hidden":`true`}),n?(0,y.jsx)(`span`,{className:`max-sm:hidden`,children:`Reply`}):`Reply`]}):null},ze=(e,n=!1)=>(0,y.jsxs)(y.Fragment,{children:[Re(e,n),f&&(0,y.jsx)(t.o,{icon:e.isArchived?w:S,onClick:()=>Fe(e),busy:fe===F(e),compact:n,title:e.isArchived?`Restore`:`Archive`,children:e.isArchived?`Restore`:`Archive`}),p&&(0,y.jsx)(t.o,{icon:l.t,tone:`danger`,onClick:()=>K(e),compact:n,title:`Delete`,children:`Delete`})]}),Be=b&&C?(0,y.jsx)(`div`,{className:`flex justify-center px-5 pb-5`,children:(0,y.jsx)(t.o,{busy:x,onClick:C,children:`Show older messages`})}):null,Ve=Pe.length===0?(0,y.jsx)(`p`,{className:`px-6 py-14 text-center text-[13.5px] text-foreground/50`,children:L?`Nothing archived matches.`:Me>0&&r.length===Me?`Everything here is archived.`:`Nothing matches.`}):(0,y.jsx)(t.E,{className:`flex flex-col pb-3`,children:ae(Pe).flatMap(e=>[(0,y.jsx)(`p`,{className:`px-5 md:px-6 pt-4 pb-1.5 text-[11.5px] font-medium uppercase tracking-[0.14em] text-foreground/40 select-none`,children:e.label},`h:${e.label}`),...e.items.map(e=>(0,y.jsx)(ve,{item:e,look:Q(e),selected:V===F(e),unread:Te(e),onSelect:()=>Ee(e),onArchive:!k&&f?()=>Fe(e):void 0,onDelete:!k&&p?()=>K(e):void 0},F(e)))])}),He=(0,y.jsxs)(`div`,{className:`p-4 md:p-5 flex flex-col gap-3 border-b border-[var(--panel-border)]/60`,children:[(0,y.jsxs)(`div`,{className:t.l,children:[(0,y.jsx)(c.n,{className:`w-4 h-4 mr-2.5 text-foreground/30 shrink-0`,"aria-hidden":`true`}),(0,y.jsx)(`input`,{type:`text`,value:z,onChange:e=>de(e.target.value),placeholder:`Search messages`,"aria-label":`Search messages`,className:`${t.f} no-glow`}),z&&(0,y.jsx)(`button`,{type:`button`,onClick:()=>de(``),"aria-label":`Clear search`,className:`ml-2 -mr-1 w-7 h-7 inline-flex items-center justify-center rounded-lg text-foreground/40 hover:text-foreground hover:bg-foreground/[0.06] transition-colors cursor-pointer`,children:(0,y.jsx)(c.t,{className:`w-3.5 h-3.5`})})]}),(0,y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[Le.map(e=>(0,y.jsx)(J,{on:M===e.key,onClick:()=>ie(e.key),label:e.label,short:e.short},e.key)),(0,y.jsx)(`span`,{"aria-hidden":`true`,className:`w-px h-3.5 mx-0.5 bg-[var(--panel-border)]`}),(0,y.jsx)(J,{on:I,onClick:()=>ue(e=>!e),label:`Unread`,count:Ne}),je.length>1&&(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(`span`,{"aria-hidden":`true`,className:`w-px h-3.5 mx-0.5 bg-[var(--panel-border)]`}),je.map(([e,t])=>(0,y.jsx)(J,{on:N===e,onClick:()=>se(t=>t===e?`all`:e),label:t.name},e||`_`))]}),Me>0&&(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(`span`,{"aria-hidden":`true`,className:`w-px h-3.5 mx-0.5 bg-[var(--panel-border)]`}),(0,y.jsx)(J,{on:L,onClick:()=>R(e=>!e),label:`Archived`,count:Me})]})]})]}),Ue=i?(0,y.jsx)(`div`,{className:`flex-1 min-h-0 md:grid md:grid-cols-[minmax(340px,430px)_minmax(0,1fr)]`,children:(0,y.jsxs)(`div`,{className:`p-4 md:p-5 flex flex-col gap-3 md:border-r md:border-[var(--panel-border)]/70`,"aria-busy":`true`,children:[(0,y.jsx)(d.n,{className:`h-10 rounded-xl`}),(0,y.jsxs)(`div`,{className:`flex gap-1.5`,children:[(0,y.jsx)(d.n,{className:`h-8 w-24 rounded-full`}),(0,y.jsx)(d.n,{className:`h-8 w-28 rounded-full`}),(0,y.jsx)(d.n,{className:`h-8 w-20 rounded-full`})]}),(0,y.jsx)(`div`,{className:`flex flex-col gap-1.5 pt-2`,children:[0,1,2,3,4,5].map(e=>(0,y.jsx)(d.n,{className:`h-10 rounded-xl`,style:{opacity:1-e*.12}},e))})]})}):u&&r.length===0?(0,y.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-8`,children:(0,y.jsx)(s.t,{tone:`error`,children:t.ii(u,`The messages could not be read.`)})}):r.length===0&&!b?(0,y.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center text-center gap-1 px-8 py-20`,children:[(0,y.jsx)(`p`,{className:`text-[14px] font-medium text-foreground/70`,children:`Nothing here yet`}),(0,y.jsx)(`p`,{className:`text-[13px] text-foreground/45`,children:`Everything people send you through a form on your site lands here.`})]}):k?(0,y.jsxs)(`div`,{className:`flex flex-col`,children:[He,X&&(0,y.jsx)(`p`,{className:`px-5 md:px-6 pt-4 text-[13.5px] text-foreground/60`,children:X}),Ve,Be]}):(0,y.jsxs)(`div`,{className:`flex-1 min-h-0 grid grid-cols-[minmax(340px,430px)_minmax(0,1fr)]`,children:[(0,y.jsxs)(`div`,{className:`flex flex-col min-h-0 border-r border-[var(--panel-border)]/70`,children:[He,(0,y.jsxs)(`div`,{className:`flex-1 min-h-0 overflow-y-auto`,children:[Ve,Be]})]}),(0,y.jsx)(`div`,{className:`min-h-0 overflow-y-auto`,children:(0,y.jsx)(t.nt.div,{initial:j?!1:{opacity:0,y:8},animate:{opacity:1,y:0},transition:{duration:.25,ease:_e},className:`min-h-full flex flex-col`,children:$?(0,y.jsxs)(y.Fragment,{children:[U&&(0,y.jsx)(`div`,{className:`px-8 pt-6 lg:px-10`,children:(0,y.jsx)(s.t,{tone:`error`,children:U})}),(0,y.jsx)(ye,{item:$,look:Q($),canOpenProfile:m,actions:ze($),onOpenFile:be})]}):(0,y.jsx)(`div`,{className:`flex-1 flex items-center justify-center p-8`,children:(0,y.jsx)(`p`,{className:`text-[13.5px] ${X?`text-foreground/60`:`text-foreground/40`}`,children:X||`Select a message to read it.`})})},$?F($):`none`)})]});return(0,y.jsxs)(`main`,{className:`flex-1 w-full max-w-7xl mx-auto p-4 pt-2 md:p-8 md:pt-4 z-10 flex flex-col min-h-screen`,children:[(0,y.jsxs)(t.nt.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},className:`mb-6`,children:[(0,y.jsx)(e.t,{children:`Inbox`}),(0,y.jsxs)(`div`,{className:`flex items-center gap-2 text-foreground/40 font-bold uppercase tracking-[0.2em] text-[11px]`,children:[(0,y.jsx)(`span`,{className:`w-8 h-[1px] bg-foreground/10`}),`/inbox`]})]}),(0,y.jsxs)(`div`,{className:`flex flex-col gap-6 flex-1 pb-16`,children:[(0,y.jsx)(`div`,{className:`flex justify-start`,children:(0,y.jsx)(n.t,{})}),(0,y.jsx)(h.n,{tab:`inbox`}),(0,y.jsx)(t.T,{as:`section`,className:`glass-panel border border-[var(--panel-border)] rounded-2xl md:rounded-3xl shadow-2xl bg-[var(--panel-bg)] overflow-hidden flex flex-col fbos-tab-fill min-h-[420px] md:h-[clamp(560px,calc(100dvh-14rem),960px)]`,children:Ue})]}),(0,y.jsx)(t.rt,{children:ke&&$&&(0,y.jsxs)(t.nt.div,{role:`dialog`,"aria-label":`Message from ${oe($)}`,initial:j?{opacity:0}:{x:`100%`},animate:j?{opacity:1}:{x:0},exit:j?{opacity:0}:{x:`100%`},transition:{duration:.28,ease:_e},className:`fixed inset-0 z-[70] bg-background overflow-y-auto`,children:[(0,y.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center justify-between gap-2 px-3 h-14 bg-background/85 backdrop-blur-xl border-b border-[var(--panel-border)]/60`,children:[(0,y.jsxs)(`button`,{type:`button`,onClick:()=>H(null),"aria-label":`Back to the list`,className:`inline-flex items-center gap-1.5 h-9 pl-2 pr-3 rounded-xl text-[13px] font-medium text-foreground/70 hover:text-foreground hover:bg-foreground/[0.05] transition-colors cursor-pointer`,children:[(0,y.jsx)(a.t,{className:`w-4 h-4`,"aria-hidden":`true`}),`Inbox`]}),(0,y.jsx)(`div`,{className:`flex items-center gap-1`,children:ze($,!0)})]}),U&&(0,y.jsx)(`div`,{className:`px-5 pt-4`,children:(0,y.jsx)(s.t,{tone:`error`,children:U})}),(0,y.jsx)(ye,{item:$,look:Q($),canOpenProfile:m,onOpenFile:be})]},`phone-sheet`)}),(0,y.jsx)(ee.t,{isOpen:!!G,title:`Delete this message?`,message:`This removes it for good. There is no undo — archive it instead if you only want it out of the way.`,onConfirm:Ie,onCancel:()=>K(null),isProcessing:ge,confirmText:`Yes, delete`}),(0,y.jsx)(o.t,{open:!!Y,onClose:()=>be(null),src:Y?.src||``,name:Y?.name})]})}function X(){let{userRole:e}=t.Ft(),{access:i}=n.a(),a=r.wn(e),o=m.i(e,m.o(i,`users`)),s=a||r.Sn(e)||o,[c,l]=(0,v.useState)(100),u=ge(`anyone`,s,c),d=ge(`signedIn`,s,c),f=B(),p=u.loading||d.loading,ee=u.refused||d.refused,[h,te]=(0,v.useState)(null),g=(0,v.useRef)({anyone:u,signedIn:d});(0,v.useEffect)(()=>{g.current={anyone:u,signedIn:d}});let _=(0,v.useRef)(``),ne=(0,v.useCallback)(async e=>{_.current=e,te({key:e,gone:!1});let n=se(e),r=t=>{_.current===e&&te(t)},i=null;for(let a of n.source?[n.source]:[`anyone`,`signedIn`]){let o;try{o=await(0,b.getDoc)((0,b.doc)(t.ui,E[a].collectionName,n.id))}catch(e){i=e;continue}if(!o.exists())continue;let s=o.data()||{};if(!G(s)||!A(s))return r({key:e,gone:!0,words:`That message is not in your Inbox.`});let c=A(s),l={};for(let e of[`anyone`,`signedIn`]){let t=g.current[e];t.more&&t.reachedBack>=c&&t.lastStamp!=null&&(l[e]=t.lastStamp)}return r({key:e,gone:!1,to:s.submittedAt,toMs:c,from:l})}r(i?{key:e,gone:!0,words:t.ii(i,`That message could not be opened.`)}:{key:e,gone:!0,words:k})},[]),x=q(`anyone`,s,h?.from?.anyone??null,h?.to??null),S=q(`signedIn`,s,h?.from?.signedIn??null,h?.to??null),C=(e,t)=>e.more?t.answered&&h?.toMs?Math.min(e.reachedBack,h.toMs):e.reachedBack:0,w=Math.max(C(u,x),C(d,S)),T=(0,v.useMemo)(()=>{let e=new Set;return[...u.items,...d.items,...x.items,...S.items].filter(t=>{let n=F(t);return e.has(n)?!1:(e.add(n),!0)}).filter(e=>A(e)>=w).sort((e,t)=>A(t)-A(e))},[u.items,d.items,x.items,S.items,w]),re=(0,v.useCallback)(()=>l(e=>e+100),[]),D=(0,v.useMemo)(()=>{if(!h)return null;if(h.gone)return{key:h.key,gone:!0,words:h.words};let e=h.from?.anyone!=null&&x.answered||h.from?.signedIn!=null&&S.answered;if(!((h.from?.anyone==null||x.answered)&&(h.from?.signedIn==null||S.answered))||T.some(e=>ce(e,h.key)))return{key:h.key,gone:!1};let n=h.from?.anyone!=null&&x.failed||h.from?.signedIn!=null&&S.failed;return n?{key:h.key,gone:!0,words:t.ii(n,`That message could not be opened.`)}:e?{key:h.key,gone:!0,words:k}:{key:h.key,gone:!1}},[h,x.answered,x.failed,S.answered,S.failed,T]),O=(0,v.useCallback)(async e=>{await(0,b.updateDoc)((0,b.doc)(t.ui,E[e.source].collectionName,e.id),{isArchived:!e.isArchived})},[]),j=(0,v.useCallback)(async e=>{await(0,b.deleteDoc)((0,b.doc)(t.ui,E[e.source].collectionName,e.id))},[]);return(0,y.jsx)(be,{items:T,loading:p,refused:ee,onArchive:a?O:void 0,onDelete:a?j:void 0,opensUsers:o,formLook:f,more:u.more||d.more,loadingMore:u.waiting||d.waiting,onShowMore:re,onFind:ne,found:D})}exports.Inbox=X;
@@ -1,4 +1,4 @@
1
- import { $ as e } from "./TimeZoneField-Dv389mAe.js";
1
+ import { $ as e } from "./TimeZoneField-oIMwb5_X.js";
2
2
  import { jsx as t, jsxs as n } from "react/jsx-runtime";
3
3
  //#region src/components/Loader.tsx
4
4
  var r = {
@@ -1 +1 @@
1
- require(`./chunk-CiTBaPhY.cjs`);const e=require(`./TimeZoneField-zR8N2Fj0.cjs`);let t=require(`react/jsx-runtime`);var n={sm:`w-4 h-4 border-2`,md:`w-6 h-6 border-2`,lg:`w-9 h-9 border-[3px]`},r=({label:r,size:i=`md`,block:a=!1,className:o,...s})=>(0,t.jsxs)(`div`,{role:`status`,"aria-live":`polite`,className:e.$(`inline-flex items-center gap-3 text-foreground/60`,a&&`flex w-full flex-col justify-center py-20 text-center`,o),...s,children:[(0,t.jsx)(`span`,{"aria-hidden":`true`,className:e.$(`rounded-full border-accent border-t-transparent animate-spin motion-reduce:animate-none motion-reduce:border-t-accent/30`,n[i])}),r?(0,t.jsx)(`span`,{className:`text-[13px] font-medium`,children:r}):(0,t.jsx)(`span`,{className:`sr-only`,children:`Loading`})]});r.displayName=`Loader`;var i=({className:n,...r})=>(0,t.jsx)(`div`,{"aria-hidden":`true`,className:e.$(`rounded-2xl bg-foreground/[0.06] animate-pulse motion-reduce:animate-none`,n),...r});i.displayName=`Skeleton`,Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return r}});
1
+ require(`./chunk-CiTBaPhY.cjs`);const e=require(`./TimeZoneField-Ckn1pKAL.cjs`);let t=require(`react/jsx-runtime`);var n={sm:`w-4 h-4 border-2`,md:`w-6 h-6 border-2`,lg:`w-9 h-9 border-[3px]`},r=({label:r,size:i=`md`,block:a=!1,className:o,...s})=>(0,t.jsxs)(`div`,{role:`status`,"aria-live":`polite`,className:e.$(`inline-flex items-center gap-3 text-foreground/60`,a&&`flex w-full flex-col justify-center py-20 text-center`,o),...s,children:[(0,t.jsx)(`span`,{"aria-hidden":`true`,className:e.$(`rounded-full border-accent border-t-transparent animate-spin motion-reduce:animate-none motion-reduce:border-t-accent/30`,n[i])}),r?(0,t.jsx)(`span`,{className:`text-[13px] font-medium`,children:r}):(0,t.jsx)(`span`,{className:`sr-only`,children:`Loading`})]});r.displayName=`Loader`;var i=({className:n,...r})=>(0,t.jsx)(`div`,{"aria-hidden":`true`,className:e.$(`rounded-2xl bg-foreground/[0.06] animate-pulse motion-reduce:animate-none`,n),...r});i.displayName=`Skeleton`,Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return r}});
@@ -1 +1 @@
1
- const e=require(`./chunk-CiTBaPhY.cjs`),t=require(`./TimeZoneField-zR8N2Fj0.cjs`),n=require(`./Button-PyTaaoyu.cjs`);let r=require(`react`);r=e.a(r,1);let i=require(`react/jsx-runtime`);function a({children:e,className:a,variant:o=`secondary`}){let{loading:s,configured:c}=t.zn(),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(null);return s||!c?null:(0,i.jsxs)(`span`,{className:`inline-flex flex-col items-stretch gap-2`,children:[(0,i.jsx)(n.t,{variant:o,className:a,onClick:async()=>{if(l)return;u(!0),f(null);let e=await t.Nn();e&&(f(e),u(!1))},disabled:l,children:l?`Opening…`:e??`Manage plan`}),d&&(0,i.jsx)(`span`,{role:`alert`,className:`text-[13px] font-semibold text-red-400 leading-snug`,children:d})]})}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
1
+ const e=require(`./chunk-CiTBaPhY.cjs`),t=require(`./TimeZoneField-Ckn1pKAL.cjs`),n=require(`./Button-Ccy4wFZ1.cjs`);let r=require(`react`);r=e.a(r,1);let i=require(`react/jsx-runtime`);function a({children:e,className:a,variant:o=`secondary`}){let{loading:s,configured:c}=t.zn(),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(null);return s||!c?null:(0,i.jsxs)(`span`,{className:`inline-flex flex-col items-stretch gap-2`,children:[(0,i.jsx)(n.t,{variant:o,className:a,onClick:async()=>{if(l)return;u(!0),f(null);let e=await t.Nn();e&&(f(e),u(!1))},disabled:l,children:l?`Opening…`:e??`Manage plan`}),d&&(0,i.jsx)(`span`,{role:`alert`,className:`text-[13px] font-semibold text-red-400 leading-snug`,children:d})]})}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return a}});
@@ -1,5 +1,5 @@
1
- import { Nn as e, zn as t } from "./TimeZoneField-Dv389mAe.js";
2
- import { t as n } from "./Button-DSldWACF.js";
1
+ import { Nn as e, zn as t } from "./TimeZoneField-oIMwb5_X.js";
2
+ import { t as n } from "./Button-BGN6q7lY.js";
3
3
  import { useState as r } from "react";
4
4
  import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
5
  //#region src/components/ManagePlanButton.tsx
@@ -1,13 +1,13 @@
1
- import { t as e } from "./PageTitle-DFGW71q8.js";
2
- import { Ft as t, m as n, nt as r, s as i } from "./TimeZoneField-Dv389mAe.js";
3
- import { t as a } from "./DashboardNav-B0G943ux.js";
1
+ import { t as e } from "./PageTitle-DCoUQWw6.js";
2
+ import { Ft as t, m as n, nt as r, s as i } from "./TimeZoneField-oIMwb5_X.js";
3
+ import { t as a } from "./DashboardNav-CEd8gGPm.js";
4
4
  import { B as o, Zt as s, et as c, nn as l } from "./schedule-C13m_kiO.js";
5
- import { M as u, O as d, S as f, b as p, k as m, r as h } from "./scheduleData-BLCUm84s.js";
5
+ import { M as u, O as d, S as f, b as p, k as m, r as h } from "./scheduleData-DR6A-Q7Z.js";
6
6
  import { t as g } from "./calendar-clock-CrYtc9Ft.js";
7
- import { n as _, t as v } from "./paidSessions-Cr_93LGa.js";
7
+ import { n as _, t as v } from "./paidSessions-B8e5RHi4.js";
8
8
  import { t as y } from "./user-round-BXAihGcZ.js";
9
- import { r as b } from "./email-DxxovRtf.js";
10
- import { n as x } from "./SystemTabContent-C4azXKMs.js";
9
+ import { r as b } from "./email-PBHbXXgR.js";
10
+ import { n as x } from "./SystemTabContent-CMyT7mDN.js";
11
11
  import { useMemo as S, useState as C } from "react";
12
12
  import { jsx as w, jsxs as T } from "react/jsx-runtime";
13
13
  //#region src/pages/MyBookings.tsx
@@ -1 +1 @@
1
- require(`./chunk-CiTBaPhY.cjs`);const e=require(`./PageTitle-BWmE74WQ.cjs`),t=require(`./TimeZoneField-zR8N2Fj0.cjs`),n=require(`./DashboardNav-DOl9gJuu.cjs`),r=require(`./schedule-BAea6q8_.cjs`),i=require(`./scheduleData-BpkfnBjP.cjs`),a=require(`./calendar-clock-D59cGNoL.cjs`),o=require(`./paidSessions-QXv7SHeb.cjs`),s=require(`./user-round-DUV_u2Tg.cjs`),c=require(`./email-DD48BP42.cjs`),l=require(`./SystemTabContent-EegzTuLd.cjs`);let u=require(`react`),d=require(`react/jsx-runtime`);var f=new Set;function p(){let{user:p}=t.Ft(),m=r.et(),{loading:h,bookings:g,error:_}=i.b(p?.uid||``,p?.email||``),{docs:v}=i.S(),y=(0,u.useMemo)(()=>i.O(v),[v]),b=(0,u.useMemo)(()=>i.k(g,y),[g,y]),{checkouts:x}=o.t(b),[S]=(0,u.useState)(()=>Date.now()),C=(0,u.useMemo)(()=>b.map(e=>i.M(e,x[e.id],f,S)),[b,x,S]);return(0,d.jsxs)(`main`,{className:`flex-1 w-full max-w-7xl mx-auto p-4 pt-2 md:p-8 md:pt-4 z-10 flex flex-col min-h-screen`,children:[(0,d.jsxs)(t.nt.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},className:`mb-6`,children:[(0,d.jsx)(e.t,{children:`My bookings`}),(0,d.jsxs)(`div`,{className:`flex items-center gap-2 text-foreground/40 font-bold uppercase tracking-[0.2em] text-[11px]`,children:[(0,d.jsx)(`span`,{className:`w-8 h-[1px] bg-foreground/10`}),`/my-bookings`]})]}),(0,d.jsxs)(`div`,{className:`flex flex-col gap-6 flex-1 pb-16`,children:[(0,d.jsx)(n.t,{}),(0,d.jsx)(l.n,{tab:`mybookings`}),(0,d.jsx)(`div`,{className:`glass-panel border border-[var(--panel-border)] rounded-3xl p-4 sm:p-5 md:p-8 shadow-2xl relative bg-background flex flex-col fbos-tab-fill min-h-[600px]`,children:(0,d.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,d.jsxs)(`p`,{className:`text-[13px] font-medium text-foreground/60 leading-relaxed px-1`,children:[`Every meeting booked with your email address — including any you booked before you had an account. Shown in your time, `,r.nn(m),`.`]}),h?(0,d.jsx)(`p`,{className:`${t.s} px-1`,children:`Loading your bookings…`}):_?(0,d.jsx)(`p`,{className:`text-[12px] font-semibold text-red-500 px-1`,children:_}):C.length===0?(0,d.jsx)(t.m,{icon:a.t,title:`Nothing booked yet`,description:`Meetings you book appear here.`,children:(0,d.jsxs)(`p`,{className:`${t.s} px-1`,children:[`When you book a time through one of `,p?.displayName?`their`:`our`,` booking links, it lands here — and stays here afterwards, so you always have the record.`]})}):(0,d.jsx)(t.m,{icon:a.t,title:`Your calendar`,description:`Press a day to see what is on it. Everything you have booked is here, including the meetings that have been and the ones called off.`,children:(0,d.jsx)(o.n,{bookings:C,zone:m,side:`booker`,onCancel:async(e,t)=>{let n=await i.r(e.id,{ids:e.copyIds,reason:t,side:`booker`,by:e.name.trim()||String(p?.displayName||``)});if(!n){let n=r.Zt(e,m);c.r(`heads_up`,{title:`Booking cancelled`,summary:`${e.name.trim()||`Someone`} cancelled ${r.B(e)} — ${n.day}, ${n.time}`,details:{Who:e.name.trim(),Email:e.email,When:`${n.day}, ${n.time}`,Reason:t}}).catch(()=>{})}return n}})}),!h&&!_&&C.length>0&&(0,d.jsxs)(`p`,{className:`text-[11px] sm:text-[11.5px] text-foreground/40 font-medium leading-snug px-1 flex items-start gap-1.5`,children:[(0,d.jsx)(s.t,{className:`w-3.5 h-3.5 shrink-0 mt-[1px]`,"aria-hidden":!0}),(0,d.jsx)(`span`,{children:`Cancelling gives the time back straight away. To MOVE a meeting, cancel it and book another — or reply to its confirmation email.`})]})]})})]})]})}exports.MyBookings=p;
1
+ require(`./chunk-CiTBaPhY.cjs`);const e=require(`./PageTitle-DQkvCB11.cjs`),t=require(`./TimeZoneField-Ckn1pKAL.cjs`),n=require(`./DashboardNav-GgEUpyTa.cjs`),r=require(`./schedule-BAea6q8_.cjs`),i=require(`./scheduleData-BXjNXVHY.cjs`),a=require(`./calendar-clock-D59cGNoL.cjs`),o=require(`./paidSessions-D-zHC4oG.cjs`),s=require(`./user-round-DUV_u2Tg.cjs`),c=require(`./email-Sya6gl4F.cjs`),l=require(`./SystemTabContent-BWhRHoXx.cjs`);let u=require(`react`),d=require(`react/jsx-runtime`);var f=new Set;function p(){let{user:p}=t.Ft(),m=r.et(),{loading:h,bookings:g,error:_}=i.b(p?.uid||``,p?.email||``),{docs:v}=i.S(),y=(0,u.useMemo)(()=>i.O(v),[v]),b=(0,u.useMemo)(()=>i.k(g,y),[g,y]),{checkouts:x}=o.t(b),[S]=(0,u.useState)(()=>Date.now()),C=(0,u.useMemo)(()=>b.map(e=>i.M(e,x[e.id],f,S)),[b,x,S]);return(0,d.jsxs)(`main`,{className:`flex-1 w-full max-w-7xl mx-auto p-4 pt-2 md:p-8 md:pt-4 z-10 flex flex-col min-h-screen`,children:[(0,d.jsxs)(t.nt.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},className:`mb-6`,children:[(0,d.jsx)(e.t,{children:`My bookings`}),(0,d.jsxs)(`div`,{className:`flex items-center gap-2 text-foreground/40 font-bold uppercase tracking-[0.2em] text-[11px]`,children:[(0,d.jsx)(`span`,{className:`w-8 h-[1px] bg-foreground/10`}),`/my-bookings`]})]}),(0,d.jsxs)(`div`,{className:`flex flex-col gap-6 flex-1 pb-16`,children:[(0,d.jsx)(n.t,{}),(0,d.jsx)(l.n,{tab:`mybookings`}),(0,d.jsx)(`div`,{className:`glass-panel border border-[var(--panel-border)] rounded-3xl p-4 sm:p-5 md:p-8 shadow-2xl relative bg-background flex flex-col fbos-tab-fill min-h-[600px]`,children:(0,d.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,d.jsxs)(`p`,{className:`text-[13px] font-medium text-foreground/60 leading-relaxed px-1`,children:[`Every meeting booked with your email address — including any you booked before you had an account. Shown in your time, `,r.nn(m),`.`]}),h?(0,d.jsx)(`p`,{className:`${t.s} px-1`,children:`Loading your bookings…`}):_?(0,d.jsx)(`p`,{className:`text-[12px] font-semibold text-red-500 px-1`,children:_}):C.length===0?(0,d.jsx)(t.m,{icon:a.t,title:`Nothing booked yet`,description:`Meetings you book appear here.`,children:(0,d.jsxs)(`p`,{className:`${t.s} px-1`,children:[`When you book a time through one of `,p?.displayName?`their`:`our`,` booking links, it lands here — and stays here afterwards, so you always have the record.`]})}):(0,d.jsx)(t.m,{icon:a.t,title:`Your calendar`,description:`Press a day to see what is on it. Everything you have booked is here, including the meetings that have been and the ones called off.`,children:(0,d.jsx)(o.n,{bookings:C,zone:m,side:`booker`,onCancel:async(e,t)=>{let n=await i.r(e.id,{ids:e.copyIds,reason:t,side:`booker`,by:e.name.trim()||String(p?.displayName||``)});if(!n){let n=r.Zt(e,m);c.r(`heads_up`,{title:`Booking cancelled`,summary:`${e.name.trim()||`Someone`} cancelled ${r.B(e)} — ${n.day}, ${n.time}`,details:{Who:e.name.trim(),Email:e.email,When:`${n.day}, ${n.time}`,Reason:t}}).catch(()=>{})}return n}})}),!h&&!_&&C.length>0&&(0,d.jsxs)(`p`,{className:`text-[11px] sm:text-[11.5px] text-foreground/40 font-medium leading-snug px-1 flex items-start gap-1.5`,children:[(0,d.jsx)(s.t,{className:`w-3.5 h-3.5 shrink-0 mt-[1px]`,"aria-hidden":!0}),(0,d.jsx)(`span`,{children:`Cancelling gives the time back straight away. To MOVE a meeting, cancel it and book another — or reply to its confirmation email.`})]})]})})]})]})}exports.MyBookings=p;
@@ -1,5 +1,5 @@
1
1
  import { x as e } from "./mediaKind-BtaMpGy8.js";
2
- import { $ as t, A as n, At as r, Ft as i, O as a, V as o, f as s, i as c, kt as l, l as u, o as d, z as f } from "./TimeZoneField-Dv389mAe.js";
2
+ import { $ as t, A as n, At as r, Ft as i, O as a, V as o, f as s, i as c, kt as l, l as u, o as d, z as f } from "./TimeZoneField-oIMwb5_X.js";
3
3
  import { n as p, r as ee } from "./chevron-down--LwXEv9w.js";
4
4
  import { n as m, r as te, t as ne } from "./x-hax8aKt8.js";
5
5
  import { n as h, t as g } from "./iconNames-UjytS1Xp.js";
@@ -36,7 +36,7 @@ var E = {
36
36
  cardRadius: 1.5,
37
37
  modalRadius: 2.5
38
38
  }
39
- }, D = "2.0.8", O = {
39
+ }, D = "2.0.9", O = {
40
40
  name: "cloud-upload",
41
41
  size: 24,
42
42
  node: [
@@ -1,4 +1,4 @@
1
- const e=require(`./chunk-CiTBaPhY.cjs`),t=require(`./TimeZoneField-zR8N2Fj0.cjs`),n=require(`./chevron-down-lyDK1rfL.cjs`),r=require(`./x-Ci8c5p6T.cjs`),i=require(`./iconNames-DEdRA_U7.cjs`),a=require(`./mediaKind-ButDya5f.cjs`);let o=require(`react`);o=e.a(o,1);let s=require(`react/jsx-runtime`);var c={appName:`Your AI Firebase`,defaultTheme:`light`,showThemeToggle:!0,logoUrl:`https://firebasestorage.googleapis.com/v0/b/fir-os-47863.firebasestorage.app/o/pub_files%2F1776321238933_favicon_smaller.png?alt=media&token=efecb55c-2456-4cbe-a20a-b86db54a1e55`,faviconUrl:`https://firebasestorage.googleapis.com/v0/b/fir-os-47863.firebasestorage.app/o/pub_files%2F1776321238933_favicon_smaller.png?alt=media&token=efecb55c-2456-4cbe-a20a-b86db54a1e55`,fonts:{},colors:{dark:{background:`#07070f`,backgroundSecondary:`#0a0a18`,foreground:`#f0eeff`,accent:`#a78bfa`,buttonText:`#ffffff`},light:{background:`#fcfaff`,backgroundSecondary:`#f7f3ff`,foreground:`#1e1b4b`,accent:`#7c3aed`,buttonText:`#ffffff`}},cornerRounding:`default`,cornerRadii:{buttonRadius:.75,inputRadius:.75,cardRadius:1.5,modalRadius:2.5}},l=`2.0.8`,u={name:`cloud-upload`,size:24,node:[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]],aliases:[`upload-cloud`]};u.node;var d=n.n(u),f={name:`copy`,size:24,node:[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]};f.node;var p=n.n(f),m={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]],aliases:[`layers-3`]};m.node;var h=n.n(m),g={name:`mail`,size:24,node:[[`path`,{d:`m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7`,key:`132q7q`}],[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}]]};g.node;var _=n.n(g),v=e=>e.toLowerCase().replace(/[^a-z0-9]/g,``),y=null,b=new Map,x=()=>{if(y)return y;y=new Map;for(let e of i.n.split(`
1
+ const e=require(`./chunk-CiTBaPhY.cjs`),t=require(`./TimeZoneField-Ckn1pKAL.cjs`),n=require(`./chevron-down-lyDK1rfL.cjs`),r=require(`./x-Ci8c5p6T.cjs`),i=require(`./iconNames-DEdRA_U7.cjs`),a=require(`./mediaKind-ButDya5f.cjs`);let o=require(`react`);o=e.a(o,1);let s=require(`react/jsx-runtime`);var c={appName:`Your AI Firebase`,defaultTheme:`light`,showThemeToggle:!0,logoUrl:`https://firebasestorage.googleapis.com/v0/b/fir-os-47863.firebasestorage.app/o/pub_files%2F1776321238933_favicon_smaller.png?alt=media&token=efecb55c-2456-4cbe-a20a-b86db54a1e55`,faviconUrl:`https://firebasestorage.googleapis.com/v0/b/fir-os-47863.firebasestorage.app/o/pub_files%2F1776321238933_favicon_smaller.png?alt=media&token=efecb55c-2456-4cbe-a20a-b86db54a1e55`,fonts:{},colors:{dark:{background:`#07070f`,backgroundSecondary:`#0a0a18`,foreground:`#f0eeff`,accent:`#a78bfa`,buttonText:`#ffffff`},light:{background:`#fcfaff`,backgroundSecondary:`#f7f3ff`,foreground:`#1e1b4b`,accent:`#7c3aed`,buttonText:`#ffffff`}},cornerRounding:`default`,cornerRadii:{buttonRadius:.75,inputRadius:.75,cardRadius:1.5,modalRadius:2.5}},l=`2.0.9`,u={name:`cloud-upload`,size:24,node:[[`path`,{d:`M12 13v8`,key:`1l5pq0`}],[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`m8 17 4-4 4 4`,key:`1quai1`}]],aliases:[`upload-cloud`]};u.node;var d=n.n(u),f={name:`copy`,size:24,node:[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]};f.node;var p=n.n(f),m={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]],aliases:[`layers-3`]};m.node;var h=n.n(m),g={name:`mail`,size:24,node:[[`path`,{d:`m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7`,key:`132q7q`}],[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}]]};g.node;var _=n.n(g),v=e=>e.toLowerCase().replace(/[^a-z0-9]/g,``),y=null,b=new Map,x=()=>{if(y)return y;y=new Map;for(let e of i.n.split(`
2
2
  `))e&&(b.set(e,b.size),y.set(v(e),e));for(let e of i.t.split(`
3
3
  `)){let[t,n]=e.split(` `);t&&n&&!y.has(v(t))&&y.set(v(t),n)}return y},S=e=>{let t=v(String(e??``));if(!t)return``;let n=x();return n.get(t)||n.get(t.replace(/^lucide/,``).replace(/icon$/,``))||``},C=new Map,w=new Set,T=e=>(w.add(e),()=>{w.delete(e)}),E=null,D=()=>(E??=Promise.resolve().then(()=>require(`./iconLoaders-BDz89ZHs.cjs`)).then(e=>e.iconLoaders).catch(e=>{throw E=null,e}),E),O=new Set,k=e=>{if(C.has(e)||O.has(e))return;O.add(e),x();let t=b.get(e);D().then(e=>t===void 0?void 0:e[t]?.()).then(t=>{!t||t.name!==e||!Array.isArray(t.node)||(C.set(e,t),w.forEach(e=>e()))}).catch(()=>{}).finally(()=>{O.delete(e)})},A=!1,ee=()=>{if(A||E||typeof window>`u`)return;A=!0;let e=()=>{D().catch(()=>{A=!1})};typeof window.requestIdleCallback==`function`?window.requestIdleCallback(e,{timeout:4e3}):window.setTimeout(e,1500)},j=e=>{for(let t of e){let e=S(t);e&&!L(e)&&k(e)}},te=`firebase-os:icons`,M=64,ne=new Set([`path`,`circle`,`rect`,`line`,`ellipse`,`polyline`,`polygon`]),N=(e,t)=>{let n=t;return!!n&&n.name===e&&Array.isArray(n.node)&&n.node.every(e=>Array.isArray(e)&&ne.has(e[0])&&e.length===2&&e[1]!==null&&typeof e[1]==`object`&&Object.entries(e[1]).every(([e,t])=>!/^on/i.test(e)&&e!==`dangerouslySetInnerHTML`&&(typeof t==`string`||typeof t==`number`)))},P=null,F=()=>{if(P)return P;P=[];try{let e=JSON.parse(localStorage.getItem(`firebase-os:icons`)||`{}`);for(let[t,n]of Object.entries(e??{}))!N(t,n)||C.has(t)||(C.set(t,n),P.push(t))}catch{}return P},I=null,re=e=>{let t=F();t.includes(e)||(t.push(e),t.length>M&&t.splice(0,t.length-M),!I&&(I=setTimeout(()=>{I=null;try{let e={};for(let n of t){let t=C.get(n);t&&(e[n]=t)}localStorage.setItem(te,JSON.stringify(e))}catch{}},500)))},L=e=>(F(),C.get(e)),ie=(e,t)=>{let r={name:e,node:[]},i=(0,o.forwardRef)((i,a)=>{let c=(0,o.useSyncExternalStore)(T,()=>L(e),()=>L(e));return(0,o.useEffect)(()=>{c?t&&re(e):k(e)},[c]),(0,s.jsx)(n.r,{...i,ref:a,icon:c||r})});return i.displayName=`Icon(${e})`,i},ae=new Map,oe=new Map,R=new WeakSet,se=e=>(typeof e==`object`||typeof e==`function`)&&e!==null&&R.has(e),z=(e,{remember:t=!0}={})=>{let n=S(e);if(!n)return null;let r=t?ae:oe,i=r.get(n);return i||(i=ie(n,t),R.add(i),r.set(n,i)),i},ce=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).replace(/([A-Z])([A-Z][a-z])/g,`$1-$2`).toLowerCase(),B=e=>{let t=e.replace(/-/g,` `);return t.charAt(0).toUpperCase()+t.slice(1)},le=i.n.split(`
4
4
  `).filter(Boolean),V=`layers.house.layout-dashboard.list.table.kanban.calendar.clock.file-text.files.folder.hard-drive.upload.download.paperclip.book-open.notebook-pen.users.user.user-plus.contact.building.briefcase.handshake.mail.message-square.message-circle.send.inbox.bell.megaphone.phone.shopping-cart.package.truck.receipt.credit-card.banknote.wallet.tag.percent.chart-bar.chart-line.chart-pie.trending-up.target.gauge.activity.settings.sliders-horizontal.wrench.shield.lock.key.eye.search.star.heart.bookmark.flag.pin.map-pin.globe.circle-check.circle-alert.info.circle-question-mark.life-buoy.sparkles.zap.rocket.camera.image.video.music.mic.palette.pen-tool.scissors.stethoscope.graduation-cap.utensils.plane.car.dumbbell.leaf.sun.moon`.split(`.`),ue={money:[`banknote`,`wallet`,`credit-card`,`coins`,`dollar-sign`,`receipt`],cash:[`banknote`,`coins`,`wallet`],payment:[`credit-card`,`banknote`,`receipt`],invoice:[`receipt`,`file-text`],price:[`tag`,`dollar-sign`,`receipt`],people:[`users`,`user`,`contact`],customer:[`users`,`contact`,`user-round`],client:[`users`,`contact`,`briefcase`],team:[`users`,`users-round`],staff:[`users`,`id-card`],chat:[`message-circle`,`message-square`,`messages-square`],message:[`message-circle`,`mail`,`send`],email:[`mail`,`send`,`inbox`],task:[`list-checks`,`square-check`,`clipboard-check`],todo:[`list-checks`,`square-check`],project:[`kanban`,`folder-kanban`,`briefcase`],board:[`kanban`,`layout-dashboard`],photo:[`image`,`camera`,`images`],picture:[`image`,`images`],document:[`file-text`,`files`,`file`],doc:[`file-text`,`file`],shop:[`shopping-cart`,`store`,`shopping-bag`],store:[`store`,`shopping-bag`,`shopping-cart`],order:[`shopping-cart`,`package`,`receipt`],delivery:[`truck`,`package`],home:[`house`,`house-heart`],booking:[`calendar-check`,`calendar`,`clock`],appointment:[`calendar-clock`,`calendar`,`clock`],schedule:[`calendar-days`,`calendar`,`clock`],event:[`calendar`,`party-popper`,`ticket`],report:[`chart-bar`,`chart-line`,`file-chart-column`],stats:[`chart-bar`,`chart-line`,`chart-pie`],analytics:[`chart-line`,`chart-bar`,`activity`],help:[`circle-question-mark`,`life-buoy`,`info`],support:[`life-buoy`,`headset`,`circle-question-mark`],idea:[`lightbulb`,`sparkles`],health:[`heart-pulse`,`stethoscope`,`activity`],food:[`utensils`,`chef-hat`,`pizza`],travel:[`plane`,`map`,`luggage`],location:[`map-pin`,`map`,`globe`],address:[`map-pin`,`house`],security:[`shield`,`lock`,`key`],password:[`key`,`lock`],settings:[`settings`,`sliders-horizontal`,`wrench`],file:[`file`,`file-text`,`files`,`folder`],upload:[`upload`,`cloud-upload`],video:[`video`,`film`,`clapperboard`],school:[`graduation-cap`,`book-open`,`school`],course:[`graduation-cap`,`book-open`],gym:[`dumbbell`,`activity`],garden:[`leaf`,`flower`,`sprout`],car:[`car`,`car-front`],pet:[`paw-print`,`dog`,`cat`],note:[`notebook-pen`,`sticky-note`,`pencil`],write:[`pencil`,`pen-tool`,`notebook-pen`],time:[`clock`,`timer`,`hourglass`],star:[`star`,`sparkles`],favourite:[`star`,`heart`,`bookmark`],favorite:[`star`,`heart`,`bookmark`],album:[`images`,`image`,`camera`],gallery:[`images`,`image`,`camera`],profile:[`circle-user`,`user-round`,`id-card`],account:[`circle-user`,`user-round`,`id-card`],member:[`users`,`user-round`,`id-card`],membership:[`id-card`,`users`,`award`],subscription:[`credit-card`,`repeat`,`wallet`],plan:[`clipboard-list`,`layout-list`,`credit-card`],ticket:[`ticket`,`tickets`,`inbox`],request:[`inbox`,`send`,`file-text`],progress:[`trending-up`,`gauge`,`activity`],result:[`chart-bar`,`clipboard-check`,`trophy`],score:[`trophy`,`target`,`star`],library:[`library`,`book-open`,`folder`],lesson:[`graduation-cap`,`book-open`],session:[`calendar-clock`,`clock`,`video`],service:[`wrench`,`handshake`,`briefcase`],statement:[`file-text`,`receipt`,`banknote`],saved:[`bookmark`,`heart`,`star`],list:[`list`,`list-checks`,`layout-list`],detail:[`file-text`,`info`],referral:[`user-plus`,`share`,`gift`],reward:[`gift`,`trophy`,`award`],badge:[`award`,`badge`,`medal`],certificate:[`award`,`file-badge`,`scroll`],download:[`download`,`cloud-download`],history:[`rotate-ccw-clock`,`clock`,`rotate-ccw`],feedback:[`message-square`,`star`,`thumbs-up`],review:[`star`,`message-square`],wishlist:[`heart`,`bookmark`,`star`],cart:[`shopping-cart`,`shopping-bag`],credit:[`coins`,`wallet`,`credit-card`],dashboard:[`layout-dashboard`,`gauge`],welcome:[`hand`,`house`,`sparkles`],onboarding:[`rocket`,`list-checks`,`user-plus`],benefit:[`gift`,`sparkles`,`award`],perk:[`gift`,`sparkles`],resource:[`folder`,`book-open`,`files`],guide:[`book-open`,`compass`,`map`],faq:[`circle-question-mark`,`message-circle`],contract:[`file-pen`,`file-text`,`scroll`],agreement:[`handshake`,`file-pen`],quote:[`file-text`,`receipt`,`tag`],enquiry:[`message-square`,`mail`],inquiry:[`message-square`,`mail`],application:[`file-text`,`clipboard-list`,`send`],form:[`clipboard-list`,`file-text`],submission:[`inbox`,`send`,`file-text`],record:[`folder`,`file-text`,`database`],log:[`rotate-ccw-clock`,`list`,`file-text`],product:[`package`,`tag`,`shopping-bag`],inventory:[`package`,`boxes`,`warehouse`],stock:[`package`,`boxes`,`warehouse`],catalogue:[`book-open`,`package`,`layout-grid`],catalog:[`book-open`,`package`,`layout-grid`],item:[`package`,`tag`,`list`],supplier:[`truck`,`factory`,`handshake`],vendor:[`store`,`truck`,`handshake`],checkout:[`shopping-cart`,`credit-card`,`receipt`],shipping:[`truck`,`package`,`map-pin`],sale:[`trending-up`,`tag`,`banknote`],pricing:[`tag`,`banknote`,`receipt`],deal:[`handshake`,`tag`,`trending-up`],lead:[`user-plus`,`target`,`trending-up`],discount:[`percent`,`badge-percent`,`tag`],coupon:[`ticket-percent`,`tag`,`percent`],return:[`rotate-ccw`,`package`,`receipt`],refund:[`rotate-ccw`,`banknote`,`receipt`],warranty:[`shield-check`,`file-badge`,`wrench`],licence:[`file-badge`,`award`,`key`],license:[`file-badge`,`award`,`key`],insurance:[`shield`,`umbrella`,`file-text`],job:[`briefcase`,`hammer`,`clipboard-list`],shift:[`clock`,`calendar-clock`,`users`],rota:[`calendar-days`,`clock`,`users`],timesheet:[`clock`,`calendar-check`,`table`],expense:[`receipt`,`banknote`,`wallet`],budget:[`wallet`,`chart-pie`,`banknote`],policy:[`file-text`,`shield`,`book-open`],handbook:[`book-open`,`file-text`,`scroll`],training:[`graduation-cap`,`book-open`,`dumbbell`],candidate:[`user-search`,`user-plus`,`file-text`],applicant:[`user-search`,`user-plus`,`file-text`],volunteer:[`hand-heart`,`users`,`heart`],partner:[`handshake`,`users`,`building`],sponsor:[`handshake`,`badge-dollar-sign`,`award`],donation:[`heart-handshake`,`gift`,`banknote`],listing:[`list`,`house`,`tag`],property:[`house`,`building`,`key`],room:[`door-open`,`bed`,`layout-grid`],venue:[`building`,`map-pin`,`house`],vehicle:[`car`,`truck`,`car-front`],equipment:[`wrench`,`hard-hat`,`package`],tool:[`wrench`,`hammer`,`settings`],maintenance:[`wrench`,`hard-hat`,`settings`],asset:[`package`,`hard-drive`,`boxes`],issue:[`circle-alert`,`bug`,`triangle-alert`],complaint:[`message-square-warning`,`triangle-alert`,`face-slightly-frowning`],case:[`folder`,`briefcase`,`file-text`],testimonial:[`quote`,`star`,`message-square`],patient:[`stethoscope`,`user-round`,`heart-pulse`],student:[`graduation-cap`,`users`,`backpack`],class:[`graduation-cap`,`users`,`presentation`],prescription:[`pill`,`file-text`,`stethoscope`],measurement:[`ruler`,`scale`,`activity`],habit:[`repeat`,`circle-check`,`calendar-check`],workout:[`dumbbell`,`activity`,`heart-pulse`],meal:[`utensils`,`salad`,`chef-hat`],recipe:[`chef-hat`,`utensils`,`book-open`],announcement:[`megaphone`,`bell`,`newspaper`],newsletter:[`mail`,`newspaper`,`send`],campaign:[`megaphone`,`target`,`chart-line`],advert:[`megaphone`,`monitor-play`,`target`],ads:[`megaphone`,`monitor-play`,`target`],blog:[`rss`,`newspaper`,`pen-line`],editor:[`pen-line`,`file-pen`,`pencil`],writer:[`pen-line`,`notebook-pen`,`feather`],author:[`pen-line`,`book-open`,`feather`],manager:[`clipboard-list`,`briefcase`,`user-cog`],owner:[`crown`,`key`,`house`],founder:[`crown`,`rocket`,`star`],director:[`crown`,`briefcase`,`presentation`],moderator:[`shield-check`,`gavel`,`flag`],reviewer:[`star`,`clipboard-check`,`message-square`],approver:[`clipboard-check`,`stamp`,`circle-check`],agent:[`headset`,`briefcase`,`handshake`],broker:[`handshake`,`briefcase`,`chart-line`],consultant:[`briefcase`,`lightbulb`,`handshake`],contractor:[`hard-hat`,`hammer`,`wrench`],freelancer:[`laptop`,`pen-tool`,`briefcase`],driver:[`truck`,`car-front`,`map-pin`],courier:[`package`,`truck`,`bike`],seller:[`store`,`tag`,`handshake`],buyer:[`shopping-bag`,`shopping-cart`,`wallet`],subscriber:[`bell`,`repeat`,`credit-card`],affiliate:[`share`,`link`,`percent`],guest:[`door-open`,`bed`,`hand`],host:[`door-open`,`hand`,`calendar-check`],visitor:[`door-open`,`footprints`,`eye`],coach:[`megaphone`,`dumbbell`,`clipboard-check`],trainer:[`dumbbell`,`graduation-cap`,`activity`],tutor:[`graduation-cap`,`book-open`,`presentation`],teacher:[`presentation`,`graduation-cap`,`book-open`],mentor:[`graduation-cap`,`handshake`,`lightbulb`],parent:[`baby`,`house`,`heart`],nurse:[`stethoscope`,`heart-pulse`,`syringe`],doctor:[`stethoscope`,`heart-pulse`,`pill`],therapist:[`brain`,`heart-pulse`,`stethoscope`],artist:[`palette`,`paintbrush`,`pen-tool`],designer:[`palette`,`pen-tool`,`ruler`],developer:[`code`,`terminal`,`laptop`],photographer:[`camera`,`image`,`aperture`],investor:[`trending-up`,`banknote`,`chart-line`],donor:[`heart-handshake`,`gift`,`banknote`],vip:[`crown`,`gem`,`star`],guard:[`shield`,`lock`,`eye`],cleaner:[`sparkles`,`spray-can`,`brush`],chef:[`chef-hat`,`utensils`,`salad`],waiter:[`utensils`,`concierge-bell`,`coffee`],stylist:[`scissors`,`palette`,`sparkles`],therapy:[`heart-pulse`,`brain`,`hand-heart`],premium:[`crown`,`gem`,`star`],gold:[`crown`,`medal`,`star`],silver:[`medal`,`award`,`star`],bronze:[`medal`,`award`],platinum:[`gem`,`crown`,`award`],elite:[`crown`,`gem`,`trophy`],lifetime:[`infinity`,`crown`,`calendar-heart`],starter:[`rocket`,`sprout`,`flag`],basic:[`circle`,`square`,`layers`]},H=new Set([`my`,`our`,`your`,`their`,`the`,`a`,`an`,`all`,`new`,`page`,`pages`,`of`,`and`,`for`,`to`,`in`,`on`,`at`,`is`,`it`,`this`,`that`]),U=new Set([`item`,`items`,`list`,`lists`,`record`,`records`,`thing`,`things`]),de=e=>{let t=[e];return e.endsWith(`ies`)&&e.length>4&&t.push(`${e.slice(0,-3)}y`),e.endsWith(`es`)&&e.length>3&&t.push(e.slice(0,-2)),e.endsWith(`s`)&&t.push(e.slice(0,-1)),t},fe=(e,t)=>{if(Math.abs(e.length-t.length)>2)return 3;let n=Array.from({length:t.length+1},(e,t)=>t);for(let r=1;r<=e.length;r++){let i=n[0];n[0]=r;for(let a=1;a<=t.length;a++){let o=n[a];n[a]=Math.min(n[a]+1,n[a-1]+1,i+(e[r-1]===t[a-1]?0:1)),i=o}}return n[t.length]},pe=(e,t)=>{let n=0;for(let r of t)r===e[n]&&n++;return n===e.length};function W(e,t=96,n=le,r=!0){let i=e.trim().toLowerCase().replace(/\s+/g,`-`).replace(/[^a-z0-9-]/g,``);if(!i)return[];let a=i.split(`-`).filter(Boolean),o=new Set(n),s=new Map,c=(e,t)=>{o.has(e)&&s.set(e,Math.max(s.get(e)||0,t))};for(let e of n){let t=e.split(`-`);if(e===i){c(e,100);continue}if(e.startsWith(i)){c(e,90);continue}if(t.some(e=>e===i)){c(e,85);continue}if(t.some(e=>e.startsWith(i))){c(e,75);continue}if(e.includes(i)){c(e,65);continue}if(a.length>1&&a.every(e=>t.some(t=>t.startsWith(e)))){c(e,60);continue}}let l=e=>{let t=U.has(e)?80:95;for(let n of de(e))(ue[n]||[]).forEach((e,n)=>c(e,t-n))};for(let e of a)l(e);if(s.size===0&&a.length>1){let e=[...a].reverse().filter(e=>!H.has(e)&&e.length>=3);for(let i of[...e.filter(e=>!U.has(e)),...e.filter(e=>U.has(e))]){let e=W(i,t,n,r);if(e.length)return e}}if(r&&s.size===0&&i.length>=3)for(let e of n)e.split(`-`).some(e=>fe(i,e)<=(i.length>5?2:1))?c(e,40):i.length>=4&&pe(i,e.replace(/-/g,``))&&c(e,20);let u=e=>{let t=V.indexOf(e);return t===-1?V.length:t};return Array.from(s.entries()).sort((e,t)=>t[1]-e[1]||u(e[0])-u(t[0])||e[0].length-t[0].length||e[0].localeCompare(t[0])).slice(0,t).map(([e])=>e)}function me(e,{remember:t=!0}={}){return z(e,{remember:t})||h}function G({name:e,className:t,remember:n=!0}){return(0,o.createElement)(me(e,{remember:n}),{className:t})}function he({label:e=`Icon`,hint:n=`Shown next to the name in the menu.`,value:i,onChange:a}){let[c,l]=(0,o.useState)(``),u=(i||``).trim();(0,o.useEffect)(()=>{j(V)},[]);let d=(0,o.useMemo)(()=>{let e=W(c);return j(e),e},[c]),f=c.trim().length>0;return(0,s.jsx)(t.i,{label:e,hint:n,children:(0,s.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,s.jsxs)(`div`,{className:t.l,children:[u&&!f?(0,s.jsxs)(`span`,{className:`inline-flex items-center gap-2 mr-2.5 shrink-0 min-w-0 text-accent`,children:[(0,s.jsx)(`span`,{className:`w-7 h-7 -ml-1 rounded-lg bg-accent/[0.08] border border-accent/25 flex items-center justify-center shrink-0`,children:(0,s.jsx)(G,{name:u,className:`w-4 h-4`})}),(0,s.jsx)(`span`,{className:`text-[13px] font-semibold truncate`,children:B(ce(u))}),(0,s.jsx)(t.At,{className:`w-3.5 h-3.5 shrink-0`})]}):(0,s.jsx)(r.n,{className:`w-4 h-4 mr-2.5 text-foreground/30 shrink-0`}),(0,s.jsx)(`input`,{type:`text`,value:c,onChange:e=>l(e.target.value),placeholder:u?`Type a word to change it`:`Type a word, e.g. calendar`,"aria-label":`Search icons`,className:`${t.f} no-glow`})]}),f&&(0,s.jsx)(`div`,{className:`rounded-[var(--input-radius,0.75rem)] border border-[var(--panel-border)] bg-[var(--panel-bg)] p-2 max-h-56 overflow-y-auto`,children:d.length>0?(0,s.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:d.map(e=>{let t=S(u)===e;return(0,s.jsx)(`button`,{type:`button`,title:B(e),"aria-label":B(e),"aria-pressed":t,onClick:()=>{a(e),l(``)},className:`w-9 h-9 rounded-lg flex items-center justify-center transition-all cursor-pointer ${t?`bg-accent text-[var(--button-fg,#fff)] ring-2 ring-accent/40`:`text-foreground/60 hover:text-foreground hover:bg-foreground/[0.06]`}`,children:(0,s.jsx)(G,{name:e,className:`w-4 h-4`,remember:!1})},e)})}):(0,s.jsx)(`span`,{className:`block px-2 py-2 text-[12px] font-medium text-foreground/45`,children:`Nothing close to that. Try a simpler word, like calendar or people.`})})]})})}function ge({name:e,glyph:t,label:n,open:r=!1,onClick:i,tone:a=`quiet`}){let c=e||!t?(0,s.jsx)(G,{name:e,className:`w-4 h-4`}):(0,o.createElement)(t,{className:`w-4 h-4`}),l=a===`accent`?`text-accent`:`text-foreground/60`;return i?(0,s.jsx)(`button`,{type:`button`,title:n,"aria-label":n,"aria-expanded":r,onClick:i,className:`w-8 h-8 shrink-0 rounded-xl border flex items-center justify-center transition-all cursor-pointer ${r?`border-accent/50 bg-accent/[0.08] text-accent`:`border-[var(--panel-border)] bg-foreground/[0.03] ${l} hover:border-accent/40 hover:text-accent`}`,children:c}):(0,s.jsx)(`span`,{"aria-hidden":`true`,className:`w-8 h-8 shrink-0 rounded-xl border border-transparent flex items-center justify-center ${a===`accent`?`text-accent/70`:`text-foreground/45`}`,children:c})}function _e({label:e,hint:n,value:i,onPick:a,resetLabel:o,resetTitle:c,onReset:l}){return(0,s.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,s.jsx)(he,{label:e,hint:n,value:i,onChange:a}),l&&o&&(0,s.jsx)(t.o,{icon:r.t,compact:!0,title:c||o,onClick:l,children:o})]})}var ve=/(<[A-Z][A-Za-z0-9]*(?:\s[^<>]*)?\/?>|src\/[A-Za-z0-9_./-]*[A-Za-z0-9_-]|'[A-Za-z0-9_@./-]+')/g,ye=/(https?:\/\/[^\s]+)/g,K=e=>e.split(ye).flatMap((e,t)=>t%2==1?[{text:e,kind:`value`}]:e.split(ve).map((e,t)=>({text:e,kind:t%2==1?`code`:void 0}))).filter(e=>e.text),be=/exactly: |Here is (?:what|how) [^:]*: |It should ask for: |Where the form belongs on the page: |a button that says /,xe=e=>{let t=be.exec(e);if(!t)return K(e);let n=t.index+t[0].length,r=e.slice(0,n),i=e.slice(n),a=i.indexOf(` — `);return[...K(r),{text:a===-1?i:i.slice(0,a),kind:`value`},...K(a===-1?``:i.slice(a))]},Se=`text-accent font-semibold bg-accent/[0.08] rounded-[4px] px-1 -mx-[1px] [overflow-wrap:anywhere]`,Ce=`font-mono text-[0.92em] text-foreground/75 bg-foreground/[0.055] border border-[var(--panel-border)]/60 rounded-[4px] px-1 py-[1px] [overflow-wrap:anywhere]`;function q({text:e}){return(0,s.jsx)(s.Fragment,{children:xe(e).map((e,t)=>e.kind?(0,s.jsx)(`span`,{className:e.kind===`value`?Se:Ce,children:e.text},t):(0,s.jsx)(o.default.Fragment,{children:e.text},t))})}function we({title:e=`Ask your assistant`,description:n,prompt:i,compact:a=!1,locked:c=!1,busy:l=!1,onCopied:u}){let[d,f]=(0,o.useState)(!1),m=i.includes(`
@@ -0,0 +1,3 @@
1
+ import "./TimeZoneField-oIMwb5_X.js";
2
+ import { gt as e } from "./PagesAdmin-DzLJWKBJ.js";
3
+ export { e as PagesAdmin };
@@ -1,20 +1,20 @@
1
1
  import { a as e, c as t, n, o as r, r as i, s as a, t as o, u as s } from "./mediaKind-BtaMpGy8.js";
2
- import { _ as c, l, o as u, s as d, t as f, u as p, v as m } from "./PageTitle-DFGW71q8.js";
3
- import { $n as h, A as g, At as _, C as v, Cn as y, Dn as b, Dr as x, Dt as S, Er as C, F as w, Fr as T, Ft as E, G as ee, H as D, J as te, K as O, Kr as k, M as A, Mr as j, Mt as ne, Nr as M, O as N, Or as re, Qn as ie, Rr as ae, S as oe, Sr as se, Tr as ce, Vr as le, X as ue, Xn as de, Z as fe, Zn as P, Zr as pe, _r as F, ar as I, b as me, br as he, c as ge, cr as _e, d as ve, er as ye, f as be, fi as xe, fr as Se, g as Ce, hr as we, i as L, ii as Te, jr as Ee, jt as De, kr as Oe, l as R, li as ke, lr as Ae, m as je, mr as Me, nr as Ne, nt as Pe, o as z, or as Fe, p as Ie, q as Le, qr as B, rr as Re, rt as ze, s as Be, tr as Ve, ui as V, ur as He, vr as Ue, w as We, wr as H, x as Ge, xr as Ke, y as qe, z as Je, zn as Ye } from "./TimeZoneField-Dv389mAe.js";
4
- import { N as Xe, a as Ze, b as Qe, i as $e, l as et, n as tt, t as nt, u as rt, v as it, x as at, y as ot } from "./DashboardNav-B0G943ux.js";
5
- import { a as st, s as ct } from "./Trouble-qjWYeKzC.js";
2
+ import { _ as c, l, o as u, s as d, t as f, u as p, v as m } from "./PageTitle-DCoUQWw6.js";
3
+ import { $n as h, A as g, At as _, C as v, Cn as y, Dn as b, Dr as x, Dt as S, Er as C, F as w, Fr as T, Ft as E, G as ee, H as D, J as te, K as O, Kr as k, M as A, Mr as j, Mt as ne, Nr as M, O as N, Or as re, Qn as ie, Rr as ae, S as oe, Sr as se, Tr as ce, Vr as le, X as ue, Xn as de, Z as fe, Zn as P, Zr as pe, _r as F, ar as I, b as me, br as he, c as ge, cr as _e, d as ve, er as ye, f as be, fi as xe, fr as Se, g as Ce, hr as we, i as L, ii as Te, jr as Ee, jt as De, kr as Oe, l as R, li as ke, lr as Ae, m as je, mr as Me, nr as Ne, nt as Pe, o as z, or as Fe, p as Ie, q as Le, qr as B, rr as Re, rt as ze, s as Be, tr as Ve, ui as V, ur as He, vr as Ue, w as We, wr as H, x as Ge, xr as Ke, y as qe, z as Je, zn as Ye } from "./TimeZoneField-oIMwb5_X.js";
4
+ import { N as Xe, a as Ze, b as Qe, i as $e, l as et, n as tt, t as nt, u as rt, v as it, x as at, y as ot } from "./DashboardNav-CEd8gGPm.js";
5
+ import { a as st, s as ct } from "./Trouble-CtFq7tjk.js";
6
6
  import { $t as lt, Ct as ut, Dn as U, En as dt, Gn as W, Hn as ft, J as pt, Mn as G, Nn as mt, Ot as ht, Pn as K, Rn as gt, U as _t, V as vt, Vn as yt, Vt as bt, Wn as xt, _n as St, bt as Ct, en as wt, gn as Tt, jn as Et, kt as Dt, lt as Ot, mn as kt, pn as At, tn as jt, vn as Mt, vt as Nt, xn as Pt, yt as Ft } from "./schedule-C13m_kiO.js";
7
7
  import { n as It, t as Lt } from "./chevron-down--LwXEv9w.js";
8
8
  import { t as Rt } from "./arrow-right-C6OLl8Zh.js";
9
9
  import { t as zt } from "./boxes-DcQnzrdY.js";
10
- import { y as Bt } from "./scheduleData-BLCUm84s.js";
11
- import { t as Vt } from "./SupportBar-528kXe-Z.js";
12
- import { i as Ht, r as Ut, t as Wt } from "./FileViewerPopup-Dnl3td2o.js";
10
+ import { y as Bt } from "./scheduleData-DR6A-Q7Z.js";
11
+ import { t as Vt } from "./SupportBar-DI_XbEsG.js";
12
+ import { i as Ht, r as Ut, t as Wt } from "./FileViewerPopup-gqhRT22v.js";
13
13
  import { t as Gt } from "./eye-off-CgKkn1b3.js";
14
14
  import { t as Kt } from "./eye-DBR-sZWU.js";
15
- import { n as qt, r as Jt } from "./VideoPlayer-DB0oz6lM.js";
16
- import { t as Yt } from "./FormNote-BWGLs9lx.js";
17
- import { _ as Xt, a as Zt, c as Qt, d as $t, h as en, n as tn, r as nn, t as rn, u as an } from "./arrivalRoads-BZk39p8Z.js";
15
+ import { n as qt, r as Jt } from "./VideoPlayer-QI1Jc3bS.js";
16
+ import { t as Yt } from "./FormNote-DJ9HBokL.js";
17
+ import { _ as Xt, a as Zt, c as Qt, d as $t, h as en, n as tn, r as nn, t as rn, u as an } from "./arrivalRoads-CGXm9Ntm.js";
18
18
  import { t as on } from "./link-2-CtDUJiNU.js";
19
19
  import { n as sn, r as cn, t as ln } from "./x-hax8aKt8.js";
20
20
  import { t as un } from "./lock-CeHdSreq.js";
@@ -22,22 +22,22 @@ import { t as dn } from "./pencil-CLQlJdep.js";
22
22
  import { t as fn } from "./plus-BKrt0Qx5.js";
23
23
  import { t as pn } from "./trash-6Wj66gJi.js";
24
24
  import { t as mn } from "./user-round-BXAihGcZ.js";
25
- import { t as hn } from "./Button-DSldWACF.js";
25
+ import { t as hn } from "./Button-BGN6q7lY.js";
26
26
  import { n as gn } from "./formPage-BcnATn6R.js";
27
- import { a as _n } from "./email-DxxovRtf.js";
28
- import { l as vn, n as yn, o as bn } from "./roles-hzcMnn_M.js";
27
+ import { a as _n } from "./email-PBHbXXgR.js";
28
+ import { l as vn, n as yn, o as bn } from "./roles-DiwP6-WQ.js";
29
29
  import { l as xn, o as Sn, r as Cn, s as wn } from "./tabAudience-DJ6H5Uth.js";
30
- import { t as Tn } from "./ConfirmModal-C1dM-bzk.js";
31
- import { a as En, l as Dn, n as On, r as kn, s as An, t as jn } from "./recordsKey-DHJJWWOo.js";
32
- import { i as Mn, l as Nn, s as Pn } from "./bookingPages-BxqkyZ-M.js";
33
- import { a as Fn, c as In, r as Ln, s as Rn, t as zn } from "./pageFiles-D-GYqRgZ.js";
34
- import { c as Bn, i as Vn, n as Hn, o as Un, r as Wn, s as Gn, t as Kn } from "./recordLock-Dnz61J-_.js";
30
+ import { t as Tn } from "./ConfirmModal-BW9e6Y7d.js";
31
+ import { a as En, l as Dn, n as On, r as kn, s as An, t as jn } from "./recordsKey-Cd216nq1.js";
32
+ import { i as Mn, l as Nn, s as Pn } from "./bookingPages-BFSY3Riv.js";
33
+ import { a as Fn, c as In, r as Ln, s as Rn, t as zn } from "./pageFiles-ZFPSCDZz.js";
34
+ import { c as Bn, i as Vn, n as Hn, o as Un, r as Wn, s as Gn, t as Kn } from "./recordLock-CMOiezNC.js";
35
35
  import { i as qn } from "./AccessNotice-DGsp8Xfl.js";
36
- import { t as Jn } from "./SystemTabContent-C4azXKMs.js";
37
- import { n as Yn } from "./SchedulePicker-BOSJEcfL.js";
36
+ import { t as Jn } from "./SystemTabContent-CMyT7mDN.js";
37
+ import { n as Yn } from "./SchedulePicker-DO4PewPJ.js";
38
38
  import { t as Xn } from "./contentKey-DEiV3vR8.js";
39
39
  import { t as Zn } from "./NeedsService-SxEZO5Fa.js";
40
- import "./ThemeAdmin-XLbC9fX7.js";
40
+ import "./ThemeAdmin-Cnqefrz6.js";
41
41
  import { useCallback as Qn, useEffect as q, useMemo as $n, useRef as J, useState as Y } from "react";
42
42
  import { Fragment as er, jsx as X, jsxs as Z } from "react/jsx-runtime";
43
43
  import { collection as tr, deleteDoc as nr, deleteField as rr, doc as Q, getDoc as ir, getDocs as ar, limit as or, onSnapshot as sr, orderBy as cr, query as lr, setDoc as $ } from "firebase/firestore";
@@ -0,0 +1 @@
1
+ require(`./chunk-CiTBaPhY.cjs`),require(`./TimeZoneField-Ckn1pKAL.cjs`);const e=require(`./PagesAdmin-YdYgmuEB.cjs`);exports.PagesAdmin=e.gt;