@marimo-team/islands 0.24.3-dev2 → 0.24.3-dev21

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 (284) hide show
  1. package/dist/{ConnectedDataExplorerComponent-qIKbwYin.js → ConnectedDataExplorerComponent-BLO7UDpo.js} +18 -18
  2. package/dist/{ErrorBoundary-CR-ZQN_c.js → ErrorBoundary-B7uSdDUm.js} +6 -6
  3. package/dist/{ImageComparisonComponent-2a9TMMm2.js → ImageComparisonComponent-RspMflu6.js} +3 -3
  4. package/dist/{Plot-C-9MQeGP.js → Plot-CTyjbQDT.js} +21032 -20666
  5. package/dist/_baseMerge-Bnytch8P.js +165 -0
  6. package/dist/{abnfDiagram-N423BO3Z-CQKwzX8t.js → abnfDiagram-VCTEODGH-DCb2K_RB.js} +17 -18
  7. package/dist/{any-language-editor-CpTnK43-.js → any-language-editor-C0dftc2Z.js} +8 -8
  8. package/dist/arc-7ra3iNdN.js +81 -0
  9. package/dist/architecture-7GRP2DOG-BWLylgiA.js +3 -0
  10. package/dist/{architectureDiagram-T3A2C74G-CncrDpfa.js → architectureDiagram-5GKGNRK7-Bb_n642s.js} +25 -25
  11. package/dist/assets/__vite-browser-external-BajL8aoc.js +1 -0
  12. package/dist/assets/worker-BemUy60C.js +109 -0
  13. package/dist/blockDiagram-I7D4REHJ-BbXEXJRu.js +1922 -0
  14. package/dist/{button-CKBkqR9J.js → button-DdXAm8iz.js} +5 -5
  15. package/dist/{c4Diagram-5PPSVZJV-DarUk3Yq.js → c4Diagram-7LVT6UL2-DcLsbQmR.js} +696 -668
  16. package/dist/{capabilities-CMBBJTcc.js → capabilities-B3ce_GNu.js} +1 -1
  17. package/dist/{channel-CyiYUzJv.js → channel-B5XnTarr.js} +1 -1
  18. package/dist/chat-ui-DliLTEJt.js +5835 -0
  19. package/dist/{check-CHig47QV.js → check-mcQyZmFG.js} +1 -1
  20. package/dist/{chunk-2Q5K7J3B-BMuJl2jB.js → chunk-2Q5K7J3B-BMkUkeuy.js} +2 -2
  21. package/dist/chunk-4HAMMTFA-D2qv8E0X.js +4188 -0
  22. package/dist/{chunk-5VM5RSS4-Bcq0ftdy.js → chunk-5VM5RSS4-DKsmPCL6.js} +2 -2
  23. package/dist/{chunk-NSK5VX7P-CDTMcJB0.js → chunk-75Z2AOVW-5_HsvXwr.js} +23 -23
  24. package/dist/{chunk-I66GZJ75-BqyTCAPf.js → chunk-DU6HZSFF-BUgAHvnM.js} +21 -4
  25. package/dist/{chunk-2GRJ4B5K-DgO8Qudq.js → chunk-F27PBJKO-DHmYWZXr.js} +4 -4
  26. package/dist/{chunk-KEIR6QF5-C4KX3XYh.js → chunk-FOHPRMQF-BpYR8RqP.js} +4 -4
  27. package/dist/{chunk-WRU74C26-BpWsbiDK.js → chunk-GMAD6QVW-Czynz8aA.js} +486 -258
  28. package/dist/chunk-GVQU2GXP-yQEdulRS.js +37 -0
  29. package/dist/{chunk-5RXB4S5H-tLNUVDdO.js → chunk-IMKFNOWR-Du9BN2Ul.js} +11 -11
  30. package/dist/{chunk-JWPE2WC7-BJwjGUnF.js → chunk-JWPE2WC7-DJvv1t8U.js} +2 -2
  31. package/dist/chunk-L3NEJ4N5-DwRWnDDK.js +245 -0
  32. package/dist/{chunk-7Z6QIM7H-Dc18hFxH.js → chunk-OSK3NFVY-BBKU_Ign.js} +222 -144
  33. package/dist/{chunk-W5SLKNZC-DLnvpEtV.js → chunk-P2QGCYS3-C0iGU29N.js} +20 -20
  34. package/dist/{chunk-KBJHAD2P-BuqWqkcW.js → chunk-POPQ4Y6H-BCbS3Ozc.js} +4 -4
  35. package/dist/{chunk-4I5QYGJK-DpytHuZQ.js → chunk-PWAF6VOD-CTFCL0jI.js} +4 -4
  36. package/dist/{chunk-JQJVKLGR-CgqCwe8E.js → chunk-SHT3W25Y-tUelricH.js} +109 -63
  37. package/dist/{chunk-6Q2QTUOP-DmTcEBMn.js → chunk-SVP7TREG-DK3egkfQ.js} +5 -5
  38. package/dist/{chunk-GF5L2VYU-B0wgCQgS.js → chunk-TICWLB2K-DRANTdnp.js} +13 -13
  39. package/dist/{chunk-XXDRQBXY-D73H4IN0.js → chunk-XXDRQBXY-Dnl5VBqG.js} +3 -3
  40. package/dist/{chunk-Y2CYZVJY-DoegUj_e.js → chunk-Y2CYZVJY-DKKS1VyV.js} +1 -1
  41. package/dist/{chunk-5FQGJX7Z-B85XCPv6.js → chunk-YOKDWASO-DrWbKnxA.js} +6925 -5460
  42. package/dist/classDiagram-ZZMXUADV-7wCSVH7o.js +30 -0
  43. package/dist/classDiagram-v2-VYDZK3BY-QwnvcnhB.js +30 -0
  44. package/dist/{common-C4UahYwr.js → common-BxjexIJy.js} +7398 -6912
  45. package/dist/{compiler-runtime-CAH9RLw2.js → compiler-runtime-Cj8ZWiNS.js} +2 -2
  46. package/dist/{copy-CD7S58CY.js → copy-C0N4m1lm.js} +4 -4
  47. package/dist/{cose-bilkent-JH36ORCC-FUWHkXFX.js → cose-bilkent-JH36ORCC-_LyRKVqm.js} +2 -2
  48. package/dist/cubic-OaEBhQPK.js +1404 -0
  49. package/dist/cynefin-OW5HDTMX-obq-i80l.js +3 -0
  50. package/dist/{cynefinDiagram-MW4NZA55-BXSFK93J.js → cynefinDiagram-5FMLGOSQ-CB7O4IZB.js} +10 -10
  51. package/dist/{dagre-CGyalH38.js → dagre-DfYd3btw.js} +678 -537
  52. package/dist/dagre-GXQ25YYZ-C-a95ISW.js +425 -0
  53. package/dist/{data-grid-overlay-editor-DZM4BAaI.js → data-grid-overlay-editor-C5eUZVTo.js} +8 -9
  54. package/dist/{data-grid-types-BnZwWG8z.js → data-grid-types-BucVmDDp.js} +1 -1
  55. package/dist/{defaultLocale-DKaU_opG.js → defaultLocale-JI_lnoCe.js} +1 -1
  56. package/dist/{diagram-7IWD3JNH-BjfzDNvj.js → diagram-S7CK7UJ4-BsKLYQaH.js} +40 -39
  57. package/dist/{diagram-UB23O5K3-DDg-7wLA.js → diagram-UQ7AKVKN-ppYdvuTN.js} +10 -10
  58. package/dist/{diagram-B4RE2ZJO-CKccR9eE.js → diagram-VSXAHHWV-BKpmG23x.js} +10 -10
  59. package/dist/{diagram-Q27KOJAE-Zhz01ss7.js → diagram-VX7I27RA-CAMK2l0E.js} +21 -21
  60. package/dist/{diagram-LBJQPF4R-CJ-bOruh.js → diagram-Z3DM3KII-CxQ7MggT.js} +10 -10
  61. package/dist/{dist-dAqZAPcF.js → dist-1HDa70oE.js} +3 -3
  62. package/dist/{dist-3_o3T78I.js → dist-6ChWbo8z.js} +13 -13
  63. package/dist/{dist-Re9sOPOx.js → dist-9x1ZRe-e.js} +2 -2
  64. package/dist/{dist-DEeLqRlU.js → dist-B1vYLK28.js} +1 -1
  65. package/dist/{dist-C5Bn52W4.js → dist-B8D7McG3.js} +3 -3
  66. package/dist/{dist-_XvgytiS.js → dist-BHCHt1NI.js} +1 -1
  67. package/dist/{dist-CRjAdnqF.js → dist-BRxfaJgs.js} +3 -3
  68. package/dist/{dist-Byj2bV8o.js → dist-BVGtK7Ht.js} +1 -1
  69. package/dist/{dist-BIN5LKyE.js → dist-BaHjhkpZ.js} +2 -2
  70. package/dist/{dist-DVFbIwc5.js → dist-BtKIs9N-.js} +1 -1
  71. package/dist/{dist-BrQGcfQ9.js → dist-C2KzV-vf.js} +2 -2
  72. package/dist/{dist-DJFiGP2k.js → dist-C2wDlYdD.js} +2 -2
  73. package/dist/{dist-BVRM2y1P.js → dist-C8xMLVYi.js} +2 -2
  74. package/dist/dist-CMh_W4y4.js +538 -0
  75. package/dist/{dist-BzN60Z2s.js → dist-CPGxfVGX.js} +1 -1
  76. package/dist/{dist-C7v-9nUK.js → dist-Cm3iAFMD.js} +3 -3
  77. package/dist/{dist-CGAxEiaM.js → dist-Cs2FijYk.js} +2 -2
  78. package/dist/{dist-hXd65f0_.js → dist-D1PpnuZB.js} +1 -1
  79. package/dist/{dist-VdvbxG72.js → dist-DHOTQar0.js} +1 -1
  80. package/dist/{dist-DcgzXCfy.js → dist-DPcEtqmG.js} +2 -2
  81. package/dist/{dist-D4Z_qdP4.js → dist-Df0wKI0F.js} +1 -1
  82. package/dist/{dist-qhLI-SHd.js → dist-DszxuxS1.js} +2 -2
  83. package/dist/{dist-BEmkrGoQ.js → dist-Kxgjxakw.js} +1 -1
  84. package/dist/{dist-BbSMhhD2.js → dist-KzZ7WELx.js} +2 -2
  85. package/dist/{dist-jWUab2d1.js → dist-lA1Cttkb.js} +1 -1
  86. package/dist/{dropdown-menu-DhCfcscX.js → dropdown-menu-C73aTomr.js} +184 -184
  87. package/dist/{ebnfDiagram-BXEA7PRR-Dm75pCAS.js → ebnfDiagram-PWID7BFC-DzybELvk.js} +17 -18
  88. package/dist/{erDiagram-JOGREHBK-rVDG3VSQ.js → erDiagram-RLTQ6QDP-BVxV97ld.js} +1037 -798
  89. package/dist/{error-banner-WDhUzJyg.js → error-banner-hCaH06e3.js} +207 -207
  90. package/dist/{esm-CR1nhb1c.js → esm-BElI3qKH.js} +22 -22
  91. package/dist/{esm-C1d0g6Bv.js → esm-G4Fhsgng.js} +51 -37
  92. package/dist/{esm-CesmlDrs.js → esm-blALgIVy.js} +332 -319
  93. package/dist/eventmodeling-NTZA5JFV-D7nP7Uyu.js +3 -0
  94. package/dist/{extends-BPB6_lTK.js → extends-Do6pRuJa.js} +8 -8
  95. package/dist/flowDiagram-HODETNUW-BKvXsWYX.js +16 -0
  96. package/dist/{formats-CJMVUfb3.js → formats-vDAoRpYs.js} +8 -8
  97. package/dist/{ganttDiagram-PKOTCBZU-9D-LXF6P.js → ganttDiagram-EL5Y4UJY-DbzEBLbl.js} +15 -15
  98. package/dist/gitGraph-4MIJSDKK-Dy9uQXGh.js +3 -0
  99. package/dist/{gitGraphDiagram-DS77QQ5N-BfpsXTLf.js → gitGraphDiagram-WWUBYQGX-BMf0iKi1.js} +10 -10
  100. package/dist/{glide-data-editor-sPZ8fUFn.js → glide-data-editor-Bcy8iaZa.js} +2785 -2562
  101. package/dist/{glide-utils-NShAPPtn.js → glide-utils-BMnFm0vZ.js} +4 -4
  102. package/dist/highlighted-body-KPVGNVTW-Ad3MKZ18.js +38 -0
  103. package/dist/{html-to-image-BTYnN4ev.js → html-to-image-CvfXy1tG.js} +5713 -5451
  104. package/dist/info-A6RAGUB7-DKoayiHY.js +3 -0
  105. package/dist/{infoDiagram-6WML65LV-DqCTXHVy.js → infoDiagram-27XIBGKW-B_ucqo-U.js} +7 -7
  106. package/dist/{ishikawaDiagram-WSZJBQD7-BCUYmZ1v.js → ishikawaDiagram-5VMMS53U-BZFx9b-o.js} +8 -8
  107. package/dist/{journeyDiagram-NVQOT4AX-BXB6M4zN.js → journeyDiagram-3NMN7TZE-D2LcKDUO.js} +8 -8
  108. package/dist/{jsx-runtime-CpoKNRgu.js → jsx-runtime-DgDPJV9S.js} +1 -1
  109. package/dist/{kanban-definition-27J2QSJJ-CGRhrDUX.js → kanban-definition-UXKFOSKX-BpIfcu3G.js} +29 -29
  110. package/dist/katex-DFBiSucW.js +21840 -0
  111. package/dist/{label-lwzzBHUW.js → label-e37ixur5.js} +6 -6
  112. package/dist/{linear-D5r_1YqD.js → linear-Cnaq3Tfb.js} +4 -4
  113. package/dist/{loader-VZ__bv4g.js → loader-D2W4oM-3.js} +15 -15
  114. package/dist/main.js +7018 -12382
  115. package/dist/mermaid-B1Jb9HfY.js +3084 -0
  116. package/dist/mermaid-HWGCJPDP-DYCzSILp.js +2 -0
  117. package/dist/mermaid-parser.core-DxuSfYwJ.js +638 -0
  118. package/dist/{mhchem-BjwrxcV-.js → mhchem-DWCF06w9.js} +1 -1
  119. package/dist/{micromark-factory-space-DruVGzeG.js → micromark-factory-space-DGxAzmw8.js} +2 -2
  120. package/dist/{mindmap-definition-FAOFIHXS-C9gRhzZq.js → mindmap-definition-YA3MSWOX-CmpAfv8K.js} +17 -17
  121. package/dist/{node-sql-parser-DesT1xNw.js → node-sql-parser-BiZOJ-FS.js} +0 -3
  122. package/dist/{number-overlay-editor-De2CabLL.js → number-overlay-editor-CFofZaOi.js} +5 -5
  123. package/dist/packet-AYTQ26CC-Yw7ajchJ.js +3 -0
  124. package/dist/{pegDiagram-VL7TDLO6-Df9IUjMD.js → pegDiagram-XKGWAZYB-DO-0Q8SE.js} +19 -20
  125. package/dist/{pick-SnHlmIBN.js → pick-B7vX8zxG.js} +1 -1
  126. package/dist/pie-WAS4IAKB-BKdKOAkL.js +3 -0
  127. package/dist/{pieDiagram-7S7Q4E2Y-BmRzQ8ZP.js → pieDiagram-E7YTZNPT-B1MbuA_g.js} +29 -31
  128. package/dist/{process-output-CsALk6tp.js → process-output-BTPsjdfd.js} +4 -4
  129. package/dist/purify.es-DgKyQviY.js +805 -0
  130. package/dist/{quadrantDiagram-CIZ2JOQS-wFBvWcxS.js → quadrantDiagram-AXDQQJYC-DftINo6g.js} +5 -5
  131. package/dist/radar-RG4KPBEZ-ScR_D_Ts.js +3 -0
  132. package/dist/railroad-74A4TZTK-DQvPSdo5.js +3 -0
  133. package/dist/railroad-abnf-HS5TGJTU-CsJQG2O8.js +3 -0
  134. package/dist/railroad-ebnf-LZEXJU2U-BgEobkSn.js +3 -0
  135. package/dist/railroad-peg-WCYAUIDC-DjLAjofI.js +3 -0
  136. package/dist/{railroadDiagram-AXF67PYL-DxbIatiN.js → railroadDiagram-O6MQD6OU-DPVOQUXC.js} +17 -18
  137. package/dist/{react-dom-C94wmq5w.js → react-dom-BUgJ-ab_.js} +3 -3
  138. package/dist/{react-DMWcHin-.js → react-ofJbxM4x.js} +2 -2
  139. package/dist/{react-vega-DSD5aT7_.js → react-vega-5AcMW8gG.js} +10012 -9369
  140. package/dist/{requirementDiagram-LRYGKXZP-X_x-Y713.js → requirementDiagram-BXWQKSXE-CC7wZ-tM.js} +20 -19
  141. package/dist/{reveal-component-ChYEzi00.js → reveal-component-COGORv1a.js} +1171 -1105
  142. package/dist/{sankeyDiagram-W5VNT64P-BYJALbbm.js → sankeyDiagram-P5KCCOFB-CDKR5TJH.js} +4 -4
  143. package/dist/schemas-BDZr-nP0.js +5727 -0
  144. package/dist/{select-3qHpFKF9.js → select-UMOSCa3W.js} +246 -246
  145. package/dist/{sequenceDiagram-SI44F4Z6-BiPBe3Sv.js → sequenceDiagram-WJ2MYXX4-DomSyoJI.js} +11 -11
  146. package/dist/{sizeCapture-X5ZJPWSS-BKLDeh5H.js → sizeCapture-INFHLROL-Dx5SpkQF.js} +2 -2
  147. package/dist/{spec-CutWdqo3.js → spec-g740fOWu.js} +4 -4
  148. package/dist/{src-C31ngt98.js → src-CA_m4ONl.js} +298 -303
  149. package/dist/{stateDiagram-OKZ733FA-B7QyNBxH.js → stateDiagram-D77RDMKH-SQLLjdtF.js} +19 -20
  150. package/dist/stateDiagram-v2-MP3YSRHH-Dup4KkIr.js +30 -0
  151. package/dist/style.css +2 -2
  152. package/dist/{swimlanes-SLNWSIFB-B4f8VP3b.js → swimlanes-42K2YHIH-ZXbhyGv6.js} +1501 -1591
  153. package/dist/swimlanesDiagram-VR7AAH4N-CluwxV0g.js +30 -0
  154. package/dist/{swiper-component-C90YjhaV.js → swiper-component-IOUowglM.js} +39 -26
  155. package/dist/{time-aWGfjN8x.js → time-BieKwdYS.js} +42 -42
  156. package/dist/{timeline-definition-Z64GVDOM-Dacq_5lr.js → timeline-definition-24CTP7MA-B8i6B9RR.js} +7 -7
  157. package/dist/{toDate-D-Rx3ux5.js → toDate-C3JOXlJT.js} +10 -9
  158. package/dist/{tooltip-Dt77sBeT.js → tooltip-CdE8k0pS.js} +42 -42
  159. package/dist/treeView-Q6P3EWNA-DuRV97YF.js +3 -0
  160. package/dist/treemap-WGGIJYW6-AsLq-uwC.js +3 -0
  161. package/dist/{use-vega-container-remeasure-DUW4tRxq.js → use-vega-container-remeasure-4DwJbPWu.js} +2 -2
  162. package/dist/{useAsyncData-CH6-CgJF.js → useAsyncData-C0f7qnnN.js} +3 -3
  163. package/dist/{useDateFormatter-Cp9Jdxls.js → useDateFormatter-BKpQHt-W.js} +8 -8
  164. package/dist/{useDeepCompareMemoize-JC87C_jO.js → useDeepCompareMemoize-QCa0HbWB.js} +2 -2
  165. package/dist/{useIframeCapabilities-De3C-9b4.js → useIframeCapabilities-CVtNkI3Y.js} +2 -2
  166. package/dist/{useLifecycle-B4RGlyf0.js → useLifecycle-BGRBkTFT.js} +6 -6
  167. package/dist/useTheme-iQ0VoptU.js +904 -0
  168. package/dist/{vega-component-D-IXRnlx.js → vega-component-DRI4BDLQ.js} +15 -15
  169. package/dist/{vega-embed-container-TJ5z5dZw.js → vega-embed-container-CbnTccZi.js} +6 -6
  170. package/dist/vega-loader.browser-D95WfUcj.js +1139 -0
  171. package/dist/{vennDiagram-T6HMQDX7-D-Rcq3Iu.js → vennDiagram-4TSXK5OY-CS7lHhxI.js} +9 -9
  172. package/dist/wardley-WFR3VGLG-Na-tFhQJ.js +3 -0
  173. package/dist/{wardleyDiagram-T6FBY63Y-Z-Og7_Wd.js → wardleyDiagram-VM6X3IG4-BSm-L8JI.js} +10 -10
  174. package/dist/{xychartDiagram-ELKLHX3M-BDJ2dITA.js → xychartDiagram-S5SC5T6Z-8fKCJGrJ.js} +248 -139
  175. package/package.json +52 -52
  176. package/src/__mocks__/requests.ts +7 -2
  177. package/src/__tests__/__snapshots__/CellStatus.test.tsx.snap +12 -12
  178. package/src/components/data-table/column-explorer-panel/column-explorer.tsx +2 -6
  179. package/src/components/data-table/column-visibility-dropdown.tsx +9 -3
  180. package/src/components/datasources/components.tsx +4 -2
  181. package/src/components/editor/chrome/components/feedback-button.tsx +10 -9
  182. package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +143 -0
  183. package/src/components/editor/chrome/panels/packages-panel.tsx +145 -51
  184. package/src/components/editor/code/__tests__/readonly-diff.test.tsx +65 -0
  185. package/src/components/editor/code/readonly-diff.tsx +1 -1
  186. package/src/components/editor/file-tree/__tests__/tree-actions.test.tsx +54 -0
  187. package/src/components/editor/file-tree/tree-actions.tsx +11 -14
  188. package/src/components/editor/output/Outputs.css +1 -0
  189. package/src/components/editor/package-alert.tsx +25 -1
  190. package/src/components/home/components.tsx +17 -0
  191. package/src/components/pages/gallery-page.tsx +2 -4
  192. package/src/components/pages/home-page.tsx +2 -4
  193. package/src/components/terminal/terminal.tsx +4 -4
  194. package/src/components/tracing/tracing-spec.ts +1 -1
  195. package/src/components/ui/table.tsx +1 -1
  196. package/src/core/cells/pending-delete-service.ts +12 -16
  197. package/src/core/codemirror/language/__tests__/sql.test.ts +70 -2
  198. package/src/core/codemirror/language/languages/sql/sql.ts +16 -1
  199. package/src/core/codemirror/rtc/extension.ts +5 -2
  200. package/src/core/datasets/__tests__/data-source.test.ts +2 -0
  201. package/src/core/datasets/data-source-connections.ts +15 -10
  202. package/src/core/islands/__tests__/parse.test.ts +140 -7
  203. package/src/core/islands/parse.ts +20 -0
  204. package/src/core/packages/__tests__/useInstallPackage.test.tsx +47 -1
  205. package/src/core/packages/toast-components.tsx +26 -0
  206. package/src/core/packages/useInstallPackage.ts +7 -2
  207. package/src/core/runtime/__tests__/runtime.test.ts +11 -0
  208. package/src/core/runtime/runtime.ts +7 -2
  209. package/src/core/wasm/bridge.ts +1 -0
  210. package/src/core/websocket/transports/transport.ts +1 -1
  211. package/src/core/websocket/transports/ws.ts +1 -1
  212. package/src/css/app/Cell.css +2 -0
  213. package/src/plugins/core/RenderHTML.tsx +11 -3
  214. package/src/plugins/core/__test__/RenderHTML.test.ts +64 -0
  215. package/src/plugins/layout/AccordionPlugin.tsx +7 -2
  216. package/src/plugins/layout/__test__/AccordionPlugin.test.tsx +66 -0
  217. package/dist/_baseMerge-Dv8bBloN.js +0 -73
  218. package/dist/_initCloneObject---vediN2.js +0 -95
  219. package/dist/arc-DOVLrCPd.js +0 -82
  220. package/dist/architecture-TIHT7OUA-MiJpPpQW.js +0 -3
  221. package/dist/array-CApNbSU9.js +0 -6
  222. package/dist/assets/__vite-browser-external-BdKGjRZ4.js +0 -1
  223. package/dist/assets/worker-DlIBfp9S.js +0 -98
  224. package/dist/blockDiagram-VBNYF7ZC-Bc--I65C.js +0 -3158
  225. package/dist/chat-ui-DttQ-5Ut.js +0 -8455
  226. package/dist/chunk-3NCLNEKW-BIp_lB_4.js +0 -14
  227. package/dist/chunk-5FCAYU7R-C_HO9A1J.js +0 -23
  228. package/dist/chunk-5HE753X5-Bixm_MV-.js +0 -38
  229. package/dist/chunk-5JV3BV7I-CH5J3iZY.js +0 -54
  230. package/dist/chunk-5TONJI2A-DG6gDiSS.js +0 -62
  231. package/dist/chunk-7BUUIJ7U-5afmIPeo.js +0 -82
  232. package/dist/chunk-BIQX33UG-7TMBUf89.js +0 -23
  233. package/dist/chunk-CQNSW5MT-Cnqqsxt-.js +0 -38
  234. package/dist/chunk-CYSBUYHQ-BAbymFHR.js +0 -23
  235. package/dist/chunk-EMLP6XTP-Bsz-QL77.js +0 -23
  236. package/dist/chunk-J7OUQ5F2-CM_meqZH.js +0 -57
  237. package/dist/chunk-JG7HCLWE-DUnCDgPk.js +0 -62
  238. package/dist/chunk-MOZMSUNE-BG6IHvzT.js +0 -35
  239. package/dist/chunk-OSBZ3O6U-CYwj_bvR.js +0 -23
  240. package/dist/chunk-QBLGF6JB-B4vJ4j8J.js +0 -23
  241. package/dist/chunk-QR6OTTB3-D4wH2ldi.js +0 -3738
  242. package/dist/chunk-R7FJI6CG-Blf8FcmZ.js +0 -64
  243. package/dist/chunk-RYQCIY6F-BWbIlBIH.js +0 -241
  244. package/dist/chunk-U6XO7XAA-COw445DS.js +0 -63
  245. package/dist/chunk-UBXNYLIW-BHigVU4H.js +0 -32
  246. package/dist/chunk-YOTPTUD7-Dn044Q_d.js +0 -30
  247. package/dist/chunk-ZIRB5QZD-BR4TMfOa.js +0 -1153
  248. package/dist/classDiagram-JCYQIIEL-DmXSLxe_.js +0 -30
  249. package/dist/classDiagram-v2-OCEON4UE-CooqVexA.js +0 -30
  250. package/dist/click-outside-container-D_URcm3D.js +0 -167
  251. package/dist/code-block-37QAKDTI-CQrzBOr-.js +0 -107
  252. package/dist/cynefin-VYW2F7L2-CeHAxOEX.js +0 -3
  253. package/dist/dagre-VZM6K2ZE-CJggWPTJ.js +0 -328
  254. package/dist/dist-ABQjhuek.js +0 -64
  255. package/dist/dist-CO5R6VMi.js +0 -538
  256. package/dist/eventmodeling-45OFAUF4-B_lWZ-Pd.js +0 -3
  257. package/dist/flowDiagram-UKHOOZJN-g1AmrZzM.js +0 -17
  258. package/dist/gitGraph-TEB2WS4Q-Dj-eXUph.js +0 -3
  259. package/dist/info-DKCQHKI2-Bhb-pe2e.js +0 -3
  260. package/dist/line-CuKjIQa1.js +0 -34
  261. package/dist/map-BJpOfPlL.js +0 -149
  262. package/dist/math-BXtKgYah.js +0 -10
  263. package/dist/mermaid-4DMBBIKO-Ddp9TgNp.js +0 -2
  264. package/dist/mermaid-BsHdQeQf.js +0 -1173
  265. package/dist/mermaid-parser.core-Din9FvSi.js +0 -99
  266. package/dist/packet-7NZHBO7P-fbkIIyKE.js +0 -3
  267. package/dist/path-BNHuHZP8.js +0 -87
  268. package/dist/pie-RZYD4A2V-CLRIsxY1.js +0 -3
  269. package/dist/purify.es-CB-YO1Hn.js +0 -774
  270. package/dist/radar-I7S5WNFK-BGzCbgXu.js +0 -3
  271. package/dist/railroad-3IZDKUUU-CvQIIcuU.js +0 -3
  272. package/dist/railroad-abnf-AHOZXSZD-CMwtlNtu.js +0 -3
  273. package/dist/railroad-ebnf-EBAXGLYW-n1QUOAsh.js +0 -3
  274. package/dist/railroad-peg-LSFZ7HO6-PjnrpmCs.js +0 -3
  275. package/dist/schemas-DzK6U94N.js +0 -6057
  276. package/dist/stateDiagram-v2-UEYNNEHI-BTRUs8Il.js +0 -30
  277. package/dist/step-CKczO72Q.js +0 -670
  278. package/dist/swimlanesDiagram-ULZ7WXOC-NBmgBl9G.js +0 -31
  279. package/dist/timer-DpDyj9G0.js +0 -596
  280. package/dist/treeView-QDETBFTQ-DU8LwHuf.js +0 -3
  281. package/dist/treemap-6X3UGDF4-DUk4-k_O.js +0 -3
  282. package/dist/useTheme-CVJ0UOf2.js +0 -841
  283. package/dist/vega-loader.browser-DEggZzni.js +0 -1083
  284. package/dist/wardley-OPB4EBWU-Db-AaGas.js +0 -3
@@ -1,16 +1,16 @@
1
1
  import { a as e } from "./rolldown-runtime-Cb76FRpK.js";
2
- import { c as t, g as n, h as r, m as i, t as a } from "./button-CKBkqR9J.js";
3
- import { t as o } from "./react-DMWcHin-.js";
4
- import { t as s } from "./compiler-runtime-CAH9RLw2.js";
5
- import { Ot as c, ot as l } from "./html-to-image-BTYnN4ev.js";
6
- import { u } from "./dist-3_o3T78I.js";
7
- import { _n as d, c as f, ct as p, g as m, h, l as g, lt as _, n as v, o as y, r as b, t as x, u as S, ut as C, vn as w, xn as T } from "./common-C4UahYwr.js";
8
- import { R as E } from "./select-3qHpFKF9.js";
9
- import { Y as D } from "./dropdown-menu-DhCfcscX.js";
10
- import { t as O } from "./jsx-runtime-CpoKNRgu.js";
11
- import { Tc as k } from "./schemas-DzK6U94N.js";
12
- import { t as A } from "./tooltip-Dt77sBeT.js";
13
- import { C as j, b as ee, j as M } from "./useTheme-CVJ0UOf2.js";
2
+ import { c as t, g as n, h as r, m as i, t as a } from "./button-DdXAm8iz.js";
3
+ import { t as o } from "./react-ofJbxM4x.js";
4
+ import { t as s } from "./compiler-runtime-Cj8ZWiNS.js";
5
+ import { kt as c, st as l } from "./html-to-image-CvfXy1tG.js";
6
+ import { u } from "./dist-6ChWbo8z.js";
7
+ import { _n as d, c as f, ct as p, g as m, h, l as g, lt as _, n as v, o as y, r as b, t as x, u as S, ut as C, vn as w, xn as T } from "./common-BxjexIJy.js";
8
+ import { R as E } from "./select-UMOSCa3W.js";
9
+ import { Y as D } from "./dropdown-menu-C73aTomr.js";
10
+ import { t as O } from "./jsx-runtime-DgDPJV9S.js";
11
+ import { K as k } from "./schemas-BDZr-nP0.js";
12
+ import { t as A } from "./tooltip-CdE8k0pS.js";
13
+ import { A as j, C as M, b as ee } from "./useTheme-iQ0VoptU.js";
14
14
  /* empty css */
15
15
  var N = u("sticky-note", [["path", {
16
16
  d: "M21 9a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 15 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2z",
@@ -18,36 +18,12 @@ var N = u("sticky-note", [["path", {
18
18
  }], ["path", {
19
19
  d: "M15 3v5a1 1 0 0 0 1 1h5",
20
20
  key: "6s6qgf"
21
- }]]), P = /* @__PURE__ */ e(o(), 1), F = s(), te = Object.defineProperty, ne = Object.defineProperties, I = Object.getOwnPropertyDescriptors, re = Object.getOwnPropertySymbols, ie = Object.prototype.hasOwnProperty, ae = Object.prototype.propertyIsEnumerable, oe = (e, t, n) => t in e ? te(e, t, {
22
- enumerable: !0,
23
- configurable: !0,
24
- writable: !0,
25
- value: n
26
- }) : e[t] = n, se = (e, t) => {
27
- for (var n in t ||= {}) ie.call(t, n) && oe(e, n, t[n]);
28
- if (re) for (var n of re(t)) ae.call(t, n) && oe(e, n, t[n]);
29
- return e;
30
- }, ce = (e, t) => ne(e, I(t)), le = (e, t, n) => oe(e, typeof t == "symbol" ? t : t + "", n), ue = (e, t, n) => new Promise((r, i) => {
31
- var a = (e) => {
32
- try {
33
- s(n.next(e));
34
- } catch (e) {
35
- i(e);
36
- }
37
- }, o = (e) => {
38
- try {
39
- s(n.throw(e));
40
- } catch (e) {
41
- i(e);
42
- }
43
- }, s = (e) => e.done ? r(e.value) : Promise.resolve(e.value).then(a, o);
44
- s((n = n.apply(e, t)).next());
45
- }), de = (e, t) => {
21
+ }]]), P = /* @__PURE__ */ e(o(), 1), F = s(), te = (e, t) => {
46
22
  for (let n in t) e[n] = t[n];
47
23
  return e;
48
- }, L = (e, t) => Array.from(e.querySelectorAll(t)), fe = (e, t, n) => {
24
+ }, I = (e, t) => Array.from(e.querySelectorAll(t)), ne = (e, t, n) => {
49
25
  n ? e.classList.add(t) : e.classList.remove(t);
50
- }, pe = (e) => {
26
+ }, re = (e) => {
51
27
  if (typeof e == "string") {
52
28
  if (e === "null") return null;
53
29
  if (e === "true") return !0;
@@ -55,23 +31,23 @@ var N = u("sticky-note", [["path", {
55
31
  if (e.match(/^-?[\d\.]+$/)) return parseFloat(e);
56
32
  }
57
33
  return e;
58
- }, R = (e, t) => {
34
+ }, ie = (e, t) => {
59
35
  e.style.transform = t;
60
- }, me = (e, t) => {
36
+ }, L = (e, t) => {
61
37
  let n = e.matches || e.matchesSelector || e.msMatchesSelector;
62
38
  return !!(n && n.call(e, t));
63
- }, z = (e, t) => {
39
+ }, R = (e, t) => {
64
40
  if (e && typeof e.closest == "function") return e.closest(t);
65
41
  for (; e;) {
66
- if (me(e, t)) return e;
42
+ if (L(e, t)) return e;
67
43
  e = e.parentElement;
68
44
  }
69
45
  return null;
70
- }, he = (e) => {
46
+ }, ae = (e) => {
71
47
  e ||= document.documentElement;
72
48
  let t = e.requestFullscreen || e.webkitRequestFullscreen || e.webkitRequestFullScreen || e.mozRequestFullScreen || e.msRequestFullscreen;
73
49
  t && t.apply(e);
74
- }, ge = (e, t, n, r = "") => {
50
+ }, oe = (e, t, n, r = "") => {
75
51
  let i = e.querySelectorAll("." + n);
76
52
  for (let t = 0; t < i.length; t++) {
77
53
  let n = i[t];
@@ -79,10 +55,10 @@ var N = u("sticky-note", [["path", {
79
55
  }
80
56
  let a = document.createElement(t);
81
57
  return a.className = n, a.innerHTML = r, e.appendChild(a), a;
82
- }, _e = (e) => {
58
+ }, z = (e) => {
83
59
  let t = document.createElement("style");
84
60
  return e && e.length > 0 && t.appendChild(document.createTextNode(e)), document.head.appendChild(t), t;
85
- }, ve = () => {
61
+ }, se = () => {
86
62
  let e = {};
87
63
  location.search.replace(/[A-Z0-9]+?=([\w\.%-]*)/gi, (t) => {
88
64
  let n = t.split("=").shift(), r = t.split("=").pop();
@@ -90,25 +66,27 @@ var N = u("sticky-note", [["path", {
90
66
  });
91
67
  for (let t in e) {
92
68
  let n = e[t];
93
- e[t] = pe(unescape(n));
69
+ e[t] = re(unescape(n));
94
70
  }
95
71
  return e.dependencies !== void 0 && delete e.dependencies, e;
96
- }, B = (e, t = 0) => {
72
+ }, ce = (e, t = 0) => {
97
73
  if (e) {
98
74
  let n, r = e.style.height;
99
75
  return e.style.height = "0px", e.parentElement && (e.parentElement.style.height = "auto"), n = t - (e.parentElement?.offsetHeight || 0), e.style.height = r + "px", e.parentElement && e.parentElement.style.removeProperty("height"), n;
100
76
  }
101
77
  return t;
102
- }, ye = {
78
+ }, le = {
103
79
  mp4: "video/mp4",
104
80
  m4a: "video/mp4",
105
81
  ogv: "video/ogg",
106
82
  mpeg: "video/mpeg",
107
83
  webm: "video/webm"
108
- }, be = (e = "") => {
84
+ }, ue = (e = "") => {
109
85
  let t = e.split(".").pop();
110
- return t ? ye[t] : void 0;
111
- }, xe = (e = "") => encodeURI(e).replace(/%5B/g, "[").replace(/%5D/g, "]").replace(/[!'()*]/g, (e) => `%${e.charCodeAt(0).toString(16).toUpperCase()}`), Se = navigator.userAgent, Ce = /(iphone|ipod|ipad|android)/gi.test(Se) || navigator.platform === "MacIntel" && navigator.maxTouchPoints > 1, we = /android/gi.test(Se), V = (function(e) {
86
+ return t ? le[t] : void 0;
87
+ }, de = (e = "") => encodeURI(e).replace(/%5B/g, "[").replace(/%5D/g, "]").replace(/[!'()*]/g, (e) => `%${e.charCodeAt(0).toString(16).toUpperCase()}`), fe = navigator.userAgent, pe = /(iphone|ipod|ipad|android)/gi.test(fe) || navigator.platform === "MacIntel" && navigator.maxTouchPoints > 1;
88
+ /chrome/i.test(fe) && /edge/i.test(fe);
89
+ var B = /android/gi.test(fe), me = function(e) {
112
90
  if (e) {
113
91
  var t = function(e) {
114
92
  return [].slice.call(e);
@@ -203,13 +181,13 @@ var N = u("sticky-note", [["path", {
203
181
  element: e,
204
182
  active: !0
205
183
  });
206
- return (function(e) {
184
+ return function(e) {
207
185
  e.originalStyle = {
208
186
  whiteSpace: e.element.style.whiteSpace,
209
187
  display: e.element.style.display,
210
188
  fontSize: e.element.style.fontSize
211
189
  }, S(e), e.newbie = !0, e.dirty = !0, o.push(e);
212
- })(t), {
190
+ }(t), {
213
191
  element: e,
214
192
  fit: v(t, a),
215
193
  unfreeze: b(t),
@@ -223,9 +201,40 @@ var N = u("sticky-note", [["path", {
223
201
  var n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
224
202
  return typeof e == "string" ? D(t(document.querySelectorAll(e)), n) : D([e], n)[0];
225
203
  }
226
- })(typeof window > "u" ? null : window), H = class {
204
+ }(typeof window > "u" ? null : window);
205
+ function he(e) {
206
+ "@babel/helpers - typeof";
207
+ return he = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(e) {
208
+ return typeof e;
209
+ } : function(e) {
210
+ return e && typeof Symbol == "function" && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
211
+ }, he(e);
212
+ }
213
+ function ge(e, t) {
214
+ if (he(e) != "object" || !e) return e;
215
+ var n = e[Symbol.toPrimitive];
216
+ if (n !== void 0) {
217
+ var r = n.call(e, t || "default");
218
+ if (he(r) != "object") return r;
219
+ throw TypeError("@@toPrimitive must return a primitive value.");
220
+ }
221
+ return (t === "string" ? String : Number)(e);
222
+ }
223
+ function _e(e) {
224
+ var t = ge(e, "string");
225
+ return he(t) == "symbol" ? t : t + "";
226
+ }
227
+ function V(e, t, n) {
228
+ return (t = _e(t)) in e ? Object.defineProperty(e, t, {
229
+ value: n,
230
+ enumerable: !0,
231
+ configurable: !0,
232
+ writable: !0
233
+ }) : e[t] = n, e;
234
+ }
235
+ var ve = class {
227
236
  constructor(e) {
228
- le(this, "allowedToPlayAudio", null), this.Reveal = e, this.startEmbeddedMedia = this.startEmbeddedMedia.bind(this), this.startEmbeddedIframe = this.startEmbeddedIframe.bind(this), this.preventIframeAutoFocus = this.preventIframeAutoFocus.bind(this), this.ensureMobileMediaPlaying = this.ensureMobileMediaPlaying.bind(this), this.failedAudioPlaybackTargets = /* @__PURE__ */ new Set(), this.failedVideoPlaybackTargets = /* @__PURE__ */ new Set(), this.failedMutedVideoPlaybackTargets = /* @__PURE__ */ new Set(), this.renderMediaPlayButton();
237
+ V(this, "allowedToPlayAudio", null), this.Reveal = e, this.startEmbeddedMedia = this.startEmbeddedMedia.bind(this), this.startEmbeddedIframe = this.startEmbeddedIframe.bind(this), this.preventIframeAutoFocus = this.preventIframeAutoFocus.bind(this), this.ensureMobileMediaPlaying = this.ensureMobileMediaPlaying.bind(this), this.failedAudioPlaybackTargets = /* @__PURE__ */ new Set(), this.failedVideoPlaybackTargets = /* @__PURE__ */ new Set(), this.failedMutedVideoPlaybackTargets = /* @__PURE__ */ new Set(), this.renderMediaPlayButton();
229
238
  }
230
239
  renderMediaPlayButton() {
231
240
  this.mediaPlayButton = document.createElement("button"), this.mediaPlayButton.className = "r-overlay-button r-media-play-button", this.mediaPlayButton.addEventListener("click", () => {
@@ -249,14 +258,14 @@ var N = u("sticky-note", [["path", {
249
258
  let t = n.replace(/\s*!important\s*$/, "").trim();
250
259
  e.style.setProperty("display", t, "important");
251
260
  } else e.style.display = n;
252
- L(e, "img[data-src], video[data-src], audio[data-src], iframe[data-src]").forEach((e) => {
261
+ I(e, "img[data-src], video[data-src], audio[data-src], iframe[data-src]").forEach((e) => {
253
262
  let t = e.tagName === "IFRAME";
254
263
  (!t || this.shouldPreload(e)) && (e.setAttribute("src", e.getAttribute("data-src")), e.setAttribute("data-lazy-loaded", ""), e.removeAttribute("data-src"), t && e.addEventListener("load", this.preventIframeAutoFocus));
255
- }), L(e, "video, audio").forEach((e) => {
264
+ }), I(e, "video, audio").forEach((e) => {
256
265
  let t = 0;
257
- L(e, "source[data-src]").forEach((e) => {
266
+ I(e, "source[data-src]").forEach((e) => {
258
267
  e.setAttribute("src", e.getAttribute("data-src")), e.removeAttribute("data-src"), e.setAttribute("data-lazy-loaded", ""), t += 1;
259
- }), Ce && e.tagName === "VIDEO" && e.setAttribute("playsinline", ""), t > 0 && e.load();
268
+ }), pe && e.tagName === "VIDEO" && e.setAttribute("playsinline", ""), t > 0 && e.load();
260
269
  });
261
270
  let r = e.slideBackgroundElement;
262
271
  if (r) {
@@ -265,13 +274,13 @@ var N = u("sticky-note", [["path", {
265
274
  if (r.hasAttribute("data-loaded") === !1) {
266
275
  r.setAttribute("data-loaded", "true");
267
276
  let a = e.getAttribute("data-background-image"), o = e.getAttribute("data-background-video"), s = e.hasAttribute("data-background-video-loop"), c = e.hasAttribute("data-background-video-muted");
268
- if (a) /^data:/.test(a.trim()) ? n.style.backgroundImage = `url(${a.trim()})` : n.style.backgroundImage = a.split(",").map((e) => `url(${xe(decodeURI(e.trim()))})`).join(",");
277
+ if (a) /^data:/.test(a.trim()) ? n.style.backgroundImage = `url(${a.trim()})` : n.style.backgroundImage = a.split(",").map((e) => `url(${de(decodeURI(e.trim()))})`).join(",");
269
278
  else if (o) {
270
279
  let e = document.createElement("video");
271
- s && e.setAttribute("loop", ""), (c || this.Reveal.isSpeakerNotes()) && (e.muted = !0), Ce && e.setAttribute("playsinline", ""), o.split(",").forEach((t) => {
280
+ s && e.setAttribute("loop", ""), (c || this.Reveal.isSpeakerNotes()) && (e.muted = !0), pe && e.setAttribute("playsinline", ""), o.split(",").forEach((t) => {
272
281
  let n = document.createElement("source");
273
282
  n.setAttribute("src", t);
274
- let r = be(t);
283
+ let r = ue(t);
275
284
  r && n.setAttribute("type", r), e.appendChild(n);
276
285
  }), n.appendChild(e);
277
286
  } else if (i && t.excludeIframes !== !0) {
@@ -286,7 +295,7 @@ var N = u("sticky-note", [["path", {
286
295
  }
287
296
  layout(e) {
288
297
  Array.from(e.querySelectorAll(".r-fit-text")).forEach((e) => {
289
- V(e, {
298
+ me(e, {
290
299
  minSize: 24,
291
300
  maxSize: this.Reveal.getConfig().height * .8,
292
301
  observeMutations: !1,
@@ -297,17 +306,17 @@ var N = u("sticky-note", [["path", {
297
306
  unload(e) {
298
307
  e.style.display = "none";
299
308
  let t = this.Reveal.getSlideBackground(e);
300
- t && (t.style.display = "none", L(t, "iframe[src]").forEach((e) => {
309
+ t && (t.style.display = "none", I(t, "iframe[src]").forEach((e) => {
301
310
  e.removeAttribute("src");
302
- })), L(e, "video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]").forEach((e) => {
311
+ })), I(e, "video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]").forEach((e) => {
303
312
  e.setAttribute("data-src", e.getAttribute("src")), e.removeAttribute("src");
304
- }), L(e, "video[data-lazy-loaded] source[src], audio source[src]").forEach((e) => {
313
+ }), I(e, "video[data-lazy-loaded] source[src], audio source[src]").forEach((e) => {
305
314
  e.setAttribute("data-src", e.getAttribute("src")), e.removeAttribute("src");
306
315
  });
307
316
  }
308
317
  formatEmbeddedContent() {
309
318
  let e = (e, t, n) => {
310
- L(this.Reveal.getSlidesElement(), "iframe[" + e + "*=\"" + t + "\"]").forEach((t) => {
319
+ I(this.Reveal.getSlidesElement(), "iframe[" + e + "*=\"" + t + "\"]").forEach((t) => {
311
320
  let r = t.getAttribute(e);
312
321
  r && r.indexOf(n) === -1 && t.setAttribute(e, r + (/\?/.test(r) ? "&" : "?") + n);
313
322
  });
@@ -317,19 +326,19 @@ var N = u("sticky-note", [["path", {
317
326
  startEmbeddedContent(e) {
318
327
  if (e) {
319
328
  let t = this.Reveal.isSpeakerNotes();
320
- L(e, "img[src$=\".gif\"]").forEach((e) => {
329
+ I(e, "img[src$=\".gif\"]").forEach((e) => {
321
330
  e.setAttribute("src", e.getAttribute("src"));
322
- }), L(e, "video, audio").forEach((e) => {
323
- if (z(e, ".fragment") && !z(e, ".fragment.visible")) return;
331
+ }), I(e, "video, audio").forEach((e) => {
332
+ if (R(e, ".fragment") && !R(e, ".fragment.visible")) return;
324
333
  let n = this.Reveal.getConfig().autoPlayMedia;
325
- if (typeof n != "boolean" && (n = e.hasAttribute("data-autoplay") || !!z(e, ".slide-background")), n && typeof e.play == "function") {
334
+ if (typeof n != "boolean" && (n = e.hasAttribute("data-autoplay") || !!R(e, ".slide-background")), n && typeof e.play == "function") {
326
335
  if (t && !e.muted) return;
327
- e.readyState > 1 ? this.startEmbeddedMedia({ target: e }) : Ce ? (e.addEventListener("canplay", this.ensureMobileMediaPlaying), this.playMediaElement(e)) : (e.removeEventListener("loadeddata", this.startEmbeddedMedia), e.addEventListener("loadeddata", this.startEmbeddedMedia));
336
+ e.readyState > 1 ? this.startEmbeddedMedia({ target: e }) : pe ? (e.addEventListener("canplay", this.ensureMobileMediaPlaying), this.playMediaElement(e)) : (e.removeEventListener("loadeddata", this.startEmbeddedMedia), e.addEventListener("loadeddata", this.startEmbeddedMedia));
328
337
  }
329
- }), t || (L(e, "iframe[src]").forEach((e) => {
330
- z(e, ".fragment") && !z(e, ".fragment.visible") || this.startEmbeddedIframe({ target: e });
331
- }), L(e, "iframe[data-src]").forEach((e) => {
332
- z(e, ".fragment") && !z(e, ".fragment.visible") || e.getAttribute("src") !== e.getAttribute("data-src") && (e.removeEventListener("load", this.startEmbeddedIframe), e.addEventListener("load", this.startEmbeddedIframe), e.setAttribute("src", e.getAttribute("data-src")));
338
+ }), t || (I(e, "iframe[src]").forEach((e) => {
339
+ R(e, ".fragment") && !R(e, ".fragment.visible") || this.startEmbeddedIframe({ target: e });
340
+ }), I(e, "iframe[data-src]").forEach((e) => {
341
+ R(e, ".fragment") && !R(e, ".fragment.visible") || e.getAttribute("src") !== e.getAttribute("data-src") && (e.removeEventListener("load", this.startEmbeddedIframe), e.addEventListener("load", this.startEmbeddedIframe), e.setAttribute("src", e.getAttribute("data-src")));
333
342
  }));
334
343
  }
335
344
  }
@@ -341,7 +350,7 @@ var N = u("sticky-note", [["path", {
341
350
  }, 1e3);
342
351
  }
343
352
  startEmbeddedMedia(e) {
344
- let t = !!z(e.target, "html"), n = !!z(e.target, ".present");
353
+ let t = !!R(e.target, "html"), n = !!R(e.target, ".present");
345
354
  t && n && (e.target.paused || e.target.ended) && (e.target.currentTime = 0, this.playMediaElement(e.target)), e.target.removeEventListener("loadeddata", this.startEmbeddedMedia);
346
355
  }
347
356
  playMediaElement(e) {
@@ -352,7 +361,7 @@ var N = u("sticky-note", [["path", {
352
361
  if (t.name === "NotAllowedError") {
353
362
  if (this.allowedToPlayAudio = !1, e.tagName === "VIDEO") {
354
363
  this.onVideoPlaybackNotAllowed(e);
355
- let t = !!z(e, "html"), n = !!z(e, ".present"), r = e.muted;
364
+ let t = !!R(e, "html"), n = !!R(e, ".present"), r = e.muted;
356
365
  t && n && !r && (e.setAttribute("data-muted-by-reveal", "true"), e.muted = !0, e.play().catch(() => {
357
366
  this.onMutedVideoPlaybackNotAllowed(e);
358
367
  }));
@@ -363,23 +372,23 @@ var N = u("sticky-note", [["path", {
363
372
  startEmbeddedIframe(e) {
364
373
  let t = e.target;
365
374
  if (this.preventIframeAutoFocus(e), t && t.contentWindow) {
366
- let n = !!z(e.target, "html"), r = !!z(e.target, ".present");
375
+ let n = !!R(e.target, "html"), r = !!R(e.target, ".present");
367
376
  if (n && r) {
368
377
  let e = this.Reveal.getConfig().autoPlayMedia;
369
- typeof e != "boolean" && (e = t.hasAttribute("data-autoplay") || !!z(t, ".slide-background")), /youtube\.com\/embed\//.test(t.getAttribute("src")) && e ? t.contentWindow.postMessage("{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}", "*") : /player\.vimeo\.com\//.test(t.getAttribute("src")) && e ? t.contentWindow.postMessage("{\"method\":\"play\"}", "*") : t.contentWindow.postMessage("slide:start", "*");
378
+ typeof e != "boolean" && (e = t.hasAttribute("data-autoplay") || !!R(t, ".slide-background")), /youtube\.com\/embed\//.test(t.getAttribute("src")) && e ? t.contentWindow.postMessage("{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}", "*") : /player\.vimeo\.com\//.test(t.getAttribute("src")) && e ? t.contentWindow.postMessage("{\"method\":\"play\"}", "*") : t.contentWindow.postMessage("slide:start", "*");
370
379
  }
371
380
  }
372
381
  }
373
382
  stopEmbeddedContent(e, t = {}) {
374
- t = de({ unloadIframes: !0 }, t), e && e.parentNode && (L(e, "video, audio").forEach((e) => {
375
- !e.hasAttribute("data-ignore") && typeof e.pause == "function" && (e.setAttribute("data-paused-by-reveal", ""), e.pause(), Ce && e.removeEventListener("canplay", this.ensureMobileMediaPlaying));
376
- }), L(e, "iframe").forEach((e) => {
383
+ t = te({ unloadIframes: !0 }, t), e && e.parentNode && (I(e, "video, audio").forEach((e) => {
384
+ !e.hasAttribute("data-ignore") && typeof e.pause == "function" && (e.setAttribute("data-paused-by-reveal", ""), e.pause(), pe && e.removeEventListener("canplay", this.ensureMobileMediaPlaying));
385
+ }), I(e, "iframe").forEach((e) => {
377
386
  e.contentWindow && e.contentWindow.postMessage("slide:stop", "*"), e.removeEventListener("load", this.preventIframeAutoFocus), e.removeEventListener("load", this.startEmbeddedIframe);
378
- }), L(e, "iframe[src*=\"youtube.com/embed/\"]").forEach((e) => {
387
+ }), I(e, "iframe[src*=\"youtube.com/embed/\"]").forEach((e) => {
379
388
  !e.hasAttribute("data-ignore") && e.contentWindow && typeof e.contentWindow.postMessage == "function" && e.contentWindow.postMessage("{\"event\":\"command\",\"func\":\"pauseVideo\",\"args\":\"\"}", "*");
380
- }), L(e, "iframe[src*=\"player.vimeo.com/\"]").forEach((e) => {
389
+ }), I(e, "iframe[src*=\"player.vimeo.com/\"]").forEach((e) => {
381
390
  !e.hasAttribute("data-ignore") && e.contentWindow && typeof e.contentWindow.postMessage == "function" && e.contentWindow.postMessage("{\"method\":\"pause\"}", "*");
382
- }), t.unloadIframes === !0 && L(e, "iframe[data-src]").forEach((e) => {
391
+ }), t.unloadIframes === !0 && I(e, "iframe[data-src]").forEach((e) => {
383
392
  e.setAttribute("src", "about:blank"), e.removeAttribute("src");
384
393
  }));
385
394
  }
@@ -409,7 +418,7 @@ var N = u("sticky-note", [["path", {
409
418
  });
410
419
  }
411
420
  clearMediaPlaybackErrors() {
412
- this.resetTemporarilyMutedMedia(), this.failedAudioPlaybackTargets.clear(), this.failedVideoPlaybackTargets.clear(), this.failedMutedVideoPlaybackTargets.clear(), this.mediaPlayButton.remove();
421
+ this.resetTemporarilyMutedMedia(), this.failedAudioPlaybackTargets.clear(), this.failedVideoPlaybackTargets.clear(), this.failedMutedVideoPlaybackTargets.clear(), this.mediaPlayButton && this.mediaPlayButton.parentNode && this.mediaPlayButton.remove();
413
422
  }
414
423
  preventIframeAutoFocus(e) {
415
424
  let t = e.target;
@@ -423,7 +432,7 @@ var N = u("sticky-note", [["path", {
423
432
  afterSlideChanged() {
424
433
  this.clearMediaPlaybackErrors();
425
434
  }
426
- }, Te = ".slides section", Ee = ".slides>section", De = ".slides>section.present>section", Oe = ".backgrounds>.slide-background", ke = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener|showPreview/, Ae = "h.v", je = "h/v", Me = "c", Ne = "c/t", Pe = class {
435
+ }, H = ".slides section", ye = ".slides>section", be = ".slides>section.present>section", xe = ".backgrounds>.slide-background", Se = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener|showPreview|previewIframe/, Ce = class {
427
436
  constructor(e) {
428
437
  this.Reveal = e;
429
438
  }
@@ -438,22 +447,22 @@ var N = u("sticky-note", [["path", {
438
447
  this.Reveal.getConfig().slideNumber && this.element && (this.element.innerHTML = this.getSlideNumber());
439
448
  }
440
449
  getSlideNumber(e = this.Reveal.getCurrentSlide()) {
441
- let t = this.Reveal.getConfig(), n, r = Ae;
450
+ let t = this.Reveal.getConfig(), n, r = "h.v";
442
451
  if (typeof t.slideNumber == "function") n = t.slideNumber(e);
443
452
  else {
444
- typeof t.slideNumber == "string" && (r = t.slideNumber), !/c/.test(r) && this.Reveal.getHorizontalSlides().length === 1 && (r = Me);
453
+ typeof t.slideNumber == "string" && (r = t.slideNumber), !/c/.test(r) && this.Reveal.getHorizontalSlides().length === 1 && (r = "c");
445
454
  let i = e && e.dataset.visibility === "uncounted" ? 0 : 1;
446
455
  switch (n = [], r) {
447
- case Me:
456
+ case "c":
448
457
  n.push(this.Reveal.getSlidePastCount(e) + i);
449
458
  break;
450
- case Ne:
459
+ case "c/t":
451
460
  n.push(this.Reveal.getSlidePastCount(e) + i, "/", this.Reveal.getTotalSlides());
452
461
  break;
453
462
  default:
454
463
  let t = this.Reveal.getIndices(e);
455
464
  n.push(t.h + i);
456
- let a = r === je ? "/" : ".";
465
+ let a = r === "h/v" ? "/" : ".";
457
466
  this.Reveal.isVerticalSlide(e) && n.push(a, t.v + 1);
458
467
  }
459
468
  }
@@ -472,7 +481,7 @@ var N = u("sticky-note", [["path", {
472
481
  destroy() {
473
482
  this.element.remove();
474
483
  }
475
- }, Fe = class {
484
+ }, we = class {
476
485
  constructor(e) {
477
486
  this.Reveal = e, this.onInput = this.onInput.bind(this), this.onBlur = this.onBlur.bind(this), this.onKeyDown = this.onKeyDown.bind(this);
478
487
  }
@@ -493,7 +502,7 @@ var N = u("sticky-note", [["path", {
493
502
  let e = this.jumpInput.value.trim(""), t;
494
503
  if (/^\d+$/.test(e)) {
495
504
  let n = this.Reveal.getConfig().slideNumber;
496
- if (n === Me || n === Ne) {
505
+ if (n === "c" || n === "c/t") {
497
506
  let n = this.Reveal.getSlides()[parseInt(e, 10) - 1];
498
507
  n && (t = this.Reveal.getIndices(n));
499
508
  }
@@ -525,7 +534,7 @@ var N = u("sticky-note", [["path", {
525
534
  onBlur() {
526
535
  setTimeout(() => this.hide(), 1);
527
536
  }
528
- }, U = (e) => {
537
+ }, Te = (e) => {
529
538
  let t = e.match(/^#([0-9a-f]{3})$/i);
530
539
  if (t && t[1]) {
531
540
  let e = t[1];
@@ -557,7 +566,7 @@ var N = u("sticky-note", [["path", {
557
566
  b: parseInt(i[3], 10),
558
567
  a: parseFloat(i[4])
559
568
  } : null;
560
- }, Ie = (e) => (typeof e == "string" && (e = U(e)), e ? (e.r * 299 + e.g * 587 + e.b * 114) / 1e3 : null), Le = class {
569
+ }, Ee = (e) => (typeof e == "string" && (e = Te(e)), e ? (e.r * 299 + e.g * 587 + e.b * 114) / 1e3 : null), De = class {
561
570
  constructor(e) {
562
571
  this.Reveal = e;
563
572
  }
@@ -567,7 +576,7 @@ var N = u("sticky-note", [["path", {
567
576
  create() {
568
577
  this.element.innerHTML = "", this.element.classList.add("no-transition"), this.Reveal.getHorizontalSlides().forEach((e) => {
569
578
  let t = this.createBackground(e, this.element);
570
- L(e, "section").forEach((e) => {
579
+ I(e, "section").forEach((e) => {
571
580
  this.createBackground(e, t), t.classList.add("stack");
572
581
  });
573
582
  }), this.Reveal.getConfig().parallaxBackgroundImage ? (this.element.style.backgroundImage = "url(\"" + this.Reveal.getConfig().parallaxBackgroundImage + "\")", this.element.style.backgroundSize = this.Reveal.getConfig().parallaxBackgroundSize, this.element.style.backgroundRepeat = this.Reveal.getConfig().parallaxBackgroundRepeat, this.element.style.backgroundPosition = this.Reveal.getConfig().parallaxBackgroundPosition, setTimeout(() => {
@@ -600,13 +609,13 @@ var N = u("sticky-note", [["path", {
600
609
  }
601
610
  getContrastClass(e) {
602
611
  let t = e.slideBackgroundElement, n = e.getAttribute("data-background-color");
603
- if (!n || !U(n)) {
612
+ if (!n || !Te(n)) {
604
613
  let e = window.getComputedStyle(t);
605
614
  e && e.backgroundColor && (n = e.backgroundColor);
606
615
  }
607
616
  if (n) {
608
- let e = U(n);
609
- if (e && e.a !== 0) return Ie(n) < 128 ? "has-dark-background" : "has-light-background";
617
+ let e = Te(n);
618
+ if (e && e.a !== 0) return Ee(n) < 128 ? "has-dark-background" : "has-light-background";
610
619
  }
611
620
  return null;
612
621
  }
@@ -618,7 +627,7 @@ var N = u("sticky-note", [["path", {
618
627
  update(e = !1) {
619
628
  let t = this.Reveal.getConfig(), n = this.Reveal.getCurrentSlide(), r = this.Reveal.getIndices(), i = null, a = t.rtl ? "future" : "past", o = t.rtl ? "past" : "future";
620
629
  if (Array.from(this.element.childNodes).forEach((t, n) => {
621
- t.classList.remove("past", "present", "future"), n < r.h ? t.classList.add(a) : n > r.h ? t.classList.add(o) : (t.classList.add("present"), i = t), (e || n === r.h) && L(t, ".slide-background").forEach((e, t) => {
630
+ t.classList.remove("past", "present", "future"), n < r.h ? t.classList.add(a) : n > r.h ? t.classList.add(o) : (t.classList.add("present"), i = t), (e || n === r.h) && I(t, ".slide-background").forEach((e, t) => {
622
631
  e.classList.remove("past", "present", "future");
623
632
  let a = typeof r.v == "number" ? r.v : 0;
624
633
  t < a ? e.classList.add("past") : t > a ? e.classList.add("future") : (e.classList.add("present"), n === r.h && (i = e));
@@ -662,7 +671,7 @@ var N = u("sticky-note", [["path", {
662
671
  destroy() {
663
672
  this.element.remove();
664
673
  }
665
- }, Re = 0, ze = class {
674
+ }, Oe = 0, ke = class {
666
675
  constructor(e) {
667
676
  this.Reveal = e;
668
677
  }
@@ -670,17 +679,17 @@ var N = u("sticky-note", [["path", {
670
679
  this.reset();
671
680
  let n = this.Reveal.getSlides(), r = n.indexOf(t), i = n.indexOf(e);
672
681
  if (e && t && e.hasAttribute("data-auto-animate") && t.hasAttribute("data-auto-animate") && e.getAttribute("data-auto-animate-id") === t.getAttribute("data-auto-animate-id") && !(r > i ? t : e).hasAttribute("data-auto-animate-restart")) {
673
- this.autoAnimateStyleSheet = this.autoAnimateStyleSheet || _e();
682
+ this.autoAnimateStyleSheet = this.autoAnimateStyleSheet || z();
674
683
  let n = this.getAutoAnimateOptions(t);
675
684
  e.dataset.autoAnimate = "pending", t.dataset.autoAnimate = "pending", n.slideDirection = r > i ? "forward" : "backward";
676
685
  let a = e.style.display === "none";
677
686
  a && (e.style.display = this.Reveal.getConfig().display);
678
- let o = this.getAutoAnimatableElements(e, t).map((e) => this.autoAnimateElements(e.from, e.to, e.options || {}, n, Re++));
687
+ let o = this.getAutoAnimatableElements(e, t).map((e) => this.autoAnimateElements(e.from, e.to, e.options || {}, n, Oe++));
679
688
  if (a && (e.style.display = "none"), t.dataset.autoAnimateUnmatched !== "false" && this.Reveal.getConfig().autoAnimateUnmatched === !0) {
680
689
  let e = n.duration * .8, r = n.duration * .2;
681
690
  this.getUnmatchedAutoAnimateElements(t).forEach((e) => {
682
691
  let t = this.getAutoAnimateOptions(e, n), r = "unmatched";
683
- (t.duration !== n.duration || t.delay !== n.delay) && (r = "unmatched-" + Re++, o.push(`[data-auto-animate="running"] [data-auto-animate-target="${r}"] { transition: opacity ${t.duration}s ease ${t.delay}s; }`)), e.dataset.autoAnimateTarget = r;
692
+ (t.duration !== n.duration || t.delay !== n.delay) && (r = "unmatched-" + Oe++, o.push(`[data-auto-animate="running"] [data-auto-animate-target="${r}"] { transition: opacity ${t.duration}s ease ${t.delay}s; }`)), e.dataset.autoAnimateTarget = r;
684
693
  }, this), o.push(`[data-auto-animate="running"] [data-auto-animate-target="unmatched"] { transition: opacity ${e}s ease ${r}s; }`);
685
694
  }
686
695
  this.autoAnimateStyleSheet.innerHTML = o.join(""), requestAnimationFrame(() => {
@@ -696,9 +705,9 @@ var N = u("sticky-note", [["path", {
696
705
  }
697
706
  }
698
707
  reset() {
699
- L(this.Reveal.getRevealElement(), "[data-auto-animate]:not([data-auto-animate=\"\"])").forEach((e) => {
708
+ I(this.Reveal.getRevealElement(), "[data-auto-animate]:not([data-auto-animate=\"\"])").forEach((e) => {
700
709
  e.dataset.autoAnimate = "";
701
- }), L(this.Reveal.getRevealElement(), "[data-auto-animate-target]").forEach((e) => {
710
+ }), I(this.Reveal.getRevealElement(), "[data-auto-animate-target]").forEach((e) => {
702
711
  delete e.dataset.autoAnimateTarget;
703
712
  }), this.autoAnimateStyleSheet && this.autoAnimateStyleSheet.parentNode && (this.autoAnimateStyleSheet.parentNode.removeChild(this.autoAnimateStyleSheet), this.autoAnimateStyleSheet = null);
704
713
  }
@@ -739,8 +748,8 @@ var N = u("sticky-note", [["path", {
739
748
  duration: this.Reveal.getConfig().autoAnimateDuration,
740
749
  delay: 0
741
750
  };
742
- if (n = de(n, t), e.parentNode) {
743
- let t = z(e.parentNode, "[data-auto-animate-target]");
751
+ if (n = te(n, t), e.parentNode) {
752
+ let t = R(e.parentNode, "[data-auto-animate-target]");
744
753
  t && (n = this.getAutoAnimateOptions(t, n));
745
754
  }
746
755
  return e.dataset.autoAnimateEasing && (n.easing = e.dataset.autoAnimateEasing), e.dataset.autoAnimateDuration && (n.duration = parseFloat(e.dataset.autoAnimateDuration)), e.dataset.autoAnimateDelay && (n.delay = parseFloat(e.dataset.autoAnimateDelay)), n;
@@ -783,7 +792,7 @@ var N = u("sticky-note", [["path", {
783
792
  getAutoAnimatePairs(e, t) {
784
793
  let n = [], r = "h1, h2, h3, h4, h5, h6, p, li";
785
794
  return this.findAutoAnimateMatches(n, e, t, "[data-id]", (e) => e.nodeName + ":::" + e.getAttribute("data-id")), this.findAutoAnimateMatches(n, e, t, r, (e) => e.nodeName + ":::" + e.textContent.trim()), this.findAutoAnimateMatches(n, e, t, "img, video, iframe", (e) => e.nodeName + ":::" + (e.getAttribute("src") || e.getAttribute("data-src"))), this.findAutoAnimateMatches(n, e, t, "pre", (e) => e.nodeName + ":::" + e.textContent.trim()), n.forEach((e) => {
786
- me(e.from, r) ? e.options = { scale: !1 } : me(e.from, "pre") && (e.options = {
795
+ L(e.from, r) ? e.options = { scale: !1 } : L(e.from, "pre") && (e.options = {
787
796
  scale: !1,
788
797
  styles: ["width", "height"]
789
798
  }, this.findAutoAnimateMatches(n, e.from, e.to, ".hljs .hljs-ln-code", (e) => e.textContent, {
@@ -832,7 +841,7 @@ var N = u("sticky-note", [["path", {
832
841
  return !t.hasAttribute("data-auto-animate-target") && !n && e.push(t), t.querySelector("[data-auto-animate-target]") && (e = e.concat(this.getUnmatchedAutoAnimateElements(t))), e;
833
842
  }, []);
834
843
  }
835
- }, Be = 500, Ve = 4, He = 6, Ue = 8, We = class {
844
+ }, Ae = 500, je = 4, Me = 6, Ne = 8, Pe = class {
836
845
  constructor(e) {
837
846
  this.Reveal = e, this.active = !1, this.activatedCallbacks = [], this.onScroll = this.onScroll.bind(this);
838
847
  }
@@ -840,7 +849,7 @@ var N = u("sticky-note", [["path", {
840
849
  if (this.active) return;
841
850
  let e = this.Reveal.getState();
842
851
  this.active = !0, this.slideHTMLBeforeActivation = this.Reveal.getSlidesElement().innerHTML;
843
- let t = L(this.Reveal.getRevealElement(), Ee), n = L(this.Reveal.getRevealElement(), Oe);
852
+ let t = I(this.Reveal.getRevealElement(), ye), n = I(this.Reveal.getRevealElement(), xe);
844
853
  this.viewportElement.classList.add("loading-scroll-mode", "reveal-scroll");
845
854
  let r, i = window.getComputedStyle(this.viewportElement);
846
855
  i && i.background && (r = i.background);
@@ -862,7 +871,7 @@ var N = u("sticky-note", [["path", {
862
871
  this.Reveal.isVerticalStack(e) ? e.querySelectorAll("section").forEach((e, n) => {
863
872
  c(e, t, n, !0);
864
873
  }) : c(e, t, 0);
865
- }, this), this.createProgressBar(), L(this.Reveal.getRevealElement(), ".stack").forEach((e) => e.remove()), a.forEach((e) => o.appendChild(e)), this.Reveal.slideContent.layout(this.Reveal.getSlidesElement()), this.Reveal.layout(), this.Reveal.setState(e), this.activatedCallbacks.forEach((e) => e()), this.activatedCallbacks = [], this.restoreScrollPosition(), this.viewportElement.classList.remove("loading-scroll-mode"), this.viewportElement.addEventListener("scroll", this.onScroll, { passive: !0 });
874
+ }, this), this.createProgressBar(), I(this.Reveal.getRevealElement(), ".stack").forEach((e) => e.remove()), a.forEach((e) => o.appendChild(e)), this.Reveal.slideContent.layout(this.Reveal.getSlidesElement()), this.Reveal.layout(), this.Reveal.setState(e), this.activatedCallbacks.forEach((e) => e()), this.activatedCallbacks = [], this.restoreScrollPosition(), this.viewportElement.classList.remove("loading-scroll-mode"), this.viewportElement.addEventListener("scroll", this.onScroll, { passive: !0 });
866
875
  }
867
876
  deactivate() {
868
877
  if (!this.active) return;
@@ -895,9 +904,7 @@ var N = u("sticky-note", [["path", {
895
904
  }
896
905
  syncPages() {
897
906
  let e = this.Reveal.getConfig(), t = this.Reveal.getComputedSlideSize(window.innerWidth, window.innerHeight), n = this.Reveal.getScale(), r = e.scrollLayout === "compact", i = this.viewportElement.offsetHeight, a = t.height * n, o = r ? a : i;
898
- this.scrollTriggerHeight = r ? a : i, this.viewportElement.style.setProperty("--page-height", o + "px"), this.viewportElement.style.scrollSnapType = typeof e.scrollSnap == "string" ? `y ${e.scrollSnap}` : "", this.slideTriggers = [];
899
- let s = Array.from(this.Reveal.getRevealElement().querySelectorAll(".scroll-page"));
900
- this.pages = s.map((n) => {
907
+ this.scrollTriggerHeight = r ? a : i, this.viewportElement.style.setProperty("--page-height", o + "px"), this.viewportElement.style.scrollSnapType = typeof e.scrollSnap == "string" ? `y ${e.scrollSnap}` : "", this.slideTriggers = [], this.pages = Array.from(this.Reveal.getRevealElement().querySelectorAll(".scroll-page")).map((n) => {
901
908
  let a = this.createPage({
902
909
  pageElement: n,
903
910
  slideElement: n.querySelector("section"),
@@ -963,9 +970,9 @@ var N = u("sticky-note", [["path", {
963
970
  syncProgressBar() {
964
971
  this.progressBarInner.querySelectorAll(".scrollbar-slide").forEach((e) => e.remove());
965
972
  let e = this.viewportElement.scrollHeight, t = this.viewportElement.offsetHeight, n = t / e;
966
- this.progressBarHeight = this.progressBarInner.offsetHeight, this.playheadHeight = Math.max(n * this.progressBarHeight, Ue), this.progressBarScrollableHeight = this.progressBarHeight - this.playheadHeight;
967
- let r = t / e * this.progressBarHeight, i = Math.min(r / 8, Ve);
968
- this.progressBarPlayhead.style.height = this.playheadHeight - i + "px", r > He ? this.slideTriggers.forEach((e) => {
973
+ this.progressBarHeight = this.progressBarInner.offsetHeight, this.playheadHeight = Math.max(n * this.progressBarHeight, Ne), this.progressBarScrollableHeight = this.progressBarHeight - this.playheadHeight;
974
+ let r = t / e * this.progressBarHeight, i = Math.min(r / 8, je);
975
+ this.progressBarPlayhead.style.height = this.playheadHeight - i + "px", r > Me ? this.slideTriggers.forEach((e) => {
969
976
  let { page: t } = e;
970
977
  t.progressBarSlide = document.createElement("div"), t.progressBarSlide.className = "scrollbar-slide", t.progressBarSlide.style.top = e.range[0] * this.progressBarHeight + "px", t.progressBarSlide.style.height = (e.range[1] - e.range[0]) * this.progressBarHeight - i + "px", t.progressBarSlide.classList.toggle("has-triggers", t.scrollTriggers.length > 0), this.progressBarInner.appendChild(t.progressBarSlide), t.scrollTriggerElements = t.scrollTriggers.map((n, r) => {
971
978
  let a = document.createElement("div");
@@ -992,7 +999,7 @@ var N = u("sticky-note", [["path", {
992
999
  showProgressBar() {
993
1000
  this.progressBar.classList.add("visible"), clearTimeout(this.hideProgressBarTimeout), this.Reveal.getConfig().scrollProgress === "auto" && !this.draggingProgressBar && (this.hideProgressBarTimeout = setTimeout(() => {
994
1001
  this.progressBar && this.progressBar.classList.remove("visible");
995
- }, Be));
1002
+ }, Ae));
996
1003
  }
997
1004
  prev() {
998
1005
  this.viewportElement.scrollTop -= this.scrollTriggerHeight;
@@ -1050,67 +1057,93 @@ var N = u("sticky-note", [["path", {
1050
1057
  get viewportElement() {
1051
1058
  return this.Reveal.getViewportElement();
1052
1059
  }
1053
- }, Ge = class {
1060
+ };
1061
+ function Fe(e, t, n, r, i, a, o) {
1062
+ try {
1063
+ var s = e[a](o), c = s.value;
1064
+ } catch (e) {
1065
+ n(e);
1066
+ return;
1067
+ }
1068
+ s.done ? t(c) : Promise.resolve(c).then(r, i);
1069
+ }
1070
+ function Ie(e) {
1071
+ return function() {
1072
+ var t = this, n = arguments;
1073
+ return new Promise(function(r, i) {
1074
+ var a = e.apply(t, n);
1075
+ function o(e) {
1076
+ Fe(a, r, i, o, s, "next", e);
1077
+ }
1078
+ function s(e) {
1079
+ Fe(a, r, i, o, s, "throw", e);
1080
+ }
1081
+ o(void 0);
1082
+ });
1083
+ };
1084
+ }
1085
+ var Le = class {
1054
1086
  constructor(e) {
1055
1087
  this.Reveal = e;
1056
1088
  }
1057
1089
  activate() {
1058
- return ue(this, null, function* () {
1059
- let e = this.Reveal.getConfig(), t = L(this.Reveal.getRevealElement(), Te), n = e.slideNumber && /all|print/i.test(e.showSlideNumber), r = this.Reveal.getComputedSlideSize(window.innerWidth, window.innerHeight), i = Math.floor(r.width * (1 + e.margin)), a = Math.floor(r.height * (1 + e.margin)), o = r.width, s = r.height;
1060
- yield new Promise(requestAnimationFrame), _e("@page{size:" + i + "px " + a + "px; margin: 0px;}"), _e(".reveal section>img, .reveal section>video, .reveal section>iframe{max-width: " + o + "px; max-height:" + s + "px}"), document.documentElement.classList.add("reveal-print", "print-pdf"), document.body.style.width = i + "px", document.body.style.height = a + "px";
1061
- let c = this.Reveal.getViewportElement(), l;
1062
- if (c) {
1063
- let e = window.getComputedStyle(c);
1064
- e && e.background && (l = e.background);
1065
- }
1066
- yield new Promise(requestAnimationFrame), this.Reveal.layoutSlideContents(o, s), yield new Promise(requestAnimationFrame);
1067
- let u = t.map((e) => e.scrollHeight), d = [], f = t[0].parentNode, p = 1;
1068
- t.forEach(function(t, r) {
1069
- if (t.classList.contains("stack") === !1) {
1070
- let c = (i - o) / 2, f = (a - s) / 2, m = u[r], h = Math.max(Math.ceil(m / a), 1);
1071
- h = Math.min(h, e.pdfMaxPagesPerSlide), (h === 1 && e.center || t.classList.contains("center")) && (f = Math.max((a - m) / 2, 0));
1090
+ var e = this;
1091
+ return Ie(function* () {
1092
+ let t = e.Reveal.getConfig(), n = I(e.Reveal.getRevealElement(), H), r = t.slideNumber && /all|print/i.test(t.showSlideNumber), i = e.Reveal.getComputedSlideSize(window.innerWidth, window.innerHeight), a = Math.floor(i.width * (1 + t.margin)), o = Math.floor(i.height * (1 + t.margin)), s = i.width, c = i.height;
1093
+ yield new Promise(requestAnimationFrame), z("@page{size:" + a + "px " + o + "px; margin: 0px;}"), z(".reveal section>img, .reveal section>video, .reveal section>iframe{max-width: " + s + "px; max-height:" + c + "px}"), document.documentElement.classList.add("reveal-print", "print-pdf"), document.body.style.width = a + "px", document.body.style.height = o + "px";
1094
+ let l = e.Reveal.getViewportElement(), u;
1095
+ if (l) {
1096
+ let e = window.getComputedStyle(l);
1097
+ e && e.background && (u = e.background);
1098
+ }
1099
+ yield new Promise(requestAnimationFrame), e.Reveal.layoutSlideContents(s, c), yield new Promise(requestAnimationFrame);
1100
+ let d = n.map((e) => e.scrollHeight), f = [], p = n[0].parentNode, m = 1;
1101
+ n.forEach(function(e, n) {
1102
+ if (e.classList.contains("stack") === !1) {
1103
+ let i = (a - s) / 2, l = (o - c) / 2, p = d[n], h = Math.max(Math.ceil(p / o), 1);
1104
+ h = Math.min(h, t.pdfMaxPagesPerSlide), (h === 1 && t.center || e.classList.contains("center")) && (l = Math.max((o - p) / 2, 0));
1072
1105
  let g = document.createElement("div");
1073
- if (d.push(g), g.className = "pdf-page", g.style.height = (a + e.pdfPageHeightOffset) * h + "px", l && (g.style.background = l), g.appendChild(t), t.style.left = c + "px", t.style.top = f + "px", t.style.width = o + "px", this.Reveal.slideContent.layout(t), t.slideBackgroundElement && g.insertBefore(t.slideBackgroundElement, t), e.showNotes) {
1074
- let n = this.Reveal.getSlideNotes(t);
1106
+ if (f.push(g), g.className = "pdf-page", g.style.height = (o + t.pdfPageHeightOffset) * h + "px", u && (g.style.background = u), g.appendChild(e), e.style.left = i + "px", e.style.top = l + "px", e.style.width = s + "px", this.Reveal.slideContent.layout(e), e.slideBackgroundElement && g.insertBefore(e.slideBackgroundElement, e), t.showNotes) {
1107
+ let n = this.Reveal.getSlideNotes(e);
1075
1108
  if (n) {
1076
- let t = typeof e.showNotes == "string" ? e.showNotes : "inline", r = document.createElement("div");
1077
- r.classList.add("speaker-notes"), r.classList.add("speaker-notes-pdf"), r.setAttribute("data-layout", t), r.innerHTML = n, t === "separate-page" ? d.push(r) : (r.style.left = "8px", r.style.bottom = "8px", r.style.width = i - 16 + "px", g.appendChild(r));
1109
+ let e = typeof t.showNotes == "string" ? t.showNotes : "inline", r = document.createElement("div");
1110
+ r.classList.add("speaker-notes"), r.classList.add("speaker-notes-pdf"), r.setAttribute("data-layout", e), r.innerHTML = n, e === "separate-page" ? f.push(r) : (r.style.left = "8px", r.style.bottom = "8px", r.style.width = a - 16 + "px", g.appendChild(r));
1078
1111
  }
1079
1112
  }
1080
- if (n) {
1113
+ if (r) {
1081
1114
  let e = document.createElement("div");
1082
- e.classList.add("slide-number"), e.classList.add("slide-number-pdf"), e.innerHTML = p++, g.appendChild(e);
1115
+ e.classList.add("slide-number"), e.classList.add("slide-number-pdf"), e.innerHTML = m++, g.appendChild(e);
1083
1116
  }
1084
- if (e.pdfSeparateFragments) {
1117
+ if (t.pdfSeparateFragments) {
1085
1118
  let e = this.Reveal.fragments.sort(g.querySelectorAll(".fragment"), !0), t;
1086
- e.forEach(function(e, r) {
1119
+ e.forEach(function(e, n) {
1087
1120
  t && t.forEach(function(e) {
1088
1121
  e.classList.remove("current-fragment");
1089
1122
  }), e.forEach(function(e) {
1090
1123
  e.classList.add("visible", "current-fragment");
1091
1124
  }, this);
1092
1125
  let i = g.cloneNode(!0);
1093
- if (n) {
1094
- let e = i.querySelector(".slide-number-pdf"), t = r + 1;
1126
+ if (r) {
1127
+ let e = i.querySelector(".slide-number-pdf"), t = n + 1;
1095
1128
  e.innerHTML += "." + t;
1096
1129
  }
1097
- d.push(i), t = e;
1130
+ f.push(i), t = e;
1098
1131
  }, this), e.forEach(function(e) {
1099
1132
  e.forEach(function(e) {
1100
1133
  e.classList.remove("visible", "current-fragment");
1101
1134
  });
1102
1135
  });
1103
- } else L(g, ".fragment:not(.fade-out)").forEach(function(e) {
1136
+ } else I(g, ".fragment:not(.fade-out)").forEach(function(e) {
1104
1137
  e.classList.add("visible");
1105
1138
  });
1106
1139
  }
1107
- }, this), yield new Promise(requestAnimationFrame), d.forEach((e) => f.appendChild(e)), this.Reveal.slideContent.layout(this.Reveal.getSlidesElement()), this.Reveal.dispatchEvent({ type: "pdf-ready" }), c.classList.remove("loading-scroll-mode");
1108
- });
1140
+ }, e), yield new Promise(requestAnimationFrame), f.forEach((e) => p.appendChild(e)), e.Reveal.slideContent.layout(e.Reveal.getSlidesElement()), e.Reveal.dispatchEvent({ type: "pdf-ready" }), l.classList.remove("loading-scroll-mode");
1141
+ })();
1109
1142
  }
1110
1143
  isActive() {
1111
1144
  return this.Reveal.getConfig().view === "print";
1112
1145
  }
1113
- }, Ke = class {
1146
+ }, Re = class {
1114
1147
  constructor(e) {
1115
1148
  this.Reveal = e;
1116
1149
  }
@@ -1118,12 +1151,12 @@ var N = u("sticky-note", [["path", {
1118
1151
  e.fragments === !1 ? this.disable() : t.fragments === !1 && this.enable();
1119
1152
  }
1120
1153
  disable() {
1121
- L(this.Reveal.getSlidesElement(), ".fragment").forEach((e) => {
1154
+ I(this.Reveal.getSlidesElement(), ".fragment").forEach((e) => {
1122
1155
  e.classList.add("visible"), e.classList.remove("current-fragment");
1123
1156
  });
1124
1157
  }
1125
1158
  enable() {
1126
- L(this.Reveal.getSlidesElement(), ".fragment").forEach((e) => {
1159
+ I(this.Reveal.getSlidesElement(), ".fragment").forEach((e) => {
1127
1160
  e.classList.remove("visible"), e.classList.remove("current-fragment");
1128
1161
  });
1129
1162
  }
@@ -1159,7 +1192,7 @@ var N = u("sticky-note", [["path", {
1159
1192
  }
1160
1193
  sortAll() {
1161
1194
  this.Reveal.getHorizontalSlides().forEach((e) => {
1162
- let t = L(e, "section");
1195
+ let t = I(e, "section");
1163
1196
  t.forEach((e, t) => {
1164
1197
  this.sort(e.querySelectorAll(".fragment"));
1165
1198
  }, this), t.length === 0 && this.sort(e.querySelectorAll(".fragment"));
@@ -1233,13 +1266,13 @@ var N = u("sticky-note", [["path", {
1233
1266
  prev() {
1234
1267
  return this.goto(null, -1);
1235
1268
  }
1236
- }, qe = class {
1269
+ }, ze = class {
1237
1270
  constructor(e) {
1238
1271
  this.Reveal = e, this.active = !1, this.onSlideClicked = this.onSlideClicked.bind(this);
1239
1272
  }
1240
1273
  activate() {
1241
1274
  if (this.Reveal.getConfig().overview && !this.Reveal.isScrollView() && !this.isActive()) {
1242
- this.active = !0, this.Reveal.getRevealElement().classList.add("overview"), this.Reveal.cancelAutoSlide(), this.Reveal.getSlidesElement().appendChild(this.Reveal.getBackgroundsElement()), L(this.Reveal.getRevealElement(), Te).forEach((e) => {
1275
+ this.active = !0, this.Reveal.getRevealElement().classList.add("overview"), this.Reveal.cancelAutoSlide(), this.Reveal.getSlidesElement().appendChild(this.Reveal.getBackgroundsElement()), I(this.Reveal.getRevealElement(), H).forEach((e) => {
1243
1276
  e.classList.contains("stack") || e.addEventListener("click", this.onSlideClicked, !0);
1244
1277
  });
1245
1278
  let e = this.Reveal.getComputedSlideSize();
@@ -1257,12 +1290,12 @@ var N = u("sticky-note", [["path", {
1257
1290
  }
1258
1291
  layout() {
1259
1292
  this.Reveal.getHorizontalSlides().forEach((e, t) => {
1260
- e.setAttribute("data-index-h", t), R(e, "translate3d(" + t * this.overviewSlideWidth + "px, 0, 0)"), e.classList.contains("stack") && L(e, "section").forEach((e, n) => {
1261
- e.setAttribute("data-index-h", t), e.setAttribute("data-index-v", n), R(e, "translate3d(0, " + n * this.overviewSlideHeight + "px, 0)");
1293
+ e.setAttribute("data-index-h", t), ie(e, "translate3d(" + t * this.overviewSlideWidth + "px, 0, 0)"), e.classList.contains("stack") && I(e, "section").forEach((e, n) => {
1294
+ e.setAttribute("data-index-h", t), e.setAttribute("data-index-v", n), ie(e, "translate3d(0, " + n * this.overviewSlideHeight + "px, 0)");
1262
1295
  });
1263
1296
  }), Array.from(this.Reveal.getBackgroundsElement().childNodes).forEach((e, t) => {
1264
- R(e, "translate3d(" + t * this.overviewSlideWidth + "px, 0, 0)"), L(e, ".slide-background").forEach((e, t) => {
1265
- R(e, "translate3d(0, " + t * this.overviewSlideHeight + "px, 0)");
1297
+ ie(e, "translate3d(" + t * this.overviewSlideWidth + "px, 0, 0)"), I(e, ".slide-background").forEach((e, t) => {
1298
+ ie(e, "translate3d(0, " + t * this.overviewSlideHeight + "px, 0)");
1266
1299
  });
1267
1300
  });
1268
1301
  }
@@ -1278,10 +1311,10 @@ var N = u("sticky-note", [["path", {
1278
1311
  if (this.Reveal.getConfig().overview) {
1279
1312
  this.active = !1, this.Reveal.getRevealElement().classList.remove("overview"), this.Reveal.getRevealElement().classList.add("overview-deactivating"), setTimeout(() => {
1280
1313
  this.Reveal.getRevealElement().classList.remove("overview-deactivating");
1281
- }, 1), this.Reveal.getRevealElement().appendChild(this.Reveal.getBackgroundsElement()), L(this.Reveal.getRevealElement(), Te).forEach((e) => {
1282
- R(e, ""), e.removeEventListener("click", this.onSlideClicked, !0);
1283
- }), L(this.Reveal.getBackgroundsElement(), ".slide-background").forEach((e) => {
1284
- R(e, "");
1314
+ }, 1), this.Reveal.getRevealElement().appendChild(this.Reveal.getBackgroundsElement()), I(this.Reveal.getRevealElement(), H).forEach((e) => {
1315
+ ie(e, ""), e.removeEventListener("click", this.onSlideClicked, !0);
1316
+ }), I(this.Reveal.getBackgroundsElement(), ".slide-background").forEach((e) => {
1317
+ ie(e, "");
1285
1318
  }), this.Reveal.transformSlides({ overview: "" });
1286
1319
  let e = this.Reveal.getIndices();
1287
1320
  this.Reveal.slide(e.h, e.v), this.Reveal.layout(), this.Reveal.cueAutoSlide(), this.Reveal.dispatchEvent({
@@ -1311,7 +1344,7 @@ var N = u("sticky-note", [["path", {
1311
1344
  }
1312
1345
  }
1313
1346
  }
1314
- }, Je = class {
1347
+ }, Be = class {
1315
1348
  constructor(e) {
1316
1349
  this.Reveal = e, this.shortcuts = {}, this.bindings = {}, this.onDocumentKeyDown = this.onDocumentKeyDown.bind(this);
1317
1350
  }
@@ -1401,11 +1434,33 @@ var N = u("sticky-note", [["path", {
1401
1434
  66,
1402
1435
  86,
1403
1436
  190
1404
- ].includes(n) || n === 191 && !e.shiftKey ? this.Reveal.togglePause() : n === 70 ? he(t.embedded ? this.Reveal.getViewportElement() : document.documentElement) : n === 65 ? t.autoSlideStoppable && this.Reveal.toggleAutoSlide(r) : n === 71 ? t.jumpToSlide && this.Reveal.toggleJumpToSlide() : n === 67 && this.Reveal.isOverlayOpen() ? this.Reveal.closeOverlay() : (n === 63 || n === 191) && e.shiftKey || n === 112 ? this.Reveal.toggleHelp() : d = !1), d ? e.preventDefault && e.preventDefault() : n === 27 || n === 79 ? (this.Reveal.closeOverlay() === !1 && this.Reveal.overview.toggle(), e.preventDefault && e.preventDefault()) : n === 13 && this.Reveal.overview.isActive() && (this.Reveal.overview.deactivate(), e.preventDefault && e.preventDefault()), this.Reveal.cueAutoSlide();
1437
+ ].includes(n) || n === 191 && !e.shiftKey ? this.Reveal.togglePause() : n === 70 ? ae(t.embedded ? this.Reveal.getViewportElement() : document.documentElement) : n === 65 ? t.autoSlideStoppable && this.Reveal.toggleAutoSlide(r) : n === 71 ? t.jumpToSlide && this.Reveal.toggleJumpToSlide() : n === 67 && this.Reveal.isOverlayOpen() ? this.Reveal.closeOverlay() : (n === 63 || n === 191) && e.shiftKey || n === 112 ? this.Reveal.toggleHelp() : d = !1), d ? e.preventDefault && e.preventDefault() : n === 27 || n === 79 ? (this.Reveal.closeOverlay() === !1 && this.Reveal.overview.toggle(), e.preventDefault && e.preventDefault()) : n === 13 && this.Reveal.overview.isActive() && (this.Reveal.overview.deactivate(), e.preventDefault && e.preventDefault()), this.Reveal.cueAutoSlide();
1438
+ }
1439
+ };
1440
+ function U(e, t) {
1441
+ var n = Object.keys(e);
1442
+ if (Object.getOwnPropertySymbols) {
1443
+ var r = Object.getOwnPropertySymbols(e);
1444
+ t && (r = r.filter(function(t) {
1445
+ return Object.getOwnPropertyDescriptor(e, t).enumerable;
1446
+ })), n.push.apply(n, r);
1447
+ }
1448
+ return n;
1449
+ }
1450
+ function Ve(e) {
1451
+ for (var t = 1; t < arguments.length; t++) {
1452
+ var n = arguments[t] == null ? {} : arguments[t];
1453
+ t % 2 ? U(Object(n), !0).forEach(function(t) {
1454
+ V(e, t, n[t]);
1455
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : U(Object(n)).forEach(function(t) {
1456
+ Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t));
1457
+ });
1405
1458
  }
1406
- }, Ye = class {
1459
+ return e;
1460
+ }
1461
+ var He = class {
1407
1462
  constructor(e) {
1408
- le(this, "MAX_REPLACE_STATE_FREQUENCY", 1e3), this.Reveal = e, this.writeURLTimeout = 0, this.replaceStateTimestamp = 0, this.onWindowHashChange = this.onWindowHashChange.bind(this);
1463
+ V(this, "MAX_REPLACE_STATE_FREQUENCY", 1e3), this.Reveal = e, this.writeURLTimeout = 0, this.replaceStateTimestamp = 0, this.onWindowHashChange = this.onWindowHashChange.bind(this);
1409
1464
  }
1410
1465
  bind() {
1411
1466
  window.addEventListener("hashchange", this.onWindowHashChange, !1);
@@ -1422,7 +1477,7 @@ var N = u("sticky-note", [["path", {
1422
1477
  let t = decodeURIComponent(n);
1423
1478
  e = (document.getElementById(t) || document.querySelector(`[data-id="${t}"]`)).closest(".slides section");
1424
1479
  } catch {}
1425
- if (e) return ce(se({}, this.Reveal.getIndices(e)), { f: t });
1480
+ if (e) return Ve(Ve({}, this.Reveal.getIndices(e)), {}, { f: t });
1426
1481
  } else {
1427
1482
  let e = this.Reveal.getConfig(), n = e.hashOneBasedIndex || t.oneBasedIndex ? 1 : 0, i = parseInt(r[0], 10) - n || 0, a = parseInt(r[1], 10) - n || 0, o;
1428
1483
  return e.fragmentInURL && (o = parseInt(r[2], 10), isNaN(o) && (o = void 0)), {
@@ -1465,7 +1520,7 @@ var N = u("sticky-note", [["path", {
1465
1520
  onWindowHashChange(e) {
1466
1521
  this.readURL();
1467
1522
  }
1468
- }, Xe = class {
1523
+ }, Ue = class {
1469
1524
  constructor(e) {
1470
1525
  this.Reveal = e, this.onNavigateLeftClicked = this.onNavigateLeftClicked.bind(this), this.onNavigateRightClicked = this.onNavigateRightClicked.bind(this), this.onNavigateUpClicked = this.onNavigateUpClicked.bind(this), this.onNavigateDownClicked = this.onNavigateDownClicked.bind(this), this.onNavigatePrevClicked = this.onNavigatePrevClicked.bind(this), this.onNavigateNextClicked = this.onNavigateNextClicked.bind(this), this.onEnterFullscreen = this.onEnterFullscreen.bind(this);
1471
1526
  }
@@ -1474,7 +1529,7 @@ var N = u("sticky-note", [["path", {
1474
1529
  this.element = document.createElement("aside"), this.element.className = "controls", this.element.innerHTML = `<button class="navigate-left" aria-label="${e ? "next slide" : "previous slide"}"><div class="controls-arrow"></div></button>
1475
1530
  <button class="navigate-right" aria-label="${e ? "previous slide" : "next slide"}"><div class="controls-arrow"></div></button>
1476
1531
  <button class="navigate-up" aria-label="above slide"><div class="controls-arrow"></div></button>
1477
- <button class="navigate-down" aria-label="below slide"><div class="controls-arrow"></div></button>`, this.Reveal.getRevealElement().appendChild(this.element), this.controlsLeft = L(t, ".navigate-left"), this.controlsRight = L(t, ".navigate-right"), this.controlsUp = L(t, ".navigate-up"), this.controlsDown = L(t, ".navigate-down"), this.controlsPrev = L(t, ".navigate-prev"), this.controlsNext = L(t, ".navigate-next"), this.controlsFullscreen = L(t, ".enter-fullscreen"), this.controlsRightArrow = this.element.querySelector(".navigate-right"), this.controlsLeftArrow = this.element.querySelector(".navigate-left"), this.controlsDownArrow = this.element.querySelector(".navigate-down");
1532
+ <button class="navigate-down" aria-label="below slide"><div class="controls-arrow"></div></button>`, this.Reveal.getRevealElement().appendChild(this.element), this.controlsLeft = I(t, ".navigate-left"), this.controlsRight = I(t, ".navigate-right"), this.controlsUp = I(t, ".navigate-up"), this.controlsDown = I(t, ".navigate-down"), this.controlsPrev = I(t, ".navigate-prev"), this.controlsNext = I(t, ".navigate-next"), this.controlsFullscreen = I(t, ".enter-fullscreen"), this.controlsRightArrow = this.element.querySelector(".navigate-right"), this.controlsLeftArrow = this.element.querySelector(".navigate-left"), this.controlsDownArrow = this.element.querySelector(".navigate-down");
1478
1533
  }
1479
1534
  configure(e, t) {
1480
1535
  let n = e.controls === "speaker" || e.controls === "speaker-only";
@@ -1482,7 +1537,7 @@ var N = u("sticky-note", [["path", {
1482
1537
  }
1483
1538
  bind() {
1484
1539
  let e = ["touchstart", "click"];
1485
- we && (e = ["touchend"]), e.forEach((e) => {
1540
+ B && (e = ["touchend"]), e.forEach((e) => {
1486
1541
  this.controlsLeft.forEach((t) => t.addEventListener(e, this.onNavigateLeftClicked, !1)), this.controlsRight.forEach((t) => t.addEventListener(e, this.onNavigateRightClicked, !1)), this.controlsUp.forEach((t) => t.addEventListener(e, this.onNavigateUpClicked, !1)), this.controlsDown.forEach((t) => t.addEventListener(e, this.onNavigateDownClicked, !1)), this.controlsPrev.forEach((t) => t.addEventListener(e, this.onNavigatePrevClicked, !1)), this.controlsNext.forEach((t) => t.addEventListener(e, this.onNavigateNextClicked, !1)), this.controlsFullscreen.forEach((t) => t.addEventListener(e, this.onEnterFullscreen, !1));
1487
1542
  });
1488
1543
  }
@@ -1566,9 +1621,9 @@ var N = u("sticky-note", [["path", {
1566
1621
  }
1567
1622
  onEnterFullscreen(e) {
1568
1623
  let t = this.Reveal.getConfig(), n = this.Reveal.getViewportElement();
1569
- he(t.embedded ? n : n.parentElement);
1624
+ ae(t.embedded ? n : n.parentElement);
1570
1625
  }
1571
- }, Ze = class {
1626
+ }, We = class {
1572
1627
  constructor(e) {
1573
1628
  this.Reveal = e, this.onProgressClicked = this.onProgressClicked.bind(this);
1574
1629
  }
@@ -1603,7 +1658,7 @@ var N = u("sticky-note", [["path", {
1603
1658
  destroy() {
1604
1659
  this.element.remove();
1605
1660
  }
1606
- }, Qe = class {
1661
+ }, Ge = class {
1607
1662
  constructor(e) {
1608
1663
  this.Reveal = e, this.lastMouseWheelStep = 0, this.cursorHidden = !1, this.cursorInactiveTimeout = 0, this.onDocumentCursorActive = this.onDocumentCursorActive.bind(this), this.onDocumentMouseScroll = this.onDocumentMouseScroll.bind(this);
1609
1664
  }
@@ -1629,7 +1684,7 @@ var N = u("sticky-note", [["path", {
1629
1684
  t > 0 ? this.Reveal.next() : t < 0 && this.Reveal.prev();
1630
1685
  }
1631
1686
  }
1632
- }, $e = (e, t) => {
1687
+ }, Ke = (e, t) => {
1633
1688
  let n = document.createElement("script");
1634
1689
  n.type = "text/javascript", n.async = !1, n.defer = !1, n.src = e, typeof t == "function" && (n.onload = (e) => {
1635
1690
  e.type === "load" && (n.onload = n.onerror = null, t());
@@ -1638,7 +1693,7 @@ var N = u("sticky-note", [["path", {
1638
1693
  });
1639
1694
  let r = document.querySelector("head");
1640
1695
  r && r.insertBefore(n, r.lastChild);
1641
- }, et = class {
1696
+ }, qe = class {
1642
1697
  constructor(e) {
1643
1698
  this.Reveal = e, this.state = "idle", this.registeredPlugins = {}, this.asyncDependencies = [];
1644
1699
  }
@@ -1653,7 +1708,7 @@ var N = u("sticky-note", [["path", {
1653
1708
  t && typeof t.callback == "function" && t.callback(), --r === 0 && this.initPlugins().then(e);
1654
1709
  };
1655
1710
  n.forEach((e) => {
1656
- typeof e.id == "string" ? (this.registerPlugin(e), t(e)) : typeof e.src == "string" ? $e(e.src, () => t(e)) : (console.warn("Unrecognized plugin format", e), t());
1711
+ typeof e.id == "string" ? (this.registerPlugin(e), t(e)) : typeof e.src == "string" ? Ke(e.src, () => t(e)) : (console.warn("Unrecognized plugin format", e), t());
1657
1712
  });
1658
1713
  } else this.initPlugins().then(e);
1659
1714
  });
@@ -1678,7 +1733,7 @@ var N = u("sticky-note", [["path", {
1678
1733
  }
1679
1734
  loadAsync() {
1680
1735
  return this.state = "loaded", this.asyncDependencies.length && this.asyncDependencies.forEach((e) => {
1681
- $e(e.src, e.callback);
1736
+ Ke(e.src, e.callback);
1682
1737
  }), Promise.resolve();
1683
1738
  }
1684
1739
  registerPlugin(e) {
@@ -1700,7 +1755,7 @@ var N = u("sticky-note", [["path", {
1700
1755
  typeof e.destroy == "function" && e.destroy();
1701
1756
  }), this.registeredPlugins = {}, this.asyncDependencies = [];
1702
1757
  }
1703
- }, tt = class {
1758
+ }, Je = class {
1704
1759
  constructor(e) {
1705
1760
  this.Reveal = e, this.onSlidesClicked = this.onSlidesClicked.bind(this), this.iframeTriggerSelector = null, this.mediaTriggerSelector = "[data-preview-image], [data-preview-video]", this.stateProps = [
1706
1761
  "previewIframe",
@@ -1844,7 +1899,7 @@ var N = u("sticky-note", [["path", {
1844
1899
  destroy() {
1845
1900
  this.close();
1846
1901
  }
1847
- }, nt = 40, rt = class {
1902
+ }, Ye = 40, Xe = class {
1848
1903
  constructor(e) {
1849
1904
  this.Reveal = e, this.touchStartX = 0, this.touchStartY = 0, this.touchStartCount = 0, this.touchCaptured = !1, this.onPointerDown = this.onPointerDown.bind(this), this.onPointerMove = this.onPointerMove.bind(this), this.onPointerUp = this.onPointerUp.bind(this), this.onTouchStart = this.onTouchStart.bind(this), this.onTouchMove = this.onTouchMove.bind(this), this.onTouchEnd = this.onTouchEnd.bind(this);
1850
1905
  }
@@ -1857,7 +1912,7 @@ var N = u("sticky-note", [["path", {
1857
1912
  e.removeEventListener("pointerdown", this.onPointerDown, !1), e.removeEventListener("pointermove", this.onPointerMove, !1), e.removeEventListener("pointerup", this.onPointerUp, !1), e.removeEventListener("MSPointerDown", this.onPointerDown, !1), e.removeEventListener("MSPointerMove", this.onPointerMove, !1), e.removeEventListener("MSPointerUp", this.onPointerUp, !1), e.removeEventListener("touchstart", this.onTouchStart, !1), e.removeEventListener("touchmove", this.onTouchMove, !1), e.removeEventListener("touchend", this.onTouchEnd, !1);
1858
1913
  }
1859
1914
  isSwipePrevented(e) {
1860
- if (me(e, "video[controls], audio[controls]")) return !0;
1915
+ if (L(e, "video[controls], audio[controls]")) return !0;
1861
1916
  for (; e && typeof e.hasAttribute == "function";) {
1862
1917
  if (e.hasAttribute("data-prevent-swipe")) return !0;
1863
1918
  e = e.parentNode;
@@ -1871,13 +1926,13 @@ var N = u("sticky-note", [["path", {
1871
1926
  onTouchMove(e) {
1872
1927
  if (this.isSwipePrevented(e.target)) return !0;
1873
1928
  let t = this.Reveal.getConfig();
1874
- if (this.touchCaptured) we && e.preventDefault();
1929
+ if (this.touchCaptured) B && e.preventDefault();
1875
1930
  else {
1876
1931
  this.Reveal.onUserInput(e);
1877
1932
  let n = e.touches[0].clientX, r = e.touches[0].clientY;
1878
1933
  if (e.touches.length === 1 && this.touchStartCount !== 2) {
1879
1934
  let i = this.Reveal.availableRoutes({ includeFragments: !0 }), a = n - this.touchStartX, o = r - this.touchStartY;
1880
- a > nt && Math.abs(a) > Math.abs(o) ? (this.touchCaptured = !0, t.navigationMode === "linear" ? t.rtl ? this.Reveal.next() : this.Reveal.prev() : this.Reveal.left()) : a < -40 && Math.abs(a) > Math.abs(o) ? (this.touchCaptured = !0, t.navigationMode === "linear" ? t.rtl ? this.Reveal.prev() : this.Reveal.next() : this.Reveal.right()) : o > nt && i.up ? (this.touchCaptured = !0, t.navigationMode === "linear" ? this.Reveal.prev() : this.Reveal.up()) : o < -40 && i.down && (this.touchCaptured = !0, t.navigationMode === "linear" ? this.Reveal.next() : this.Reveal.down()), t.embedded ? (this.touchCaptured || this.Reveal.isVerticalSlide()) && e.preventDefault() : e.preventDefault();
1935
+ a > Ye && Math.abs(a) > Math.abs(o) ? (this.touchCaptured = !0, t.navigationMode === "linear" ? t.rtl ? this.Reveal.next() : this.Reveal.prev() : this.Reveal.left()) : a < -Ye && Math.abs(a) > Math.abs(o) ? (this.touchCaptured = !0, t.navigationMode === "linear" ? t.rtl ? this.Reveal.prev() : this.Reveal.next() : this.Reveal.right()) : o > Ye && i.up ? (this.touchCaptured = !0, t.navigationMode === "linear" ? this.Reveal.prev() : this.Reveal.up()) : o < -Ye && i.down && (this.touchCaptured = !0, t.navigationMode === "linear" ? this.Reveal.next() : this.Reveal.down()), t.embedded ? (this.touchCaptured || this.Reveal.isVerticalSlide()) && e.preventDefault() : e.preventDefault();
1881
1936
  }
1882
1937
  }
1883
1938
  }
@@ -1902,7 +1957,7 @@ var N = u("sticky-note", [["path", {
1902
1957
  clientY: e.clientY
1903
1958
  }], this.onTouchEnd(e));
1904
1959
  }
1905
- }, it = "focus", at = "blur", ot = class {
1960
+ }, W = "focus", Ze = "blur", Qe = class {
1906
1961
  constructor(e) {
1907
1962
  this.Reveal = e, this.onRevealPointerDown = this.onRevealPointerDown.bind(this), this.onDocumentPointerDown = this.onDocumentPointerDown.bind(this);
1908
1963
  }
@@ -1916,13 +1971,13 @@ var N = u("sticky-note", [["path", {
1916
1971
  this.Reveal.getRevealElement().removeEventListener("pointerdown", this.onRevealPointerDown, !1), document.removeEventListener("pointerdown", this.onDocumentPointerDown, !1);
1917
1972
  }
1918
1973
  focus() {
1919
- this.state !== it && (this.Reveal.getRevealElement().classList.add("focused"), document.addEventListener("pointerdown", this.onDocumentPointerDown, !1)), this.state = it;
1974
+ this.state !== W && (this.Reveal.getRevealElement().classList.add("focused"), document.addEventListener("pointerdown", this.onDocumentPointerDown, !1)), this.state = W;
1920
1975
  }
1921
1976
  blur() {
1922
- this.state !== at && (this.Reveal.getRevealElement().classList.remove("focused"), document.removeEventListener("pointerdown", this.onDocumentPointerDown, !1)), this.state = at;
1977
+ this.state !== Ze && (this.Reveal.getRevealElement().classList.remove("focused"), document.removeEventListener("pointerdown", this.onDocumentPointerDown, !1)), this.state = Ze;
1923
1978
  }
1924
1979
  isFocused() {
1925
- return this.state === it;
1980
+ return this.state === W;
1926
1981
  }
1927
1982
  destroy() {
1928
1983
  this.Reveal.getRevealElement().classList.remove("focused");
@@ -1931,10 +1986,10 @@ var N = u("sticky-note", [["path", {
1931
1986
  this.focus();
1932
1987
  }
1933
1988
  onDocumentPointerDown(e) {
1934
- let t = z(e.target, ".reveal");
1989
+ let t = R(e.target, ".reveal");
1935
1990
  (!t || t !== this.Reveal.getRevealElement()) && this.blur();
1936
1991
  }
1937
- }, st = class {
1992
+ }, $e = class {
1938
1993
  constructor(e) {
1939
1994
  this.Reveal = e;
1940
1995
  }
@@ -1964,7 +2019,7 @@ var N = u("sticky-note", [["path", {
1964
2019
  destroy() {
1965
2020
  this.element.remove();
1966
2021
  }
1967
- }, ct = class {
2022
+ }, et = class {
1968
2023
  constructor(e, t) {
1969
2024
  this.diameter = 100, this.diameter2 = this.diameter / 2, this.thickness = 6, this.playing = !1, this.progress = 0, this.progressOffset = 1, this.container = e, this.progressCheck = t, this.canvas = document.createElement("canvas"), this.canvas.className = "playback", this.canvas.width = this.diameter, this.canvas.height = this.diameter, this.canvas.style.width = this.diameter2 + "px", this.canvas.style.height = this.diameter2 + "px", this.context = this.canvas.getContext("2d"), this.container.appendChild(this.canvas), this.render();
1970
2025
  }
@@ -1991,7 +2046,7 @@ var N = u("sticky-note", [["path", {
1991
2046
  destroy() {
1992
2047
  this.playing = !1, this.canvas.parentNode && this.container.removeChild(this.canvas);
1993
2048
  }
1994
- }, lt = {
2049
+ }, tt = {
1995
2050
  width: 960,
1996
2051
  height: 700,
1997
2052
  margin: .04,
@@ -2081,8 +2136,8 @@ var N = u("sticky-note", [["path", {
2081
2136
  pdfPageHeightOffset: -1,
2082
2137
  dependencies: [],
2083
2138
  plugins: []
2084
- }, ut = "6.0.0";
2085
- function dt(e, t) {
2139
+ }, nt = "6.0.1";
2140
+ function rt(e, t) {
2086
2141
  arguments.length < 2 && (t = arguments[0], e = document.querySelector(".reveal"));
2087
2142
  let n = {}, r = {}, i = !1, a = !1, o, s, c, l, u = {
2088
2143
  hasNavigatedHorizontally: !1,
@@ -2090,18 +2145,18 @@ function dt(e, t) {
2090
2145
  }, d = [], f = 1, p = {
2091
2146
  layout: "",
2092
2147
  overview: ""
2093
- }, m = {}, h = "idle", g = 0, _, v = 0, y = -1, b = !1, x = new H(n), S = new Pe(n), C = new Fe(n), w = new ze(n), T = new Le(n), E = new We(n), D = new Ge(n), O = new Ke(n), k = new qe(n), A = new Je(n), j = new Ye(n), ee = new Xe(n), M = new Ze(n), N = new Qe(n), P = new et(n), F = new tt(n), te = new ot(n), ne = new rt(n), I = new st(n);
2094
- function re(a) {
2148
+ }, m = {}, h = "idle", g = 0, _, v = 0, y = -1, b = !1, x = new ve(n), S = new Ce(n), C = new we(n), w = new ke(n), T = new De(n), E = new Pe(n), D = new Le(n), O = new Re(n), k = new ze(n), A = new Be(n), j = new He(n), M = new Ue(n), ee = new We(n), N = new Ge(n), P = new qe(n), F = new Je(n), L = new Qe(n), ae = new Xe(n), z = new $e(n);
2149
+ function le(a) {
2095
2150
  if (!e) throw "Unable to find presentation root (<div class=\"reveal\">).";
2096
2151
  if (i) throw "Reveal.js has already been initialized.";
2097
2152
  if (i = !0, m.wrapper = e, m.slides = e.querySelector(".slides"), !m.slides) throw "Unable to find slides container (<div class=\"slides\">).";
2098
- return r = se(se(se(se(se({}, lt), r), t), a), ve()), /print-pdf/gi.test(window.location.search) && (r.view = "print"), ie(), window.addEventListener("load", Be, !1), P.load(r.plugins, r.dependencies).then(ae), new Promise((e) => n.on("ready", e));
2153
+ return r = Ve(Ve(Ve(Ve(Ve({}, tt), r), t), a), se()), /print-pdf/gi.test(window.location.search) && (r.view = "print"), ue(), window.addEventListener("load", W, !1), P.load(r.plugins, r.dependencies).then(de), new Promise((e) => n.on("ready", e));
2099
2154
  }
2100
- function ie() {
2101
- r.embedded === !0 ? m.viewport = z(e, ".reveal-viewport") || e : (m.viewport = document.body, document.documentElement.classList.add("reveal-full-page")), m.viewport.classList.add("reveal-viewport");
2155
+ function ue() {
2156
+ r.embedded === !0 ? m.viewport = R(e, ".reveal-viewport") || e : (m.viewport = document.body, document.documentElement.classList.add("reveal-full-page")), m.viewport.classList.add("reveal-viewport");
2102
2157
  }
2103
- function ae() {
2104
- i !== !1 && (a = !0, le(), ue(), Se(), be(), xe(), Ct(), we(), T.update(!0), oe(), j.readURL(), setTimeout(() => {
2158
+ function de() {
2159
+ i !== !1 && (a = !0, B(), me(), Ee(), xe(), Te(), q(), Oe(), T.update(!0), fe(), j.readURL(), setTimeout(() => {
2105
2160
  m.slides.classList.remove("no-transition"), m.wrapper.classList.add("ready"), U({
2106
2161
  type: "ready",
2107
2162
  data: {
@@ -2112,24 +2167,24 @@ function dt(e, t) {
2112
2167
  });
2113
2168
  }, 1));
2114
2169
  }
2115
- function oe() {
2170
+ function fe() {
2116
2171
  let e = r.view === "print", t = r.view === "scroll" || r.view === "reader";
2117
- (e || t) && (e ? Oe() : ne.unbind(), m.viewport.classList.add("loading-scroll-mode"), e ? document.readyState === "complete" ? D.activate() : window.addEventListener("load", () => D.activate()) : E.activate());
2172
+ (e || t) && (e ? je() : ae.unbind(), m.viewport.classList.add("loading-scroll-mode"), e ? document.readyState === "complete" ? D.activate() : window.addEventListener("load", () => D.activate()) : E.activate());
2118
2173
  }
2119
- function le() {
2120
- r.showHiddenSlides || L(m.wrapper, "section[data-visibility=\"hidden\"]").forEach((e) => {
2174
+ function B() {
2175
+ r.showHiddenSlides || I(m.wrapper, "section[data-visibility=\"hidden\"]").forEach((e) => {
2121
2176
  let t = e.parentNode;
2122
2177
  t.childElementCount === 1 && /section/i.test(t.nodeName) ? t.remove() : e.remove();
2123
2178
  });
2124
2179
  }
2125
- function ue() {
2126
- m.slides.classList.add("no-transition"), Ce ? m.wrapper.classList.add("no-hover") : m.wrapper.classList.remove("no-hover"), T.render(), S.render(), C.render(), ee.render(), M.render(), I.render(), m.pauseOverlay = ge(m.wrapper, "div", "pause-overlay", r.controls ? "<button class=\"resume-button\">Resume presentation</button>" : null), m.statusElement = me(), m.wrapper.setAttribute("role", "application");
2127
- }
2128
2180
  function me() {
2181
+ m.slides.classList.add("no-transition"), pe ? m.wrapper.classList.add("no-hover") : m.wrapper.classList.remove("no-hover"), T.render(), S.render(), C.render(), M.render(), ee.render(), z.render(), m.pauseOverlay = oe(m.wrapper, "div", "pause-overlay", r.controls ? "<button class=\"resume-button\">Resume presentation</button>" : null), m.statusElement = he(), m.wrapper.setAttribute("role", "application");
2182
+ }
2183
+ function he() {
2129
2184
  let e = m.wrapper.querySelector(".aria-status");
2130
2185
  return e || (e = document.createElement("div"), e.style.position = "absolute", e.style.height = "1px", e.style.width = "1px", e.style.overflow = "hidden", e.style.clip = "rect( 1px, 1px, 1px, 1px )", e.classList.add("aria-status"), e.setAttribute("aria-live", "polite"), e.setAttribute("aria-atomic", "true"), m.wrapper.appendChild(e)), e;
2131
2186
  }
2132
- function he(e) {
2187
+ function ge(e) {
2133
2188
  m.statusElement.textContent = e;
2134
2189
  }
2135
2190
  function _e(e) {
@@ -2140,7 +2195,7 @@ function dt(e, t) {
2140
2195
  if (n !== "true" && !r) {
2141
2196
  if (e.tagName === "IMG" || e.tagName === "VIDEO") {
2142
2197
  let n = e.getAttribute("alt");
2143
- n && (t += ye(n));
2198
+ n && (t += V(n));
2144
2199
  }
2145
2200
  Array.from(e.childNodes).forEach((e) => {
2146
2201
  t += _e(e);
@@ -2157,57 +2212,57 @@ function dt(e, t) {
2157
2212
  "H5",
2158
2213
  "H6",
2159
2214
  "BLOCKQUOTE"
2160
- ].includes(e.tagName) && t.trim() !== "" && (t = ye(t));
2215
+ ].includes(e.tagName) && t.trim() !== "" && (t = V(t));
2161
2216
  }
2162
2217
  }
2163
2218
  return t = t.trim(), t === "" ? "" : t + " ";
2164
2219
  }
2165
- function ye(e) {
2220
+ function V(e) {
2166
2221
  let t = e.trim();
2167
2222
  return t === "" ? e : /[.!?]$/.test(t) ? t : t + ".";
2168
2223
  }
2169
- function be() {
2224
+ function xe() {
2170
2225
  setInterval(() => {
2171
2226
  (!E.isActive() && m.wrapper.scrollTop !== 0 || m.wrapper.scrollLeft !== 0) && (m.wrapper.scrollTop = 0, m.wrapper.scrollLeft = 0);
2172
2227
  }, 1e3);
2173
2228
  }
2174
- function xe() {
2175
- document.addEventListener("fullscreenchange", an), document.addEventListener("webkitfullscreenchange", an);
2229
+ function Te() {
2230
+ document.addEventListener("fullscreenchange", rn), document.addEventListener("webkitfullscreenchange", rn);
2176
2231
  }
2177
- function Se() {
2178
- r.postMessage && window.addEventListener("message", $t, !1);
2232
+ function Ee() {
2233
+ r.postMessage && window.addEventListener("message", Qt, !1);
2179
2234
  }
2180
- function we(e) {
2181
- let t = se({}, r);
2182
- if (typeof e == "object" && de(r, e), n.isReady() === !1) return;
2183
- let i = m.wrapper.querySelectorAll(Te).length;
2184
- m.wrapper.classList.remove(t.transition), m.wrapper.classList.add(r.transition), m.wrapper.setAttribute("data-transition-speed", r.transitionSpeed), m.wrapper.setAttribute("data-background-transition", r.backgroundTransition), m.viewport.style.setProperty("--slide-width", typeof r.width == "string" ? r.width : r.width + "px"), m.viewport.style.setProperty("--slide-height", typeof r.height == "string" ? r.height : r.height + "px"), r.shuffle && wt(), fe(m.wrapper, "embedded", r.embedded), fe(m.wrapper, "rtl", r.rtl), fe(m.wrapper, "center", r.center), r.pause === !1 && pt(), w.reset(), _ &&= (_.destroy(), null), i > 1 && r.autoSlide && r.autoSlideStoppable && (_ = new ct(m.wrapper, () => Math.min(Math.max((Date.now() - y) / g, 0), 1)), _.on("click", on), b = !1), r.navigationMode === "default" ? m.wrapper.removeAttribute("data-navigation-mode") : m.wrapper.setAttribute("data-navigation-mode", r.navigationMode), I.configure(r, t), te.configure(r, t), N.configure(r, t), ee.configure(r, t), M.configure(r, t), A.configure(r, t), O.configure(r, t), S.configure(r, t), xt();
2235
+ function Oe(e) {
2236
+ let t = Ve({}, r);
2237
+ if (typeof e == "object" && te(r, e), n.isReady() === !1) return;
2238
+ let i = m.wrapper.querySelectorAll(H).length;
2239
+ m.wrapper.classList.remove(t.transition), m.wrapper.classList.add(r.transition), m.wrapper.setAttribute("data-transition-speed", r.transitionSpeed), m.wrapper.setAttribute("data-background-transition", r.backgroundTransition), m.viewport.style.setProperty("--slide-width", typeof r.width == "string" ? r.width : r.width + "px"), m.viewport.style.setProperty("--slide-height", typeof r.height == "string" ? r.height : r.height + "px"), r.shuffle && St(), ne(m.wrapper, "embedded", r.embedded), ne(m.wrapper, "rtl", r.rtl), ne(m.wrapper, "center", r.center), r.pause === !1 && dt(), w.reset(), _ &&= (_.destroy(), null), i > 1 && r.autoSlide && r.autoSlideStoppable && (_ = new et(m.wrapper, () => Math.min(Math.max((Date.now() - y) / g, 0), 1)), _.on("click", an), b = !1), r.navigationMode === "default" ? m.wrapper.removeAttribute("data-navigation-mode") : m.wrapper.setAttribute("data-navigation-mode", r.navigationMode), z.configure(r, t), L.configure(r, t), N.configure(r, t), M.configure(r, t), ee.configure(r, t), A.configure(r, t), O.configure(r, t), S.configure(r, t), bt();
2185
2240
  }
2186
- function V() {
2187
- window.addEventListener("resize", nn, !1), r.touch && ne.bind(), r.keyboard && A.bind(), r.progress && M.bind(), r.respondToHashChanges && j.bind(), ee.bind(), te.bind(), m.slides.addEventListener("click", tn, !1), m.slides.addEventListener("transitionend", en, !1), m.pauseOverlay.addEventListener("click", pt, !1), r.focusBodyOnPageVisibilityChange && document.addEventListener("visibilitychange", rn, !1);
2241
+ function Ae() {
2242
+ window.addEventListener("resize", tn, !1), r.touch && ae.bind(), r.keyboard && A.bind(), r.progress && ee.bind(), r.respondToHashChanges && j.bind(), M.bind(), L.bind(), m.slides.addEventListener("click", en, !1), m.slides.addEventListener("transitionend", $t, !1), m.pauseOverlay.addEventListener("click", dt, !1), r.focusBodyOnPageVisibilityChange && document.addEventListener("visibilitychange", nn, !1);
2188
2243
  }
2189
- function Oe() {
2190
- ne.unbind(), te.unbind(), A.unbind(), ee.unbind(), M.unbind(), j.unbind(), window.removeEventListener("resize", nn, !1), m.slides.removeEventListener("click", tn, !1), m.slides.removeEventListener("transitionend", en, !1), m.pauseOverlay.removeEventListener("click", pt, !1);
2244
+ function je() {
2245
+ ae.unbind(), L.unbind(), A.unbind(), M.unbind(), ee.unbind(), j.unbind(), window.removeEventListener("resize", tn, !1), m.slides.removeEventListener("click", en, !1), m.slides.removeEventListener("transitionend", $t, !1), m.pauseOverlay.removeEventListener("click", dt, !1);
2191
2246
  }
2192
- function Ae() {
2193
- i = !1, a !== !1 && (Oe(), Ut(), I.destroy(), te.destroy(), F.destroy(), P.destroy(), N.destroy(), ee.destroy(), M.destroy(), T.destroy(), S.destroy(), C.destroy(), document.removeEventListener("fullscreenchange", an), document.removeEventListener("webkitfullscreenchange", an), document.removeEventListener("visibilitychange", rn, !1), window.removeEventListener("message", $t, !1), window.removeEventListener("load", Be, !1), m.pauseOverlay && m.pauseOverlay.remove(), m.statusElement && m.statusElement.remove(), document.documentElement.classList.remove("reveal-full-page"), m.wrapper.classList.remove("ready", "center", "has-horizontal-slides", "has-vertical-slides"), m.wrapper.removeAttribute("data-transition-speed"), m.wrapper.removeAttribute("data-background-transition"), m.viewport.classList.remove("reveal-viewport"), m.viewport.style.removeProperty("--slide-width"), m.viewport.style.removeProperty("--slide-height"), m.slides.style.removeProperty("width"), m.slides.style.removeProperty("height"), m.slides.style.removeProperty("zoom"), m.slides.style.removeProperty("left"), m.slides.style.removeProperty("top"), m.slides.style.removeProperty("bottom"), m.slides.style.removeProperty("right"), m.slides.style.removeProperty("transform"), Array.from(m.wrapper.querySelectorAll(Te)).forEach((e) => {
2247
+ function Me() {
2248
+ i = !1, a !== !1 && (je(), Ht(), z.destroy(), L.destroy(), F.destroy(), P.destroy(), N.destroy(), M.destroy(), ee.destroy(), T.destroy(), S.destroy(), C.destroy(), document.removeEventListener("fullscreenchange", rn), document.removeEventListener("webkitfullscreenchange", rn), document.removeEventListener("visibilitychange", nn, !1), window.removeEventListener("message", Qt, !1), window.removeEventListener("load", W, !1), m.pauseOverlay && m.pauseOverlay.remove(), m.statusElement && m.statusElement.remove(), document.documentElement.classList.remove("reveal-full-page"), m.wrapper.classList.remove("ready", "center", "has-horizontal-slides", "has-vertical-slides"), m.wrapper.removeAttribute("data-transition-speed"), m.wrapper.removeAttribute("data-background-transition"), m.viewport.classList.remove("reveal-viewport"), m.viewport.style.removeProperty("--slide-width"), m.viewport.style.removeProperty("--slide-height"), m.slides.style.removeProperty("width"), m.slides.style.removeProperty("height"), m.slides.style.removeProperty("zoom"), m.slides.style.removeProperty("left"), m.slides.style.removeProperty("top"), m.slides.style.removeProperty("bottom"), m.slides.style.removeProperty("right"), m.slides.style.removeProperty("transform"), Array.from(m.wrapper.querySelectorAll(H)).forEach((e) => {
2194
2249
  e.style.removeProperty("display"), e.style.removeProperty("top"), e.removeAttribute("hidden"), e.removeAttribute("aria-hidden");
2195
2250
  }));
2196
2251
  }
2197
- function je(t, n, r) {
2252
+ function Ne(t, n, r) {
2198
2253
  e.addEventListener(t, n, r);
2199
2254
  }
2200
- function Me(t, n, r) {
2255
+ function Fe(t, n, r) {
2201
2256
  e.removeEventListener(t, n, r);
2202
2257
  }
2203
- function Ne(e) {
2204
- typeof e.layout == "string" && (p.layout = e.layout), typeof e.overview == "string" && (p.overview = e.overview), p.layout ? R(m.slides, p.layout + " " + p.overview) : R(m.slides, p.overview);
2258
+ function Ie(e) {
2259
+ typeof e.layout == "string" && (p.layout = e.layout), typeof e.overview == "string" && (p.overview = e.overview), p.layout ? ie(m.slides, p.layout + " " + p.overview) : ie(m.slides, p.overview);
2205
2260
  }
2206
2261
  function U({ target: e = m.wrapper, type: t, data: n, bubbles: r = !0 }) {
2207
2262
  let i = document.createEvent("HTMLEvents", 1, 2);
2208
- return i.initEvent(t, r, !0), de(i, n), e.dispatchEvent(i), e === m.wrapper && Re(t), i;
2263
+ return i.initEvent(t, r, !0), te(i, n), e.dispatchEvent(i), e === m.wrapper && Ye(t), i;
2209
2264
  }
2210
- function Ie(e) {
2265
+ function Ke(e) {
2211
2266
  U({
2212
2267
  type: "slidechanged",
2213
2268
  data: {
@@ -2219,24 +2274,24 @@ function dt(e, t) {
2219
2274
  }
2220
2275
  });
2221
2276
  }
2222
- function Re(e, t) {
2277
+ function Ye(e, t) {
2223
2278
  if (r.postMessageEvents && window.parent !== window.self) {
2224
2279
  let n = {
2225
2280
  namespace: "reveal",
2226
2281
  eventName: e,
2227
- state: Bt()
2282
+ state: zt()
2228
2283
  };
2229
- de(n, t), window.parent.postMessage(JSON.stringify(n), "*");
2284
+ te(n, t), window.parent.postMessage(JSON.stringify(n), "*");
2230
2285
  }
2231
2286
  }
2232
- function Be() {
2287
+ function W() {
2233
2288
  if (m.wrapper && !D.isActive()) {
2234
2289
  let e = m.viewport.offsetWidth, t = m.viewport.offsetHeight;
2235
2290
  if (!r.disableLayout) {
2236
- Ce && !r.embedded && document.documentElement.style.setProperty("--vh", window.innerHeight * .01 + "px");
2237
- let n = E.isActive() ? Ue(e, t) : Ue(), i = f;
2238
- Ve(r.width, r.height), m.slides.style.width = n.width + "px", m.slides.style.height = n.height + "px", f = Math.min(n.presentationWidth / n.width, n.presentationHeight / n.height), f = Math.max(f, r.minScale), f = Math.min(f, r.maxScale), f === 1 || E.isActive() ? (m.slides.style.zoom = "", m.slides.style.left = "", m.slides.style.top = "", m.slides.style.bottom = "", m.slides.style.right = "", Ne({ layout: "" })) : (m.slides.style.zoom = "", m.slides.style.left = "50%", m.slides.style.top = "50%", m.slides.style.bottom = "auto", m.slides.style.right = "auto", Ne({ layout: "translate(-50%, -50%) scale(" + f + ")" }));
2239
- let a = Array.from(m.wrapper.querySelectorAll(Te));
2291
+ pe && !r.embedded && document.documentElement.style.setProperty("--vh", window.innerHeight * .01 + "px");
2292
+ let n = E.isActive() ? G(e, t) : G(), i = f;
2293
+ Ze(r.width, r.height), m.slides.style.width = n.width + "px", m.slides.style.height = n.height + "px", f = Math.min(n.presentationWidth / n.width, n.presentationHeight / n.height), f = Math.max(f, r.minScale), f = Math.min(f, r.maxScale), f === 1 || E.isActive() ? (m.slides.style.zoom = "", m.slides.style.left = "", m.slides.style.top = "", m.slides.style.bottom = "", m.slides.style.right = "", Ie({ layout: "" })) : (m.slides.style.zoom = "", m.slides.style.left = "50%", m.slides.style.top = "50%", m.slides.style.bottom = "auto", m.slides.style.right = "auto", Ie({ layout: "translate(-50%, -50%) scale(" + f + ")" }));
2294
+ let a = Array.from(m.wrapper.querySelectorAll(H));
2240
2295
  for (let e = 0, t = a.length; e < t; e++) {
2241
2296
  let t = a[e];
2242
2297
  t.style.display !== "none" && (r.center || t.classList.contains("center") ? t.classList.contains("stack") ? t.style.top = 0 : t.style.top = Math.max((n.height - t.scrollHeight) / 2, 0) + "px" : t.style.top = "");
@@ -2250,25 +2305,25 @@ function dt(e, t) {
2250
2305
  }
2251
2306
  });
2252
2307
  }
2253
- He(), m.viewport.style.setProperty("--slide-scale", f), m.viewport.style.setProperty("--viewport-width", e + "px"), m.viewport.style.setProperty("--viewport-height", t + "px"), E.layout(), M.update(), T.updateParallax(), k.isActive() && k.update();
2308
+ rt(), m.viewport.style.setProperty("--slide-scale", f), m.viewport.style.setProperty("--viewport-width", e + "px"), m.viewport.style.setProperty("--viewport-height", t + "px"), E.layout(), ee.update(), T.updateParallax(), k.isActive() && k.update();
2254
2309
  }
2255
2310
  }
2256
- function Ve(e, t) {
2257
- L(m.slides, "section > .stretch, section > .r-stretch").forEach((n) => {
2258
- let r = B(n, t);
2311
+ function Ze(e, t) {
2312
+ I(m.slides, "section > .stretch, section > .r-stretch").forEach((n) => {
2313
+ let r = ce(n, t);
2259
2314
  if (/(img|video)/gi.test(n.nodeName)) {
2260
2315
  let t = n.naturalWidth || n.videoWidth, i = n.naturalHeight || n.videoHeight, a = Math.min(e / t, r / i);
2261
2316
  n.style.width = t * a + "px", n.style.height = i * a + "px";
2262
2317
  } else n.style.width = e + "px", n.style.height = r + "px";
2263
2318
  });
2264
2319
  }
2265
- function He() {
2320
+ function rt() {
2266
2321
  if (m.wrapper && !r.disableLayout && !D.isActive() && typeof r.scrollActivationWidth == "number" && r.view !== "scroll") {
2267
- let e = Ue();
2322
+ let e = G();
2268
2323
  e.presentationWidth > 0 && e.presentationWidth <= r.scrollActivationWidth ? E.isActive() || (T.create(), E.activate()) : E.isActive() && E.deactivate();
2269
2324
  }
2270
2325
  }
2271
- function Ue(e, t) {
2326
+ function G(e, t) {
2272
2327
  let n = r.width, i = r.height;
2273
2328
  r.disableLayout && (n = m.slides.offsetWidth, i = m.slides.offsetHeight);
2274
2329
  let a = {
@@ -2279,57 +2334,57 @@ function dt(e, t) {
2279
2334
  };
2280
2335
  return a.presentationWidth -= a.presentationWidth * r.margin, a.presentationHeight -= a.presentationHeight * r.margin, typeof a.width == "string" && /%$/.test(a.width) && (a.width = parseInt(a.width, 10) / 100 * a.presentationWidth), typeof a.height == "string" && /%$/.test(a.height) && (a.height = parseInt(a.height, 10) / 100 * a.presentationHeight), a;
2281
2336
  }
2282
- function $e(e, t) {
2337
+ function it(e, t) {
2283
2338
  typeof e == "object" && typeof e.setAttribute == "function" && e.setAttribute("data-previous-indexv", t || 0);
2284
2339
  }
2285
- function nt(e) {
2340
+ function K(e) {
2286
2341
  if (typeof e == "object" && typeof e.setAttribute == "function" && e.classList.contains("stack")) {
2287
2342
  let t = e.hasAttribute("data-start-indexv") ? "data-start-indexv" : "data-previous-indexv";
2288
2343
  return parseInt(e.getAttribute(t) || 0, 10);
2289
2344
  }
2290
2345
  return 0;
2291
2346
  }
2292
- function it(e = l) {
2347
+ function at(e = l) {
2293
2348
  return e && e.parentNode && !!e.parentNode.nodeName.match(/section/i);
2294
2349
  }
2295
- function at(e = l) {
2350
+ function ot(e = l) {
2296
2351
  return e.classList.contains(".stack") || e.querySelector("section") !== null;
2297
2352
  }
2298
- function dt() {
2299
- return l && it(l) ? !l.nextElementSibling : !1;
2353
+ function st() {
2354
+ return l && at(l) ? !l.nextElementSibling : !1;
2300
2355
  }
2301
- function W() {
2356
+ function ct() {
2302
2357
  return o === 0 && s === 0;
2303
2358
  }
2304
- function ft() {
2305
- return l ? !(l.nextElementSibling || it(l) && l.parentNode.nextElementSibling) : !1;
2359
+ function lt() {
2360
+ return l ? !(l.nextElementSibling || at(l) && l.parentNode.nextElementSibling) : !1;
2306
2361
  }
2307
- function G() {
2362
+ function ut() {
2308
2363
  if (r.pause) {
2309
2364
  let e = m.wrapper.classList.contains("paused");
2310
- Ut(), m.wrapper.classList.add("paused"), e === !1 && U({ type: "paused" });
2365
+ Ht(), m.wrapper.classList.add("paused"), e === !1 && U({ type: "paused" });
2311
2366
  }
2312
2367
  }
2313
- function pt() {
2368
+ function dt() {
2314
2369
  let e = m.wrapper.classList.contains("paused");
2315
- m.wrapper.classList.remove("paused"), Ht(), e && U({ type: "resumed" });
2370
+ m.wrapper.classList.remove("paused"), Vt(), e && U({ type: "resumed" });
2316
2371
  }
2317
- function mt(e) {
2318
- typeof e == "boolean" ? e ? G() : pt() : ht() ? pt() : G();
2372
+ function ft(e) {
2373
+ typeof e == "boolean" ? e ? ut() : dt() : pt() ? dt() : ut();
2319
2374
  }
2320
- function ht() {
2375
+ function pt() {
2321
2376
  return m.wrapper.classList.contains("paused");
2322
2377
  }
2323
- function gt(e) {
2378
+ function mt(e) {
2324
2379
  typeof e == "boolean" ? e ? C.show() : C.hide() : C.isVisible() ? C.hide() : C.show();
2325
2380
  }
2326
- function _t(e) {
2327
- typeof e == "boolean" ? e ? Gt() : Wt() : b ? Gt() : Wt();
2381
+ function ht(e) {
2382
+ typeof e == "boolean" ? e ? Wt() : Ut() : b ? Wt() : Ut();
2328
2383
  }
2329
- function vt() {
2384
+ function gt() {
2330
2385
  return !!(g && !b);
2331
2386
  }
2332
- function K(t, n, i, a) {
2387
+ function _t(t, n, i, a) {
2333
2388
  if (U({
2334
2389
  type: "beforeslidechange",
2335
2390
  data: {
@@ -2339,88 +2394,88 @@ function dt(e, t) {
2339
2394
  }
2340
2395
  }).defaultPrevented) return;
2341
2396
  c = l;
2342
- let u = m.wrapper.querySelectorAll(Ee);
2397
+ let u = m.wrapper.querySelectorAll(ye);
2343
2398
  if (E.isActive()) {
2344
2399
  let e = E.getSlideByIndices(t, n);
2345
2400
  e && E.scrollToSlide(e);
2346
2401
  return;
2347
2402
  }
2348
2403
  if (u.length === 0) return;
2349
- n === void 0 && !k.isActive() && (n = nt(u[t])), c && c.parentNode && c.parentNode.classList.contains("stack") && $e(c.parentNode, s);
2404
+ n === void 0 && !k.isActive() && (n = K(u[t])), c && c.parentNode && c.parentNode.classList.contains("stack") && it(c.parentNode, s);
2350
2405
  let f = d.concat();
2351
2406
  d.length = 0;
2352
2407
  let p = o || 0, g = s || 0;
2353
- o = Tt(Ee, t === void 0 ? o : t), s = Tt(De, n === void 0 ? s : n);
2408
+ o = J(ye, t === void 0 ? o : t), s = J(be, n === void 0 ? s : n);
2354
2409
  let _ = o !== p || s !== g;
2355
2410
  _ || (c = null);
2356
2411
  let v = u[o], y = v.querySelectorAll("section");
2357
2412
  e.classList.toggle("is-vertical-slide", y.length > 1), l = y[s] || v;
2358
2413
  let b = !1;
2359
- _ && c && l && !k.isActive() && (h = "running", b = yt(c, l, p, g), b && m.slides.classList.add("disable-slide-transitions")), Dt(), Be(), k.isActive() && k.update(), i !== void 0 && O.goto(i), c && c !== l && (c.classList.remove("present"), c.setAttribute("aria-hidden", "true"), W() && setTimeout(() => {
2360
- Nt().forEach((e) => {
2361
- $e(e, 0);
2414
+ _ && c && l && !k.isActive() && (h = "running", b = vt(c, l, p, g), b && m.slides.classList.add("disable-slide-transitions")), Tt(), W(), k.isActive() && k.update(), i !== void 0 && O.goto(i), c && c !== l && (c.classList.remove("present"), c.setAttribute("aria-hidden", "true"), ct() && setTimeout(() => {
2415
+ Mt().forEach((e) => {
2416
+ it(e, 0);
2362
2417
  });
2363
2418
  }, 0));
2364
- e: for (let e = 0, t = d.length; e < t; e++) {
2419
+ stateLoop: for (let e = 0, t = d.length; e < t; e++) {
2365
2420
  for (let t = 0; t < f.length; t++) if (f[t] === d[e]) {
2366
2421
  f.splice(t, 1);
2367
- continue e;
2422
+ continue stateLoop;
2368
2423
  }
2369
2424
  m.viewport.classList.add(d[e]), U({ type: d[e] });
2370
2425
  }
2371
2426
  for (; f.length;) m.viewport.classList.remove(f.pop());
2372
- _ && (x.afterSlideChanged(), Ie(a)), (_ || !c) && (x.stopEmbeddedContent(c), x.startEmbeddedContent(l)), requestAnimationFrame(() => {
2373
- he(_e(l));
2374
- }), M.update(), ee.update(), I.update(), T.update(), T.updateParallax(), S.update(), O.update(), j.writeURL(), Ht(), b && (setTimeout(() => {
2427
+ _ && (x.afterSlideChanged(), Ke(a)), (_ || !c) && (x.stopEmbeddedContent(c), x.startEmbeddedContent(l)), requestAnimationFrame(() => {
2428
+ ge(_e(l));
2429
+ }), ee.update(), M.update(), z.update(), T.update(), T.updateParallax(), S.update(), O.update(), j.writeURL(), Vt(), b && (setTimeout(() => {
2375
2430
  m.slides.classList.remove("disable-slide-transitions");
2376
2431
  }, 0), r.autoAnimate && w.run(c, l));
2377
2432
  }
2378
- function yt(e, t, n, r) {
2433
+ function vt(e, t, n, r) {
2379
2434
  return e.hasAttribute("data-auto-animate") && t.hasAttribute("data-auto-animate") && e.getAttribute("data-auto-animate-id") === t.getAttribute("data-auto-animate-id") && !(o > n || s > r ? t : e).hasAttribute("data-auto-animate-restart");
2380
2435
  }
2381
- function bt(e, t, n) {
2436
+ function yt(e, t, n) {
2382
2437
  let i = o || 0;
2383
2438
  o = t, s = n;
2384
2439
  let a = l !== e;
2385
- c = l, l = e, l && c && r.autoAnimate && yt(c, l, i, s) && w.run(c, l), a && (x.afterSlideChanged(), c && (x.stopEmbeddedContent(c), x.stopEmbeddedContent(c.slideBackgroundElement)), x.startEmbeddedContent(l), x.startEmbeddedContent(l.slideBackgroundElement)), requestAnimationFrame(() => {
2386
- he(_e(l));
2387
- }), Ie();
2440
+ c = l, l = e, l && c && r.autoAnimate && vt(c, l, i, s) && w.run(c, l), a && (x.afterSlideChanged(), c && (x.stopEmbeddedContent(c), x.stopEmbeddedContent(c.slideBackgroundElement)), x.startEmbeddedContent(l), x.startEmbeddedContent(l.slideBackgroundElement)), requestAnimationFrame(() => {
2441
+ ge(_e(l));
2442
+ }), Ke();
2388
2443
  }
2389
- function xt() {
2390
- Oe(), V(), Be(), g = r.autoSlide, Ht(), T.create(), j.writeURL(), r.sortFragmentsOnSync === !0 && O.sortAll(), o !== void 0 && (o = Tt(Ee, o), s = Tt(De, s)), ee.update(), M.update(), Dt(), I.update(), I.updateVisibility(), F.update(), T.update(!0), S.update(), x.formatEmbeddedContent(), r.autoPlayMedia === !1 ? x.stopEmbeddedContent(l, { unloadIframes: !1 }) : x.startEmbeddedContent(l), k.isActive() && k.layout(), U({ type: "sync" });
2444
+ function bt() {
2445
+ je(), Ae(), W(), g = r.autoSlide, Vt(), T.create(), j.writeURL(), r.sortFragmentsOnSync === !0 && O.sortAll(), o !== void 0 && (o = J(ye, o), s = J(be, s)), M.update(), ee.update(), Tt(), z.update(), z.updateVisibility(), F.update(), T.update(!0), S.update(), x.formatEmbeddedContent(), r.autoPlayMedia === !1 ? x.stopEmbeddedContent(l, { unloadIframes: !1 }) : x.startEmbeddedContent(l), k.isActive() && k.layout(), U({ type: "sync" });
2391
2446
  }
2392
- function St(e = l) {
2393
- T.sync(e), O.sync(e), x.load(e), T.update(), I.update(), U({
2447
+ function xt(e = l) {
2448
+ T.sync(e), O.sync(e), x.load(e), T.update(), z.update(), U({
2394
2449
  type: "slidesync",
2395
2450
  data: { slide: e }
2396
2451
  });
2397
2452
  }
2398
- function Ct() {
2399
- jt().forEach((e) => {
2400
- L(e, "section").forEach((e, t) => {
2453
+ function q() {
2454
+ At().forEach((e) => {
2455
+ I(e, "section").forEach((e, t) => {
2401
2456
  t > 0 && (e.classList.remove("present"), e.classList.remove("past"), e.classList.add("future"), e.setAttribute("aria-hidden", "true"));
2402
2457
  });
2403
2458
  });
2404
2459
  }
2405
- function wt(e = jt()) {
2460
+ function St(e = At()) {
2406
2461
  e.forEach((t, n) => {
2407
2462
  let r = e[Math.floor(Math.random() * e.length)];
2408
2463
  r.parentNode === t.parentNode && t.parentNode.insertBefore(t, r);
2409
2464
  let i = t.querySelectorAll("section");
2410
- i.length && wt(i);
2465
+ i.length && St(i);
2411
2466
  });
2412
2467
  }
2413
- function Tt(e, t) {
2414
- let n = L(m.wrapper, e), i = n.length, a = E.isActive() || D.isActive(), o = !1, s = !1;
2468
+ function J(e, t) {
2469
+ let n = I(m.wrapper, e), i = n.length, a = E.isActive() || D.isActive(), o = !1, s = !1;
2415
2470
  if (i) {
2416
2471
  r.loop && (t >= i && (o = !0), t %= i, t < 0 && (t = i + t, s = !0)), t = Math.max(Math.min(t, i - 1), 0);
2417
2472
  for (let e = 0; e < i; e++) {
2418
- let i = n[e], c = r.rtl && !it(i);
2473
+ let i = n[e], c = r.rtl && !at(i);
2419
2474
  if (i.classList.remove("past"), i.classList.remove("present"), i.classList.remove("future"), i.setAttribute("hidden", ""), i.setAttribute("aria-hidden", "true"), i.querySelector("section") && i.classList.add("stack"), a) {
2420
2475
  i.classList.add("present");
2421
2476
  continue;
2422
2477
  }
2423
- e < t ? (i.classList.add(c ? "future" : "past"), r.fragments && q(i)) : e > t ? (i.classList.add(c ? "past" : "future"), r.fragments && Et(i)) : e === t && r.fragments && (o ? Et(i) : s && q(i));
2478
+ e < t ? (i.classList.add(c ? "future" : "past"), r.fragments && Ct(i)) : e > t ? (i.classList.add(c ? "past" : "future"), r.fragments && wt(i)) : e === t && r.fragments && (o ? wt(i) : s && Ct(i));
2424
2479
  }
2425
2480
  let e = n[t], c = e.classList.contains("present");
2426
2481
  e.classList.add("present"), e.removeAttribute("hidden"), e.removeAttribute("aria-hidden"), c || U({
@@ -2433,36 +2488,36 @@ function dt(e, t) {
2433
2488
  } else t = 0;
2434
2489
  return t;
2435
2490
  }
2436
- function q(e) {
2437
- L(e, ".fragment").forEach((e) => {
2491
+ function Ct(e) {
2492
+ I(e, ".fragment").forEach((e) => {
2438
2493
  e.classList.add("visible"), e.classList.remove("current-fragment");
2439
2494
  });
2440
2495
  }
2441
- function Et(e) {
2442
- L(e, ".fragment.visible").forEach((e) => {
2496
+ function wt(e) {
2497
+ I(e, ".fragment.visible").forEach((e) => {
2443
2498
  e.classList.remove("visible", "current-fragment");
2444
2499
  });
2445
2500
  }
2446
- function Dt() {
2447
- let e = jt(), t = e.length, n, i;
2501
+ function Tt() {
2502
+ let e = At(), t = e.length, n, i;
2448
2503
  if (t && o !== void 0) {
2449
2504
  let a = k.isActive(), c = a ? 10 : r.viewDistance;
2450
- Ce && (c = a ? 6 : r.mobileViewDistance), D.isActive() && (c = Number.MAX_VALUE);
2505
+ pe && (c = a ? 6 : r.mobileViewDistance), D.isActive() && (c = Number.MAX_VALUE);
2451
2506
  for (let l = 0; l < t; l++) {
2452
- let u = e[l], d = L(u, "section"), f = d.length;
2507
+ let u = e[l], d = I(u, "section"), f = d.length;
2453
2508
  if (n = Math.abs((o || 0) - l) || 0, r.loop && (n = Math.abs(((o || 0) - l) % (t - c)) || 0), n < c ? x.load(u) : x.unload(u), f) {
2454
- let e = a ? 0 : nt(u);
2509
+ let e = a ? 0 : K(u);
2455
2510
  for (let t = 0; t < f; t++) {
2456
2511
  let r = d[t];
2457
2512
  i = Math.abs(l === (o || 0) ? (s || 0) - t : t - e), n + i < c ? x.load(r) : x.unload(r);
2458
2513
  }
2459
2514
  }
2460
2515
  }
2461
- Ft() ? m.wrapper.classList.add("has-vertical-slides") : m.wrapper.classList.remove("has-vertical-slides"), Pt() ? m.wrapper.classList.add("has-horizontal-slides") : m.wrapper.classList.remove("has-horizontal-slides");
2516
+ Pt() ? m.wrapper.classList.add("has-vertical-slides") : m.wrapper.classList.remove("has-vertical-slides"), Nt() ? m.wrapper.classList.add("has-horizontal-slides") : m.wrapper.classList.remove("has-horizontal-slides");
2462
2517
  }
2463
2518
  }
2464
- function J({ includeFragments: e = !1 } = {}) {
2465
- let t = m.wrapper.querySelectorAll(Ee), n = m.wrapper.querySelectorAll(De), i = {
2519
+ function Y({ includeFragments: e = !1 } = {}) {
2520
+ let t = m.wrapper.querySelectorAll(ye), n = m.wrapper.querySelectorAll(be), i = {
2466
2521
  left: o > 0,
2467
2522
  right: o < t.length - 1,
2468
2523
  up: s > 0,
@@ -2478,12 +2533,12 @@ function dt(e, t) {
2478
2533
  }
2479
2534
  return i;
2480
2535
  }
2481
- function Ot(e = l) {
2482
- let t = jt(), n = 0;
2483
- e: for (let r = 0; r < t.length; r++) {
2536
+ function Et(e = l) {
2537
+ let t = At(), n = 0;
2538
+ mainLoop: for (let r = 0; r < t.length; r++) {
2484
2539
  let i = t[r], a = i.querySelectorAll("section");
2485
2540
  for (let t = 0; t < a.length; t++) {
2486
- if (a[t] === e) break e;
2541
+ if (a[t] === e) break mainLoop;
2487
2542
  a[t].dataset.visibility !== "uncounted" && n++;
2488
2543
  }
2489
2544
  if (i === e) break;
@@ -2491,8 +2546,8 @@ function dt(e, t) {
2491
2546
  }
2492
2547
  return n;
2493
2548
  }
2494
- function Y() {
2495
- let e = Lt(), t = Ot();
2549
+ function Dt() {
2550
+ let e = It(), t = Et();
2496
2551
  if (l) {
2497
2552
  let e = l.querySelectorAll(".fragment");
2498
2553
  if (e.length > 0) {
@@ -2502,13 +2557,13 @@ function dt(e, t) {
2502
2557
  }
2503
2558
  return Math.min(t / (e - 1), 1);
2504
2559
  }
2505
- function kt(e) {
2560
+ function Ot(e) {
2506
2561
  let t = o, n = s, r;
2507
2562
  if (e) {
2508
2563
  if (E.isActive()) t = parseInt(e.getAttribute("data-index-h"), 10), e.getAttribute("data-index-v") && (n = parseInt(e.getAttribute("data-index-v"), 10));
2509
2564
  else {
2510
- let r = it(e), i = r ? e.parentNode : e, a = jt();
2511
- t = Math.max(a.indexOf(i), 0), n = void 0, r && (n = Math.max(L(e.parentNode, "section").indexOf(e), 0));
2565
+ let r = at(e), i = r ? e.parentNode : e, a = At();
2566
+ t = Math.max(a.indexOf(i), 0), n = void 0, r && (n = Math.max(I(e.parentNode, "section").indexOf(e), 0));
2512
2567
  }
2513
2568
  }
2514
2569
  if (!e && l && l.querySelectorAll(".fragment").length > 0) {
@@ -2521,26 +2576,26 @@ function dt(e, t) {
2521
2576
  f: r
2522
2577
  };
2523
2578
  }
2579
+ function kt() {
2580
+ return I(m.wrapper, H + ":not(.stack):not([data-visibility=\"uncounted\"])");
2581
+ }
2524
2582
  function At() {
2525
- return L(m.wrapper, ".slides section:not(.stack):not([data-visibility=\"uncounted\"])");
2583
+ return I(m.wrapper, ye);
2526
2584
  }
2527
2585
  function jt() {
2528
- return L(m.wrapper, Ee);
2586
+ return I(m.wrapper, ".slides>section>section");
2529
2587
  }
2530
2588
  function Mt() {
2531
- return L(m.wrapper, ".slides>section>section");
2589
+ return I(m.wrapper, ye + ".stack");
2532
2590
  }
2533
2591
  function Nt() {
2534
- return L(m.wrapper, ".slides>section.stack");
2592
+ return At().length > 1;
2535
2593
  }
2536
2594
  function Pt() {
2537
2595
  return jt().length > 1;
2538
2596
  }
2539
2597
  function Ft() {
2540
- return Mt().length > 1;
2541
- }
2542
- function It() {
2543
- return At().map((e) => {
2598
+ return kt().map((e) => {
2544
2599
  let t = {};
2545
2600
  for (let n = 0; n < e.attributes.length; n++) {
2546
2601
  let r = e.attributes[n];
@@ -2549,105 +2604,105 @@ function dt(e, t) {
2549
2604
  return t;
2550
2605
  });
2551
2606
  }
2552
- function Lt() {
2553
- return At().length;
2607
+ function It() {
2608
+ return kt().length;
2554
2609
  }
2555
- function Rt(e, t) {
2556
- let n = jt()[e], r = n && n.querySelectorAll("section");
2610
+ function Lt(e, t) {
2611
+ let n = At()[e], r = n && n.querySelectorAll("section");
2557
2612
  return r && r.length && typeof t == "number" ? r ? r[t] : void 0 : n;
2558
2613
  }
2559
- function zt(e, t) {
2560
- let n = typeof e == "number" ? Rt(e, t) : e;
2614
+ function Rt(e, t) {
2615
+ let n = typeof e == "number" ? Lt(e, t) : e;
2561
2616
  if (n) return n.slideBackgroundElement;
2562
2617
  }
2563
- function Bt() {
2564
- let e = kt();
2565
- return se({
2618
+ function zt() {
2619
+ let e = Ot();
2620
+ return Ve({
2566
2621
  indexh: e.h,
2567
2622
  indexv: e.v,
2568
2623
  indexf: e.f,
2569
- paused: ht(),
2624
+ paused: pt(),
2570
2625
  overview: k.isActive()
2571
2626
  }, F.getState());
2572
2627
  }
2573
- function Vt(e) {
2628
+ function Bt(e) {
2574
2629
  if (typeof e == "object") {
2575
- K(pe(e.indexh), pe(e.indexv), pe(e.indexf));
2576
- let t = pe(e.paused), n = pe(e.overview);
2577
- typeof t == "boolean" && t !== ht() && mt(t), typeof n == "boolean" && n !== k.isActive() && k.toggle(n), F.setState(e);
2630
+ _t(re(e.indexh), re(e.indexv), re(e.indexf));
2631
+ let t = re(e.paused), n = re(e.overview);
2632
+ typeof t == "boolean" && t !== pt() && ft(t), typeof n == "boolean" && n !== k.isActive() && k.toggle(n), F.setState(e);
2578
2633
  }
2579
2634
  }
2580
- function Ht() {
2581
- if (Ut(), l && r.autoSlide !== !1) {
2635
+ function Vt() {
2636
+ if (Ht(), l && r.autoSlide !== !1) {
2582
2637
  let e = l.querySelector(".current-fragment[data-autoslide]"), t = e ? e.getAttribute("data-autoslide") : null, n = l.parentNode ? l.parentNode.getAttribute("data-autoslide") : null, i = l.getAttribute("data-autoslide");
2583
- t ? g = parseInt(t, 10) : i ? g = parseInt(i, 10) : n ? g = parseInt(n, 10) : (g = r.autoSlide, l.querySelectorAll(".fragment").length === 0 && L(l, "video, audio").forEach((e) => {
2638
+ t ? g = parseInt(t, 10) : i ? g = parseInt(i, 10) : n ? g = parseInt(n, 10) : (g = r.autoSlide, l.querySelectorAll(".fragment").length === 0 && I(l, "video, audio").forEach((e) => {
2584
2639
  e.hasAttribute("data-autoplay") && g && e.duration * 1e3 / e.playbackRate > g && (g = e.duration * 1e3 / e.playbackRate + 1e3);
2585
- })), g && !b && !ht() && !k.isActive() && (!ft() || O.availableRoutes().next || r.loop === !0) && (v = setTimeout(() => {
2586
- typeof r.autoSlideMethod == "function" ? r.autoSlideMethod() : Zt(), Ht();
2640
+ })), g && !b && !pt() && !k.isActive() && (!lt() || O.availableRoutes().next || r.loop === !0) && (v = setTimeout(() => {
2641
+ typeof r.autoSlideMethod == "function" ? r.autoSlideMethod() : Xt(), Vt();
2587
2642
  }, g), y = Date.now()), _ && _.setPlaying(v !== -1);
2588
2643
  }
2589
2644
  }
2590
- function Ut() {
2645
+ function Ht() {
2591
2646
  clearTimeout(v), v = -1;
2592
2647
  }
2593
- function Wt() {
2648
+ function Ut() {
2594
2649
  g && !b && (b = !0, U({ type: "autoslidepaused" }), clearTimeout(v), _ && _.setPlaying(!1));
2595
2650
  }
2596
- function Gt() {
2597
- g && b && (b = !1, U({ type: "autoslideresumed" }), Ht());
2651
+ function Wt() {
2652
+ g && b && (b = !1, U({ type: "autoslideresumed" }), Vt());
2598
2653
  }
2599
- function Kt({ skipFragments: e = !1 } = {}) {
2654
+ function Gt({ skipFragments: e = !1 } = {}) {
2600
2655
  if (u.hasNavigatedHorizontally = !0, E.isActive()) return E.prev();
2601
- r.rtl ? (k.isActive() || e || O.next() === !1) && J().left && K(o + 1, r.navigationMode === "grid" ? s : void 0) : (k.isActive() || e || O.prev() === !1) && J().left && K(o - 1, r.navigationMode === "grid" ? s : void 0);
2656
+ r.rtl ? (k.isActive() || e || O.next() === !1) && Y().left && _t(o + 1, r.navigationMode === "grid" ? s : void 0) : (k.isActive() || e || O.prev() === !1) && Y().left && _t(o - 1, r.navigationMode === "grid" ? s : void 0);
2602
2657
  }
2603
- function qt({ skipFragments: e = !1 } = {}) {
2658
+ function Kt({ skipFragments: e = !1 } = {}) {
2604
2659
  if (u.hasNavigatedHorizontally = !0, E.isActive()) return E.next();
2605
- r.rtl ? (k.isActive() || e || O.prev() === !1) && J().right && K(o - 1, r.navigationMode === "grid" ? s : void 0) : (k.isActive() || e || O.next() === !1) && J().right && K(o + 1, r.navigationMode === "grid" ? s : void 0);
2660
+ r.rtl ? (k.isActive() || e || O.prev() === !1) && Y().right && _t(o - 1, r.navigationMode === "grid" ? s : void 0) : (k.isActive() || e || O.next() === !1) && Y().right && _t(o + 1, r.navigationMode === "grid" ? s : void 0);
2606
2661
  }
2607
- function Jt({ skipFragments: e = !1 } = {}) {
2662
+ function qt({ skipFragments: e = !1 } = {}) {
2608
2663
  if (E.isActive()) return E.prev();
2609
- (k.isActive() || e || O.prev() === !1) && J().up && K(o, s - 1);
2664
+ (k.isActive() || e || O.prev() === !1) && Y().up && _t(o, s - 1);
2610
2665
  }
2611
- function Yt({ skipFragments: e = !1 } = {}) {
2666
+ function Jt({ skipFragments: e = !1 } = {}) {
2612
2667
  if (u.hasNavigatedVertically = !0, E.isActive()) return E.next();
2613
- (k.isActive() || e || O.next() === !1) && J().down && K(o, s + 1);
2668
+ (k.isActive() || e || O.next() === !1) && Y().down && _t(o, s + 1);
2614
2669
  }
2615
- function Xt({ skipFragments: e = !1 } = {}) {
2670
+ function Yt({ skipFragments: e = !1 } = {}) {
2616
2671
  if (E.isActive()) return E.prev();
2617
2672
  if (e || O.prev() === !1) {
2618
- if (J().up) Jt({ skipFragments: e });
2673
+ if (Y().up) qt({ skipFragments: e });
2619
2674
  else {
2620
2675
  let t;
2621
- if (t = r.rtl ? L(m.wrapper, ".slides>section.future").pop() : L(m.wrapper, ".slides>section.past").pop(), t && t.classList.contains("stack")) {
2676
+ if (t = r.rtl ? I(m.wrapper, ye + ".future").pop() : I(m.wrapper, ye + ".past").pop(), t && t.classList.contains("stack")) {
2622
2677
  let e = t.querySelectorAll("section").length - 1 || void 0;
2623
- K(o - 1, e);
2624
- } else r.rtl ? qt({ skipFragments: e }) : Kt({ skipFragments: e });
2678
+ _t(o - 1, e);
2679
+ } else r.rtl ? Kt({ skipFragments: e }) : Gt({ skipFragments: e });
2625
2680
  }
2626
2681
  }
2627
2682
  }
2628
- function Zt({ skipFragments: e = !1 } = {}) {
2683
+ function Xt({ skipFragments: e = !1 } = {}) {
2629
2684
  if (u.hasNavigatedHorizontally = !0, u.hasNavigatedVertically = !0, E.isActive()) return E.next();
2630
2685
  if (e || O.next() === !1) {
2631
- let t = J();
2632
- t.down && t.right && r.loop && dt() && (t.down = !1), t.down ? Yt({ skipFragments: e }) : r.rtl ? Kt({ skipFragments: e }) : qt({ skipFragments: e });
2686
+ let t = Y();
2687
+ t.down && t.right && r.loop && st() && (t.down = !1), t.down ? Jt({ skipFragments: e }) : r.rtl ? Gt({ skipFragments: e }) : Kt({ skipFragments: e });
2633
2688
  }
2634
2689
  }
2635
- function Qt(e) {
2636
- r.autoSlideStoppable && Wt();
2690
+ function Zt(e) {
2691
+ r.autoSlideStoppable && Ut();
2637
2692
  }
2638
- function $t(e) {
2693
+ function Qt(e) {
2639
2694
  let t = e.data;
2640
2695
  if (typeof t == "string" && t.charAt(0) === "{" && t.charAt(t.length - 1) === "}" && (t = JSON.parse(t), t.method && typeof n[t.method] == "function")) {
2641
- if (ke.test(t.method) === !1) {
2696
+ if (Se.test(t.method) === !1) {
2642
2697
  let e = n[t.method].apply(n, t.args);
2643
- Re("callback", {
2698
+ Ye("callback", {
2644
2699
  method: t.method,
2645
2700
  result: e
2646
2701
  });
2647
2702
  } else console.warn("reveal.js: \"" + t.method + "\" is is blacklisted from the postMessage API");
2648
2703
  }
2649
2704
  }
2650
- function en(e) {
2705
+ function $t(e) {
2651
2706
  h === "running" && /section/gi.test(e.target.nodeName) && (h = "idle", U({
2652
2707
  type: "slidetransitionend",
2653
2708
  data: {
@@ -2658,75 +2713,75 @@ function dt(e, t) {
2658
2713
  }
2659
2714
  }));
2660
2715
  }
2661
- function tn(e) {
2662
- let t = z(e.target, "a[href^=\"#\"]");
2716
+ function en(e) {
2717
+ let t = R(e.target, "a[href^=\"#\"]");
2663
2718
  if (t) {
2664
2719
  let r = t.getAttribute("href"), i = j.getIndicesFromHash(r);
2665
2720
  i && (n.slide(i.h, i.v, i.f), e.preventDefault());
2666
2721
  }
2667
2722
  }
2668
- function nn(e) {
2669
- Be();
2723
+ function tn(e) {
2724
+ W();
2670
2725
  }
2671
- function rn(e) {
2726
+ function nn(e) {
2672
2727
  document.hidden === !1 && document.activeElement !== document.body && (typeof document.activeElement.blur == "function" && document.activeElement.blur(), document.body.focus());
2673
2728
  }
2674
- function an(e) {
2729
+ function rn(e) {
2675
2730
  (document.fullscreenElement || document.webkitFullscreenElement) === m.wrapper && (e.stopImmediatePropagation(), setTimeout(() => {
2676
2731
  n.layout(), n.focus.focus();
2677
2732
  }, 1));
2678
2733
  }
2679
- function on(e) {
2680
- ft() && r.loop === !1 ? (K(0, 0), Gt()) : b ? Gt() : Wt();
2681
- }
2682
- let sn = {
2683
- VERSION: ut,
2684
- initialize: re,
2685
- configure: we,
2686
- destroy: Ae,
2687
- sync: xt,
2688
- syncSlide: St,
2734
+ function an(e) {
2735
+ lt() && r.loop === !1 ? (_t(0, 0), Wt()) : b ? Wt() : Ut();
2736
+ }
2737
+ let on = {
2738
+ VERSION: nt,
2739
+ initialize: le,
2740
+ configure: Oe,
2741
+ destroy: Me,
2742
+ sync: bt,
2743
+ syncSlide: xt,
2689
2744
  syncFragments: O.sync.bind(O),
2690
- slide: K,
2691
- left: Kt,
2692
- right: qt,
2693
- up: Jt,
2694
- down: Yt,
2695
- prev: Xt,
2696
- next: Zt,
2697
- navigateLeft: Kt,
2698
- navigateRight: qt,
2699
- navigateUp: Jt,
2700
- navigateDown: Yt,
2701
- navigatePrev: Xt,
2702
- navigateNext: Zt,
2745
+ slide: _t,
2746
+ left: Gt,
2747
+ right: Kt,
2748
+ up: qt,
2749
+ down: Jt,
2750
+ prev: Yt,
2751
+ next: Xt,
2752
+ navigateLeft: Gt,
2753
+ navigateRight: Kt,
2754
+ navigateUp: qt,
2755
+ navigateDown: Jt,
2756
+ navigatePrev: Yt,
2757
+ navigateNext: Xt,
2703
2758
  navigateFragment: O.goto.bind(O),
2704
2759
  prevFragment: O.prev.bind(O),
2705
2760
  nextFragment: O.next.bind(O),
2706
- on: je,
2707
- off: Me,
2708
- addEventListener: je,
2709
- removeEventListener: Me,
2710
- layout: Be,
2711
- shuffle: wt,
2712
- availableRoutes: J,
2761
+ on: Ne,
2762
+ off: Fe,
2763
+ addEventListener: Ne,
2764
+ removeEventListener: Fe,
2765
+ layout: W,
2766
+ shuffle: St,
2767
+ availableRoutes: Y,
2713
2768
  availableFragments: O.availableRoutes.bind(O),
2714
2769
  toggleHelp: F.toggleHelp.bind(F),
2715
2770
  toggleOverview: k.toggle.bind(k),
2716
2771
  toggleScrollView: E.toggle.bind(E),
2717
- togglePause: mt,
2718
- toggleAutoSlide: _t,
2719
- toggleJumpToSlide: gt,
2720
- isFirstSlide: W,
2721
- isLastSlide: ft,
2722
- isLastVerticalSlide: dt,
2723
- isVerticalSlide: it,
2724
- isVerticalStack: at,
2725
- isPaused: ht,
2726
- isAutoSliding: vt,
2727
- isSpeakerNotes: I.isSpeakerNotesWindow.bind(I),
2772
+ togglePause: ft,
2773
+ toggleAutoSlide: ht,
2774
+ toggleJumpToSlide: mt,
2775
+ isFirstSlide: ct,
2776
+ isLastSlide: lt,
2777
+ isLastVerticalSlide: st,
2778
+ isVerticalSlide: at,
2779
+ isVerticalStack: ot,
2780
+ isPaused: pt,
2781
+ isAutoSliding: gt,
2782
+ isSpeakerNotes: z.isSpeakerNotesWindow.bind(z),
2728
2783
  isOverview: k.isActive.bind(k),
2729
- isFocused: te.isFocused.bind(te),
2784
+ isFocused: L.isFocused.bind(L),
2730
2785
  isOverlayOpen: F.isOpen.bind(F),
2731
2786
  isScrollView: E.isActive.bind(E),
2732
2787
  isPrintView: D.isActive.bind(D),
@@ -2740,39 +2795,39 @@ function dt(e, t) {
2740
2795
  previewVideo: F.previewVideo.bind(F),
2741
2796
  showPreview: F.previewIframe.bind(F),
2742
2797
  hidePreview: F.close.bind(F),
2743
- addEventListeners: V,
2744
- removeEventListeners: Oe,
2798
+ addEventListeners: Ae,
2799
+ removeEventListeners: je,
2745
2800
  dispatchEvent: U,
2746
- getState: Bt,
2747
- setState: Vt,
2748
- getProgress: Y,
2749
- getIndices: kt,
2750
- getSlidesAttributes: It,
2751
- getSlidePastCount: Ot,
2752
- getTotalSlides: Lt,
2753
- getSlide: Rt,
2801
+ getState: zt,
2802
+ setState: Bt,
2803
+ getProgress: Dt,
2804
+ getIndices: Ot,
2805
+ getSlidesAttributes: Ft,
2806
+ getSlidePastCount: Et,
2807
+ getTotalSlides: It,
2808
+ getSlide: Lt,
2754
2809
  getPreviousSlide: () => c,
2755
2810
  getCurrentSlide: () => l,
2756
- getSlideBackground: zt,
2757
- getSlideNotes: I.getSlideNotes.bind(I),
2758
- getSlides: At,
2759
- getHorizontalSlides: jt,
2760
- getVerticalSlides: Mt,
2761
- hasHorizontalSlides: Pt,
2762
- hasVerticalSlides: Ft,
2811
+ getSlideBackground: Rt,
2812
+ getSlideNotes: z.getSlideNotes.bind(z),
2813
+ getSlides: kt,
2814
+ getHorizontalSlides: At,
2815
+ getVerticalSlides: jt,
2816
+ hasHorizontalSlides: Nt,
2817
+ hasVerticalSlides: Pt,
2763
2818
  hasNavigatedHorizontally: () => u.hasNavigatedHorizontally,
2764
2819
  hasNavigatedVertically: () => u.hasNavigatedVertically,
2765
- shouldAutoAnimateBetween: yt,
2820
+ shouldAutoAnimateBetween: vt,
2766
2821
  addKeyBinding: A.addKeyBinding.bind(A),
2767
2822
  removeKeyBinding: A.removeKeyBinding.bind(A),
2768
2823
  triggerKey: A.triggerKey.bind(A),
2769
2824
  registerKeyboardShortcut: A.registerKeyboardShortcut.bind(A),
2770
- getComputedSlideSize: Ue,
2771
- setCurrentScrollPage: bt,
2772
- removeHiddenSlides: le,
2825
+ getComputedSlideSize: G,
2826
+ setCurrentScrollPage: yt,
2827
+ removeHiddenSlides: B,
2773
2828
  getScale: () => f,
2774
2829
  getConfig: () => r,
2775
- getQueryHash: ve,
2830
+ getQueryHash: se,
2776
2831
  getSlidePath: j.getHash.bind(j),
2777
2832
  getRevealElement: () => e,
2778
2833
  getSlidesElement: () => m.slides,
@@ -2783,13 +2838,13 @@ function dt(e, t) {
2783
2838
  getPlugin: P.getPlugin.bind(P),
2784
2839
  getPlugins: P.getRegisteredPlugins.bind(P)
2785
2840
  };
2786
- return de(n, ce(se({}, sn), {
2787
- announceStatus: he,
2841
+ return te(n, Ve(Ve({}, on), {}, {
2842
+ announceStatus: ge,
2788
2843
  getStatusText: _e,
2789
- focus: te,
2844
+ focus: L,
2790
2845
  scroll: E,
2791
- progress: M,
2792
- controls: ee,
2846
+ progress: ee,
2847
+ controls: M,
2793
2848
  location: j,
2794
2849
  overview: k,
2795
2850
  keyboard: A,
@@ -2797,20 +2852,20 @@ function dt(e, t) {
2797
2852
  backgrounds: T,
2798
2853
  slideContent: x,
2799
2854
  slideNumber: S,
2800
- onUserInput: Qt,
2855
+ onUserInput: Zt,
2801
2856
  closeOverlay: F.close.bind(F),
2802
- updateSlidesVisibility: Dt,
2803
- layoutSlideContents: Ve,
2804
- transformSlides: Ne,
2805
- cueAutoSlide: Ht,
2806
- cancelAutoSlide: Ut
2807
- })), sn;
2857
+ updateSlidesVisibility: Tt,
2858
+ layoutSlideContents: Ze,
2859
+ transformSlides: Ie,
2860
+ cueAutoSlide: Vt,
2861
+ cancelAutoSlide: Ht
2862
+ })), on;
2808
2863
  }
2809
- var W = dt, ft = [];
2810
- W.initialize = (e) => {
2864
+ var G = rt, it = [];
2865
+ G.initialize = (e) => {
2811
2866
  let t = document.querySelector(".reveal");
2812
2867
  if (!(t instanceof HTMLElement)) throw Error("Unable to find presentation root (<div class=\"reveal\">).");
2813
- return Object.assign(W, new dt(t, e)), ft.map((e) => e(W)), W.initialize();
2868
+ return Object.assign(G, new rt(t, e)), it.map((e) => e(G)), G.initialize();
2814
2869
  }, [
2815
2870
  "configure",
2816
2871
  "on",
@@ -2819,14 +2874,14 @@ W.initialize = (e) => {
2819
2874
  "removeEventListener",
2820
2875
  "registerPlugin"
2821
2876
  ].forEach((e) => {
2822
- W[e] = (...t) => {
2823
- ft.push((n) => n[e].call(null, ...t));
2877
+ G[e] = (...t) => {
2878
+ it.push((n) => n[e].call(null, ...t));
2824
2879
  };
2825
- }), W.isReady = () => !1, W.VERSION = ut;
2880
+ }), G.isReady = () => !1, G.VERSION = nt;
2826
2881
  //#endregion
2827
- //#region ../node_modules/.pnpm/@revealjs+react@0.2.1_react-dom@19.2.4_react@19.2.4__react@19.2.4_reveal.js@6.0.0/node_modules/@revealjs/react/dist/index.mjs
2828
- var G = O(), pt = (0, P.createContext)(null), mt = [];
2829
- function ht(e, t) {
2882
+ //#region ../node_modules/.pnpm/@revealjs+react@0.2.1_react-dom@19.2.8_react@19.2.8__react@19.2.8_reveal.js@6.0.1/node_modules/@revealjs/react/dist/index.mjs
2883
+ var K = O(), at = (0, P.createContext)(null), ot = [];
2884
+ function st(e, t) {
2830
2885
  if (e === t) return !1;
2831
2886
  if (!e || !t) return e !== t;
2832
2887
  let n = Object.keys(e), r = Object.keys(t);
@@ -2834,29 +2889,29 @@ function ht(e, t) {
2834
2889
  for (let r of n) if (!(r in t) || e[r] !== t[r]) return !0;
2835
2890
  return !1;
2836
2891
  }
2837
- function gt(e, t) {
2892
+ function ct(e, t) {
2838
2893
  e && (typeof e == "function" ? e(t) : e.current = t);
2839
2894
  }
2840
- function _t(e) {
2895
+ function lt(e) {
2841
2896
  return e.tagName === "SECTION";
2842
2897
  }
2843
- function vt(e, t, n) {
2844
- return Array.from(e.children).filter(_t).map((e) => {
2898
+ function ut(e, t, n) {
2899
+ return Array.from(e.children).filter(lt).map((e) => {
2845
2900
  let r = t.get(e);
2846
2901
  r === void 0 && (r = n.current++, t.set(e, r));
2847
- let i = vt(e, t, n);
2902
+ let i = ut(e, t, n);
2848
2903
  return i.length > 0 ? [r, i] : r;
2849
2904
  });
2850
2905
  }
2851
- function K(e, t, n) {
2852
- return e ? JSON.stringify(vt(e, t, n)) : "[]";
2906
+ function dt(e, t, n) {
2907
+ return e ? JSON.stringify(ut(e, t, n)) : "[]";
2853
2908
  }
2854
- function yt({ config: e, plugins: t = mt, onReady: n, onSync: r, onSlideSync: i, onSlideChange: a, onSlideTransitionEnd: o, onFragmentShown: s, onFragmentHidden: c, onOverviewShown: l, onOverviewHidden: u, onPaused: d, onResumed: f, deckRef: p, className: m, style: h, children: g }) {
2909
+ function ft({ config: e, plugins: t = ot, onReady: n, onSync: r, onSlideSync: i, onSlideChange: a, onSlideTransitionEnd: o, onFragmentShown: s, onFragmentHidden: c, onOverviewShown: l, onOverviewHidden: u, onPaused: d, onResumed: f, deckRef: p, className: m, style: h, children: g }) {
2855
2910
  let _ = (0, P.useRef)(null), v = (0, P.useRef)(null), y = (0, P.useRef)(null), [b, x] = (0, P.useState)(null), S = (0, P.useRef)(t), C = (0, P.useRef)(!1), w = (0, P.useRef)(e), T = (0, P.useRef)(null), E = (0, P.useRef)(/* @__PURE__ */ new WeakMap()), D = (0, P.useRef)(1), O = (0, P.useRef)(!1), k = (0, P.useRef)(0);
2856
2911
  return (0, P.useEffect)(() => {
2857
2912
  if (O.current = !0, k.current += 1, y.current) y.current.isReady() && x(y.current);
2858
2913
  else {
2859
- let t = new W(_.current, {
2914
+ let t = new G(_.current, {
2860
2915
  ...e,
2861
2916
  plugins: S.current
2862
2917
  });
@@ -2878,7 +2933,7 @@ function yt({ config: e, plugins: t = mt, onReady: n, onSync: r, onSlideSync: i,
2878
2933
  }
2879
2934
  });
2880
2935
  };
2881
- }, []), (0, P.useEffect)(() => (gt(p, b), () => gt(p, null)), [p, b]), (0, P.useEffect)(() => {
2936
+ }, []), (0, P.useEffect)(() => (ct(p, b), () => ct(p, null)), [p, b]), (0, P.useEffect)(() => {
2882
2937
  if (!b) return;
2883
2938
  let e = [
2884
2939
  ["sync", r],
@@ -2909,23 +2964,23 @@ function yt({ config: e, plugins: t = mt, onReady: n, onSync: r, onSlideSync: i,
2909
2964
  d,
2910
2965
  f
2911
2966
  ]), (0, P.useLayoutEffect)(() => {
2912
- !b || !y.current?.isReady() || ht(w.current, e) && (C.current = !0, y.current.configure(e ?? {}), w.current = e);
2967
+ !b || !y.current?.isReady() || st(w.current, e) && (C.current = !0, y.current.configure(e ?? {}), w.current = e);
2913
2968
  }, [b, e]), (0, P.useLayoutEffect)(() => {
2914
2969
  let e = C.current;
2915
2970
  C.current = !1;
2916
- let t = K(v.current, E.current, D);
2971
+ let t = dt(v.current, E.current, D);
2917
2972
  if (e) {
2918
2973
  T.current = t;
2919
2974
  return;
2920
2975
  }
2921
2976
  y.current?.isReady() && T.current !== t && (y.current.sync(), T.current = t);
2922
- }), /* @__PURE__ */ (0, G.jsx)(pt.Provider, {
2977
+ }), /* @__PURE__ */ (0, K.jsx)(at.Provider, {
2923
2978
  value: b,
2924
- children: /* @__PURE__ */ (0, G.jsx)("div", {
2979
+ children: /* @__PURE__ */ (0, K.jsx)("div", {
2925
2980
  className: m ? `reveal ${m}` : "reveal",
2926
2981
  style: h,
2927
2982
  ref: _,
2928
- children: /* @__PURE__ */ (0, G.jsx)("div", {
2983
+ children: /* @__PURE__ */ (0, K.jsx)("div", {
2929
2984
  className: "slides",
2930
2985
  ref: v,
2931
2986
  children: g
@@ -2933,7 +2988,7 @@ function yt({ config: e, plugins: t = mt, onReady: n, onSync: r, onSlideSync: i,
2933
2988
  })
2934
2989
  });
2935
2990
  }
2936
- var bt = {
2991
+ var pt = {
2937
2992
  background: "data-background",
2938
2993
  backgroundImage: "data-background-image",
2939
2994
  backgroundVideo: "data-background-video",
@@ -2962,12 +3017,12 @@ var bt = {
2962
3017
  backgroundInteractive: "data-background-interactive",
2963
3018
  preload: "data-preload"
2964
3019
  };
2965
- function xt(e) {
3020
+ function mt(e) {
2966
3021
  return JSON.stringify(Object.entries(e).filter(([e]) => e.startsWith("data-")).sort(([e], [t]) => e.localeCompare(t)));
2967
3022
  }
2968
- function St(e, t) {
3023
+ function ht(e, t) {
2969
3024
  let n = { ...e }, r = n;
2970
- for (let [e, n] of Object.entries(bt)) {
3025
+ for (let [e, n] of Object.entries(pt)) {
2971
3026
  if (r[n] !== void 0) continue;
2972
3027
  let i = t[e];
2973
3028
  if (i !== void 0) {
@@ -2980,8 +3035,8 @@ function St(e, t) {
2980
3035
  }
2981
3036
  return n;
2982
3037
  }
2983
- function Ct({ children: e, background: t, backgroundImage: n, backgroundVideo: r, backgroundVideoLoop: i, backgroundVideoMuted: a, backgroundIframe: o, backgroundColor: s, backgroundGradient: c, backgroundSize: l, backgroundPosition: u, backgroundRepeat: d, backgroundOpacity: f, backgroundTransition: p, visibility: m, autoAnimate: h, autoAnimateId: g, autoAnimateRestart: _, autoAnimateUnmatched: v, autoAnimateEasing: y, autoAnimateDuration: b, autoAnimateDelay: x, transition: S, transitionSpeed: C, autoSlide: w, notes: T, backgroundInteractive: E, preload: D, ...O }) {
2984
- let k = (0, P.useContext)(pt), A = (0, P.useRef)(null), j = (0, P.useRef)(null), ee = (0, P.useRef)(null), M = St(O, {
3038
+ function gt({ children: e, background: t, backgroundImage: n, backgroundVideo: r, backgroundVideoLoop: i, backgroundVideoMuted: a, backgroundIframe: o, backgroundColor: s, backgroundGradient: c, backgroundSize: l, backgroundPosition: u, backgroundRepeat: d, backgroundOpacity: f, backgroundTransition: p, visibility: m, autoAnimate: h, autoAnimateId: g, autoAnimateRestart: _, autoAnimateUnmatched: v, autoAnimateEasing: y, autoAnimateDuration: b, autoAnimateDelay: x, transition: S, transitionSpeed: C, autoSlide: w, notes: T, backgroundInteractive: E, preload: D, ...O }) {
3039
+ let k = (0, P.useContext)(at), A = (0, P.useRef)(null), j = (0, P.useRef)(null), M = (0, P.useRef)(null), ee = ht(O, {
2985
3040
  background: t,
2986
3041
  backgroundImage: n,
2987
3042
  backgroundVideo: r,
@@ -3009,31 +3064,31 @@ function Ct({ children: e, background: t, backgroundImage: n, backgroundVideo: r
3009
3064
  notes: T,
3010
3065
  backgroundInteractive: E,
3011
3066
  preload: D
3012
- }), N = xt(M);
3067
+ }), N = mt(ee);
3013
3068
  return (0, P.useLayoutEffect)(() => {
3014
3069
  let e = A.current;
3015
3070
  if (!k || !e || typeof k.syncSlide != "function") return;
3016
3071
  if (j.current !== k) {
3017
- j.current = k, ee.current = N;
3072
+ j.current = k, M.current = N;
3018
3073
  return;
3019
3074
  }
3020
3075
  if (N === "[]") return;
3021
- let t = j.current === k, n = ee.current === N;
3022
- t && n || (k.syncSlide(e), j.current = k, ee.current = N);
3023
- }, [k, N]), /* @__PURE__ */ (0, G.jsx)("section", {
3076
+ let t = j.current === k, n = M.current === N;
3077
+ t && n || (k.syncSlide(e), j.current = k, M.current = N);
3078
+ }, [k, N]), /* @__PURE__ */ (0, K.jsx)("section", {
3024
3079
  ref: A,
3025
- ...M,
3080
+ ...ee,
3026
3081
  children: e
3027
3082
  });
3028
3083
  }
3029
- function wt({ className: e, style: t, children: n }) {
3030
- return /* @__PURE__ */ (0, G.jsx)("section", {
3084
+ function _t({ className: e, style: t, children: n }) {
3085
+ return /* @__PURE__ */ (0, K.jsx)("section", {
3031
3086
  className: e,
3032
3087
  style: t,
3033
3088
  children: n
3034
3089
  });
3035
3090
  }
3036
- function Tt() {
3091
+ function vt() {
3037
3092
  return {
3038
3093
  async: !1,
3039
3094
  breaks: !1,
@@ -3047,28 +3102,28 @@ function Tt() {
3047
3102
  walkTokens: null
3048
3103
  };
3049
3104
  }
3050
- var q = Tt();
3051
- function Et(e) {
3052
- q = e;
3105
+ var yt = vt();
3106
+ function bt(e) {
3107
+ yt = e;
3053
3108
  }
3054
- var Dt = { exec: () => null };
3055
- function J(e, t = "") {
3109
+ var xt = { exec: () => null };
3110
+ function q(e, t = "") {
3056
3111
  let n = typeof e == "string" ? e : e.source, r = {
3057
3112
  replace: (e, t) => {
3058
3113
  let i = typeof t == "string" ? t : t.source;
3059
- return i = i.replace(Y.caret, "$1"), n = n.replace(e, i), r;
3114
+ return i = i.replace(J.caret, "$1"), n = n.replace(e, i), r;
3060
3115
  },
3061
3116
  getRegex: () => new RegExp(n, t)
3062
3117
  };
3063
3118
  return r;
3064
3119
  }
3065
- var Ot = (() => {
3120
+ var St = (() => {
3066
3121
  try {
3067
3122
  return !0;
3068
3123
  } catch {
3069
3124
  return !1;
3070
3125
  }
3071
- })(), Y = {
3126
+ })(), J = {
3072
3127
  codeRemoveIndent: /^(?: {1,4}| {0,3}\t)/gm,
3073
3128
  outputLinkReplace: /\\([\[\]])/g,
3074
3129
  indentCodeCompensation: /^(\s+)(?:```)/,
@@ -3125,117 +3180,117 @@ var Ot = (() => {
3125
3180
  headingBeginRegex: (e) => RegExp(`^ {0,${Math.min(3, e - 1)}}#`),
3126
3181
  htmlBeginRegex: (e) => RegExp(`^ {0,${Math.min(3, e - 1)}}<(?:[a-z].*>|!--)`, "i"),
3127
3182
  blockquoteBeginRegex: (e) => RegExp(`^ {0,${Math.min(3, e - 1)}}>`)
3128
- }, kt = /^(?:[ \t]*(?:\n|$))+/, At = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, jt = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, Mt = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Nt = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Pt = / {0,3}(?:[*+-]|\d{1,9}[.)])/, Ft = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, It = J(Ft).replace(/bull/g, Pt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), Lt = J(Ft).replace(/bull/g, Pt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), Rt = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, zt = /^[^\n]+/, Bt = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, Vt = J(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", Bt).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Ht = J(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, Pt).getRegex(), Ut = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Wt = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Gt = J("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Wt).replace("tag", Ut).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Kt = J(Rt).replace("hr", Mt).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Ut).getRegex(), qt = {
3129
- blockquote: J(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Kt).getRegex(),
3130
- code: At,
3131
- def: Vt,
3132
- fences: jt,
3133
- heading: Nt,
3134
- hr: Mt,
3135
- html: Gt,
3136
- lheading: It,
3137
- list: Ht,
3138
- newline: kt,
3139
- paragraph: Kt,
3140
- table: Dt,
3141
- text: zt
3142
- }, Jt = J("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", Mt).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Ut).getRegex(), Yt = {
3143
- ...qt,
3144
- lheading: Lt,
3145
- table: Jt,
3146
- paragraph: J(Rt).replace("hr", Mt).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", Jt).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Ut).getRegex()
3147
- }, Xt = {
3148
- ...qt,
3149
- html: J("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", Wt).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
3183
+ }, Ct = /^(?:[ \t]*(?:\n|$))+/, wt = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Tt = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, Y = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Et = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Dt = / {0,3}(?:[*+-]|\d{1,9}[.)])/, Ot = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, kt = q(Ot).replace(/bull/g, Dt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), At = q(Ot).replace(/bull/g, Dt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), jt = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, Mt = /^[^\n]+/, Nt = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, Pt = q(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", Nt).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Ft = q(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, Dt).getRegex(), It = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Lt = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Rt = q("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Lt).replace("tag", It).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), zt = q(jt).replace("hr", Y).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", It).getRegex(), Bt = {
3184
+ blockquote: q(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", zt).getRegex(),
3185
+ code: wt,
3186
+ def: Pt,
3187
+ fences: Tt,
3188
+ heading: Et,
3189
+ hr: Y,
3190
+ html: Rt,
3191
+ lheading: kt,
3192
+ list: Ft,
3193
+ newline: Ct,
3194
+ paragraph: zt,
3195
+ table: xt,
3196
+ text: Mt
3197
+ }, Vt = q("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", Y).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", It).getRegex(), Ht = {
3198
+ ...Bt,
3199
+ lheading: At,
3200
+ table: Vt,
3201
+ paragraph: q(jt).replace("hr", Y).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", Vt).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", It).getRegex()
3202
+ }, Ut = {
3203
+ ...Bt,
3204
+ html: q("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", Lt).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
3150
3205
  def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
3151
3206
  heading: /^(#{1,6})(.*)(?:\n+|$)/,
3152
- fences: Dt,
3207
+ fences: xt,
3153
3208
  lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
3154
- paragraph: J(Rt).replace("hr", Mt).replace("heading", " *#{1,6} *[^\n]").replace("lheading", It).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
3155
- }, Zt = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Qt = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, $t = /^( {2,}|\\)\n(?!\s*$)/, en = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, tn = /[\p{P}\p{S}]/u, nn = /[\s\p{P}\p{S}]/u, rn = /[^\s\p{P}\p{S}]/u, an = J(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, nn).getRegex(), on = /(?!~)[\p{P}\p{S}]/u, sn = /(?!~)[\s\p{P}\p{S}]/u, cn = /(?:[^\s\p{P}\p{S}]|~)/u, ln = J(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Ot ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), un = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, dn = J(un, "u").replace(/punct/g, tn).getRegex(), fn = J(un, "u").replace(/punct/g, on).getRegex(), pn = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", mn = J(pn, "gu").replace(/notPunctSpace/g, rn).replace(/punctSpace/g, nn).replace(/punct/g, tn).getRegex(), hn = J(pn, "gu").replace(/notPunctSpace/g, cn).replace(/punctSpace/g, sn).replace(/punct/g, on).getRegex(), gn = J("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, rn).replace(/punctSpace/g, nn).replace(/punct/g, tn).getRegex(), _n = J(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, tn).getRegex(), vn = J("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, rn).replace(/punctSpace/g, nn).replace(/punct/g, tn).getRegex(), yn = J(/\\(punct)/, "gu").replace(/punct/g, tn).getRegex(), bn = J(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), xn = J(Wt).replace("(?:-->|$)", "-->").getRegex(), Sn = J("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", xn).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), Cn = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/, wn = J(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", Cn).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), Tn = J(/^!?\[(label)\]\[(ref)\]/).replace("label", Cn).replace("ref", Bt).getRegex(), En = J(/^!?\[(ref)\](?:\[\])?/).replace("ref", Bt).getRegex(), Dn = J("reflink|nolink(?!\\()", "g").replace("reflink", Tn).replace("nolink", En).getRegex(), On = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, kn = {
3156
- _backpedal: Dt,
3157
- anyPunctuation: yn,
3158
- autolink: bn,
3159
- blockSkip: ln,
3160
- br: $t,
3161
- code: Qt,
3162
- del: Dt,
3163
- delLDelim: Dt,
3164
- delRDelim: Dt,
3165
- emStrongLDelim: dn,
3166
- emStrongRDelimAst: mn,
3167
- emStrongRDelimUnd: gn,
3168
- escape: Zt,
3169
- link: wn,
3170
- nolink: En,
3171
- punctuation: an,
3172
- reflink: Tn,
3173
- reflinkSearch: Dn,
3174
- tag: Sn,
3175
- text: en,
3176
- url: Dt
3177
- }, An = {
3178
- ...kn,
3179
- link: J(/^!?\[(label)\]\((.*?)\)/).replace("label", Cn).getRegex(),
3180
- reflink: J(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", Cn).getRegex()
3181
- }, jn = {
3182
- ...kn,
3183
- emStrongRDelimAst: hn,
3184
- emStrongLDelim: fn,
3185
- delLDelim: _n,
3186
- delRDelim: vn,
3187
- url: J(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", On).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),
3209
+ paragraph: q(jt).replace("hr", Y).replace("heading", " *#{1,6} *[^\n]").replace("lheading", kt).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
3210
+ }, Wt = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Gt = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, Kt = /^( {2,}|\\)\n(?!\s*$)/, qt = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, Jt = /[\p{P}\p{S}]/u, Yt = /[\s\p{P}\p{S}]/u, Xt = /[^\s\p{P}\p{S}]/u, Zt = q(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, Yt).getRegex(), Qt = /(?!~)[\p{P}\p{S}]/u, $t = /(?!~)[\s\p{P}\p{S}]/u, en = /(?:[^\s\p{P}\p{S}]|~)/u, tn = q(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", St ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), nn = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, rn = q(nn, "u").replace(/punct/g, Jt).getRegex(), an = q(nn, "u").replace(/punct/g, Qt).getRegex(), on = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", sn = q(on, "gu").replace(/notPunctSpace/g, Xt).replace(/punctSpace/g, Yt).replace(/punct/g, Jt).getRegex(), cn = q(on, "gu").replace(/notPunctSpace/g, en).replace(/punctSpace/g, $t).replace(/punct/g, Qt).getRegex(), ln = q("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, Xt).replace(/punctSpace/g, Yt).replace(/punct/g, Jt).getRegex(), un = q(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, Jt).getRegex(), dn = q("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, Xt).replace(/punctSpace/g, Yt).replace(/punct/g, Jt).getRegex(), fn = q(/\\(punct)/, "gu").replace(/punct/g, Jt).getRegex(), pn = q(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), mn = q(Lt).replace("(?:-->|$)", "-->").getRegex(), hn = q("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", mn).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), gn = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/, _n = q(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", gn).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), vn = q(/^!?\[(label)\]\[(ref)\]/).replace("label", gn).replace("ref", Nt).getRegex(), yn = q(/^!?\[(ref)\](?:\[\])?/).replace("ref", Nt).getRegex(), bn = q("reflink|nolink(?!\\()", "g").replace("reflink", vn).replace("nolink", yn).getRegex(), xn = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, Sn = {
3211
+ _backpedal: xt,
3212
+ anyPunctuation: fn,
3213
+ autolink: pn,
3214
+ blockSkip: tn,
3215
+ br: Kt,
3216
+ code: Gt,
3217
+ del: xt,
3218
+ delLDelim: xt,
3219
+ delRDelim: xt,
3220
+ emStrongLDelim: rn,
3221
+ emStrongRDelimAst: sn,
3222
+ emStrongRDelimUnd: ln,
3223
+ escape: Wt,
3224
+ link: _n,
3225
+ nolink: yn,
3226
+ punctuation: Zt,
3227
+ reflink: vn,
3228
+ reflinkSearch: bn,
3229
+ tag: hn,
3230
+ text: qt,
3231
+ url: xt
3232
+ }, Cn = {
3233
+ ...Sn,
3234
+ link: q(/^!?\[(label)\]\((.*?)\)/).replace("label", gn).getRegex(),
3235
+ reflink: q(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", gn).getRegex()
3236
+ }, wn = {
3237
+ ...Sn,
3238
+ emStrongRDelimAst: cn,
3239
+ emStrongLDelim: an,
3240
+ delLDelim: un,
3241
+ delRDelim: dn,
3242
+ url: q(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", xn).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),
3188
3243
  _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
3189
3244
  del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,
3190
- text: J(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", On).getRegex()
3191
- }, Mn = {
3192
- ...jn,
3193
- br: J($t).replace("{2,}", "*").getRegex(),
3194
- text: J(jn.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
3195
- }, Nn = {
3196
- normal: qt,
3197
- gfm: Yt,
3198
- pedantic: Xt
3199
- }, Pn = {
3200
- normal: kn,
3201
- gfm: jn,
3202
- breaks: Mn,
3203
- pedantic: An
3204
- }, Fn = {
3245
+ text: q(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", xn).getRegex()
3246
+ }, Tn = {
3247
+ ...wn,
3248
+ br: q(Kt).replace("{2,}", "*").getRegex(),
3249
+ text: q(wn.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
3250
+ }, En = {
3251
+ normal: Bt,
3252
+ gfm: Ht,
3253
+ pedantic: Ut
3254
+ }, Dn = {
3255
+ normal: Sn,
3256
+ gfm: wn,
3257
+ breaks: Tn,
3258
+ pedantic: Cn
3259
+ }, On = {
3205
3260
  "&": "&amp;",
3206
3261
  "<": "&lt;",
3207
3262
  ">": "&gt;",
3208
3263
  "\"": "&quot;",
3209
3264
  "'": "&#39;"
3210
- }, In = (e) => Fn[e];
3211
- function Ln(e, t) {
3265
+ }, kn = (e) => On[e];
3266
+ function An(e, t) {
3212
3267
  if (t) {
3213
- if (Y.escapeTest.test(e)) return e.replace(Y.escapeReplace, In);
3214
- } else if (Y.escapeTestNoEncode.test(e)) return e.replace(Y.escapeReplaceNoEncode, In);
3268
+ if (J.escapeTest.test(e)) return e.replace(J.escapeReplace, kn);
3269
+ } else if (J.escapeTestNoEncode.test(e)) return e.replace(J.escapeReplaceNoEncode, kn);
3215
3270
  return e;
3216
3271
  }
3217
- function Rn(e) {
3272
+ function jn(e) {
3218
3273
  try {
3219
- e = encodeURI(e).replace(Y.percentDecode, "%");
3274
+ e = encodeURI(e).replace(J.percentDecode, "%");
3220
3275
  } catch {
3221
3276
  return null;
3222
3277
  }
3223
3278
  return e;
3224
3279
  }
3225
- function zn(e, t) {
3226
- let n = e.replace(Y.findPipe, (e, t, n) => {
3280
+ function Mn(e, t) {
3281
+ let n = e.replace(J.findPipe, (e, t, n) => {
3227
3282
  let r = !1, i = t;
3228
3283
  for (; --i >= 0 && n[i] === "\\";) r = !r;
3229
3284
  return r ? "|" : " |";
3230
- }).split(Y.splitPipe), r = 0;
3285
+ }).split(J.splitPipe), r = 0;
3231
3286
  if (n[0].trim() || n.shift(), n.length > 0 && !n.at(-1)?.trim() && n.pop(), t) {
3232
3287
  if (n.length > t) n.splice(t);
3233
3288
  else for (; n.length < t;) n.push("");
3234
3289
  }
3235
- for (; r < n.length; r++) n[r] = n[r].trim().replace(Y.slashPipe, "|");
3290
+ for (; r < n.length; r++) n[r] = n[r].trim().replace(J.slashPipe, "|");
3236
3291
  return n;
3237
3292
  }
3238
- function Bn(e, t, n) {
3293
+ function Nn(e, t, n) {
3239
3294
  let r = e.length;
3240
3295
  if (r === 0) return "";
3241
3296
  let i = 0;
@@ -3247,7 +3302,7 @@ function Bn(e, t, n) {
3247
3302
  }
3248
3303
  return e.slice(0, r - i);
3249
3304
  }
3250
- function Vn(e, t) {
3305
+ function Pn(e, t) {
3251
3306
  if (e.indexOf(t[1]) === -1) return -1;
3252
3307
  let n = 0;
3253
3308
  for (let r = 0; r < e.length; r++) if (e[r] === "\\") r++;
@@ -3255,7 +3310,7 @@ function Vn(e, t) {
3255
3310
  else if (e[r] === t[1] && (n--, n < 0)) return r;
3256
3311
  return n > 0 ? -2 : -1;
3257
3312
  }
3258
- function Hn(e, t = 0) {
3313
+ function Fn(e, t = 0) {
3259
3314
  let n = t, r = "";
3260
3315
  for (let t of e) if (t === " ") {
3261
3316
  let e = 4 - n % 4;
@@ -3263,7 +3318,7 @@ function Hn(e, t = 0) {
3263
3318
  } else r += t, n++;
3264
3319
  return r;
3265
3320
  }
3266
- function Un(e, t, n, r, i) {
3321
+ function In(e, t, n, r, i) {
3267
3322
  let a = t.href, o = t.title || null, s = e[1].replace(i.other.outputLinkReplace, "$1");
3268
3323
  r.state.inLink = !0;
3269
3324
  let c = {
@@ -3276,7 +3331,7 @@ function Un(e, t, n, r, i) {
3276
3331
  };
3277
3332
  return r.state.inLink = !1, c;
3278
3333
  }
3279
- function Wn(e, t, n) {
3334
+ function Ln(e, t, n) {
3280
3335
  let r = e.match(n.other.indentCodeCompensation);
3281
3336
  if (r === null) return t;
3282
3337
  let i = r[1];
@@ -3287,12 +3342,12 @@ function Wn(e, t, n) {
3287
3342
  return r.length >= i.length ? e.slice(i.length) : e;
3288
3343
  }).join("\n");
3289
3344
  }
3290
- var Gn = class {
3345
+ var Rn = class {
3291
3346
  options;
3292
3347
  rules;
3293
3348
  lexer;
3294
3349
  constructor(e) {
3295
- this.options = e || q;
3350
+ this.options = e || yt;
3296
3351
  }
3297
3352
  space(e) {
3298
3353
  let t = this.rules.block.newline.exec(e);
@@ -3309,14 +3364,14 @@ var Gn = class {
3309
3364
  type: "code",
3310
3365
  raw: t[0],
3311
3366
  codeBlockStyle: "indented",
3312
- text: this.options.pedantic ? e : Bn(e, "\n")
3367
+ text: this.options.pedantic ? e : Nn(e, "\n")
3313
3368
  };
3314
3369
  }
3315
3370
  }
3316
3371
  fences(e) {
3317
3372
  let t = this.rules.block.fences.exec(e);
3318
3373
  if (t) {
3319
- let e = t[0], n = Wn(e, t[3] || "", this.rules);
3374
+ let e = t[0], n = Ln(e, t[3] || "", this.rules);
3320
3375
  return {
3321
3376
  type: "code",
3322
3377
  raw: e,
@@ -3330,7 +3385,7 @@ var Gn = class {
3330
3385
  if (t) {
3331
3386
  let e = t[2].trim();
3332
3387
  if (this.rules.other.endingHash.test(e)) {
3333
- let t = Bn(e, "#");
3388
+ let t = Nn(e, "#");
3334
3389
  (this.options.pedantic || !t || this.rules.other.endingSpaceChar.test(t)) && (e = t.trim());
3335
3390
  }
3336
3391
  return {
@@ -3346,13 +3401,13 @@ var Gn = class {
3346
3401
  let t = this.rules.block.hr.exec(e);
3347
3402
  if (t) return {
3348
3403
  type: "hr",
3349
- raw: Bn(t[0], "\n")
3404
+ raw: Nn(t[0], "\n")
3350
3405
  };
3351
3406
  }
3352
3407
  blockquote(e) {
3353
3408
  let t = this.rules.block.blockquote.exec(e);
3354
3409
  if (t) {
3355
- let e = Bn(t[0], "\n").split("\n"), n = "", r = "", i = [];
3410
+ let e = Nn(t[0], "\n").split("\n"), n = "", r = "", i = [];
3356
3411
  for (; e.length > 0;) {
3357
3412
  let t = !1, a = [], o;
3358
3413
  for (o = 0; o < e.length; o++) if (this.rules.other.blockquoteStart.test(e[o])) a.push(e[o]), t = !0;
@@ -3403,7 +3458,7 @@ ${c}` : c;
3403
3458
  let n = !1, r = "", s = "";
3404
3459
  if (!(t = a.exec(e)) || this.rules.block.hr.test(e)) break;
3405
3460
  r = t[0], e = e.substring(r.length);
3406
- let c = Hn(t[2].split("\n", 1)[0], t[1].length), l = e.split("\n", 1)[0], u = !c.trim(), d = 0;
3461
+ let c = Fn(t[2].split("\n", 1)[0], t[1].length), l = e.split("\n", 1)[0], u = !c.trim(), d = 0;
3407
3462
  if (this.options.pedantic ? (d = 2, s = c.trimStart()) : u ? d = t[1].length + 1 : (d = c.search(this.rules.other.nonSpaceChar), d = d > 4 ? 1 : d, s = c.slice(d), d += t[1].length), u && this.rules.other.blankLine.test(l) && (r += l + "\n", e = e.substring(l.length + 1), n = !0), !n) {
3408
3463
  let t = this.rules.other.nextBulletRegex(d), n = this.rules.other.hrRegex(d), i = this.rules.other.fencesBeginRegex(d), a = this.rules.other.headingBeginRegex(d), o = this.rules.other.htmlBeginRegex(d), f = this.rules.other.blockquoteBeginRegex(d);
3409
3464
  for (; e;) {
@@ -3492,7 +3547,7 @@ ${c}` : c;
3492
3547
  table(e) {
3493
3548
  let t = this.rules.block.table.exec(e);
3494
3549
  if (!t || !this.rules.other.tableDelimiter.test(t[2])) return;
3495
- let n = zn(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
3550
+ let n = Mn(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
3496
3551
  type: "table",
3497
3552
  raw: t[0],
3498
3553
  header: [],
@@ -3507,7 +3562,7 @@ ${c}` : c;
3507
3562
  header: !0,
3508
3563
  align: a.align[e]
3509
3564
  });
3510
- for (let e of i) a.rows.push(zn(e, a.header.length).map((e, t) => ({
3565
+ for (let e of i) a.rows.push(Mn(e, a.header.length).map((e, t) => ({
3511
3566
  text: e,
3512
3567
  tokens: this.lexer.inline(e),
3513
3568
  header: !1,
@@ -3575,10 +3630,10 @@ ${c}` : c;
3575
3630
  let e = t[2].trim();
3576
3631
  if (!this.options.pedantic && this.rules.other.startAngleBracket.test(e)) {
3577
3632
  if (!this.rules.other.endAngleBracket.test(e)) return;
3578
- let t = Bn(e.slice(0, -1), "\\");
3633
+ let t = Nn(e.slice(0, -1), "\\");
3579
3634
  if ((e.length - t.length) % 2 == 0) return;
3580
3635
  } else {
3581
- let e = Vn(t[2], "()");
3636
+ let e = Pn(t[2], "()");
3582
3637
  if (e === -2) return;
3583
3638
  if (e > -1) {
3584
3639
  let n = (t[0].indexOf("!") === 0 ? 5 : 4) + t[1].length + e;
@@ -3590,7 +3645,7 @@ ${c}` : c;
3590
3645
  let e = this.rules.other.pedanticHrefTitle.exec(n);
3591
3646
  e && (n = e[1], r = e[3]);
3592
3647
  } else r = t[3] ? t[3].slice(1, -1) : "";
3593
- return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (n = this.options.pedantic && !this.rules.other.endAngleBracket.test(e) ? n.slice(1) : n.slice(1, -1)), Un(t, {
3648
+ return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (n = this.options.pedantic && !this.rules.other.endAngleBracket.test(e) ? n.slice(1) : n.slice(1, -1)), In(t, {
3594
3649
  href: n && n.replace(this.rules.inline.anyPunctuation, "$1"),
3595
3650
  title: r && r.replace(this.rules.inline.anyPunctuation, "$1")
3596
3651
  }, t[0], this.lexer, this.rules);
@@ -3608,7 +3663,7 @@ ${c}` : c;
3608
3663
  text: e
3609
3664
  };
3610
3665
  }
3611
- return Un(n, e, n[0], this.lexer, this.rules);
3666
+ return In(n, e, n[0], this.lexer, this.rules);
3612
3667
  }
3613
3668
  }
3614
3669
  emStrong(e, t, n = "") {
@@ -3741,29 +3796,29 @@ ${c}` : c;
3741
3796
  };
3742
3797
  }
3743
3798
  }
3744
- }, Kn = class e {
3799
+ }, zn = class e {
3745
3800
  tokens;
3746
3801
  options;
3747
3802
  state;
3748
3803
  inlineQueue;
3749
3804
  tokenizer;
3750
3805
  constructor(e) {
3751
- this.tokens = [], this.tokens.links = Object.create(null), this.options = e || q, this.options.tokenizer = this.options.tokenizer || new Gn(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
3806
+ this.tokens = [], this.tokens.links = Object.create(null), this.options = e || yt, this.options.tokenizer = this.options.tokenizer || new Rn(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
3752
3807
  inLink: !1,
3753
3808
  inRawBlock: !1,
3754
3809
  top: !0
3755
3810
  };
3756
3811
  let t = {
3757
- other: Y,
3758
- block: Nn.normal,
3759
- inline: Pn.normal
3812
+ other: J,
3813
+ block: En.normal,
3814
+ inline: Dn.normal
3760
3815
  };
3761
- this.options.pedantic ? (t.block = Nn.pedantic, t.inline = Pn.pedantic) : this.options.gfm && (t.block = Nn.gfm, t.inline = this.options.breaks ? Pn.breaks : Pn.gfm), this.tokenizer.rules = t;
3816
+ this.options.pedantic ? (t.block = En.pedantic, t.inline = Dn.pedantic) : this.options.gfm && (t.block = En.gfm, t.inline = this.options.breaks ? Dn.breaks : Dn.gfm), this.tokenizer.rules = t;
3762
3817
  }
3763
3818
  static get rules() {
3764
3819
  return {
3765
- block: Nn,
3766
- inline: Pn
3820
+ block: En,
3821
+ inline: Dn
3767
3822
  };
3768
3823
  }
3769
3824
  static lex(t, n) {
@@ -3773,7 +3828,7 @@ ${c}` : c;
3773
3828
  return new e(n).inlineTokens(t);
3774
3829
  }
3775
3830
  lex(e) {
3776
- e = e.replace(Y.carriageReturn, "\n"), this.blockTokens(e, this.tokens);
3831
+ e = e.replace(J.carriageReturn, "\n"), this.blockTokens(e, this.tokens);
3777
3832
  for (let e = 0; e < this.inlineQueue.length; e++) {
3778
3833
  let t = this.inlineQueue[e];
3779
3834
  this.inlineTokens(t.src, t.tokens);
@@ -3781,7 +3836,7 @@ ${c}` : c;
3781
3836
  return this.inlineQueue = [], this.tokens;
3782
3837
  }
3783
3838
  blockTokens(e, t = [], n = !1) {
3784
- for (this.tokenizer.lexer = this, this.options.pedantic && (e = e.replace(Y.tabCharGlobal, " ").replace(Y.spaceLine, "")); e;) {
3839
+ for (this.tokenizer.lexer = this, this.options.pedantic && (e = e.replace(J.tabCharGlobal, " ").replace(J.spaceLine, "")); e;) {
3785
3840
  let r;
3786
3841
  if (this.options.extensions?.block?.some((n) => (r = n.call({ lexer: this }, e, t)) ? (e = e.substring(r.raw.length), t.push(r), !0) : !1)) continue;
3787
3842
  if (r = this.tokenizer.space(e)) {
@@ -3954,18 +4009,18 @@ ${c}` : c;
3954
4009
  }
3955
4010
  return t;
3956
4011
  }
3957
- }, qn = class {
4012
+ }, Bn = class {
3958
4013
  options;
3959
4014
  parser;
3960
4015
  constructor(e) {
3961
- this.options = e || q;
4016
+ this.options = e || yt;
3962
4017
  }
3963
4018
  space(e) {
3964
4019
  return "";
3965
4020
  }
3966
4021
  code({ text: e, lang: t, escaped: n }) {
3967
- let r = (t || "").match(Y.notSpaceStart)?.[0], i = e.replace(Y.endingNewline, "") + "\n";
3968
- return r ? "<pre><code class=\"language-" + Ln(r) + "\">" + (n ? i : Ln(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : Ln(i, !0)) + "</code></pre>\n";
4022
+ let r = (t || "").match(J.notSpaceStart)?.[0], i = e.replace(J.endingNewline, "") + "\n";
4023
+ return r ? "<pre><code class=\"language-" + An(r) + "\">" + (n ? i : An(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : An(i, !0)) + "</code></pre>\n";
3969
4024
  }
3970
4025
  blockquote({ tokens: e }) {
3971
4026
  return `<blockquote>
@@ -4035,7 +4090,7 @@ ${e}</tr>
4035
4090
  return `<em>${this.parser.parseInline(e)}</em>`;
4036
4091
  }
4037
4092
  codespan({ text: e }) {
4038
- return `<code>${Ln(e, !0)}</code>`;
4093
+ return `<code>${An(e, !0)}</code>`;
4039
4094
  }
4040
4095
  br(e) {
4041
4096
  return "<br>";
@@ -4044,24 +4099,24 @@ ${e}</tr>
4044
4099
  return `<del>${this.parser.parseInline(e)}</del>`;
4045
4100
  }
4046
4101
  link({ href: e, title: t, tokens: n }) {
4047
- let r = this.parser.parseInline(n), i = Rn(e);
4102
+ let r = this.parser.parseInline(n), i = jn(e);
4048
4103
  if (i === null) return r;
4049
4104
  e = i;
4050
4105
  let a = "<a href=\"" + e + "\"";
4051
- return t && (a += " title=\"" + Ln(t) + "\""), a += ">" + r + "</a>", a;
4106
+ return t && (a += " title=\"" + An(t) + "\""), a += ">" + r + "</a>", a;
4052
4107
  }
4053
4108
  image({ href: e, title: t, text: n, tokens: r }) {
4054
4109
  r && (n = this.parser.parseInline(r, this.parser.textRenderer));
4055
- let i = Rn(e);
4056
- if (i === null) return Ln(n);
4110
+ let i = jn(e);
4111
+ if (i === null) return An(n);
4057
4112
  e = i;
4058
- let a = `<img src="${e}" alt="${Ln(n)}"`;
4059
- return t && (a += ` title="${Ln(t)}"`), a += ">", a;
4113
+ let a = `<img src="${e}" alt="${An(n)}"`;
4114
+ return t && (a += ` title="${An(t)}"`), a += ">", a;
4060
4115
  }
4061
4116
  text(e) {
4062
- return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : Ln(e.text);
4117
+ return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : An(e.text);
4063
4118
  }
4064
- }, Jn = class {
4119
+ }, Vn = class {
4065
4120
  strong({ text: e }) {
4066
4121
  return e;
4067
4122
  }
@@ -4092,12 +4147,12 @@ ${e}</tr>
4092
4147
  checkbox({ raw: e }) {
4093
4148
  return e;
4094
4149
  }
4095
- }, Yn = class e {
4150
+ }, Hn = class e {
4096
4151
  options;
4097
4152
  renderer;
4098
4153
  textRenderer;
4099
4154
  constructor(e) {
4100
- this.options = e || q, this.options.renderer = this.options.renderer || new qn(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new Jn();
4155
+ this.options = e || yt, this.options.renderer = this.options.renderer || new Bn(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new Vn();
4101
4156
  }
4102
4157
  static parse(t, n) {
4103
4158
  return new e(n).parse(t);
@@ -4243,11 +4298,11 @@ ${e}</tr>
4243
4298
  }
4244
4299
  return n;
4245
4300
  }
4246
- }, Xn = class {
4301
+ }, Un = class {
4247
4302
  options;
4248
4303
  block;
4249
4304
  constructor(e) {
4250
- this.options = e || q;
4305
+ this.options = e || yt;
4251
4306
  }
4252
4307
  static passThroughHooks = /* @__PURE__ */ new Set([
4253
4308
  "preprocess",
@@ -4273,22 +4328,22 @@ ${e}</tr>
4273
4328
  return e;
4274
4329
  }
4275
4330
  provideLexer() {
4276
- return this.block ? Kn.lex : Kn.lexInline;
4331
+ return this.block ? zn.lex : zn.lexInline;
4277
4332
  }
4278
4333
  provideParser() {
4279
- return this.block ? Yn.parse : Yn.parseInline;
4334
+ return this.block ? Hn.parse : Hn.parseInline;
4280
4335
  }
4281
- }, Zn = new class {
4282
- defaults = Tt();
4336
+ }, Wn = new class {
4337
+ defaults = vt();
4283
4338
  options = this.setOptions;
4284
4339
  parse = this.parseMarkdown(!0);
4285
4340
  parseInline = this.parseMarkdown(!1);
4286
- Parser = Yn;
4287
- Renderer = qn;
4288
- TextRenderer = Jn;
4289
- Lexer = Kn;
4290
- Tokenizer = Gn;
4291
- Hooks = Xn;
4341
+ Parser = Hn;
4342
+ Renderer = Bn;
4343
+ TextRenderer = Vn;
4344
+ Lexer = zn;
4345
+ Tokenizer = Rn;
4346
+ Hooks = Un;
4292
4347
  constructor(...e) {
4293
4348
  this.use(...e);
4294
4349
  }
@@ -4339,7 +4394,7 @@ ${e}</tr>
4339
4394
  }
4340
4395
  "childTokens" in e && e.childTokens && (t.childTokens[e.name] = e.childTokens);
4341
4396
  }), n.extensions = t), e.renderer) {
4342
- let t = this.defaults.renderer || new qn(this.defaults);
4397
+ let t = this.defaults.renderer || new Bn(this.defaults);
4343
4398
  for (let n in e.renderer) {
4344
4399
  if (!(n in t)) throw Error(`renderer '${n}' does not exist`);
4345
4400
  if (["options", "parser"].includes(n)) continue;
@@ -4352,7 +4407,7 @@ ${e}</tr>
4352
4407
  n.renderer = t;
4353
4408
  }
4354
4409
  if (e.tokenizer) {
4355
- let t = this.defaults.tokenizer || new Gn(this.defaults);
4410
+ let t = this.defaults.tokenizer || new Rn(this.defaults);
4356
4411
  for (let n in e.tokenizer) {
4357
4412
  if (!(n in t)) throw Error(`tokenizer '${n}' does not exist`);
4358
4413
  if ([
@@ -4369,13 +4424,13 @@ ${e}</tr>
4369
4424
  n.tokenizer = t;
4370
4425
  }
4371
4426
  if (e.hooks) {
4372
- let t = this.defaults.hooks || new Xn();
4427
+ let t = this.defaults.hooks || new Un();
4373
4428
  for (let n in e.hooks) {
4374
4429
  if (!(n in t)) throw Error(`hook '${n}' does not exist`);
4375
4430
  if (["options", "block"].includes(n)) continue;
4376
4431
  let r = n, i = e.hooks[r], a = t[r];
4377
- t[r] = Xn.passThroughHooks.has(n) ? (e) => {
4378
- if (this.defaults.async && Xn.passThroughHooksRespectAsync.has(n)) return (async () => {
4432
+ t[r] = Un.passThroughHooks.has(n) ? (e) => {
4433
+ if (this.defaults.async && Un.passThroughHooksRespectAsync.has(n)) return (async () => {
4379
4434
  let n = await i.call(t, e);
4380
4435
  return a.call(t, n);
4381
4436
  })();
@@ -4412,10 +4467,10 @@ ${e}</tr>
4412
4467
  }, this;
4413
4468
  }
4414
4469
  lexer(e, t) {
4415
- return Kn.lex(e, t ?? this.defaults);
4470
+ return zn.lex(e, t ?? this.defaults);
4416
4471
  }
4417
4472
  parser(e, t) {
4418
- return Yn.parse(e, t ?? this.defaults);
4473
+ return Hn.parse(e, t ?? this.defaults);
4419
4474
  }
4420
4475
  parseMarkdown(e) {
4421
4476
  return (t, n) => {
@@ -4427,16 +4482,16 @@ ${e}</tr>
4427
4482
  if (typeof t > "u" || t === null) return a(/* @__PURE__ */ Error("marked(): input parameter is undefined or null"));
4428
4483
  if (typeof t != "string") return a(/* @__PURE__ */ Error("marked(): input parameter is of type " + Object.prototype.toString.call(t) + ", string expected"));
4429
4484
  if (i.hooks && (i.hooks.options = i, i.hooks.block = e), i.async) return (async () => {
4430
- let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer() : e ? Kn.lex : Kn.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
4485
+ let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer() : e ? zn.lex : zn.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
4431
4486
  i.walkTokens && await Promise.all(this.walkTokens(a, i.walkTokens));
4432
- let o = await (i.hooks ? await i.hooks.provideParser() : e ? Yn.parse : Yn.parseInline)(a, i);
4487
+ let o = await (i.hooks ? await i.hooks.provideParser() : e ? Hn.parse : Hn.parseInline)(a, i);
4433
4488
  return i.hooks ? await i.hooks.postprocess(o) : o;
4434
4489
  })().catch(a);
4435
4490
  try {
4436
4491
  i.hooks && (t = i.hooks.preprocess(t));
4437
- let n = (i.hooks ? i.hooks.provideLexer() : e ? Kn.lex : Kn.lexInline)(t, i);
4492
+ let n = (i.hooks ? i.hooks.provideLexer() : e ? zn.lex : zn.lexInline)(t, i);
4438
4493
  i.hooks && (n = i.hooks.processAllTokens(n)), i.walkTokens && this.walkTokens(n, i.walkTokens);
4439
- let r = (i.hooks ? i.hooks.provideParser() : e ? Yn.parse : Yn.parseInline)(n, i);
4494
+ let r = (i.hooks ? i.hooks.provideParser() : e ? Hn.parse : Hn.parseInline)(n, i);
4440
4495
  return i.hooks && (r = i.hooks.postprocess(r)), r;
4441
4496
  } catch (e) {
4442
4497
  return a(e);
@@ -4446,7 +4501,7 @@ ${e}</tr>
4446
4501
  onError(e, t) {
4447
4502
  return (n) => {
4448
4503
  if (n.message += "\nPlease report this to https://github.com/markedjs/marked.", e) {
4449
- let e = "<p>An error occurred:</p><pre>" + Ln(n.message + "", !0) + "</pre>";
4504
+ let e = "<p>An error occurred:</p><pre>" + An(n.message + "", !0) + "</pre>";
4450
4505
  return t ? Promise.resolve(e) : e;
4451
4506
  }
4452
4507
  if (t) return Promise.reject(n);
@@ -4455,26 +4510,26 @@ ${e}</tr>
4455
4510
  }
4456
4511
  }();
4457
4512
  function X(e, t) {
4458
- return Zn.parse(e, t);
4513
+ return Wn.parse(e, t);
4459
4514
  }
4460
4515
  X.options = X.setOptions = function(e) {
4461
- return Zn.setOptions(e), X.defaults = Zn.defaults, Et(X.defaults), X;
4462
- }, X.getDefaults = Tt, X.defaults = q, X.use = function(...e) {
4463
- return Zn.use(...e), X.defaults = Zn.defaults, Et(X.defaults), X;
4516
+ return Wn.setOptions(e), X.defaults = Wn.defaults, bt(X.defaults), X;
4517
+ }, X.getDefaults = vt, X.defaults = yt, X.use = function(...e) {
4518
+ return Wn.use(...e), X.defaults = Wn.defaults, bt(X.defaults), X;
4464
4519
  }, X.walkTokens = function(e, t) {
4465
- return Zn.walkTokens(e, t);
4466
- }, X.parseInline = Zn.parseInline, X.Parser = Yn, X.parser = Yn.parse, X.Renderer = qn, X.TextRenderer = Jn, X.Lexer = Kn, X.lexer = Kn.lex, X.Tokenizer = Gn, X.Hooks = Xn, X.parse = X, X.options, X.setOptions, X.use, X.walkTokens, X.parseInline, Yn.parse, Kn.lex;
4467
- function Qn(...e) {
4520
+ return Wn.walkTokens(e, t);
4521
+ }, X.parseInline = Wn.parseInline, X.Parser = Hn, X.parser = Hn.parse, X.Renderer = Bn, X.TextRenderer = Vn, X.Lexer = zn, X.lexer = zn.lex, X.Tokenizer = Rn, X.Hooks = Un, X.parse = X, X.options, X.setOptions, X.use, X.walkTokens, X.parseInline, Hn.parse, zn.lex;
4522
+ function Gn(...e) {
4468
4523
  return e.filter(Boolean).join(" ");
4469
4524
  }
4470
- function $n(e, t) {
4525
+ function Kn(e, t) {
4471
4526
  return e ? t ? {
4472
4527
  ...e,
4473
4528
  ...t
4474
4529
  } : e : t;
4475
4530
  }
4476
- function er({ animation: e, index: t, as: n, asChild: r, className: i, style: a, children: o }) {
4477
- let s = Qn("fragment", e, i);
4531
+ function qn({ animation: e, index: t, as: n, asChild: r, className: i, style: a, children: o }) {
4532
+ let s = Gn("fragment", e, i);
4478
4533
  if (r) {
4479
4534
  let e;
4480
4535
  try {
@@ -4484,12 +4539,12 @@ function er({ animation: e, index: t, as: n, asChild: r, className: i, style: a,
4484
4539
  }
4485
4540
  if (!(0, P.isValidElement)(e) || e.type === P.Fragment) throw Error("Fragment with asChild expects exactly one non-Fragment React element child.");
4486
4541
  let n = {
4487
- className: Qn(e.props.className, s),
4488
- style: $n(e.props.style, a)
4542
+ className: Gn(e.props.className, s),
4543
+ style: Kn(e.props.style, a)
4489
4544
  };
4490
4545
  return t !== void 0 && (n["data-fragment-index"] = t), (0, P.cloneElement)(e, n);
4491
4546
  }
4492
- return /* @__PURE__ */ (0, G.jsx)(n ?? "span", {
4547
+ return /* @__PURE__ */ (0, K.jsx)(n ?? "span", {
4493
4548
  className: s,
4494
4549
  style: a,
4495
4550
  "data-fragment-index": t,
@@ -4498,24 +4553,24 @@ function er({ animation: e, index: t, as: n, asChild: r, className: i, style: a,
4498
4553
  }
4499
4554
  //#endregion
4500
4555
  //#region src/components/slides/slide-scroll-hint.tsx
4501
- var tr = 8, nr = 1;
4502
- function rr(e) {
4556
+ var Jn = 8, Yn = 1;
4557
+ function Xn(e) {
4503
4558
  let { scrollHeight: t, clientHeight: n, scrollTop: r } = e;
4504
- return t > n + nr && r <= tr;
4559
+ return t > n + Yn && r <= Jn;
4505
4560
  }
4506
- function ir(e) {
4561
+ function Zn(e) {
4507
4562
  let t = e.querySelector(".fragment:not(.visible)");
4508
4563
  return t ? t.getBoundingClientRect().top - e.getBoundingClientRect().top + e.scrollTop : e.scrollHeight;
4509
4564
  }
4510
- function ar(e, t) {
4565
+ function Qn(e, t) {
4511
4566
  let n = (0, F.c)(4), [r, i] = (0, P.useState)(!1), a, o;
4512
4567
  return n[0] !== t || n[1] !== e ? (a = () => {
4513
4568
  let n = e.current, r = t.current;
4514
4569
  if (!n || !r) return;
4515
4570
  let a = 0, o = () => {
4516
4571
  cancelAnimationFrame(a), a = requestAnimationFrame(() => {
4517
- i(rr({
4518
- scrollHeight: ir(n),
4572
+ i(Xn({
4573
+ scrollHeight: Zn(n),
4519
4574
  clientHeight: n.clientHeight,
4520
4575
  scrollTop: n.scrollTop
4521
4576
  }));
@@ -4534,48 +4589,48 @@ function ar(e, t) {
4534
4589
  };
4535
4590
  }, o = [e, t], n[0] = t, n[1] = e, n[2] = a, n[3] = o) : (a = n[2], o = n[3]), (0, P.useEffect)(a, o), r;
4536
4591
  }
4537
- var or = (e) => {
4592
+ var $n = (e) => {
4538
4593
  let t = (0, F.c)(6), { className: n } = e, i;
4539
4594
  t[0] === n ? i = t[1] : (i = r("pointer-events-none absolute inset-x-0 bottom-0 z-10 flex flex-col items-center", "animate-in fade-in-0 duration-200", n), t[0] = n, t[1] = i);
4540
4595
  let a;
4541
- t[2] === Symbol.for("react.memo_cache_sentinel") ? (a = /* @__PURE__ */ (0, G.jsx)("div", { className: "h-16 w-full bg-linear-to-t from-background via-background/80 to-transparent" }), t[2] = a) : a = t[2];
4596
+ t[2] === Symbol.for("react.memo_cache_sentinel") ? (a = /* @__PURE__ */ (0, K.jsx)("div", { className: "h-16 w-full bg-linear-to-t from-background via-background/80 to-transparent" }), t[2] = a) : a = t[2];
4542
4597
  let o;
4543
- t[3] === Symbol.for("react.memo_cache_sentinel") ? (o = /* @__PURE__ */ (0, G.jsxs)("div", {
4598
+ t[3] === Symbol.for("react.memo_cache_sentinel") ? (o = /* @__PURE__ */ (0, K.jsxs)("div", {
4544
4599
  className: "absolute bottom-3 flex items-center gap-1 rounded-full border border-border/60 bg-background/90 px-2.5 py-1 text-xs text-muted-foreground shadow-sm backdrop-blur-sm",
4545
- children: [/* @__PURE__ */ (0, G.jsx)(E, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, G.jsx)("span", { children: "Scroll for more" })]
4600
+ children: [/* @__PURE__ */ (0, K.jsx)(E, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, K.jsx)("span", { children: "Scroll for more" })]
4546
4601
  }), t[3] = o) : o = t[3];
4547
4602
  let s;
4548
- return t[4] === i ? s = t[5] : (s = /* @__PURE__ */ (0, G.jsxs)("div", {
4603
+ return t[4] === i ? s = t[5] : (s = /* @__PURE__ */ (0, K.jsxs)("div", {
4549
4604
  className: i,
4550
4605
  "data-testid": "slide-scroll-hint",
4551
4606
  "aria-hidden": !0,
4552
4607
  children: [a, o]
4553
4608
  }), t[4] = i, t[5] = s), s;
4554
- }, sr = (e) => {
4555
- let t = (0, F.c)(10), { children: n, className: i } = e, a = (0, P.useRef)(null), o = (0, P.useRef)(null), s = ar(a, o), c;
4609
+ }, er = (e) => {
4610
+ let t = (0, F.c)(10), { children: n, className: i } = e, a = (0, P.useRef)(null), o = (0, P.useRef)(null), s = Qn(a, o), c;
4556
4611
  t[0] === i ? c = t[1] : (c = r("relative h-full w-full", i), t[0] = i, t[1] = c);
4557
4612
  let l;
4558
- t[2] === n ? l = t[3] : (l = /* @__PURE__ */ (0, G.jsx)("div", {
4613
+ t[2] === n ? l = t[3] : (l = /* @__PURE__ */ (0, K.jsx)("div", {
4559
4614
  ref: a,
4560
4615
  className: "h-full w-full overflow-auto",
4561
4616
  "data-testid": "slide-scroll-container",
4562
- children: /* @__PURE__ */ (0, G.jsx)("div", {
4617
+ children: /* @__PURE__ */ (0, K.jsx)("div", {
4563
4618
  ref: o,
4564
4619
  className: "flex w-full min-h-full",
4565
4620
  children: n
4566
4621
  })
4567
4622
  }), t[2] = n, t[3] = l);
4568
4623
  let u;
4569
- t[4] === s ? u = t[5] : (u = s && /* @__PURE__ */ (0, G.jsx)(or, {}), t[4] = s, t[5] = u);
4624
+ t[4] === s ? u = t[5] : (u = s && /* @__PURE__ */ (0, K.jsx)($n, {}), t[4] = s, t[5] = u);
4570
4625
  let d;
4571
- return t[6] !== c || t[7] !== l || t[8] !== u ? (d = /* @__PURE__ */ (0, G.jsxs)("div", {
4626
+ return t[6] !== c || t[7] !== l || t[8] !== u ? (d = /* @__PURE__ */ (0, K.jsxs)("div", {
4572
4627
  className: c,
4573
4628
  children: [l, u]
4574
4629
  }), t[6] = c, t[7] = l, t[8] = u, t[9] = d) : d = t[9], d;
4575
4630
  };
4576
4631
  //#endregion
4577
4632
  //#region src/components/slides/compose-slides.ts
4578
- function cr({ cells: e, getType: t }) {
4633
+ function tr({ cells: e, getType: t }) {
4579
4634
  let n = [], r = null, i = null, a = () => {
4580
4635
  let e = { subslides: [] };
4581
4636
  return n.push(e), r = e, i = null, e;
@@ -4601,7 +4656,7 @@ function cr({ cells: e, getType: t }) {
4601
4656
  }
4602
4657
  return { stacks: n };
4603
4658
  }
4604
- function lr({ composition: e, cells: t, getId: n }) {
4659
+ function nr({ composition: e, cells: t, getId: n }) {
4605
4660
  let r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Map();
4606
4661
  for (let [e, r] of t.entries()) a.set(n(r), e);
4607
4662
  return e.stacks.forEach((e, t) => {
@@ -4644,27 +4699,27 @@ function lr({ composition: e, cells: t, getId: n }) {
4644
4699
  targetToCellIndex: i
4645
4700
  };
4646
4701
  }
4647
- function ur(e, t) {
4702
+ function rr(e, t) {
4648
4703
  let { h: n, v: r, f: i } = t;
4649
4704
  return e.get(`${n},${r},${i}`) ?? e.get(`${n},${r},-1`);
4650
4705
  }
4651
- function dr({ start: e, stop: t, step: n, cells: r, cellToTarget: i, getId: a }) {
4706
+ function ir({ start: e, stop: t, step: n, cells: r, cellToTarget: i, getId: a }) {
4652
4707
  for (let o = e; o !== t; o += n) {
4653
4708
  let e = i.get(a(r[o]));
4654
4709
  if (e) return e;
4655
4710
  }
4656
4711
  }
4657
- function fr({ activeIndex: e, cells: t, cellToTarget: n, getId: r }) {
4712
+ function ar({ activeIndex: e, cells: t, cellToTarget: n, getId: r }) {
4658
4713
  if (e == null) return;
4659
4714
  let i = t[e];
4660
- return i ? n.get(r(i)) || (dr({
4715
+ return i ? n.get(r(i)) || (ir({
4661
4716
  start: e - 1,
4662
4717
  stop: -1,
4663
4718
  step: -1,
4664
4719
  cells: t,
4665
4720
  cellToTarget: n,
4666
4721
  getId: r
4667
- }) ?? dr({
4722
+ }) ?? ir({
4668
4723
  start: e + 1,
4669
4724
  stop: t.length,
4670
4725
  step: 1,
@@ -4673,7 +4728,7 @@ function fr({ activeIndex: e, cells: t, cellToTarget: n, getId: r }) {
4673
4728
  getId: r
4674
4729
  })) : void 0;
4675
4730
  }
4676
- function pr(e, t) {
4731
+ function or(e, t) {
4677
4732
  let n = {
4678
4733
  h: t.h,
4679
4734
  v: t.v,
@@ -4683,7 +4738,7 @@ function pr(e, t) {
4683
4738
  }
4684
4739
  //#endregion
4685
4740
  //#region src/core/islands/stubs/slide-cell-view.tsx
4686
- var mr = (e) => (n.warn("SlideCellView islands stub rendered; this should never happen in a read-only embed."), null), hr = (e) => (n.warn("SlideCellReadOnlyView islands stub rendered; this should never happen in a read-only embed."), null), gr = 300, _r = (e) => {
4741
+ var sr = (e) => (n.warn("SlideCellView islands stub rendered; this should never happen in a read-only embed."), null), cr = (e) => (n.warn("SlideCellReadOnlyView islands stub rendered; this should never happen in a read-only embed."), null), lr = 300, ur = (e) => {
4687
4742
  let t = (0, F.c)(25), { layout: n, setLayout: a, cellId: o, className: s } = e, c = o ? n.cells.get(o)?.speakerNotes ?? "" : "", [l, u] = (0, P.useState)(c), d = (0, P.useRef)(!1), f;
4688
4743
  t[0] !== n || t[1] !== a ? (f = (e, t) => {
4689
4744
  d.current = !1;
@@ -4698,7 +4753,7 @@ var mr = (e) => (n.warn("SlideCellView islands stub rendered; this should never
4698
4753
  cells: i
4699
4754
  });
4700
4755
  }, t[0] = n, t[1] = a, t[2] = f) : f = t[2];
4701
- let p = M(f), m = D(p, gr), h = (0, P.useRef)(o), g, _;
4756
+ let p = j(f), m = D(p, lr), h = (0, P.useRef)(o), g, _;
4702
4757
  t[3] !== o || t[4] !== l || t[5] !== c || t[6] !== m ? (g = () => {
4703
4758
  if (h.current !== o) {
4704
4759
  m.flush(), d.current = !1, u(c), h.current = o;
@@ -4722,50 +4777,50 @@ var mr = (e) => (n.warn("SlideCellView islands stub rendered; this should never
4722
4777
  let x = b, S;
4723
4778
  t[15] === s ? S = t[16] : (S = r("h-full min-h-0 flex flex-col bg-muted/40 dark:bg-muted/20 border-t", s), t[15] = s, t[16] = S);
4724
4779
  let C;
4725
- t[17] === Symbol.for("react.memo_cache_sentinel") ? (C = /* @__PURE__ */ (0, G.jsxs)("header", {
4780
+ t[17] === Symbol.for("react.memo_cache_sentinel") ? (C = /* @__PURE__ */ (0, K.jsxs)("header", {
4726
4781
  className: "flex items-center gap-1.5 px-3 h-8 shrink-0 text-xs font-medium uppercase tracking-wide text-muted-foreground",
4727
- children: [/* @__PURE__ */ (0, G.jsx)(N, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, G.jsx)("span", { children: "Speaker notes" })]
4782
+ children: [/* @__PURE__ */ (0, K.jsx)(N, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, K.jsx)("span", { children: "Speaker notes" })]
4728
4783
  }), t[17] = C) : C = t[17];
4729
4784
  let w;
4730
- t[18] !== o || t[19] !== l || t[20] !== x ? (w = /* @__PURE__ */ (0, G.jsx)("div", {
4785
+ t[18] !== o || t[19] !== l || t[20] !== x ? (w = /* @__PURE__ */ (0, K.jsx)("div", {
4731
4786
  className: "flex-1 min-h-0 p-2",
4732
- children: o ? /* @__PURE__ */ (0, G.jsx)("textarea", {
4787
+ children: o ? /* @__PURE__ */ (0, K.jsx)("textarea", {
4733
4788
  value: l,
4734
4789
  onChange: (e) => x(e.target.value),
4735
4790
  onClick: i.stopPropagation(),
4736
4791
  placeholder: "Add notes for this slide. Visible to you in speaker view (press S during presentation).",
4737
4792
  className: r("h-full w-full resize-none rounded-sm border border-input/25 bg-background", "px-3 py-2 text-sm leading-relaxed text-foreground placeholder:text-muted-foreground", "ring-offset-background focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:border-accent"),
4738
4793
  "aria-label": "Speaker notes for the current slide"
4739
- }) : /* @__PURE__ */ (0, G.jsx)("div", {
4794
+ }) : /* @__PURE__ */ (0, K.jsx)("div", {
4740
4795
  className: "h-full flex items-center justify-center text-xs text-muted-foreground",
4741
4796
  children: "Select a slide to add notes."
4742
4797
  })
4743
4798
  }), t[18] = o, t[19] = l, t[20] = x, t[21] = w) : w = t[21];
4744
4799
  let T;
4745
- return t[22] !== S || t[23] !== w ? (T = /* @__PURE__ */ (0, G.jsxs)("section", {
4800
+ return t[22] !== S || t[23] !== w ? (T = /* @__PURE__ */ (0, K.jsxs)("section", {
4746
4801
  className: S,
4747
4802
  "aria-label": "Speaker notes",
4748
- onKeyDown: vr,
4803
+ onKeyDown: dr,
4749
4804
  children: [C, w]
4750
4805
  }), t[22] = S, t[23] = w, t[24] = T) : T = t[24], T;
4751
4806
  };
4752
- function vr(e) {
4807
+ function dr(e) {
4753
4808
  return e.stopPropagation();
4754
4809
  }
4755
- var yr = "\n\n---\n\n", br = (e, t) => e.map((e) => t.get(e.id)?.speakerNotes ?? "").filter((e) => e.trim().length > 0).join("\n\n"), xr = (e, t) => {
4756
- let n = e.blocks.map((e) => br(e.cells, t)), r = e.blocks.map((e, t) => e.isFragment ? "" : n[t]).filter((e) => e.length > 0).join("\n\n"), i = /* @__PURE__ */ new Map(), a = [];
4810
+ var fr = "\n\n---\n\n", pr = (e, t) => e.map((e) => t.get(e.id)?.speakerNotes ?? "").filter((e) => e.trim().length > 0).join("\n\n"), mr = (e, t) => {
4811
+ let n = e.blocks.map((e) => pr(e.cells, t)), r = e.blocks.map((e, t) => e.isFragment ? "" : n[t]).filter((e) => e.length > 0).join("\n\n"), i = /* @__PURE__ */ new Map(), a = [];
4757
4812
  return e.blocks.forEach((e, t) => {
4758
4813
  if (!e.isFragment) return;
4759
4814
  let o = n[t];
4760
4815
  o.length > 0 && a.push(o);
4761
- let s = [r, ...a].filter((e) => e.length > 0).join(yr);
4816
+ let s = [r, ...a].filter((e) => e.length > 0).join(fr);
4762
4817
  s.length > 0 && i.set(t, s);
4763
4818
  }), {
4764
4819
  slideLevel: r,
4765
4820
  cumulativeByBlock: i
4766
4821
  };
4767
- }, Sr = "<!--\n NOTE: You need to build the notes plugin after making changes to this file.\n-->\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\">\n\n <title>reveal.js - Speaker View</title>\n\n <style>\n body {\n font-family: Helvetica;\n font-size: 18px;\n }\n\n #current-slide,\n #upcoming-slide,\n #speaker-controls {\n padding: 6px;\n box-sizing: border-box;\n -moz-box-sizing: border-box;\n }\n\n #current-slide iframe,\n #upcoming-slide iframe {\n width: 100%;\n height: 100%;\n border: 1px solid #ddd;\n }\n\n #current-slide .label,\n #upcoming-slide .label {\n position: absolute;\n top: 10px;\n left: 10px;\n z-index: 2;\n }\n\n #connection-status {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 20;\n padding: 30% 20% 20% 20%;\n font-size: 18px;\n color: #222;\n background: #fff;\n text-align: center;\n box-sizing: border-box;\n line-height: 1.4;\n }\n\n .overlay-element {\n height: 34px;\n line-height: 34px;\n padding: 0 10px;\n text-shadow: none;\n background: rgba( 220, 220, 220, 0.8 );\n color: #222;\n font-size: 14px;\n }\n\n .overlay-element.interactive:hover {\n background: rgba( 220, 220, 220, 1 );\n }\n\n #current-slide {\n position: absolute;\n width: 60%;\n height: 100%;\n top: 0;\n left: 0;\n padding-right: 0;\n }\n\n #upcoming-slide {\n position: absolute;\n width: 40%;\n height: 40%;\n right: 0;\n top: 0;\n }\n\n /* Speaker controls */\n #speaker-controls {\n position: absolute;\n top: 40%;\n right: 0;\n width: 40%;\n height: 60%;\n overflow: auto;\n font-size: 18px;\n }\n\n .speaker-controls-time.hidden,\n .speaker-controls-notes.hidden {\n display: none;\n }\n\n .speaker-controls-time .label,\n .speaker-controls-pace .label,\n .speaker-controls-notes .label {\n text-transform: uppercase;\n font-weight: normal;\n font-size: 0.66em;\n color: #666;\n margin: 0;\n }\n\n .speaker-controls-time, .speaker-controls-pace {\n border-bottom: 1px solid rgba( 200, 200, 200, 0.5 );\n margin-bottom: 10px;\n padding: 10px 16px;\n padding-bottom: 20px;\n cursor: pointer;\n }\n\n .speaker-controls-time .reset-button {\n opacity: 0;\n float: right;\n color: #666;\n text-decoration: none;\n }\n .speaker-controls-time:hover .reset-button {\n opacity: 1;\n }\n\n .speaker-controls-time .timer,\n .speaker-controls-time .clock {\n width: 50%;\n }\n\n .speaker-controls-time .timer,\n .speaker-controls-time .clock,\n .speaker-controls-time .pacing .hours-value,\n .speaker-controls-time .pacing .minutes-value,\n .speaker-controls-time .pacing .seconds-value {\n font-size: 1.9em;\n }\n\n .speaker-controls-time .timer {\n float: left;\n }\n\n .speaker-controls-time .clock {\n float: right;\n text-align: right;\n }\n\n .speaker-controls-time span.mute {\n opacity: 0.3;\n }\n\n .speaker-controls-time .pacing-title {\n margin-top: 5px;\n }\n\n .speaker-controls-time .pacing.ahead {\n color: blue;\n }\n\n .speaker-controls-time .pacing.on-track {\n color: green;\n }\n\n .speaker-controls-time .pacing.behind {\n color: red;\n }\n\n .speaker-controls-notes {\n padding: 10px 16px;\n }\n\n .speaker-controls-notes .value {\n margin-top: 5px;\n line-height: 1.4;\n font-size: 1.2em;\n }\n\n /* Layout selector\xA0*/\n #speaker-layout {\n position: absolute;\n top: 10px;\n right: 10px;\n color: #222;\n z-index: 10;\n }\n #speaker-layout select {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 0;\n box-shadow: 0;\n cursor: pointer;\n opacity: 0;\n\n font-size: 1em;\n background-color: transparent;\n\n -moz-appearance: none;\n -webkit-appearance: none;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n }\n\n #speaker-layout select:focus {\n outline: none;\n box-shadow: none;\n }\n\n .clear {\n clear: both;\n }\n\n /* Speaker layout: Wide */\n body[data-speaker-layout=\"wide\"] #current-slide,\n body[data-speaker-layout=\"wide\"] #upcoming-slide {\n width: 50%;\n height: 45%;\n padding: 6px;\n }\n\n body[data-speaker-layout=\"wide\"] #current-slide {\n top: 0;\n left: 0;\n }\n\n body[data-speaker-layout=\"wide\"] #upcoming-slide {\n top: 0;\n left: 50%;\n }\n\n body[data-speaker-layout=\"wide\"] #speaker-controls {\n top: 45%;\n left: 0;\n width: 100%;\n height: 50%;\n font-size: 1.25em;\n }\n\n /* Speaker layout: Tall */\n body[data-speaker-layout=\"tall\"] #current-slide,\n body[data-speaker-layout=\"tall\"] #upcoming-slide {\n width: 45%;\n height: 50%;\n padding: 6px;\n }\n\n body[data-speaker-layout=\"tall\"] #current-slide {\n top: 0;\n left: 0;\n }\n\n body[data-speaker-layout=\"tall\"] #upcoming-slide {\n top: 50%;\n left: 0;\n }\n\n body[data-speaker-layout=\"tall\"] #speaker-controls {\n padding-top: 40px;\n top: 0;\n left: 45%;\n width: 55%;\n height: 100%;\n font-size: 1.25em;\n }\n\n /* Speaker layout: Notes only */\n body[data-speaker-layout=\"notes-only\"] #current-slide,\n body[data-speaker-layout=\"notes-only\"] #upcoming-slide {\n display: none;\n }\n\n body[data-speaker-layout=\"notes-only\"] #speaker-controls {\n padding-top: 40px;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n font-size: 1.25em;\n }\n\n @media screen and (max-width: 1080px) {\n body[data-speaker-layout=\"default\"] #speaker-controls {\n font-size: 16px;\n }\n }\n\n @media screen and (max-width: 900px) {\n body[data-speaker-layout=\"default\"] #speaker-controls {\n font-size: 14px;\n }\n }\n\n @media screen and (max-width: 800px) {\n body[data-speaker-layout=\"default\"] #speaker-controls {\n font-size: 12px;\n }\n }\n\n </style>\n </head>\n\n <body>\n\n <div id=\"connection-status\">Loading speaker view...</div>\n\n <div id=\"current-slide\"></div>\n <div id=\"upcoming-slide\"><span class=\"overlay-element label\">Upcoming</span></div>\n <div id=\"speaker-controls\">\n <div class=\"speaker-controls-time\">\n <h4 class=\"label\">Time <span class=\"reset-button\">Click to Reset</span></h4>\n <div class=\"clock\">\n <span class=\"clock-value\">0:00 AM</span>\n </div>\n <div class=\"timer\">\n <span class=\"hours-value\">00</span><span class=\"minutes-value\">:00</span><span class=\"seconds-value\">:00</span>\n </div>\n <div class=\"clear\"></div>\n\n <h4 class=\"label pacing-title\" style=\"display: none\">Pacing – Time to finish current slide</h4>\n <div class=\"pacing\" style=\"display: none\">\n <span class=\"hours-value\">00</span><span class=\"minutes-value\">:00</span><span class=\"seconds-value\">:00</span>\n </div>\n </div>\n\n <div class=\"speaker-controls-notes hidden\">\n <h4 class=\"label\">Notes</h4>\n <div class=\"value\"></div>\n </div>\n </div>\n <div id=\"speaker-layout\" class=\"overlay-element interactive\">\n <span class=\"speaker-layout-label\"></span>\n <select class=\"speaker-layout-dropdown\"></select>\n </div>\n\n <script>\n\n (function() {\n\n var notes,\n notesValue,\n currentState,\n currentSlide,\n upcomingSlide,\n layoutLabel,\n layoutDropdown,\n pendingCalls = {},\n lastRevealApiCallId = 0,\n connected = false\n\n var connectionStatus = document.querySelector( '#connection-status' );\n\n var SPEAKER_LAYOUTS = {\n 'default': 'Default',\n 'wide': 'Wide',\n 'tall': 'Tall',\n 'notes-only': 'Notes only'\n };\n\n setupLayout();\n\n let openerOrigin;\n\n try {\n openerOrigin = window.opener.location.origin;\n }\n catch ( error ) { console.warn( error ) }\n\n // In order to prevent XSS, the speaker view will only run if its\n // opener has the same origin as itself\n if( window.location.origin !== openerOrigin ) {\n connectionStatus.innerHTML = 'Cross origin error.<br>The speaker window can only be opened from the same origin.';\n return;\n }\n\n var connectionTimeout = setTimeout( function() {\n connectionStatus.innerHTML = 'Error connecting to main window.<br>Please try closing and reopening the speaker view.';\n }, 5000 );\n\n window.addEventListener( 'message', function( event ) {\n\n // Validate the origin of all messages to avoid parsing messages\n // that aren't meant for us. Ignore when running off file:// so\n // that the speaker view continues to work without a web server.\n if( window.location.origin !== event.origin && window.location.origin !== 'file://' ) {\n return\n }\n\n clearTimeout( connectionTimeout );\n connectionStatus.style.display = 'none';\n\n var data = JSON.parse( event.data );\n\n // The overview mode is only useful to the reveal.js instance\n // where navigation occurs so we don't sync it\n if( data.state ) delete data.state.overview;\n\n // Messages sent by the notes plugin inside of the main window\n if( data && data.namespace === 'reveal-notes' ) {\n if( data.type === 'connect' ) {\n handleConnectMessage( data );\n }\n else if( data.type === 'state' ) {\n handleStateMessage( data );\n }\n else if( data.type === 'return' ) {\n pendingCalls[data.callId](data.result);\n delete pendingCalls[data.callId];\n }\n }\n // Messages sent by the reveal.js inside of the current slide preview\n else if( data && data.namespace === 'reveal' ) {\n const supportedEvents = [\n 'slidechanged',\n 'fragmentshown',\n 'fragmenthidden',\n 'paused',\n 'resumed',\n 'previewiframe',\n 'previewimage',\n 'previewvideo',\n 'closeoverlay'\n ];\n\n if( /ready/.test( data.eventName ) ) {\n // Send a message back to notify that the handshake is complete\n window.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'connected'} ), '*' );\n }\n else if( supportedEvents.includes( data.eventName ) && currentState !== JSON.stringify( data.state ) ) {\n dispatchStateToMainWindow( data.state );\n }\n }\n\n } );\n\n /**\n * Updates the presentation in the main window to match the state\n * of the presentation in the notes window.\n */\n const dispatchStateToMainWindow = debounce(( state ) => {\n window.opener.postMessage( JSON.stringify({ method: 'setState', args: [ state ]} ), '*' );\n }, 500);\n\n /**\n * Asynchronously calls the Reveal.js API of the main frame.\n */\n function callRevealApi( methodName, methodArguments, callback ) {\n\n var callId = ++lastRevealApiCallId;\n pendingCalls[callId] = callback;\n window.opener.postMessage( JSON.stringify( {\n namespace: 'reveal-notes',\n type: 'call',\n callId: callId,\n methodName: methodName,\n arguments: methodArguments\n } ), '*' );\n\n }\n\n /**\n * Called when the main window is trying to establish a\n * connection.\n */\n function handleConnectMessage( data ) {\n\n if( connected === false ) {\n connected = true;\n\n setupIframes( data );\n setupKeyboard();\n setupNotes();\n setupTimer();\n setupHeartbeat();\n }\n\n }\n\n /**\n * Called when the main window sends an updated state.\n */\n function handleStateMessage( data ) {\n\n // Store the most recently set state to avoid circular loops\n // applying the same state\n currentState = JSON.stringify( data.state );\n\n // No need for updating the notes in case of fragment changes\n if ( data.notes ) {\n notes.classList.remove( 'hidden' );\n notesValue.style.whiteSpace = data.whitespace;\n if( data.markdown ) {\n notesValue.innerHTML = marked.parse( data.notes );\n }\n else {\n notesValue.innerHTML = data.notes;\n }\n }\n else {\n notes.classList.add( 'hidden' );\n }\n\n // Don't show lightboxes in the upcoming slide\n const { previewVideo, previewImage, previewIframe, ...upcomingState } = data.state;\n\n // Update the note slides\n currentSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' );\n upcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ upcomingState ] }), '*' );\n upcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'next' }), '*' );\n\n }\n\n // Limit to max one state update per X ms\n handleStateMessage = debounce( handleStateMessage, 200 );\n\n /**\n * Forward keyboard events to the current slide window.\n * This enables keyboard events to work even if focus\n * isn't set on the current slide iframe.\n *\n * Block F5 default handling, it reloads and disconnects\n * the speaker notes window.\n */\n function setupKeyboard() {\n\n document.addEventListener( 'keydown', function( event ) {\n if( event.keyCode === 116 || ( event.metaKey && event.keyCode === 82 ) ) {\n event.preventDefault();\n return false;\n }\n currentSlide.contentWindow.postMessage( JSON.stringify({ method: 'triggerKey', args: [ event.keyCode ] }), '*' );\n } );\n\n }\n\n /**\n * Creates the preview iframes.\n */\n function setupIframes( data ) {\n\n var params = [\n 'receiver',\n 'progress=false',\n 'history=false',\n 'transition=none',\n 'autoSlide=0',\n 'backgroundTransition=none'\n ].join( '&' );\n\n var urlSeparator = /\\?/.test(data.url) ? '&' : '?';\n var hash = '#/' + data.state.indexh + '/' + data.state.indexv;\n var currentURL = data.url + urlSeparator + params + '&scrollActivationWidth=false&postMessageEvents=true' + hash;\n var upcomingURL = data.url + urlSeparator + params + '&scrollActivationWidth=false&controls=false' + hash;\n\n currentSlide = document.createElement( 'iframe' );\n currentSlide.setAttribute( 'width', 1280 );\n currentSlide.setAttribute( 'height', 1024 );\n currentSlide.setAttribute( 'src', currentURL );\n document.querySelector( '#current-slide' ).appendChild( currentSlide );\n\n upcomingSlide = document.createElement( 'iframe' );\n upcomingSlide.setAttribute( 'width', 640 );\n upcomingSlide.setAttribute( 'height', 512 );\n upcomingSlide.setAttribute( 'src', upcomingURL );\n document.querySelector( '#upcoming-slide' ).appendChild( upcomingSlide );\n\n }\n\n /**\n * Setup the notes UI.\n */\n function setupNotes() {\n\n notes = document.querySelector( '.speaker-controls-notes' );\n notesValue = document.querySelector( '.speaker-controls-notes .value' );\n\n }\n\n /**\n * We send out a heartbeat at all times to ensure we can\n * reconnect with the main presentation window after reloads.\n */\n function setupHeartbeat() {\n\n setInterval( () => {\n window.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'heartbeat'} ), '*' );\n }, 1000 );\n\n }\n\n function getTimings( callback ) {\n\n callRevealApi( 'getSlidesAttributes', [], function ( slideAttributes ) {\n callRevealApi( 'getConfig', [], function ( config ) {\n var totalTime = config.totalTime;\n var minTimePerSlide = config.minimumTimePerSlide || 0;\n var defaultTiming = config.defaultTiming;\n if ((defaultTiming == null) && (totalTime == null)) {\n callback(null);\n return;\n }\n // Setting totalTime overrides defaultTiming\n if (totalTime) {\n defaultTiming = 0;\n }\n var timings = [];\n for ( var i in slideAttributes ) {\n var slide = slideAttributes[ i ];\n var timing = defaultTiming;\n if( slide.hasOwnProperty( 'data-timing' )) {\n var t = slide[ 'data-timing' ];\n timing = parseInt(t);\n if( isNaN(timing) ) {\n console.warn(\"Could not parse timing '\" + t + \"' of slide \" + i + \"; using default of \" + defaultTiming);\n timing = defaultTiming;\n }\n }\n timings.push(timing);\n }\n if ( totalTime ) {\n // After we've allocated time to individual slides, we summarize it and\n // subtract it from the total time\n var remainingTime = totalTime - timings.reduce( function(a, b) { return a + b; }, 0 );\n // The remaining time is divided by the number of slides that have 0 seconds\n // allocated at the moment, giving the average time-per-slide on the remaining slides\n var remainingSlides = (timings.filter( function(x) { return x == 0 }) ).length\n var timePerSlide = Math.round( remainingTime / remainingSlides, 0 )\n // And now we replace every zero-value timing with that average\n timings = timings.map( function(x) { return (x==0 ? timePerSlide : x) } );\n }\n var slidesUnderMinimum = timings.filter( function(x) { return (x < minTimePerSlide) } ).length\n if ( slidesUnderMinimum ) {\n message = \"The pacing time for \" + slidesUnderMinimum + \" slide(s) is under the configured minimum of \" + minTimePerSlide + \" seconds. Check the data-timing attribute on individual slides, or consider increasing the totalTime or minimumTimePerSlide configuration options (or removing some slides).\";\n alert(message);\n }\n callback( timings );\n } );\n } );\n\n }\n\n /**\n * Return the number of seconds allocated for presenting\n * all slides up to and including this one.\n */\n function getTimeAllocated( timings, callback ) {\n\n callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n var allocated = 0;\n for (var i in timings.slice(0, currentSlide + 1)) {\n allocated += timings[i];\n }\n callback( allocated );\n } );\n\n }\n\n /**\n * Create the timer and clock and start updating them\n * at an interval.\n */\n function setupTimer() {\n\n var start = new Date(),\n timeEl = document.querySelector( '.speaker-controls-time' ),\n clockEl = timeEl.querySelector( '.clock-value' ),\n hoursEl = timeEl.querySelector( '.hours-value' ),\n minutesEl = timeEl.querySelector( '.minutes-value' ),\n secondsEl = timeEl.querySelector( '.seconds-value' ),\n pacingTitleEl = timeEl.querySelector( '.pacing-title' ),\n pacingEl = timeEl.querySelector( '.pacing' ),\n pacingHoursEl = pacingEl.querySelector( '.hours-value' ),\n pacingMinutesEl = pacingEl.querySelector( '.minutes-value' ),\n pacingSecondsEl = pacingEl.querySelector( '.seconds-value' );\n\n var timings = null;\n getTimings( function ( _timings ) {\n\n timings = _timings;\n if (_timings !== null) {\n pacingTitleEl.style.removeProperty('display');\n pacingEl.style.removeProperty('display');\n }\n\n // Update once directly\n _updateTimer();\n\n // Then update every second\n setInterval( _updateTimer, 1000 );\n\n } );\n\n\n function _resetTimer() {\n\n if (timings == null) {\n start = new Date();\n _updateTimer();\n }\n else {\n // Reset timer to beginning of current slide\n getTimeAllocated( timings, function ( slideEndTimingSeconds ) {\n var slideEndTiming = slideEndTimingSeconds * 1000;\n callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n var currentSlideTiming = timings[currentSlide] * 1000;\n var previousSlidesTiming = slideEndTiming - currentSlideTiming;\n var now = new Date();\n start = new Date(now.getTime() - previousSlidesTiming);\n _updateTimer();\n } );\n } );\n }\n\n }\n\n timeEl.addEventListener( 'click', function() {\n _resetTimer();\n return false;\n } );\n\n function _displayTime( hrEl, minEl, secEl, time) {\n\n var sign = Math.sign(time) == -1 ? \"-\" : \"\";\n time = Math.abs(Math.round(time / 1000));\n var seconds = time % 60;\n var minutes = Math.floor( time / 60 ) % 60 ;\n var hours = Math.floor( time / ( 60 * 60 )) ;\n hrEl.innerHTML = sign + zeroPadInteger( hours );\n if (hours == 0) {\n hrEl.classList.add( 'mute' );\n }\n else {\n hrEl.classList.remove( 'mute' );\n }\n minEl.innerHTML = ':' + zeroPadInteger( minutes );\n if (hours == 0 && minutes == 0) {\n minEl.classList.add( 'mute' );\n }\n else {\n minEl.classList.remove( 'mute' );\n }\n secEl.innerHTML = ':' + zeroPadInteger( seconds );\n }\n\n function _updateTimer() {\n\n var diff, hours, minutes, seconds,\n now = new Date();\n\n diff = now.getTime() - start.getTime();\n\n clockEl.innerHTML = now.toLocaleTimeString( 'en-US', { hour12: true, hour: '2-digit', minute:'2-digit' } );\n _displayTime( hoursEl, minutesEl, secondsEl, diff );\n if (timings !== null) {\n _updatePacing(diff);\n }\n\n }\n\n function _updatePacing(diff) {\n\n getTimeAllocated( timings, function ( slideEndTimingSeconds ) {\n var slideEndTiming = slideEndTimingSeconds * 1000;\n\n callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n var currentSlideTiming = timings[currentSlide] * 1000;\n var timeLeftCurrentSlide = slideEndTiming - diff;\n if (timeLeftCurrentSlide < 0) {\n pacingEl.className = 'pacing behind';\n }\n else if (timeLeftCurrentSlide < currentSlideTiming) {\n pacingEl.className = 'pacing on-track';\n }\n else {\n pacingEl.className = 'pacing ahead';\n }\n _displayTime( pacingHoursEl, pacingMinutesEl, pacingSecondsEl, timeLeftCurrentSlide );\n } );\n } );\n }\n\n }\n\n /**\n * Sets up the speaker view layout and layout selector.\n */\n function setupLayout() {\n\n layoutDropdown = document.querySelector( '.speaker-layout-dropdown' );\n layoutLabel = document.querySelector( '.speaker-layout-label' );\n\n // Render the list of available layouts\n for( var id in SPEAKER_LAYOUTS ) {\n var option = document.createElement( 'option' );\n option.setAttribute( 'value', id );\n option.textContent = SPEAKER_LAYOUTS[ id ];\n layoutDropdown.appendChild( option );\n }\n\n // Monitor the dropdown for changes\n layoutDropdown.addEventListener( 'change', function( event ) {\n\n setLayout( layoutDropdown.value );\n\n }, false );\n\n // Restore any currently persisted layout\n setLayout( getLayout() );\n\n }\n\n /**\n * Sets a new speaker view layout. The layout is persisted\n * in local storage.\n */\n function setLayout( value ) {\n\n var title = SPEAKER_LAYOUTS[ value ];\n\n layoutLabel.innerHTML = 'Layout' + ( title ? ( ': ' + title ) : '' );\n layoutDropdown.value = value;\n\n document.body.setAttribute( 'data-speaker-layout', value );\n\n // Persist locally\n if( supportsLocalStorage() ) {\n window.localStorage.setItem( 'reveal-speaker-layout', value );\n }\n\n }\n\n /**\n * Returns the ID of the most recently set speaker layout\n * or our default layout if none has been set.\n */\n function getLayout() {\n\n if( supportsLocalStorage() ) {\n var layout = window.localStorage.getItem( 'reveal-speaker-layout' );\n if( layout ) {\n return layout;\n }\n }\n\n // Default to the first record in the layouts hash\n for( var id in SPEAKER_LAYOUTS ) {\n return id;\n }\n\n }\n\n function supportsLocalStorage() {\n\n try {\n localStorage.setItem('test', 'test');\n localStorage.removeItem('test');\n return true;\n }\n catch( e ) {\n return false;\n }\n\n }\n\n function zeroPadInteger( num ) {\n\n var str = '00' + parseInt( num );\n return str.substring( str.length - 2 );\n\n }\n\n /**\n * Limits the frequency at which a function can be called.\n */\n function debounce( fn, ms ) {\n\n var lastTime = 0,\n timeout;\n\n return function() {\n\n var args = arguments;\n var context = this;\n\n clearTimeout( timeout );\n\n var timeSinceLastCall = Date.now() - lastTime;\n if( timeSinceLastCall > ms ) {\n fn.apply( context, args );\n lastTime = Date.now();\n }\n else {\n timeout = setTimeout( function() {\n fn.apply( context, args );\n lastTime = Date.now();\n }, ms - timeSinceLastCall );\n }\n\n }\n\n }\n\n })();\n\n <\/script>\n </body>\n</html>";
4768
- function Cr() {
4822
+ }, hr = "<!--\n NOTE: You need to build the notes plugin after making changes to this file.\n-->\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\">\n\n <title>reveal.js - Speaker View</title>\n\n <style>\n body {\n font-family: Helvetica;\n font-size: 18px;\n }\n\n #current-slide,\n #upcoming-slide,\n #speaker-controls {\n padding: 6px;\n box-sizing: border-box;\n -moz-box-sizing: border-box;\n }\n\n #current-slide iframe,\n #upcoming-slide iframe {\n width: 100%;\n height: 100%;\n border: 1px solid #ddd;\n }\n\n #current-slide .label,\n #upcoming-slide .label {\n position: absolute;\n top: 10px;\n left: 10px;\n z-index: 2;\n }\n\n #connection-status {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 20;\n padding: 30% 20% 20% 20%;\n font-size: 18px;\n color: #222;\n background: #fff;\n text-align: center;\n box-sizing: border-box;\n line-height: 1.4;\n }\n\n .overlay-element {\n height: 34px;\n line-height: 34px;\n padding: 0 10px;\n text-shadow: none;\n background: rgba( 220, 220, 220, 0.8 );\n color: #222;\n font-size: 14px;\n }\n\n .overlay-element.interactive:hover {\n background: rgba( 220, 220, 220, 1 );\n }\n\n #current-slide {\n position: absolute;\n width: 60%;\n height: 100%;\n top: 0;\n left: 0;\n padding-right: 0;\n }\n\n #upcoming-slide {\n position: absolute;\n width: 40%;\n height: 40%;\n right: 0;\n top: 0;\n }\n\n /* Speaker controls */\n #speaker-controls {\n position: absolute;\n top: 40%;\n right: 0;\n width: 40%;\n height: 60%;\n overflow: auto;\n font-size: 18px;\n }\n\n .speaker-controls-time.hidden,\n .speaker-controls-notes.hidden {\n display: none;\n }\n\n .speaker-controls-time .label,\n .speaker-controls-pace .label,\n .speaker-controls-notes .label {\n text-transform: uppercase;\n font-weight: normal;\n font-size: 0.66em;\n color: #666;\n margin: 0;\n }\n\n .speaker-controls-time, .speaker-controls-pace {\n border-bottom: 1px solid rgba( 200, 200, 200, 0.5 );\n margin-bottom: 10px;\n padding: 10px 16px;\n padding-bottom: 20px;\n cursor: pointer;\n }\n\n .speaker-controls-time .reset-button {\n opacity: 0;\n float: right;\n color: #666;\n text-decoration: none;\n }\n .speaker-controls-time:hover .reset-button {\n opacity: 1;\n }\n\n .speaker-controls-time .timer,\n .speaker-controls-time .clock {\n width: 50%;\n }\n\n .speaker-controls-time .timer,\n .speaker-controls-time .clock,\n .speaker-controls-time .pacing .hours-value,\n .speaker-controls-time .pacing .minutes-value,\n .speaker-controls-time .pacing .seconds-value {\n font-size: 1.9em;\n }\n\n .speaker-controls-time .timer {\n float: left;\n }\n\n .speaker-controls-time .clock {\n float: right;\n text-align: right;\n }\n\n .speaker-controls-time span.mute {\n opacity: 0.3;\n }\n\n .speaker-controls-time .pacing-title {\n margin-top: 5px;\n }\n\n .speaker-controls-time .pacing.ahead {\n color: blue;\n }\n\n .speaker-controls-time .pacing.on-track {\n color: green;\n }\n\n .speaker-controls-time .pacing.behind {\n color: red;\n }\n\n .speaker-controls-notes {\n padding: 10px 16px;\n }\n\n .speaker-controls-notes .value {\n margin-top: 5px;\n line-height: 1.4;\n font-size: 1.2em;\n }\n\n /* Layout selector\xA0*/\n #speaker-layout {\n position: absolute;\n top: 10px;\n right: 10px;\n color: #222;\n z-index: 10;\n }\n #speaker-layout select {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n border: 0;\n box-shadow: 0;\n cursor: pointer;\n opacity: 0;\n\n font-size: 1em;\n background-color: transparent;\n\n -moz-appearance: none;\n -webkit-appearance: none;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n }\n\n #speaker-layout select:focus {\n outline: none;\n box-shadow: none;\n }\n\n .clear {\n clear: both;\n }\n\n /* Speaker layout: Wide */\n body[data-speaker-layout=\"wide\"] #current-slide,\n body[data-speaker-layout=\"wide\"] #upcoming-slide {\n width: 50%;\n height: 45%;\n padding: 6px;\n }\n\n body[data-speaker-layout=\"wide\"] #current-slide {\n top: 0;\n left: 0;\n }\n\n body[data-speaker-layout=\"wide\"] #upcoming-slide {\n top: 0;\n left: 50%;\n }\n\n body[data-speaker-layout=\"wide\"] #speaker-controls {\n top: 45%;\n left: 0;\n width: 100%;\n height: 50%;\n font-size: 1.25em;\n }\n\n /* Speaker layout: Tall */\n body[data-speaker-layout=\"tall\"] #current-slide,\n body[data-speaker-layout=\"tall\"] #upcoming-slide {\n width: 45%;\n height: 50%;\n padding: 6px;\n }\n\n body[data-speaker-layout=\"tall\"] #current-slide {\n top: 0;\n left: 0;\n }\n\n body[data-speaker-layout=\"tall\"] #upcoming-slide {\n top: 50%;\n left: 0;\n }\n\n body[data-speaker-layout=\"tall\"] #speaker-controls {\n padding-top: 40px;\n top: 0;\n left: 45%;\n width: 55%;\n height: 100%;\n font-size: 1.25em;\n }\n\n /* Speaker layout: Notes only */\n body[data-speaker-layout=\"notes-only\"] #current-slide,\n body[data-speaker-layout=\"notes-only\"] #upcoming-slide {\n display: none;\n }\n\n body[data-speaker-layout=\"notes-only\"] #speaker-controls {\n padding-top: 40px;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n font-size: 1.25em;\n }\n\n @media screen and (max-width: 1080px) {\n body[data-speaker-layout=\"default\"] #speaker-controls {\n font-size: 16px;\n }\n }\n\n @media screen and (max-width: 900px) {\n body[data-speaker-layout=\"default\"] #speaker-controls {\n font-size: 14px;\n }\n }\n\n @media screen and (max-width: 800px) {\n body[data-speaker-layout=\"default\"] #speaker-controls {\n font-size: 12px;\n }\n }\n\n </style>\n </head>\n\n <body>\n\n <div id=\"connection-status\">Loading speaker view...</div>\n\n <div id=\"current-slide\"></div>\n <div id=\"upcoming-slide\"><span class=\"overlay-element label\">Upcoming</span></div>\n <div id=\"speaker-controls\">\n <div class=\"speaker-controls-time\">\n <h4 class=\"label\">Time <span class=\"reset-button\">Click to Reset</span></h4>\n <div class=\"clock\">\n <span class=\"clock-value\">0:00 AM</span>\n </div>\n <div class=\"timer\">\n <span class=\"hours-value\">00</span><span class=\"minutes-value\">:00</span><span class=\"seconds-value\">:00</span>\n </div>\n <div class=\"clear\"></div>\n\n <h4 class=\"label pacing-title\" style=\"display: none\">Pacing – Time to finish current slide</h4>\n <div class=\"pacing\" style=\"display: none\">\n <span class=\"hours-value\">00</span><span class=\"minutes-value\">:00</span><span class=\"seconds-value\">:00</span>\n </div>\n </div>\n\n <div class=\"speaker-controls-notes hidden\">\n <h4 class=\"label\">Notes</h4>\n <div class=\"value\"></div>\n </div>\n </div>\n <div id=\"speaker-layout\" class=\"overlay-element interactive\">\n <span class=\"speaker-layout-label\"></span>\n <select class=\"speaker-layout-dropdown\"></select>\n </div>\n\n <script>\n\n (function() {\n\n var notes,\n notesValue,\n currentState,\n currentSlide,\n upcomingSlide,\n layoutLabel,\n layoutDropdown,\n pendingCalls = {},\n lastRevealApiCallId = 0,\n connected = false\n\n var connectionStatus = document.querySelector( '#connection-status' );\n\n var SPEAKER_LAYOUTS = {\n 'default': 'Default',\n 'wide': 'Wide',\n 'tall': 'Tall',\n 'notes-only': 'Notes only'\n };\n\n setupLayout();\n\n let openerOrigin;\n\n try {\n openerOrigin = window.opener.location.origin;\n }\n catch ( error ) { console.warn( error ) }\n\n // In order to prevent XSS, the speaker view will only run if its\n // opener has the same origin as itself\n if( window.location.origin !== openerOrigin ) {\n connectionStatus.innerHTML = 'Cross origin error.<br>The speaker window can only be opened from the same origin.';\n return;\n }\n\n var connectionTimeout = setTimeout( function() {\n connectionStatus.innerHTML = 'Error connecting to main window.<br>Please try closing and reopening the speaker view.';\n }, 5000 );\n\n window.addEventListener( 'message', function( event ) {\n\n // Validate the origin of all messages to avoid parsing messages\n // that aren't meant for us. Ignore when running off file:// so\n // that the speaker view continues to work without a web server.\n if( window.location.origin !== event.origin && window.location.origin !== 'file://' ) {\n return\n }\n\n clearTimeout( connectionTimeout );\n connectionStatus.style.display = 'none';\n\n var data = JSON.parse( event.data );\n\n // The overview mode is only useful to the reveal.js instance\n // where navigation occurs so we don't sync it\n if( data.state ) delete data.state.overview;\n\n // Messages sent by the notes plugin inside of the main window\n if( data && data.namespace === 'reveal-notes' ) {\n if( data.type === 'connect' ) {\n handleConnectMessage( data );\n }\n else if( data.type === 'state' ) {\n handleStateMessage( data );\n }\n else if( data.type === 'return' ) {\n pendingCalls[data.callId](data.result);\n delete pendingCalls[data.callId];\n }\n }\n // Messages sent by the reveal.js inside of the current slide preview\n else if( data && data.namespace === 'reveal' ) {\n const supportedEvents = [\n 'slidechanged',\n 'fragmentshown',\n 'fragmenthidden',\n 'paused',\n 'resumed',\n 'previewiframe',\n 'previewimage',\n 'previewvideo',\n 'closeoverlay'\n ];\n\n if( /ready/.test( data.eventName ) ) {\n // Send a message back to notify that the handshake is complete\n window.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'connected'} ), '*' );\n }\n else if( supportedEvents.includes( data.eventName ) && currentState !== JSON.stringify( data.state ) ) {\n dispatchStateToMainWindow( data.state );\n }\n }\n\n } );\n\n /**\n * Updates the presentation in the main window to match the state\n * of the presentation in the notes window.\n */\n const dispatchStateToMainWindow = debounce(( state ) => {\n window.opener.postMessage( JSON.stringify({ method: 'setState', args: [ state ]} ), '*' );\n }, 500);\n\n /**\n * Asynchronously calls the Reveal.js API of the main frame.\n */\n function callRevealApi( methodName, methodArguments, callback ) {\n\n var callId = ++lastRevealApiCallId;\n pendingCalls[callId] = callback;\n window.opener.postMessage( JSON.stringify( {\n namespace: 'reveal-notes',\n type: 'call',\n callId: callId,\n methodName: methodName,\n arguments: methodArguments\n } ), '*' );\n\n }\n\n /**\n * Called when the main window is trying to establish a\n * connection.\n */\n function handleConnectMessage( data ) {\n\n if( connected === false ) {\n connected = true;\n\n setupIframes( data );\n setupKeyboard();\n setupNotes();\n setupTimer();\n setupHeartbeat();\n }\n\n }\n\n /**\n * Called when the main window sends an updated state.\n */\n function handleStateMessage( data ) {\n\n // Store the most recently set state to avoid circular loops\n // applying the same state\n currentState = JSON.stringify( data.state );\n\n // No need for updating the notes in case of fragment changes\n if ( data.notes ) {\n notes.classList.remove( 'hidden' );\n notesValue.style.whiteSpace = data.whitespace;\n if( data.markdown ) {\n notesValue.innerHTML = marked.parse( data.notes );\n }\n else {\n notesValue.innerHTML = data.notes;\n }\n }\n else {\n notes.classList.add( 'hidden' );\n }\n\n // Don't show lightboxes in the upcoming slide\n const { previewVideo, previewImage, previewIframe, ...upcomingState } = data.state;\n\n // Update the note slides\n currentSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' );\n upcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ upcomingState ] }), '*' );\n upcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'next' }), '*' );\n\n }\n\n // Limit to max one state update per X ms\n handleStateMessage = debounce( handleStateMessage, 200 );\n\n /**\n * Forward keyboard events to the current slide window.\n * This enables keyboard events to work even if focus\n * isn't set on the current slide iframe.\n *\n * Block F5 default handling, it reloads and disconnects\n * the speaker notes window.\n */\n function setupKeyboard() {\n\n document.addEventListener( 'keydown', function( event ) {\n if( event.keyCode === 116 || ( event.metaKey && event.keyCode === 82 ) ) {\n event.preventDefault();\n return false;\n }\n currentSlide.contentWindow.postMessage( JSON.stringify({ method: 'triggerKey', args: [ event.keyCode ] }), '*' );\n } );\n\n }\n\n /**\n * Creates the preview iframes.\n */\n function setupIframes( data ) {\n\n var params = [\n 'receiver',\n 'progress=false',\n 'history=false',\n 'transition=none',\n 'autoSlide=0',\n 'backgroundTransition=none'\n ].join( '&' );\n\n var urlSeparator = /\\?/.test(data.url) ? '&' : '?';\n var hash = '#/' + data.state.indexh + '/' + data.state.indexv;\n var currentURL = data.url + urlSeparator + params + '&scrollActivationWidth=false&postMessageEvents=true' + hash;\n var upcomingURL = data.url + urlSeparator + params + '&scrollActivationWidth=false&controls=false' + hash;\n\n currentSlide = document.createElement( 'iframe' );\n currentSlide.setAttribute( 'width', 1280 );\n currentSlide.setAttribute( 'height', 1024 );\n currentSlide.setAttribute( 'src', currentURL );\n document.querySelector( '#current-slide' ).appendChild( currentSlide );\n\n upcomingSlide = document.createElement( 'iframe' );\n upcomingSlide.setAttribute( 'width', 640 );\n upcomingSlide.setAttribute( 'height', 512 );\n upcomingSlide.setAttribute( 'src', upcomingURL );\n document.querySelector( '#upcoming-slide' ).appendChild( upcomingSlide );\n\n }\n\n /**\n * Setup the notes UI.\n */\n function setupNotes() {\n\n notes = document.querySelector( '.speaker-controls-notes' );\n notesValue = document.querySelector( '.speaker-controls-notes .value' );\n\n }\n\n /**\n * We send out a heartbeat at all times to ensure we can\n * reconnect with the main presentation window after reloads.\n */\n function setupHeartbeat() {\n\n setInterval( () => {\n window.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'heartbeat'} ), '*' );\n }, 1000 );\n\n }\n\n function getTimings( callback ) {\n\n callRevealApi( 'getSlidesAttributes', [], function ( slideAttributes ) {\n callRevealApi( 'getConfig', [], function ( config ) {\n var totalTime = config.totalTime;\n var minTimePerSlide = config.minimumTimePerSlide || 0;\n var defaultTiming = config.defaultTiming;\n if ((defaultTiming == null) && (totalTime == null)) {\n callback(null);\n return;\n }\n // Setting totalTime overrides defaultTiming\n if (totalTime) {\n defaultTiming = 0;\n }\n var timings = [];\n for ( var i in slideAttributes ) {\n var slide = slideAttributes[ i ];\n var timing = defaultTiming;\n if( slide.hasOwnProperty( 'data-timing' )) {\n var t = slide[ 'data-timing' ];\n timing = parseInt(t);\n if( isNaN(timing) ) {\n console.warn(\"Could not parse timing '\" + t + \"' of slide \" + i + \"; using default of \" + defaultTiming);\n timing = defaultTiming;\n }\n }\n timings.push(timing);\n }\n if ( totalTime ) {\n // After we've allocated time to individual slides, we summarize it and\n // subtract it from the total time\n var remainingTime = totalTime - timings.reduce( function(a, b) { return a + b; }, 0 );\n // The remaining time is divided by the number of slides that have 0 seconds\n // allocated at the moment, giving the average time-per-slide on the remaining slides\n var remainingSlides = (timings.filter( function(x) { return x == 0 }) ).length\n var timePerSlide = Math.round( remainingTime / remainingSlides, 0 )\n // And now we replace every zero-value timing with that average\n timings = timings.map( function(x) { return (x==0 ? timePerSlide : x) } );\n }\n var slidesUnderMinimum = timings.filter( function(x) { return (x < minTimePerSlide) } ).length\n if ( slidesUnderMinimum ) {\n message = \"The pacing time for \" + slidesUnderMinimum + \" slide(s) is under the configured minimum of \" + minTimePerSlide + \" seconds. Check the data-timing attribute on individual slides, or consider increasing the totalTime or minimumTimePerSlide configuration options (or removing some slides).\";\n alert(message);\n }\n callback( timings );\n } );\n } );\n\n }\n\n /**\n * Return the number of seconds allocated for presenting\n * all slides up to and including this one.\n */\n function getTimeAllocated( timings, callback ) {\n\n callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n var allocated = 0;\n for (var i in timings.slice(0, currentSlide + 1)) {\n allocated += timings[i];\n }\n callback( allocated );\n } );\n\n }\n\n /**\n * Create the timer and clock and start updating them\n * at an interval.\n */\n function setupTimer() {\n\n var start = new Date(),\n timeEl = document.querySelector( '.speaker-controls-time' ),\n clockEl = timeEl.querySelector( '.clock-value' ),\n hoursEl = timeEl.querySelector( '.hours-value' ),\n minutesEl = timeEl.querySelector( '.minutes-value' ),\n secondsEl = timeEl.querySelector( '.seconds-value' ),\n pacingTitleEl = timeEl.querySelector( '.pacing-title' ),\n pacingEl = timeEl.querySelector( '.pacing' ),\n pacingHoursEl = pacingEl.querySelector( '.hours-value' ),\n pacingMinutesEl = pacingEl.querySelector( '.minutes-value' ),\n pacingSecondsEl = pacingEl.querySelector( '.seconds-value' );\n\n var timings = null;\n getTimings( function ( _timings ) {\n\n timings = _timings;\n if (_timings !== null) {\n pacingTitleEl.style.removeProperty('display');\n pacingEl.style.removeProperty('display');\n }\n\n // Update once directly\n _updateTimer();\n\n // Then update every second\n setInterval( _updateTimer, 1000 );\n\n } );\n\n\n function _resetTimer() {\n\n if (timings == null) {\n start = new Date();\n _updateTimer();\n }\n else {\n // Reset timer to beginning of current slide\n getTimeAllocated( timings, function ( slideEndTimingSeconds ) {\n var slideEndTiming = slideEndTimingSeconds * 1000;\n callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n var currentSlideTiming = timings[currentSlide] * 1000;\n var previousSlidesTiming = slideEndTiming - currentSlideTiming;\n var now = new Date();\n start = new Date(now.getTime() - previousSlidesTiming);\n _updateTimer();\n } );\n } );\n }\n\n }\n\n timeEl.addEventListener( 'click', function() {\n _resetTimer();\n return false;\n } );\n\n function _displayTime( hrEl, minEl, secEl, time) {\n\n var sign = Math.sign(time) == -1 ? \"-\" : \"\";\n time = Math.abs(Math.round(time / 1000));\n var seconds = time % 60;\n var minutes = Math.floor( time / 60 ) % 60 ;\n var hours = Math.floor( time / ( 60 * 60 )) ;\n hrEl.innerHTML = sign + zeroPadInteger( hours );\n if (hours == 0) {\n hrEl.classList.add( 'mute' );\n }\n else {\n hrEl.classList.remove( 'mute' );\n }\n minEl.innerHTML = ':' + zeroPadInteger( minutes );\n if (hours == 0 && minutes == 0) {\n minEl.classList.add( 'mute' );\n }\n else {\n minEl.classList.remove( 'mute' );\n }\n secEl.innerHTML = ':' + zeroPadInteger( seconds );\n }\n\n function _updateTimer() {\n\n var diff, hours, minutes, seconds,\n now = new Date();\n\n diff = now.getTime() - start.getTime();\n\n clockEl.innerHTML = now.toLocaleTimeString( 'en-US', { hour12: true, hour: '2-digit', minute:'2-digit' } );\n _displayTime( hoursEl, minutesEl, secondsEl, diff );\n if (timings !== null) {\n _updatePacing(diff);\n }\n\n }\n\n function _updatePacing(diff) {\n\n getTimeAllocated( timings, function ( slideEndTimingSeconds ) {\n var slideEndTiming = slideEndTimingSeconds * 1000;\n\n callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {\n var currentSlideTiming = timings[currentSlide] * 1000;\n var timeLeftCurrentSlide = slideEndTiming - diff;\n if (timeLeftCurrentSlide < 0) {\n pacingEl.className = 'pacing behind';\n }\n else if (timeLeftCurrentSlide < currentSlideTiming) {\n pacingEl.className = 'pacing on-track';\n }\n else {\n pacingEl.className = 'pacing ahead';\n }\n _displayTime( pacingHoursEl, pacingMinutesEl, pacingSecondsEl, timeLeftCurrentSlide );\n } );\n } );\n }\n\n }\n\n /**\n * Sets up the speaker view layout and layout selector.\n */\n function setupLayout() {\n\n layoutDropdown = document.querySelector( '.speaker-layout-dropdown' );\n layoutLabel = document.querySelector( '.speaker-layout-label' );\n\n // Render the list of available layouts\n for( var id in SPEAKER_LAYOUTS ) {\n var option = document.createElement( 'option' );\n option.setAttribute( 'value', id );\n option.textContent = SPEAKER_LAYOUTS[ id ];\n layoutDropdown.appendChild( option );\n }\n\n // Monitor the dropdown for changes\n layoutDropdown.addEventListener( 'change', function( event ) {\n\n setLayout( layoutDropdown.value );\n\n }, false );\n\n // Restore any currently persisted layout\n setLayout( getLayout() );\n\n }\n\n /**\n * Sets a new speaker view layout. The layout is persisted\n * in local storage.\n */\n function setLayout( value ) {\n\n var title = SPEAKER_LAYOUTS[ value ];\n\n layoutLabel.innerHTML = 'Layout' + ( title ? ( ': ' + title ) : '' );\n layoutDropdown.value = value;\n\n document.body.setAttribute( 'data-speaker-layout', value );\n\n // Persist locally\n if( supportsLocalStorage() ) {\n window.localStorage.setItem( 'reveal-speaker-layout', value );\n }\n\n }\n\n /**\n * Returns the ID of the most recently set speaker layout\n * or our default layout if none has been set.\n */\n function getLayout() {\n\n if( supportsLocalStorage() ) {\n var layout = window.localStorage.getItem( 'reveal-speaker-layout' );\n if( layout ) {\n return layout;\n }\n }\n\n // Default to the first record in the layouts hash\n for( var id in SPEAKER_LAYOUTS ) {\n return id;\n }\n\n }\n\n function supportsLocalStorage() {\n\n try {\n localStorage.setItem('test', 'test');\n localStorage.removeItem('test');\n return true;\n }\n catch( e ) {\n return false;\n }\n\n }\n\n function zeroPadInteger( num ) {\n\n var str = '00' + parseInt( num );\n return str.substring( str.length - 2 );\n\n }\n\n /**\n * Limits the frequency at which a function can be called.\n */\n function debounce( fn, ms ) {\n\n var lastTime = 0,\n timeout;\n\n return function() {\n\n var args = arguments;\n var context = this;\n\n clearTimeout( timeout );\n\n var timeSinceLastCall = Date.now() - lastTime;\n if( timeSinceLastCall > ms ) {\n fn.apply( context, args );\n lastTime = Date.now();\n }\n else {\n timeout = setTimeout( function() {\n fn.apply( context, args );\n lastTime = Date.now();\n }, ms - timeSinceLastCall );\n }\n\n }\n\n }\n\n })();\n\n <\/script>\n </body>\n</html>";
4823
+ function gr() {
4769
4824
  return {
4770
4825
  async: !1,
4771
4826
  breaks: !1,
@@ -4779,11 +4834,11 @@ function Cr() {
4779
4834
  walkTokens: null
4780
4835
  };
4781
4836
  }
4782
- var wr = Cr();
4783
- function Tr(e) {
4784
- wr = e;
4837
+ var _r = gr();
4838
+ function vr(e) {
4839
+ _r = e;
4785
4840
  }
4786
- var Er = { exec: () => null };
4841
+ var yr = { exec: () => null };
4787
4842
  function Z(e, t = "") {
4788
4843
  let n = typeof e == "string" ? e : e.source, r = {
4789
4844
  replace: (e, t) => {
@@ -4794,7 +4849,7 @@ function Z(e, t = "") {
4794
4849
  };
4795
4850
  return r;
4796
4851
  }
4797
- var Dr = (() => {
4852
+ var br = (() => {
4798
4853
  try {
4799
4854
  return !0;
4800
4855
  } catch {
@@ -4857,96 +4912,96 @@ var Dr = (() => {
4857
4912
  headingBeginRegex: (e) => RegExp(`^ {0,${Math.min(3, e - 1)}}#`),
4858
4913
  htmlBeginRegex: (e) => RegExp(`^ {0,${Math.min(3, e - 1)}}<(?:[a-z].*>|!--)`, "i"),
4859
4914
  blockquoteBeginRegex: (e) => RegExp(`^ {0,${Math.min(3, e - 1)}}>`)
4860
- }, Or = /^(?:[ \t]*(?:\n|$))+/, kr = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Ar = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, jr = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Mr = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Nr = / {0,3}(?:[*+-]|\d{1,9}[.)])/, Pr = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, Fr = Z(Pr).replace(/bull/g, Nr).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), Ir = Z(Pr).replace(/bull/g, Nr).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), Lr = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, Rr = /^[^\n]+/, zr = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, Br = Z(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", zr).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Vr = Z(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, Nr).getRegex(), Hr = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Ur = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Wr = Z("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Ur).replace("tag", Hr).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Gr = Z(Lr).replace("hr", jr).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Hr).getRegex(), Kr = {
4861
- blockquote: Z(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Gr).getRegex(),
4862
- code: kr,
4863
- def: Br,
4864
- fences: Ar,
4865
- heading: Mr,
4866
- hr: jr,
4867
- html: Wr,
4868
- lheading: Fr,
4869
- list: Vr,
4870
- newline: Or,
4871
- paragraph: Gr,
4872
- table: Er,
4873
- text: Rr
4874
- }, qr = Z("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", jr).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Hr).getRegex(), Jr = {
4875
- ...Kr,
4876
- lheading: Ir,
4877
- table: qr,
4878
- paragraph: Z(Lr).replace("hr", jr).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", qr).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Hr).getRegex()
4879
- }, Yr = {
4880
- ...Kr,
4881
- html: Z("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", Ur).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
4915
+ }, xr = /^(?:[ \t]*(?:\n|$))+/, Sr = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Cr = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, wr = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Tr = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Er = / {0,3}(?:[*+-]|\d{1,9}[.)])/, Dr = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, Or = Z(Dr).replace(/bull/g, Er).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), kr = Z(Dr).replace(/bull/g, Er).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), Ar = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, jr = /^[^\n]+/, Mr = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, Nr = Z(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", Mr).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Pr = Z(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, Er).getRegex(), Fr = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Ir = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Lr = Z("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Ir).replace("tag", Fr).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Rr = Z(Ar).replace("hr", wr).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Fr).getRegex(), zr = {
4916
+ blockquote: Z(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Rr).getRegex(),
4917
+ code: Sr,
4918
+ def: Nr,
4919
+ fences: Cr,
4920
+ heading: Tr,
4921
+ hr: wr,
4922
+ html: Lr,
4923
+ lheading: Or,
4924
+ list: Pr,
4925
+ newline: xr,
4926
+ paragraph: Rr,
4927
+ table: yr,
4928
+ text: jr
4929
+ }, Br = Z("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", wr).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Fr).getRegex(), Vr = {
4930
+ ...zr,
4931
+ lheading: kr,
4932
+ table: Br,
4933
+ paragraph: Z(Ar).replace("hr", wr).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", Br).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Fr).getRegex()
4934
+ }, Hr = {
4935
+ ...zr,
4936
+ html: Z("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", Ir).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
4882
4937
  def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
4883
4938
  heading: /^(#{1,6})(.*)(?:\n+|$)/,
4884
- fences: Er,
4939
+ fences: yr,
4885
4940
  lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
4886
- paragraph: Z(Lr).replace("hr", jr).replace("heading", " *#{1,6} *[^\n]").replace("lheading", Fr).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
4887
- }, Xr = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Zr = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, Qr = /^( {2,}|\\)\n(?!\s*$)/, $r = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, ei = /[\p{P}\p{S}]/u, ti = /[\s\p{P}\p{S}]/u, ni = /[^\s\p{P}\p{S}]/u, ri = Z(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, ti).getRegex(), ii = /(?!~)[\p{P}\p{S}]/u, ai = /(?!~)[\s\p{P}\p{S}]/u, oi = /(?:[^\s\p{P}\p{S}]|~)/u, si = /(?![*_])[\p{P}\p{S}]/u, ci = /(?![*_])[\s\p{P}\p{S}]/u, li = /(?:[^\s\p{P}\p{S}]|[*_])/u, ui = Z(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Dr ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), di = /^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/, fi = Z(di, "u").replace(/punct/g, ei).getRegex(), pi = Z(di, "u").replace(/punct/g, ii).getRegex(), mi = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", hi = Z(mi, "gu").replace(/notPunctSpace/g, ni).replace(/punctSpace/g, ti).replace(/punct/g, ei).getRegex(), gi = Z(mi, "gu").replace(/notPunctSpace/g, oi).replace(/punctSpace/g, ai).replace(/punct/g, ii).getRegex(), _i = Z("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, ni).replace(/punctSpace/g, ti).replace(/punct/g, ei).getRegex(), vi = Z(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, si).getRegex(), yi = Z("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, li).replace(/punctSpace/g, ci).replace(/punct/g, si).getRegex(), bi = Z(/\\(punct)/, "gu").replace(/punct/g, ei).getRegex(), xi = Z(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), Si = Z(Ur).replace("(?:-->|$)", "-->").getRegex(), Ci = Z("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", Si).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), wi = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/, Ti = Z(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", wi).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), Ei = Z(/^!?\[(label)\]\[(ref)\]/).replace("label", wi).replace("ref", zr).getRegex(), Di = Z(/^!?\[(ref)\](?:\[\])?/).replace("ref", zr).getRegex(), Oi = Z("reflink|nolink(?!\\()", "g").replace("reflink", Ei).replace("nolink", Di).getRegex(), ki = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, Ai = {
4888
- _backpedal: Er,
4889
- anyPunctuation: bi,
4890
- autolink: xi,
4891
- blockSkip: ui,
4892
- br: Qr,
4893
- code: Zr,
4894
- del: Er,
4895
- delLDelim: Er,
4896
- delRDelim: Er,
4897
- emStrongLDelim: fi,
4898
- emStrongRDelimAst: hi,
4899
- emStrongRDelimUnd: _i,
4900
- escape: Xr,
4901
- link: Ti,
4902
- nolink: Di,
4903
- punctuation: ri,
4904
- reflink: Ei,
4905
- reflinkSearch: Oi,
4906
- tag: Ci,
4907
- text: $r,
4908
- url: Er
4909
- }, ji = {
4910
- ...Ai,
4911
- link: Z(/^!?\[(label)\]\((.*?)\)/).replace("label", wi).getRegex(),
4912
- reflink: Z(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", wi).getRegex()
4913
- }, Mi = {
4914
- ...Ai,
4915
- emStrongRDelimAst: gi,
4916
- emStrongLDelim: pi,
4917
- delLDelim: vi,
4918
- delRDelim: yi,
4919
- url: Z(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", ki).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),
4941
+ paragraph: Z(Ar).replace("hr", wr).replace("heading", " *#{1,6} *[^\n]").replace("lheading", Or).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
4942
+ }, Ur = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Wr = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, Gr = /^( {2,}|\\)\n(?!\s*$)/, Kr = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, qr = /[\p{P}\p{S}]/u, Jr = /[\s\p{P}\p{S}]/u, Yr = /[^\s\p{P}\p{S}]/u, Xr = Z(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, Jr).getRegex(), Zr = /(?!~)[\p{P}\p{S}]/u, Qr = /(?!~)[\s\p{P}\p{S}]/u, $r = /(?:[^\s\p{P}\p{S}]|~)/u, ei = Z(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", br ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), ti = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, ni = Z(ti, "u").replace(/punct/g, qr).getRegex(), ri = Z(ti, "u").replace(/punct/g, Zr).getRegex(), ii = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", ai = Z(ii, "gu").replace(/notPunctSpace/g, Yr).replace(/punctSpace/g, Jr).replace(/punct/g, qr).getRegex(), oi = Z(ii, "gu").replace(/notPunctSpace/g, $r).replace(/punctSpace/g, Qr).replace(/punct/g, Zr).getRegex(), si = Z("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, Yr).replace(/punctSpace/g, Jr).replace(/punct/g, qr).getRegex(), ci = Z(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, qr).getRegex(), li = Z("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, Yr).replace(/punctSpace/g, Jr).replace(/punct/g, qr).getRegex(), ui = Z(/\\(punct)/, "gu").replace(/punct/g, qr).getRegex(), di = Z(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), fi = Z(Ir).replace("(?:-->|$)", "-->").getRegex(), pi = Z("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", fi).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), mi = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/, hi = Z(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", mi).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), gi = Z(/^!?\[(label)\]\[(ref)\]/).replace("label", mi).replace("ref", Mr).getRegex(), _i = Z(/^!?\[(ref)\](?:\[\])?/).replace("ref", Mr).getRegex(), vi = Z("reflink|nolink(?!\\()", "g").replace("reflink", gi).replace("nolink", _i).getRegex(), yi = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, bi = {
4943
+ _backpedal: yr,
4944
+ anyPunctuation: ui,
4945
+ autolink: di,
4946
+ blockSkip: ei,
4947
+ br: Gr,
4948
+ code: Wr,
4949
+ del: yr,
4950
+ delLDelim: yr,
4951
+ delRDelim: yr,
4952
+ emStrongLDelim: ni,
4953
+ emStrongRDelimAst: ai,
4954
+ emStrongRDelimUnd: si,
4955
+ escape: Ur,
4956
+ link: hi,
4957
+ nolink: _i,
4958
+ punctuation: Xr,
4959
+ reflink: gi,
4960
+ reflinkSearch: vi,
4961
+ tag: pi,
4962
+ text: Kr,
4963
+ url: yr
4964
+ }, xi = {
4965
+ ...bi,
4966
+ link: Z(/^!?\[(label)\]\((.*?)\)/).replace("label", mi).getRegex(),
4967
+ reflink: Z(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", mi).getRegex()
4968
+ }, Si = {
4969
+ ...bi,
4970
+ emStrongRDelimAst: oi,
4971
+ emStrongLDelim: ri,
4972
+ delLDelim: ci,
4973
+ delRDelim: li,
4974
+ url: Z(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", yi).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),
4920
4975
  _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
4921
4976
  del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,
4922
- text: Z(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", ki).getRegex()
4923
- }, Ni = {
4924
- ...Mi,
4925
- br: Z(Qr).replace("{2,}", "*").getRegex(),
4926
- text: Z(Mi.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
4927
- }, Pi = {
4928
- normal: Kr,
4929
- gfm: Jr,
4930
- pedantic: Yr
4931
- }, Fi = {
4932
- normal: Ai,
4933
- gfm: Mi,
4934
- breaks: Ni,
4935
- pedantic: ji
4936
- }, Ii = {
4977
+ text: Z(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", yi).getRegex()
4978
+ }, Ci = {
4979
+ ...Si,
4980
+ br: Z(Gr).replace("{2,}", "*").getRegex(),
4981
+ text: Z(Si.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
4982
+ }, wi = {
4983
+ normal: zr,
4984
+ gfm: Vr,
4985
+ pedantic: Hr
4986
+ }, Ti = {
4987
+ normal: bi,
4988
+ gfm: Si,
4989
+ breaks: Ci,
4990
+ pedantic: xi
4991
+ }, Ei = {
4937
4992
  "&": "&amp;",
4938
4993
  "<": "&lt;",
4939
4994
  ">": "&gt;",
4940
4995
  "\"": "&quot;",
4941
4996
  "'": "&#39;"
4942
- }, Li = (e) => Ii[e];
4943
- function Ri(e, t) {
4997
+ }, Di = (e) => Ei[e];
4998
+ function Oi(e, t) {
4944
4999
  if (t) {
4945
- if (Q.escapeTest.test(e)) return e.replace(Q.escapeReplace, Li);
4946
- } else if (Q.escapeTestNoEncode.test(e)) return e.replace(Q.escapeReplaceNoEncode, Li);
5000
+ if (Q.escapeTest.test(e)) return e.replace(Q.escapeReplace, Di);
5001
+ } else if (Q.escapeTestNoEncode.test(e)) return e.replace(Q.escapeReplaceNoEncode, Di);
4947
5002
  return e;
4948
5003
  }
4949
- function zi(e) {
5004
+ function ki(e) {
4950
5005
  try {
4951
5006
  e = encodeURI(e).replace(Q.percentDecode, "%");
4952
5007
  } catch {
@@ -4954,7 +5009,7 @@ function zi(e) {
4954
5009
  }
4955
5010
  return e;
4956
5011
  }
4957
- function Bi(e, t) {
5012
+ function Ai(e, t) {
4958
5013
  let n = e.replace(Q.findPipe, (e, t, n) => {
4959
5014
  let r = !1, i = t;
4960
5015
  for (; --i >= 0 && n[i] === "\\";) r = !r;
@@ -4967,14 +5022,19 @@ function Bi(e, t) {
4967
5022
  for (; r < n.length; r++) n[r] = n[r].trim().replace(Q.slashPipe, "|");
4968
5023
  return n;
4969
5024
  }
4970
- function Vi(e, t, n) {
5025
+ function ji(e, t, n) {
4971
5026
  let r = e.length;
4972
5027
  if (r === 0) return "";
4973
5028
  let i = 0;
4974
- for (; i < r && e.charAt(r - i - 1) === t;) i++;
5029
+ for (; i < r;) {
5030
+ let a = e.charAt(r - i - 1);
5031
+ if (a === t && !n) i++;
5032
+ else if (a !== t && n) i++;
5033
+ else break;
5034
+ }
4975
5035
  return e.slice(0, r - i);
4976
5036
  }
4977
- function Hi(e, t) {
5037
+ function Mi(e, t) {
4978
5038
  if (e.indexOf(t[1]) === -1) return -1;
4979
5039
  let n = 0;
4980
5040
  for (let r = 0; r < e.length; r++) if (e[r] === "\\") r++;
@@ -4982,7 +5042,7 @@ function Hi(e, t) {
4982
5042
  else if (e[r] === t[1] && (n--, n < 0)) return r;
4983
5043
  return n > 0 ? -2 : -1;
4984
5044
  }
4985
- function Ui(e, t = 0) {
5045
+ function Ni(e, t = 0) {
4986
5046
  let n = t, r = "";
4987
5047
  for (let t of e) if (t === " ") {
4988
5048
  let e = 4 - n % 4;
@@ -4990,7 +5050,7 @@ function Ui(e, t = 0) {
4990
5050
  } else r += t, n++;
4991
5051
  return r;
4992
5052
  }
4993
- function Wi(e, t, n, r, i) {
5053
+ function Pi(e, t, n, r, i) {
4994
5054
  let a = t.href, o = t.title || null, s = e[1].replace(i.other.outputLinkReplace, "$1");
4995
5055
  r.state.inLink = !0;
4996
5056
  let c = {
@@ -5003,7 +5063,7 @@ function Wi(e, t, n, r, i) {
5003
5063
  };
5004
5064
  return r.state.inLink = !1, c;
5005
5065
  }
5006
- function Gi(e, t, n) {
5066
+ function Fi(e, t, n) {
5007
5067
  let r = e.match(n.other.indentCodeCompensation);
5008
5068
  if (r === null) return t;
5009
5069
  let i = r[1];
@@ -5014,12 +5074,12 @@ function Gi(e, t, n) {
5014
5074
  return r.length >= i.length ? e.slice(i.length) : e;
5015
5075
  }).join("\n");
5016
5076
  }
5017
- var Ki = class {
5077
+ var Ii = class {
5018
5078
  options;
5019
5079
  rules;
5020
5080
  lexer;
5021
5081
  constructor(e) {
5022
- this.options = e || wr;
5082
+ this.options = e || _r;
5023
5083
  }
5024
5084
  space(e) {
5025
5085
  let t = this.rules.block.newline.exec(e);
@@ -5036,14 +5096,14 @@ var Ki = class {
5036
5096
  type: "code",
5037
5097
  raw: t[0],
5038
5098
  codeBlockStyle: "indented",
5039
- text: this.options.pedantic ? e : Vi(e, "\n")
5099
+ text: this.options.pedantic ? e : ji(e, "\n")
5040
5100
  };
5041
5101
  }
5042
5102
  }
5043
5103
  fences(e) {
5044
5104
  let t = this.rules.block.fences.exec(e);
5045
5105
  if (t) {
5046
- let e = t[0], n = Gi(e, t[3] || "", this.rules);
5106
+ let e = t[0], n = Fi(e, t[3] || "", this.rules);
5047
5107
  return {
5048
5108
  type: "code",
5049
5109
  raw: e,
@@ -5057,7 +5117,7 @@ var Ki = class {
5057
5117
  if (t) {
5058
5118
  let e = t[2].trim();
5059
5119
  if (this.rules.other.endingHash.test(e)) {
5060
- let t = Vi(e, "#");
5120
+ let t = ji(e, "#");
5061
5121
  (this.options.pedantic || !t || this.rules.other.endingSpaceChar.test(t)) && (e = t.trim());
5062
5122
  }
5063
5123
  return {
@@ -5073,13 +5133,13 @@ var Ki = class {
5073
5133
  let t = this.rules.block.hr.exec(e);
5074
5134
  if (t) return {
5075
5135
  type: "hr",
5076
- raw: Vi(t[0], "\n")
5136
+ raw: ji(t[0], "\n")
5077
5137
  };
5078
5138
  }
5079
5139
  blockquote(e) {
5080
5140
  let t = this.rules.block.blockquote.exec(e);
5081
5141
  if (t) {
5082
- let e = Vi(t[0], "\n").split("\n"), n = "", r = "", i = [];
5142
+ let e = ji(t[0], "\n").split("\n"), n = "", r = "", i = [];
5083
5143
  for (; e.length > 0;) {
5084
5144
  let t = !1, a = [], o;
5085
5145
  for (o = 0; o < e.length; o++) if (this.rules.other.blockquoteStart.test(e[o])) a.push(e[o]), t = !0;
@@ -5130,7 +5190,7 @@ ${c}` : c;
5130
5190
  let n = !1, r = "", s = "";
5131
5191
  if (!(t = a.exec(e)) || this.rules.block.hr.test(e)) break;
5132
5192
  r = t[0], e = e.substring(r.length);
5133
- let c = Ui(t[2].split("\n", 1)[0], t[1].length), l = e.split("\n", 1)[0], u = !c.trim(), d = 0;
5193
+ let c = Ni(t[2].split("\n", 1)[0], t[1].length), l = e.split("\n", 1)[0], u = !c.trim(), d = 0;
5134
5194
  if (this.options.pedantic ? (d = 2, s = c.trimStart()) : u ? d = t[1].length + 1 : (d = c.search(this.rules.other.nonSpaceChar), d = d > 4 ? 1 : d, s = c.slice(d), d += t[1].length), u && this.rules.other.blankLine.test(l) && (r += l + "\n", e = e.substring(l.length + 1), n = !0), !n) {
5135
5195
  let t = this.rules.other.nextBulletRegex(d), n = this.rules.other.hrRegex(d), i = this.rules.other.fencesBeginRegex(d), a = this.rules.other.headingBeginRegex(d), o = this.rules.other.htmlBeginRegex(d), f = this.rules.other.blockquoteBeginRegex(d);
5136
5196
  for (; e;) {
@@ -5219,7 +5279,7 @@ ${c}` : c;
5219
5279
  table(e) {
5220
5280
  let t = this.rules.block.table.exec(e);
5221
5281
  if (!t || !this.rules.other.tableDelimiter.test(t[2])) return;
5222
- let n = Bi(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
5282
+ let n = Ai(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
5223
5283
  type: "table",
5224
5284
  raw: t[0],
5225
5285
  header: [],
@@ -5234,7 +5294,7 @@ ${c}` : c;
5234
5294
  header: !0,
5235
5295
  align: a.align[e]
5236
5296
  });
5237
- for (let e of i) a.rows.push(Bi(e, a.header.length).map((e, t) => ({
5297
+ for (let e of i) a.rows.push(Ai(e, a.header.length).map((e, t) => ({
5238
5298
  text: e,
5239
5299
  tokens: this.lexer.inline(e),
5240
5300
  header: !1,
@@ -5245,13 +5305,16 @@ ${c}` : c;
5245
5305
  }
5246
5306
  lheading(e) {
5247
5307
  let t = this.rules.block.lheading.exec(e);
5248
- if (t) return {
5249
- type: "heading",
5250
- raw: t[0],
5251
- depth: t[2].charAt(0) === "=" ? 1 : 2,
5252
- text: t[1],
5253
- tokens: this.lexer.inline(t[1])
5254
- };
5308
+ if (t) {
5309
+ let e = t[1].trim();
5310
+ return {
5311
+ type: "heading",
5312
+ raw: t[0],
5313
+ depth: t[2].charAt(0) === "=" ? 1 : 2,
5314
+ text: e,
5315
+ tokens: this.lexer.inline(e)
5316
+ };
5317
+ }
5255
5318
  }
5256
5319
  paragraph(e) {
5257
5320
  let t = this.rules.block.paragraph.exec(e);
@@ -5299,10 +5362,10 @@ ${c}` : c;
5299
5362
  let e = t[2].trim();
5300
5363
  if (!this.options.pedantic && this.rules.other.startAngleBracket.test(e)) {
5301
5364
  if (!this.rules.other.endAngleBracket.test(e)) return;
5302
- let t = Vi(e.slice(0, -1), "\\");
5365
+ let t = ji(e.slice(0, -1), "\\");
5303
5366
  if ((e.length - t.length) % 2 == 0) return;
5304
5367
  } else {
5305
- let e = Hi(t[2], "()");
5368
+ let e = Mi(t[2], "()");
5306
5369
  if (e === -2) return;
5307
5370
  if (e > -1) {
5308
5371
  let n = (t[0].indexOf("!") === 0 ? 5 : 4) + t[1].length + e;
@@ -5314,7 +5377,7 @@ ${c}` : c;
5314
5377
  let e = this.rules.other.pedanticHrefTitle.exec(n);
5315
5378
  e && (n = e[1], r = e[3]);
5316
5379
  } else r = t[3] ? t[3].slice(1, -1) : "";
5317
- return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (n = this.options.pedantic && !this.rules.other.endAngleBracket.test(e) ? n.slice(1) : n.slice(1, -1)), Wi(t, {
5380
+ return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (n = this.options.pedantic && !this.rules.other.endAngleBracket.test(e) ? n.slice(1) : n.slice(1, -1)), Pi(t, {
5318
5381
  href: n && n.replace(this.rules.inline.anyPunctuation, "$1"),
5319
5382
  title: r && r.replace(this.rules.inline.anyPunctuation, "$1")
5320
5383
  }, t[0], this.lexer, this.rules);
@@ -5332,12 +5395,12 @@ ${c}` : c;
5332
5395
  text: e
5333
5396
  };
5334
5397
  }
5335
- return Wi(n, e, n[0], this.lexer, this.rules);
5398
+ return Pi(n, e, n[0], this.lexer, this.rules);
5336
5399
  }
5337
5400
  }
5338
5401
  emStrong(e, t, n = "") {
5339
5402
  let r = this.rules.inline.emStrongLDelim.exec(e);
5340
- if (!(!r || r[3] && n.match(this.rules.other.unicodeAlphaNumeric)) && (!(r[1] || r[2]) || !n || this.rules.inline.punctuation.exec(n))) {
5403
+ if (!(!r || !r[1] && !r[2] && !r[3] && !r[4] || r[4] && n.match(this.rules.other.unicodeAlphaNumeric)) && (!(r[1] || r[3]) || !n || this.rules.inline.punctuation.exec(n))) {
5341
5404
  let n = [...r[0]].length - 1, i, a, o = n, s = 0, c = r[0][0] === "*" ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;
5342
5405
  for (c.lastIndex = 0, t = t.slice(-1 * e.length + n); (r = c.exec(t)) != null;) {
5343
5406
  if (i = r[1] || r[2] || r[3] || r[4] || r[5] || r[6], !i) continue;
@@ -5465,29 +5528,29 @@ ${c}` : c;
5465
5528
  };
5466
5529
  }
5467
5530
  }
5468
- }, qi = class e {
5531
+ }, Li = class e {
5469
5532
  tokens;
5470
5533
  options;
5471
5534
  state;
5472
5535
  inlineQueue;
5473
5536
  tokenizer;
5474
5537
  constructor(e) {
5475
- this.tokens = [], this.tokens.links = /* @__PURE__ */ Object.create(null), this.options = e || wr, this.options.tokenizer = this.options.tokenizer || new Ki(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
5538
+ this.tokens = [], this.tokens.links = Object.create(null), this.options = e || _r, this.options.tokenizer = this.options.tokenizer || new Ii(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
5476
5539
  inLink: !1,
5477
5540
  inRawBlock: !1,
5478
5541
  top: !0
5479
5542
  };
5480
5543
  let t = {
5481
5544
  other: Q,
5482
- block: Pi.normal,
5483
- inline: Fi.normal
5545
+ block: wi.normal,
5546
+ inline: Ti.normal
5484
5547
  };
5485
- this.options.pedantic ? (t.block = Pi.pedantic, t.inline = Fi.pedantic) : this.options.gfm && (t.block = Pi.gfm, t.inline = this.options.breaks ? Fi.breaks : Fi.gfm), this.tokenizer.rules = t;
5548
+ this.options.pedantic ? (t.block = wi.pedantic, t.inline = Ti.pedantic) : this.options.gfm && (t.block = wi.gfm, t.inline = this.options.breaks ? Ti.breaks : Ti.gfm), this.tokenizer.rules = t;
5486
5549
  }
5487
5550
  static get rules() {
5488
5551
  return {
5489
- block: Pi,
5490
- inline: Fi
5552
+ block: wi,
5553
+ inline: Ti
5491
5554
  };
5492
5555
  }
5493
5556
  static lex(t, n) {
@@ -5505,7 +5568,7 @@ ${c}` : c;
5505
5568
  return this.inlineQueue = [], this.tokens;
5506
5569
  }
5507
5570
  blockTokens(e, t = [], n = !1) {
5508
- for (this.options.pedantic && (e = e.replace(Q.tabCharGlobal, " ").replace(Q.spaceLine, "")); e;) {
5571
+ for (this.tokenizer.lexer = this, this.options.pedantic && (e = e.replace(Q.tabCharGlobal, " ").replace(Q.spaceLine, "")); e;) {
5509
5572
  let r;
5510
5573
  if (this.options.extensions?.block?.some((n) => (r = n.call({ lexer: this }, e, t)) ? (e = e.substring(r.raw.length), t.push(r), !0) : !1)) continue;
5511
5574
  if (r = this.tokenizer.space(e)) {
@@ -5563,10 +5626,10 @@ ${c}` : c;
5563
5626
  }
5564
5627
  let i = e;
5565
5628
  if (this.options.extensions?.startBlock) {
5566
- let t = 1 / 0, n = e.slice(1), r;
5629
+ let t = Infinity, n = e.slice(1), r;
5567
5630
  this.options.extensions.startBlock.forEach((e) => {
5568
5631
  r = e.call({ lexer: this }, n), typeof r == "number" && r >= 0 && (t = Math.min(t, r));
5569
- }), t < 1 / 0 && t >= 0 && (i = e.substring(0, t + 1));
5632
+ }), t < Infinity && t >= 0 && (i = e.substring(0, t + 1));
5570
5633
  }
5571
5634
  if (this.state.top && (r = this.tokenizer.paragraph(i))) {
5572
5635
  let a = t.at(-1);
@@ -5597,6 +5660,7 @@ ${c}` : c;
5597
5660
  }), t;
5598
5661
  }
5599
5662
  inlineTokens(e, t = []) {
5663
+ this.tokenizer.lexer = this;
5600
5664
  let n = e, r = null;
5601
5665
  if (this.tokens.links) {
5602
5666
  let e = Object.keys(this.tokens.links);
@@ -5655,10 +5719,10 @@ ${c}` : c;
5655
5719
  }
5656
5720
  let i = e;
5657
5721
  if (this.options.extensions?.startInline) {
5658
- let t = 1 / 0, n = e.slice(1), r;
5722
+ let t = Infinity, n = e.slice(1), r;
5659
5723
  this.options.extensions.startInline.forEach((e) => {
5660
5724
  r = e.call({ lexer: this }, n), typeof r == "number" && r >= 0 && (t = Math.min(t, r));
5661
- }), t < 1 / 0 && t >= 0 && (i = e.substring(0, t + 1));
5725
+ }), t < Infinity && t >= 0 && (i = e.substring(0, t + 1));
5662
5726
  }
5663
5727
  if (r = this.tokenizer.inlineText(i)) {
5664
5728
  e = e.substring(r.raw.length), r.raw.slice(-1) !== "_" && (o = r.raw.slice(-1)), a = !0;
@@ -5677,18 +5741,18 @@ ${c}` : c;
5677
5741
  }
5678
5742
  return t;
5679
5743
  }
5680
- }, Ji = class {
5744
+ }, Ri = class {
5681
5745
  options;
5682
5746
  parser;
5683
5747
  constructor(e) {
5684
- this.options = e || wr;
5748
+ this.options = e || _r;
5685
5749
  }
5686
5750
  space(e) {
5687
5751
  return "";
5688
5752
  }
5689
5753
  code({ text: e, lang: t, escaped: n }) {
5690
5754
  let r = (t || "").match(Q.notSpaceStart)?.[0], i = e.replace(Q.endingNewline, "") + "\n";
5691
- return r ? "<pre><code class=\"language-" + Ri(r) + "\">" + (n ? i : Ri(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : Ri(i, !0)) + "</code></pre>\n";
5755
+ return r ? "<pre><code class=\"language-" + Oi(r) + "\">" + (n ? i : Oi(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : Oi(i, !0)) + "</code></pre>\n";
5692
5756
  }
5693
5757
  blockquote({ tokens: e }) {
5694
5758
  return `<blockquote>
@@ -5758,7 +5822,7 @@ ${e}</tr>
5758
5822
  return `<em>${this.parser.parseInline(e)}</em>`;
5759
5823
  }
5760
5824
  codespan({ text: e }) {
5761
- return `<code>${Ri(e, !0)}</code>`;
5825
+ return `<code>${Oi(e, !0)}</code>`;
5762
5826
  }
5763
5827
  br(e) {
5764
5828
  return "<br>";
@@ -5767,24 +5831,24 @@ ${e}</tr>
5767
5831
  return `<del>${this.parser.parseInline(e)}</del>`;
5768
5832
  }
5769
5833
  link({ href: e, title: t, tokens: n }) {
5770
- let r = this.parser.parseInline(n), i = zi(e);
5834
+ let r = this.parser.parseInline(n), i = ki(e);
5771
5835
  if (i === null) return r;
5772
5836
  e = i;
5773
5837
  let a = "<a href=\"" + e + "\"";
5774
- return t && (a += " title=\"" + Ri(t) + "\""), a += ">" + r + "</a>", a;
5838
+ return t && (a += " title=\"" + Oi(t) + "\""), a += ">" + r + "</a>", a;
5775
5839
  }
5776
5840
  image({ href: e, title: t, text: n, tokens: r }) {
5777
5841
  r && (n = this.parser.parseInline(r, this.parser.textRenderer));
5778
- let i = zi(e);
5779
- if (i === null) return Ri(n);
5842
+ let i = ki(e);
5843
+ if (i === null) return Oi(n);
5780
5844
  e = i;
5781
- let a = `<img src="${e}" alt="${Ri(n)}"`;
5782
- return t && (a += ` title="${Ri(t)}"`), a += ">", a;
5845
+ let a = `<img src="${e}" alt="${Oi(n)}"`;
5846
+ return t && (a += ` title="${Oi(t)}"`), a += ">", a;
5783
5847
  }
5784
5848
  text(e) {
5785
- return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : Ri(e.text);
5849
+ return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : Oi(e.text);
5786
5850
  }
5787
- }, Yi = class {
5851
+ }, zi = class {
5788
5852
  strong({ text: e }) {
5789
5853
  return e;
5790
5854
  }
@@ -5815,12 +5879,12 @@ ${e}</tr>
5815
5879
  checkbox({ raw: e }) {
5816
5880
  return e;
5817
5881
  }
5818
- }, Xi = class e {
5882
+ }, Bi = class e {
5819
5883
  options;
5820
5884
  renderer;
5821
5885
  textRenderer;
5822
5886
  constructor(e) {
5823
- this.options = e || wr, this.options.renderer = this.options.renderer || new Ji(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new Yi();
5887
+ this.options = e || _r, this.options.renderer = this.options.renderer || new Ri(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new zi();
5824
5888
  }
5825
5889
  static parse(t, n) {
5826
5890
  return new e(n).parse(t);
@@ -5829,6 +5893,7 @@ ${e}</tr>
5829
5893
  return new e(n).parseInline(t);
5830
5894
  }
5831
5895
  parse(e) {
5896
+ this.renderer.parser = this;
5832
5897
  let t = "";
5833
5898
  for (let n = 0; n < e.length; n++) {
5834
5899
  let r = e[n];
@@ -5899,6 +5964,7 @@ ${e}</tr>
5899
5964
  return t;
5900
5965
  }
5901
5966
  parseInline(e, t = this.renderer) {
5967
+ this.renderer.parser = this;
5902
5968
  let n = "";
5903
5969
  for (let r = 0; r < e.length; r++) {
5904
5970
  let i = e[r];
@@ -5964,11 +6030,11 @@ ${e}</tr>
5964
6030
  }
5965
6031
  return n;
5966
6032
  }
5967
- }, Zi = class {
6033
+ }, Vi = class {
5968
6034
  options;
5969
6035
  block;
5970
6036
  constructor(e) {
5971
- this.options = e || wr;
6037
+ this.options = e || _r;
5972
6038
  }
5973
6039
  static passThroughHooks = /* @__PURE__ */ new Set([
5974
6040
  "preprocess",
@@ -5994,22 +6060,22 @@ ${e}</tr>
5994
6060
  return e;
5995
6061
  }
5996
6062
  provideLexer() {
5997
- return this.block ? qi.lex : qi.lexInline;
6063
+ return this.block ? Li.lex : Li.lexInline;
5998
6064
  }
5999
6065
  provideParser() {
6000
- return this.block ? Xi.parse : Xi.parseInline;
6066
+ return this.block ? Bi.parse : Bi.parseInline;
6001
6067
  }
6002
- }, Qi = new class {
6003
- defaults = Cr();
6068
+ }, Hi = new class {
6069
+ defaults = gr();
6004
6070
  options = this.setOptions;
6005
6071
  parse = this.parseMarkdown(!0);
6006
6072
  parseInline = this.parseMarkdown(!1);
6007
- Parser = Xi;
6008
- Renderer = Ji;
6009
- TextRenderer = Yi;
6010
- Lexer = qi;
6011
- Tokenizer = Ki;
6012
- Hooks = Zi;
6073
+ Parser = Bi;
6074
+ Renderer = Ri;
6075
+ TextRenderer = zi;
6076
+ Lexer = Li;
6077
+ Tokenizer = Ii;
6078
+ Hooks = Vi;
6013
6079
  constructor(...e) {
6014
6080
  this.use(...e);
6015
6081
  }
@@ -6030,7 +6096,7 @@ ${e}</tr>
6030
6096
  default: {
6031
6097
  let e = r;
6032
6098
  this.defaults.extensions?.childTokens?.[e.type] ? this.defaults.extensions.childTokens[e.type].forEach((r) => {
6033
- let i = e[r].flat(1 / 0);
6099
+ let i = e[r].flat(Infinity);
6034
6100
  n = n.concat(this.walkTokens(i, t));
6035
6101
  }) : e.tokens && (n = n.concat(this.walkTokens(e.tokens, t)));
6036
6102
  }
@@ -6060,7 +6126,7 @@ ${e}</tr>
6060
6126
  }
6061
6127
  "childTokens" in e && e.childTokens && (t.childTokens[e.name] = e.childTokens);
6062
6128
  }), n.extensions = t), e.renderer) {
6063
- let t = this.defaults.renderer || new Ji(this.defaults);
6129
+ let t = this.defaults.renderer || new Ri(this.defaults);
6064
6130
  for (let n in e.renderer) {
6065
6131
  if (!(n in t)) throw Error(`renderer '${n}' does not exist`);
6066
6132
  if (["options", "parser"].includes(n)) continue;
@@ -6073,7 +6139,7 @@ ${e}</tr>
6073
6139
  n.renderer = t;
6074
6140
  }
6075
6141
  if (e.tokenizer) {
6076
- let t = this.defaults.tokenizer || new Ki(this.defaults);
6142
+ let t = this.defaults.tokenizer || new Ii(this.defaults);
6077
6143
  for (let n in e.tokenizer) {
6078
6144
  if (!(n in t)) throw Error(`tokenizer '${n}' does not exist`);
6079
6145
  if ([
@@ -6090,13 +6156,13 @@ ${e}</tr>
6090
6156
  n.tokenizer = t;
6091
6157
  }
6092
6158
  if (e.hooks) {
6093
- let t = this.defaults.hooks || new Zi();
6159
+ let t = this.defaults.hooks || new Vi();
6094
6160
  for (let n in e.hooks) {
6095
6161
  if (!(n in t)) throw Error(`hook '${n}' does not exist`);
6096
6162
  if (["options", "block"].includes(n)) continue;
6097
6163
  let r = n, i = e.hooks[r], a = t[r];
6098
- t[r] = Zi.passThroughHooks.has(n) ? (e) => {
6099
- if (this.defaults.async && Zi.passThroughHooksRespectAsync.has(n)) return (async () => {
6164
+ t[r] = Vi.passThroughHooks.has(n) ? (e) => {
6165
+ if (this.defaults.async && Vi.passThroughHooksRespectAsync.has(n)) return (async () => {
6100
6166
  let n = await i.call(t, e);
6101
6167
  return a.call(t, n);
6102
6168
  })();
@@ -6133,10 +6199,10 @@ ${e}</tr>
6133
6199
  }, this;
6134
6200
  }
6135
6201
  lexer(e, t) {
6136
- return qi.lex(e, t ?? this.defaults);
6202
+ return Li.lex(e, t ?? this.defaults);
6137
6203
  }
6138
6204
  parser(e, t) {
6139
- return Xi.parse(e, t ?? this.defaults);
6205
+ return Bi.parse(e, t ?? this.defaults);
6140
6206
  }
6141
6207
  parseMarkdown(e) {
6142
6208
  return (t, n) => {
@@ -6148,16 +6214,16 @@ ${e}</tr>
6148
6214
  if (typeof t > "u" || t === null) return a(/* @__PURE__ */ Error("marked(): input parameter is undefined or null"));
6149
6215
  if (typeof t != "string") return a(/* @__PURE__ */ Error("marked(): input parameter is of type " + Object.prototype.toString.call(t) + ", string expected"));
6150
6216
  if (i.hooks && (i.hooks.options = i, i.hooks.block = e), i.async) return (async () => {
6151
- let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer() : e ? qi.lex : qi.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
6217
+ let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer() : e ? Li.lex : Li.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
6152
6218
  i.walkTokens && await Promise.all(this.walkTokens(a, i.walkTokens));
6153
- let o = await (i.hooks ? await i.hooks.provideParser() : e ? Xi.parse : Xi.parseInline)(a, i);
6219
+ let o = await (i.hooks ? await i.hooks.provideParser() : e ? Bi.parse : Bi.parseInline)(a, i);
6154
6220
  return i.hooks ? await i.hooks.postprocess(o) : o;
6155
6221
  })().catch(a);
6156
6222
  try {
6157
6223
  i.hooks && (t = i.hooks.preprocess(t));
6158
- let n = (i.hooks ? i.hooks.provideLexer() : e ? qi.lex : qi.lexInline)(t, i);
6224
+ let n = (i.hooks ? i.hooks.provideLexer() : e ? Li.lex : Li.lexInline)(t, i);
6159
6225
  i.hooks && (n = i.hooks.processAllTokens(n)), i.walkTokens && this.walkTokens(n, i.walkTokens);
6160
- let r = (i.hooks ? i.hooks.provideParser() : e ? Xi.parse : Xi.parseInline)(n, i);
6226
+ let r = (i.hooks ? i.hooks.provideParser() : e ? Bi.parse : Bi.parseInline)(n, i);
6161
6227
  return i.hooks && (r = i.hooks.postprocess(r)), r;
6162
6228
  } catch (e) {
6163
6229
  return a(e);
@@ -6167,7 +6233,7 @@ ${e}</tr>
6167
6233
  onError(e, t) {
6168
6234
  return (n) => {
6169
6235
  if (n.message += "\nPlease report this to https://github.com/markedjs/marked.", e) {
6170
- let e = "<p>An error occurred:</p><pre>" + Ri(n.message + "", !0) + "</pre>";
6236
+ let e = "<p>An error occurred:</p><pre>" + Oi(n.message + "", !0) + "</pre>";
6171
6237
  return t ? Promise.resolve(e) : e;
6172
6238
  }
6173
6239
  if (t) return Promise.reject(n);
@@ -6176,21 +6242,21 @@ ${e}</tr>
6176
6242
  }
6177
6243
  }();
6178
6244
  function $(e, t) {
6179
- return Qi.parse(e, t);
6245
+ return Hi.parse(e, t);
6180
6246
  }
6181
6247
  $.options = $.setOptions = function(e) {
6182
- return Qi.setOptions(e), $.defaults = Qi.defaults, Tr($.defaults), $;
6183
- }, $.getDefaults = Cr, $.defaults = wr, $.use = function(...e) {
6184
- return Qi.use(...e), $.defaults = Qi.defaults, Tr($.defaults), $;
6248
+ return Hi.setOptions(e), $.defaults = Hi.defaults, vr($.defaults), $;
6249
+ }, $.getDefaults = gr, $.defaults = _r, $.use = function(...e) {
6250
+ return Hi.use(...e), $.defaults = Hi.defaults, vr($.defaults), $;
6185
6251
  }, $.walkTokens = function(e, t) {
6186
- return Qi.walkTokens(e, t);
6187
- }, $.parseInline = Qi.parseInline, $.Parser = Xi, $.parser = Xi.parse, $.Renderer = Ji, $.TextRenderer = Yi, $.Lexer = qi, $.lexer = qi.lex, $.Tokenizer = Ki, $.Hooks = Zi, $.parse = $, $.options, $.setOptions, $.use, $.walkTokens, $.parseInline, Xi.parse, qi.lex;
6188
- var $i = () => {
6252
+ return Hi.walkTokens(e, t);
6253
+ }, $.parseInline = Hi.parseInline, $.Parser = Bi, $.parser = Bi.parse, $.Renderer = Ri, $.TextRenderer = zi, $.Lexer = Li, $.lexer = Li.lex, $.Tokenizer = Ii, $.Hooks = Vi, $.parse = $, $.options, $.setOptions, $.use, $.walkTokens, $.parseInline, Bi.parse, Li.lex;
6254
+ var Ui = () => {
6189
6255
  let e, t = null, n;
6190
6256
  function r() {
6191
6257
  if (t && !t.closed) t.focus();
6192
6258
  else {
6193
- if (t = window.open("about:blank", "reveal.js - Notes", "width=1100,height=700"), t.marked = $, t.document.write(Sr), !t) {
6259
+ if (t = window.open("about:blank", "reveal.js - Notes", "width=1100,height=700"), t.marked = $, t.document.write(hr), !t) {
6194
6260
  alert("Speaker view popup failed to open. Please make sure popups are allowed and reopen the speaker view.");
6195
6261
  return;
6196
6262
  }
@@ -6272,33 +6338,33 @@ var $i = () => {
6272
6338
  },
6273
6339
  open: r
6274
6340
  };
6275
- }, ea = 16 / 9, ta = 67;
6276
- function na({ deck: e, enabled: t, onToggle: n }) {
6277
- e.removeKeyBinding(ta), t && e.addKeyBinding({
6278
- keyCode: ta,
6341
+ }, Wi = 16 / 9, Gi = 67;
6342
+ function Ki({ deck: e, enabled: t, onToggle: n }) {
6343
+ e.removeKeyBinding(Gi), t && e.addKeyBinding({
6344
+ keyCode: Gi,
6279
6345
  key: "C",
6280
6346
  description: "Toggle code editor"
6281
6347
  }, n);
6282
6348
  }
6283
- function ra(e) {
6349
+ function qi(e) {
6284
6350
  let t = e.getSlidesElement();
6285
6351
  if (t) for (let e of t.querySelectorAll("section.stack[data-previous-indexv]")) e.removeAttribute("data-previous-indexv");
6286
6352
  }
6287
- var ia = /* @__PURE__ */ new Set([
6353
+ var Ji = /* @__PURE__ */ new Set([
6288
6354
  " ",
6289
6355
  "Spacebar",
6290
6356
  "ArrowRight",
6291
6357
  "ArrowDown",
6292
6358
  "PageDown"
6293
- ]), aa = /* @__PURE__ */ new Set([
6359
+ ]), Yi = /* @__PURE__ */ new Set([
6294
6360
  "ArrowLeft",
6295
6361
  "ArrowUp",
6296
6362
  "PageUp"
6297
6363
  ]);
6298
- function oa(e) {
6299
- return ia.has(e.key) ? 1 : aa.has(e.key) ? -1 : 0;
6364
+ function Xi(e) {
6365
+ return Ji.has(e.key) ? 1 : Yi.has(e.key) ? -1 : 0;
6300
6366
  }
6301
- function sa(e) {
6367
+ function Zi(e) {
6302
6368
  let t = (0, F.c)(4), n;
6303
6369
  t[0] === Symbol.for("react.memo_cache_sentinel") ? (n = {
6304
6370
  width: 960,
@@ -6311,7 +6377,7 @@ function sa(e) {
6311
6377
  let n = new ResizeObserver((e) => {
6312
6378
  let { width: t, height: n } = e[0].contentRect;
6313
6379
  if (t <= 0 || n <= 0) return;
6314
- let r = Math.min(t, n * ea), a = r / ea;
6380
+ let r = Math.min(t, n * Wi), a = r / Wi;
6315
6381
  i({
6316
6382
  width: Math.round(r),
6317
6383
  height: Math.round(a)
@@ -6320,30 +6386,30 @@ function sa(e) {
6320
6386
  return n.observe(t), () => n.disconnect();
6321
6387
  }, o = [e], t[1] = e, t[2] = a, t[3] = o), (0, P.useEffect)(a, o), r;
6322
6388
  }
6323
- var ca = (e) => {
6389
+ var Qi = (e) => {
6324
6390
  let t = (0, F.c)(6), { text: n } = e, r, i;
6325
6391
  if (t[0] !== n) {
6326
6392
  let e = n.split("\n");
6327
6393
  r = "notes", i = e.map((t, n) => {
6328
6394
  let r = n === e.length - 1;
6329
- return t === "---" ? /* @__PURE__ */ (0, G.jsx)("hr", {}, n) : /* @__PURE__ */ (0, G.jsxs)(P.Fragment, { children: [t, !r && /* @__PURE__ */ (0, G.jsx)("br", {})] }, n);
6395
+ return t === "---" ? /* @__PURE__ */ (0, K.jsx)("hr", {}, n) : /* @__PURE__ */ (0, K.jsxs)(P.Fragment, { children: [t, !r && /* @__PURE__ */ (0, K.jsx)("br", {})] }, n);
6330
6396
  }), t[0] = n, t[1] = r, t[2] = i;
6331
6397
  } else r = t[1], i = t[2];
6332
6398
  let a;
6333
- return t[3] !== r || t[4] !== i ? (a = /* @__PURE__ */ (0, G.jsx)("aside", {
6399
+ return t[3] !== r || t[4] !== i ? (a = /* @__PURE__ */ (0, K.jsx)("aside", {
6334
6400
  className: r,
6335
6401
  children: i
6336
6402
  }), t[3] = r, t[4] = i, t[5] = a) : a = t[5], a;
6337
6403
  };
6338
- function la(e) {
6404
+ function $i(e) {
6339
6405
  let { cells: t, cellId: n, showCodeOverrides: r, codeAvailable: i } = e;
6340
6406
  return n == null || !i ? !1 : (t.get(n)?.showCode ?? !1) || r.has(n);
6341
6407
  }
6342
- function ua(e) {
6408
+ function ea(e) {
6343
6409
  let { cell: t, noOutputIds: n, heldEditCellId: r, slideConfigs: i } = e;
6344
6410
  return n.has(t.id) || t.id === r ? "skip" : i.get(t.id)?.type ?? "slide";
6345
6411
  }
6346
- function da(e) {
6412
+ function ta(e) {
6347
6413
  let t = (0, F.c)(15), { activeCell: n, slideConfigs: r, noOutputIds: i } = e, a = n?.id ?? null, o;
6348
6414
  t[0] !== n || t[1] !== i ? (o = n != null && i.has(n.id), t[0] = n, t[1] = i, t[2] = o) : o = t[2];
6349
6415
  let s = o, c = n != null && r.get(n.id)?.type === "skip" || s, l;
@@ -6370,8 +6436,8 @@ function da(e) {
6370
6436
  show: !0
6371
6437
  }));
6372
6438
  let y;
6373
- t[7] === Symbol.for("react.memo_cache_sentinel") ? (y = () => _(fa), t[7] = y) : y = t[7];
6374
- let b = M(y), x = c || p ? n ?? null : null, S;
6439
+ t[7] === Symbol.for("react.memo_cache_sentinel") ? (y = () => _(na), t[7] = y) : y = t[7];
6440
+ let b = j(y), x = c || p ? n ?? null : null, S;
6375
6441
  return t[8] !== m || t[9] !== v || t[10] !== p || t[11] !== s || t[12] !== x || t[13] !== b ? (S = {
6376
6442
  parkedPreviewCell: x,
6377
6443
  isHeldEdit: p,
@@ -6381,300 +6447,300 @@ function da(e) {
6381
6447
  toggleHeldShowsCode: b
6382
6448
  }, t[8] = m, t[9] = v, t[10] = p, t[11] = s, t[12] = x, t[13] = b, t[14] = S) : S = t[14], S;
6383
6449
  }
6384
- function fa(e) {
6450
+ function na(e) {
6385
6451
  return {
6386
6452
  ...e,
6387
6453
  show: !e.show
6388
6454
  };
6389
6455
  }
6390
- function pa(e) {
6456
+ function ra(e) {
6391
6457
  switch (e ?? "center") {
6392
6458
  case "top": return { margin: "0 20px auto" };
6393
6459
  case "bottom": return { margin: "auto 20px 0" };
6394
6460
  default: return { margin: "auto 20px" };
6395
6461
  }
6396
6462
  }
6397
- var ma = (e) => {
6463
+ var ia = (e) => {
6398
6464
  let t = (0, F.c)(13), { cell: n } = e, r;
6399
6465
  t[0] !== n.id || t[1] !== n.name ? (r = x(n.id, n.name), t[0] = n.id, t[1] = n.name, t[2] = r) : r = t[2];
6400
6466
  let i = n.id, a = n.status, o = n.output, s;
6401
6467
  t[3] === n ? s = t[4] : (s = l(n, !1), t[3] = n, t[4] = s);
6402
6468
  let c;
6403
- t[5] !== n.id || t[6] !== n.output || t[7] !== n.status || t[8] !== s ? (c = /* @__PURE__ */ (0, G.jsx)(m, {
6469
+ t[5] !== n.id || t[6] !== n.output || t[7] !== n.status || t[8] !== s ? (c = /* @__PURE__ */ (0, K.jsx)(m, {
6404
6470
  cellId: i,
6405
6471
  status: a,
6406
6472
  output: o,
6407
6473
  stale: s
6408
6474
  }), t[5] = n.id, t[6] = n.output, t[7] = n.status, t[8] = s, t[9] = c) : c = t[9];
6409
6475
  let u;
6410
- return t[10] !== r || t[11] !== c ? (u = /* @__PURE__ */ (0, G.jsx)("div", {
6476
+ return t[10] !== r || t[11] !== c ? (u = /* @__PURE__ */ (0, K.jsx)("div", {
6411
6477
  className: "flex flex-col",
6412
6478
  ...r,
6413
6479
  children: c
6414
6480
  }), t[10] = r, t[11] = c, t[12] = u) : u = t[12], u;
6415
- }, ha = (e) => {
6481
+ }, aa = (e) => {
6416
6482
  let t = (0, F.c)(24), { subslide: n, resolveShowCode: r, isEditable: i, slideConfigs: a, contentStyle: o } = e, s, c, l, u, d, f;
6417
6483
  if (t[0] !== o || t[1] !== i || t[2] !== r || t[3] !== a || t[4] !== n) {
6418
- let { slideLevel: e, cumulativeByBlock: p } = xr(n, a);
6484
+ let { slideLevel: e, cumulativeByBlock: p } = mr(n, a);
6419
6485
  l = e;
6420
6486
  let m = n.blocks.some((e) => e.cells.some((e) => r(e.id)));
6421
- c = Ct, s = sr, u = m ? "mo-slide-content flex flex-col gap-3" : "mo-slide-content", d = o, f = n.blocks.map((e, t) => {
6422
- let n = e.cells.map((e) => r(e.id) ? i ? /* @__PURE__ */ (0, G.jsx)(mr, { cell: e }, e.id) : /* @__PURE__ */ (0, G.jsx)(hr, { cell: e }, e.id) : /* @__PURE__ */ (0, G.jsx)(ma, { cell: e }, e.id));
6487
+ c = gt, s = er, u = m ? "mo-slide-content flex flex-col gap-3" : "mo-slide-content", d = o, f = n.blocks.map((e, t) => {
6488
+ let n = e.cells.map((e) => r(e.id) ? i ? /* @__PURE__ */ (0, K.jsx)(sr, { cell: e }, e.id) : /* @__PURE__ */ (0, K.jsx)(cr, { cell: e }, e.id) : /* @__PURE__ */ (0, K.jsx)(ia, { cell: e }, e.id));
6423
6489
  if (e.isFragment) {
6424
6490
  let e = p.get(t);
6425
- return /* @__PURE__ */ (0, G.jsxs)(er, {
6491
+ return /* @__PURE__ */ (0, K.jsxs)(qn, {
6426
6492
  as: "div",
6427
- children: [n, e && /* @__PURE__ */ (0, G.jsx)(ca, { text: e })]
6493
+ children: [n, e && /* @__PURE__ */ (0, K.jsx)(Qi, { text: e })]
6428
6494
  }, t);
6429
6495
  }
6430
- return /* @__PURE__ */ (0, G.jsx)(P.Fragment, { children: n }, t);
6496
+ return /* @__PURE__ */ (0, K.jsx)(P.Fragment, { children: n }, t);
6431
6497
  }), t[0] = o, t[1] = i, t[2] = r, t[3] = a, t[4] = n, t[5] = s, t[6] = c, t[7] = l, t[8] = u, t[9] = d, t[10] = f;
6432
6498
  } else s = t[5], c = t[6], l = t[7], u = t[8], d = t[9], f = t[10];
6433
6499
  let p;
6434
- t[11] !== u || t[12] !== d || t[13] !== f ? (p = /* @__PURE__ */ (0, G.jsx)("div", {
6500
+ t[11] !== u || t[12] !== d || t[13] !== f ? (p = /* @__PURE__ */ (0, K.jsx)("div", {
6435
6501
  className: u,
6436
6502
  style: d,
6437
6503
  children: f
6438
6504
  }), t[11] = u, t[12] = d, t[13] = f, t[14] = p) : p = t[14];
6439
6505
  let m;
6440
- t[15] !== s || t[16] !== p ? (m = /* @__PURE__ */ (0, G.jsx)(s, { children: p }), t[15] = s, t[16] = p, t[17] = m) : m = t[17];
6506
+ t[15] !== s || t[16] !== p ? (m = /* @__PURE__ */ (0, K.jsx)(s, { children: p }), t[15] = s, t[16] = p, t[17] = m) : m = t[17];
6441
6507
  let h;
6442
- t[18] === l ? h = t[19] : (h = l && /* @__PURE__ */ (0, G.jsx)(ca, { text: l }), t[18] = l, t[19] = h);
6508
+ t[18] === l ? h = t[19] : (h = l && /* @__PURE__ */ (0, K.jsx)(Qi, { text: l }), t[18] = l, t[19] = h);
6443
6509
  let g;
6444
- return t[20] !== c || t[21] !== m || t[22] !== h ? (g = /* @__PURE__ */ (0, G.jsxs)(c, { children: [m, h] }), t[20] = c, t[21] = m, t[22] = h, t[23] = g) : g = t[23], g;
6510
+ return t[20] !== c || t[21] !== m || t[22] !== h ? (g = /* @__PURE__ */ (0, K.jsxs)(c, { children: [m, h] }), t[20] = c, t[21] = m, t[22] = h, t[23] = g) : g = t[23], g;
6445
6511
  };
6446
- function ga(e) {
6512
+ function oa(e) {
6447
6513
  let { isNoOutputPreview: t, isEditable: n, showCode: r } = e;
6448
6514
  return t && n || r;
6449
6515
  }
6450
- var _a = (e) => {
6516
+ var sa = (e) => {
6451
6517
  let t = (0, F.c)(5), { cell: n, isNoOutputPreview: r, isEditable: i, showCode: a } = e;
6452
- if (ga({
6518
+ if (oa({
6453
6519
  isNoOutputPreview: r,
6454
6520
  isEditable: i,
6455
6521
  showCode: a
6456
6522
  })) {
6457
6523
  let e;
6458
- return t[0] !== n || t[1] !== i ? (e = i ? /* @__PURE__ */ (0, G.jsx)(mr, { cell: n }) : /* @__PURE__ */ (0, G.jsx)(hr, { cell: n }), t[0] = n, t[1] = i, t[2] = e) : e = t[2], e;
6524
+ return t[0] !== n || t[1] !== i ? (e = i ? /* @__PURE__ */ (0, K.jsx)(sr, { cell: n }) : /* @__PURE__ */ (0, K.jsx)(cr, { cell: n }), t[0] = n, t[1] = i, t[2] = e) : e = t[2], e;
6459
6525
  }
6460
6526
  let o;
6461
- return t[3] === n ? o = t[4] : (o = /* @__PURE__ */ (0, G.jsx)(ma, { cell: n }), t[3] = n, t[4] = o), o;
6462
- }, va = (e) => {
6463
- let n = (0, F.c)(160), { slideCells: o, layout: s, setLayout: l, noOutputIds: u, activeIndex: m, onSlideChange: x, mode: E, configWidth: D, isEditable: O } = e, N = O !== void 0 && O, te = (0, P.useRef)(null), ne = (0, P.useRef)(null), { width: I, height: re } = sa(te), ie = k() != null, ae = j(c), oe = j(b).kind, se = j(y), ce = oe !== "wasm" || se, le;
6464
- n[0] !== ae || n[1] !== oe ? (le = ae || !S(oe) ? [] : [$i], n[0] = ae, n[1] = oe, n[2] = le) : le = n[2];
6465
- let ue = le, [de, L] = (0, P.useState)(ya), fe = v(o), pe;
6466
- n[3] === fe ? pe = n[4] : (pe = !ee() && fe, n[3] = fe, n[4] = pe);
6467
- let R = pe, me;
6468
- n[5] === ae ? me = n[6] : (me = g(ae, window.location.search), n[5] = ae, n[6] = me);
6469
- let z = !me && R, he = m == null ? void 0 : o[m], ge;
6470
- n[7] !== he || n[8] !== o ? (ge = he ?? o.at(0), n[7] = he, n[8] = o, n[9] = ge) : ge = n[9];
6471
- let _e = ge, ve;
6472
- n[10] !== he || n[11] !== s.cells || n[12] !== u ? (ve = {
6473
- activeCell: he,
6527
+ return t[3] === n ? o = t[4] : (o = /* @__PURE__ */ (0, K.jsx)(ia, { cell: n }), t[3] = n, t[4] = o), o;
6528
+ }, ca = (e) => {
6529
+ let n = (0, F.c)(160), { slideCells: o, layout: s, setLayout: l, noOutputIds: u, activeIndex: m, onSlideChange: x, mode: E, configWidth: D, isEditable: O } = e, N = O !== void 0 && O, te = (0, P.useRef)(null), I = (0, P.useRef)(null), { width: ne, height: re } = Zi(te), ie = k() != null, L = M(c), R = M(b).kind, ae = M(y), oe = R !== "wasm" || ae, z;
6530
+ n[0] !== L || n[1] !== R ? (z = L || !S(R) ? [] : [Ui], n[0] = L, n[1] = R, n[2] = z) : z = n[2];
6531
+ let se = z, [ce, le] = (0, P.useState)(la), ue = v(o), de;
6532
+ n[3] === ue ? de = n[4] : (de = !ee() && ue, n[3] = ue, n[4] = de);
6533
+ let fe = de, pe;
6534
+ n[5] === L ? pe = n[6] : (pe = g(L, window.location.search), n[5] = L, n[6] = pe);
6535
+ let B = !pe && fe, me = m == null ? void 0 : o[m], he;
6536
+ n[7] !== me || n[8] !== o ? (he = me ?? o.at(0), n[7] = me, n[8] = o, n[9] = he) : he = n[9];
6537
+ let ge = he, _e;
6538
+ n[10] !== me || n[11] !== s.cells || n[12] !== u ? (_e = {
6539
+ activeCell: me,
6474
6540
  slideConfigs: s.cells,
6475
6541
  noOutputIds: u
6476
- }, n[10] = he, n[11] = s.cells, n[12] = u, n[13] = ve) : ve = n[13];
6477
- let { parkedPreviewCell: B, isHeldEdit: ye, isNoOutputPreview: be, heldEditCellId: xe, heldShowsCode: Se, toggleHeldShowsCode: Ce } = da(ve), we;
6478
- n[14] !== R || n[15] !== s.cells || n[16] !== de ? (we = (e) => la({
6542
+ }, n[10] = me, n[11] = s.cells, n[12] = u, n[13] = _e) : _e = n[13];
6543
+ let { parkedPreviewCell: V, isHeldEdit: ve, isNoOutputPreview: H, heldEditCellId: ye, heldShowsCode: be, toggleHeldShowsCode: xe } = ta(_e), Se;
6544
+ n[14] !== fe || n[15] !== s.cells || n[16] !== ce ? (Se = (e) => $i({
6479
6545
  cells: s.cells,
6480
6546
  cellId: e,
6481
- showCodeOverrides: de,
6482
- codeAvailable: R
6483
- }), n[14] = R, n[15] = s.cells, n[16] = de, n[17] = we) : we = n[17];
6484
- let V = we, H = he?.id ?? _e?.id, Te;
6485
- n[18] !== H || n[19] !== Se || n[20] !== ye || n[21] !== V ? (Te = ye ? Se : V(H), n[18] = H, n[19] = Se, n[20] = ye, n[21] = V, n[22] = Te) : Te = n[22];
6547
+ showCodeOverrides: ce,
6548
+ codeAvailable: fe
6549
+ }), n[14] = fe, n[15] = s.cells, n[16] = ce, n[17] = Se) : Se = n[17];
6550
+ let Ce = Se, we = me?.id ?? ge?.id, Te;
6551
+ n[18] !== we || n[19] !== be || n[20] !== ve || n[21] !== Ce ? (Te = ve ? be : Ce(we), n[18] = we, n[19] = be, n[20] = ve, n[21] = Ce, n[22] = Te) : Te = n[22];
6486
6552
  let Ee = Te, De;
6487
- n[23] !== H || n[24] !== R || n[25] !== s.cells ? (De = R && H != null && (s.cells.get(H)?.showCode ?? !1), n[23] = H, n[24] = R, n[25] = s.cells, n[26] = De) : De = n[26];
6553
+ n[23] !== we || n[24] !== fe || n[25] !== s.cells ? (De = fe && we != null && (s.cells.get(we)?.showCode ?? !1), n[23] = we, n[24] = fe, n[25] = s.cells, n[26] = De) : De = n[26];
6488
6554
  let Oe = De, ke;
6489
- n[27] !== xe || n[28] !== s.cells || n[29] !== u ? (ke = (e) => ua({
6555
+ n[27] !== ye || n[28] !== s.cells || n[29] !== u ? (ke = (e) => ea({
6490
6556
  cell: e,
6491
6557
  noOutputIds: u,
6492
- heldEditCellId: xe,
6558
+ heldEditCellId: ye,
6493
6559
  slideConfigs: s.cells
6494
- }), n[27] = xe, n[28] = s.cells, n[29] = u, n[30] = ke) : ke = n[30];
6560
+ }), n[27] = ye, n[28] = s.cells, n[29] = u, n[30] = ke) : ke = n[30];
6495
6561
  let Ae;
6496
- n[31] !== o || n[32] !== ke ? (Ae = cr({
6562
+ n[31] !== o || n[32] !== ke ? (Ae = tr({
6497
6563
  cells: o,
6498
6564
  getType: ke
6499
6565
  }), n[31] = o, n[32] = ke, n[33] = Ae) : Ae = n[33];
6500
6566
  let je = Ae, Me;
6501
- n[34] !== je || n[35] !== o ? (Me = lr({
6567
+ n[34] !== je || n[35] !== o ? (Me = nr({
6502
6568
  composition: je,
6503
6569
  cells: o,
6504
- getId: ba
6570
+ getId: ua
6505
6571
  }), n[34] = je, n[35] = o, n[36] = Me) : Me = n[36];
6506
- let { cellToTarget: Ne, targetToCellIndex: Pe } = Me, Fe = s.deck?.transition ?? "slide", U = s.deck?.verticalAlign, Ie;
6507
- n[37] === U ? Ie = n[38] : (Ie = pa(U), n[37] = U, n[38] = Ie);
6508
- let Le = Ie, Re;
6509
- n[39] === Symbol.for("react.memo_cache_sentinel") ? (Re = f(window.location.href), n[39] = Re) : Re = n[39];
6510
- let ze = Re, Be;
6511
- n[40] !== Fe || n[41] !== re || n[42] !== I ? (Be = {
6572
+ let { cellToTarget: Ne, targetToCellIndex: Pe } = Me, Fe = s.deck?.transition ?? "slide", Ie = s.deck?.verticalAlign, Le;
6573
+ n[37] === Ie ? Le = n[38] : (Le = ra(Ie), n[37] = Ie, n[38] = Le);
6574
+ let Re = Le, ze;
6575
+ n[39] === Symbol.for("react.memo_cache_sentinel") ? (ze = f(window.location.href), n[39] = ze) : ze = n[39];
6576
+ let Be = ze, U;
6577
+ n[40] !== Fe || n[41] !== re || n[42] !== ne ? (U = {
6512
6578
  embedded: !0,
6513
- width: I,
6579
+ width: ne,
6514
6580
  height: re,
6515
6581
  center: !1,
6516
6582
  minScale: .2,
6517
6583
  maxScale: 2,
6518
6584
  transition: Fe,
6519
- keyboardCondition: xa,
6520
- url: ze,
6585
+ keyboardCondition: da,
6586
+ url: Be,
6521
6587
  scrollActivationWidth: 0
6522
- }, n[40] = Fe, n[41] = re, n[42] = I, n[43] = Be) : Be = n[43];
6523
- let Ve = Be, He;
6524
- n[44] !== m || n[45] !== ce || n[46] !== Ne || n[47] !== o ? (He = (e) => {
6588
+ }, n[40] = Fe, n[41] = re, n[42] = ne, n[43] = U) : U = n[43];
6589
+ let Ve = U, He;
6590
+ n[44] !== m || n[45] !== oe || n[46] !== Ne || n[47] !== o ? (He = (e) => {
6525
6591
  if (m == null && window.location.hash.startsWith("#/")) {
6526
- if (!ce) return;
6527
- window.dispatchEvent(new HashChangeEvent("hashchange")), ra(e);
6592
+ if (!oe) return;
6593
+ window.dispatchEvent(new HashChangeEvent("hashchange")), qi(e);
6528
6594
  return;
6529
6595
  }
6530
- let t = fr({
6596
+ let t = ar({
6531
6597
  activeIndex: m,
6532
6598
  cells: o,
6533
6599
  cellToTarget: Ne,
6534
- getId: Sa
6535
- }), n = t && pr(e.getIndices(), t);
6536
- n && (e.slide(n.h, n.v, n.f), ra(e));
6537
- }, n[44] = m, n[45] = ce, n[46] = Ne, n[47] = o, n[48] = He) : He = n[48];
6538
- let Ue = M(He), We;
6600
+ getId: fa
6601
+ }), n = t && or(e.getIndices(), t);
6602
+ n && (e.slide(n.h, n.v, n.f), qi(e));
6603
+ }, n[44] = m, n[45] = oe, n[46] = Ne, n[47] = o, n[48] = He) : He = n[48];
6604
+ let Ue = j(He), We;
6539
6605
  n[49] === Ue ? We = n[50] : (We = () => {
6540
- let e = ne.current;
6606
+ let e = I.current;
6541
6607
  e != null && Ue(e);
6542
6608
  }, n[49] = Ue, n[50] = We);
6543
6609
  let Ge;
6544
- n[51] !== m || n[52] !== ce || n[53] !== Ne || n[54] !== Ue || n[55] !== o ? (Ge = [
6610
+ n[51] !== m || n[52] !== oe || n[53] !== Ne || n[54] !== Ue || n[55] !== o ? (Ge = [
6545
6611
  m,
6546
- ce,
6612
+ oe,
6547
6613
  Ne,
6548
6614
  o,
6549
6615
  Ue
6550
- ], n[51] = m, n[52] = ce, n[53] = Ne, n[54] = Ue, n[55] = o, n[56] = Ge) : Ge = n[56], (0, P.useEffect)(We, Ge);
6616
+ ], n[51] = m, n[52] = oe, n[53] = Ne, n[54] = Ue, n[55] = o, n[56] = Ge) : Ge = n[56], (0, P.useEffect)(We, Ge);
6551
6617
  let Ke;
6552
- n[57] !== H || n[58] !== Oe || n[59] !== ye || n[60] !== Ce ? (Ke = () => {
6553
- if (!(H == null || Oe)) {
6554
- if (ye) {
6555
- Ce();
6618
+ n[57] !== we || n[58] !== Oe || n[59] !== ve || n[60] !== xe ? (Ke = () => {
6619
+ if (!(we == null || Oe)) {
6620
+ if (ve) {
6621
+ xe();
6556
6622
  return;
6557
6623
  }
6558
- (0, P.startTransition)(() => L((e) => {
6624
+ (0, P.startTransition)(() => le((e) => {
6559
6625
  let t = new Set(e);
6560
- return t.has(H) ? t.delete(H) : t.add(H), t;
6626
+ return t.has(we) ? t.delete(we) : t.add(we), t;
6561
6627
  }));
6562
6628
  }
6563
- }, n[57] = H, n[58] = Oe, n[59] = ye, n[60] = Ce, n[61] = Ke) : Ke = n[61];
6564
- let qe = M(Ke), Je, Ye;
6565
- n[62] !== z || n[63] !== qe ? (Je = () => {
6566
- let e = ne.current;
6567
- return e && na({
6629
+ }, n[57] = we, n[58] = Oe, n[59] = ve, n[60] = xe, n[61] = Ke) : Ke = n[61];
6630
+ let qe = j(Ke), Je, Ye;
6631
+ n[62] !== B || n[63] !== qe ? (Je = () => {
6632
+ let e = I.current;
6633
+ return e && Ki({
6568
6634
  deck: e,
6569
- enabled: z,
6635
+ enabled: B,
6570
6636
  onToggle: qe
6571
6637
  }), () => {
6572
- ne.current?.removeKeyBinding(ta);
6638
+ I.current?.removeKeyBinding(Gi);
6573
6639
  };
6574
- }, Ye = [z, qe], n[62] = z, n[63] = qe, n[64] = Je, n[65] = Ye) : (Je = n[64], Ye = n[65]), (0, P.useEffect)(Je, Ye);
6640
+ }, Ye = [B, qe], n[62] = B, n[63] = qe, n[64] = Je, n[65] = Ye) : (Je = n[64], Ye = n[65]), (0, P.useEffect)(Je, Ye);
6575
6641
  let Xe;
6576
- n[66] !== x || n[67] !== B || n[68] !== Pe ? (Xe = (e) => {
6577
- if (B != null) return;
6578
- let t = ur(Pe, e.getIndices());
6642
+ n[66] !== x || n[67] !== V || n[68] !== Pe ? (Xe = (e) => {
6643
+ if (V != null) return;
6644
+ let t = rr(Pe, e.getIndices());
6579
6645
  t != null && x?.(t);
6580
- }, n[66] = x, n[67] = B, n[68] = Pe, n[69] = Xe) : Xe = n[69];
6581
- let Ze = M(Xe), Qe;
6582
- n[70] === Ze ? Qe = n[71] : (Qe = () => {
6583
- let e = ne.current;
6584
- e && Ze(e);
6585
- }, n[70] = Ze, n[71] = Qe);
6586
- let $e = M(Qe), et;
6587
- n[72] !== ce || n[73] !== z || n[74] !== Ue || n[75] !== Ze || n[76] !== qe ? (et = (e) => {
6588
- Ue(e), ce && Ze(e), na({
6646
+ }, n[66] = x, n[67] = V, n[68] = Pe, n[69] = Xe) : Xe = n[69];
6647
+ let W = j(Xe), Ze;
6648
+ n[70] === W ? Ze = n[71] : (Ze = () => {
6649
+ let e = I.current;
6650
+ e && W(e);
6651
+ }, n[70] = W, n[71] = Ze);
6652
+ let Qe = j(Ze), $e;
6653
+ n[72] !== oe || n[73] !== B || n[74] !== Ue || n[75] !== W || n[76] !== qe ? ($e = (e) => {
6654
+ Ue(e), oe && W(e), Ki({
6589
6655
  deck: e,
6590
- enabled: z,
6656
+ enabled: B,
6591
6657
  onToggle: qe
6592
6658
  });
6593
6659
  let t = e.getSlidesElement()?.closest(".reveal");
6594
6660
  t instanceof HTMLElement && (t.tabIndex = -1, t.focus({ preventScroll: !0 }));
6595
- }, n[72] = ce, n[73] = z, n[74] = Ue, n[75] = Ze, n[76] = qe, n[77] = et) : et = n[77];
6596
- let tt = M(et), nt;
6597
- n[78] !== m || n[79] !== x || n[80] !== B || n[81] !== o ? (nt = (e) => {
6598
- if (!B || m == null || i.fromInput(e)) return;
6599
- let t = oa(e);
6661
+ }, n[72] = oe, n[73] = B, n[74] = Ue, n[75] = W, n[76] = qe, n[77] = $e) : $e = n[77];
6662
+ let et = j($e), tt;
6663
+ n[78] !== m || n[79] !== x || n[80] !== V || n[81] !== o ? (tt = (e) => {
6664
+ if (!V || m == null || i.fromInput(e)) return;
6665
+ let t = Xi(e);
6600
6666
  if (t === 0) return;
6601
6667
  e.preventDefault(), e.stopPropagation();
6602
6668
  let n = m + t;
6603
6669
  n < 0 || n >= o.length || x?.(n);
6604
- }, n[78] = m, n[79] = x, n[80] = B, n[81] = o, n[82] = nt) : nt = n[82];
6605
- let rt = M(nt), it;
6606
- n[83] === $e ? it = n[84] : (it = () => {
6607
- $e();
6608
- }, n[83] = $e, n[84] = it);
6609
- let at = M(it), ot;
6610
- n[85] === Symbol.for("react.memo_cache_sentinel") ? (ot = { capture: !0 }, n[85] = ot) : ot = n[85], t(document, "keydown", rt, ot);
6611
- let st = ye ? null : be ? "Hidden as there is no output" : "Skipped in presentation", ct;
6612
- n[86] !== Se || n[87] !== ye || n[88] !== B?.id || n[89] !== V ? (ct = ye ? Se : V(B?.id), n[86] = Se, n[87] = ye, n[88] = B?.id, n[89] = V, n[90] = ct) : ct = n[90];
6613
- let lt = ct, ut;
6614
- n[91] !== N || n[92] !== be || n[93] !== lt ? (ut = ga({
6615
- isNoOutputPreview: be,
6670
+ }, n[78] = m, n[79] = x, n[80] = V, n[81] = o, n[82] = tt) : tt = n[82];
6671
+ let nt = j(tt), rt;
6672
+ n[83] === Qe ? rt = n[84] : (rt = () => {
6673
+ Qe();
6674
+ }, n[83] = Qe, n[84] = rt);
6675
+ let G = j(rt), it;
6676
+ n[85] === Symbol.for("react.memo_cache_sentinel") ? (it = { capture: !0 }, n[85] = it) : it = n[85], t(document, "keydown", nt, it);
6677
+ let at = ve ? null : H ? "Hidden as there is no output" : "Skipped in presentation", ot;
6678
+ n[86] !== be || n[87] !== ve || n[88] !== V?.id || n[89] !== Ce ? (ot = ve ? be : Ce(V?.id), n[86] = be, n[87] = ve, n[88] = V?.id, n[89] = Ce, n[90] = ot) : ot = n[90];
6679
+ let st = ot, ct;
6680
+ n[91] !== N || n[92] !== H || n[93] !== st ? (ct = oa({
6681
+ isNoOutputPreview: H,
6616
6682
  isEditable: N,
6617
- showCode: lt
6618
- }), n[91] = N, n[92] = be, n[93] = lt, n[94] = ut) : ut = n[94];
6619
- let dt = ut, W;
6620
- n[95] !== re || n[96] !== I ? (W = {
6621
- width: I,
6683
+ showCode: st
6684
+ }), n[91] = N, n[92] = H, n[93] = st, n[94] = ct) : ct = n[94];
6685
+ let lt = ct, ut;
6686
+ n[95] !== re || n[96] !== ne ? (ut = {
6687
+ width: ne,
6622
6688
  height: re
6623
- }, n[95] = re, n[96] = I, n[97] = W) : W = n[97];
6624
- let ft;
6625
- if (n[98] !== je.stacks || n[99] !== N || n[100] !== s.cells || n[101] !== V || n[102] !== Le) {
6689
+ }, n[95] = re, n[96] = ne, n[97] = ut) : ut = n[97];
6690
+ let dt;
6691
+ if (n[98] !== je.stacks || n[99] !== N || n[100] !== s.cells || n[101] !== Ce || n[102] !== Re) {
6626
6692
  let e;
6627
- n[104] !== N || n[105] !== s.cells || n[106] !== V || n[107] !== Le ? (e = (e, t) => e.subslides.length === 1 ? /* @__PURE__ */ (0, G.jsx)(ha, {
6693
+ n[104] !== N || n[105] !== s.cells || n[106] !== Ce || n[107] !== Re ? (e = (e, t) => e.subslides.length === 1 ? /* @__PURE__ */ (0, K.jsx)(aa, {
6628
6694
  subslide: e.subslides[0],
6629
- resolveShowCode: V,
6695
+ resolveShowCode: Ce,
6630
6696
  isEditable: N,
6631
6697
  slideConfigs: s.cells,
6632
- contentStyle: Le
6633
- }, t) : /* @__PURE__ */ (0, G.jsx)(wt, { children: e.subslides.map((e, t) => /* @__PURE__ */ (0, G.jsx)(ha, {
6698
+ contentStyle: Re
6699
+ }, t) : /* @__PURE__ */ (0, K.jsx)(_t, { children: e.subslides.map((e, t) => /* @__PURE__ */ (0, K.jsx)(aa, {
6634
6700
  subslide: e,
6635
- resolveShowCode: V,
6701
+ resolveShowCode: Ce,
6636
6702
  isEditable: N,
6637
6703
  slideConfigs: s.cells,
6638
- contentStyle: Le
6639
- }, t)) }, t), n[104] = N, n[105] = s.cells, n[106] = V, n[107] = Le, n[108] = e) : e = n[108], ft = je.stacks.map(e), n[98] = je.stacks, n[99] = N, n[100] = s.cells, n[101] = V, n[102] = Le, n[103] = ft;
6640
- } else ft = n[103];
6704
+ contentStyle: Re
6705
+ }, t)) }, t), n[104] = N, n[105] = s.cells, n[106] = Ce, n[107] = Re, n[108] = e) : e = n[108], dt = je.stacks.map(e), n[98] = je.stacks, n[99] = N, n[100] = s.cells, n[101] = Ce, n[102] = Re, n[103] = dt;
6706
+ } else dt = n[103];
6641
6707
  let pt;
6642
- n[109] !== ue || n[110] !== tt || n[111] !== at || n[112] !== $e || n[113] !== Ve || n[114] !== ft ? (pt = /* @__PURE__ */ (0, G.jsx)(yt, {
6643
- deckRef: ne,
6708
+ n[109] !== se || n[110] !== et || n[111] !== G || n[112] !== Qe || n[113] !== Ve || n[114] !== dt ? (pt = /* @__PURE__ */ (0, K.jsx)(ft, {
6709
+ deckRef: I,
6644
6710
  className: "aspect-video w-full overflow-hidden border rounded bg-background mo-slides-theme prose-slides focus:outline-hidden focus-visible:outline-hidden",
6645
6711
  config: Ve,
6646
- onReady: tt,
6647
- onSlideChange: at,
6648
- onFragmentShown: $e,
6649
- onFragmentHidden: $e,
6650
- plugins: ue,
6651
- children: ft
6652
- }), n[109] = ue, n[110] = tt, n[111] = at, n[112] = $e, n[113] = Ve, n[114] = ft, n[115] = pt) : pt = n[115];
6712
+ onReady: et,
6713
+ onSlideChange: G,
6714
+ onFragmentShown: Qe,
6715
+ onFragmentHidden: Qe,
6716
+ plugins: se,
6717
+ children: dt
6718
+ }), n[109] = se, n[110] = et, n[111] = G, n[112] = Qe, n[113] = Ve, n[114] = dt, n[115] = pt) : pt = n[115];
6653
6719
  let mt;
6654
- n[116] !== N || n[117] !== be || n[118] !== B || n[119] !== st || n[120] !== lt || n[121] !== dt || n[122] !== Le ? (mt = B && /* @__PURE__ */ (0, G.jsxs)("div", {
6720
+ n[116] !== N || n[117] !== H || n[118] !== V || n[119] !== at || n[120] !== st || n[121] !== lt || n[122] !== Re ? (mt = V && /* @__PURE__ */ (0, K.jsxs)("div", {
6655
6721
  className: "absolute inset-0 z-10 border rounded bg-background flex flex-col overflow-hidden",
6656
- "aria-label": st ?? void 0,
6657
- children: [st && /* @__PURE__ */ (0, G.jsxs)("div", {
6722
+ "aria-label": at ?? void 0,
6723
+ children: [at && /* @__PURE__ */ (0, K.jsxs)("div", {
6658
6724
  className: "flex items-center gap-1.5 px-3 py-1.5 text-xs text-muted-foreground border-b bg-muted/40",
6659
- children: [/* @__PURE__ */ (0, G.jsx)(d, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, G.jsx)("span", { children: st })]
6660
- }), /* @__PURE__ */ (0, G.jsx)("div", {
6725
+ children: [/* @__PURE__ */ (0, K.jsx)(d, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, K.jsx)("span", { children: at })]
6726
+ }), /* @__PURE__ */ (0, K.jsx)("div", {
6661
6727
  className: "flex-1 overflow-auto flex",
6662
- children: /* @__PURE__ */ (0, G.jsx)("div", {
6663
- className: dt ? "mo-slide-content flex flex-col gap-3" : "mo-slide-content",
6664
- style: Le,
6665
- children: /* @__PURE__ */ (0, G.jsx)(_a, {
6666
- cell: B,
6667
- isNoOutputPreview: be,
6728
+ children: /* @__PURE__ */ (0, K.jsx)("div", {
6729
+ className: lt ? "mo-slide-content flex flex-col gap-3" : "mo-slide-content",
6730
+ style: Re,
6731
+ children: /* @__PURE__ */ (0, K.jsx)(sa, {
6732
+ cell: V,
6733
+ isNoOutputPreview: H,
6668
6734
  isEditable: N,
6669
- showCode: lt
6735
+ showCode: st
6670
6736
  })
6671
6737
  })
6672
6738
  })]
6673
- }, B.id), n[116] = N, n[117] = be, n[118] = B, n[119] = st, n[120] = lt, n[121] = dt, n[122] = Le, n[123] = mt) : mt = n[123];
6739
+ }, V.id), n[116] = N, n[117] = H, n[118] = V, n[119] = at, n[120] = st, n[121] = lt, n[122] = Re, n[123] = mt) : mt = n[123];
6674
6740
  let ht;
6675
- n[124] !== Ee || n[125] !== Oe || n[126] !== z || n[127] !== qe ? (ht = z && /* @__PURE__ */ (0, G.jsx)(A, {
6741
+ n[124] !== Ee || n[125] !== Oe || n[126] !== B || n[127] !== qe ? (ht = B && /* @__PURE__ */ (0, K.jsx)(A, {
6676
6742
  content: Oe ? "Code is always shown for this slide" : Ee ? "Hide code (C)" : "Show code (C)",
6677
- children: /* @__PURE__ */ (0, G.jsx)(a, {
6743
+ children: /* @__PURE__ */ (0, K.jsx)(a, {
6678
6744
  "data-testid": "marimo-plugin-slides-toggle-code",
6679
6745
  variant: "ghost",
6680
6746
  size: "icon",
@@ -6683,118 +6749,118 @@ var _a = (e) => {
6683
6749
  "aria-disabled": Oe,
6684
6750
  "aria-label": Oe ? "Code always shown" : Ee ? "Hide code" : "Show code",
6685
6751
  onClick: qe,
6686
- children: /* @__PURE__ */ (0, G.jsx)(T, { className: "h-4 w-4" })
6752
+ children: /* @__PURE__ */ (0, K.jsx)(T, { className: "h-4 w-4" })
6687
6753
  })
6688
- }), n[124] = Ee, n[125] = Oe, n[126] = z, n[127] = qe, n[128] = ht) : ht = n[128];
6754
+ }), n[124] = Ee, n[125] = Oe, n[126] = B, n[127] = qe, n[128] = ht) : ht = n[128];
6689
6755
  let gt;
6690
- n[129] === Symbol.for("react.memo_cache_sentinel") ? (gt = /* @__PURE__ */ (0, G.jsx)(A, {
6756
+ n[129] === Symbol.for("react.memo_cache_sentinel") ? (gt = /* @__PURE__ */ (0, K.jsx)(A, {
6691
6757
  content: "Fullscreen (F)",
6692
- children: /* @__PURE__ */ (0, G.jsx)(a, {
6758
+ children: /* @__PURE__ */ (0, K.jsx)(a, {
6693
6759
  "data-testid": "marimo-plugin-slides-fullscreen",
6694
6760
  variant: "ghost",
6695
6761
  size: "icon",
6696
6762
  className: "text-muted-foreground h-7 w-7",
6697
6763
  "aria-label": "Enter fullscreen",
6698
6764
  onClick: () => {
6699
- ne.current?.getViewportElement()?.requestFullscreen().catch(Ca);
6765
+ I.current?.getViewportElement()?.requestFullscreen().catch(pa);
6700
6766
  },
6701
- children: /* @__PURE__ */ (0, G.jsx)(w, { className: "h-4 w-4" })
6767
+ children: /* @__PURE__ */ (0, K.jsx)(w, { className: "h-4 w-4" })
6702
6768
  })
6703
6769
  }), n[129] = gt) : gt = n[129];
6704
- let _t;
6705
- n[130] === ht ? _t = n[131] : (_t = /* @__PURE__ */ (0, G.jsxs)("div", {
6770
+ let vt;
6771
+ n[130] === ht ? vt = n[131] : (vt = /* @__PURE__ */ (0, K.jsxs)("div", {
6706
6772
  className: "absolute top-2 right-2 z-20 opacity-0 group-hover:opacity-70 text-muted-foreground transition-opacity",
6707
6773
  children: [ht, gt]
6708
- }), n[130] = ht, n[131] = _t);
6709
- let vt;
6710
- n[132] !== W || n[133] !== pt || n[134] !== mt || n[135] !== _t ? (vt = /* @__PURE__ */ (0, G.jsx)("div", {
6774
+ }), n[130] = ht, n[131] = vt);
6775
+ let yt;
6776
+ n[132] !== ut || n[133] !== pt || n[134] !== mt || n[135] !== vt ? (yt = /* @__PURE__ */ (0, K.jsx)("div", {
6711
6777
  ref: te,
6712
6778
  className: "h-full w-full min-w-0 flex items-center justify-center overflow-hidden",
6713
- children: /* @__PURE__ */ (0, G.jsxs)("div", {
6779
+ children: /* @__PURE__ */ (0, K.jsxs)("div", {
6714
6780
  className: "group relative",
6715
- style: W,
6781
+ style: ut,
6716
6782
  children: [
6717
6783
  pt,
6718
6784
  mt,
6719
- _t
6785
+ vt
6720
6786
  ]
6721
6787
  })
6722
- }), n[132] = W, n[133] = pt, n[134] = mt, n[135] = _t, n[136] = vt) : vt = n[136];
6723
- let K = vt;
6788
+ }), n[132] = ut, n[133] = pt, n[134] = mt, n[135] = vt, n[136] = yt) : yt = n[136];
6789
+ let bt = yt;
6724
6790
  if (E === "read") {
6725
6791
  let e;
6726
- return n[137] === K ? e = n[138] : (e = /* @__PURE__ */ (0, G.jsx)("div", {
6792
+ return n[137] === bt ? e = n[138] : (e = /* @__PURE__ */ (0, K.jsx)("div", {
6727
6793
  className: "flex-1 min-w-0 flex flex-row gap-3",
6728
- children: K
6729
- }), n[137] = K, n[138] = e), e;
6794
+ children: bt
6795
+ }), n[137] = bt, n[138] = e), e;
6730
6796
  }
6731
- let bt;
6732
- n[139] === K ? bt = n[140] : (bt = /* @__PURE__ */ (0, G.jsx)(p, {
6797
+ let xt;
6798
+ n[139] === bt ? xt = n[140] : (xt = /* @__PURE__ */ (0, K.jsx)(p, {
6733
6799
  defaultSize: 92,
6734
6800
  minSize: 60,
6735
- children: K
6736
- }), n[139] = K, n[140] = bt);
6737
- let xt;
6738
- n[141] === Symbol.for("react.memo_cache_sentinel") ? (xt = {
6801
+ children: bt
6802
+ }), n[139] = bt, n[140] = xt);
6803
+ let q;
6804
+ n[141] === Symbol.for("react.memo_cache_sentinel") ? (q = {
6739
6805
  coarse: 12,
6740
6806
  fine: 4
6741
- }, n[141] = xt) : xt = n[141];
6807
+ }, n[141] = q) : q = n[141];
6742
6808
  let St;
6743
- n[142] === ie ? St = n[143] : (St = /* @__PURE__ */ (0, G.jsx)(C, {
6809
+ n[142] === ie ? St = n[143] : (St = /* @__PURE__ */ (0, K.jsx)(C, {
6744
6810
  className: "mo-slides-notes-resize",
6745
- hitAreaMargins: xt,
6811
+ hitAreaMargins: q,
6746
6812
  disabled: ie
6747
6813
  }), n[142] = ie, n[143] = St);
6748
- let Ct = _e?.id, Tt;
6749
- n[144] !== s || n[145] !== l || n[146] !== Ct ? (Tt = /* @__PURE__ */ (0, G.jsx)(p, {
6814
+ let J = ge?.id, Ct;
6815
+ n[144] !== s || n[145] !== l || n[146] !== J ? (Ct = /* @__PURE__ */ (0, K.jsx)(p, {
6750
6816
  defaultSize: 10,
6751
6817
  minSize: 4,
6752
6818
  collapsible: !0,
6753
6819
  collapsedSize: 4,
6754
- children: /* @__PURE__ */ (0, G.jsx)(_r, {
6820
+ children: /* @__PURE__ */ (0, K.jsx)(ur, {
6755
6821
  layout: s,
6756
6822
  setLayout: l,
6757
- cellId: Ct
6823
+ cellId: J
6758
6824
  })
6759
- }), n[144] = s, n[145] = l, n[146] = Ct, n[147] = Tt) : Tt = n[147];
6760
- let q;
6761
- n[148] !== bt || n[149] !== St || n[150] !== Tt ? (q = /* @__PURE__ */ (0, G.jsxs)(_, {
6825
+ }), n[144] = s, n[145] = l, n[146] = J, n[147] = Ct) : Ct = n[147];
6826
+ let wt;
6827
+ n[148] !== xt || n[149] !== St || n[150] !== Ct ? (wt = /* @__PURE__ */ (0, K.jsxs)(_, {
6762
6828
  direction: "vertical",
6763
6829
  autoSaveId: "marimo:slides:notes-panel",
6764
6830
  className: "flex-1 min-w-0",
6765
6831
  children: [
6766
- bt,
6832
+ xt,
6767
6833
  St,
6768
- Tt
6834
+ Ct
6769
6835
  ]
6770
- }), n[148] = bt, n[149] = St, n[150] = Tt, n[151] = q) : q = n[151];
6771
- let Et;
6772
- n[152] !== _e || n[153] !== D || n[154] !== s || n[155] !== l ? (Et = /* @__PURE__ */ (0, G.jsx)(h, {
6836
+ }), n[148] = xt, n[149] = St, n[150] = Ct, n[151] = wt) : wt = n[151];
6837
+ let Tt;
6838
+ n[152] !== ge || n[153] !== D || n[154] !== s || n[155] !== l ? (Tt = /* @__PURE__ */ (0, K.jsx)(h, {
6773
6839
  configWidth: D,
6774
6840
  layout: s,
6775
6841
  setLayout: l,
6776
- activeConfigCell: _e
6777
- }), n[152] = _e, n[153] = D, n[154] = s, n[155] = l, n[156] = Et) : Et = n[156];
6778
- let Dt;
6779
- return n[157] !== q || n[158] !== Et ? (Dt = /* @__PURE__ */ (0, G.jsxs)("div", {
6842
+ activeConfigCell: ge
6843
+ }), n[152] = ge, n[153] = D, n[154] = s, n[155] = l, n[156] = Tt) : Tt = n[156];
6844
+ let Y;
6845
+ return n[157] !== wt || n[158] !== Tt ? (Y = /* @__PURE__ */ (0, K.jsxs)("div", {
6780
6846
  className: "flex-1 min-w-0 flex flex-row gap-3",
6781
- children: [q, Et]
6782
- }), n[157] = q, n[158] = Et, n[159] = Dt) : Dt = n[159], Dt;
6847
+ children: [wt, Tt]
6848
+ }), n[157] = wt, n[158] = Tt, n[159] = Y) : Y = n[159], Y;
6783
6849
  };
6784
- function ya() {
6850
+ function la() {
6785
6851
  return /* @__PURE__ */ new Set();
6786
6852
  }
6787
- function ba(e) {
6853
+ function ua(e) {
6788
6854
  return e.id;
6789
6855
  }
6790
- function xa(e) {
6856
+ function da(e) {
6791
6857
  return !i.fromInput(e);
6792
6858
  }
6793
- function Sa(e) {
6859
+ function fa(e) {
6794
6860
  return e.id;
6795
6861
  }
6796
- function Ca(e) {
6862
+ function pa(e) {
6797
6863
  n.error("Failed to request fullscreen", e);
6798
6864
  }
6799
6865
  //#endregion
6800
- export { ma as CellOutputBlock, ua as deckSlideType, va as default, ga as parkedRendersSource, la as shouldShowCode, na as syncCodeToggleKeyBinding, da as useParkedPreview };
6866
+ export { ia as CellOutputBlock, ea as deckSlideType, ca as default, oa as parkedRendersSource, $i as shouldShowCode, Ki as syncCodeToggleKeyBinding, ta as useParkedPreview };