@bendyline/gezel-service 1.1.1 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/dist/NOTICE.md +3 -3
  2. package/dist/bin/gezeld.js +8471 -5311
  3. package/dist/handboek-content/technical/building-connected-apps-with-gezel-app-sdk.md +78 -0
  4. package/dist/handboek-content/whats-new/{1.26250.md → 1.26251.md} +5 -5
  5. package/dist/index-store/static-index-worker.js +160 -51
  6. package/dist/index.d.ts +416 -71
  7. package/dist/index.js +8465 -5305
  8. package/dist/memory/embed-worker.js +132 -4
  9. package/dist/memory/image-embed-worker.js +14 -5
  10. package/dist/providers/mlx/python/cache_persist.py +52 -8
  11. package/dist/providers/mlx/python/gezel_mlx_server.py +44 -1
  12. package/dist/providers/mlx/python/qwen4_ple.py +159 -0
  13. package/dist/providers/mlx/python/spec_decode.py +73 -31
  14. package/dist/providers/mlx/python/tool_call_stream.py +10 -2
  15. package/dist/providers/mlx/python/tool_grammar.py +16 -0
  16. package/dist/ui/assets/{AmbientDashboardCard-DcVHxEdC.js → AmbientDashboardCard-_xnAQGnk.js} +1 -1
  17. package/dist/ui/assets/{AudioEngineSettings-BFM2S1mm.js → AudioEngineSettings-CgXgbX0i.js} +1 -1
  18. package/dist/ui/assets/{BenchmarksView-84-YeULA.js → BenchmarksView-BlExZpYA.js} +1 -1
  19. package/dist/ui/assets/CatalogBrowser-DYXUZQ_t.js +1 -0
  20. package/dist/ui/assets/{ChannelsSettings-7NAVUk4k.js → ChannelsSettings-EH27HcqZ.js} +1 -1
  21. package/dist/ui/assets/ChatTimelineView-Dn1TNyVn.js +7 -0
  22. package/dist/ui/assets/{ConnectedAppsPanel-CIgF4Q3R.js → ConnectedAppsPanel-BROry-Y0.js} +1 -1
  23. package/dist/ui/assets/CraftbookEditor-B2RNJnFf.js +1 -0
  24. package/dist/ui/assets/{CraftbookScriptEditorView-Ck5tzj3Y.js → CraftbookScriptEditorView-B-vySmHP.js} +1 -1
  25. package/dist/ui/assets/{CraftbookTabContent-BWg7FhK_.js → CraftbookTabContent-BW_2KC89.js} +1 -1
  26. package/dist/ui/assets/{CraftbookToolsetSetup-EuFOiUzR.js → CraftbookToolsetSetup-J7rEa835.js} +1 -1
  27. package/dist/ui/assets/{CraftbooksView-BIzQ1VVn.js → CraftbooksView-BjBUWPGF.js} +1 -1
  28. package/dist/ui/assets/DiffpackReviewView-CD4qJmgT.js +1 -0
  29. package/dist/ui/assets/DocumentDetail-SYozruTJ.js +1 -0
  30. package/dist/ui/assets/DocumentsView-DE7eL49Z.js +1 -0
  31. package/dist/ui/assets/{Ds4Settings-9soZCSeO.js → Ds4Settings-DGzc7JcD.js} +1 -1
  32. package/dist/ui/assets/{EmbeddedChat-Cce7nxXT.js → EmbeddedChat-D92TaJQ8.js} +1 -1
  33. package/dist/ui/assets/{FaceRecognitionCard-BVZyOwB8.js → FaceRecognitionCard-CB1Dt9X4.js} +1 -1
  34. package/dist/ui/assets/FileMapView-kVBG22FU.js +1 -0
  35. package/dist/ui/assets/FoldersSettings-BWFQU5B4.js +1 -0
  36. package/dist/ui/assets/GezelDetail-Br4v42Nv.js +1 -0
  37. package/dist/ui/assets/{GezelJsonEditor-DXXt165-.js → GezelJsonEditor-B9XEiW5Y.js} +1 -1
  38. package/dist/ui/assets/GezellenView-DheEBAy4.js +1 -0
  39. package/dist/ui/assets/{GildeUpdatesCard-CtY8mUTA.js → GildeUpdatesCard-BeIYv09f.js} +1 -1
  40. package/dist/ui/assets/{GithubSignInChip-DT3l6E0Q.js → GithubSignInChip-eEGCe9ar.js} +1 -1
  41. package/dist/ui/assets/{HandboekMediaProvider-ByJ4NAzz.js → HandboekMediaProvider-D0zcbbpf.js} +1 -1
  42. package/dist/ui/assets/HandboekView-p0BZT1rH.js +1 -0
  43. package/dist/ui/assets/{HistoryView-CkinzFEC.js → HistoryView-CKWcWW-Y.js} +1 -1
  44. package/dist/ui/assets/{HomeView-DNBrQnwy.js → HomeView-b_TT5oV3.js} +1 -1
  45. package/dist/ui/assets/{ImageEngineSettings-BfM9HSd_.js → ImageEngineSettings-CJfk4OJ4.js} +1 -1
  46. package/dist/ui/assets/{ImageRecognitionSettings-CaSQu5Br.js → ImageRecognitionSettings-DzbvZk5S.js} +1 -1
  47. package/dist/ui/assets/{IncompleteDownloads-C36lTCMG.js → IncompleteDownloads-C8_XyP8O.js} +1 -1
  48. package/dist/ui/assets/{KnowledgeCatalogsCard-CK9bqdf6.js → KnowledgeCatalogsCard-CHopG_j-.js} +1 -1
  49. package/dist/ui/assets/KnowledgeView-CXNKZUJq.js +1 -0
  50. package/dist/ui/assets/{LlamaCppSettings-CdNMHBbp.js → LlamaCppSettings-ohcM7kes.js} +1 -1
  51. package/dist/ui/assets/{MarkdownField-Dugmfr_e.js → MarkdownField-BX0qsaFq.js} +1 -1
  52. package/dist/ui/assets/{MemoriesTree-CgFqUNEr.js → MemoriesTree-BPj5Rod8.js} +1 -1
  53. package/dist/ui/assets/{MicrophoneSettings-DzDe9y1q.js → MicrophoneSettings-CWjeYnfI.js} +1 -1
  54. package/dist/ui/assets/MlxSettings-Dq6dRpcl.js +1 -0
  55. package/dist/ui/assets/{ModelPicker-BVkJhNAH.js → ModelPicker-0Ue-eEKj.js} +1 -1
  56. package/dist/ui/assets/NewPathDialog-BhAZm9dp.js +1 -0
  57. package/dist/ui/assets/{NewScriptDialog-TEAd0KLl.js → NewScriptDialog-DuryIe50.js} +1 -1
  58. package/dist/ui/assets/NewTaskDialog-BX24flMY.js +2 -0
  59. package/dist/ui/assets/{OllamaSettings-CPy2vxyZ.js → OllamaSettings-Boj8Nd1G.js} +1 -1
  60. package/dist/ui/assets/ProjectChat-Dhw_M5bq.js +5 -0
  61. package/dist/ui/assets/ProjectConnectionsTab-BwpMQNrg.js +1 -0
  62. package/dist/ui/assets/{ProjectGitStatusBar-BgHZ2ijN.js → ProjectGitStatusBar-BORGYx5l.js} +1 -1
  63. package/dist/ui/assets/{ProjectGithubView-BV2uTNU0.js → ProjectGithubView-CTP1BOMv.js} +1 -1
  64. package/dist/ui/assets/{ProjectMailTab-DLtJdXSL.js → ProjectMailTab-qFmAeV3M.js} +1 -1
  65. package/dist/ui/assets/{ProjectOverviewView-ZMs9nL5N.js → ProjectOverviewView-Cq1FsoaT.js} +1 -1
  66. package/dist/ui/assets/{ProjectTimeline-CTPcn4Kc.js → ProjectTimeline-Cqae2Z92.js} +1 -1
  67. package/dist/ui/assets/ProjectsView-D0uJjUB-.js +7 -0
  68. package/dist/ui/assets/{RecommendedBadge-iUoisQBi.js → RecommendedBadge-CN1jEmSn.js} +1 -1
  69. package/dist/ui/assets/{RemoteServersPanel-CTVJ0IRh.js → RemoteServersPanel-CMakvCCM.js} +1 -1
  70. package/dist/ui/assets/{ScriptEditorTabs-CCDFZjdC.js → ScriptEditorTabs-st6dJePd.js} +2 -2
  71. package/dist/ui/assets/{ScriptEditorView-CergLqKj.js → ScriptEditorView-BkySh57_.js} +2 -2
  72. package/dist/ui/assets/{ScriptsView-v7ckdhDi.js → ScriptsView-7uPKwjDB.js} +1 -1
  73. package/dist/ui/assets/{SecurityComplianceSettings-Bd0-66Gs.js → SecurityComplianceSettings-Tsv_pXfy.js} +1 -1
  74. package/dist/ui/assets/SessionSwitcher-D0fSeeHO.js +1 -0
  75. package/dist/ui/assets/SettingsView-cli_z8ZW.js +3 -0
  76. package/dist/ui/assets/{SquisqIntegration-C5l_OPvD.js → SquisqIntegration-BTZ1kBlg.js} +1 -1
  77. package/dist/ui/assets/{StorageCleanupDialog-3kv9-2mT.js → StorageCleanupDialog-CDBjl8JQ.js} +1 -1
  78. package/dist/ui/assets/{StorageUsageCard-7sWTrZFa.js → StorageUsageCard-DXY1j0dZ.js} +1 -1
  79. package/dist/ui/assets/TaskTabContent-C0P681SL.js +1 -0
  80. package/dist/ui/assets/TasksView-Ddwz10ri.js +1 -0
  81. package/dist/ui/assets/{TerminalCodeEditor-ChmdzmCz.js → TerminalCodeEditor-BkNQ6QoQ.js} +2 -2
  82. package/dist/ui/assets/ToolsetsEditor-KVigemfL.js +8 -0
  83. package/dist/ui/assets/{TransformToolbarButton-gzIxUBH7.js → TransformToolbarButton-8wfJR1bO.js} +2 -2
  84. package/dist/ui/assets/{UnrecognizedModels-0hptopv6.js → UnrecognizedModels-BzdU1clO.js} +1 -1
  85. package/dist/ui/assets/{VideoEngineSettings-BdNzCEdR.js → VideoEngineSettings-f79ff57u.js} +1 -1
  86. package/dist/ui/assets/{WorkspaceIndexPane-DnsOO916.js → WorkspaceIndexPane-fu5V6o1W.js} +1 -1
  87. package/dist/ui/assets/{api-C0I7spBl.js → api-CmrgM5Rf.js} +1 -1
  88. package/dist/ui/assets/chat-thread-memory-8MCtb17Q.js +1 -0
  89. package/dist/ui/assets/{chunk-6ECMNUIP-BvCy0HUI.js → chunk-6ECMNUIP-D5AA6ozp.js} +1 -1
  90. package/dist/ui/assets/{chunk-A6N6IN3I-ofeM4l8g.js → chunk-A6N6IN3I-BpxihS5H.js} +1 -1
  91. package/dist/ui/assets/{chunk-ATWVNF7D-CYuW1Yc6.js → chunk-ATWVNF7D-CKIWh7bN.js} +1 -1
  92. package/dist/ui/assets/{chunk-UBFT2CDQ-FexGDigd.js → chunk-CW24CH7I-BD0FIooX.js} +1 -1
  93. package/dist/ui/assets/{chunk-DXYWKZ52-zxe8pjH4.js → chunk-DXYWKZ52-DMKPZnpo.js} +1 -1
  94. package/dist/ui/assets/chunk-IIQYS2YH-BtDJt4Xr.js +1 -0
  95. package/dist/ui/assets/{chunk-KGWT454C-v5-l6U5m.js → chunk-KGWT454C-DsQOBuLg.js} +1 -1
  96. package/dist/ui/assets/{chunk-Q77KNJIN-BLuPdsQF.js → chunk-Q77KNJIN-BdWizq9s.js} +1 -1
  97. package/dist/ui/assets/{chunk-USU6HTKB-B_p-YcDp.js → chunk-USU6HTKB-DyGZplh4.js} +1 -1
  98. package/dist/ui/assets/{chunk-UXEANVBI-Bt0kX-0Z.js → chunk-UXEANVBI-BUBXvqyE.js} +1 -1
  99. package/dist/ui/assets/{chunk-O7JILDEF-CqcO1qaI.js → chunk-X7BNDUNI-D14WIvlD.js} +2 -2
  100. package/dist/ui/assets/{chunk-AE3IUKMM-mZjzzO8Z.js → chunk-ZSU5DJLX-CrjQf-vs.js} +1 -1
  101. package/dist/ui/assets/{container-BI8hxN1N.js → container-iFj1r6Hk.js} +1 -1
  102. package/dist/ui/assets/csv-Di411Mv-.js +1 -0
  103. package/dist/ui/assets/data-Q05qqAp4.js +1 -0
  104. package/dist/ui/assets/{dist-APSIK7H3.js → dist-1FNFiksd.js} +3 -3
  105. package/dist/ui/assets/dist-BMZhqfv7.js +2 -0
  106. package/dist/ui/assets/dist-CE5CbmDb.js +225 -0
  107. package/dist/ui/assets/doc-BHcGsJZd.js +587 -0
  108. package/dist/ui/assets/{document-import-DPK4r8Am.js → document-import-B2Ya6sbf.js} +1 -1
  109. package/dist/ui/assets/{docx-DRLuCTaC.js → docx-B8Pwz5Ih.js} +1 -1
  110. package/dist/ui/assets/{epub-a0p2Xb1b.js → epub-BQ4g8Q9j.js} +1 -1
  111. package/dist/ui/assets/{export-options-BqYFyzWx.js → export-options-Dylv69b3.js} +1 -1
  112. package/dist/ui/assets/file-browser-BLOPfnS0.js +5 -0
  113. package/dist/ui/assets/{html-BbQNmJ5X.js → html-BnA7qFwq.js} +1 -1
  114. package/dist/ui/assets/icons-CyM7Cg4E.js +1 -0
  115. package/dist/ui/assets/index-DW6qHqhU.css +1 -0
  116. package/dist/ui/assets/index-DivKnJyx.js +36 -0
  117. package/dist/ui/assets/{mail-link-CWfsP5Aq.js → mail-link-NtlcX5OE.js} +1 -1
  118. package/dist/ui/assets/{markdown-ryKA_OmY.js → markdown-CLKH_zzl.js} +1 -1
  119. package/dist/ui/assets/markdown-baseline-0dqv9qbV.js +1 -0
  120. package/dist/ui/assets/materialize-G4WC5UG3-xq2dcwS8.js +1 -0
  121. package/dist/ui/assets/{monaco-base-C0VTMpv-.js → monaco-base-BSvdAweA.js} +1 -1
  122. package/dist/ui/assets/{monaco-setup-CX8q88c5.js → monaco-setup-CT7LZ0o_.js} +1 -1
  123. package/dist/ui/assets/{new-project-meta-ZmDPGYzC.js → new-project-meta-5Y9Blozr.js} +1 -1
  124. package/dist/ui/assets/outside-in-Msmhxf_U.js +3 -0
  125. package/dist/ui/assets/{pdf-BHrygJa5.js → pdf-C4BhW3zg.js} +1 -1
  126. package/dist/ui/assets/{pending-drafts-27ujtQxX.js → pending-drafts-BD227X9H.js} +1 -1
  127. package/dist/ui/assets/{poppetje-CfaAvFkE.js → poppetje-DvCJO36y.js} +3 -3
  128. package/dist/ui/assets/{pptx-nDW64jAN.js → pptx-B6uaM2s7.js} +3 -3
  129. package/dist/ui/assets/{run-export-86KzLZ7R.js → run-export-TscWwR6y.js} +2 -2
  130. package/dist/ui/assets/{standalone-source-7QdiNsDW.js → standalone-source-Cw9SF7Zk.js} +1 -1
  131. package/dist/ui/assets/storage-Cmhlwx70.js +1 -0
  132. package/dist/ui/assets/styles-BjDaWeMA.css +1 -0
  133. package/dist/ui/assets/styles-CqO-rmOt.js +554 -0
  134. package/dist/ui/assets/{terminal-monaco-setup-Bar-sYKd.js → terminal-monaco-setup-me523-j-.js} +1 -1
  135. package/dist/ui/assets/{transform-CmAXy0Ck.js → transform-DxJCwK68.js} +1 -1
  136. package/dist/ui/assets/{use-local-model-manager-D1yiurrC.js → use-local-model-manager-8wvk-I-y.js} +1 -1
  137. package/dist/ui/assets/{useCompactLayout-BDtPQcDh.js → useCompactLayout-cm4E9Vja.js} +0 -0
  138. package/dist/ui/assets/{useCopilotAvailability-BHOfHrfT.js → useCopilotAvailability-D9hglSH_.js} +1 -1
  139. package/dist/ui/assets/{useDiffpacks-B0kYhlWQ.js → useDiffpacks-1BN2XJWg.js} +1 -1
  140. package/dist/ui/assets/{useGitSync-DOt-ODiw.js → useGitSync-7m9YA7h5.js} +1 -1
  141. package/dist/ui/assets/{useShowWorkInProgressFeatures-BtpredG7.js → useShowWorkInProgressFeatures-D6QOaTUT.js} +1 -1
  142. package/dist/ui/assets/{useTotalRamBytes-B8NFM27w.js → useTotalRamBytes-Durk383U.js} +1 -1
  143. package/dist/ui/assets/{xlsx-B_pu1ZvY.js → xlsx-BbHA9bxA.js} +1 -1
  144. package/dist/ui/index.html +15 -15
  145. package/package.json +12 -11
  146. package/dist/ui/assets/CatalogBrowser-7_jHy5Q3.js +0 -1
  147. package/dist/ui/assets/ChatTimelineView-Cg_kLK_U.js +0 -7
  148. package/dist/ui/assets/CraftbookEditor-BKAIsnXv.js +0 -1
  149. package/dist/ui/assets/DiffpackReviewView-B2a3zgE-.js +0 -1
  150. package/dist/ui/assets/DocumentDetail-GCYhwQqV.js +0 -1
  151. package/dist/ui/assets/DocumentsView-Cm3RaQ5N.js +0 -1
  152. package/dist/ui/assets/FileMapView-BKJovLcL.js +0 -1
  153. package/dist/ui/assets/FoldersSettings-CuJd2JdE.js +0 -1
  154. package/dist/ui/assets/GezelDetail-D_KIPDhQ.js +0 -1
  155. package/dist/ui/assets/GezellenView-BOOW1QQU.js +0 -1
  156. package/dist/ui/assets/HandboekView-gRzJcIbJ.js +0 -1
  157. package/dist/ui/assets/KnowledgeView-DJ3cJVHA.js +0 -1
  158. package/dist/ui/assets/MlxSettings-45mBFHbA.js +0 -1
  159. package/dist/ui/assets/NewTaskDialog-CIXVunZn.js +0 -2
  160. package/dist/ui/assets/ProjectChat-BiJRweob.js +0 -5
  161. package/dist/ui/assets/ProjectConnectionsTab-CQgaIzuv.js +0 -1
  162. package/dist/ui/assets/ProjectsView-BUdR76n6.js +0 -7
  163. package/dist/ui/assets/SessionSwitcher-BgZqyiRn.js +0 -1
  164. package/dist/ui/assets/SettingsView-DLhOYiR5.js +0 -3
  165. package/dist/ui/assets/TaskTabContent-CG2KmfwV.js +0 -1
  166. package/dist/ui/assets/TasksView-Dy5Ue4zS.js +0 -1
  167. package/dist/ui/assets/ToolsetsEditor-J9XxQ5Ms.js +0 -8
  168. package/dist/ui/assets/chat-thread-memory-CI2-giEq.js +0 -1
  169. package/dist/ui/assets/chunk-IIQYS2YH-DEkyBlHg.js +0 -1
  170. package/dist/ui/assets/csv-B0D9jJG2.js +0 -1
  171. package/dist/ui/assets/data-BIL84EaT.js +0 -1
  172. package/dist/ui/assets/dist-CJqyWK6E.js +0 -2
  173. package/dist/ui/assets/dist-DOqbRmFj.js +0 -225
  174. package/dist/ui/assets/doc-C2Ph2FWI.js +0 -584
  175. package/dist/ui/assets/document-companion-aDThLOwl.js +0 -1
  176. package/dist/ui/assets/file-browser-DVyWN0LD.js +0 -5
  177. package/dist/ui/assets/icons-DWaUNQbT.js +0 -1
  178. package/dist/ui/assets/index-DDu8nyO6.js +0 -34
  179. package/dist/ui/assets/index-DEDUSiCx.css +0 -1
  180. package/dist/ui/assets/markdown-baseline-9B52XlX2.js +0 -1
  181. package/dist/ui/assets/materialize-G4WC5UG3-BlZQe-88.js +0 -1
  182. package/dist/ui/assets/outside-in-BmIIeMid.js +0 -3
  183. package/dist/ui/assets/storage-B-vhjyV2.js +0 -1
  184. package/dist/ui/assets/styles-BvkZd-EV.js +0 -550
  185. package/dist/ui/assets/styles-IQ4adxWr.css +0 -1
