@flamingo-stack/openframe-frontend-core 0.0.719 → 0.0.721

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 (228) hide show
  1. package/dist/assets/index.cjs +6 -0
  2. package/dist/assets/index.d.ts +1 -0
  3. package/dist/assets/index.d.ts.map +1 -1
  4. package/dist/assets/index.js +5 -1
  5. package/dist/assets/mobile-app-qr.d.ts +17 -0
  6. package/dist/assets/mobile-app-qr.d.ts.map +1 -0
  7. package/dist/{chunk-2JLP2X2M.js → chunk-2P2M27EW.js} +2396 -2369
  8. package/dist/{chunk-IWCPXJEE.js → chunk-2TXGR7IK.js} +138 -63
  9. package/dist/{chunk-FVQJBII6.js → chunk-3LY7V3RF.js} +3 -3
  10. package/dist/{chunk-HCFNEKO3.cjs → chunk-3R32ZNA2.cjs} +46 -46
  11. package/dist/{chunk-WSDT7LYL.js → chunk-3UBWDR65.js} +1 -1
  12. package/dist/{chunk-NZ5BHDFZ.js → chunk-44Q6MV7C.js} +2 -2
  13. package/dist/{chunk-CMZ3QTFQ.js → chunk-4I3K6LEH.js} +24 -0
  14. package/dist/{chunk-ZXCZYMN4.cjs → chunk-4LY6R4TN.cjs} +137 -62
  15. package/dist/{chunk-EAHOB64X.js → chunk-57UTI7ZH.js} +106 -42
  16. package/dist/{chunk-XGHGGBM3.js → chunk-5QXE5HMV.js} +4 -4
  17. package/dist/{chunk-NYWESHOQ.cjs → chunk-6AJIOW3S.cjs} +57 -57
  18. package/dist/{chunk-4QFWGLZO.js → chunk-6YBUQAOH.js} +1 -1
  19. package/dist/{chunk-JHQ334WS.js → chunk-742BGXNX.js} +2 -0
  20. package/dist/{chunk-D6PMVWDI.js → chunk-74N742ZG.js} +6 -6
  21. package/dist/{chunk-AECTRMGQ.cjs → chunk-7GRPR7XA.cjs} +13 -1
  22. package/dist/{chunk-4HJRHEXD.cjs → chunk-7Z5FMQYR.cjs} +22 -22
  23. package/dist/chunk-AFTRPEXO.js +13 -0
  24. package/dist/{chunk-WBNAEYTQ.cjs → chunk-BYUIFT7Q.cjs} +6 -6
  25. package/dist/{chunk-LCLDFMDF.cjs → chunk-BYVVE7HP.cjs} +58 -58
  26. package/dist/{chunk-JPD4NXH6.js → chunk-CO3FOZIH.js} +1 -1
  27. package/dist/{chunk-E7YCPY7K.cjs → chunk-D2DH6VZL.cjs} +3 -3
  28. package/dist/{chunk-HWVUR735.cjs → chunk-DFM572VH.cjs} +2 -2
  29. package/dist/{chunk-YDPKUAP4.js → chunk-DJ4IFQNQ.js} +2 -0
  30. package/dist/{chunk-5U3KWQXP.js → chunk-E6SMMMKV.js} +13 -13
  31. package/dist/chunk-EWPR7662.cjs +13 -0
  32. package/dist/{chunk-SWAVO7BB.cjs → chunk-F7ORKKEF.cjs} +108 -108
  33. package/dist/{chunk-AGVXKD4K.js → chunk-FSQQZFVG.js} +12 -0
  34. package/dist/{chunk-ETYLOZOB.cjs → chunk-GCK75D7F.cjs} +109 -22
  35. package/dist/{chunk-ZKNZ2CXW.cjs → chunk-GGBYZKMS.cjs} +11 -11
  36. package/dist/{chunk-Y4MB25KW.js → chunk-GYAXV3MZ.js} +3 -3
  37. package/dist/{chunk-UWQWMGJ7.cjs → chunk-HJMSNOBT.cjs} +1040 -696
  38. package/dist/{chunk-DFQYAYBH.cjs → chunk-HQIOMFJH.cjs} +2 -0
  39. package/dist/{chunk-JH2SIWPQ.js → chunk-HXB7SEYG.js} +1611 -1267
  40. package/dist/{chunk-LE5WKGJV.cjs → chunk-I2254QN6.cjs} +16 -16
  41. package/dist/{chunk-PSVSEN4J.cjs → chunk-IMTY3GRR.cjs} +2 -0
  42. package/dist/{chunk-ILNN6QRW.js → chunk-JDBZ4ZHU.js} +3 -3
  43. package/dist/{chunk-GQ7JJUIT.cjs → chunk-K2JUJ37D.cjs} +25 -1
  44. package/dist/{chunk-6YPTUHM7.js → chunk-K76ACBR3.js} +3 -3
  45. package/dist/{chunk-2NASBO7O.js → chunk-KFOAV77K.js} +2 -2
  46. package/dist/{chunk-CU6NWO2M.js → chunk-LAXKEBDD.js} +14 -18
  47. package/dist/{chunk-5YAGX5DY.js → chunk-LGKMR7NZ.js} +7 -7
  48. package/dist/{chunk-E2V2EH2G.cjs → chunk-LODMNSQY.cjs} +16 -16
  49. package/dist/{chunk-4D6NMPOO.js → chunk-NJ5TBTJG.js} +7 -7
  50. package/dist/{chunk-TDZ76NCB.cjs → chunk-NMPVK53I.cjs} +29 -29
  51. package/dist/{chunk-TTVOLEUS.js → chunk-NPSJE7J3.js} +90 -3
  52. package/dist/{chunk-H5VIMBRN.cjs → chunk-O5EHOJZD.cjs} +4 -4
  53. package/dist/{chunk-KT3U3ZRP.cjs → chunk-OKE5BIQH.cjs} +8 -8
  54. package/dist/{chunk-DC4RTYWK.cjs → chunk-QLTXT562.cjs} +5 -5
  55. package/dist/{chunk-H5V7GRN5.js → chunk-QQCFPMAA.js} +5 -7
  56. package/dist/{chunk-7BREFV7G.cjs → chunk-QYS4YVEP.cjs} +34 -36
  57. package/dist/{chunk-7BCY77W6.js → chunk-RCI3PALX.js} +8 -10
  58. package/dist/{chunk-P3JMAMHP.js → chunk-REETLEL5.js} +1 -1
  59. package/dist/{chunk-4JIGEK7C.cjs → chunk-RJMWJAJO.cjs} +97 -33
  60. package/dist/{chunk-WS7WRR5Z.cjs → chunk-RQZQHLNS.cjs} +86 -90
  61. package/dist/{chunk-FFT56TYB.cjs → chunk-RUZIICXT.cjs} +2 -2
  62. package/dist/{chunk-AJHSQ5XK.js → chunk-S63QBBT7.js} +6 -6
  63. package/dist/{chunk-TELAANY6.js → chunk-UXU7Y5BH.js} +2 -2
  64. package/dist/{chunk-NQVS4G7G.cjs → chunk-UZTOI6FJ.cjs} +773 -746
  65. package/dist/{chunk-DFEPUYTF.cjs → chunk-VFICDEYJ.cjs} +45 -47
  66. package/dist/{chunk-LOZLHG2U.cjs → chunk-XE2K53GH.cjs} +20 -20
  67. package/dist/{chunk-QBCDSTLE.cjs → chunk-XXO52RZR.cjs} +26 -26
  68. package/dist/{chunk-TTEFN6VO.js → chunk-ZLUFEWZZ.js} +10 -10
  69. package/dist/{chunk-MA4Q5RBP.cjs → chunk-ZSOFLPQN.cjs} +9 -9
  70. package/dist/{chunk-KBJJQFYU.js → chunk-ZZEKXGFS.js} +2 -2
  71. package/dist/{cloud-tenants-FBUO66GW.cjs → cloud-tenants-HZHKRUIW.cjs} +16 -16
  72. package/dist/{cloud-tenants-DNBPNQNP.js → cloud-tenants-Q4TCJS5Y.js} +15 -15
  73. package/dist/components/calendar.cjs +4 -4
  74. package/dist/components/calendar.js +1 -1
  75. package/dist/components/case-studies/index.cjs +30 -30
  76. package/dist/components/case-studies/index.js +16 -16
  77. package/dist/components/chat/ask-prompts.d.ts +10 -2
  78. package/dist/components/chat/ask-prompts.d.ts.map +1 -1
  79. package/dist/components/chat/assistant-ask-prompts.d.ts +27 -0
  80. package/dist/components/chat/assistant-ask-prompts.d.ts.map +1 -0
  81. package/dist/components/chat/entity-cards/dispatch.d.ts.map +1 -1
  82. package/dist/components/chat/hooks/index.d.ts +1 -0
  83. package/dist/components/chat/hooks/index.d.ts.map +1 -1
  84. package/dist/components/chat/hooks/use-ask-prompts.d.ts +63 -0
  85. package/dist/components/chat/hooks/use-ask-prompts.d.ts.map +1 -0
  86. package/dist/components/chat/index.cjs +27 -10
  87. package/dist/components/chat/index.d.ts +1 -0
  88. package/dist/components/chat/index.d.ts.map +1 -1
  89. package/dist/components/chat/index.js +26 -9
  90. package/dist/components/chat/utils/icon-library.d.ts.map +1 -1
  91. package/dist/components/contact/index.cjs +17 -17
  92. package/dist/components/contact/index.js +16 -16
  93. package/dist/components/docs/index.cjs +20 -20
  94. package/dist/components/docs/index.js +19 -19
  95. package/dist/components/embeds/index.cjs +17 -17
  96. package/dist/components/embeds/index.js +16 -16
  97. package/dist/components/faq/faq-ask-card.d.ts +44 -0
  98. package/dist/components/faq/faq-ask-card.d.ts.map +1 -0
  99. package/dist/components/faq/faq-document-page.d.ts +5 -1
  100. package/dist/components/faq/faq-document-page.d.ts.map +1 -1
  101. package/dist/components/faq/faq-section.d.ts +18 -5
  102. package/dist/components/faq/faq-section.d.ts.map +1 -1
  103. package/dist/components/faq/index.cjs +19 -18
  104. package/dist/components/faq/index.d.ts +1 -0
  105. package/dist/components/faq/index.d.ts.map +1 -1
  106. package/dist/components/faq/index.js +18 -17
  107. package/dist/components/features/auth/auth-benefits-panel.d.ts.map +1 -1
  108. package/dist/components/features/index.cjs +16 -16
  109. package/dist/components/features/index.js +15 -15
  110. package/dist/components/help-center-pages/download-apps-page.d.ts +55 -0
  111. package/dist/components/help-center-pages/download-apps-page.d.ts.map +1 -0
  112. package/dist/components/help-center-pages/index.cjs +333 -119
  113. package/dist/components/help-center-pages/index.d.ts +1 -0
  114. package/dist/components/help-center-pages/index.d.ts.map +1 -1
  115. package/dist/components/help-center-pages/index.js +251 -37
  116. package/dist/components/help-center-pages/trust-center-page.d.ts +4 -1
  117. package/dist/components/help-center-pages/trust-center-page.d.ts.map +1 -1
  118. package/dist/components/index.cjs +131 -217
  119. package/dist/components/index.js +236 -322
  120. package/dist/components/meeting-scheduler/index.cjs +61 -62
  121. package/dist/components/meeting-scheduler/index.js +18 -19
  122. package/dist/components/navigation/index.cjs +19 -19
  123. package/dist/components/navigation/index.js +18 -18
  124. package/dist/components/navigation/mingo-ai-button.d.ts +1 -1
  125. package/dist/components/navigation/mingo-ai-button.d.ts.map +1 -1
  126. package/dist/components/onboarding-guides/index.cjs +19 -20
  127. package/dist/components/onboarding-guides/index.js +18 -19
  128. package/dist/components/product-demo/index.cjs +8 -8
  129. package/dist/components/product-demo/index.js +8 -8
  130. package/dist/components/related-content/index.cjs +7 -9
  131. package/dist/components/related-content/index.js +6 -8
  132. package/dist/components/tickets/index.cjs +21 -21
  133. package/dist/components/tickets/index.js +20 -20
  134. package/dist/components/ui/button/button.d.ts.map +1 -1
  135. package/dist/components/ui/file-manager/index.cjs +11 -11
  136. package/dist/components/ui/file-manager/index.js +1 -1
  137. package/dist/components/ui/index.cjs +34 -16
  138. package/dist/components/ui/index.d.ts +1 -0
  139. package/dist/components/ui/index.d.ts.map +1 -1
  140. package/dist/components/ui/index.js +33 -15
  141. package/dist/components/ui/mobile-app-qr.d.ts +23 -0
  142. package/dist/components/ui/mobile-app-qr.d.ts.map +1 -0
  143. package/dist/components/ui/store-badges.d.ts +7 -4
  144. package/dist/components/ui/store-badges.d.ts.map +1 -1
  145. package/dist/contexts/assistant-runtime-context.d.ts +74 -0
  146. package/dist/contexts/assistant-runtime-context.d.ts.map +1 -0
  147. package/dist/contexts/index.cjs +7 -1
  148. package/dist/contexts/index.d.ts +1 -0
  149. package/dist/contexts/index.d.ts.map +1 -1
  150. package/dist/contexts/index.js +6 -0
  151. package/dist/{devices-5A5TY4JD.cjs → devices-6XHUFIC6.cjs} +17 -17
  152. package/dist/{devices-PLDAEUSL.js → devices-NOUGVTES.js} +15 -15
  153. package/dist/hooks/index.cjs +10 -5
  154. package/dist/hooks/index.d.ts +1 -0
  155. package/dist/hooks/index.d.ts.map +1 -1
  156. package/dist/hooks/index.js +9 -4
  157. package/dist/hooks/use-downloads.d.ts +41 -0
  158. package/dist/hooks/use-downloads.d.ts.map +1 -0
  159. package/dist/index.cjs +80 -20
  160. package/dist/index.js +79 -19
  161. package/dist/{knowledge-G6Q5KRWV.js → knowledge-2YTUXQ2Z.js} +15 -15
  162. package/dist/{knowledge-FKTJ723Z.cjs → knowledge-ANEKPMO2.cjs} +17 -17
  163. package/dist/{logs-CJCXUBU6.cjs → logs-U3IB3HUM.cjs} +25 -25
  164. package/dist/{logs-QMV6XIC4.js → logs-WVQIONUT.js} +15 -15
  165. package/dist/{policies-G6D7AX6F.js → policies-66EGDW2H.js} +15 -15
  166. package/dist/{policies-QMRTK3CY.cjs → policies-UFRN2EQF.cjs} +20 -20
  167. package/dist/{remote-session-DBD6OSTX.js → remote-session-6WEUJZDC.js} +5 -5
  168. package/dist/{remote-session-2JVI7RVA.cjs → remote-session-A75X5NPC.cjs} +7 -7
  169. package/dist/{software-update-PNZMRDBT.cjs → software-update-2MHKL76D.cjs} +20 -20
  170. package/dist/{software-update-6BQM6BKH.js → software-update-3ZD3MXF3.js} +15 -15
  171. package/dist/{tickets-board-BHLPAVNJ.cjs → tickets-board-IFWMIZ35.cjs} +9 -9
  172. package/dist/{tickets-board-PYDNELSK.js → tickets-board-MYXG3V72.js} +4 -4
  173. package/dist/types/downloads.d.ts +67 -0
  174. package/dist/types/downloads.d.ts.map +1 -0
  175. package/dist/types/index.cjs +24 -0
  176. package/dist/types/index.d.ts +1 -0
  177. package/dist/types/index.d.ts.map +1 -1
  178. package/dist/types/index.js +16 -1
  179. package/dist/utils/index.cjs +46 -2
  180. package/dist/utils/index.d.ts +2 -0
  181. package/dist/utils/index.d.ts.map +1 -1
  182. package/dist/utils/index.js +40 -3
  183. package/dist/utils/list-url.d.ts.map +1 -1
  184. package/dist/utils/mobile-app.cjs +46 -0
  185. package/dist/utils/mobile-app.d.ts +40 -0
  186. package/dist/utils/mobile-app.d.ts.map +1 -0
  187. package/dist/utils/mobile-app.js +40 -0
  188. package/dist/utils/source-icons.d.ts.map +1 -1
  189. package/dist/utils/trial.d.ts +18 -0
  190. package/dist/utils/trial.d.ts.map +1 -0
  191. package/package.json +7 -1
  192. package/src/assets/index.ts +1 -0
  193. package/src/assets/mobile-app-qr.ts +19 -0
  194. package/src/components/chat/ask-prompts.tsx +25 -3
  195. package/src/components/chat/assistant-ask-prompts.tsx +78 -0
  196. package/src/components/chat/entity-cards/dispatch.tsx +38 -4
  197. package/src/components/chat/hooks/index.ts +12 -0
  198. package/src/components/chat/hooks/use-ask-prompts.ts +188 -0
  199. package/src/components/chat/index.ts +1 -0
  200. package/src/components/chat/utils/icon-library.tsx +6 -0
  201. package/src/components/faq/faq-ask-card.tsx +115 -0
  202. package/src/components/faq/faq-document-page.tsx +6 -1
  203. package/src/components/faq/faq-section.tsx +27 -5
  204. package/src/components/faq/index.ts +1 -0
  205. package/src/components/features/auth/auth-benefits-panel.tsx +5 -4
  206. package/src/components/help-center-pages/download-apps-page.tsx +364 -0
  207. package/src/components/help-center-pages/index.ts +1 -0
  208. package/src/components/help-center-pages/trust-center-page.tsx +5 -2
  209. package/src/components/navigation/mingo-ai-button.tsx +27 -6
  210. package/src/components/ui/button/button.tsx +3 -0
  211. package/src/components/ui/index.ts +1 -0
  212. package/src/components/ui/mobile-app-qr.tsx +40 -0
  213. package/src/components/ui/store-badges.tsx +17 -9
  214. package/src/contexts/assistant-runtime-context.tsx +84 -0
  215. package/src/contexts/index.ts +9 -0
  216. package/src/hooks/index.ts +1 -0
  217. package/src/hooks/use-downloads.ts +138 -0
  218. package/src/types/downloads.ts +82 -0
  219. package/src/types/index.ts +1 -0
  220. package/src/utils/index.ts +3 -0
  221. package/src/utils/list-url.ts +4 -0
  222. package/src/utils/mobile-app.ts +57 -0
  223. package/src/utils/source-icons.ts +10 -2
  224. package/src/utils/trial.ts +19 -0
  225. package/dist/chunk-6X3O67OL.cjs +0 -89
  226. package/dist/chunk-AUMKE74M.cjs +0 -16
  227. package/dist/chunk-G3GRYDMS.js +0 -16
  228. package/dist/chunk-RR6PY34K.js +0 -89