@@ -1 +1 @@
1
- import{m as e}from"./doc-C2Ph2FWI.js";import"./markdown-ryKA_OmY.js";function t(e,t){return((e??``).split(/[\\/]/).pop()?.trim()??``)||t}function n(e){return e.replace(/\.[^.]+$/,``).normalize(`NFKD`).replace(/\p{Mark}+/gu,``).toLocaleLowerCase(`en-US`).replace(/[^\p{Letter}\p{Number}]+/gu,`-`).replace(/^-+|-+$/g,``)||`document`}function r(r,i){let a=t(r,i),o=n(a);return{slug:o,markdownFilename:`${o}.md`,fileName:a,sidecarPath:`${e(o)}${a}`}}function i(e){return{type:`document`,children:[{type:`heading`,depth:1,children:[{type:`text`,value:e.fileName.replace(/\.[^.]+$/,``)}],templateAnnotation:{template:`dataTable`,params:{src:e.sidecarPath}}},{type:`paragraph`,children:[{type:`link`,url:e.sidecarPath,children:[{type:`text`,value:e.fileName}]}]}]}}export{i,r as n,t as r,n as t};
1
+ import{m as e}from"./doc-BHcGsJZd.js";import"./markdown-CLKH_zzl.js";function t(e,t){return((e??``).split(/[\\/]/).pop()?.trim()??``)||t}function n(e){return e.replace(/\.[^.]+$/,``).normalize(`NFKD`).replace(/\p{Mark}+/gu,``).toLocaleLowerCase(`en-US`).replace(/[^\p{Letter}\p{Number}]+/gu,`-`).replace(/^-+|-+$/g,``)||`document`}function r(r,i){let a=t(r,i),o=n(a);return{slug:o,markdownFilename:`${o}.md`,fileName:a,sidecarPath:`${e(o)}${a}`}}function i(e){return{type:`document`,children:[{type:`heading`,depth:1,children:[{type:`text`,value:e.fileName.replace(/\.[^.]+$/,``)}],templateAnnotation:{template:`dataTable`,params:{src:e.sidecarPath}}},{type:`paragraph`,children:[{type:`link`,url:e.sidecarPath,children:[{type:`text`,value:e.fileName}]}]}]}}export{i,r as n,t as r,n as t};
@@ -0,0 +1 @@
1
+ import{W as e}from"./index-DivKnJyx.js";import"./storage-Cmhlwx70.js";async function t(t,n){let r=new e;await r.writeDocument(t);for(let[e,{data:t,mimeType:i}]of n)await r.writeFile(e,new Uint8Array(t),i);return r}export{t};
@@ -1,4 +1,4 @@
1
- import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,t as n}from"./jsx-runtime-CEpd2cAX.js";import{t as r}from"./react-dom-OL4w_gzs.js";import{C as i,I as a,P as o,Q as s,S as c,Z as l,ft as u,gt as d,j as f,pt as p,st as m}from"./doc-C2Ph2FWI.js";import{f as h,n as g,o as _}from"./chunk-BAOV476U-CEOFYt8X.js";import{o as v,s as y}from"./chunk-4VOD55SX-BFSSw0c8.js";import{O as b,d as x,n as S,o as C,r as w}from"./chunk-GAZKTT4R-w1SNypWQ.js";import{n as T}from"./chunk-UBFT2CDQ-FexGDigd.js";import{c as E,s as ee}from"./markdown-ryKA_OmY.js";import{a as D,i as O,o as k}from"./schemas-BvLZUsGm.js";import{Q as te,R as A,V as j,X as M,Z as ne,z as re}from"./chunk-6ECMNUIP-BvCy0HUI.js";import{t as ie}from"./chunk-TT6ENR6T-BOA-qiwP.js";var N=e(t(),1);function P(e,t){return{renderClips:e,activeIds:(0,N.useMemo)(()=>{let n=new Set;for(let r of e)t>=r.absoluteStart&&t<r.absoluteEnd&&n.add(r.id);return n},[e,t])}}function ae(e){if(!e?.length)return{segmentStarts:[],totalDuration:0};let t=0;return{segmentStarts:e.map(e=>{let n=t;return t+=e.duration,n}),totalDuration:t}}function oe(e,t,n){if(!t?.length)return{segmentIndex:0,segmentStart:0};let r=0,i=0;for(let a=0;a<t.length;a++){if(e<n[a]+t[a].duration){r=a,i=n[a];break}a===t.length-1&&(r=a,i=n[a])}return{segmentIndex:r,segmentStart:i}}var se=15e3,ce=`Audio could not be loaded. Check that the media file is available.`;function le(e,t){return!e||/^(?:[a-z][a-z0-9+.-]*:|\/\/|\/)/i.test(e)||!t?e:`${t.replace(/\/$/,``)}/${e.replace(/^\//,``)}`}function F(e,t,n=``,r=!0,i=`media`,a=0){let o=(0,N.useMemo)(()=>i!==`synthetic`||t?.segments?.length||a<=0?t:{...t,segments:[{src:``,name:`synthetic`,duration:a,startTime:0}]},[t,i,a]),s=te(),[c,l]=(0,N.useState)(0),[u,d]=(0,N.useState)(!1),[f,p]=(0,N.useState)(0),[m,h]=(0,N.useState)(!1),[g,_]=(0,N.useState)(!1),[v,y]=(0,N.useState)(0),[b,x]=(0,N.useState)(!0),[S,C]=(0,N.useState)(),w=(0,N.useRef)([]),T=(0,N.useRef)(null),D=(0,N.useRef)(null),O=(0,N.useRef)(!1),k=(0,N.useRef)(new Map),A=(0,N.useRef)(new Map),j=(0,N.useRef)(new Set),M=(0,N.useRef)(0),ne=(0,N.useRef)(void 0);ne.current=o?.segments[f]?.src;let re=(0,N.useRef)(null),ie=(0,N.useRef)(0);ie.current=f;let P=(0,N.useRef)(!1);(0,N.useEffect)(()=>{if(M.current+=1,T.current=null,D.current?.(),D.current=null,O.current=!1,P.current=!1,re.current=null,l(0),p(0),d(!1),h(!1),_(!1),x(!0),C(void 0),!r||!o?.segments){w.current=[],y(0);return}let e=ae(o.segments);w.current=e.segmentStarts,y(e.totalDuration),i===`synthetic`&&_(!0)},[o,r,i]);let F=(0,N.useCallback)(async e=>{let t=le(e,n);if(!E(t,s))return``;if(k.current.has(e)){let t=k.current.get(e);return k.current.delete(e),k.current.set(e,t),t}if(A.current.has(e))return A.current.get(e);let r=new AbortController;j.current.add(r);let i=M.current,a=(async()=>{try{let n=await ee(t,{policy:s,signal:r.signal,contentTypePrefixes:[`audio/`,`video/`,`application/octet-stream`]}),a=new Blob([n.bytes.slice().buffer],{type:n.contentType||`application/octet-stream`}),o=URL.createObjectURL(a);if(r.signal.aborted||i!==M.current)return URL.revokeObjectURL(o),t;for(k.current.set(e,o);k.current.size>2;){let e=[...k.current.entries()].find(([e])=>e!==ne.current)??k.current.entries().next().value;if(!e)break;k.current.delete(e[0]),URL.revokeObjectURL(e[1])}return o}catch{return``}})();return A.current.set(e,a),a.then(()=>{j.current.delete(r),A.current.get(e)===a&&A.current.delete(e)}),a},[n,s]);(0,N.useEffect)(()=>{if(!r||!o?.segments)return;let e=k.current,t=j.current,n=A.current;return()=>{M.current+=1,t.forEach(e=>e.abort()),t.clear(),n.clear(),e.forEach(e=>{URL.revokeObjectURL(e)}),e.clear()}},[o,F,r]),(0,N.useEffect)(()=>{if(!r||i===`synthetic`)return;let e=o?.segments[f];e&&F(e.src)},[o,f,r,i,F]),(0,N.useEffect)(()=>{if(!r||i===`synthetic`)return;let t=e.current;if(!t)return;let n=()=>{if(P.current)return;let e=(w.current[f]||0)+t.currentTime;l(e)},a=()=>{d(!0)},s=()=>d(!1),c=()=>{_(!0),d(!1),x(!1),C(ce),O.current=!1,T.current!==null&&(l(T.current),T.current=null),D.current?.(),D.current=null},u=()=>{o&&f<o.segments.length-1?(O.current=!0,p(e=>e+1)):(h(!0),d(!1))};return t.addEventListener(`timeupdate`,n),t.addEventListener(`play`,a),t.addEventListener(`pause`,s),t.addEventListener(`ended`,u),t.addEventListener(`error`,c),()=>{t.removeEventListener(`timeupdate`,n),t.removeEventListener(`play`,a),t.removeEventListener(`pause`,s),t.removeEventListener(`ended`,u),t.removeEventListener(`error`,c)}},[e,f,o,r,i]),(0,N.useEffect)(()=>{if(!r||i===`synthetic`)return;let t=e.current;if(!t||!o?.segments)return;let n=o.segments[f];if(!n)return;let a=()=>{if(T.current!==null){let e=w.current[f]||0,n=T.current-e;t.currentTime=Math.max(0,n),l(T.current),T.current=null,D.current?.(),D.current=null}O.current&&=(t.play().catch(e=>{d(!1),e instanceof Error&&e.name===`NotAllowedError`||(x(!1),C(`Audio playback failed. Check that the media file is supported and available.`))}),!1)},s=t.src,c=re.current,u=!!s&&c?.key===n.src&&c.url===s,p=!1,m=null;return u?a():(async()=>{let e=await F(n.src);if(!p){if(!e){t.removeAttribute(`src`),t.load(),re.current=null,O.current=!1,_(!0),d(!1),x(!1),C(ce),T.current!==null&&(l(T.current),T.current=null),D.current?.(),D.current=null;return}m=()=>{p||(_(!0),a(),m&&t.removeEventListener(`canplay`,m))},t.addEventListener(`canplay`,m),t.src=e,re.current={key:n.src,url:t.src},t.load(),await Promise.resolve(),t.readyState>=3&&(m&&t.removeEventListener(`canplay`,m),_(!0),a())}})(),()=>{p=!0,m&&t.removeEventListener(`canplay`,m)}},[e,f,o,F,r,i]);let ue=(0,N.useCallback)(async t=>{let n=e.current;if(!o?.segments)return;let r=v>0?Math.max(0,Math.min(t,v)):Math.max(0,t),a=w.current.length===o.segments.length?w.current:ae(o.segments).segmentStarts,{segmentIndex:s,segmentStart:c}=oe(r,o.segments,a),d=i===`synthetic`?u:!n?.paused;if(h(!1),!n&&i===`media`){p(s),l(r);return}if(s!==ie.current){T.current=r,O.current=d;let e=new Promise(e=>{D.current?.();let t=!1,n=()=>{t||(t=!0,clearTimeout(r),D.current===n&&(D.current=null),e())},r=setTimeout(n,se);D.current=n});p(s),i===`synthetic`&&(l(r),T.current=null,D.current?.(),D.current=null),await e}else{let e=r-c;n&&i===`media`&&(n.currentTime=Math.max(0,e)),l(r)}},[e,o,u,i,v]),I=(0,N.useCallback)(async()=>{if(i===`synthetic`){P.current=!0,d(!0);return}let t=e.current;if(t){m&&await ue(0);try{await t.play(),P.current=!1,x(!0),C(void 0)}catch(e){P.current=!1,d(!1),(e instanceof Error?e.name:``)!==`NotAllowedError`&&(x(!1),C(`Audio playback failed. Check that the media file is supported and available.`))}}},[e,m,i,ue]),L=(0,N.useCallback)(()=>{let t=e.current;t&&t.pause(),d(!1)},[e]),de=(0,N.useCallback)(()=>{!e.current&&i===`media`||(u?L():I())},[e,u,i,I,L]),R=(0,N.useCallback)(e=>{!o?.segments||e<0||e>=o.segments.length||(p(e),h(!1))},[o]),fe=(0,N.useCallback)(async()=>{await ue(0),await I()},[ue,I]);return(0,N.useEffect)(()=>{if(!u||!P.current||!v)return;let e=performance.now(),t,n=r=>{if(!P.current)return;let i=(r-e)/1e3;e=r,l(e=>{let t=e+i;return t>=v?(P.current=!1,h(!0),d(!1),v):t}),t=requestAnimationFrame(n)};return t=requestAnimationFrame(n),()=>cancelAnimationFrame(t)},[u,v]),{currentTime:c,isPlaying:u,currentSegment:f,totalDuration:v,isEnded:m,isReady:g,isAvailable:b,unavailableMessage:S,play:I,pause:async()=>L(),toggle:async()=>de(),seekTo:ue,skipToSegment:async e=>R(e),restart:fe}}function ue(e,t,n={}){let{viewport:r=g.landscape,theme:i,onSeek:a,useAudioSegmentTiming:o=!0}=n,c=(0,N.useMemo)(()=>{if(!e?.blocks)return[];let t=e.blocks.some(e=>e.children&&e.children.length>0)?m(e.blocks):e.blocks,n=t.some(h),a=i??C,c=d({persistentLayers:e.persistentLayers},a);return n?s(t,{audioSegments:o?e.audio?.segments?.map(e=>({startTime:e.startTime,duration:e.duration})):void 0,viewport:r,persistentLayers:c,theme:i,customTemplates:e.customTemplates}):t.map((e,t)=>{let n=v(e,a,t);return n===e.transition?e:{...e,transition:n}})},[e?.blocks,e?.audio?.segments,e?.persistentLayers,e?.customTemplates,r,i,o]),l=(0,N.useMemo)(()=>O(c,t),[c,t]),u=(0,N.useMemo)(()=>l?c.indexOf(l):-1,[c,l]),f=(0,N.useMemo)(()=>l?Math.max(0,t-l.startTime):0,[l,t]),p=(0,N.useMemo)(()=>!l||l.duration===0?0:Math.min(1,f/l.duration),[l,f]),_=(0,N.useMemo)(()=>!e||e.duration===0?0:Math.min(1,t/e.duration),[e,t]),b=(0,N.useRef)(null),x=(0,N.useRef)(null),S=(0,N.useRef)(null),w=(0,N.useRef)(null),T=(0,N.useCallback)(e=>{if(x.current===e){b.current=null,w.current=null;return}w.current=e},[]);l&&l.id!==x.current&&(b.current=w.current===l.id?null:S.current,w.current=null,x.current=l.id),S.current=l;let E=l?.transition?y(l.transition):0,ee=!!l&&E>0&&f<E,D=b.current,k=ee&&D!=null&&D.id!==l?.id,te=k?D:null,A=(0,N.useCallback)(t=>{if(!e||t<0||t>=c.length)return;let n=c[t];n&&a?.(n.startTime)},[e,c,a]);return{currentBlock:l,currentBlockIndex:u,previousBlock:te,isEntering:ee,isExiting:k,blockTime:f,blockProgress:p,docProgress:_,nextBlock:(0,N.useCallback)(()=>{if(u<c.length-1)return A(u+1)},[u,c.length,A]),prevBlock:(0,N.useCallback)(()=>{if(u>0)return A(u-1)},[u,A]),goToBlock:A,suppressOutgoingForNextBlock:T,blocks:c}}function I(e,t){let n=e/t;return n>1.2?`landscape`:n<.83?`portrait`:`square`}function L(e){switch(e){case`portrait`:return g.portrait;case`square`:return g.square;default:return g.landscape}}function de(){let[e,t]=(0,N.useState)(()=>({width:typeof window<`u`?window.innerWidth:1920,height:typeof window<`u`?window.innerHeight:1080}));(0,N.useEffect)(()=>{if(typeof window>`u`)return;let e=()=>{t({width:window.innerWidth,height:window.innerHeight})},n,r=()=>{clearTimeout(n),n=setTimeout(e,100)};return window.addEventListener(`resize`,r),()=>{window.removeEventListener(`resize`,r),clearTimeout(n)}},[]);let n=(0,N.useMemo)(()=>I(e.width,e.height),[e.width,e.height]);return{viewport:(0,N.useMemo)(()=>L(n),[n]),orientation:n,windowSize:e}}var R=n(),fe=e(r(),1),pe=.25;function me(e){return{position:`absolute`,inset:0,zIndex:e===`background`?0:10,pointerEvents:`none`}}function he(e){switch(e){case`top-left`:return{top:`4%`,left:`3%`};case`top-right`:return{top:`4%`,right:`3%`};case`bottom-left`:return{bottom:`6%`,left:`3%`};case`bottom-right`:return{right:`3%`,bottom:`6%`}}}function ge(e,t){return t===`portrait`?e===`large`?`23%`:`15%`:e===`large`?`15%`:`9%`}function _e({presentation:e,pipSize:t,pipShape:n,pipPosition:r,pipOrientation:i,pipFrameStyle:a,active:o}){let s={position:`absolute`,display:`block`,objectFit:`cover`,opacity:+!!o,visibility:o?`visible`:`hidden`,pointerEvents:`none`};return e===`picture-in-picture`?{...s,width:ge(t,i),aspectRatio:n===`wide`?`16 / 9`:`1`,...a,...he(r)}:{...s,inset:0,width:`100%`,height:`100%`}}function ve({schedule:e,currentTime:t,isPlaying:n,basePath:r,renderMode:i=!1,muted:a=!1,presentation:o=`background`,pipSize:s=`small`,pipShape:c=`square`,pipPosition:l=`bottom-right`,pipOrientation:u=`landscape`,pipFrameStyle:d,honorClipPresentation:f=!0}){let{renderClips:p,activeIds:m}=P(e,t);if(p.length===0)return null;let h=new Map;for(let e of p){let t=f&&e.kind===`video`?e.placement===`picture-in-picture`?`picture-in-picture`:e.placement===`overlay`?`full-frame`:o:o,n=e.pipSize??s,r=e.pipShape??c,i=e.pipPosition??l,a=`${t}:${n}:${r}:${i}`,u=h.get(a)??{presentation:t,pipSize:n,pipShape:r,pipPosition:i,clips:[]};u.clips.push(e),h.set(a,u)}return(0,R.jsx)(R.Fragment,{children:[...h].map(([e,o])=>(0,R.jsx)(`div`,{className:`doc-player__media-clips doc-player__media-clips--${o.presentation}`,"data-presentation":o.presentation,"data-pip-size":o.pipSize,"data-pip-shape":o.pipShape,"data-pip-position":o.pipPosition,"aria-hidden":!0,style:me(o.presentation),children:o.clips.map(e=>(0,R.jsx)(ye,{clip:e,active:m.has(e.id),currentTime:t,isPlaying:n,basePath:r,renderMode:i,muted:a,presentation:o.presentation,pipSize:o.pipSize,pipShape:o.pipShape,pipPosition:o.pipPosition,pipOrientation:u,pipFrameStyle:d},e.id))},e))})}function ye({clip:e,active:t,currentTime:n,isPlaying:r,basePath:i,renderMode:a,muted:o,presentation:s,pipSize:c,pipShape:l,pipPosition:u,pipOrientation:d,pipFrameStyle:f}){let p=(0,N.useRef)(null),m=ne(e.src,i);(0,N.useEffect)(()=>{let i=p.current;if(!i)return;if(!t){i.paused||i.pause();return}let o=Math.max(0,e.sourceIn+(n-e.absoluteStart));if(i.dataset.captureSequential!==`true`&&(a||!r||Math.abs(i.currentTime-o)>pe))try{i.currentTime=o}catch{}if(r&&!a){let e=i.play();e&&e.catch(()=>{})}else i.dataset.captureSequential!==`true`&&i.pause()},[t,n,r,a,e.sourceIn,e.absoluteStart,m]);let h=e.kind===`video`,g={ref:p,src:m,preload:`auto`,"data-clip-id":e.id,"data-active":t?`true`:`false`,"data-abs-start":e.absoluteStart,"data-abs-end":e.absoluteEnd,"data-source-in":e.sourceIn};return h?(0,R.jsx)(`video`,{...g,className:`doc-player__media-video${t?` doc-player__media-video--active`:``}`,"data-video-placement":e.placement??`default`,muted:a||o,playsInline:!0,style:_e({presentation:s,pipSize:c,pipShape:l,pipPosition:u,pipOrientation:d,pipFrameStyle:f,active:t})}):(0,R.jsx)(`audio`,{...g,muted:a||o,style:{position:`absolute`,width:0,height:0}})}var be=new Map,xe=8e3;async function Se(e,t,n,r){let i=!e||/^(?:[a-z][a-z0-9+.-]*:|\/\/|\/)/i.test(e),a=i?e:`${n.replace(/\/$/,``)}/${e}`,o=e=>E(e,r)?e:``;if(i||!t)return o(a);try{return o(await t.resolveUrl(e))}catch{return o(a)}}function Ce(e){return typeof document>`u`?Promise.resolve(null):new Promise(t=>{let n=document.createElement(`video`);n.preload=`metadata`,n.muted=!0,n.setAttribute(`playsinline`,``);let r=!1,i={},a=e=>{if(!r){r=!0,i.id!==void 0&&clearTimeout(i.id),n.removeEventListener(`durationchange`,s),n.removeEventListener(`timeupdate`,s),n.removeAttribute(`src`);try{n.load()}catch{}t(e)}},o=()=>{let e=n.duration;return Number.isFinite(e)&&e>0?(a(e),!0):!1},s=()=>{o()};n.addEventListener(`loadedmetadata`,()=>{if(!o()){n.addEventListener(`durationchange`,s),n.addEventListener(`timeupdate`,s);try{n.currentTime=1e101}catch{a(null)}}},{once:!0}),n.addEventListener(`error`,()=>a(null),{once:!0}),i.id=setTimeout(()=>a(null),xe),n.src=e})}function we(e,t,n){let r=M(),i=n===void 0?r:n,a=te(),o=(0,N.useMemo)(()=>{let t=new Set;for(let n of e)n.kind===`video`&&n.src&&t.add(n.src);return Array.from(t).sort().join(`
1
+ import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{n as t,t as n}from"./jsx-runtime-CEpd2cAX.js";import{t as r}from"./react-dom-OL4w_gzs.js";import{C as i,I as a,P as o,Q as s,S as c,Z as l,ft as u,gt as d,j as f,pt as p,st as m}from"./doc-BHcGsJZd.js";import{f as h,n as g,o as _}from"./chunk-BAOV476U-CEOFYt8X.js";import{o as v,s as y}from"./chunk-4VOD55SX-BFSSw0c8.js";import{O as b,d as x,n as S,o as C,r as w}from"./chunk-GAZKTT4R-w1SNypWQ.js";import{n as T}from"./chunk-CW24CH7I-BD0FIooX.js";import{c as E,s as ee}from"./markdown-CLKH_zzl.js";import{a as D,i as O,o as k}from"./schemas-BvLZUsGm.js";import{Q as te,R as A,V as j,X as M,Z as ne,z as re}from"./chunk-6ECMNUIP-D5AA6ozp.js";import{t as ie}from"./chunk-TT6ENR6T-BOA-qiwP.js";var N=e(t(),1);function P(e,t){return{renderClips:e,activeIds:(0,N.useMemo)(()=>{let n=new Set;for(let r of e)t>=r.absoluteStart&&t<r.absoluteEnd&&n.add(r.id);return n},[e,t])}}function ae(e){if(!e?.length)return{segmentStarts:[],totalDuration:0};let t=0;return{segmentStarts:e.map(e=>{let n=t;return t+=e.duration,n}),totalDuration:t}}function oe(e,t,n){if(!t?.length)return{segmentIndex:0,segmentStart:0};let r=0,i=0;for(let a=0;a<t.length;a++){if(e<n[a]+t[a].duration){r=a,i=n[a];break}a===t.length-1&&(r=a,i=n[a])}return{segmentIndex:r,segmentStart:i}}var se=15e3,ce=`Audio could not be loaded. Check that the media file is available.`;function le(e,t){return!e||/^(?:[a-z][a-z0-9+.-]*:|\/\/|\/)/i.test(e)||!t?e:`${t.replace(/\/$/,``)}/${e.replace(/^\//,``)}`}function F(e,t,n=``,r=!0,i=`media`,a=0){let o=(0,N.useMemo)(()=>i!==`synthetic`||t?.segments?.length||a<=0?t:{...t,segments:[{src:``,name:`synthetic`,duration:a,startTime:0}]},[t,i,a]),s=te(),[c,l]=(0,N.useState)(0),[u,d]=(0,N.useState)(!1),[f,p]=(0,N.useState)(0),[m,h]=(0,N.useState)(!1),[g,_]=(0,N.useState)(!1),[v,y]=(0,N.useState)(0),[b,x]=(0,N.useState)(!0),[S,C]=(0,N.useState)(),w=(0,N.useRef)([]),T=(0,N.useRef)(null),D=(0,N.useRef)(null),O=(0,N.useRef)(!1),k=(0,N.useRef)(new Map),A=(0,N.useRef)(new Map),j=(0,N.useRef)(new Set),M=(0,N.useRef)(0),ne=(0,N.useRef)(void 0);ne.current=o?.segments[f]?.src;let re=(0,N.useRef)(null),ie=(0,N.useRef)(0);ie.current=f;let P=(0,N.useRef)(!1);(0,N.useEffect)(()=>{if(M.current+=1,T.current=null,D.current?.(),D.current=null,O.current=!1,P.current=!1,re.current=null,l(0),p(0),d(!1),h(!1),_(!1),x(!0),C(void 0),!r||!o?.segments){w.current=[],y(0);return}let e=ae(o.segments);w.current=e.segmentStarts,y(e.totalDuration),i===`synthetic`&&_(!0)},[o,r,i]);let F=(0,N.useCallback)(async e=>{let t=le(e,n);if(!E(t,s))return``;if(k.current.has(e)){let t=k.current.get(e);return k.current.delete(e),k.current.set(e,t),t}if(A.current.has(e))return A.current.get(e);let r=new AbortController;j.current.add(r);let i=M.current,a=(async()=>{try{let n=await ee(t,{policy:s,signal:r.signal,contentTypePrefixes:[`audio/`,`video/`,`application/octet-stream`]}),a=new Blob([n.bytes.slice().buffer],{type:n.contentType||`application/octet-stream`}),o=URL.createObjectURL(a);if(r.signal.aborted||i!==M.current)return URL.revokeObjectURL(o),t;for(k.current.set(e,o);k.current.size>2;){let e=[...k.current.entries()].find(([e])=>e!==ne.current)??k.current.entries().next().value;if(!e)break;k.current.delete(e[0]),URL.revokeObjectURL(e[1])}return o}catch{return``}})();return A.current.set(e,a),a.then(()=>{j.current.delete(r),A.current.get(e)===a&&A.current.delete(e)}),a},[n,s]);(0,N.useEffect)(()=>{if(!r||!o?.segments)return;let e=k.current,t=j.current,n=A.current;return()=>{M.current+=1,t.forEach(e=>e.abort()),t.clear(),n.clear(),e.forEach(e=>{URL.revokeObjectURL(e)}),e.clear()}},[o,F,r]),(0,N.useEffect)(()=>{if(!r||i===`synthetic`)return;let e=o?.segments[f];e&&F(e.src)},[o,f,r,i,F]),(0,N.useEffect)(()=>{if(!r||i===`synthetic`)return;let t=e.current;if(!t)return;let n=()=>{if(P.current)return;let e=(w.current[f]||0)+t.currentTime;l(e)},a=()=>{d(!0)},s=()=>d(!1),c=()=>{_(!0),d(!1),x(!1),C(ce),O.current=!1,T.current!==null&&(l(T.current),T.current=null),D.current?.(),D.current=null},u=()=>{o&&f<o.segments.length-1?(O.current=!0,p(e=>e+1)):(h(!0),d(!1))};return t.addEventListener(`timeupdate`,n),t.addEventListener(`play`,a),t.addEventListener(`pause`,s),t.addEventListener(`ended`,u),t.addEventListener(`error`,c),()=>{t.removeEventListener(`timeupdate`,n),t.removeEventListener(`play`,a),t.removeEventListener(`pause`,s),t.removeEventListener(`ended`,u),t.removeEventListener(`error`,c)}},[e,f,o,r,i]),(0,N.useEffect)(()=>{if(!r||i===`synthetic`)return;let t=e.current;if(!t||!o?.segments)return;let n=o.segments[f];if(!n)return;let a=()=>{if(T.current!==null){let e=w.current[f]||0,n=T.current-e;t.currentTime=Math.max(0,n),l(T.current),T.current=null,D.current?.(),D.current=null}O.current&&=(t.play().catch(e=>{d(!1),e instanceof Error&&e.name===`NotAllowedError`||(x(!1),C(`Audio playback failed. Check that the media file is supported and available.`))}),!1)},s=t.src,c=re.current,u=!!s&&c?.key===n.src&&c.url===s,p=!1,m=null;return u?a():(async()=>{let e=await F(n.src);if(!p){if(!e){t.removeAttribute(`src`),t.load(),re.current=null,O.current=!1,_(!0),d(!1),x(!1),C(ce),T.current!==null&&(l(T.current),T.current=null),D.current?.(),D.current=null;return}m=()=>{p||(_(!0),a(),m&&t.removeEventListener(`canplay`,m))},t.addEventListener(`canplay`,m),t.src=e,re.current={key:n.src,url:t.src},t.load(),await Promise.resolve(),t.readyState>=3&&(m&&t.removeEventListener(`canplay`,m),_(!0),a())}})(),()=>{p=!0,m&&t.removeEventListener(`canplay`,m)}},[e,f,o,F,r,i]);let ue=(0,N.useCallback)(async t=>{let n=e.current;if(!o?.segments)return;let r=v>0?Math.max(0,Math.min(t,v)):Math.max(0,t),a=w.current.length===o.segments.length?w.current:ae(o.segments).segmentStarts,{segmentIndex:s,segmentStart:c}=oe(r,o.segments,a),d=i===`synthetic`?u:!n?.paused;if(h(!1),!n&&i===`media`){p(s),l(r);return}if(s!==ie.current){T.current=r,O.current=d;let e=new Promise(e=>{D.current?.();let t=!1,n=()=>{t||(t=!0,clearTimeout(r),D.current===n&&(D.current=null),e())},r=setTimeout(n,se);D.current=n});p(s),i===`synthetic`&&(l(r),T.current=null,D.current?.(),D.current=null),await e}else{let e=r-c;n&&i===`media`&&(n.currentTime=Math.max(0,e)),l(r)}},[e,o,u,i,v]),I=(0,N.useCallback)(async()=>{if(i===`synthetic`){P.current=!0,d(!0);return}let t=e.current;if(t){m&&await ue(0);try{await t.play(),P.current=!1,x(!0),C(void 0)}catch(e){P.current=!1,d(!1),(e instanceof Error?e.name:``)!==`NotAllowedError`&&(x(!1),C(`Audio playback failed. Check that the media file is supported and available.`))}}},[e,m,i,ue]),L=(0,N.useCallback)(()=>{let t=e.current;t&&t.pause(),d(!1)},[e]),de=(0,N.useCallback)(()=>{!e.current&&i===`media`||(u?L():I())},[e,u,i,I,L]),R=(0,N.useCallback)(e=>{!o?.segments||e<0||e>=o.segments.length||(p(e),h(!1))},[o]),fe=(0,N.useCallback)(async()=>{await ue(0),await I()},[ue,I]);return(0,N.useEffect)(()=>{if(!u||!P.current||!v)return;let e=performance.now(),t,n=r=>{if(!P.current)return;let i=(r-e)/1e3;e=r,l(e=>{let t=e+i;return t>=v?(P.current=!1,h(!0),d(!1),v):t}),t=requestAnimationFrame(n)};return t=requestAnimationFrame(n),()=>cancelAnimationFrame(t)},[u,v]),{currentTime:c,isPlaying:u,currentSegment:f,totalDuration:v,isEnded:m,isReady:g,isAvailable:b,unavailableMessage:S,play:I,pause:async()=>L(),toggle:async()=>de(),seekTo:ue,skipToSegment:async e=>R(e),restart:fe}}function ue(e,t,n={}){let{viewport:r=g.landscape,theme:i,onSeek:a,useAudioSegmentTiming:o=!0}=n,c=(0,N.useMemo)(()=>{if(!e?.blocks)return[];let t=e.blocks.some(e=>e.children&&e.children.length>0)?m(e.blocks):e.blocks,n=t.some(h),a=i??C,c=d({persistentLayers:e.persistentLayers},a);return n?s(t,{audioSegments:o?e.audio?.segments?.map(e=>({startTime:e.startTime,duration:e.duration})):void 0,viewport:r,persistentLayers:c,theme:i,customTemplates:e.customTemplates}):t.map((e,t)=>{let n=v(e,a,t);return n===e.transition?e:{...e,transition:n}})},[e?.blocks,e?.audio?.segments,e?.persistentLayers,e?.customTemplates,r,i,o]),l=(0,N.useMemo)(()=>O(c,t),[c,t]),u=(0,N.useMemo)(()=>l?c.indexOf(l):-1,[c,l]),f=(0,N.useMemo)(()=>l?Math.max(0,t-l.startTime):0,[l,t]),p=(0,N.useMemo)(()=>!l||l.duration===0?0:Math.min(1,f/l.duration),[l,f]),_=(0,N.useMemo)(()=>!e||e.duration===0?0:Math.min(1,t/e.duration),[e,t]),b=(0,N.useRef)(null),x=(0,N.useRef)(null),S=(0,N.useRef)(null),w=(0,N.useRef)(null),T=(0,N.useCallback)(e=>{if(x.current===e){b.current=null,w.current=null;return}w.current=e},[]);l&&l.id!==x.current&&(b.current=w.current===l.id?null:S.current,w.current=null,x.current=l.id),S.current=l;let E=l?.transition?y(l.transition):0,ee=!!l&&E>0&&f<E,D=b.current,k=ee&&D!=null&&D.id!==l?.id,te=k?D:null,A=(0,N.useCallback)(t=>{if(!e||t<0||t>=c.length)return;let n=c[t];n&&a?.(n.startTime)},[e,c,a]);return{currentBlock:l,currentBlockIndex:u,previousBlock:te,isEntering:ee,isExiting:k,blockTime:f,blockProgress:p,docProgress:_,nextBlock:(0,N.useCallback)(()=>{if(u<c.length-1)return A(u+1)},[u,c.length,A]),prevBlock:(0,N.useCallback)(()=>{if(u>0)return A(u-1)},[u,A]),goToBlock:A,suppressOutgoingForNextBlock:T,blocks:c}}function I(e,t){let n=e/t;return n>1.2?`landscape`:n<.83?`portrait`:`square`}function L(e){switch(e){case`portrait`:return g.portrait;case`square`:return g.square;default:return g.landscape}}function de(){let[e,t]=(0,N.useState)(()=>({width:typeof window<`u`?window.innerWidth:1920,height:typeof window<`u`?window.innerHeight:1080}));(0,N.useEffect)(()=>{if(typeof window>`u`)return;let e=()=>{t({width:window.innerWidth,height:window.innerHeight})},n,r=()=>{clearTimeout(n),n=setTimeout(e,100)};return window.addEventListener(`resize`,r),()=>{window.removeEventListener(`resize`,r),clearTimeout(n)}},[]);let n=(0,N.useMemo)(()=>I(e.width,e.height),[e.width,e.height]);return{viewport:(0,N.useMemo)(()=>L(n),[n]),orientation:n,windowSize:e}}var R=n(),fe=e(r(),1),pe=.25;function me(e){return{position:`absolute`,inset:0,zIndex:e===`background`?0:10,pointerEvents:`none`}}function he(e){switch(e){case`top-left`:return{top:`4%`,left:`3%`};case`top-right`:return{top:`4%`,right:`3%`};case`bottom-left`:return{bottom:`6%`,left:`3%`};case`bottom-right`:return{right:`3%`,bottom:`6%`}}}function ge(e,t){return t===`portrait`?e===`large`?`23%`:`15%`:e===`large`?`15%`:`9%`}function _e({presentation:e,pipSize:t,pipShape:n,pipPosition:r,pipOrientation:i,pipFrameStyle:a,active:o}){let s={position:`absolute`,display:`block`,objectFit:`cover`,opacity:+!!o,visibility:o?`visible`:`hidden`,pointerEvents:`none`};return e===`picture-in-picture`?{...s,width:ge(t,i),aspectRatio:n===`wide`?`16 / 9`:`1`,...a,...he(r)}:{...s,inset:0,width:`100%`,height:`100%`}}function ve({schedule:e,currentTime:t,isPlaying:n,basePath:r,renderMode:i=!1,muted:a=!1,presentation:o=`background`,pipSize:s=`small`,pipShape:c=`square`,pipPosition:l=`bottom-right`,pipOrientation:u=`landscape`,pipFrameStyle:d,honorClipPresentation:f=!0}){let{renderClips:p,activeIds:m}=P(e,t);if(p.length===0)return null;let h=new Map;for(let e of p){let t=f&&e.kind===`video`?e.placement===`picture-in-picture`?`picture-in-picture`:e.placement===`overlay`?`full-frame`:o:o,n=e.pipSize??s,r=e.pipShape??c,i=e.pipPosition??l,a=`${t}:${n}:${r}:${i}`,u=h.get(a)??{presentation:t,pipSize:n,pipShape:r,pipPosition:i,clips:[]};u.clips.push(e),h.set(a,u)}return(0,R.jsx)(R.Fragment,{children:[...h].map(([e,o])=>(0,R.jsx)(`div`,{className:`doc-player__media-clips doc-player__media-clips--${o.presentation}`,"data-presentation":o.presentation,"data-pip-size":o.pipSize,"data-pip-shape":o.pipShape,"data-pip-position":o.pipPosition,"aria-hidden":!0,style:me(o.presentation),children:o.clips.map(e=>(0,R.jsx)(ye,{clip:e,active:m.has(e.id),currentTime:t,isPlaying:n,basePath:r,renderMode:i,muted:a,presentation:o.presentation,pipSize:o.pipSize,pipShape:o.pipShape,pipPosition:o.pipPosition,pipOrientation:u,pipFrameStyle:d},e.id))},e))})}function ye({clip:e,active:t,currentTime:n,isPlaying:r,basePath:i,renderMode:a,muted:o,presentation:s,pipSize:c,pipShape:l,pipPosition:u,pipOrientation:d,pipFrameStyle:f}){let p=(0,N.useRef)(null),m=ne(e.src,i);(0,N.useEffect)(()=>{let i=p.current;if(!i)return;if(!t){i.paused||i.pause();return}let o=Math.max(0,e.sourceIn+(n-e.absoluteStart));if(i.dataset.captureSequential!==`true`&&(a||!r||Math.abs(i.currentTime-o)>pe))try{i.currentTime=o}catch{}if(r&&!a){let e=i.play();e&&e.catch(()=>{})}else i.dataset.captureSequential!==`true`&&i.pause()},[t,n,r,a,e.sourceIn,e.absoluteStart,m]);let h=e.kind===`video`,g={ref:p,src:m,preload:`auto`,"data-clip-id":e.id,"data-active":t?`true`:`false`,"data-abs-start":e.absoluteStart,"data-abs-end":e.absoluteEnd,"data-source-in":e.sourceIn};return h?(0,R.jsx)(`video`,{...g,className:`doc-player__media-video${t?` doc-player__media-video--active`:``}`,"data-video-placement":e.placement??`default`,muted:a||o,playsInline:!0,style:_e({presentation:s,pipSize:c,pipShape:l,pipPosition:u,pipOrientation:d,pipFrameStyle:f,active:t})}):(0,R.jsx)(`audio`,{...g,muted:a||o,style:{position:`absolute`,width:0,height:0}})}var be=new Map,xe=8e3;async function Se(e,t,n,r){let i=!e||/^(?:[a-z][a-z0-9+.-]*:|\/\/|\/)/i.test(e),a=i?e:`${n.replace(/\/$/,``)}/${e}`,o=e=>E(e,r)?e:``;if(i||!t)return o(a);try{return o(await t.resolveUrl(e))}catch{return o(a)}}function Ce(e){return typeof document>`u`?Promise.resolve(null):new Promise(t=>{let n=document.createElement(`video`);n.preload=`metadata`,n.muted=!0,n.setAttribute(`playsinline`,``);let r=!1,i={},a=e=>{if(!r){r=!0,i.id!==void 0&&clearTimeout(i.id),n.removeEventListener(`durationchange`,s),n.removeEventListener(`timeupdate`,s),n.removeAttribute(`src`);try{n.load()}catch{}t(e)}},o=()=>{let e=n.duration;return Number.isFinite(e)&&e>0?(a(e),!0):!1},s=()=>{o()};n.addEventListener(`loadedmetadata`,()=>{if(!o()){n.addEventListener(`durationchange`,s),n.addEventListener(`timeupdate`,s);try{n.currentTime=1e101}catch{a(null)}}},{once:!0}),n.addEventListener(`error`,()=>a(null),{once:!0}),i.id=setTimeout(()=>a(null),xe),n.src=e})}function we(e,t,n){let r=M(),i=n===void 0?r:n,a=te(),o=(0,N.useMemo)(()=>{let t=new Set;for(let n of e)n.kind===`video`&&n.src&&t.add(n.src);return Array.from(t).sort().join(`
2
2
  `)},[e]),[s,c]=(0,N.useState)(()=>new Map);return(0,N.useEffect)(()=>{let e=o?o.split(`
3
3
  `):[];if(e.length===0){c(e=>e.size===0?e:new Map);return}let n=!1,r=new Map,s=()=>{n||c(new Map(r))};for(let o of e)Se(o,i,t,a).then(e=>{if(n||!e)return;let t=be.get(e);if(t!=null){r.set(o,t),s();return}Ce(e).then(t=>{n||t==null||(be.set(e,t),r.set(o,t),s())})});return()=>{n=!0}},[o,i,t,a]),s}function Te(e){switch(e){case`top`:return{top:`8%`};case`center`:return{top:`50%`,transform:`translateY(-50%)`};default:return{bottom:`18%`}}}var Ee=4,z=2,B=6;function V(e){if(e.words&&e.words.length>0)return e.words.map(e=>({text:e.text,startTime:e.startTime,endTime:e.endTime}));let t=e.text.split(/\s+/).filter(e=>e.length>0);if(t.length===0)return[];let n=(e.endTime-e.startTime)/t.length;return t.map((t,r)=>({text:t,startTime:e.startTime+r*n,endTime:e.startTime+(r+1)*n}))}function De(e){let t=[];for(let n of e.phrases)t.push(...V(n));if(t.length===0)return{words:[],chunks:[]};let n=Ee;if(t.length>n){let e=Math.ceil(t.length/n);n=Math.ceil(t.length/e),n=Math.min(B,Math.max(z,n))}else n=Math.max(z,t.length);let r=[];for(let e=0;e<t.length;e+=n){let i=t.slice(e,e+n);r.push({words:i,startTime:i[0].startTime,endTime:i[i.length-1].endTime})}return{words:t,chunks:r}}function H({captions:e,currentTime:t,enabled:n=!0,theme:r,viewport:i,position:a=`bottom`}){let{chunks:o}=(0,N.useMemo)(()=>e?De(e):{words:[],chunks:[]},[e]);if(!n||o.length===0)return(0,R.jsx)(`div`,{className:`social-caption-overlay`,style:{position:`absolute`,...Te(a),left:0,right:0,zIndex:50,pointerEvents:`none`,opacity:0,transition:`opacity 0.15s ease-in-out`}});let s=null,c=-1;for(let e of o)if(t>=e.startTime&&t<e.endTime){s=e;break}if(!s){for(let e=0;e<o.length-1;e++)if(t>=o[e].endTime&&t<o[e+1].startTime){s=o[e],c=s.words.length-1;break}!s&&o.length>0&&t>=o[o.length-1].startTime&&(s=o[o.length-1],c=s.words.length-1)}if(!s)return null;if(c===-1){for(let e=0;e<s.words.length;e++){let n=s.words[e];if(t>=n.startTime&&t<n.endTime){c=e;break}}if(c===-1){for(let e=s.words.length-1;e>=0;e--)if(t>=s.words[e].startTime){c=e;break}}c===-1&&(c=0)}let l=r?.colors?.primary??`#5b9bd5`,u=r?.typography?.titleFont?b(r.typography.titleFont,`"PT Serif", Georgia, serif`):`"PT Serif", Georgia, serif`,d=i?.height??720,f=Math.round(d*.055),p=Math.max(24,Math.min(72,f));return(0,R.jsx)(`div`,{className:`social-caption-overlay`,style:{position:`absolute`,...Te(a),left:0,right:0,zIndex:50,pointerEvents:`none`,textAlign:`center`,padding:`0 8%`,boxSizing:`border-box`,opacity:1,transition:`opacity 0.15s ease-in-out`},children:(0,R.jsx)(`div`,{style:{display:`inline-block`,lineHeight:1.3},children:s.words.map((e,t)=>{let n=t===c;return(0,R.jsx)(`span`,{style:{fontFamily:u,fontSize:`${p}px`,fontWeight:n?800:600,color:n?l:`rgba(255, 255, 255, 0.9)`,textShadow:`0 2px 8px rgba(0,0,0,0.7), 0 0 20px rgba(0,0,0,0.4)`,marginRight:t<s.words.length-1?`0.3em`:void 0,transition:`color 0.1s ease, font-weight 0.1s ease`,textTransform:`uppercase`},children:e.text},`${e.startTime}-${t}`)})})})}function Oe(e){switch(e){case`bottom`:return{bottom:`6px`,left:`50%`,transform:`translateX(-50%)`};case`center`:return{top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`};default:return{top:`6px`,left:`50%`,transform:`translateX(-50%)`}}}function ke({captions:e,currentTime:t,enabled:n=!0,fontSize:r=16,captionStyle:i=`standard`,captionPosition:a,theme:o,viewport:s}){if(i===`social`)return(0,R.jsx)(H,{captions:e,currentTime:t,enabled:n,theme:o,viewport:s,position:a??`bottom`});let c=(n&&e?D(e,t):null)?.text??null;return(0,R.jsx)(`div`,{className:`caption-overlay`,style:{position:`absolute`,...Oe(a??`top`),zIndex:50,pointerEvents:`none`,maxWidth:`100%`,width:`100%`,textAlign:`center`,opacity:+!!c,transition:`opacity 0.15s ease-in-out`,padding:`0 4px`,boxSizing:`border-box`},children:c&&(0,R.jsx)(`div`,{style:{display:`inline-block`,padding:`3px 10px`,background:`rgba(0, 0, 0, 0.65)`,borderRadius:`4px`,backdropFilter:`blur(4px)`},children:(0,R.jsx)(`span`,{style:{color:`#ffffff`,fontSize:`${r}px`,fontFamily:`'Hanken Grotesk', system-ui, sans-serif`,fontWeight:500,lineHeight:1.25,textShadow:`0 1px 3px rgba(0,0,0,0.5)`,whiteSpace:`pre-wrap`,wordWrap:`break-word`},children:c})})})}function Ae(e){return`${Math.floor(e/60)}:${Math.floor(e%60).toString().padStart(2,`0`)}`}function je({state:e,actions:t,blockMarkers:n,expandedBlocks:r,getBlockTitle:i}){let a=(0,N.useRef)(null),[o,s]=(0,N.useState)(null),c=e.totalDuration>0?Math.max(0,Math.min(1,e.currentTime/e.totalDuration)):0,l=(0,N.useCallback)(e=>{let t=a.current;if(!t)return;let n=t.getBoundingClientRect(),r=e.clientX-n.left,i=Math.max(0,Math.min(1,r/n.width));s(i)},[]),u=(0,N.useCallback)(()=>{s(null)},[]),d=(0,N.useCallback)(n=>{let r=null;switch(n.key){case`ArrowLeft`:case`ArrowDown`:r=e.currentTime-5;break;case`ArrowRight`:case`ArrowUp`:r=e.currentTime+5;break;case`Home`:r=0;break;case`End`:r=e.totalDuration;break}r!=null&&(n.preventDefault(),t.seekTo(Math.max(0,Math.min(e.totalDuration,r))))},[t,e.currentTime,e.totalDuration]),f=(0,N.useCallback)(e=>{for(let t=r.length-1;t>=0;t--){let n=r[t];if(e>=n.startTime)return{block:n,index:t}}return r.length>0?{block:r[0],index:0}:null},[r]);return(0,R.jsxs)(`div`,{ref:a,role:`group`,"aria-label":`Playback timeline`,style:{flex:1,height:`24px`,cursor:`pointer`,position:`relative`,display:`flex`,alignItems:`center`},onClick:n=>{let r=n.currentTarget.getBoundingClientRect(),i=(n.clientX-r.left)/r.width;t.seekTo(i*e.totalDuration)},onMouseMove:l,onMouseLeave:u,children:[(0,R.jsx)(`div`,{role:`slider`,tabIndex:0,"aria-label":`Playback position`,"aria-valuemin":0,"aria-valuemax":e.totalDuration,"aria-valuenow":Math.max(0,Math.min(e.totalDuration,e.currentTime)),"aria-valuetext":`${Ae(e.currentTime)} of ${Ae(e.totalDuration)}`,onKeyDown:d,style:{position:`absolute`,left:0,right:0,height:`6px`,background:`rgba(255,255,255,0.2)`,borderRadius:`3px`}}),(0,R.jsx)(`div`,{"data-testid":`doc-progress-fill`,style:{position:`absolute`,left:0,width:`${c*100}%`,height:`6px`,background:`#5b9bd5`,borderRadius:`3px`}}),n.map((n,r)=>(0,R.jsx)(`button`,{type:`button`,style:{position:`absolute`,left:`${n.position}%`,transform:`translateX(-50%)`,width:`10px`,height:`10px`,borderRadius:`50%`,background:n.index===e.currentBlockIndex?`#ffffff`:`rgba(255,255,255,0.5)`,border:`2px solid #5b9bd5`,padding:0,cursor:`pointer`,zIndex:2,transition:`transform 0.15s, background 0.15s`},title:n.title,"aria-label":`Seek to ${n.title}`,onClick:e=>{e.stopPropagation(),t.seekTo(n.block.startTime)},onMouseEnter:e=>{e.currentTarget.style.transform=`translateX(-50%) scale(1.3)`},onMouseLeave:e=>{e.currentTarget.style.transform=`translateX(-50%)`}},`${n.block.id}-${r}`)),o!==null&&(0,R.jsxs)(`div`,{style:{position:`absolute`,left:`${o*100}%`,bottom:`100%`,transform:`translateX(-50%)`,marginBottom:`8px`,padding:`6px 10px`,background:`rgba(0,0,0,0.9)`,borderRadius:`4px`,whiteSpace:`nowrap`,pointerEvents:`none`,zIndex:10},children:[(0,R.jsx)(`div`,{style:{color:`white`,fontSize:`12px`,fontFamily:`monospace`},children:Ae(o*e.totalDuration)}),(()=>{let t=o*e.totalDuration,n=f(t);return n&&i?(0,R.jsx)(`div`,{style:{color:`rgba(255,255,255,0.7)`,fontSize:`11px`,marginTop:`2px`},children:i(n.block)}):null})()]}),o!==null&&(0,R.jsx)(`div`,{style:{position:`absolute`,left:`${o*100}%`,top:`50%`,transform:`translate(-50%, -50%)`,width:`2px`,height:`16px`,background:`rgba(255,255,255,0.6)`,pointerEvents:`none`,zIndex:1}})]})}function Me({state:e,actions:t,blockMarkers:n,expandedBlocks:r,getBlockTitle:i}){return(0,R.jsxs)(`div`,{className:`doc-player__controls`,style:{position:`absolute`,bottom:0,left:0,right:0,padding:`12px 16px`,background:`linear-gradient(transparent, rgba(0,0,0,0.8))`,display:`flex`,alignItems:`center`,gap:`8px`,zIndex:100},children:[(0,R.jsx)(`button`,{onClick:t.restart,style:{background:`none`,border:`none`,color:`rgba(255,255,255,0.7)`,cursor:`pointer`,padding:`8px`,fontSize:`14px`,display:`flex`,alignItems:`center`},title:`Restart`,"aria-label":`Restart from beginning`,children:(0,R.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,width:`18`,height:`18`,children:(0,R.jsx)(`path`,{d:`M12 5V1L7 6l5 5V7c3.31 0 6 2.69 6 6s-2.69 6-6 6-6-2.69-6-6H4c0 4.42 3.58 8 8 8s8-3.58 8-8-3.58-8-8-8z`})})}),(0,R.jsx)(`button`,{onClick:t.toggle,style:{background:`rgba(255,255,255,0.2)`,border:`none`,borderRadius:`50%`,color:`white`,cursor:`pointer`,padding:`10px`,fontSize:`16px`,display:`flex`,alignItems:`center`,justifyContent:`center`,width:`40px`,height:`40px`},"aria-label":e.isPlaying?`Pause`:`Play`,children:e.isPlaying?(0,R.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,width:`20`,height:`20`,children:(0,R.jsx)(`path`,{d:`M6 19h4V5H6v14zm8-14v14h4V5h-4z`})}):(0,R.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,width:`20`,height:`20`,children:(0,R.jsx)(`path`,{d:`M8 5v14l11-7z`})})}),(0,R.jsxs)(`span`,{style:{color:`white`,fontSize:`12px`,minWidth:`80px`,fontFamily:`monospace`},children:[Ae(e.currentTime),` / `,Ae(e.totalDuration)]}),(0,R.jsx)(je,{state:e,actions:t,blockMarkers:n,expandedBlocks:r,getBlockTitle:i}),(0,R.jsxs)(`span`,{style:{color:`rgba(255,255,255,0.5)`,fontSize:`11px`,whiteSpace:`nowrap`},children:[e.currentBlockIndex+1,`/`,e.totalBlocks]}),e.hasCaptions&&(0,R.jsxs)(`button`,{onClick:()=>t.cycleCaptionMode(),style:{background:e.captionMode===`off`?`none`:`rgba(255,255,255,0.2)`,border:`none`,color:e.captionMode===`off`?`rgba(255,255,255,0.5)`:`white`,cursor:`pointer`,padding:`8px`,fontSize:`12px`,display:`flex`,alignItems:`center`,gap:`4px`,borderRadius:`4px`},title:e.captionMode===`off`?`Captions: Off (click for Standard)`:e.captionMode===`standard`?`Captions: Standard (click for Social)`:`Captions: Social (click to turn off)`,"aria-label":`Cycle caption style`,children:[(0,R.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,width:`18`,height:`18`,children:(0,R.jsx)(`path`,{d:`M19 4H5a2 2 0 00-2 2v12a2 2 0 002 2h14a2 2 0 002-2V6a2 2 0 00-2-2zm-8 7H9.5v-.5h-2v3h2V13H11v1a1 1 0 01-1 1H7a1 1 0 01-1-1v-4a1 1 0 011-1h3a1 1 0 011 1v1zm7 0h-1.5v-.5h-2v3h2V13H18v1a1 1 0 01-1 1h-3a1 1 0 01-1-1v-4a1 1 0 011-1h3a1 1 0 011 1v1z`})}),e.captionMode!==`off`&&(0,R.jsx)(`span`,{style:{fontSize:`10px`,textTransform:`uppercase`,letterSpacing:`0.5px`},children:e.captionMode===`standard`?`CC`:`SM`})]}),t.toggleFullscreen&&(0,R.jsx)(`button`,{onClick:t.toggleFullscreen,style:{background:e.isFullscreen?`rgba(255,255,255,0.2)`:`none`,border:`none`,color:e.isFullscreen?`white`:`rgba(255,255,255,0.5)`,cursor:`pointer`,padding:`8px`,display:`flex`,alignItems:`center`,borderRadius:`4px`},title:e.isFullscreen?`Exit fullscreen (F)`:`Fullscreen (F)`,"aria-label":e.isFullscreen?`Exit fullscreen`:`Enter fullscreen`,children:e.isFullscreen?(0,R.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,width:`18`,height:`18`,children:(0,R.jsx)(`path`,{d:`M5 16h3v3h2v-5H5v2zm3-8H5v2h5V5H8v3zm6 11h2v-3h3v-2h-5v5zm2-11V5h-2v5h5V8h-3z`})}):(0,R.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,width:`18`,height:`18`,children:(0,R.jsx)(`path`,{d:`M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z`})})})]})}function Ne({state:e,slideNav:t,slides:n=[],pickerOpen:r,onPickerOpenChange:i}){let[a,o]=(0,N.useState)(!1),s=r??a,c=(0,N.useCallback)(e=>{r===void 0&&o(e),i?.(e)},[r,i]),[l,u]=(0,N.useState)(280),d=(0,N.useRef)(null),f=(0,N.useRef)(null),p=(0,N.useRef)(null),m=(0,N.useId)(),{currentBlockIndex:h,currentSlideLabel:g,currentSlideNumber:_,totalBlocks:v,totalSlideNumber:y}=e,b=h<=0,x=h>=v-1,S=v>0?g??`${_??h+1} / ${y??v}`:`—`;return(0,N.useEffect)(()=>{if(!s)return;let e=e=>{d.current?.contains(e.target)||c(!1)},t=e=>{e.key===`Escape`&&(e.preventDefault(),c(!1),f.current?.focus())};return document.addEventListener(`pointerdown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`pointerdown`,e),document.removeEventListener(`keydown`,t)}},[s,c]),(0,N.useLayoutEffect)(()=>{if(!s)return;let e=d.current,t=e?.closest(`.doc-player`)??e?.parentElement;if(!e||!t)return;let n=()=>{let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i=Math.floor(n.top-r.top-8-16);u(Math.max(72,i))};n();let r=typeof ResizeObserver>`u`?null:new ResizeObserver(n);return r?.observe(t),r?.observe(e),window.addEventListener(`resize`,n),()=>{r?.disconnect(),window.removeEventListener(`resize`,n)}},[s]),(0,N.useEffect)(()=>{s&&p.current?.querySelector(`[aria-current="true"]`)?.focus()},[s]),(0,R.jsxs)(`div`,{ref:d,className:`doc-controls-slideshow`,"data-testid":`slideshow-controls`,style:{position:`absolute`,bottom:`16px`,right:`16px`,display:`flex`,alignItems:`center`,gap:`2px`,background:`rgba(0, 0, 0, 0.65)`,borderRadius:`8px`,padding:`4px 6px`,zIndex:100,userSelect:`none`,backdropFilter:`blur(8px)`,WebkitBackdropFilter:`blur(8px)`},children:[(0,R.jsx)(`button`,{onClick:e=>{e.stopPropagation(),t.prevSlide()},disabled:b,"data-testid":`slide-prev`,"aria-label":`Previous slide`,title:`Previous slide`,style:{background:`none`,border:`none`,color:b?`rgba(255,255,255,0.3)`:`rgba(255,255,255,0.9)`,cursor:b?`default`:`pointer`,padding:`6px 8px`,display:`flex`,alignItems:`center`,justifyContent:`center`,borderRadius:`4px`,transition:`background 0.15s`},onMouseEnter:e=>{b||(e.currentTarget.style.background=`rgba(255,255,255,0.1)`)},onMouseLeave:e=>{e.currentTarget.style.background=`none`},children:(0,R.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,width:`18`,height:`18`,children:(0,R.jsx)(`path`,{d:`M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z`})})}),(0,R.jsx)(`button`,{ref:f,type:`button`,"data-testid":`slide-counter`,"aria-label":`Choose slide, current ${S}`,"aria-haspopup":`menu`,"aria-expanded":s,"aria-controls":s?m:void 0,title:`Choose slide`,disabled:n.length===0,onClick:e=>{e.stopPropagation(),c(!s)},style:{background:s?`rgba(255,255,255,0.12)`:`none`,border:`none`,color:`rgba(255,255,255,0.9)`,cursor:n.length>0?`pointer`:`default`,fontSize:`13px`,fontFamily:`-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif`,fontVariantNumeric:`tabular-nums`,minWidth:`48px`,textAlign:`center`,padding:`6px 4px`,letterSpacing:`0.02em`,borderRadius:`4px`,transition:`background 0.15s`},children:S}),s&&(0,R.jsx)(`div`,{ref:p,id:m,role:`menu`,"aria-label":`Choose a slide`,"data-testid":`slide-picker`,onClick:e=>e.stopPropagation(),onKeyDown:e=>{if(![`ArrowDown`,`ArrowUp`,`Home`,`End`].includes(e.key))return;let t=Array.from(p.current?.querySelectorAll(`[role="menuitem"]`)??[]);if(t.length===0)return;e.preventDefault();let n=t.indexOf(document.activeElement),r=n;r=e.key===`Home`?0:e.key===`End`?t.length-1:e.key===`ArrowDown`?(n+1)%t.length:(n-1+t.length)%t.length,t[r]?.focus()},style:{position:`absolute`,right:0,bottom:`calc(100% + 8px)`,width:`min(280px, calc(100vw - 32px))`,maxHeight:`${l}px`,overflowY:`auto`,padding:`6px`,background:`rgba(20, 20, 20, 0.94)`,border:`1px solid rgba(255,255,255,0.14)`,borderRadius:`8px`,boxShadow:`0 10px 30px rgba(0,0,0,0.38)`,backdropFilter:`blur(12px)`,WebkitBackdropFilter:`blur(12px)`},children:n.map((e,n)=>{let r=n===h;return(0,R.jsxs)(`button`,{type:`button`,role:`menuitem`,"aria-current":r?`true`:void 0,"data-testid":`slide-picker-item-${n}`,onClick:()=>{t.goToSlide(n),c(!1)},style:{display:`grid`,gridTemplateColumns:`42px minmax(0, 1fr)`,alignItems:`center`,gap:`8px`,width:`100%`,padding:`8px 10px`,background:r?`rgba(255,255,255,0.14)`:`transparent`,border:`none`,borderRadius:`5px`,color:`rgba(255,255,255,0.94)`,cursor:`pointer`,fontFamily:`-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif`,textAlign:`left`},onMouseEnter:e=>{e.currentTarget.style.background=`rgba(255,255,255,0.1)`},onMouseLeave:e=>{e.currentTarget.style.background=r?`rgba(255,255,255,0.14)`:`transparent`},children:[(0,R.jsx)(`span`,{style:{color:r?`#fff`:`rgba(255,255,255,0.58)`,fontSize:`12px`,fontVariantNumeric:`tabular-nums`,textAlign:`right`},children:e.label}),(0,R.jsx)(`span`,{style:{minWidth:0,overflow:`hidden`,color:r?`#fff`:`rgba(255,255,255,0.82)`,fontSize:`13px`,lineHeight:1.3,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.summary})]},`${e.id}-${n}`)})}),(0,R.jsx)(`button`,{onClick:e=>{e.stopPropagation(),t.nextSlide()},disabled:x,"data-testid":`slide-next`,"aria-label":`Next slide`,title:`Next slide`,style:{background:`none`,border:`none`,color:x?`rgba(255,255,255,0.3)`:`rgba(255,255,255,0.9)`,cursor:x?`default`:`pointer`,padding:`6px 8px`,display:`flex`,alignItems:`center`,justifyContent:`center`,borderRadius:`4px`,transition:`background 0.15s`},onMouseEnter:e=>{x||(e.currentTarget.style.background=`rgba(255,255,255,0.1)`)},onMouseLeave:e=>{e.currentTarget.style.background=`none`},children:(0,R.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`currentColor`,width:`18`,height:`18`,children:(0,R.jsx)(`path`,{d:`M8.59 16.59L10 18l6-6-6-6-1.41 1.41L13.17 12z`})})})]})}async function Pe(e){if(typeof document<`u`&&document.fonts?.ready)try{await document.fonts.ready}catch{}let t=Array.from(e.querySelectorAll(`img`));await Promise.allSettled(t.map(e=>e.complete?Promise.resolve():typeof e.decode==`function`?e.decode().catch(()=>void 0):new Promise(t=>{e.addEventListener(`load`,()=>t(),{once:!0}),e.addEventListener(`error`,()=>t(),{once:!0})}))),await new Promise(e=>{typeof requestAnimationFrame==`function`?requestAnimationFrame(()=>requestAnimationFrame(()=>e())):setTimeout(e,0)})}function Fe(e,t){return{id:e,startTime:0,duration:0,audioSegment:0,layers:t}}function Ie({doc:e,theme:t,viewport:n,layout:r,showTitle:i,style:o,documentTitle:s,basePath:l=`.`,animationsEnabled:u=!0,muted:d=!0,renderMode:f=!1,onRenderAPIReady:p,className:m}){let h=(0,N.useRef)(null),_=(0,N.useMemo)(()=>t??a(e),[t,e]),v=n??g.landscape,y=(0,N.useMemo)(()=>c(e,{theme:_,viewport:v,layout:r,showTitle:i,style:o,documentTitle:s}),[e,_,v,r,i,o,s]),b=(0,N.useMemo)(()=>Fe(`dashboard-backdrop-bottom`,y.backdrop.bottomLayers),[y]),x=(0,N.useMemo)(()=>y.backdrop.topLayers.length>0?Fe(`dashboard-backdrop-top`,y.backdrop.topLayers):null,[y]),S=(0,N.useMemo)(()=>y.title?Fe(`dashboard-title-band`,y.title.layers):null,[y]);(0,N.useEffect)(()=>{if(!(!f||!p))return p({seekTo:async()=>{let e=h.current;e&&await Pe(e)},getRenderedTime:()=>0,getDuration:()=>0,getBlocks:()=>y.cells.map(e=>({id:String(e.block.id),template:e.block.template??`content`,startTime:0,duration:0})),getAudioSegments:()=>[],getCaptions:()=>[],getChapters:()=>[],showCover:async()=>{},hideCover:async()=>{},hasCoverBlock:()=>!1}),()=>p(null)},[f,p,y]);let C={width:v.width,height:v.height},w={position:`absolute`,inset:0},T={position:`relative`,width:`var(--squisq-dashboard-fit-width, 100%)`,aspectRatio:`${v.width} / ${v.height}`,overflow:`hidden`,background:y.backdrop.fill,margin:`0 auto`,"--squisq-dashboard-aspect":(v.width/v.height).toFixed(6)};return(0,R.jsxs)(`div`,{ref:h,className:m?`squisq-dashboard ${m}`:`squisq-dashboard`,"data-dashboard-layout":y.layout.name,"data-dashboard-style":y.style,style:T,children:[(0,R.jsx)(`div`,{style:w,"aria-hidden":`true`,children:(0,R.jsx)(A,{block:b,blockTime:0,basePath:l,viewport:C,isPlaying:!1,muted:!0,animationsEnabled:u,theme:_})}),y.cells.map(e=>(0,R.jsxs)(N.Fragment,{children:[e.frame&&(0,R.jsx)(`div`,{className:`squisq-dashboard__frame`,"data-cell-index":e.index,"aria-hidden":`true`,style:{position:`absolute`,left:e.frame.rectPct.left,top:e.frame.rectPct.top,width:e.frame.rectPct.width,height:e.frame.rectPct.height,pointerEvents:`none`},children:(0,R.jsx)(A,{block:Fe(`dashboard-frame-${e.index}`,e.frame.layers),blockTime:0,basePath:l,viewport:{width:e.frame.viewport.width,height:e.frame.viewport.height},isPlaying:!1,muted:!0,animationsEnabled:u,theme:_})}),(0,R.jsxs)(`div`,{className:`squisq-dashboard__cell`,"data-cell-index":e.index,style:{position:`absolute`,left:e.rectPct.left,top:e.rectPct.top,width:e.rectPct.width,height:e.rectPct.height,...e.frame?.contentRadiusPct?{borderRadius:e.frame.contentRadiusPct,overflow:`hidden`}:{}},children:[(0,R.jsx)(A,{block:{...e.block,layers:e.layers},blockTime:0,basePath:l,viewport:{width:e.viewport.width,height:e.viewport.height},isPlaying:!1,muted:d,animationsEnabled:u,theme:_}),e.frame&&e.frame.overlayLayers.length>0&&(0,R.jsx)(`div`,{style:{position:`absolute`,inset:0,pointerEvents:`none`},children:(0,R.jsx)(A,{block:Fe(`dashboard-frame-overlay-${e.index}`,e.frame.overlayLayers),blockTime:0,basePath:l,viewport:{width:e.frame.overlayViewport.width,height:e.frame.overlayViewport.height},isPlaying:!1,muted:!0,animationsEnabled:u,theme:_})})]})]},`${e.index}-${e.block.id}`)),y.title&&S&&(0,R.jsx)(`div`,{className:`squisq-dashboard__title`,style:{position:`absolute`,left:y.title.rectPct.left,top:y.title.rectPct.top,width:y.title.rectPct.width,height:y.title.rectPct.height},children:(0,R.jsx)(A,{block:S,blockTime:0,basePath:l,viewport:{width:y.title.viewport.width,height:y.title.viewport.height},isPlaying:!1,muted:!0,animationsEnabled:u,theme:_})}),x&&(0,R.jsx)(`div`,{style:{...w,pointerEvents:`none`},"aria-hidden":`true`,children:(0,R.jsx)(A,{block:x,blockTime:0,basePath:l,viewport:C,isPlaying:!1,muted:!0,animationsEnabled:u,theme:_})})]})}var Le=new Set([`diagram`,`tree`,`timeline`,`map`,`drawing`,`layout`,`barChart`,`columnChart`,`pieChart`,`donutChart`,`lineChart`,`areaChart`,`scatterChart`]);function U(e,t,n,r){let i=o(e);if(!(i.templateName&&(Le.has(i.templateName)||r?.some(e=>e.name===i.templateName))))return null;let a=i.templateBlock??e,{layers:s,source:c}=p(a,{theme:t,viewport:n,customTemplates:r,persistentLayers:!1});return s.length===0||c===`fallback`?null:{...a,layers:s}}function Re({block:e,depth:t,theme:n,basePath:r,showCodeCopyButton:i,onCopyCode:a,fenceRenderers:o,viewport:s,customTemplates:c}){let l=t===0?`h2`:t===1?`h3`:`h4`,u=(0,N.useMemo)(()=>U(e,n,s,c),[e,c,n,s]);return(0,R.jsxs)(`section`,{className:`squisq-flashcards__content-block`,"data-source-block-id":e.id,children:[!u&&e.title&&(0,R.jsx)(l,{className:`squisq-flashcards__content-title`,children:e.title}),!u&&e.contents&&e.contents.length>0&&(0,R.jsx)(j,{nodes:e.contents,theme:n,showCodeCopyButton:i,onCopyCode:a,fenceRenderers:o}),(u||e.layers&&e.layers.length>0)&&(0,R.jsx)(`div`,{className:`squisq-flashcards__canvas`,style:{aspectRatio:`${s.width} / ${s.height}`},children:(0,R.jsx)(A,{block:u??e,blockTime:Math.max(0,e.duration??0),basePath:r,viewport:s,animationsEnabled:!1,theme:n,muted:!0})}),!u&&e.children?.map(e=>(0,R.jsx)(Re,{block:e,depth:t+1,theme:n,basePath:r,showCodeCopyButton:i,onCopyCode:a,fenceRenderers:o,viewport:s,customTemplates:c},e.id))]})}function W(e){return(0,R.jsx)(`div`,{className:`squisq-flashcards__face-content`,children:e.face.blocks.map(t=>(0,R.jsx)(Re,{block:t,depth:0,...e},t.id))})}function ze(e){return(0,R.jsx)(W,{...e,viewport:e.viewport??g.landscape})}function Be(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return t>>>0}function Ve(e,t){let n=[...e],r=Be(t)||1,i=()=>{r+=1831565813;let e=r;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296};for(let e=n.length-1;e>0;e--){let t=Math.floor(i()*(e+1));[n[e],n[t]]=[n[t],n[e]]}return n}function He(e){return(0,R.jsx)(W,{...e,face:e.choice.content})}function G(e){return e instanceof Element&&!!e.closest(`button, a, input, select, textarea, [contenteditable="true"]`)}function Ue({doc:e,theme:t,basePath:n=`.`,source:r=`auto`,shuffle:o=!1,globalKeyboardShortcuts:s=!1,showCodeCopyButton:c=!1,onCopyCode:l,fenceRenderers:u,viewport:d=g.landscape,className:f}){let p=(0,N.useMemo)(()=>t??a(e),[e,t]),m=(0,N.useMemo)(()=>i(e,{source:r}),[e,r]),[h,_]=(0,N.useState)(o),[v,y]=(0,N.useState)(1),[x,S]=(0,N.useState)(0),[C,w]=(0,N.useState)(!1),[T,E]=(0,N.useState)(null),[ee,D]=(0,N.useState)({}),[O,k]=(0,N.useState)(null),te=(0,N.useRef)(null),A=(0,N.useMemo)(()=>h?Ve(m.cards,`${e.articleId}:${v}`):[...m.cards],[m.cards,e.articleId,v,h]),j=(0,N.useMemo)(()=>O?O.map(e=>A.find(t=>t.id===e)).filter(e=>!!e):A,[A,O]),M=j[x],ne=j.length>0&&x>=j.length,re=(0,N.useCallback)(()=>{S(0),w(!1),E(null)},[]),ie=(0,N.useCallback)(()=>{D({}),k(null),re(),y(e=>e+1)},[re]);(0,N.useEffect)(()=>{D({}),k(null),re()},[m,re]),(0,N.useEffect)(()=>{te.current&&(te.current.scrollTop=0)},[x,O]);let P=(0,N.useCallback)(()=>{M&&(w(!0),M.kind===`multiple-choice`&&T===null&&D(e=>({...e,[M.id]:`again`})))},[M,T]),ae=(0,N.useCallback)(()=>{if(M){if(!C){P();return}S(e=>e+1),w(!1),E(null)}},[M,P,C]),oe=(0,N.useCallback)(()=>{if(ne){S(Math.max(0,j.length-1)),w(!0);return}if(C){w(!1),E(null);return}x>0&&(S(e=>e-1),w(!0),E(null))},[x,ne,C,j.length]),se=(0,N.useCallback)(e=>{!M||C||(E(e.id),w(!0),D(t=>({...t,[M.id]:e.correct?`got-it`:`again`})))},[M,C]),ce=(0,N.useCallback)(e=>{M&&(D(t=>({...t,[M.id]:e})),S(e=>e+1),w(!1),E(null))},[M]),le=(0,N.useCallback)(e=>{if(!(e.defaultPrevented||G(e.target))){if(/^[1-9]$/.test(e.key)&&M?.kind===`multiple-choice`&&!C){let t=M.choices?.[Number(e.key)-1];t&&(e.preventDefault(),se(t));return}e.key===`ArrowLeft`?(e.preventDefault(),oe()):(e.key===`ArrowRight`||e.key===` `||e.key===`Enter`)&&(e.preventDefault(),ae())}},[se,M,ae,oe,C]);(0,N.useEffect)(()=>{if(!s)return;let e=e=>le(e);return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[s,le]);let F={theme:p,basePath:n,showCodeCopyButton:c,onCopyCode:l,fenceRenderers:u,viewport:d,customTemplates:e.customTemplates},ue=b(p.typography.titleFont,`Georgia, serif`),I=b(p.typography.bodyFont,`system-ui, sans-serif`),L={"--squisq-flashcards-bg":p.colors.background,"--squisq-flashcards-surface":p.colors.backgroundLight,"--squisq-flashcards-text":p.colors.text,"--squisq-flashcards-muted":p.colors.textMuted,"--squisq-flashcards-primary":p.colors.primary,"--squisq-flashcards-secondary":p.colors.secondary,"--squisq-flashcards-highlight":p.colors.highlight,"--squisq-flashcards-warning":p.colors.warning,"--squisq-flashcards-radius":`${p.style.borderRadius??18}px`,"--squisq-flashcards-title-font":ue,"--squisq-flashcards-body-font":I},de=m.cards.filter(e=>ee[e.id]===`again`).map(e=>e.id),fe=m.cards.filter(e=>ee[e.id]===`got-it`).length;if(m.cards.length===0)return(0,R.jsx)(`div`,{className:`squisq-flashcards squisq-flashcards--empty${f?` ${f}`:``}`,style:L,role:`region`,"aria-label":`Flashcards`,children:(0,R.jsxs)(`div`,{className:`squisq-flashcards__empty-card`,children:[(0,R.jsx)(`h2`,{children:`No complete flashcards yet`}),(0,R.jsx)(`p`,{children:`Add an answer beneath a heading, or nest an answer block under a question.`}),m.diagnostics.length>0&&(0,R.jsx)(`ul`,{children:m.diagnostics.map((e,t)=>(0,R.jsx)(`li`,{children:e.message},`${e.blockId}-${e.code}-${t}`))})]})});if(ne)return(0,R.jsx)(`div`,{className:`squisq-flashcards${f?` ${f}`:``}`,style:L,role:`region`,"aria-label":`Flashcard session summary`,tabIndex:0,onKeyDown:s?void 0:le,children:(0,R.jsxs)(`div`,{className:`squisq-flashcards__summary`,children:[(0,R.jsx)(`span`,{className:`squisq-flashcards__eyebrow`,children:`Session complete`}),(0,R.jsxs)(`h2`,{children:[fe,` remembered`]}),(0,R.jsx)(`p`,{children:de.length===0?`You completed all ${m.cards.length} cards.`:`${de.length} ${de.length===1?`card needs`:`cards need`} another look.`}),(0,R.jsxs)(`div`,{className:`squisq-flashcards__summary-actions`,children:[de.length>0&&(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__button squisq-flashcards__button--primary`,onClick:()=>{k(de),re()},children:`Retry missed`}),(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__button`,onClick:ie,children:`Study again`}),(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__button`,onClick:oe,children:`Previous card`})]})]})});let pe=M?.choices?Ve(M.choices,`${M.id}:${v}`):[],me=pe.find(e=>e.id===T);return(0,R.jsxs)(`div`,{className:`squisq-flashcards${f?` ${f}`:``}`,style:L,role:`region`,"aria-label":`Flashcards`,tabIndex:0,onKeyDown:s?void 0:le,children:[(0,R.jsxs)(`header`,{className:`squisq-flashcards__header`,children:[(0,R.jsxs)(`div`,{className:`squisq-flashcards__deck-copy`,children:[(0,R.jsx)(`span`,{className:`squisq-flashcards__eyebrow`,children:`Flashcards`}),m.title&&(0,R.jsx)(`h1`,{children:m.title})]}),(0,R.jsxs)(`div`,{className:`squisq-flashcards__tools`,children:[(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__tool`,"aria-pressed":h,onClick:()=>{_(e=>!e),ie()},children:`Shuffle`}),(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__tool`,onClick:ie,children:`Restart`})]})]}),(0,R.jsxs)(`div`,{className:`squisq-flashcards__progress-row`,children:[(0,R.jsxs)(`span`,{children:[`Card `,x+1,` of `,j.length]}),(0,R.jsx)(`span`,{children:C?`Answer revealed`:`Question`})]}),(0,R.jsx)(`div`,{className:`squisq-flashcards__progress`,"aria-hidden":`true`,children:(0,R.jsx)(`span`,{style:{width:`${(x+ +!!C)/j.length*100}%`}})}),(0,R.jsxs)(`main`,{ref:te,className:`squisq-flashcards__card`,"data-card-kind":M.kind,"aria-label":`Scrollable flashcard content`,tabIndex:0,children:[M.label&&(0,R.jsx)(`div`,{className:`squisq-flashcards__label`,children:M.label}),(0,R.jsx)(`section`,{className:`squisq-flashcards__front`,"aria-label":`Question`,children:(0,R.jsx)(W,{...F,face:M.front})}),M.kind===`multiple-choice`&&(0,R.jsx)(`div`,{className:`squisq-flashcards__choices`,role:`group`,"aria-label":`Answer choices`,children:pe.map((e,t)=>{let n=T===e.id;return(0,R.jsxs)(`button`,{type:`button`,className:`squisq-flashcards__choice`,"data-choice-status":C?e.correct?`correct`:n?`incorrect`:`idle`:`idle`,"aria-pressed":n,disabled:C,onClick:()=>se(e),children:[(0,R.jsx)(`span`,{className:`squisq-flashcards__choice-key`,"aria-hidden":`true`,children:t+1}),(0,R.jsx)(He,{...F,choice:e})]},e.id)})}),C&&M.kind===`basic`&&(0,R.jsxs)(`section`,{className:`squisq-flashcards__answer`,"aria-label":`Answer`,children:[(0,R.jsx)(`span`,{className:`squisq-flashcards__answer-label`,children:`Answer`}),(0,R.jsx)(W,{...F,face:M.back})]}),C&&M.kind===`multiple-choice`&&(0,R.jsxs)(`div`,{className:`squisq-flashcards__feedback`,"data-correct":me?.correct===!0,"aria-live":`polite`,children:[(0,R.jsx)(`strong`,{children:me===void 0?`Answer revealed`:me.correct?`Correct`:`Not quite`}),!me?.correct&&(0,R.jsxs)(`div`,{className:`squisq-flashcards__correct-answer`,children:[(0,R.jsx)(`span`,{children:`The correct answer is`}),(0,R.jsx)(W,{...F,face:M.back})]})]}),C&&M.explanation&&(0,R.jsxs)(`section`,{className:`squisq-flashcards__explanation`,"aria-label":`Explanation`,children:[(0,R.jsx)(`span`,{className:`squisq-flashcards__answer-label`,children:`Explanation`}),(0,R.jsx)(W,{...F,face:M.explanation})]})]}),(0,R.jsxs)(`footer`,{className:`squisq-flashcards__footer`,children:[(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__button`,disabled:x===0&&!C,onClick:oe,children:`Previous`}),(0,R.jsx)(`div`,{className:`squisq-flashcards__primary-actions`,children:C&&M.kind===`basic`?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__button`,onClick:()=>ce(`again`),children:`Again`}),(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__button squisq-flashcards__button--primary`,onClick:()=>ce(`got-it`),children:`Got it`})]}):(0,R.jsx)(`button`,{type:`button`,className:`squisq-flashcards__button squisq-flashcards__button--primary`,onClick:ae,children:C?x===j.length-1?`Finish`:`Next card`:`Reveal answer`})})]}),(0,R.jsxs)(`p`,{className:`squisq-flashcards__shortcut-hint`,children:[`Use ← and → to navigate, Space to reveal`,M.kind===`multiple-choice`?`, or 1–9 to answer`:``,`.`]})]})}function K(e,t,n){if(e)return Object.prototype.hasOwnProperty.call(e,t)?e[t]:e[n]}function We(e){if(typeof e!=`string`)return;let t=e.trim().toLowerCase();if(t===`background`||t===`behind`)return`background`;if(t===`full-frame`||t===`fullscreen`||t===`full`)return`full-frame`;if(t===`picture-in-picture`||t===`pip`||t===`overlay`)return`picture-in-picture`}function Ge(e){if(typeof e!=`string`)return;let t=e.trim().toLowerCase();if(t===`small`||t===`sm`||t===`pip-small`)return`small`;if(t===`large`||t===`lg`||t===`big`||t===`pip-large`)return`large`}function Ke(e){if(typeof e!=`string`)return;let t=e.trim().toLowerCase();if(t===`square`||t===`1:1`)return`square`;if(t===`wide`||t===`16:9`||t===`widescreen`)return`wide`}function qe(e){if(typeof e==`string`)return{"top-left":`top-left`,"upper-left":`top-left`,"top-right":`top-right`,"upper-right":`top-right`,"bottom-left":`bottom-left`,"lower-left":`bottom-left`,"bottom-right":`bottom-right`,"lower-right":`bottom-right`}[e.trim().toLowerCase().replace(/[_\s]+/g,`-`)]}function Je(e,t={}){let n=e.frontmatter,r=f(n,{...t.showCoverSlide===void 0?{}:{enabled:t.showCoverSlide},...t.coverSlideTemplate===void 0?{}:{template:t.coverSlideTemplate},...t.coverSlideDuration===void 0?{}:{duration:t.coverSlideDuration},...t.coverSlidePlayback===void 0?{}:{playback:t.coverSlidePlayback}});return{theme:t.theme??a(e),videoPresentation:t.videoPresentation??We(K(n,`squisq-video-presentation`,`video-presentation`))??`background`,pipSize:t.pipSize??Ge(K(n,`squisq-pip-size`,`pip-size`))??`small`,pipShape:t.pipShape??Ke(K(n,`squisq-pip-shape`,`pip-shape`))??`square`,pipPosition:t.pipPosition??qe(K(n,`squisq-pip-position`,`pip-position`))??`bottom-right`,showCoverSlide:r.enabled,coverSlideTemplate:r.template,coverSlideDuration:r.duration,coverSlidePlayback:r.playback}}var Ye=.3,q=.5,Xe=12,J=.35,Ze=260;function Qe({dx:e,width:t,elapsedMs:n,canNext:r,canPrev:i}){let a=t>0?t*Ye:1/0,o=n>0?Math.abs(e)/n:0;return!(Math.abs(e)>=a)&&!(o>=q&&Math.abs(e)>=Xe)?`snap`:e<0?r?`next`:`snap`:e>0&&i?`prev`:`snap`}function $e(e){let t=e.settleMs??Ze,[n,r]=(0,N.useState)(0),[i,a]=(0,N.useState)(`idle`),o=(0,N.useRef)(e);o.current=e;let s=(0,N.useRef)(null),c=(0,N.useRef)(`idle`);c.current=i;let l=(0,N.useRef)(null),u=(0,N.useRef)(null),d=(0,N.useCallback)(()=>{l.current!=null&&(clearTimeout(l.current),l.current=null),u.current!=null&&(cancelAnimationFrame(u.current),u.current=null)},[]),f=(0,N.useCallback)(e=>{if(!o.current.enabled||c.current===`settling`||e.pointerType===`mouse`&&e.button!==0)return;let t=e.target;if(!t.closest?.(`button, a, input, textarea, select, [data-no-swipe]`)){s.current={pointerId:e.pointerId,startX:e.clientX,startTime:performance.now(),target:t};try{t.setPointerCapture?.(e.pointerId)}catch{}a(`dragging`),r(0)}},[]);return(0,N.useEffect)(()=>{function e(){return o.current.containerRef.current?.getBoundingClientRect().width??0}function n(e){s.current=null;try{e.target.releasePointerCapture?.(e.pointerId)}catch{}}function i(e,n){a(`settling`),u.current=requestAnimationFrame(()=>{u.current=null,r(e),l.current=setTimeout(()=>{l.current=null,n?.(),r(0),a(`idle`)},t)})}function c(e){let t=s.current;if(!t||e.pointerId!==t.pointerId)return;let n=o.current,i=e.clientX-t.startX,a=i>0&&!n.canGoPrev||i<0&&!n.canGoNext;r(a?i*J:i)}function d(t){let r=s.current;if(!r||t.pointerId!==r.pointerId)return;n(r);let a=o.current,c=t.clientX-r.startX,l=e(),u=Qe({dx:c,width:l,elapsedMs:performance.now()-r.startTime,canNext:a.canGoNext,canPrev:a.canGoPrev});if(u===`snap`){i(0);return}let d=Math.max(l,Math.abs(c));i(u===`next`?-d:d,u===`next`?a.onNext:a.onPrev)}function f(e){let t=s.current;!t||e.pointerId!==t.pointerId||(n(t),i(0))}return window.addEventListener(`pointermove`,c),window.addEventListener(`pointerup`,d),window.addEventListener(`pointercancel`,f),()=>{window.removeEventListener(`pointermove`,c),window.removeEventListener(`pointerup`,d),window.removeEventListener(`pointercancel`,f)}},[t]),(0,N.useEffect)(()=>{e.enabled||(s.current=null,d(),a(`idle`),r(0))},[e.enabled,d]),(0,N.useEffect)(()=>d,[d]),{offsetPx:n,phase:i,onPointerDown:f}}var et=new Set([`a`,`an`,`the`,`and`,`but`,`or`,`for`,`nor`,`on`,`at`,`to`,`in`,`of`,`by`,`is`]);function tt(e){let t=new Map;for(let n of e.blocks)if(h(n)&&n.template===`sectionHeader`&&`title`in n){let e=n.audioSegment;t.has(e)||t.set(e,n.title)}for(let n=0;n<e.audio.segments.length;n++){if(t.has(n))continue;let r=e.audio.segments[n].name;if(r.includes(`intro`))t.set(n,`Introduction`);else if(r.includes(`flight-context`))t.set(n,`Flight Context`);else{let e=r.split(`-`).map((e,t)=>t===0||!et.has(e)?e.charAt(0).toUpperCase()+e.slice(1):e).join(` `);t.set(n,e)}}return t}var nt=2e3,rt=16,Y=.01,it=.5,at=1;function ot(e){return Number.isFinite(e)?`${e.toFixed(3)}s`:String(e)}function st(e,t){let n=e.duration;return Number.isFinite(n)?Math.max(0,Math.min(t,n)):t}function ct(e,t){return Math.abs(e.currentTime-st(e,t))<=Y}function lt(e){if(!e.isConnected)return!1;let t=e.ownerDocument.defaultView;if(!t)return!1;for(let n=e;n;n=n.parentElement){let e=t.getComputedStyle(n);if(e.display===`none`||e.visibility===`hidden`||e.visibility===`collapse`||Number.parseFloat(e.opacity||`1`)<=0)return!1}return!0}function ut(e,t,n){let r=null,i=()=>{r!==null&&(clearTimeout(r),r=null)};return{arm:()=>{i(),e.visibilityState===`visible`&&(r=setTimeout(n,t))},clear:i}}function dt(e,t,n=nt){return e.pause(),new Promise((r,i)=>{let a=!1,o=null,s=e.ownerDocument,c=()=>s.visibilityState!==`visible`,l=()=>{m.clear(),clearInterval(_),e.removeEventListener(`seeked`,p),e.removeEventListener(`loadeddata`,p),e.removeEventListener(`canplay`,p),s.removeEventListener(`visibilitychange`,g),o!==null&&typeof e.cancelVideoFrameCallback==`function`&&e.cancelVideoFrameCallback(o)},u=()=>{a||(a=!0,l(),r())},d=()=>{a||(a=!0,l(),i(Error(`Video frame did not become ready at ${ot(t)} within ${n}ms (currentTime=${ot(e.currentTime)}, reachableTime=${ot(st(e,t))}, duration=${ot(e.duration)}, readyState=${e.readyState}, seeking=${String(e.seeking)}, visible=${String(lt(e))}).`)))},f=()=>{if(!(a||e.seeking||e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||!ct(e,t))){if(typeof e.requestVideoFrameCallback!=`function`||!lt(e)){u();return}o===null&&(o=e.requestVideoFrameCallback(()=>{o=null,u()}))}};function p(){f()}let m=ut(s,n,d),h=()=>{try{return e.currentTime=st(e,t),queueMicrotask(f),!0}catch(e){return a=!0,l(),i(e),!1}};function g(){if(!a){if(c()){m.clear();return}f(),!a&&(!e.seeking&&!ct(e,t)&&!h()||m.arm())}}let _=setInterval(f,rt);e.addEventListener(`seeked`,p),e.addEventListener(`loadeddata`,p),e.addEventListener(`canplay`,p),s.addEventListener(`visibilitychange`,g),m.arm(),h()})}function ft(e,t,n){return new Promise((r,i)=>{let a=!1,o=e.ownerDocument,s=()=>o.visibilityState!==`visible`,c=()=>{h.clear(),clearInterval(y),e.removeEventListener(`timeupdate`,f),e.removeEventListener(`loadeddata`,f),e.removeEventListener(`canplay`,f),e.removeEventListener(`error`,d),o.removeEventListener(`visibilitychange`,v)},l=()=>{a||(a=!0,c(),r())},u=()=>{a||(a=!0,e.pause(),c(),dt(e,t,n).then(r,i))},d=()=>{a||(a=!0,e.pause(),c(),i(Error(`Video frame did not advance to ${ot(t)} within ${n}ms (currentTime=${ot(e.currentTime)}, readyState=${e.readyState}).`)))};function f(){e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&e.currentTime>=st(e,t)&&(e.pause(),l())}let p=()=>{a||s()||u()},m=()=>{if(!(a||s()))try{e.playbackRate=at,e.paused&&e.play().catch(p)}catch{p()}},h=ut(o,n,d),g=()=>{e.pause(),h.clear()},_=()=>{a||s()||(f(),!a&&(m(),h.arm()))};function v(){if(o.visibilityState!==`visible`){g();return}_()}let y=setInterval(f,rt);e.addEventListener(`timeupdate`,f),e.addEventListener(`loadeddata`,f),e.addEventListener(`canplay`,f),e.addEventListener(`error`,d,{once:!0}),o.addEventListener(`visibilitychange`,v),_()})}function pt(e,t,n=nt){if(e.readyState>=HTMLMediaElement.HAVE_METADATA&&e.videoWidth<=0&&e.videoHeight<=0)return e.pause(),Promise.resolve();let r=st(e,t)-e.currentTime;if(e.dataset.captureSequential===`true`){if(e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&r<=Y)return r<-Y&&e.pause(),Promise.resolve();if(r>0&&r<=it&&e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA)return ft(e,t,n)}return e.pause(),!e.seeking&&e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&ct(e,t)?Promise.resolve():dt(e,t,n)}function mt(){try{return typeof process<`u`&&!1}catch{return!1}}var ht=!1,gt=100,_t=1e-6;function vt(){return new Promise(e=>{let t=!1,n=null,r=()=>{t||(t=!0,window.clearTimeout(i),n!==null&&window.cancelAnimationFrame(n),e())},i=window.setTimeout(r,document.visibilityState===`visible`?gt:0);document.visibilityState===`visible`&&(n=window.requestAnimationFrame(r))})}function yt(e){let{doc:t,markdown:n}=e,r=(0,N.useMemo)(()=>!t&&n!==void 0?u(T(n)):void 0,[t,n]),i=t??r;return i?e.displayMode===`flashcards`?(0,R.jsx)(`div`,{className:`doc-player doc-player--flashcards`,children:(0,R.jsx)(Ue,{doc:i,basePath:e.basePath,theme:e.theme,globalKeyboardShortcuts:e.globalKeyboardShortcuts,showCodeCopyButton:e.showCodeCopyButton,onCopyCode:e.onCopyCode,fenceRenderers:e.fenceRenderers,viewport:e.forceViewport})}):(0,R.jsx)(bt,{...e,doc:i}):(0,R.jsx)(`div`,{className:`doc-player doc-player--empty`})}function bt({doc:e,basePath:t=`.`,renderMode:n=!1,animationsEnabled:r=!0,autoPlay:i=!1,loop:a=!1,onEnded:o,onTimeUpdate:s,audioController:c,audioMode:u=`media`,showControls:d=!0,showScrubber:f=!1,muted:p=!1,captionsEnabled:m,onCaptionsToggle:v,onPlaybackStateChange:y,onControlsReady:b,onRenderAPIReady:C,isFullscreen:T=!1,onFullscreenToggle:E,onBlockMarkers:ee,forceViewport:O,displayMode:te=`video`,dashboardLayout:j,dashboardShowTitle:M,dashboardStyle:ne,dashboardDocumentTitle:P,showCoverSlide:ae,coverSlideTemplate:oe,coverSlideDuration:se,coverSlidePlayback:ce,coverVisible:le,theme:I,surface:L,captionStyle:pe=`standard`,captionPosition:me,videoPresentation:he,pipSize:ge,pipShape:_e,pipPosition:ye,enableSwipe:be=!0,globalKeyboardShortcuts:xe=!1,showCodeCopyButton:Se=!1,onCopyCode:Ce,fenceRenderers:Te,tableContentRenderer:Ee}){let z=te===`slideshow`,B=te===`linear`,V=te===`dashboard`,De=(0,N.useRef)(null),H=(0,N.useRef)(null),Oe=`squisq-player-${(0,N.useId)().replace(/:/g,``)}`,[Ae,Pe]=(0,N.useState)(null),Fe=(0,N.useRef)(),{viewport:Le}=de(),U=O||(n?g.landscape:Le),Re=U.height>U.width?`portrait`:`landscape`,W=(0,N.useMemo)(()=>typeof window>`u`?!1:new URLSearchParams(window.location.search).get(`debug`)===`true`,[]),ze=(0,N.useMemo)(()=>u===`synthetic`?S(e):0,[u,e]),Be=F(De,e.audio,t,!c,u,ze),Ve=c||Be;(0,N.useEffect)(()=>{if(ht||!mt())return;let e=H.current;!e||typeof getComputedStyle!=`function`||getComputedStyle(e).getPropertyValue(`--squisq-styles-loaded`).trim()||(ht=!0,console.warn(`[squisq] @bendyline/squisq-react/styles is not loaded — import "@bendyline/squisq-react/styles"`))},[]);let{currentTime:He,isPlaying:G,currentSegment:Ue,totalDuration:K,isEnded:We,isReady:Ge,isAvailable:Ke,unavailableMessage:qe,play:Ye,pause:q,toggle:Xe,seekTo:J,skipToSegment:Ze,restart:Qe}=Ve,[et,nt]=(0,N.useState)(null),rt=et?.doc===e?et.time:null,Y=n?rt??He:He,it=we((0,N.useMemo)(()=>w(e),[e]),t),at=(0,N.useMemo)(()=>w(e,{intrinsicDuration:e=>it.get(e.src)}),[e,it]),ot=(0,N.useCallback)(()=>{if(n)return;let e=H.current;e&&e.querySelectorAll(`.doc-player__block--active video[data-clip-start], [data-clip-id][data-active="true"]`).forEach(e=>{let t=e.play();t&&t.catch(()=>{})})},[n]),st=(0,N.useCallback)(()=>(ot(),Ye()),[Ye,ot]),ct=(0,N.useCallback)(()=>(G||ot(),Xe()),[G,ot,Xe]),lt=(0,N.useRef)(Y);lt.current=Y;let ut=(0,N.useRef)(Y),dt=(0,N.useRef)([]),ft=(0,N.useRef)(K);ft.current=K;let gt=(0,N.useRef)(0);(0,N.useLayoutEffect)(()=>{ut.current=Y;let e=dt.current;dt.current=e.filter(e=>Math.abs(e.time-Y)>_t?!0:(e.resolve(),!1))},[Y]),(0,N.useEffect)(()=>()=>{let e=Error(`DocPlayer unmounted before the requested frame committed.`);dt.current.splice(0).forEach(t=>t.reject(e))},[]);let yt=(0,N.useCallback)(e=>Math.abs(ut.current-e)<=_t?Promise.resolve():new Promise((t,n)=>{dt.current.push({time:e,resolve:t,reject:n})}),[]),bt=(0,N.useCallback)(e=>{if(n||B)return;let t=e.target;if(z){t.closest(`button, a, input, textarea, select, [contenteditable="true"]`)||H.current?.focus({preventScroll:!0});return}t.closest(`button, a, input, textarea, select, [contenteditable="true"], .doc-player__controls, .doc-player__scrubber, .doc-controls-sidebar, .doc-controls-slideshow`)||(H.current?.focus({preventScroll:!0}),ct(),Pe(G?`pause`:`play`),clearTimeout(Fe.current),Fe.current=setTimeout(()=>Pe(null),600))},[n,ct,G,z,B]),xt=ie(L===`auto`),St=L===`auto`?xt:L,X=(0,N.useMemo)(()=>Je(e,{theme:I,videoPresentation:he,pipSize:ge,pipShape:_e,pipPosition:ye,showCoverSlide:ae,coverSlideTemplate:oe,coverSlideDuration:se,coverSlidePlayback:ce}),[e,I,he,ge,_e,ye,ae,oe,se,ce]),Ct=(0,N.useMemo)(()=>{let e=X.theme;return St?x(e,St):e},[X.theme,St]),wt=(0,N.useMemo)(()=>k(Ct),[Ct]),Tt=wt,Et=(0,N.useMemo)(()=>({border:wt[`--squisq-pip-border`],borderRadius:wt[`--squisq-pip-radius`],boxShadow:wt[`--squisq-pip-shadow`]}),[wt]),{currentBlock:Dt,currentBlockIndex:Ot,previousBlock:kt,isEntering:At,isExiting:jt,blockTime:Mt,blockProgress:Nt,docProgress:Pt,nextBlock:Ft,prevBlock:It,blocks:Z,suppressOutgoingForNextBlock:Lt}=ue(e,Y,{viewport:U,theme:Ct,onSeek:J,useAudioSegmentTiming:u!==`synthetic`}),Q=(0,N.useMemo)(()=>{let t=e.startBlock;return!X.showCoverSlide||!t?null:{id:`cover-block`,startTime:-1,duration:0,audioSegment:-1,layers:l(t,_(Ct,0,1,U),X.coverSlideTemplate)}},[e.startBlock,U,Ct,X.showCoverSlide,X.coverSlideTemplate]),Rt=!!Q,[zt,Bt]=(0,N.useState)(!1),[Vt,Ht]=(0,N.useState)(!1),Ut=(0,N.useRef)(``);(0,N.useEffect)(()=>{let t=`${e.articleId}:${z}:${Rt}:${n}`;Ut.current!==t&&(Ut.current=t,z&&Rt&&!n?(Bt(!0),q()):Bt(!1))},[e.articleId,z,Rt,n,q]);let[Wt,Gt]=(0,N.useState)(!1),[Kt,qt]=(0,N.useState)(!1),Jt=(0,N.useRef)(),Yt=(0,N.useRef)(!1),Xt=(0,N.useRef)(!1);(0,N.useEffect)(()=>{Xt.current=!1,Yt.current=!1,clearTimeout(Jt.current),qt(!1),Gt(!1)},[e]),Q&&!z&&!G&&Y===0&&!Xt.current&&!n&&!i&&(Yt.current=!0),(0,N.useEffect)(()=>{G&&Yt.current&&Q&&!n&&!z&&(Yt.current=!1,Xt.current=!0,qt(!0),Jt.current=setTimeout(()=>qt(!1),X.coverSlideDuration*1e3))},[G,Q,n,z,X.coverSlideDuration]),(0,N.useEffect)(()=>()=>clearTimeout(Jt.current),[]),(0,N.useEffect)(()=>()=>clearTimeout(Fe.current),[]);let Zt=!z&&!B&&!!Q&&(Wt||Kt||!G&&Y===0&&!Xt.current&&!n&&!i),Qt=le??zt,$t=!!(z&&!B&&!n&&Q&&Qt),en=le===void 0?Zt||$t:!!Q&&le,$=!!(z&&!n&&Q),tn=$?Qt?0:Ot+1:Ot,nn=$?Z.length+1:Z.length,rn=(0,N.useRef)(!1);(0,N.useEffect)(()=>{rn.current=!1},[e]),(0,N.useEffect)(()=>{Ge&&i&&!rn.current&&(rn.current=!0,st())},[Ge,i,st]),(0,N.useEffect)(()=>{s?.(Y)},[Y,s]),(0,N.useEffect)(()=>{We&&(o?.(),a&&!z&&!B&&!V&&Qe())},[We,V,B,z,a,o,Qe]);let an=(0,N.useRef)(null),on=(0,N.useRef)(null);if(!on.current){let e=()=>{let e=an.current;if(!e)throw Error(`Squisq render API is not currently available.`);return e};on.current={seekTo:t=>e().seekTo(t),getRenderedTime:()=>e().getRenderedTime(),getDuration:()=>e().getDuration(),getBlocks:()=>e().getBlocks(),getAudioSegments:()=>e().getAudioSegments(),getCaptions:()=>e().getCaptions(),getChapters:()=>e().getChapters(),showCover:()=>e().showCover(),hideCover:()=>e().hideCover(),hasCoverBlock:()=>e().hasCoverBlock()}}let sn=on.current;(0,N.useEffect)(()=>{if(V||!n&&!W){an.current=null;return}let t=H.current;if(!t){an.current=null;return}let r={seekTo:async r=>{if(n){let t=yt(r);(0,fe.flushSync)(()=>nt({doc:e,time:r})),c&&J(r).catch(()=>void 0),await t}else await J(r);let i=0;for(let e=Z.length-1;e>=0;e--)if(r>=Z[e].startTime){i=Z[e].startTime;break}let a=(r-i)*1e3;(t.getAnimations?.()??[]).forEach(e=>{let t=e.effect?.target;t&&(t.closest(`.doc-player__block--active`)||t.closest(`.doc-player__block--previous`))&&(e.currentTime=Math.max(0,a))});let o=r-i,s=[],l=t.querySelector(`.doc-player__block--active`);l&&l.querySelectorAll(`video[data-clip-start]`).forEach(e=>{let t=e,n=parseFloat(t.dataset.clipStart||`0`),r=parseFloat(t.dataset.clipEnd||`0`),i=parseFloat(t.dataset.startAt||`0`),a=Math.min(n+Math.max(0,o-i),r);s.push(pt(t,a))}),t.querySelectorAll(`video[data-clip-id]`).forEach(e=>{let t=e,n=parseFloat(t.dataset.absStart||`0`),i=parseFloat(t.dataset.absEnd||`0`),a=parseFloat(t.dataset.sourceIn||`0`);if(t.pause(),r<n||r>=i)return;let o=a+(r-n);s.push(pt(t,o))}),await Promise.all(s),await vt()},getRenderedTime:()=>ut.current,getDuration:()=>{let t=S(e);return K>0?Math.max(K,t):t},getBlocks:()=>Z.map(e=>({id:e.id,template:e.template??`raw`,startTime:e.startTime,duration:e.duration})),getAudioSegments:()=>e.audio.segments.map(e=>({src:e.src,name:e.name,duration:e.duration,startTime:e.startTime})),getCaptions:()=>e.captions?.phrases?.map(e=>({text:e.text,startTime:e.startTime,endTime:e.endTime}))||[],getChapters:()=>{let t=tt(e);return e.audio.segments.map((e,n)=>({title:t.get(n)||e.name,startTime:e.startTime,duration:e.duration}))},showCover:()=>(Gt(!0),vt()),hideCover:()=>(Gt(!1),vt()),hasCoverBlock:()=>!!Q};return an.current=r,()=>{an.current===r&&(an.current=null)}},[n,W,J,K,Z,Q,e,c,yt,V]),(0,N.useEffect)(()=>{if(!V){if(!n&&!W||!H.current){C?.(null);return}return C?.(sn),()=>C?.(null)}},[n,W,V,C,sn]);let cn=m===!1?`off`:pe||`standard`,[ln,un]=(0,N.useState)(cn);(0,N.useEffect)(()=>{un(cn)},[cn]);let dn=ln!==`off`,fn=ln===`social`?`social`:`standard`,pn=(0,N.useCallback)(e=>{un(e?pe||`standard`:`off`),v?.(e)},[v,pe]),mn=(0,N.useCallback)(()=>{un(e=>{let t=e===`off`?`standard`:e===`standard`?`social`:`off`;return v?.(t!==`off`),t})},[v]),hn=e.captions&&e.captions.phrases.length>0,gn=(0,N.useMemo)(()=>tt(e),[e]),_n=(0,N.useMemo)(()=>({isPlaying:G,currentTime:Y,totalDuration:K,isCoverVisible:en,currentBlockIndex:tn,totalBlocks:nn,docProgress:Pt,hasCaptions:!!hn,captionsEnabled:dn,captionMode:ln,isFullscreen:T,currentSegmentIndex:Ue,currentSegmentName:gn.get(Ue)??e.audio.segments[Ue]?.name??null,currentBlock:$t?Q:Dt??null,currentSlideLabel:$t?`Cover`:void 0,currentSlideNumber:$&&!$t?Ot+1:void 0,totalSlideNumber:$?Z.length:void 0}),[G,Y,K,en,tn,nn,Pt,hn,dn,ln,T,Ue,gn,Dt,Ot,$t,Q,$,Z.length]),vn=(0,N.useMemo)(()=>({toggle:ct,restart:Qe,seekTo:J,setCaptionsEnabled:pn,cycleCaptionMode:mn,toggleFullscreen:E}),[ct,Qe,J,pn,mn,E]),yn=(0,N.useMemo)(()=>({nextSlide:()=>{if($&&zt){let e=Z[0];e&&(Bt(!1),J(e.startTime),q());return}if(Ot<Z.length-1){let e=Z[Ot+1];e&&(Bt(!1),J(e.startTime),q())}},prevSlide:()=>{if($&&!zt&&Ot<=0){Bt(!0),J(0),q();return}if(Ot>0){let e=Z[Ot-1];e&&(Bt(!1),J(e.startTime),q())}},goToSlide:e=>{if($){if(e===0){Bt(!0),J(0),q();return}let t=Z[e-1];t&&(Bt(!1),J(t.startTime),q());return}if(e>=0&&e<Z.length){let t=Z[e];t&&(J(t.startTime),q())}}}),[Ot,Z,J,q,$,zt]),bn=z&&!B&&!n&&be,xn=(0,N.useCallback)(e=>{let t=e-+!!$,n=Z[t];n&&Lt(n.id)},[Z,$,Lt]),Sn=(0,N.useCallback)(()=>{xn(tn+1),yn.nextSlide()},[xn,tn,yn]),Cn=(0,N.useCallback)(()=>{xn(tn-1),yn.prevSlide()},[xn,tn,yn]),wn=$e({enabled:bn,containerRef:H,canGoNext:tn<nn-1,canGoPrev:tn>0,onNext:Sn,onPrev:Cn});(0,N.useEffect)(()=>{y?.(_n)},[_n,y]),(0,N.useEffect)(()=>{b?.({play:st,pause:q,...vn})},[st,q,vn,b]);let Tn=(0,N.useCallback)(e=>{let t=e;if(h(t)){let e=t;if(typeof e.title==`string`)return e.title;if(typeof e.stat==`string`)return e.stat;if(typeof e.quote==`string`){let t=e.quote.split(`
4
4
  `)[0];return t.length<=30?t:t.slice(0,27)+`...`}if(typeof e.date==`string`)return e.date;if(typeof e.fact==`string`)return e.fact}if(e.layers&&Array.isArray(e.layers)){let t=e.layers.find(e=>e.type===`text`);if(t?.content?.text){let e=t.content.text.split(`
@@ -1,4 +1,4 @@
1
- import"./doc-C2Ph2FWI.js";import{l as e}from"./markdown-ryKA_OmY.js";import{I as t}from"./index-DDu8nyO6.js";import"./storage-B-vhjyV2.js";import{i as n,n as r}from"./chunk-DXYWKZ52-zxe8pjH4.js";var i=1e5,a=1e4,o=1024*1024,s=Object.freeze({maxCells:2e7,maxRows:2e6});async function c(e){return typeof e==`string`?e:typeof Blob<`u`&&e instanceof Blob?e.text():new TextDecoder().decode(new Uint8Array(e))}function l(e){if([...e].length!==1||/["\r\n\uFEFF]/u.test(e))throw TypeError(`CSV delimiter must be exactly one character and cannot be a quote, line break, or BOM`);return e}function u(e,t=`,`,n={}){t=l(t);let r=d(`maxCells`,n.maxCells??i),s=d(`maxRows`,n.maxRows??a),c=d(`maxFieldChars`,n.maxFieldChars??o),u=[],f=[],p=``,m=!1,h=!1,g=0,_=()=>{if(++g>r)throw RangeError(`CSV exceeds the ${r}-cell safety limit`);f.push(p),p=``},v=()=>{if(u.length>=s)throw RangeError(`CSV exceeds the ${s}-row safety limit`);_(),u.push(f),f=[]};for(let r=0;r<e.length;r++){r&16383||n.signal?.throwIfAborted();let i=e[r];if(t.length===2&&e.slice(r,r+2)===t&&(i=t,r++),m){if(i===`"`)e[r+1]===`"`?(p+=`"`,r++):m=!1;else if(p+=i,p.length>c)throw RangeError(`CSV field exceeds the ${c}-character safety limit`);continue}if(i===`"`){m=!0,h=!0;continue}if(i===t){h=!0,_();continue}if(i===`
1
+ import"./doc-BHcGsJZd.js";import{l as e}from"./markdown-CLKH_zzl.js";import{W as t}from"./index-DivKnJyx.js";import"./storage-Cmhlwx70.js";import{i as n,n as r}from"./chunk-DXYWKZ52-DMKPZnpo.js";var i=1e5,a=1e4,o=1024*1024,s=Object.freeze({maxCells:2e7,maxRows:2e6});async function c(e){return typeof e==`string`?e:typeof Blob<`u`&&e instanceof Blob?e.text():new TextDecoder().decode(new Uint8Array(e))}function l(e){if([...e].length!==1||/["\r\n\uFEFF]/u.test(e))throw TypeError(`CSV delimiter must be exactly one character and cannot be a quote, line break, or BOM`);return e}function u(e,t=`,`,n={}){t=l(t);let r=d(`maxCells`,n.maxCells??i),s=d(`maxRows`,n.maxRows??a),c=d(`maxFieldChars`,n.maxFieldChars??o),u=[],f=[],p=``,m=!1,h=!1,g=0,_=()=>{if(++g>r)throw RangeError(`CSV exceeds the ${r}-cell safety limit`);f.push(p),p=``},v=()=>{if(u.length>=s)throw RangeError(`CSV exceeds the ${s}-row safety limit`);_(),u.push(f),f=[]};for(let r=0;r<e.length;r++){r&16383||n.signal?.throwIfAborted();let i=e[r];if(t.length===2&&e.slice(r,r+2)===t&&(i=t,r++),m){if(i===`"`)e[r+1]===`"`?(p+=`"`,r++):m=!1;else if(p+=i,p.length>c)throw RangeError(`CSV field exceeds the ${c}-character safety limit`);continue}if(i===`"`){m=!0,h=!0;continue}if(i===t){h=!0,_();continue}if(i===`
2
2
  `||i===`\r`){i===`\r`&&e[r+1]===`
3
3
  `&&r++,v(),h=!1;continue}if(h=!0,p+=i,p.length>c)throw RangeError(`CSV field exceeds the ${c}-character safety limit`)}return(p!==``||f.length>0||h)&&v(),u}function d(e,t){if(!Number.isSafeInteger(t)||t<0)throw RangeError(`${e} must be a non-negative safe integer`);return t}function f(e,t){let n=e.reduce((e,t)=>Math.max(e,t.length),1);return{type:`table`,children:e.map((e,r)=>{let i=[];for(let a=0;a<n;a++){let n=e[a]??``;i.push({type:`tableCell`,...t&&r===0?{isHeader:!0}:{},children:n?[{type:`text`,value:n}]:[]})}return{type:`tableRow`,children:i}})}}async function p(e,t={}){let n=u((await c(e)).replace(/^\uFEFF/,``),t.delimiter??`,`,t),r=t.hasHeader??!0;return{type:`document`,children:n.length>0?[f(n,r)]:[]}}async function m(i,a={}){let o=r(a.sourceName,`data.csv`),s=a.sidecar??`auto`,l=(await c(i)).replace(/^\uFEFF/,``),u=a.maxInlineRows??100,d=a.maxInlineBytes??256*1024,f=typeof i==`string`?new TextEncoder().encode(i).buffer:i instanceof Blob?await i.arrayBuffer():i,m=s===`always`;if(!m&&s===`auto`){let e=a.hasHeader??!0,t=(l.match(/\n/g)??[]).length+(l.endsWith(`
4
4
  `)||!l?0:1),n=Math.max(t-+!!e,0);m=f.byteLength>d||n>u}let h=m?n(o):await p(l,a),g=new t;return await g.writeDocument(e(h),o.markdownFilename),m&&await g.writeFile(o.sidecarPath,f,`text/csv`),g}function h(e,t={}){let n=l(t.delimiter??`,`),r=t.newline??`