@@ -28,18 +28,21 @@ export declare function AppStoreBadge({ className }: StoreBadgeProps): import("r
28
28
  */
29
29
  export declare function GooglePlayBadge({ className }: StoreBadgeProps): import("react").JSX.Element;
30
30
  export interface StoreBadgeLinksProps {
31
- appStoreUrl: string;
32
- googlePlayUrl: string;
31
+ /** The App Store listing. Absent or null: that badge is not drawn. */
32
+ appStoreUrl?: string | null;
33
+ /** The Google Play listing. Absent or null: that badge is not drawn. */
34
+ googlePlayUrl?: string | null;
33
35
  /** Opens both listings in a new tab. */
34
36
  openInNewTab?: boolean;
35
37
  className?: string;
36
38
  }
37
39
  /**
38
- * The pair of store badges as links — the canonical "get our mobile app" row.
40
+ * The store badges as links — the canonical "get our mobile app" row. A store
41
+ * with no listing has no badge, and with neither the row is not rendered.
39
42
  *
40
43
  * Both are rendered at the same height because Apple and Google each require
41
44
  * their badge to be no smaller than any other store's badge beside it, which is
42
45
  * only satisfiable by drawing them equal.
43
46
  */
44
- export declare function StoreBadgeLinks({ appStoreUrl, googlePlayUrl, openInNewTab, className }: StoreBadgeLinksProps): import("react").JSX.Element;
47
+ export declare function StoreBadgeLinks({ appStoreUrl, googlePlayUrl, openInNewTab, className }: StoreBadgeLinksProps): import("react").JSX.Element | null;
45
48
  //# sourceMappingURL=store-badges.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store-badges.d.ts","sourceRoot":"","sources":["../../../src/components/ui/store-badges.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,mGAAmG;IACnG,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,EAAE,eAAe,+BA2H3D;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,EAAE,eAAe,+BA8I7D;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,YAAmB,EAAE,SAAS,EAAE,EAAE,oBAAoB,+BAcnH"}
1
+ {"version":3,"file":"store-badges.d.ts","sourceRoot":"","sources":["../../../src/components/ui/store-badges.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,mGAAmG;IACnG,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,EAAE,eAAe,+BA2H3D;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,EAAE,eAAe,+BA8I7D;AAED,MAAM,WAAW,oBAAoB;IACnC,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,wCAAwC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,YAAmB,EAAE,SAAS,EAAE,EAAE,oBAAoB,sCAmBnH"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Assistant runtime context: what a PAGE needs to offer the host's chat
3
+ * assistant ("Ask Mingo"): whether a chat is there to open, the assistant's
4
+ * name and glyph, where its questions are read from, and HOW the chat is
5
+ * opened and asked.
6
+ *
7
+ * A sibling of `ChatRuntimeContext` (which configures the chat panel itself)
8
+ * and `EndpointsRuntimeContext`. It is its own context because its values
9
+ * change with the visitor (signed in or not, chat mounted or not), and a new
10
+ * `ChatRuntime` identity re-renders the whole chat tree.
11
+ *
12
+ * The NEAREST provider wins, so a page region that carries its own chat (an
13
+ * embedded chat beside the content) mounts a provider whose `open` opens THAT
14
+ * chat: every "ask" surface under it (`FaqSection`'s card, `AskPrompts`,
15
+ * `AskCard`) then opens and fills it, with no prop on any of them.
16
+ *
17
+ * No provider, or `available: false`: the "ask" surfaces render nothing.
18
+ */
19
+ import { type ReactNode } from 'react';
20
+ /** What an "ask" surface asks the chat to do. */
21
+ export interface AssistantOpenRequest {
22
+ /** A question to send once the chat is open. Absent: the chat only opens. */
23
+ prompt?: string;
24
+ /** The topic of the surface that asked (a FAQ's topic, a page section). */
25
+ topic?: string;
26
+ }
27
+ /** What an "ask" surface reports after a question was sent (analytics). */
28
+ export interface AssistantAskEvent {
29
+ /** The id of the question that was asked. */
30
+ promptId: string;
31
+ /** The topic of the surface that asked. */
32
+ topic?: string;
33
+ }
34
+ /** The wording of the card beside a FAQ. `{assistant}` is replaced by the assistant's name. */
35
+ export interface AssistantAskCardCopy {
36
+ title?: string;
37
+ description?: string;
38
+ /** How many questions the card offers. */
39
+ count?: number;
40
+ }
41
+ export interface AssistantRuntime {
42
+ /** A chat is mounted for this visitor: an "ask" click has something to open. */
43
+ available: boolean;
44
+ /** The assistant's configured name. */
45
+ name?: string | null;
46
+ /** The assistant's configured glyph. Absent: the packaged Mingo mark. */
47
+ icon?: ReactNode;
48
+ /** The chat source the default `open` addresses its `ask-ai:open` event to. */
49
+ source?: string;
50
+ /**
51
+ * GET endpoint the questions are read from:
52
+ * `<url>?count=<n>&section=<topic>&exclude=<id,id>` → `{ prompts: AskPrompt[] }`
53
+ * `section` is ANY string: the host decides what topics exist (the hub: the
54
+ * `section` attribute of a quick action, set in chat config), so a new topic
55
+ * needs no change here. Hub: '/api/quick-actions/questions'. Absent: an "ask"
56
+ * surface shows its launcher with no questions.
57
+ */
58
+ askPromptsUrl?: string;
59
+ /**
60
+ * Open the chat and, with `prompt`, ask it. Absent: the `ask-ai:open` event
61
+ * of `source` (`openAskAi`), which the mounted `EmbeddableChat` listens for.
62
+ * A host whose chat is opened another way (an embedded chat, a different
63
+ * panel) supplies its own.
64
+ */
65
+ open?: (request: AssistantOpenRequest) => void;
66
+ /** After a question was sent (analytics). */
67
+ onAsk?: (event: AssistantAskEvent) => void;
68
+ /** The wording of the card beside a FAQ. Absent: the lib's own. */
69
+ askCard?: AssistantAskCardCopy;
70
+ }
71
+ export declare const AssistantRuntimeContext: import("react").Context<AssistantRuntime | null>;
72
+ /** The nearest assistant runtime, or null when no provider is mounted. */
73
+ export declare function useAssistantRuntime(): AssistantRuntime | null;
74
+ //# sourceMappingURL=assistant-runtime-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assistant-runtime-context.d.ts","sourceRoot":"","sources":["../../src/contexts/assistant-runtime-context.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAElE,iDAAiD;AACjD,MAAM,WAAW,oBAAoB;IACnC,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,2EAA2E;AAC3E,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,+FAA+F;AAC/F,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,gFAAgF;IAChF,SAAS,EAAE,OAAO,CAAC;IACnB,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,yEAAyE;IACzE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC/C,6CAA6C;IAC7C,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC3C,mEAAmE;IACnE,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAChC;AAED,eAAO,MAAM,uBAAuB,kDAA+C,CAAC;AAEpF,0EAA0E;AAC1E,wBAAgB,mBAAmB,IAAI,gBAAgB,GAAG,IAAI,CAE7D"}
@@ -7,6 +7,10 @@ var _chunkMZ4KBSH7cjs = require('../chunk-MZ4KBSH7.cjs');
7
7
 
8
8
 
9
9
 
10
+ var _chunkEWPR7662cjs = require('../chunk-EWPR7662.cjs');
11
+
12
+
13
+
10
14
 
11
15
  var _chunkUJ7AXHRZcjs = require('../chunk-UJ7AXHRZ.cjs');
12
16
  require('../chunk-QBJ4SE23.cjs');
@@ -26,4 +30,6 @@ function useOuterOrDefault(context, factory, deps = []) {
26
30
 
27
31
 
28
32
 
29
- exports.ChatRuntimeContext = _chunkUJ7AXHRZcjs.ChatRuntimeContext; exports.EndpointsRuntimeContext = _chunkMZ4KBSH7cjs.EndpointsRuntimeContext; exports.useChatRuntime = _chunkUJ7AXHRZcjs.useChatRuntime; exports.useEndpointsRuntime = _chunkMZ4KBSH7cjs.useEndpointsRuntime; exports.useOuterOrDefault = useOuterOrDefault; exports.useRequiredChatRuntime = _chunkUJ7AXHRZcjs.useRequiredChatRuntime; exports.useRequiredEndpointsRuntime = _chunkMZ4KBSH7cjs.useRequiredEndpointsRuntime;
33
+
34
+
35
+ exports.AssistantRuntimeContext = _chunkEWPR7662cjs.AssistantRuntimeContext; exports.ChatRuntimeContext = _chunkUJ7AXHRZcjs.ChatRuntimeContext; exports.EndpointsRuntimeContext = _chunkMZ4KBSH7cjs.EndpointsRuntimeContext; exports.useAssistantRuntime = _chunkEWPR7662cjs.useAssistantRuntime; exports.useChatRuntime = _chunkUJ7AXHRZcjs.useChatRuntime; exports.useEndpointsRuntime = _chunkMZ4KBSH7cjs.useEndpointsRuntime; exports.useOuterOrDefault = useOuterOrDefault; exports.useRequiredChatRuntime = _chunkUJ7AXHRZcjs.useRequiredChatRuntime; exports.useRequiredEndpointsRuntime = _chunkMZ4KBSH7cjs.useRequiredEndpointsRuntime;
@@ -22,5 +22,6 @@
22
22
  */
23
23
  export { EndpointsRuntimeContext, useEndpointsRuntime, useRequiredEndpointsRuntime, type EndpointsRuntime, } from './endpoints-runtime-context';
24
24
  export { ChatRuntimeContext, useChatRuntime, useRequiredChatRuntime, type ChatRuntime } from './chat-runtime-context';
25
+ export { AssistantRuntimeContext, useAssistantRuntime, type AssistantAskCardCopy, type AssistantAskEvent, type AssistantOpenRequest, type AssistantRuntime, } from './assistant-runtime-context';
25
26
  export { useOuterOrDefault } from './use-outer-or-default';
26
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contexts/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,gBAAgB,GACtB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,sBAAsB,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAEtH,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contexts/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,gBAAgB,GACtB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,sBAAsB,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAEtH,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,GACtB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -4,6 +4,10 @@ import {
4
4
  useEndpointsRuntime,
5
5
  useRequiredEndpointsRuntime
6
6
  } from "../chunk-HFL2F4RM.js";
7
+ import {
8
+ AssistantRuntimeContext,
9
+ useAssistantRuntime
10
+ } from "../chunk-AFTRPEXO.js";
7
11
  import {
8
12
  ChatRuntimeContext,
9
13
  useChatRuntime,
@@ -19,8 +23,10 @@ function useOuterOrDefault(context, factory, deps = []) {
19
23
  return outer ?? fallback;
20
24
  }
21
25
  export {
26
+ AssistantRuntimeContext,
22
27
  ChatRuntimeContext,
23
28
  EndpointsRuntimeContext,
29
+ useAssistantRuntime,
24
30
  useChatRuntime,
25
31
  useEndpointsRuntime,
26
32
  useOuterOrDefault,
@@ -11,31 +11,31 @@ require('./chunk-KHXZFLIN.cjs');
11
11
 
12
12
 
13
13
 
14
- var _chunkNQVS4G7Gcjs = require('./chunk-NQVS4G7G.cjs');
15
- require('./chunk-4HJRHEXD.cjs');
14
+ var _chunkUZTOI6FJcjs = require('./chunk-UZTOI6FJ.cjs');
15
+ require('./chunk-7Z5FMQYR.cjs');
16
16
  require('./chunk-HQQE74RO.cjs');
17
17
  require('./chunk-DEY6XXGO.cjs');
18
- require('./chunk-LCLDFMDF.cjs');
19
- require('./chunk-ZXCZYMN4.cjs');
18
+ require('./chunk-BYVVE7HP.cjs');
19
+ require('./chunk-4LY6R4TN.cjs');
20
20
  require('./chunk-B4NCVYEQ.cjs');
21
21
  require('./chunk-MZ4KBSH7.cjs');
22
22
  require('./chunk-A6P6DHEZ.cjs');
23
- require('./chunk-WBNAEYTQ.cjs');
24
- require('./chunk-AUMKE74M.cjs');
23
+ require('./chunk-BYUIFT7Q.cjs');
25
24
  require('./chunk-LX22Y43B.cjs');
26
- require('./chunk-UWQWMGJ7.cjs');
27
- require('./chunk-KT3U3ZRP.cjs');
28
- require('./chunk-DC4RTYWK.cjs');
29
- require('./chunk-FFT56TYB.cjs');
30
- require('./chunk-GQ7JJUIT.cjs');
25
+ require('./chunk-HJMSNOBT.cjs');
26
+ require('./chunk-OKE5BIQH.cjs');
27
+ require('./chunk-EWPR7662.cjs');
28
+ require('./chunk-QLTXT562.cjs');
29
+ require('./chunk-RUZIICXT.cjs');
30
+ require('./chunk-K2JUJ37D.cjs');
31
31
  require('./chunk-WVOTC7HW.cjs');
32
32
  require('./chunk-7DNL734S.cjs');
33
- require('./chunk-ETYLOZOB.cjs');
33
+ require('./chunk-GCK75D7F.cjs');
34
34
  require('./chunk-AL2GUHAJ.cjs');
35
- require('./chunk-PSVSEN4J.cjs');
35
+ require('./chunk-IMTY3GRR.cjs');
36
36
  require('./chunk-F5BPGWGT.cjs');
37
37
  require('./chunk-MGHIV4L6.cjs');
38
- require('./chunk-AECTRMGQ.cjs');
38
+ require('./chunk-7GRPR7XA.cjs');
39
39
  require('./chunk-UJ7AXHRZ.cjs');
40
40
  require('./chunk-AAYNCJMW.cjs');
41
41
  require('./chunk-ULWVKHSI.cjs');
@@ -45,7 +45,7 @@ require('./chunk-RDW5JAME.cjs');
45
45
  require('./chunk-XXBLN4BP.cjs');
46
46
  require('./chunk-2Y7QZAB2.cjs');
47
47
  require('./chunk-4GFNWALL.cjs');
48
- require('./chunk-DFQYAYBH.cjs');
48
+ require('./chunk-HQIOMFJH.cjs');
49
49
  require('./chunk-LLRGR4I5.cjs');
50
50
  require('./chunk-G7SBHMRR.cjs');
51
51
  require('./chunk-G6OHIX5C.cjs');
@@ -57,14 +57,14 @@ require('./chunk-QBJ4SE23.cjs');
57
57
  // src/components/product-demo/screens/devices.tsx
58
58
  var _react = require('react');
59
59
  var _jsxruntime = require('react/jsx-runtime');
60
- var TOOLBAR = { ..._chunkNQVS4G7Gcjs.IDLE_DEVICES_TOOLBAR, searchValue: _chunkWFPCCBOMcjs.DEVICES_SEARCH_QUERY };
60
+ var TOOLBAR = { ..._chunkUZTOI6FJcjs.IDLE_DEVICES_TOOLBAR, searchValue: _chunkWFPCCBOMcjs.DEVICES_SEARCH_QUERY };
61
61
  var NO_HEADER = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, {});
62
62
  var HIDDEN_WHEN_COMPACT = ["organization"];
63
63
  function DevicesScreen({ compact = false }) {
64
64
  const cast = _chunkII4QMH26cjs.useProductDemoCast.call(void 0, );
65
65
  const fixture = _react.useMemo.call(void 0, () => _chunkWFPCCBOMcjs.buildWindowsDevicesFixture.call(void 0, cast), [cast]);
66
66
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "h-full bg-ods-bg", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
67
- _chunkNQVS4G7Gcjs.DevicesPanelView,
67
+ _chunkUZTOI6FJcjs.DevicesPanelView,
68
68
  {
69
69
  className: "p-[var(--spacing-system-l)]",
70
70
  headerSlot: NO_HEADER,
@@ -11,31 +11,31 @@ import "./chunk-CYUUHFXL.js";
11
11
  import {
12
12
  DevicesPanelView,
13
13
  IDLE_DEVICES_TOOLBAR
14
- } from "./chunk-2JLP2X2M.js";
15
- import "./chunk-ILNN6QRW.js";
14
+ } from "./chunk-2P2M27EW.js";
15
+ import "./chunk-JDBZ4ZHU.js";
16
16
  import "./chunk-LQYXMEYF.js";
17
17
  import "./chunk-4JPLYOS6.js";
18
- import "./chunk-Y4MB25KW.js";
19
- import "./chunk-IWCPXJEE.js";
18
+ import "./chunk-GYAXV3MZ.js";
19
+ import "./chunk-2TXGR7IK.js";
20
20
  import "./chunk-3K5ZLZE7.js";
21
21
  import "./chunk-HFL2F4RM.js";
22
22
  import "./chunk-YYYVS7CX.js";
23
- import "./chunk-WSDT7LYL.js";
24
- import "./chunk-G3GRYDMS.js";
23
+ import "./chunk-3UBWDR65.js";
25
24
  import "./chunk-PLWMIU72.js";
26
- import "./chunk-JH2SIWPQ.js";
27
- import "./chunk-2NASBO7O.js";
28
- import "./chunk-KBJJQFYU.js";
29
- import "./chunk-P3JMAMHP.js";
30
- import "./chunk-CMZ3QTFQ.js";
25
+ import "./chunk-HXB7SEYG.js";
26
+ import "./chunk-KFOAV77K.js";
27
+ import "./chunk-AFTRPEXO.js";
28
+ import "./chunk-ZZEKXGFS.js";
29
+ import "./chunk-REETLEL5.js";
30
+ import "./chunk-4I3K6LEH.js";
31
31
  import "./chunk-34I6XI3N.js";
32
32
  import "./chunk-GY4IZG22.js";
33
- import "./chunk-TTVOLEUS.js";
33
+ import "./chunk-NPSJE7J3.js";
34
34
  import "./chunk-H3PKYE4N.js";
35
- import "./chunk-JHQ334WS.js";
35
+ import "./chunk-742BGXNX.js";
36
36
  import "./chunk-IYVFSLWJ.js";
37
37
  import "./chunk-FBZMAPWO.js";
38
- import "./chunk-AGVXKD4K.js";
38
+ import "./chunk-FSQQZFVG.js";
39
39
  import "./chunk-E4ABZWTJ.js";
40
40
  import "./chunk-KEKCQENI.js";
41
41
  import "./chunk-ADBE7QF3.js";
@@ -45,7 +45,7 @@ import "./chunk-OSIKGEBU.js";
45
45
  import "./chunk-CMGFZHCN.js";
46
46
  import "./chunk-WI6FHKD7.js";
47
47
  import "./chunk-INS7KZJB.js";
48
- import "./chunk-YDPKUAP4.js";
48
+ import "./chunk-DJ4IFQNQ.js";
49
49
  import "./chunk-DAAVMYUT.js";
50
50
  import "./chunk-V3JFVKHV.js";
51
51
  import "./chunk-WMNCVLES.js";
@@ -57,7 +57,10 @@
57
57
 
58
58
 
59
59
 
60
- var _chunkZXCZYMN4cjs = require('../chunk-ZXCZYMN4.cjs');
60
+
61
+
62
+
63
+ var _chunk4LY6R4TNcjs = require('../chunk-4LY6R4TN.cjs');
61
64
 
62
65
 
63
66
 
@@ -69,7 +72,6 @@ require('../chunk-MZ4KBSH7.cjs');
69
72
 
70
73
 
71
74
  var _chunkA6P6DHEZcjs = require('../chunk-A6P6DHEZ.cjs');
72
- require('../chunk-AUMKE74M.cjs');
73
75
 
74
76
 
75
77
 
@@ -82,7 +84,7 @@ require('../chunk-AUMKE74M.cjs');
82
84
 
83
85
 
84
86
 
85
- var _chunkGQ7JJUITcjs = require('../chunk-GQ7JJUIT.cjs');
87
+ var _chunkK2JUJ37Dcjs = require('../chunk-K2JUJ37D.cjs');
86
88
  require('../chunk-WVOTC7HW.cjs');
87
89
  require('../chunk-7DNL734S.cjs');
88
90
 
@@ -92,7 +94,7 @@ require('../chunk-7DNL734S.cjs');
92
94
 
93
95
 
94
96
 
95
- var _chunkAECTRMGQcjs = require('../chunk-AECTRMGQ.cjs');
97
+ var _chunk7GRPR7XAcjs = require('../chunk-7GRPR7XA.cjs');
96
98
  require('../chunk-UJ7AXHRZ.cjs');
97
99
 
98
100
 
@@ -223,4 +225,7 @@ require('../chunk-QBJ4SE23.cjs');
223
225
 
224
226
 
225
227
 
226
- exports.CONTENT_BREAKPOINTS = _chunkAAYNCJMWcjs.CONTENT_BREAKPOINTS; exports.ContentAreaWidthContext = _chunkAAYNCJMWcjs.ContentAreaWidthContext; exports.DRAG_AND_DROP_MEDIA_QUERY = _chunkB4NCVYEQcjs.DRAG_AND_DROP_MEDIA_QUERY; exports.GraphQLIntrospector = _chunkZXCZYMN4cjs.GraphQLIntrospector; exports.NEAR_VIEWPORT_ROOT_MARGIN = _chunkAECTRMGQcjs.NEAR_VIEWPORT_ROOT_MARGIN; exports.PREFERS_REDUCED_MOTION_QUERY = _chunkGQ7JJUITcjs.PREFERS_REDUCED_MOTION_QUERY; exports.ViewportBreakpoints = _chunkAAYNCJMWcjs.ViewportBreakpoints; exports.batchFetchAuthenticatedImages = _chunkZXCZYMN4cjs.batchFetchAuthenticatedImages; exports.breakpoints = _chunkULWVKHSIcjs.breakpoints; exports.clearAuthedAssetCache = _chunkULWVKHSIcjs.clearAuthedAssetCache; exports.clearAuthedImageCache = _chunkULWVKHSIcjs.clearAuthedImageCache; exports.clearVariablesParams = _chunkZXCZYMN4cjs.clearParams; exports.coerceValue = _chunkZXCZYMN4cjs.coerceValue; exports.completeFormRescue = _chunkZXCZYMN4cjs.completeFormRescue; exports.configureAuthenticatedImage = _chunkZXCZYMN4cjs.configureAuthenticatedImage; exports.configureBatchImageFetch = _chunkZXCZYMN4cjs.configureBatchImageFetch; exports.contentBreakpointFor = _chunkAAYNCJMWcjs.contentBreakpointFor; exports.createSearchParams = _chunkAECTRMGQcjs.createSearchParams; exports.extractVariablesFromQuery = _chunkZXCZYMN4cjs.extractVariablesFromQuery; exports.flattenQueryVariables = _chunkZXCZYMN4cjs.flattenQueryVariables; exports.getArrayParams = _chunkZXCZYMN4cjs.getArrayParams; exports.getNestedValue = _chunkZXCZYMN4cjs.getNestedValue; exports.getRequiredParams = _chunkZXCZYMN4cjs.getRequiredParams; exports.introspector = _chunkZXCZYMN4cjs.introspector; exports.isInputObjectType = _chunkZXCZYMN4cjs.isInputObjectType; exports.isScalarType = _chunkZXCZYMN4cjs.isScalarType; exports.mergeDefaults = _chunkZXCZYMN4cjs.mergeDefaults; exports.mergeVariables = _chunkZXCZYMN4cjs.mergeVariables; exports.resolveActiveSection = _chunkZXCZYMN4cjs.resolveActiveSection; exports.setNestedValue = _chunkZXCZYMN4cjs.setNestedValue; exports.shouldIncludeInUrl = _chunkAECTRMGQcjs.shouldIncludeInUrl; exports.toast = _chunkZXCZYMN4cjs.toast; exports.urlParamsToVariables = _chunkZXCZYMN4cjs.urlParamsToVariables; exports.useAccessCodeIntegration = _chunkZXCZYMN4cjs.useAccessCodeIntegration; exports.useActiveSection = _chunkZXCZYMN4cjs.useActiveSection; exports.useApiParams = _chunkZXCZYMN4cjs.useApiParams; exports.useAuthedAssetSrc = _chunkULWVKHSIcjs.useAuthedAssetSrc; exports.useAuthedImageSrc = _chunkULWVKHSIcjs.useAuthedImageSrc; exports.useAuthenticatedImage = _chunkZXCZYMN4cjs.useAuthenticatedImage; exports.useAutoLimitTags = _chunkA6P6DHEZcjs.useAutoLimitTags; exports.useAutoplay = _chunkGQ7JJUITcjs.useAutoplay; exports.useBatchImages = _chunkZXCZYMN4cjs.useBatchImages; exports.useClaudeMirrorSrc = _chunkZXCZYMN4cjs.useClaudeMirrorSrc; exports.useContactSubmission = _chunkZXCZYMN4cjs.useContactSubmission; exports.useContentBreakpoint = _chunkAAYNCJMWcjs.useContentBreakpoint; exports.useContentLgUp = _chunkAAYNCJMWcjs.useContentLgUp; exports.useContentMdUp = _chunkAAYNCJMWcjs.useContentMdUp; exports.useCopyToClipboard = _chunkZXCZYMN4cjs.useCopyToClipboard; exports.useCursorPaginationState = _chunkZXCZYMN4cjs.useCursorPaginationState; exports.useDebounce = _chunkGQ7JJUITcjs.useDebounce; exports.useDeferredError = _chunkZXCZYMN4cjs.useDeferredError; exports.useDragAndDropEnabled = _chunkB4NCVYEQcjs.useDragAndDropEnabled; exports.useFocusTrap = _chunkZXCZYMN4cjs.useFocusTrap; exports.useFormRescue = _chunkZXCZYMN4cjs.useFormRescue; exports.useHeaderHeight = _chunkGQ7JJUITcjs.useHeaderHeight; exports.useHorizontalScrollbar = _chunkB4NCVYEQcjs.useHorizontalScrollbar; exports.useHumanitySignals = _chunkZXCZYMN4cjs.useHumanitySignals; exports.useImageEdgeColor = _chunkAECTRMGQcjs.useImageEdgeColor; exports.useInView = _chunkGQ7JJUITcjs.useInView; exports.useIsTruncated = _chunkULWVKHSIcjs.useIsTruncated; exports.useIsomorphicLayoutEffect = _chunkULWVKHSIcjs.useIsomorphicLayoutEffect; exports.useKeyboardCollisionPadding = _chunkA6P6DHEZcjs.useKeyboardCollisionPadding; exports.useLgUp = _chunkULWVKHSIcjs.useLgUp; exports.useLocalStorage = _chunkB4NCVYEQcjs.useLocalStorage; exports.useLocationHash = _chunkZXCZYMN4cjs.useLocationHash; exports.useMarqueeEngine = _chunkGQ7JJUITcjs.useMarqueeEngine; exports.useMdUp = _chunkULWVKHSIcjs.useMdUp; exports.useMediaQuery = _chunkULWVKHSIcjs.useMediaQuery; exports.useMemoizedCallback = _chunkZXCZYMN4cjs.useMemoizedCallback; exports.useNatsClient = _chunkZXCZYMN4cjs.useNatsClient; exports.useNavMenus = _chunkZXCZYMN4cjs.useNavMenus; exports.useNearViewport = _chunkAECTRMGQcjs.useNearViewport; exports.useNotificationPermission = _chunkZXCZYMN4cjs.useNotificationPermission; exports.useOgPlaceholderUrl = _chunkAECTRMGQcjs.useOgPlaceholderUrl; exports.useOnboardingState = _chunkZXCZYMN4cjs.useOnboardingState; exports.usePlatformByValue = _chunkZXCZYMN4cjs.usePlatformByValue; exports.usePlatformConfig = _chunkZXCZYMN4cjs.usePlatformConfig; exports.usePrefersReducedMotion = _chunkGQ7JJUITcjs.usePrefersReducedMotion; exports.usePrefersReducedMotionState = _chunkGQ7JJUITcjs.usePrefersReducedMotionState; exports.usePreventScroll = _chunkZXCZYMN4cjs.usePreventScroll; exports.useQueryParams = _chunkZXCZYMN4cjs.useQueryParams; exports.useRescuedForm = _chunkZXCZYMN4cjs.useRescuedForm; exports.useResetOnPageHidden = _chunkGQ7JJUITcjs.useResetOnPageHidden; exports.useScenarioPlayer = _chunkZXCZYMN4cjs.useScenarioPlayer; exports.useScrollToHash = _chunkZXCZYMN4cjs.useScrollToHash; exports.useSearch = _chunkZXCZYMN4cjs.useSearch; exports.useSmUp = _chunkULWVKHSIcjs.useSmUp; exports.useStickyToolbar = _chunkZXCZYMN4cjs.useStickyToolbar; exports.useSuppressCloneFocus = _chunkGQ7JJUITcjs.useSuppressCloneFocus; exports.useTablePagination = _chunkZXCZYMN4cjs.useTablePagination; exports.useThrottle = _chunkZXCZYMN4cjs.useThrottle; exports.useToast = _chunkZXCZYMN4cjs.useToast; exports.useValidatePlatform = _chunkZXCZYMN4cjs.useValidatePlatform; exports.useVisitorOs = _chunkGQ7JJUITcjs.useVisitorOs; exports.useWindowSize = _chunkZXCZYMN4cjs.useWindowSize; exports.validateSchema = _chunkZXCZYMN4cjs.validateSchema; exports.validateVariables = _chunkZXCZYMN4cjs.validateVariables; exports.variablesToUrlParams = _chunkZXCZYMN4cjs.variablesToUrlParams;
228
+
229
+
230
+
231
+ exports.CONTENT_BREAKPOINTS = _chunkAAYNCJMWcjs.CONTENT_BREAKPOINTS; exports.ContentAreaWidthContext = _chunkAAYNCJMWcjs.ContentAreaWidthContext; exports.DRAG_AND_DROP_MEDIA_QUERY = _chunkB4NCVYEQcjs.DRAG_AND_DROP_MEDIA_QUERY; exports.GraphQLIntrospector = _chunk4LY6R4TNcjs.GraphQLIntrospector; exports.NEAR_VIEWPORT_ROOT_MARGIN = _chunk7GRPR7XAcjs.NEAR_VIEWPORT_ROOT_MARGIN; exports.PREFERS_REDUCED_MOTION_QUERY = _chunkK2JUJ37Dcjs.PREFERS_REDUCED_MOTION_QUERY; exports.ViewportBreakpoints = _chunkAAYNCJMWcjs.ViewportBreakpoints; exports.batchFetchAuthenticatedImages = _chunk4LY6R4TNcjs.batchFetchAuthenticatedImages; exports.breakpoints = _chunkULWVKHSIcjs.breakpoints; exports.clearAuthedAssetCache = _chunkULWVKHSIcjs.clearAuthedAssetCache; exports.clearAuthedImageCache = _chunkULWVKHSIcjs.clearAuthedImageCache; exports.clearVariablesParams = _chunk4LY6R4TNcjs.clearParams; exports.coerceValue = _chunk4LY6R4TNcjs.coerceValue; exports.completeFormRescue = _chunk4LY6R4TNcjs.completeFormRescue; exports.configureAuthenticatedImage = _chunk4LY6R4TNcjs.configureAuthenticatedImage; exports.configureBatchImageFetch = _chunk4LY6R4TNcjs.configureBatchImageFetch; exports.contentBreakpointFor = _chunkAAYNCJMWcjs.contentBreakpointFor; exports.createSearchParams = _chunk7GRPR7XAcjs.createSearchParams; exports.extractVariablesFromQuery = _chunk4LY6R4TNcjs.extractVariablesFromQuery; exports.flattenQueryVariables = _chunk4LY6R4TNcjs.flattenQueryVariables; exports.getArrayParams = _chunk4LY6R4TNcjs.getArrayParams; exports.getNestedValue = _chunk4LY6R4TNcjs.getNestedValue; exports.getRequiredParams = _chunk4LY6R4TNcjs.getRequiredParams; exports.introspector = _chunk4LY6R4TNcjs.introspector; exports.isInputObjectType = _chunk4LY6R4TNcjs.isInputObjectType; exports.isScalarType = _chunk4LY6R4TNcjs.isScalarType; exports.mergeDefaults = _chunk4LY6R4TNcjs.mergeDefaults; exports.mergeVariables = _chunk4LY6R4TNcjs.mergeVariables; exports.resetDownloadsStore = _chunk4LY6R4TNcjs.resetDownloadsStore; exports.resolveActiveSection = _chunk4LY6R4TNcjs.resolveActiveSection; exports.setNestedValue = _chunk4LY6R4TNcjs.setNestedValue; exports.shouldIncludeInUrl = _chunk7GRPR7XAcjs.shouldIncludeInUrl; exports.toast = _chunk4LY6R4TNcjs.toast; exports.urlParamsToVariables = _chunk4LY6R4TNcjs.urlParamsToVariables; exports.useAccessCodeIntegration = _chunk4LY6R4TNcjs.useAccessCodeIntegration; exports.useActiveSection = _chunk4LY6R4TNcjs.useActiveSection; exports.useApiParams = _chunk4LY6R4TNcjs.useApiParams; exports.useAuthedAssetSrc = _chunkULWVKHSIcjs.useAuthedAssetSrc; exports.useAuthedImageSrc = _chunkULWVKHSIcjs.useAuthedImageSrc; exports.useAuthenticatedImage = _chunk4LY6R4TNcjs.useAuthenticatedImage; exports.useAutoLimitTags = _chunkA6P6DHEZcjs.useAutoLimitTags; exports.useAutoplay = _chunkK2JUJ37Dcjs.useAutoplay; exports.useBatchImages = _chunk4LY6R4TNcjs.useBatchImages; exports.useClaudeMirrorSrc = _chunk4LY6R4TNcjs.useClaudeMirrorSrc; exports.useContactSubmission = _chunk4LY6R4TNcjs.useContactSubmission; exports.useContentBreakpoint = _chunkAAYNCJMWcjs.useContentBreakpoint; exports.useContentLgUp = _chunkAAYNCJMWcjs.useContentLgUp; exports.useContentMdUp = _chunkAAYNCJMWcjs.useContentMdUp; exports.useCopyToClipboard = _chunk4LY6R4TNcjs.useCopyToClipboard; exports.useCursorPaginationState = _chunk4LY6R4TNcjs.useCursorPaginationState; exports.useDebounce = _chunkK2JUJ37Dcjs.useDebounce; exports.useDeferredError = _chunk4LY6R4TNcjs.useDeferredError; exports.useDownloads = _chunk4LY6R4TNcjs.useDownloads; exports.useDragAndDropEnabled = _chunkB4NCVYEQcjs.useDragAndDropEnabled; exports.useFocusTrap = _chunk4LY6R4TNcjs.useFocusTrap; exports.useFormRescue = _chunk4LY6R4TNcjs.useFormRescue; exports.useHeaderHeight = _chunkK2JUJ37Dcjs.useHeaderHeight; exports.useHorizontalScrollbar = _chunkB4NCVYEQcjs.useHorizontalScrollbar; exports.useHumanitySignals = _chunk4LY6R4TNcjs.useHumanitySignals; exports.useImageEdgeColor = _chunk7GRPR7XAcjs.useImageEdgeColor; exports.useInView = _chunkK2JUJ37Dcjs.useInView; exports.useIsTruncated = _chunkULWVKHSIcjs.useIsTruncated; exports.useIsomorphicLayoutEffect = _chunkULWVKHSIcjs.useIsomorphicLayoutEffect; exports.useKeyboardCollisionPadding = _chunkA6P6DHEZcjs.useKeyboardCollisionPadding; exports.useLgUp = _chunkULWVKHSIcjs.useLgUp; exports.useLocalStorage = _chunkB4NCVYEQcjs.useLocalStorage; exports.useLocationHash = _chunk4LY6R4TNcjs.useLocationHash; exports.useMarqueeEngine = _chunkK2JUJ37Dcjs.useMarqueeEngine; exports.useMdUp = _chunkULWVKHSIcjs.useMdUp; exports.useMediaQuery = _chunkULWVKHSIcjs.useMediaQuery; exports.useMemoizedCallback = _chunk4LY6R4TNcjs.useMemoizedCallback; exports.useNatsClient = _chunk4LY6R4TNcjs.useNatsClient; exports.useNavMenus = _chunk4LY6R4TNcjs.useNavMenus; exports.useNearViewport = _chunk7GRPR7XAcjs.useNearViewport; exports.useNotificationPermission = _chunk4LY6R4TNcjs.useNotificationPermission; exports.useOgPlaceholderUrl = _chunk7GRPR7XAcjs.useOgPlaceholderUrl; exports.useOnboardingState = _chunk4LY6R4TNcjs.useOnboardingState; exports.usePlatformByValue = _chunk4LY6R4TNcjs.usePlatformByValue; exports.usePlatformConfig = _chunk4LY6R4TNcjs.usePlatformConfig; exports.usePrefersReducedMotion = _chunkK2JUJ37Dcjs.usePrefersReducedMotion; exports.usePrefersReducedMotionState = _chunkK2JUJ37Dcjs.usePrefersReducedMotionState; exports.usePreventScroll = _chunk4LY6R4TNcjs.usePreventScroll; exports.useQueryParams = _chunk4LY6R4TNcjs.useQueryParams; exports.useRescuedForm = _chunk4LY6R4TNcjs.useRescuedForm; exports.useResetOnPageHidden = _chunkK2JUJ37Dcjs.useResetOnPageHidden; exports.useScenarioPlayer = _chunk4LY6R4TNcjs.useScenarioPlayer; exports.useScrollToHash = _chunk4LY6R4TNcjs.useScrollToHash; exports.useSearch = _chunk4LY6R4TNcjs.useSearch; exports.useSmUp = _chunkULWVKHSIcjs.useSmUp; exports.useStickyToolbar = _chunk4LY6R4TNcjs.useStickyToolbar; exports.useSuppressCloneFocus = _chunkK2JUJ37Dcjs.useSuppressCloneFocus; exports.useTablePagination = _chunk4LY6R4TNcjs.useTablePagination; exports.useThrottle = _chunk4LY6R4TNcjs.useThrottle; exports.useToast = _chunk4LY6R4TNcjs.useToast; exports.useValidatePlatform = _chunk4LY6R4TNcjs.useValidatePlatform; exports.useVisitorDesktopDownload = _chunk4LY6R4TNcjs.useVisitorDesktopDownload; exports.useVisitorOs = _chunkK2JUJ37Dcjs.useVisitorOs; exports.useWindowSize = _chunk4LY6R4TNcjs.useWindowSize; exports.validateSchema = _chunk4LY6R4TNcjs.validateSchema; exports.validateVariables = _chunk4LY6R4TNcjs.validateVariables; exports.variablesToUrlParams = _chunk4LY6R4TNcjs.variablesToUrlParams;
@@ -3,6 +3,7 @@ export * from './platform';
3
3
  export * from './use-toast';
4
4
  export * from './use-contact-submission';
5
5
  export * from './use-copy-to-clipboard';
6
+ export * from './use-downloads';
6
7
  export * from './use-batch-images';
7
8
  export * from './use-authenticated-image';
8
9
  export * from './use-authed-asset-src';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AACA,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,SAAS,CAAC;AAGxB,cAAc,wBAAwB,CAAC;AAGvC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,uBAAuB,CAAC;AAMtC,cAAc,+BAA+B,CAAC;AAG9C,cAAc,0BAA0B,CAAC;AAIzC,cAAc,yBAAyB,CAAC;AAKxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AAIrC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AACA,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAGhC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,SAAS,CAAC;AAGxB,cAAc,wBAAwB,CAAC;AAGvC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,uBAAuB,CAAC;AAMtC,cAAc,+BAA+B,CAAC;AAG9C,cAAc,0BAA0B,CAAC;AAIzC,cAAc,yBAAyB,CAAC;AAKxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AAIrC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
@@ -17,6 +17,7 @@ import {
17
17
  isScalarType,
18
18
  mergeDefaults,
19
19
  mergeVariables,
20
+ resetDownloadsStore,
20
21
  resolveActiveSection,
21
22
  setNestedValue,
22
23
  toast,
@@ -31,6 +32,7 @@ import {
31
32
  useCopyToClipboard,
32
33
  useCursorPaginationState,
33
34
  useDeferredError,
35
+ useDownloads,
34
36
  useFocusTrap,
35
37
  useFormRescue,
36
38
  useHumanitySignals,
@@ -53,11 +55,12 @@ import {
53
55
  useThrottle,
54
56
  useToast,
55
57
  useValidatePlatform,
58
+ useVisitorDesktopDownload,
56
59
  useWindowSize,
57
60
  validateSchema,
58
61
  validateVariables,
59
62
  variablesToUrlParams
60
- } from "../chunk-IWCPXJEE.js";
63
+ } from "../chunk-2TXGR7IK.js";
61
64
  import {
62
65
  DRAG_AND_DROP_MEDIA_QUERY,
63
66
  useDragAndDropEnabled,
@@ -69,7 +72,6 @@ import {
69
72
  useAutoLimitTags,
70
73
  useKeyboardCollisionPadding
71
74
  } from "../chunk-YYYVS7CX.js";
72
- import "../chunk-G3GRYDMS.js";
73
75
  import {
74
76
  PREFERS_REDUCED_MOTION_QUERY,
75
77
  useAutoplay,
@@ -82,7 +84,7 @@ import {
82
84
  useResetOnPageHidden,
83
85
  useSuppressCloneFocus,
84
86
  useVisitorOs
85
- } from "../chunk-CMZ3QTFQ.js";
87
+ } from "../chunk-4I3K6LEH.js";
86
88
  import "../chunk-34I6XI3N.js";
87
89
  import "../chunk-GY4IZG22.js";
88
90
  import {
@@ -92,7 +94,7 @@ import {
92
94
  useImageEdgeColor,
93
95
  useNearViewport,
94
96
  useOgPlaceholderUrl
95
- } from "../chunk-AGVXKD4K.js";
97
+ } from "../chunk-FSQQZFVG.js";
96
98
  import "../chunk-E4ABZWTJ.js";
97
99
  import {
98
100
  CONTENT_BREAKPOINTS,
@@ -153,6 +155,7 @@ export {
153
155
  isScalarType,
154
156
  mergeDefaults,
155
157
  mergeVariables,
158
+ resetDownloadsStore,
156
159
  resolveActiveSection,
157
160
  setNestedValue,
158
161
  shouldIncludeInUrl,
@@ -176,6 +179,7 @@ export {
176
179
  useCursorPaginationState,
177
180
  useDebounce,
178
181
  useDeferredError,
182
+ useDownloads,
179
183
  useDragAndDropEnabled,
180
184
  useFocusTrap,
181
185
  useFormRescue,
@@ -218,6 +222,7 @@ export {
218
222
  useThrottle,
219
223
  useToast,
220
224
  useValidatePlatform,
225
+ useVisitorDesktopDownload,
221
226
  useVisitorOs,
222
227
  useWindowSize,
223
228
  validateSchema,
@@ -0,0 +1,41 @@
1
+ import { type AppDownload, type DownloadsPublic } from '../types/downloads';
2
+ export interface DownloadsState {
3
+ /** The server's answer; null until it lands. */
4
+ data: DownloadsPublic | null;
5
+ isLoading: boolean;
6
+ error: boolean;
7
+ }
8
+ /** Test seam: forget every answer. */
9
+ export declare function resetDownloadsStore(): void;
10
+ export interface UseDownloadsOptions {
11
+ /** GET endpoint for the public projection. Default `DOWNLOADS_API_PATH`; embedders pass their proxy path. */
12
+ endpoint?: string;
13
+ /** The server's copy (a host that read it during SSR): no request is made. */
14
+ initialData?: DownloadsPublic;
15
+ /** False: nothing is requested (a host that does not offer the desktop app). Default true. */
16
+ enabled?: boolean;
17
+ }
18
+ /**
19
+ * What the OpenFrame desktop app is installed from, read FROM THE SERVER
20
+ * (`GET /api/downloads`). The links and package names live in the server's
21
+ * environment; no client holds a copy of its own. Every caller on a page shares
22
+ * one request.
23
+ */
24
+ export declare function useDownloads({ endpoint, initialData, enabled }?: UseDownloadsOptions): {
25
+ data: DownloadsPublic | null;
26
+ isLoading: boolean;
27
+ error: boolean;
28
+ reload: () => void;
29
+ };
30
+ export interface VisitorDesktopDownload {
31
+ /** False until the visitor's system AND the server's list are both known. */
32
+ known: boolean;
33
+ /** This visitor's installer (the first one for their system); null when nothing installs on it. */
34
+ download: AppDownload | null;
35
+ }
36
+ /**
37
+ * The installer a download button offers THIS visitor: the server's first
38
+ * installer for the system they are on. `enabled: false` asks for nothing.
39
+ */
40
+ export declare function useVisitorDesktopDownload(options?: UseDownloadsOptions): VisitorDesktopDownload;
41
+ //# sourceMappingURL=use-downloads.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-downloads.d.ts","sourceRoot":"","sources":["../../src/hooks/use-downloads.ts"],"names":[],"mappings":"AAGA,OAAO,EAAsB,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAKhG,MAAM,WAAW,cAAc;IAC7B,gDAAgD;IAChD,IAAI,EAAE,eAAe,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AA+CD,sCAAsC;AACtC,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED,MAAM,WAAW,mBAAmB;IAClC,6GAA6G;IAC7G,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,8FAA8F;IAC9F,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,EAAE,QAA6B,EAAE,WAAW,EAAE,OAAc,EAAE,GAAE,mBAAwB;;;;;EAoCpH;AAED,MAAM,WAAW,sBAAsB;IACrC,6EAA6E;IAC7E,KAAK,EAAE,OAAO,CAAC;IACf,mGAAmG;IACnG,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,GAAE,mBAAwB,GAAG,sBAAsB,CAQnG"}