@marimo-team/islands 0.23.16-dev6 → 0.23.16-dev62

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 (198) hide show
  1. package/dist/{ConnectedDataExplorerComponent-CJaUI-S-.js → ConnectedDataExplorerComponent-f9vLjQiF.js} +13 -13
  2. package/dist/{ErrorBoundary-DXlxsrTF.js → ErrorBoundary-DhLqwSWA.js} +3 -3
  3. package/dist/{any-language-editor-P9tjkj4n.js → any-language-editor-DifE-fl7.js} +5 -5
  4. package/dist/{button-BcSml68y.js → button-BSm8IXRU.js} +2 -4
  5. package/dist/{capabilities-BYLFYTYv.js → capabilities-C6OQ5YBO.js} +1 -1
  6. package/dist/{chat-ui-BdSDiVjk.js → chat-ui-DsZJj75A.js} +3117 -3120
  7. package/dist/{check-Cs-KV5XY.js → check-DP7U0H0G.js} +1 -1
  8. package/dist/{code-visibility-CfBftiVM.js → common-Bpnmu1Yz.js} +1085 -1053
  9. package/dist/{copy-Cs3yt6Vt.js → copy-DNq8q3zw.js} +2 -2
  10. package/dist/{dist-B96tMAst.js → dist-DIlxLFXG.js} +2 -2
  11. package/dist/{error-banner-DR7o3CbX.js → error-banner-B_GQfxxD.js} +2 -2
  12. package/dist/{esm-k8PIvuZW.js → esm-DzZVaNH4.js} +1 -1
  13. package/dist/{extends-Cq2JYHKy.js → extends-w2_S44bV.js} +4 -4
  14. package/dist/{formats-BFhkZJwd.js → formats-Dwq1THhr.js} +3 -3
  15. package/dist/{glide-data-editor--CaN-f27.js → glide-data-editor-B9K6-MJe.js} +9 -9
  16. package/dist/{html-to-image-DDENewl2.js → html-to-image-CZ1kLKkq.js} +7350 -6356
  17. package/dist/{input-DStQIuqD.js → input-C5K4VBvB.js} +7 -7
  18. package/dist/{label-DIk0QoFe.js → label-DjoYwqmj.js} +2 -2
  19. package/dist/{loader-CTHCI-qe.js → loader-DX-IDS7n.js} +1 -1
  20. package/dist/main.js +259 -194
  21. package/dist/{mermaid-CdSvixW2.js → mermaid-hv6IckVw.js} +5 -5
  22. package/dist/{node-sql-parser-DLl_zNw0.js → node-sql-parser-v1Vi-Fft.js} +16867 -16665
  23. package/dist/{process-output-2QPcgBQg.js → process-output-bVfbcx5_.js} +32 -28
  24. package/dist/{reveal-component-BclLkYnV.js → reveal-component-JIt3oSeU.js} +642 -634
  25. package/dist/{spec-CnaxwDqy.js → spec-CQKL_D3i.js} +4 -4
  26. package/dist/{strings-BYAhZnQi.js → strings-DIy9NAmg.js} +4 -4
  27. package/dist/style.css +1 -1
  28. package/dist/{swiper-component-DE94711u.js → swiper-component-CEdAYjb7.js} +2 -2
  29. package/dist/toDate-CqhBWjvO.js +713 -0
  30. package/dist/{tooltip-B-qh7UPB.js → tooltip-f-qR0iUx.js} +3 -3
  31. package/dist/{types-DQl7jVYK.js → types-DicH9Oi0.js} +1 -1
  32. package/dist/{useAsyncData-CvO8WUy3.js → useAsyncData-CYOQb1EW.js} +1 -1
  33. package/dist/{useDateFormatter-BSoGim-G.js → useDateFormatter-Bt2qr_XS.js} +2 -2
  34. package/dist/{useDeepCompareMemoize-J3MKRdA4.js → useDeepCompareMemoize-CSHQeQEI.js} +1 -1
  35. package/dist/{useIframeCapabilities-POcFXHbw.js → useIframeCapabilities-kA09ykNq.js} +1 -1
  36. package/dist/{useLifecycle-DqPxHgAN.js → useLifecycle-CMJGqBaY.js} +3 -3
  37. package/dist/{useTheme-XMq9mNf_.js → useTheme-DYfby65G.js} +2 -2
  38. package/dist/{vega-component-CrFoZT1S.js → vega-component-C7nO5zcf.js} +10 -10
  39. package/dist/{zod-D0yOqoGe.js → zod-BUcyXSdR.js} +1 -1
  40. package/package.json +3 -4
  41. package/src/__mocks__/requests.ts +56 -4
  42. package/src/components/data-table/__tests__/__snapshots__/chart-spec-model.test.ts.snap +174 -21
  43. package/src/components/data-table/__tests__/chart-spec-model.test.ts +102 -1
  44. package/src/components/data-table/__tests__/columns.test.tsx +9 -1
  45. package/src/components/data-table/column-summary/chart-spec-model.tsx +163 -103
  46. package/src/components/data-table/column-summary/legacy-chart-spec.ts +15 -7
  47. package/src/components/data-table/column-summary/utils.ts +26 -7
  48. package/src/components/data-table/columns.tsx +11 -1
  49. package/src/components/data-table/types.ts +1 -1
  50. package/src/components/editor/__tests__/viewer-banner.test.tsx +14 -0
  51. package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +99 -18
  52. package/src/components/editor/actions/__tests__/pdf-export.test.ts +32 -13
  53. package/src/components/editor/actions/pair-with-agent-commands.ts +21 -10
  54. package/src/components/editor/actions/pair-with-agent-modal.tsx +2 -2
  55. package/src/components/editor/actions/pdf-export.ts +11 -14
  56. package/src/components/editor/actions/useNotebookActions.tsx +28 -19
  57. package/src/components/editor/cell/code/__tests__/cell-editor-activity-lifecycle.test.ts +250 -0
  58. package/src/components/editor/cell/code/cell-editor.tsx +13 -7
  59. package/src/components/editor/chrome/__tests__/state.test.ts +7 -1
  60. package/src/components/editor/chrome/panels/__tests__/logs-panel.test.tsx +25 -0
  61. package/src/components/editor/chrome/panels/__tests__/panel-accordion-state.test.ts +42 -0
  62. package/src/components/editor/chrome/panels/file-explorer-panel.tsx +6 -17
  63. package/src/components/editor/chrome/panels/logs-panel.tsx +12 -2
  64. package/src/components/editor/chrome/panels/panel-accordion-state.ts +51 -0
  65. package/src/components/editor/chrome/panels/session-panel.tsx +5 -16
  66. package/src/components/editor/chrome/panels/write-secret-modal.tsx +40 -12
  67. package/src/components/editor/chrome/state.ts +10 -0
  68. package/src/components/editor/connections/__tests__/json-credentials.test.ts +114 -0
  69. package/src/components/editor/connections/__tests__/paths.test.ts +39 -0
  70. package/src/components/editor/connections/__tests__/quick-add-data-sources.test.tsx +113 -0
  71. package/src/components/editor/connections/add-connection-dialog.tsx +2 -0
  72. package/src/components/editor/connections/components.tsx +6 -2
  73. package/src/components/editor/connections/database/__tests__/__snapshots__/as-code.test.ts.snap +27 -5
  74. package/src/components/editor/connections/database/__tests__/as-code.test.ts +33 -0
  75. package/src/components/editor/connections/database/as-code.ts +37 -13
  76. package/src/components/editor/connections/database/schemas.ts +6 -5
  77. package/src/components/editor/connections/form-renderers.tsx +99 -1
  78. package/src/components/editor/connections/json-credentials.ts +57 -0
  79. package/src/components/editor/connections/paths.ts +21 -0
  80. package/src/components/editor/connections/quick-add-data-sources.tsx +106 -0
  81. package/src/components/editor/connections/secret-combobox.tsx +41 -20
  82. package/src/components/editor/connections/storage/__tests__/__snapshots__/as-code.test.ts.snap +88 -2
  83. package/src/components/editor/connections/storage/__tests__/as-code.test.ts +128 -8
  84. package/src/components/editor/connections/storage/as-code.ts +79 -36
  85. package/src/components/editor/connections/storage/schemas.ts +85 -44
  86. package/src/components/editor/file-tree/__tests__/renderers.test.ts +31 -0
  87. package/src/components/editor/file-tree/file-viewer.tsx +11 -7
  88. package/src/components/editor/file-tree/renderers.tsx +21 -0
  89. package/src/components/editor/renderers/vertical-layout/vertical-layout.tsx +2 -2
  90. package/src/components/editor/viewer-banner.tsx +6 -1
  91. package/src/components/forms/form.tsx +59 -24
  92. package/src/components/forms/options.ts +2 -1
  93. package/src/components/slides/__tests__/cell-output-block.test.tsx +40 -0
  94. package/src/components/slides/__tests__/slide-cell-view.test.tsx +33 -0
  95. package/src/components/slides/reveal-component.tsx +22 -17
  96. package/src/components/slides/slide-cell-view.tsx +1 -1
  97. package/src/components/slides/slides.css +4 -2
  98. package/src/components/static-html/share-modal.tsx +1 -1
  99. package/src/components/ui/input.tsx +1 -1
  100. package/src/core/ai/context/providers/file.ts +8 -29
  101. package/src/core/cells/__tests__/cells.test.ts +12 -2
  102. package/src/core/cells/__tests__/logs.test.ts +5 -5
  103. package/src/core/cells/cells.ts +17 -4
  104. package/src/core/cells/document-changes.ts +1 -0
  105. package/src/core/cells/logs.ts +14 -4
  106. package/src/core/codemirror/cm.ts +3 -0
  107. package/src/core/codemirror/code-lens/__tests__/actions.test.ts +68 -0
  108. package/src/core/codemirror/code-lens/__tests__/analyzer.test.ts +224 -0
  109. package/src/core/codemirror/code-lens/__tests__/entities.test.ts +175 -0
  110. package/src/core/codemirror/code-lens/__tests__/extension.test.ts +325 -0
  111. package/src/core/codemirror/code-lens/__tests__/perf.test.ts +121 -0
  112. package/src/core/codemirror/code-lens/__tests__/popover.test.ts +93 -0
  113. package/src/core/codemirror/code-lens/actions.ts +33 -0
  114. package/src/core/codemirror/code-lens/analyzer.ts +284 -0
  115. package/src/core/codemirror/code-lens/entities.ts +123 -0
  116. package/src/core/codemirror/code-lens/extension.ts +298 -0
  117. package/src/core/codemirror/code-lens/icons.ts +36 -0
  118. package/src/core/codemirror/code-lens/popover.tsx +240 -0
  119. package/src/core/codemirror/copilot/__tests__/language-server.test.ts +396 -100
  120. package/src/core/codemirror/copilot/__tests__/transport.test.ts +128 -540
  121. package/src/core/codemirror/copilot/language-server.ts +182 -70
  122. package/src/core/codemirror/copilot/transport.ts +15 -207
  123. package/src/core/codemirror/copilot/types.ts +9 -2
  124. package/src/core/codemirror/find-replace/__tests__/navigate.test.ts +42 -30
  125. package/src/core/codemirror/find-replace/navigate.ts +2 -0
  126. package/src/core/codemirror/go-to-definition/__tests__/commands.test.ts +24 -3
  127. package/src/core/codemirror/go-to-definition/commands.ts +93 -90
  128. package/src/core/codemirror/keymaps/__tests__/keymaps.test.ts +31 -2
  129. package/src/core/codemirror/keymaps/keymaps.ts +12 -0
  130. package/src/core/codemirror/language/__tests__/sql.test.ts +627 -61
  131. package/src/core/codemirror/language/languages/python.ts +23 -11
  132. package/src/core/codemirror/language/languages/sql/completion-store.ts +5 -1
  133. package/src/core/codemirror/language/languages/sql/renderers.tsx +3 -3
  134. package/src/core/codemirror/language/languages/sql/sql.ts +251 -16
  135. package/src/core/codemirror/lsp/__tests__/federated-lsp.test.ts +161 -0
  136. package/src/core/codemirror/lsp/__tests__/log-messages.test.ts +53 -0
  137. package/src/core/codemirror/lsp/__tests__/normalize-markdown-math.test.ts +25 -0
  138. package/src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts +598 -156
  139. package/src/core/codemirror/lsp/__tests__/transports.test.ts +112 -0
  140. package/src/core/codemirror/lsp/federated-lsp.ts +76 -23
  141. package/src/core/codemirror/lsp/log-messages.ts +37 -0
  142. package/src/core/codemirror/lsp/normalize-markdown-math.ts +8 -4
  143. package/src/core/codemirror/lsp/notebook-lsp.ts +220 -56
  144. package/src/core/codemirror/lsp/transports.ts +8 -1
  145. package/src/core/codemirror/lsp/types.ts +68 -8
  146. package/src/core/codemirror/lsp/utils.ts +14 -0
  147. package/src/core/codemirror/python-node-names.ts +90 -0
  148. package/src/core/codemirror/reactive-references/analyzer.ts +52 -57
  149. package/src/core/codemirror/utils.ts +28 -0
  150. package/src/core/config/feature-flag.tsx +3 -1
  151. package/src/core/datasets/data-source-discovery.ts +5 -0
  152. package/src/core/datasets/request-registry.ts +11 -0
  153. package/src/core/edit-app.tsx +1 -2
  154. package/src/core/export/__tests__/hooks.test.ts +2 -4
  155. package/src/core/export/hooks.ts +4 -3
  156. package/src/core/hotkeys/hotkeys.ts +0 -2
  157. package/src/core/islands/__tests__/bridge.test.ts +107 -0
  158. package/src/core/islands/bootstrap.ts +1 -0
  159. package/src/core/islands/bridge.ts +18 -0
  160. package/src/core/kernel/messages.ts +2 -0
  161. package/src/core/lsp/__tests__/transport.test.ts +509 -337
  162. package/src/core/lsp/transport.ts +304 -132
  163. package/src/core/mode.ts +10 -0
  164. package/src/core/network/__tests__/api.test.ts +42 -0
  165. package/src/core/network/__tests__/connection.test.ts +45 -0
  166. package/src/core/network/__tests__/requests-lazy.test.ts +47 -1
  167. package/src/core/network/__tests__/requests-network.test.ts +48 -0
  168. package/src/core/network/api.ts +27 -0
  169. package/src/core/network/connection.ts +15 -0
  170. package/src/core/network/requests-lazy.ts +3 -0
  171. package/src/core/network/requests-network.ts +31 -8
  172. package/src/core/network/requests-static.ts +3 -0
  173. package/src/core/network/requests-toasting.tsx +3 -0
  174. package/src/core/network/types.ts +27 -6
  175. package/src/core/rtc/state.ts +9 -0
  176. package/src/core/static/download-html.ts +5 -14
  177. package/src/core/wasm/__tests__/bridge.test.ts +99 -5
  178. package/src/core/wasm/bridge.ts +42 -9
  179. package/src/core/wasm/worker/types.ts +10 -3
  180. package/src/core/wasm/worker/worker.ts +7 -8
  181. package/src/core/websocket/useMarimoKernelConnection.tsx +4 -0
  182. package/src/css/app/codemirror.css +16 -2
  183. package/src/hooks/__tests__/useDataSourceDiscovery.test.ts +80 -0
  184. package/src/hooks/useDataSourceDiscovery.ts +18 -0
  185. package/src/plugins/impl/DataTablePlugin.tsx +4 -1
  186. package/src/plugins/impl/FormPlugin.tsx +1 -1
  187. package/src/plugins/impl/__tests__/DataTablePlugin.test.tsx +158 -0
  188. package/src/plugins/impl/__tests__/FormPlugin.test.tsx +162 -0
  189. package/src/plugins/impl/anywidget/__tests__/model.test.ts +55 -0
  190. package/src/plugins/impl/anywidget/model.ts +20 -5
  191. package/src/plugins/impl/data-frames/forms/__tests__/__snapshots__/form.test.tsx.snap +33 -21
  192. package/src/plugins/impl/data-frames/forms/renderers.tsx +11 -8
  193. package/src/stories/log-viewer.stories.tsx +12 -6
  194. package/src/utils/__tests__/blob.test.ts +27 -1
  195. package/src/utils/__tests__/download.test.tsx +44 -4
  196. package/src/utils/blob.ts +24 -1
  197. package/src/utils/download.ts +14 -15
  198. package/dist/toDate-B3IRfHhw.js +0 -692
@@ -3,21 +3,21 @@ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { en
3
3
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
4
  var _a, _b;
5
5
  import { s as __toESM } from "./chunk-BNovOVIE.js";
6
- import { c as useEventListener, g as Logger, h as cn, m as Events, t as Button } from "./button-BcSml68y.js";
6
+ import { c as useEventListener, g as Logger, h as cn, m as Events, t as Button } from "./button-BSm8IXRU.js";
7
7
  import { t as require_react } from "./react-DA-nE2FX.js";
8
8
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
9
- import { dt as kioskModeAtom, ht as outputIsStale } from "./html-to-image-DDENewl2.js";
9
+ import { ut as outputIsStale } from "./html-to-image-CZ1kLKkq.js";
10
10
  import "./chunk-5FQGJX7Z-B9WoXK1R.js";
11
- import { u as createLucideIcon } from "./dist-B96tMAst.js";
12
- import { a as DEFAULT_DECK_VERTICAL_ALIGN, c as SlideSidebar, cn as EyeOff, ct as Panel, fn as Code, i as DEFAULT_DECK_TRANSITION, l as Slide, ln as Expand, lt as PanelGroup, o as DEFAULT_SLIDE_TYPE, t as useNotebookCodeAvailable, ut as PanelResizeHandle } from "./code-visibility-CfBftiVM.js";
13
- import { R as ChevronDown } from "./strings-BYAhZnQi.js";
14
- import { X as useDebouncedCallback } from "./input-DStQIuqD.js";
15
- import "./toDate-B3IRfHhw.js";
11
+ import { u as createLucideIcon } from "./dist-DIlxLFXG.js";
12
+ import { a as DEFAULT_DECK_TRANSITION, cn as EyeOff, dt as PanelGroup, fn as Code, ft as PanelResizeHandle, l as SlideSidebar, ln as Expand, n as useNotebookCodeAvailable, o as DEFAULT_DECK_VERTICAL_ALIGN, s as DEFAULT_SLIDE_TYPE, t as cellDomProps, u as Slide, ut as Panel } from "./common-Bpnmu1Yz.js";
13
+ import { R as ChevronDown } from "./strings-DIy9NAmg.js";
14
+ import { X as useDebouncedCallback } from "./input-C5K4VBvB.js";
15
+ import { v as kioskModeAtom } from "./toDate-CqhBWjvO.js";
16
16
  import "./react-dom-BTJzcVJ9.js";
17
17
  import { t as require_jsx_runtime } from "./jsx-runtime-DebpN0FN.js";
18
- import { X as useFullScreenElement } from "./zod-D0yOqoGe.js";
19
- import { t as Tooltip } from "./tooltip-B-qh7UPB.js";
20
- import { A as useEvent_default, S as useAtomValue, y as isIslands } from "./useTheme-XMq9mNf_.js";
18
+ import { X as useFullScreenElement } from "./zod-BUcyXSdR.js";
19
+ import { t as Tooltip } from "./tooltip-f-qR0iUx.js";
20
+ import { A as useEvent_default, S as useAtomValue, y as isIslands } from "./useTheme-DYfby65G.js";
21
21
  import "./dist-De-GlSAs.js";
22
22
  import "./main-B1Jo_8pC.js";
23
23
  import "./dist-BOMbzyb3.js";
@@ -27,7 +27,7 @@ import "./dist-DgjbnqTg.js";
27
27
  import "./dist-CRmSjkLP.js";
28
28
  import "./purify.es-EnR5yhgI.js";
29
29
  import "./vega-loader.browser-DmpxCJqx.js";
30
- import "./loader-CTHCI-qe.js";
30
+ import "./loader-DX-IDS7n.js";
31
31
  import "./defaultLocale-BpsHxBd7.js";
32
32
  import "./defaultLocale-DoeErsX2.js";
33
33
  var StickyNote = createLucideIcon("sticky-note", [["path", {
@@ -152,52 +152,52 @@ var StickyNote = createLucideIcon("sticky-note", [["path", {
152
152
  return !e7.styleComputed;
153
153
  })).forEach((function(e7) {
154
154
  e7.styleComputed = p(e7);
155
- })), e6.filter(vo).forEach(yo);
156
- var t2 = e6.filter(_o);
157
- t2.forEach(go), t2.forEach((function(e7) {
158
- yo(e7), f(e7);
159
- })), t2.forEach(bo);
155
+ })), e6.filter(bo).forEach(xo);
156
+ var t2 = e6.filter(yo);
157
+ t2.forEach(vo), t2.forEach((function(e7) {
158
+ xo(e7), f(e7);
159
+ })), t2.forEach(So);
160
160
  }, f = function(e6) {
161
161
  return e6.dirty = n;
162
- }, go = function(e6) {
162
+ }, vo = function(e6) {
163
163
  e6.availableWidth = e6.element.parentNode.clientWidth, e6.currentWidth = e6.element.scrollWidth, e6.previousFontSize = e6.currentFontSize, e6.currentFontSize = Math.min(Math.max(e6.minSize, e6.availableWidth / e6.currentWidth * e6.previousFontSize), e6.maxSize), e6.whiteSpace = e6.multiLine && e6.currentFontSize === e6.minSize ? "normal" : "nowrap";
164
- }, _o = function(e6) {
164
+ }, yo = function(e6) {
165
165
  return e6.dirty !== i || e6.dirty === i && e6.element.parentNode.clientWidth !== e6.availableWidth;
166
166
  }, p = function(t2) {
167
167
  var n2 = e5.getComputedStyle(t2.element, null);
168
168
  return t2.currentFontSize = parseFloat(n2.getPropertyValue("font-size")), t2.display = n2.getPropertyValue("display"), t2.whiteSpace = n2.getPropertyValue("white-space"), true;
169
- }, vo = function(e6) {
169
+ }, bo = function(e6) {
170
170
  var t2 = false;
171
171
  return !e6.preStyleTestCompleted && (/inline-/.test(e6.display) || (t2 = true, e6.display = "inline-block"), e6.whiteSpace !== "nowrap" && (t2 = true, e6.whiteSpace = "nowrap"), e6.preStyleTestCompleted = true, t2);
172
- }, yo = function(e6) {
172
+ }, xo = function(e6) {
173
173
  e6.element.style.whiteSpace = e6.whiteSpace, e6.element.style.display = e6.display, e6.element.style.fontSize = e6.currentFontSize + "px";
174
- }, bo = function(e6) {
174
+ }, So = function(e6) {
175
175
  e6.element.dispatchEvent(new CustomEvent("fit", { detail: {
176
176
  oldValue: e6.previousFontSize,
177
177
  newValue: e6.currentFontSize,
178
178
  scaleFactor: e6.currentFontSize / e6.previousFontSize
179
179
  } }));
180
- }, xo = function(e6, t2) {
180
+ }, Co = function(e6, t2) {
181
181
  return function(n2) {
182
182
  e6.dirty = t2, e6.active && c(n2);
183
183
  };
184
- }, So = function(e6) {
184
+ }, wo = function(e6) {
185
185
  return function() {
186
186
  o = o.filter((function(t2) {
187
187
  return t2.element !== e6.element;
188
188
  })), e6.observeMutations && e6.observer.disconnect(), e6.element.style.whiteSpace = e6.originalStyle.whiteSpace, e6.element.style.display = e6.originalStyle.display, e6.element.style.fontSize = e6.originalStyle.fontSize;
189
189
  };
190
- }, Co = function(e6) {
190
+ }, To = function(e6) {
191
191
  return function() {
192
192
  e6.active || (e6.active = true, c());
193
193
  };
194
- }, wo = function(e6) {
194
+ }, Eo = function(e6) {
195
195
  return function() {
196
196
  return e6.active = false;
197
197
  };
198
- }, To = function(e6) {
199
- e6.observeMutations && (e6.observer = new MutationObserver(xo(e6, r)), e6.observer.observe(e6.element, e6.observeMutations));
200
- }, Eo = {
198
+ }, Do = function(e6) {
199
+ e6.observeMutations && (e6.observer = new MutationObserver(Co(e6, r)), e6.observer.observe(e6.element, e6.observeMutations));
200
+ }, Oo = {
201
201
  minSize: 16,
202
202
  maxSize: 512,
203
203
  multiLine: true,
@@ -206,18 +206,18 @@ var StickyNote = createLucideIcon("sticky-note", [["path", {
206
206
  childList: true,
207
207
  characterData: true
208
208
  }
209
- }, Do = null, Oo = function() {
210
- e5.clearTimeout(Do), Do = e5.setTimeout(l(i), jo.observeWindowDelay);
211
- }, ko = ["resize", "orientationchange"];
212
- return Object.defineProperty(jo, "observeWindow", { set: function(t2) {
209
+ }, ko = null, Ao = function() {
210
+ e5.clearTimeout(ko), ko = e5.setTimeout(l(i), No.observeWindowDelay);
211
+ }, jo = ["resize", "orientationchange"];
212
+ return Object.defineProperty(No, "observeWindow", { set: function(t2) {
213
213
  var n2 = `${t2 ? "add" : "remove"}EventListener`;
214
- ko.forEach((function(t3) {
215
- e5[n2](t3, Oo);
214
+ jo.forEach((function(t3) {
215
+ e5[n2](t3, Ao);
216
216
  }));
217
- } }), jo.observeWindow = true, jo.observeWindowDelay = 100, jo.fitAll = l(a), jo;
217
+ } }), No.observeWindow = true, No.observeWindowDelay = 100, No.fitAll = l(a), No;
218
218
  }
219
- function Ao(e6, t2) {
220
- var n2 = Object.assign({}, Eo, t2), r2 = e6.map((function(e7) {
219
+ function Mo(e6, t2) {
220
+ var n2 = Object.assign({}, Oo, t2), r2 = e6.map((function(e7) {
221
221
  var t3 = Object.assign({}, n2, {
222
222
  element: e7,
223
223
  active: true
@@ -227,20 +227,20 @@ var StickyNote = createLucideIcon("sticky-note", [["path", {
227
227
  whiteSpace: e8.element.style.whiteSpace,
228
228
  display: e8.element.style.display,
229
229
  fontSize: e8.element.style.fontSize
230
- }, To(e8), e8.newbie = true, e8.dirty = true, o.push(e8);
230
+ }, Do(e8), e8.newbie = true, e8.dirty = true, o.push(e8);
231
231
  })(t3), {
232
232
  element: e7,
233
- fit: xo(t3, a),
234
- unfreeze: Co(t3),
235
- freeze: wo(t3),
236
- unsubscribe: So(t3)
233
+ fit: Co(t3, a),
234
+ unfreeze: To(t3),
235
+ freeze: Eo(t3),
236
+ unsubscribe: wo(t3)
237
237
  };
238
238
  }));
239
239
  return c(), r2;
240
240
  }
241
- function jo(e6) {
241
+ function No(e6) {
242
242
  var n2 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
243
- return typeof e6 == "string" ? Ao(t(document.querySelectorAll(e6)), n2) : Ao([e6], n2)[0];
243
+ return typeof e6 == "string" ? Mo(t(document.querySelectorAll(e6)), n2) : Mo([e6], n2)[0];
244
244
  }
245
245
  })(typeof window > "u" ? null : window), Ci = class {
246
246
  constructor(e5) {
@@ -672,8 +672,8 @@ var StickyNote = createLucideIcon("sticky-note", [["path", {
672
672
  r.length === 1 ? i = a = parseInt(r[0], 10) : (i = parseInt(r[0], 10), a = parseInt(r[1], 10));
673
673
  let o = this.element.offsetWidth, s = t.length, c, l;
674
674
  c = typeof this.Reveal.getConfig().parallaxBackgroundHorizontal == "number" ? this.Reveal.getConfig().parallaxBackgroundHorizontal : s > 1 ? (i - o) / (s - 1) : 0, l = c * e5.h * -1;
675
- let u = this.element.offsetHeight, f = n.length, go, _o;
676
- go = typeof this.Reveal.getConfig().parallaxBackgroundVertical == "number" ? this.Reveal.getConfig().parallaxBackgroundVertical : (a - u) / (f - 1), _o = f > 0 ? go * e5.v : 0, this.element.style.backgroundPosition = l + "px " + -_o + "px";
675
+ let u = this.element.offsetHeight, f = n.length, vo, yo;
676
+ vo = typeof this.Reveal.getConfig().parallaxBackgroundVertical == "number" ? this.Reveal.getConfig().parallaxBackgroundVertical : (a - u) / (f - 1), yo = f > 0 ? vo * e5.v : 0, this.element.style.backgroundPosition = l + "px " + -yo + "px";
677
677
  }
678
678
  }
679
679
  destroy() {
@@ -1079,32 +1079,32 @@ var StickyNote = createLucideIcon("sticky-note", [["path", {
1079
1079
  e6 && e6.background && (l = e6.background);
1080
1080
  }
1081
1081
  yield new Promise(requestAnimationFrame), this.Reveal.layoutSlideContents(o, s), yield new Promise(requestAnimationFrame);
1082
- let u = t.map((e6) => e6.scrollHeight), f = [], go = t[0].parentNode, _o = 1;
1082
+ let u = t.map((e6) => e6.scrollHeight), f = [], vo = t[0].parentNode, yo = 1;
1083
1083
  t.forEach(function(t2, r2) {
1084
1084
  if (t2.classList.contains("stack") === false) {
1085
- let c2 = (i - o) / 2, go2 = (a - s) / 2, p = u[r2], vo = Math.max(Math.ceil(p / a), 1);
1086
- vo = Math.min(vo, e5.pdfMaxPagesPerSlide), (vo === 1 && e5.center || t2.classList.contains("center")) && (go2 = Math.max((a - p) / 2, 0));
1087
- let yo = document.createElement("div");
1088
- if (f.push(yo), yo.className = "pdf-page", yo.style.height = (a + e5.pdfPageHeightOffset) * vo + "px", l && (yo.style.background = l), yo.appendChild(t2), t2.style.left = c2 + "px", t2.style.top = go2 + "px", t2.style.width = o + "px", this.Reveal.slideContent.layout(t2), t2.slideBackgroundElement && yo.insertBefore(t2.slideBackgroundElement, t2), e5.showNotes) {
1085
+ let c2 = (i - o) / 2, vo2 = (a - s) / 2, p = u[r2], bo = Math.max(Math.ceil(p / a), 1);
1086
+ bo = Math.min(bo, e5.pdfMaxPagesPerSlide), (bo === 1 && e5.center || t2.classList.contains("center")) && (vo2 = Math.max((a - p) / 2, 0));
1087
+ let xo = document.createElement("div");
1088
+ if (f.push(xo), xo.className = "pdf-page", xo.style.height = (a + e5.pdfPageHeightOffset) * bo + "px", l && (xo.style.background = l), xo.appendChild(t2), t2.style.left = c2 + "px", t2.style.top = vo2 + "px", t2.style.width = o + "px", this.Reveal.slideContent.layout(t2), t2.slideBackgroundElement && xo.insertBefore(t2.slideBackgroundElement, t2), e5.showNotes) {
1089
1089
  let n2 = this.Reveal.getSlideNotes(t2);
1090
1090
  if (n2) {
1091
1091
  let t3 = typeof e5.showNotes == "string" ? e5.showNotes : "inline", r3 = document.createElement("div");
1092
- r3.classList.add("speaker-notes"), r3.classList.add("speaker-notes-pdf"), r3.setAttribute("data-layout", t3), r3.innerHTML = n2, t3 === "separate-page" ? f.push(r3) : (r3.style.left = "8px", r3.style.bottom = "8px", r3.style.width = i - 16 + "px", yo.appendChild(r3));
1092
+ r3.classList.add("speaker-notes"), r3.classList.add("speaker-notes-pdf"), r3.setAttribute("data-layout", t3), r3.innerHTML = n2, t3 === "separate-page" ? f.push(r3) : (r3.style.left = "8px", r3.style.bottom = "8px", r3.style.width = i - 16 + "px", xo.appendChild(r3));
1093
1093
  }
1094
1094
  }
1095
1095
  if (n) {
1096
1096
  let e6 = document.createElement("div");
1097
- e6.classList.add("slide-number"), e6.classList.add("slide-number-pdf"), e6.innerHTML = _o++, yo.appendChild(e6);
1097
+ e6.classList.add("slide-number"), e6.classList.add("slide-number-pdf"), e6.innerHTML = yo++, xo.appendChild(e6);
1098
1098
  }
1099
1099
  if (e5.pdfSeparateFragments) {
1100
- let e6 = this.Reveal.fragments.sort(yo.querySelectorAll(".fragment"), true), t3;
1100
+ let e6 = this.Reveal.fragments.sort(xo.querySelectorAll(".fragment"), true), t3;
1101
1101
  e6.forEach(function(e7, r3) {
1102
1102
  t3 && t3.forEach(function(e8) {
1103
1103
  e8.classList.remove("current-fragment");
1104
1104
  }), e7.forEach(function(e8) {
1105
1105
  e8.classList.add("visible", "current-fragment");
1106
1106
  }, this);
1107
- let i2 = yo.cloneNode(true);
1107
+ let i2 = xo.cloneNode(true);
1108
1108
  if (n) {
1109
1109
  let e8 = i2.querySelector(".slide-number-pdf"), t4 = r3 + 1;
1110
1110
  e8.innerHTML += "." + t4;
@@ -1115,11 +1115,11 @@ var StickyNote = createLucideIcon("sticky-note", [["path", {
1115
1115
  e8.classList.remove("visible", "current-fragment");
1116
1116
  });
1117
1117
  });
1118
- } else E$2(yo, ".fragment:not(.fade-out)").forEach(function(e6) {
1118
+ } else E$2(xo, ".fragment:not(.fade-out)").forEach(function(e6) {
1119
1119
  e6.classList.add("visible");
1120
1120
  });
1121
1121
  }
1122
- }, this), yield new Promise(requestAnimationFrame), f.forEach((e6) => go.appendChild(e6)), this.Reveal.slideContent.layout(this.Reveal.getSlidesElement()), this.Reveal.dispatchEvent({ type: "pdf-ready" }), c.classList.remove("loading-scroll-mode");
1122
+ }, this), yield new Promise(requestAnimationFrame), f.forEach((e6) => vo.appendChild(e6)), this.Reveal.slideContent.layout(this.Reveal.getSlidesElement()), this.Reveal.dispatchEvent({ type: "pdf-ready" }), c.classList.remove("loading-scroll-mode");
1123
1123
  });
1124
1124
  }
1125
1125
  isActive() {
@@ -2101,22 +2101,22 @@ function Ut$1(e5, t) {
2101
2101
  let n = {}, r = {}, i = false, a = false, o, s, c, l, u = {
2102
2102
  hasNavigatedHorizontally: false,
2103
2103
  hasNavigatedVertically: false
2104
- }, f = [], go = 1, _o = {
2104
+ }, f = [], vo = 1, yo = {
2105
2105
  layout: "",
2106
2106
  overview: ""
2107
- }, p = {}, vo = "idle", yo = 0, bo, xo = 0, So = -1, Co = false, wo = new Ci(n), To = new Ii(n), Eo = new Mi(n), Do = new Hi(n), Oo = new Bi(n), ko = new Oi(n), Ao = new Ui(n), jo = new qi(n), Mo = new Wi(n), No = new ji(n), Po = new Ki(n), Fo = new _i(n), Io = new $i(n), Lo = new Xi(n), Ro = new Yi(n), zo = new Gi(n), Bo = new Qi(n), Vo = new Ji(n), Ho = new Zi(n);
2108
- function Uo(a2) {
2107
+ }, p = {}, bo = "idle", xo = 0, So, Co = 0, wo = -1, To = false, Eo = new Ci(n), Do = new Ii(n), Oo = new Mi(n), ko = new Hi(n), Ao = new Bi(n), jo = new Oi(n), Mo = new Ui(n), No = new qi(n), Po = new Wi(n), Fo = new ji(n), Io = new Ki(n), Lo = new _i(n), Ro = new $i(n), zo = new Xi(n), Bo = new Yi(n), Vo = new Gi(n), Ho = new Qi(n), Uo = new Ji(n), Wo = new Zi(n);
2108
+ function Go(a2) {
2109
2109
  if (!e5) throw 'Unable to find presentation root (<div class="reveal">).';
2110
2110
  if (i) throw "Reveal.js has already been initialized.";
2111
2111
  if (i = true, p.wrapper = e5, p.slides = e5.querySelector(".slides"), !p.slides) throw 'Unable to find slides container (<div class="slides">).';
2112
- return r = Q$2(Q$2(Q$2(Q$2(Q$2({}, ts), r), t), a2), Mt$1()), /print-pdf/gi.test(window.location.search) && (r.view = "print"), Ko(), window.addEventListener("load", As, false), Ro.load(r.plugins, r.dependencies).then(qo), new Promise((e6) => n.on("ready", e6));
2112
+ return r = Q$2(Q$2(Q$2(Q$2(Q$2({}, ts), r), t), a2), Mt$1()), /print-pdf/gi.test(window.location.search) && (r.view = "print"), Ko(), window.addEventListener("load", Ms, false), Bo.load(r.plugins, r.dependencies).then(Yo), new Promise((e6) => n.on("ready", e6));
2113
2113
  }
2114
2114
  function Ko() {
2115
2115
  r.embedded === true ? p.viewport = V$1(e5, ".reveal-viewport") || e5 : (p.viewport = document.body, document.documentElement.classList.add("reveal-full-page")), p.viewport.classList.add("reveal-viewport");
2116
2116
  }
2117
- function qo() {
2118
- i !== false && (a = true, rs(), as(), ys(), ps(), ms(), $s(), bs(), Oo.update(true), $o(), Po.readURL(), setTimeout(() => {
2119
- p.slides.classList.remove("no-transition"), p.wrapper.classList.add("ready"), Ds({
2117
+ function Yo() {
2118
+ i !== false && (a = true, is(), os(), _s(), ms(), gs(), tc(), Ss(), Ao.update(true), Xo(), Io.readURL(), setTimeout(() => {
2119
+ p.slides.classList.remove("no-transition"), p.wrapper.classList.add("ready"), ks({
2120
2120
  type: "ready",
2121
2121
  data: {
2122
2122
  indexh: o,
@@ -2126,27 +2126,27 @@ function Ut$1(e5, t) {
2126
2126
  });
2127
2127
  }, 1));
2128
2128
  }
2129
- function $o() {
2129
+ function Xo() {
2130
2130
  let e6 = r.view === "print", t2 = r.view === "scroll" || r.view === "reader";
2131
- (e6 || t2) && (e6 ? Ss() : Vo.unbind(), p.viewport.classList.add("loading-scroll-mode"), e6 ? document.readyState === "complete" ? Ao.activate() : window.addEventListener("load", () => Ao.activate()) : ko.activate());
2131
+ (e6 || t2) && (e6 ? ws() : Uo.unbind(), p.viewport.classList.add("loading-scroll-mode"), e6 ? document.readyState === "complete" ? Mo.activate() : window.addEventListener("load", () => Mo.activate()) : jo.activate());
2132
2132
  }
2133
- function rs() {
2133
+ function is() {
2134
2134
  r.showHiddenSlides || E$2(p.wrapper, 'section[data-visibility="hidden"]').forEach((e6) => {
2135
2135
  let t2 = e6.parentNode;
2136
2136
  t2.childElementCount === 1 && /section/i.test(t2.nodeName) ? t2.remove() : e6.remove();
2137
2137
  });
2138
2138
  }
2139
- function as() {
2140
- p.slides.classList.add("no-transition"), le$2 ? p.wrapper.classList.add("no-hover") : p.wrapper.classList.remove("no-hover"), Oo.render(), To.render(), Eo.render(), Fo.render(), Io.render(), Ho.render(), p.pauseOverlay = wi(p.wrapper, "div", "pause-overlay", r.controls ? '<button class="resume-button">Resume presentation</button>' : null), p.statusElement = cs(), p.wrapper.setAttribute("role", "application");
2139
+ function os() {
2140
+ p.slides.classList.add("no-transition"), le$2 ? p.wrapper.classList.add("no-hover") : p.wrapper.classList.remove("no-hover"), Ao.render(), Do.render(), Oo.render(), Lo.render(), Ro.render(), Wo.render(), p.pauseOverlay = wi(p.wrapper, "div", "pause-overlay", r.controls ? '<button class="resume-button">Resume presentation</button>' : null), p.statusElement = cs(), p.wrapper.setAttribute("role", "application");
2141
2141
  }
2142
2142
  function cs() {
2143
2143
  let e6 = p.wrapper.querySelector(".aria-status");
2144
2144
  return e6 || (e6 = document.createElement("div"), e6.style.position = "absolute", e6.style.height = "1px", e6.style.width = "1px", e6.style.overflow = "hidden", e6.style.clip = "rect( 1px, 1px, 1px, 1px )", e6.classList.add("aria-status"), e6.setAttribute("aria-live", "polite"), e6.setAttribute("aria-atomic", "true"), p.wrapper.appendChild(e6)), e6;
2145
2145
  }
2146
- function ls(e6) {
2146
+ function ds(e6) {
2147
2147
  p.statusElement.textContent = e6;
2148
2148
  }
2149
- function us(e6) {
2149
+ function fs(e6) {
2150
2150
  let t2 = "";
2151
2151
  if (e6.nodeType === 3) t2 += e6.textContent.trim();
2152
2152
  else if (e6.nodeType === 1) {
@@ -2154,10 +2154,10 @@ function Ut$1(e5, t) {
2154
2154
  if (n2 !== "true" && !r2) {
2155
2155
  if (e6.tagName === "IMG" || e6.tagName === "VIDEO") {
2156
2156
  let n3 = e6.getAttribute("alt");
2157
- n3 && (t2 += ds(n3));
2157
+ n3 && (t2 += ps(n3));
2158
2158
  }
2159
2159
  Array.from(e6.childNodes).forEach((e7) => {
2160
- t2 += us(e7);
2160
+ t2 += fs(e7);
2161
2161
  }), [
2162
2162
  "P",
2163
2163
  "DIV",
@@ -2171,58 +2171,58 @@ function Ut$1(e5, t) {
2171
2171
  "H5",
2172
2172
  "H6",
2173
2173
  "BLOCKQUOTE"
2174
- ].includes(e6.tagName) && t2.trim() !== "" && (t2 = ds(t2));
2174
+ ].includes(e6.tagName) && t2.trim() !== "" && (t2 = ps(t2));
2175
2175
  }
2176
2176
  }
2177
2177
  return t2 = t2.trim(), t2 === "" ? "" : t2 + " ";
2178
2178
  }
2179
- function ds(e6) {
2179
+ function ps(e6) {
2180
2180
  let t2 = e6.trim();
2181
2181
  return t2 === "" ? e6 : /[.!?]$/.test(t2) ? t2 : t2 + ".";
2182
2182
  }
2183
- function ps() {
2183
+ function ms() {
2184
2184
  setInterval(() => {
2185
- (!ko.isActive() && p.wrapper.scrollTop !== 0 || p.wrapper.scrollLeft !== 0) && (p.wrapper.scrollTop = 0, p.wrapper.scrollLeft = 0);
2185
+ (!jo.isActive() && p.wrapper.scrollTop !== 0 || p.wrapper.scrollLeft !== 0) && (p.wrapper.scrollTop = 0, p.wrapper.scrollLeft = 0);
2186
2186
  }, 1e3);
2187
2187
  }
2188
- function ms() {
2189
- document.addEventListener("fullscreenchange", Lc), document.addEventListener("webkitfullscreenchange", Lc);
2188
+ function gs() {
2189
+ document.addEventListener("fullscreenchange", zc), document.addEventListener("webkitfullscreenchange", zc);
2190
2190
  }
2191
- function ys() {
2192
- r.postMessage && window.addEventListener("message", Mc, false);
2191
+ function _s() {
2192
+ r.postMessage && window.addEventListener("message", Pc, false);
2193
2193
  }
2194
- function bs(e6) {
2194
+ function Ss(e6) {
2195
2195
  let t2 = Q$2({}, r);
2196
2196
  if (typeof e6 == "object" && ge$1(r, e6), n.isReady() === false) return;
2197
2197
  let i2 = p.wrapper.querySelectorAll(de$1).length;
2198
- p.wrapper.classList.remove(t2.transition), p.wrapper.classList.add(r.transition), p.wrapper.setAttribute("data-transition-speed", r.transitionSpeed), p.wrapper.setAttribute("data-background-transition", r.backgroundTransition), p.viewport.style.setProperty("--slide-width", typeof r.width == "string" ? r.width : r.width + "px"), p.viewport.style.setProperty("--slide-height", typeof r.height == "string" ? r.height : r.height + "px"), r.shuffle && ec(), Ke$1(p.wrapper, "embedded", r.embedded), Ke$1(p.wrapper, "rtl", r.rtl), Ke$1(p.wrapper, "center", r.center), r.pause === false && Hs(), Do.reset(), bo && (bo = (bo.destroy(), null)), i2 > 1 && r.autoSlide && r.autoSlideStoppable && (bo = new es(p.wrapper, () => Math.min(Math.max((Date.now() - So) / yo, 0), 1)), bo.on("click", Rc), Co = false), r.navigationMode === "default" ? p.wrapper.removeAttribute("data-navigation-mode") : p.wrapper.setAttribute("data-navigation-mode", r.navigationMode), Ho.configure(r, t2), Bo.configure(r, t2), Lo.configure(r, t2), Fo.configure(r, t2), Io.configure(r, t2), No.configure(r, t2), jo.configure(r, t2), To.configure(r, t2), Zs();
2198
+ p.wrapper.classList.remove(t2.transition), p.wrapper.classList.add(r.transition), p.wrapper.setAttribute("data-transition-speed", r.transitionSpeed), p.wrapper.setAttribute("data-background-transition", r.backgroundTransition), p.viewport.style.setProperty("--slide-width", typeof r.width == "string" ? r.width : r.width + "px"), p.viewport.style.setProperty("--slide-height", typeof r.height == "string" ? r.height : r.height + "px"), r.shuffle && nc(), Ke$1(p.wrapper, "embedded", r.embedded), Ke$1(p.wrapper, "rtl", r.rtl), Ke$1(p.wrapper, "center", r.center), r.pause === false && Ws(), ko.reset(), So && (So = (So.destroy(), null)), i2 > 1 && r.autoSlide && r.autoSlideStoppable && (So = new es(p.wrapper, () => Math.min(Math.max((Date.now() - wo) / xo, 0), 1)), So.on("click", Bc), To = false), r.navigationMode === "default" ? p.wrapper.removeAttribute("data-navigation-mode") : p.wrapper.setAttribute("data-navigation-mode", r.navigationMode), Wo.configure(r, t2), Ho.configure(r, t2), zo.configure(r, t2), Lo.configure(r, t2), Ro.configure(r, t2), Fo.configure(r, t2), No.configure(r, t2), Do.configure(r, t2), $s();
2199
2199
  }
2200
- function xs() {
2201
- window.addEventListener("resize", Fc, false), r.touch && Vo.bind(), r.keyboard && No.bind(), r.progress && Io.bind(), r.respondToHashChanges && Po.bind(), Fo.bind(), Bo.bind(), p.slides.addEventListener("click", Pc, false), p.slides.addEventListener("transitionend", Nc, false), p.pauseOverlay.addEventListener("click", Hs, false), r.focusBodyOnPageVisibilityChange && document.addEventListener("visibilitychange", Ic, false);
2200
+ function Cs() {
2201
+ window.addEventListener("resize", Lc, false), r.touch && Uo.bind(), r.keyboard && Fo.bind(), r.progress && Ro.bind(), r.respondToHashChanges && Io.bind(), Lo.bind(), Ho.bind(), p.slides.addEventListener("click", Ic, false), p.slides.addEventListener("transitionend", Fc, false), p.pauseOverlay.addEventListener("click", Ws, false), r.focusBodyOnPageVisibilityChange && document.addEventListener("visibilitychange", Rc, false);
2202
2202
  }
2203
- function Ss() {
2204
- Vo.unbind(), Bo.unbind(), No.unbind(), Fo.unbind(), Io.unbind(), Po.unbind(), window.removeEventListener("resize", Fc, false), p.slides.removeEventListener("click", Pc, false), p.slides.removeEventListener("transitionend", Nc, false), p.pauseOverlay.removeEventListener("click", Hs, false);
2203
+ function ws() {
2204
+ Uo.unbind(), Ho.unbind(), Fo.unbind(), Lo.unbind(), Ro.unbind(), Io.unbind(), window.removeEventListener("resize", Lc, false), p.slides.removeEventListener("click", Ic, false), p.slides.removeEventListener("transitionend", Fc, false), p.pauseOverlay.removeEventListener("click", Ws, false);
2205
2205
  }
2206
- function Cs() {
2207
- i = false, a !== false && (Ss(), Sc(), Ho.destroy(), Bo.destroy(), zo.destroy(), Ro.destroy(), Lo.destroy(), Fo.destroy(), Io.destroy(), Oo.destroy(), To.destroy(), Eo.destroy(), document.removeEventListener("fullscreenchange", Lc), document.removeEventListener("webkitfullscreenchange", Lc), document.removeEventListener("visibilitychange", Ic, false), window.removeEventListener("message", Mc, false), window.removeEventListener("load", As, false), p.pauseOverlay && p.pauseOverlay.remove(), p.statusElement && p.statusElement.remove(), document.documentElement.classList.remove("reveal-full-page"), p.wrapper.classList.remove("ready", "center", "has-horizontal-slides", "has-vertical-slides"), p.wrapper.removeAttribute("data-transition-speed"), p.wrapper.removeAttribute("data-background-transition"), p.viewport.classList.remove("reveal-viewport"), p.viewport.style.removeProperty("--slide-width"), p.viewport.style.removeProperty("--slide-height"), p.slides.style.removeProperty("width"), p.slides.style.removeProperty("height"), p.slides.style.removeProperty("zoom"), p.slides.style.removeProperty("left"), p.slides.style.removeProperty("top"), p.slides.style.removeProperty("bottom"), p.slides.style.removeProperty("right"), p.slides.style.removeProperty("transform"), Array.from(p.wrapper.querySelectorAll(de$1)).forEach((e6) => {
2206
+ function Ts() {
2207
+ i = false, a !== false && (ws(), wc(), Wo.destroy(), Ho.destroy(), Vo.destroy(), Bo.destroy(), zo.destroy(), Lo.destroy(), Ro.destroy(), Ao.destroy(), Do.destroy(), Oo.destroy(), document.removeEventListener("fullscreenchange", zc), document.removeEventListener("webkitfullscreenchange", zc), document.removeEventListener("visibilitychange", Rc, false), window.removeEventListener("message", Pc, false), window.removeEventListener("load", Ms, false), p.pauseOverlay && p.pauseOverlay.remove(), p.statusElement && p.statusElement.remove(), document.documentElement.classList.remove("reveal-full-page"), p.wrapper.classList.remove("ready", "center", "has-horizontal-slides", "has-vertical-slides"), p.wrapper.removeAttribute("data-transition-speed"), p.wrapper.removeAttribute("data-background-transition"), p.viewport.classList.remove("reveal-viewport"), p.viewport.style.removeProperty("--slide-width"), p.viewport.style.removeProperty("--slide-height"), p.slides.style.removeProperty("width"), p.slides.style.removeProperty("height"), p.slides.style.removeProperty("zoom"), p.slides.style.removeProperty("left"), p.slides.style.removeProperty("top"), p.slides.style.removeProperty("bottom"), p.slides.style.removeProperty("right"), p.slides.style.removeProperty("transform"), Array.from(p.wrapper.querySelectorAll(de$1)).forEach((e6) => {
2208
2208
  e6.style.removeProperty("display"), e6.style.removeProperty("top"), e6.removeAttribute("hidden"), e6.removeAttribute("aria-hidden");
2209
2209
  }));
2210
2210
  }
2211
- function ws(t2, n2, r2) {
2211
+ function Es(t2, n2, r2) {
2212
2212
  e5.addEventListener(t2, n2, r2);
2213
2213
  }
2214
- function Ts(t2, n2, r2) {
2214
+ function Ds(t2, n2, r2) {
2215
2215
  e5.removeEventListener(t2, n2, r2);
2216
2216
  }
2217
- function Es(e6) {
2218
- typeof e6.layout == "string" && (_o.layout = e6.layout), typeof e6.overview == "string" && (_o.overview = e6.overview), _o.layout ? ae$2(p.slides, _o.layout + " " + _o.overview) : ae$2(p.slides, _o.overview);
2217
+ function Os(e6) {
2218
+ typeof e6.layout == "string" && (yo.layout = e6.layout), typeof e6.overview == "string" && (yo.overview = e6.overview), yo.layout ? ae$2(p.slides, yo.layout + " " + yo.overview) : ae$2(p.slides, yo.overview);
2219
2219
  }
2220
- function Ds({ target: e6 = p.wrapper, type: t2, data: n2, bubbles: r2 = true }) {
2220
+ function ks({ target: e6 = p.wrapper, type: t2, data: n2, bubbles: r2 = true }) {
2221
2221
  let i2 = document.createEvent("HTMLEvents", 1, 2);
2222
- return i2.initEvent(t2, r2, true), ge$1(i2, n2), e6.dispatchEvent(i2), e6 === p.wrapper && ks(t2), i2;
2222
+ return i2.initEvent(t2, r2, true), ge$1(i2, n2), e6.dispatchEvent(i2), e6 === p.wrapper && js(t2), i2;
2223
2223
  }
2224
- function Os(e6) {
2225
- Ds({
2224
+ function As(e6) {
2225
+ ks({
2226
2226
  type: "slidechanged",
2227
2227
  data: {
2228
2228
  indexh: o,
@@ -2233,41 +2233,41 @@ function Ut$1(e5, t) {
2233
2233
  }
2234
2234
  });
2235
2235
  }
2236
- function ks(e6, t2) {
2236
+ function js(e6, t2) {
2237
2237
  if (r.postMessageEvents && window.parent !== window.self) {
2238
2238
  let n2 = {
2239
2239
  namespace: "reveal",
2240
2240
  eventName: e6,
2241
- state: yc()
2241
+ state: xc()
2242
2242
  };
2243
2243
  ge$1(n2, t2), window.parent.postMessage(JSON.stringify(n2), "*");
2244
2244
  }
2245
2245
  }
2246
- function As() {
2247
- if (p.wrapper && !Ao.isActive()) {
2246
+ function Ms() {
2247
+ if (p.wrapper && !Mo.isActive()) {
2248
2248
  let e6 = p.viewport.offsetWidth, t2 = p.viewport.offsetHeight;
2249
2249
  if (!r.disableLayout) {
2250
2250
  le$2 && !r.embedded && document.documentElement.style.setProperty("--vh", window.innerHeight * 0.01 + "px");
2251
- let n2 = ko.isActive() ? Ns(e6, t2) : Ns(), i2 = go;
2252
- js(r.width, r.height), p.slides.style.width = n2.width + "px", p.slides.style.height = n2.height + "px", go = Math.min(n2.presentationWidth / n2.width, n2.presentationHeight / n2.height), go = Math.max(go, r.minScale), go = Math.min(go, r.maxScale), go === 1 || ko.isActive() ? (p.slides.style.zoom = "", p.slides.style.left = "", p.slides.style.top = "", p.slides.style.bottom = "", p.slides.style.right = "", Es({ layout: "" })) : (p.slides.style.zoom = "", p.slides.style.left = "50%", p.slides.style.top = "50%", p.slides.style.bottom = "auto", p.slides.style.right = "auto", Es({ layout: "translate(-50%, -50%) scale(" + go + ")" }));
2251
+ let n2 = jo.isActive() ? Fs(e6, t2) : Fs(), i2 = vo;
2252
+ Ns(r.width, r.height), p.slides.style.width = n2.width + "px", p.slides.style.height = n2.height + "px", vo = Math.min(n2.presentationWidth / n2.width, n2.presentationHeight / n2.height), vo = Math.max(vo, r.minScale), vo = Math.min(vo, r.maxScale), vo === 1 || jo.isActive() ? (p.slides.style.zoom = "", p.slides.style.left = "", p.slides.style.top = "", p.slides.style.bottom = "", p.slides.style.right = "", Os({ layout: "" })) : (p.slides.style.zoom = "", p.slides.style.left = "50%", p.slides.style.top = "50%", p.slides.style.bottom = "auto", p.slides.style.right = "auto", Os({ layout: "translate(-50%, -50%) scale(" + vo + ")" }));
2253
2253
  let a2 = Array.from(p.wrapper.querySelectorAll(de$1));
2254
2254
  for (let e7 = 0, t3 = a2.length; e7 < t3; e7++) {
2255
2255
  let t4 = a2[e7];
2256
2256
  t4.style.display !== "none" && (r.center || t4.classList.contains("center") ? t4.classList.contains("stack") ? t4.style.top = 0 : t4.style.top = Math.max((n2.height - t4.scrollHeight) / 2, 0) + "px" : t4.style.top = "");
2257
2257
  }
2258
- i2 !== go && Ds({
2258
+ i2 !== vo && ks({
2259
2259
  type: "resize",
2260
2260
  data: {
2261
2261
  oldScale: i2,
2262
- scale: go,
2262
+ scale: vo,
2263
2263
  size: n2
2264
2264
  }
2265
2265
  });
2266
2266
  }
2267
- Ms(), p.viewport.style.setProperty("--slide-scale", go), p.viewport.style.setProperty("--viewport-width", e6 + "px"), p.viewport.style.setProperty("--viewport-height", t2 + "px"), ko.layout(), Io.update(), Oo.updateParallax(), Mo.isActive() && Mo.update();
2267
+ Ps(), p.viewport.style.setProperty("--slide-scale", vo), p.viewport.style.setProperty("--viewport-width", e6 + "px"), p.viewport.style.setProperty("--viewport-height", t2 + "px"), jo.layout(), Ro.update(), Ao.updateParallax(), Po.isActive() && Po.update();
2268
2268
  }
2269
2269
  }
2270
- function js(e6, t2) {
2270
+ function Ns(e6, t2) {
2271
2271
  E$2(p.slides, "section > .stretch, section > .r-stretch").forEach((n2) => {
2272
2272
  let r2 = Ei(n2, t2);
2273
2273
  if (/(img|video)/gi.test(n2.nodeName)) {
@@ -2276,13 +2276,13 @@ function Ut$1(e5, t) {
2276
2276
  } else n2.style.width = e6 + "px", n2.style.height = r2 + "px";
2277
2277
  });
2278
2278
  }
2279
- function Ms() {
2280
- if (p.wrapper && !r.disableLayout && !Ao.isActive() && typeof r.scrollActivationWidth == "number" && r.view !== "scroll") {
2281
- let e6 = Ns();
2282
- e6.presentationWidth > 0 && e6.presentationWidth <= r.scrollActivationWidth ? ko.isActive() || (Oo.create(), ko.activate()) : ko.isActive() && ko.deactivate();
2279
+ function Ps() {
2280
+ if (p.wrapper && !r.disableLayout && !Mo.isActive() && typeof r.scrollActivationWidth == "number" && r.view !== "scroll") {
2281
+ let e6 = Fs();
2282
+ e6.presentationWidth > 0 && e6.presentationWidth <= r.scrollActivationWidth ? jo.isActive() || (Ao.create(), jo.activate()) : jo.isActive() && jo.deactivate();
2283
2283
  }
2284
2284
  }
2285
- function Ns(e6, t2) {
2285
+ function Fs(e6, t2) {
2286
2286
  let n2 = r.width, i2 = r.height;
2287
2287
  r.disableLayout && (n2 = p.slides.offsetWidth, i2 = p.slides.offsetHeight);
2288
2288
  let a2 = {
@@ -2293,58 +2293,58 @@ function Ut$1(e5, t) {
2293
2293
  };
2294
2294
  return a2.presentationWidth -= a2.presentationWidth * r.margin, a2.presentationHeight -= a2.presentationHeight * r.margin, typeof a2.width == "string" && /%$/.test(a2.width) && (a2.width = parseInt(a2.width, 10) / 100 * a2.presentationWidth), typeof a2.height == "string" && /%$/.test(a2.height) && (a2.height = parseInt(a2.height, 10) / 100 * a2.presentationHeight), a2;
2295
2295
  }
2296
- function Ps(e6, t2) {
2296
+ function Is(e6, t2) {
2297
2297
  typeof e6 == "object" && typeof e6.setAttribute == "function" && e6.setAttribute("data-previous-indexv", t2 || 0);
2298
2298
  }
2299
- function Fs(e6) {
2299
+ function Ls(e6) {
2300
2300
  if (typeof e6 == "object" && typeof e6.setAttribute == "function" && e6.classList.contains("stack")) {
2301
2301
  let t2 = e6.hasAttribute("data-start-indexv") ? "data-start-indexv" : "data-previous-indexv";
2302
2302
  return parseInt(e6.getAttribute(t2) || 0, 10);
2303
2303
  }
2304
2304
  return 0;
2305
2305
  }
2306
- function Is(e6 = l) {
2306
+ function Rs(e6 = l) {
2307
2307
  return e6 && e6.parentNode && !!e6.parentNode.nodeName.match(/section/i);
2308
2308
  }
2309
- function Ls(e6 = l) {
2309
+ function zs(e6 = l) {
2310
2310
  return e6.classList.contains(".stack") || e6.querySelector("section") !== null;
2311
2311
  }
2312
- function Rs() {
2313
- return l && Is(l) ? !l.nextElementSibling : false;
2312
+ function Bs() {
2313
+ return l && Rs(l) ? !l.nextElementSibling : false;
2314
2314
  }
2315
- function zs() {
2315
+ function Vs() {
2316
2316
  return o === 0 && s === 0;
2317
2317
  }
2318
- function Bs() {
2319
- return l ? !(l.nextElementSibling || Is(l) && l.parentNode.nextElementSibling) : false;
2318
+ function Hs() {
2319
+ return l ? !(l.nextElementSibling || Rs(l) && l.parentNode.nextElementSibling) : false;
2320
2320
  }
2321
- function Vs() {
2321
+ function Us() {
2322
2322
  if (r.pause) {
2323
2323
  let e6 = p.wrapper.classList.contains("paused");
2324
- Sc(), p.wrapper.classList.add("paused"), e6 === false && Ds({ type: "paused" });
2324
+ wc(), p.wrapper.classList.add("paused"), e6 === false && ks({ type: "paused" });
2325
2325
  }
2326
2326
  }
2327
- function Hs() {
2327
+ function Ws() {
2328
2328
  let e6 = p.wrapper.classList.contains("paused");
2329
- p.wrapper.classList.remove("paused"), xc(), e6 && Ds({ type: "resumed" });
2329
+ p.wrapper.classList.remove("paused"), Cc(), e6 && ks({ type: "resumed" });
2330
2330
  }
2331
- function Us(e6) {
2332
- typeof e6 == "boolean" ? e6 ? Vs() : Hs() : Ws() ? Hs() : Vs();
2331
+ function Gs(e6) {
2332
+ typeof e6 == "boolean" ? e6 ? Us() : Ws() : Ks() ? Ws() : Us();
2333
2333
  }
2334
- function Ws() {
2334
+ function Ks() {
2335
2335
  return p.wrapper.classList.contains("paused");
2336
2336
  }
2337
- function Gs(e6) {
2338
- typeof e6 == "boolean" ? e6 ? Eo.show() : Eo.hide() : Eo.isVisible() ? Eo.hide() : Eo.show();
2337
+ function qs(e6) {
2338
+ typeof e6 == "boolean" ? e6 ? Oo.show() : Oo.hide() : Oo.isVisible() ? Oo.hide() : Oo.show();
2339
2339
  }
2340
- function Ks(e6) {
2341
- typeof e6 == "boolean" ? e6 ? wc() : Cc() : Co ? wc() : Cc();
2340
+ function Js(e6) {
2341
+ typeof e6 == "boolean" ? e6 ? Ec() : Tc() : To ? Ec() : Tc();
2342
2342
  }
2343
- function qs() {
2344
- return !!(yo && !Co);
2343
+ function Ys() {
2344
+ return !!(xo && !To);
2345
2345
  }
2346
- function Js(t2, n2, i2, a2) {
2347
- if (Ds({
2346
+ function Xs(t2, n2, i2, a2) {
2347
+ if (ks({
2348
2348
  type: "beforeslidechange",
2349
2349
  data: {
2350
2350
  indexh: t2 === void 0 ? o : t2,
@@ -2354,90 +2354,90 @@ function Ut$1(e5, t) {
2354
2354
  }).defaultPrevented) return;
2355
2355
  c = l;
2356
2356
  let u2 = p.wrapper.querySelectorAll(te$2);
2357
- if (ko.isActive()) {
2358
- let e6 = ko.getSlideByIndices(t2, n2);
2359
- e6 && ko.scrollToSlide(e6);
2357
+ if (jo.isActive()) {
2358
+ let e6 = jo.getSlideByIndices(t2, n2);
2359
+ e6 && jo.scrollToSlide(e6);
2360
2360
  return;
2361
2361
  }
2362
2362
  if (u2.length === 0) return;
2363
- n2 === void 0 && !Mo.isActive() && (n2 = Fs(u2[t2])), c && c.parentNode && c.parentNode.classList.contains("stack") && Ps(c.parentNode, s);
2364
- let go2 = f.concat();
2363
+ n2 === void 0 && !Po.isActive() && (n2 = Ls(u2[t2])), c && c.parentNode && c.parentNode.classList.contains("stack") && Is(c.parentNode, s);
2364
+ let vo2 = f.concat();
2365
2365
  f.length = 0;
2366
- let _o2 = o || 0, yo2 = s || 0;
2367
- o = tc(te$2, t2 === void 0 ? o : t2), s = tc(_e$1, n2 === void 0 ? s : n2);
2368
- let bo2 = o !== _o2 || s !== yo2;
2369
- bo2 || (c = null);
2370
- let xo2 = u2[o], So2 = xo2.querySelectorAll("section");
2371
- e5.classList.toggle("is-vertical-slide", So2.length > 1), l = So2[s] || xo2;
2372
- let Co2 = false;
2373
- bo2 && c && l && !Mo.isActive() && (vo = "running", Co2 = Ys(c, l, _o2, yo2), Co2 && p.slides.classList.add("disable-slide-transitions")), ic(), As(), Mo.isActive() && Mo.update(), i2 !== void 0 && jo.goto(i2), c && c !== l && (c.classList.remove("present"), c.setAttribute("aria-hidden", "true"), zs() && setTimeout(() => {
2374
- fc().forEach((e6) => {
2375
- Ps(e6, 0);
2366
+ let yo2 = o || 0, xo2 = s || 0;
2367
+ o = rc(te$2, t2 === void 0 ? o : t2), s = rc(_e$1, n2 === void 0 ? s : n2);
2368
+ let So2 = o !== yo2 || s !== xo2;
2369
+ So2 || (c = null);
2370
+ let Co2 = u2[o], wo2 = Co2.querySelectorAll("section");
2371
+ e5.classList.toggle("is-vertical-slide", wo2.length > 1), l = wo2[s] || Co2;
2372
+ let To2 = false;
2373
+ So2 && c && l && !Po.isActive() && (bo = "running", To2 = Zs(c, l, yo2, xo2), To2 && p.slides.classList.add("disable-slide-transitions")), oc(), Ms(), Po.isActive() && Po.update(), i2 !== void 0 && No.goto(i2), c && c !== l && (c.classList.remove("present"), c.setAttribute("aria-hidden", "true"), Vs() && setTimeout(() => {
2374
+ mc().forEach((e6) => {
2375
+ Is(e6, 0);
2376
2376
  });
2377
2377
  }, 0));
2378
2378
  e: for (let e6 = 0, t3 = f.length; e6 < t3; e6++) {
2379
- for (let t4 = 0; t4 < go2.length; t4++) if (go2[t4] === f[e6]) {
2380
- go2.splice(t4, 1);
2379
+ for (let t4 = 0; t4 < vo2.length; t4++) if (vo2[t4] === f[e6]) {
2380
+ vo2.splice(t4, 1);
2381
2381
  continue e;
2382
2382
  }
2383
- p.viewport.classList.add(f[e6]), Ds({ type: f[e6] });
2383
+ p.viewport.classList.add(f[e6]), ks({ type: f[e6] });
2384
2384
  }
2385
- for (; go2.length; ) p.viewport.classList.remove(go2.pop());
2386
- bo2 && (wo.afterSlideChanged(), Os(a2)), (bo2 || !c) && (wo.stopEmbeddedContent(c), wo.startEmbeddedContent(l)), requestAnimationFrame(() => {
2387
- ls(us(l));
2388
- }), Io.update(), Fo.update(), Ho.update(), Oo.update(), Oo.updateParallax(), To.update(), jo.update(), Po.writeURL(), xc(), Co2 && (setTimeout(() => {
2385
+ for (; vo2.length; ) p.viewport.classList.remove(vo2.pop());
2386
+ So2 && (Eo.afterSlideChanged(), As(a2)), (So2 || !c) && (Eo.stopEmbeddedContent(c), Eo.startEmbeddedContent(l)), requestAnimationFrame(() => {
2387
+ ds(fs(l));
2388
+ }), Ro.update(), Lo.update(), Wo.update(), Ao.update(), Ao.updateParallax(), Do.update(), No.update(), Io.writeURL(), Cc(), To2 && (setTimeout(() => {
2389
2389
  p.slides.classList.remove("disable-slide-transitions");
2390
- }, 0), r.autoAnimate && Do.run(c, l));
2390
+ }, 0), r.autoAnimate && ko.run(c, l));
2391
2391
  }
2392
- function Ys(e6, t2, n2, r2) {
2392
+ function Zs(e6, t2, n2, r2) {
2393
2393
  return e6.hasAttribute("data-auto-animate") && t2.hasAttribute("data-auto-animate") && e6.getAttribute("data-auto-animate-id") === t2.getAttribute("data-auto-animate-id") && !(o > n2 || s > r2 ? t2 : e6).hasAttribute("data-auto-animate-restart");
2394
2394
  }
2395
- function Xs(e6, t2, n2) {
2395
+ function Qs(e6, t2, n2) {
2396
2396
  let i2 = o || 0;
2397
2397
  o = t2, s = n2;
2398
2398
  let a2 = l !== e6;
2399
- c = l, l = e6, l && c && r.autoAnimate && Ys(c, l, i2, s) && Do.run(c, l), a2 && (wo.afterSlideChanged(), c && (wo.stopEmbeddedContent(c), wo.stopEmbeddedContent(c.slideBackgroundElement)), wo.startEmbeddedContent(l), wo.startEmbeddedContent(l.slideBackgroundElement)), requestAnimationFrame(() => {
2400
- ls(us(l));
2401
- }), Os();
2399
+ c = l, l = e6, l && c && r.autoAnimate && Zs(c, l, i2, s) && ko.run(c, l), a2 && (Eo.afterSlideChanged(), c && (Eo.stopEmbeddedContent(c), Eo.stopEmbeddedContent(c.slideBackgroundElement)), Eo.startEmbeddedContent(l), Eo.startEmbeddedContent(l.slideBackgroundElement)), requestAnimationFrame(() => {
2400
+ ds(fs(l));
2401
+ }), As();
2402
2402
  }
2403
- function Zs() {
2404
- Ss(), xs(), As(), yo = r.autoSlide, xc(), Oo.create(), Po.writeURL(), r.sortFragmentsOnSync === true && jo.sortAll(), o !== void 0 && (o = tc(te$2, o), s = tc(_e$1, s)), Fo.update(), Io.update(), ic(), Ho.update(), Ho.updateVisibility(), zo.update(), Oo.update(true), To.update(), wo.formatEmbeddedContent(), r.autoPlayMedia === false ? wo.stopEmbeddedContent(l, { unloadIframes: false }) : wo.startEmbeddedContent(l), Mo.isActive() && Mo.layout(), Ds({ type: "sync" });
2403
+ function $s() {
2404
+ ws(), Cs(), Ms(), xo = r.autoSlide, Cc(), Ao.create(), Io.writeURL(), r.sortFragmentsOnSync === true && No.sortAll(), o !== void 0 && (o = rc(te$2, o), s = rc(_e$1, s)), Lo.update(), Ro.update(), oc(), Wo.update(), Wo.updateVisibility(), Vo.update(), Ao.update(true), Do.update(), Eo.formatEmbeddedContent(), r.autoPlayMedia === false ? Eo.stopEmbeddedContent(l, { unloadIframes: false }) : Eo.startEmbeddedContent(l), Po.isActive() && Po.layout(), ks({ type: "sync" });
2405
2405
  }
2406
- function Qs(e6 = l) {
2407
- Oo.sync(e6), jo.sync(e6), wo.load(e6), Oo.update(), Ho.update(), Ds({
2406
+ function ec(e6 = l) {
2407
+ Ao.sync(e6), No.sync(e6), Eo.load(e6), Ao.update(), Wo.update(), ks({
2408
2408
  type: "slidesync",
2409
2409
  data: { slide: e6 }
2410
2410
  });
2411
2411
  }
2412
- function $s() {
2413
- uc().forEach((e6) => {
2412
+ function tc() {
2413
+ fc().forEach((e6) => {
2414
2414
  E$2(e6, "section").forEach((e7, t2) => {
2415
2415
  t2 > 0 && (e7.classList.remove("present"), e7.classList.remove("past"), e7.classList.add("future"), e7.setAttribute("aria-hidden", "true"));
2416
2416
  });
2417
2417
  });
2418
2418
  }
2419
- function ec(e6 = uc()) {
2419
+ function nc(e6 = fc()) {
2420
2420
  e6.forEach((t2, n2) => {
2421
2421
  let r2 = e6[Math.floor(Math.random() * e6.length)];
2422
2422
  r2.parentNode === t2.parentNode && t2.parentNode.insertBefore(t2, r2);
2423
2423
  let i2 = t2.querySelectorAll("section");
2424
- i2.length && ec(i2);
2424
+ i2.length && nc(i2);
2425
2425
  });
2426
2426
  }
2427
- function tc(e6, t2) {
2428
- let n2 = E$2(p.wrapper, e6), i2 = n2.length, a2 = ko.isActive() || Ao.isActive(), o2 = false, s2 = false;
2427
+ function rc(e6, t2) {
2428
+ let n2 = E$2(p.wrapper, e6), i2 = n2.length, a2 = jo.isActive() || Mo.isActive(), o2 = false, s2 = false;
2429
2429
  if (i2) {
2430
2430
  r.loop && (t2 >= i2 && (o2 = true), t2 %= i2, t2 < 0 && (t2 = i2 + t2, s2 = true)), t2 = Math.max(Math.min(t2, i2 - 1), 0);
2431
2431
  for (let e8 = 0; e8 < i2; e8++) {
2432
- let i3 = n2[e8], c3 = r.rtl && !Is(i3);
2432
+ let i3 = n2[e8], c3 = r.rtl && !Rs(i3);
2433
2433
  if (i3.classList.remove("past"), i3.classList.remove("present"), i3.classList.remove("future"), i3.setAttribute("hidden", ""), i3.setAttribute("aria-hidden", "true"), i3.querySelector("section") && i3.classList.add("stack"), a2) {
2434
2434
  i3.classList.add("present");
2435
2435
  continue;
2436
2436
  }
2437
- e8 < t2 ? (i3.classList.add(c3 ? "future" : "past"), r.fragments && nc(i3)) : e8 > t2 ? (i3.classList.add(c3 ? "past" : "future"), r.fragments && rc(i3)) : e8 === t2 && r.fragments && (o2 ? rc(i3) : s2 && nc(i3));
2437
+ e8 < t2 ? (i3.classList.add(c3 ? "future" : "past"), r.fragments && ic(i3)) : e8 > t2 ? (i3.classList.add(c3 ? "past" : "future"), r.fragments && ac(i3)) : e8 === t2 && r.fragments && (o2 ? ac(i3) : s2 && ic(i3));
2438
2438
  }
2439
2439
  let e7 = n2[t2], c2 = e7.classList.contains("present");
2440
- e7.classList.add("present"), e7.removeAttribute("hidden"), e7.removeAttribute("aria-hidden"), c2 || Ds({
2440
+ e7.classList.add("present"), e7.removeAttribute("hidden"), e7.removeAttribute("aria-hidden"), c2 || ks({
2441
2441
  target: e7,
2442
2442
  type: "visible",
2443
2443
  bubbles: false
@@ -2447,35 +2447,35 @@ function Ut$1(e5, t) {
2447
2447
  } else t2 = 0;
2448
2448
  return t2;
2449
2449
  }
2450
- function nc(e6) {
2450
+ function ic(e6) {
2451
2451
  E$2(e6, ".fragment").forEach((e7) => {
2452
2452
  e7.classList.add("visible"), e7.classList.remove("current-fragment");
2453
2453
  });
2454
2454
  }
2455
- function rc(e6) {
2455
+ function ac(e6) {
2456
2456
  E$2(e6, ".fragment.visible").forEach((e7) => {
2457
2457
  e7.classList.remove("visible", "current-fragment");
2458
2458
  });
2459
2459
  }
2460
- function ic() {
2461
- let e6 = uc(), t2 = e6.length, n2, i2;
2460
+ function oc() {
2461
+ let e6 = fc(), t2 = e6.length, n2, i2;
2462
2462
  if (t2 && o !== void 0) {
2463
- let a2 = Mo.isActive(), c2 = a2 ? 10 : r.viewDistance;
2464
- le$2 && (c2 = a2 ? 6 : r.mobileViewDistance), Ao.isActive() && (c2 = Number.MAX_VALUE);
2463
+ let a2 = Po.isActive(), c2 = a2 ? 10 : r.viewDistance;
2464
+ le$2 && (c2 = a2 ? 6 : r.mobileViewDistance), Mo.isActive() && (c2 = Number.MAX_VALUE);
2465
2465
  for (let l2 = 0; l2 < t2; l2++) {
2466
- let u2 = e6[l2], f2 = E$2(u2, "section"), go2 = f2.length;
2467
- if (n2 = Math.abs((o || 0) - l2) || 0, r.loop && (n2 = Math.abs(((o || 0) - l2) % (t2 - c2)) || 0), n2 < c2 ? wo.load(u2) : wo.unload(u2), go2) {
2468
- let e7 = a2 ? 0 : Fs(u2);
2469
- for (let t3 = 0; t3 < go2; t3++) {
2466
+ let u2 = e6[l2], f2 = E$2(u2, "section"), vo2 = f2.length;
2467
+ if (n2 = Math.abs((o || 0) - l2) || 0, r.loop && (n2 = Math.abs(((o || 0) - l2) % (t2 - c2)) || 0), n2 < c2 ? Eo.load(u2) : Eo.unload(u2), vo2) {
2468
+ let e7 = a2 ? 0 : Ls(u2);
2469
+ for (let t3 = 0; t3 < vo2; t3++) {
2470
2470
  let r2 = f2[t3];
2471
- i2 = Math.abs(l2 === (o || 0) ? (s || 0) - t3 : t3 - e7), n2 + i2 < c2 ? wo.load(r2) : wo.unload(r2);
2471
+ i2 = Math.abs(l2 === (o || 0) ? (s || 0) - t3 : t3 - e7), n2 + i2 < c2 ? Eo.load(r2) : Eo.unload(r2);
2472
2472
  }
2473
2473
  }
2474
2474
  }
2475
- mc() ? p.wrapper.classList.add("has-vertical-slides") : p.wrapper.classList.remove("has-vertical-slides"), pc() ? p.wrapper.classList.add("has-horizontal-slides") : p.wrapper.classList.remove("has-horizontal-slides");
2475
+ gc() ? p.wrapper.classList.add("has-vertical-slides") : p.wrapper.classList.remove("has-vertical-slides"), hc() ? p.wrapper.classList.add("has-horizontal-slides") : p.wrapper.classList.remove("has-horizontal-slides");
2476
2476
  }
2477
2477
  }
2478
- function ac({ includeFragments: e6 = false } = {}) {
2478
+ function sc({ includeFragments: e6 = false } = {}) {
2479
2479
  let t2 = p.wrapper.querySelectorAll(te$2), n2 = p.wrapper.querySelectorAll(_e$1), i2 = {
2480
2480
  left: o > 0,
2481
2481
  right: o < t2.length - 1,
@@ -2483,7 +2483,7 @@ function Ut$1(e5, t) {
2483
2483
  down: s < n2.length - 1
2484
2484
  };
2485
2485
  if (r.loop && (t2.length > 1 && (i2.left = true, i2.right = true), n2.length > 1 && (i2.up = true, i2.down = true)), t2.length > 1 && r.navigationMode === "linear" && (i2.right = i2.right || i2.down, i2.left = i2.left || i2.up), e6 === true) {
2486
- let e7 = jo.availableRoutes();
2486
+ let e7 = No.availableRoutes();
2487
2487
  i2.left = i2.left || e7.prev, i2.up = i2.up || e7.prev, i2.down = i2.down || e7.next, i2.right = i2.right || e7.next;
2488
2488
  }
2489
2489
  if (r.rtl) {
@@ -2492,8 +2492,8 @@ function Ut$1(e5, t) {
2492
2492
  }
2493
2493
  return i2;
2494
2494
  }
2495
- function oc(e6 = l) {
2496
- let t2 = uc(), n2 = 0;
2495
+ function cc(e6 = l) {
2496
+ let t2 = fc(), n2 = 0;
2497
2497
  e: for (let r2 = 0; r2 < t2.length; r2++) {
2498
2498
  let i2 = t2[r2], a2 = i2.querySelectorAll("section");
2499
2499
  for (let t3 = 0; t3 < a2.length; t3++) {
@@ -2505,8 +2505,8 @@ function Ut$1(e5, t) {
2505
2505
  }
2506
2506
  return n2;
2507
2507
  }
2508
- function sc() {
2509
- let e6 = gc(), t2 = oc();
2508
+ function lc() {
2509
+ let e6 = vc(), t2 = cc();
2510
2510
  if (l) {
2511
2511
  let e7 = l.querySelectorAll(".fragment");
2512
2512
  if (e7.length > 0) {
@@ -2516,11 +2516,11 @@ function Ut$1(e5, t) {
2516
2516
  }
2517
2517
  return Math.min(t2 / (e6 - 1), 1);
2518
2518
  }
2519
- function cc(e6) {
2519
+ function uc(e6) {
2520
2520
  let t2 = o, n2 = s, r2;
2521
- if (e6) if (ko.isActive()) t2 = parseInt(e6.getAttribute("data-index-h"), 10), e6.getAttribute("data-index-v") && (n2 = parseInt(e6.getAttribute("data-index-v"), 10));
2521
+ if (e6) if (jo.isActive()) t2 = parseInt(e6.getAttribute("data-index-h"), 10), e6.getAttribute("data-index-v") && (n2 = parseInt(e6.getAttribute("data-index-v"), 10));
2522
2522
  else {
2523
- let r3 = Is(e6), i2 = r3 ? e6.parentNode : e6, a2 = uc();
2523
+ let r3 = Rs(e6), i2 = r3 ? e6.parentNode : e6, a2 = fc();
2524
2524
  t2 = Math.max(a2.indexOf(i2), 0), n2 = void 0, r3 && (n2 = Math.max(E$2(e6.parentNode, "section").indexOf(e6), 0));
2525
2525
  }
2526
2526
  if (!e6 && l && l.querySelectorAll(".fragment").length > 0) {
@@ -2533,26 +2533,26 @@ function Ut$1(e5, t) {
2533
2533
  f: r2
2534
2534
  };
2535
2535
  }
2536
- function lc() {
2536
+ function dc() {
2537
2537
  return E$2(p.wrapper, de$1 + ':not(.stack):not([data-visibility="uncounted"])');
2538
2538
  }
2539
- function uc() {
2539
+ function fc() {
2540
2540
  return E$2(p.wrapper, te$2);
2541
2541
  }
2542
- function dc() {
2542
+ function pc() {
2543
2543
  return E$2(p.wrapper, ".slides>section>section");
2544
2544
  }
2545
- function fc() {
2545
+ function mc() {
2546
2546
  return E$2(p.wrapper, te$2 + ".stack");
2547
2547
  }
2548
- function pc() {
2549
- return uc().length > 1;
2548
+ function hc() {
2549
+ return fc().length > 1;
2550
2550
  }
2551
- function mc() {
2552
- return dc().length > 1;
2551
+ function gc() {
2552
+ return pc().length > 1;
2553
2553
  }
2554
- function hc() {
2555
- return lc().map((e6) => {
2554
+ function _c() {
2555
+ return dc().map((e6) => {
2556
2556
  let t2 = {};
2557
2557
  for (let n2 = 0; n2 < e6.attributes.length; n2++) {
2558
2558
  let r2 = e6.attributes[n2];
@@ -2561,102 +2561,102 @@ function Ut$1(e5, t) {
2561
2561
  return t2;
2562
2562
  });
2563
2563
  }
2564
- function gc() {
2565
- return lc().length;
2564
+ function vc() {
2565
+ return dc().length;
2566
2566
  }
2567
- function _c(e6, t2) {
2568
- let n2 = uc()[e6], r2 = n2 && n2.querySelectorAll("section");
2567
+ function yc(e6, t2) {
2568
+ let n2 = fc()[e6], r2 = n2 && n2.querySelectorAll("section");
2569
2569
  return r2 && r2.length && typeof t2 == "number" ? r2 ? r2[t2] : void 0 : n2;
2570
2570
  }
2571
- function vc(e6, t2) {
2572
- let n2 = typeof e6 == "number" ? _c(e6, t2) : e6;
2571
+ function bc(e6, t2) {
2572
+ let n2 = typeof e6 == "number" ? yc(e6, t2) : e6;
2573
2573
  if (n2) return n2.slideBackgroundElement;
2574
2574
  }
2575
- function yc() {
2576
- let e6 = cc();
2575
+ function xc() {
2576
+ let e6 = uc();
2577
2577
  return Q$2({
2578
2578
  indexh: e6.h,
2579
2579
  indexv: e6.v,
2580
2580
  indexf: e6.f,
2581
- paused: Ws(),
2582
- overview: Mo.isActive()
2583
- }, zo.getState());
2581
+ paused: Ks(),
2582
+ overview: Po.isActive()
2583
+ }, Vo.getState());
2584
2584
  }
2585
- function bc(e6) {
2585
+ function Sc(e6) {
2586
2586
  if (typeof e6 == "object") {
2587
- Js(fe$1(e6.indexh), fe$1(e6.indexv), fe$1(e6.indexf));
2587
+ Xs(fe$1(e6.indexh), fe$1(e6.indexv), fe$1(e6.indexf));
2588
2588
  let t2 = fe$1(e6.paused), n2 = fe$1(e6.overview);
2589
- typeof t2 == "boolean" && t2 !== Ws() && Us(t2), typeof n2 == "boolean" && n2 !== Mo.isActive() && Mo.toggle(n2), zo.setState(e6);
2589
+ typeof t2 == "boolean" && t2 !== Ks() && Gs(t2), typeof n2 == "boolean" && n2 !== Po.isActive() && Po.toggle(n2), Vo.setState(e6);
2590
2590
  }
2591
2591
  }
2592
- function xc() {
2593
- if (Sc(), l && r.autoSlide !== false) {
2592
+ function Cc() {
2593
+ if (wc(), l && r.autoSlide !== false) {
2594
2594
  let e6 = l.querySelector(".current-fragment[data-autoslide]"), t2 = e6 ? e6.getAttribute("data-autoslide") : null, n2 = l.parentNode ? l.parentNode.getAttribute("data-autoslide") : null, i2 = l.getAttribute("data-autoslide");
2595
- t2 ? yo = parseInt(t2, 10) : i2 ? yo = parseInt(i2, 10) : n2 ? yo = parseInt(n2, 10) : (yo = r.autoSlide, l.querySelectorAll(".fragment").length === 0 && E$2(l, "video, audio").forEach((e7) => {
2596
- e7.hasAttribute("data-autoplay") && yo && e7.duration * 1e3 / e7.playbackRate > yo && (yo = e7.duration * 1e3 / e7.playbackRate + 1e3);
2597
- })), yo && !Co && !Ws() && !Mo.isActive() && (!Bs() || jo.availableRoutes().next || r.loop === true) && (xo = setTimeout(() => {
2598
- typeof r.autoSlideMethod == "function" ? r.autoSlideMethod() : Ac(), xc();
2599
- }, yo), So = Date.now()), bo && bo.setPlaying(xo !== -1);
2595
+ t2 ? xo = parseInt(t2, 10) : i2 ? xo = parseInt(i2, 10) : n2 ? xo = parseInt(n2, 10) : (xo = r.autoSlide, l.querySelectorAll(".fragment").length === 0 && E$2(l, "video, audio").forEach((e7) => {
2596
+ e7.hasAttribute("data-autoplay") && xo && e7.duration * 1e3 / e7.playbackRate > xo && (xo = e7.duration * 1e3 / e7.playbackRate + 1e3);
2597
+ })), xo && !To && !Ks() && !Po.isActive() && (!Hs() || No.availableRoutes().next || r.loop === true) && (Co = setTimeout(() => {
2598
+ typeof r.autoSlideMethod == "function" ? r.autoSlideMethod() : Mc(), Cc();
2599
+ }, xo), wo = Date.now()), So && So.setPlaying(Co !== -1);
2600
2600
  }
2601
2601
  }
2602
- function Sc() {
2603
- clearTimeout(xo), xo = -1;
2604
- }
2605
- function Cc() {
2606
- yo && !Co && (Co = true, Ds({ type: "autoslidepaused" }), clearTimeout(xo), bo && bo.setPlaying(false));
2607
- }
2608
2602
  function wc() {
2609
- yo && Co && (Co = false, Ds({ type: "autoslideresumed" }), xc());
2603
+ clearTimeout(Co), Co = -1;
2610
2604
  }
2611
- function Tc({ skipFragments: e6 = false } = {}) {
2612
- if (u.hasNavigatedHorizontally = true, ko.isActive()) return ko.prev();
2613
- r.rtl ? (Mo.isActive() || e6 || jo.next() === false) && ac().left && Js(o + 1, r.navigationMode === "grid" ? s : void 0) : (Mo.isActive() || e6 || jo.prev() === false) && ac().left && Js(o - 1, r.navigationMode === "grid" ? s : void 0);
2605
+ function Tc() {
2606
+ xo && !To && (To = true, ks({ type: "autoslidepaused" }), clearTimeout(Co), So && So.setPlaying(false));
2614
2607
  }
2615
- function Ec({ skipFragments: e6 = false } = {}) {
2616
- if (u.hasNavigatedHorizontally = true, ko.isActive()) return ko.next();
2617
- r.rtl ? (Mo.isActive() || e6 || jo.prev() === false) && ac().right && Js(o - 1, r.navigationMode === "grid" ? s : void 0) : (Mo.isActive() || e6 || jo.next() === false) && ac().right && Js(o + 1, r.navigationMode === "grid" ? s : void 0);
2608
+ function Ec() {
2609
+ xo && To && (To = false, ks({ type: "autoslideresumed" }), Cc());
2618
2610
  }
2619
2611
  function Dc({ skipFragments: e6 = false } = {}) {
2620
- if (ko.isActive()) return ko.prev();
2621
- (Mo.isActive() || e6 || jo.prev() === false) && ac().up && Js(o, s - 1);
2612
+ if (u.hasNavigatedHorizontally = true, jo.isActive()) return jo.prev();
2613
+ r.rtl ? (Po.isActive() || e6 || No.next() === false) && sc().left && Xs(o + 1, r.navigationMode === "grid" ? s : void 0) : (Po.isActive() || e6 || No.prev() === false) && sc().left && Xs(o - 1, r.navigationMode === "grid" ? s : void 0);
2622
2614
  }
2623
2615
  function Oc({ skipFragments: e6 = false } = {}) {
2624
- if (u.hasNavigatedVertically = true, ko.isActive()) return ko.next();
2625
- (Mo.isActive() || e6 || jo.next() === false) && ac().down && Js(o, s + 1);
2616
+ if (u.hasNavigatedHorizontally = true, jo.isActive()) return jo.next();
2617
+ r.rtl ? (Po.isActive() || e6 || No.prev() === false) && sc().right && Xs(o - 1, r.navigationMode === "grid" ? s : void 0) : (Po.isActive() || e6 || No.next() === false) && sc().right && Xs(o + 1, r.navigationMode === "grid" ? s : void 0);
2626
2618
  }
2627
2619
  function kc({ skipFragments: e6 = false } = {}) {
2628
- if (ko.isActive()) return ko.prev();
2629
- if (e6 || jo.prev() === false) if (ac().up) Dc({ skipFragments: e6 });
2620
+ if (jo.isActive()) return jo.prev();
2621
+ (Po.isActive() || e6 || No.prev() === false) && sc().up && Xs(o, s - 1);
2622
+ }
2623
+ function Ac({ skipFragments: e6 = false } = {}) {
2624
+ if (u.hasNavigatedVertically = true, jo.isActive()) return jo.next();
2625
+ (Po.isActive() || e6 || No.next() === false) && sc().down && Xs(o, s + 1);
2626
+ }
2627
+ function jc({ skipFragments: e6 = false } = {}) {
2628
+ if (jo.isActive()) return jo.prev();
2629
+ if (e6 || No.prev() === false) if (sc().up) kc({ skipFragments: e6 });
2630
2630
  else {
2631
2631
  let t2;
2632
2632
  if (t2 = r.rtl ? E$2(p.wrapper, te$2 + ".future").pop() : E$2(p.wrapper, te$2 + ".past").pop(), t2 && t2.classList.contains("stack")) {
2633
2633
  let e7 = t2.querySelectorAll("section").length - 1 || void 0;
2634
- Js(o - 1, e7);
2635
- } else r.rtl ? Ec({ skipFragments: e6 }) : Tc({ skipFragments: e6 });
2634
+ Xs(o - 1, e7);
2635
+ } else r.rtl ? Oc({ skipFragments: e6 }) : Dc({ skipFragments: e6 });
2636
2636
  }
2637
2637
  }
2638
- function Ac({ skipFragments: e6 = false } = {}) {
2639
- if (u.hasNavigatedHorizontally = true, u.hasNavigatedVertically = true, ko.isActive()) return ko.next();
2640
- if (e6 || jo.next() === false) {
2641
- let t2 = ac();
2642
- t2.down && t2.right && r.loop && Rs() && (t2.down = false), t2.down ? Oc({ skipFragments: e6 }) : r.rtl ? Tc({ skipFragments: e6 }) : Ec({ skipFragments: e6 });
2638
+ function Mc({ skipFragments: e6 = false } = {}) {
2639
+ if (u.hasNavigatedHorizontally = true, u.hasNavigatedVertically = true, jo.isActive()) return jo.next();
2640
+ if (e6 || No.next() === false) {
2641
+ let t2 = sc();
2642
+ t2.down && t2.right && r.loop && Bs() && (t2.down = false), t2.down ? Ac({ skipFragments: e6 }) : r.rtl ? Dc({ skipFragments: e6 }) : Oc({ skipFragments: e6 });
2643
2643
  }
2644
2644
  }
2645
- function jc(e6) {
2646
- r.autoSlideStoppable && Cc();
2645
+ function Nc(e6) {
2646
+ r.autoSlideStoppable && Tc();
2647
2647
  }
2648
- function Mc(e6) {
2648
+ function Pc(e6) {
2649
2649
  let t2 = e6.data;
2650
2650
  if (typeof t2 == "string" && t2.charAt(0) === "{" && t2.charAt(t2.length - 1) === "}" && (t2 = JSON.parse(t2), t2.method && typeof n[t2.method] == "function")) if (Li.test(t2.method) === false) {
2651
2651
  let e7 = n[t2.method].apply(n, t2.args);
2652
- ks("callback", {
2652
+ js("callback", {
2653
2653
  method: t2.method,
2654
2654
  result: e7
2655
2655
  });
2656
2656
  } else console.warn('reveal.js: "' + t2.method + '" is is blacklisted from the postMessage API');
2657
2657
  }
2658
- function Nc(e6) {
2659
- vo === "running" && /section/gi.test(e6.target.nodeName) && (vo = "idle", Ds({
2658
+ function Fc(e6) {
2659
+ bo === "running" && /section/gi.test(e6.target.nodeName) && (bo = "idle", ks({
2660
2660
  type: "slidetransitionend",
2661
2661
  data: {
2662
2662
  indexh: o,
@@ -2666,153 +2666,153 @@ function Ut$1(e5, t) {
2666
2666
  }
2667
2667
  }));
2668
2668
  }
2669
- function Pc(e6) {
2669
+ function Ic(e6) {
2670
2670
  let t2 = V$1(e6.target, 'a[href^="#"]');
2671
2671
  if (t2) {
2672
- let r2 = t2.getAttribute("href"), i2 = Po.getIndicesFromHash(r2);
2672
+ let r2 = t2.getAttribute("href"), i2 = Io.getIndicesFromHash(r2);
2673
2673
  i2 && (n.slide(i2.h, i2.v, i2.f), e6.preventDefault());
2674
2674
  }
2675
2675
  }
2676
- function Fc(e6) {
2677
- As();
2676
+ function Lc(e6) {
2677
+ Ms();
2678
2678
  }
2679
- function Ic(e6) {
2679
+ function Rc(e6) {
2680
2680
  document.hidden === false && document.activeElement !== document.body && (typeof document.activeElement.blur == "function" && document.activeElement.blur(), document.body.focus());
2681
2681
  }
2682
- function Lc(e6) {
2682
+ function zc(e6) {
2683
2683
  (document.fullscreenElement || document.webkitFullscreenElement) === p.wrapper && (e6.stopImmediatePropagation(), setTimeout(() => {
2684
2684
  n.layout(), n.focus.focus();
2685
2685
  }, 1));
2686
2686
  }
2687
- function Rc(e6) {
2688
- Bs() && r.loop === false ? (Js(0, 0), wc()) : Co ? wc() : Cc();
2687
+ function Bc(e6) {
2688
+ Hs() && r.loop === false ? (Xs(0, 0), Ec()) : To ? Ec() : Tc();
2689
2689
  }
2690
- let zc = {
2690
+ let Vc = {
2691
2691
  VERSION: Ot$1,
2692
- initialize: Uo,
2693
- configure: bs,
2694
- destroy: Cs,
2695
- sync: Zs,
2696
- syncSlide: Qs,
2697
- syncFragments: jo.sync.bind(jo),
2698
- slide: Js,
2699
- left: Tc,
2700
- right: Ec,
2701
- up: Dc,
2702
- down: Oc,
2703
- prev: kc,
2704
- next: Ac,
2705
- navigateLeft: Tc,
2706
- navigateRight: Ec,
2707
- navigateUp: Dc,
2708
- navigateDown: Oc,
2709
- navigatePrev: kc,
2710
- navigateNext: Ac,
2711
- navigateFragment: jo.goto.bind(jo),
2712
- prevFragment: jo.prev.bind(jo),
2713
- nextFragment: jo.next.bind(jo),
2714
- on: ws,
2715
- off: Ts,
2716
- addEventListener: ws,
2717
- removeEventListener: Ts,
2718
- layout: As,
2719
- shuffle: ec,
2720
- availableRoutes: ac,
2721
- availableFragments: jo.availableRoutes.bind(jo),
2722
- toggleHelp: zo.toggleHelp.bind(zo),
2723
- toggleOverview: Mo.toggle.bind(Mo),
2724
- toggleScrollView: ko.toggle.bind(ko),
2725
- togglePause: Us,
2726
- toggleAutoSlide: Ks,
2727
- toggleJumpToSlide: Gs,
2728
- isFirstSlide: zs,
2729
- isLastSlide: Bs,
2730
- isLastVerticalSlide: Rs,
2731
- isVerticalSlide: Is,
2732
- isVerticalStack: Ls,
2733
- isPaused: Ws,
2734
- isAutoSliding: qs,
2735
- isSpeakerNotes: Ho.isSpeakerNotesWindow.bind(Ho),
2736
- isOverview: Mo.isActive.bind(Mo),
2737
- isFocused: Bo.isFocused.bind(Bo),
2738
- isOverlayOpen: zo.isOpen.bind(zo),
2739
- isScrollView: ko.isActive.bind(ko),
2740
- isPrintView: Ao.isActive.bind(Ao),
2692
+ initialize: Go,
2693
+ configure: Ss,
2694
+ destroy: Ts,
2695
+ sync: $s,
2696
+ syncSlide: ec,
2697
+ syncFragments: No.sync.bind(No),
2698
+ slide: Xs,
2699
+ left: Dc,
2700
+ right: Oc,
2701
+ up: kc,
2702
+ down: Ac,
2703
+ prev: jc,
2704
+ next: Mc,
2705
+ navigateLeft: Dc,
2706
+ navigateRight: Oc,
2707
+ navigateUp: kc,
2708
+ navigateDown: Ac,
2709
+ navigatePrev: jc,
2710
+ navigateNext: Mc,
2711
+ navigateFragment: No.goto.bind(No),
2712
+ prevFragment: No.prev.bind(No),
2713
+ nextFragment: No.next.bind(No),
2714
+ on: Es,
2715
+ off: Ds,
2716
+ addEventListener: Es,
2717
+ removeEventListener: Ds,
2718
+ layout: Ms,
2719
+ shuffle: nc,
2720
+ availableRoutes: sc,
2721
+ availableFragments: No.availableRoutes.bind(No),
2722
+ toggleHelp: Vo.toggleHelp.bind(Vo),
2723
+ toggleOverview: Po.toggle.bind(Po),
2724
+ toggleScrollView: jo.toggle.bind(jo),
2725
+ togglePause: Gs,
2726
+ toggleAutoSlide: Js,
2727
+ toggleJumpToSlide: qs,
2728
+ isFirstSlide: Vs,
2729
+ isLastSlide: Hs,
2730
+ isLastVerticalSlide: Bs,
2731
+ isVerticalSlide: Rs,
2732
+ isVerticalStack: zs,
2733
+ isPaused: Ks,
2734
+ isAutoSliding: Ys,
2735
+ isSpeakerNotes: Wo.isSpeakerNotesWindow.bind(Wo),
2736
+ isOverview: Po.isActive.bind(Po),
2737
+ isFocused: Ho.isFocused.bind(Ho),
2738
+ isOverlayOpen: Vo.isOpen.bind(Vo),
2739
+ isScrollView: jo.isActive.bind(jo),
2740
+ isPrintView: Mo.isActive.bind(Mo),
2741
2741
  isReady: () => a,
2742
- loadSlide: wo.load.bind(wo),
2743
- unloadSlide: wo.unload.bind(wo),
2744
- startEmbeddedContent: () => wo.startEmbeddedContent(l),
2745
- stopEmbeddedContent: () => wo.stopEmbeddedContent(l, { unloadIframes: false }),
2746
- previewIframe: zo.previewIframe.bind(zo),
2747
- previewImage: zo.previewImage.bind(zo),
2748
- previewVideo: zo.previewVideo.bind(zo),
2749
- showPreview: zo.previewIframe.bind(zo),
2750
- hidePreview: zo.close.bind(zo),
2751
- addEventListeners: xs,
2752
- removeEventListeners: Ss,
2753
- dispatchEvent: Ds,
2754
- getState: yc,
2755
- setState: bc,
2756
- getProgress: sc,
2757
- getIndices: cc,
2758
- getSlidesAttributes: hc,
2759
- getSlidePastCount: oc,
2760
- getTotalSlides: gc,
2761
- getSlide: _c,
2742
+ loadSlide: Eo.load.bind(Eo),
2743
+ unloadSlide: Eo.unload.bind(Eo),
2744
+ startEmbeddedContent: () => Eo.startEmbeddedContent(l),
2745
+ stopEmbeddedContent: () => Eo.stopEmbeddedContent(l, { unloadIframes: false }),
2746
+ previewIframe: Vo.previewIframe.bind(Vo),
2747
+ previewImage: Vo.previewImage.bind(Vo),
2748
+ previewVideo: Vo.previewVideo.bind(Vo),
2749
+ showPreview: Vo.previewIframe.bind(Vo),
2750
+ hidePreview: Vo.close.bind(Vo),
2751
+ addEventListeners: Cs,
2752
+ removeEventListeners: ws,
2753
+ dispatchEvent: ks,
2754
+ getState: xc,
2755
+ setState: Sc,
2756
+ getProgress: lc,
2757
+ getIndices: uc,
2758
+ getSlidesAttributes: _c,
2759
+ getSlidePastCount: cc,
2760
+ getTotalSlides: vc,
2761
+ getSlide: yc,
2762
2762
  getPreviousSlide: () => c,
2763
2763
  getCurrentSlide: () => l,
2764
- getSlideBackground: vc,
2765
- getSlideNotes: Ho.getSlideNotes.bind(Ho),
2766
- getSlides: lc,
2767
- getHorizontalSlides: uc,
2768
- getVerticalSlides: dc,
2769
- hasHorizontalSlides: pc,
2770
- hasVerticalSlides: mc,
2764
+ getSlideBackground: bc,
2765
+ getSlideNotes: Wo.getSlideNotes.bind(Wo),
2766
+ getSlides: dc,
2767
+ getHorizontalSlides: fc,
2768
+ getVerticalSlides: pc,
2769
+ hasHorizontalSlides: hc,
2770
+ hasVerticalSlides: gc,
2771
2771
  hasNavigatedHorizontally: () => u.hasNavigatedHorizontally,
2772
2772
  hasNavigatedVertically: () => u.hasNavigatedVertically,
2773
- shouldAutoAnimateBetween: Ys,
2774
- addKeyBinding: No.addKeyBinding.bind(No),
2775
- removeKeyBinding: No.removeKeyBinding.bind(No),
2776
- triggerKey: No.triggerKey.bind(No),
2777
- registerKeyboardShortcut: No.registerKeyboardShortcut.bind(No),
2778
- getComputedSlideSize: Ns,
2779
- setCurrentScrollPage: Xs,
2780
- removeHiddenSlides: rs,
2781
- getScale: () => go,
2773
+ shouldAutoAnimateBetween: Zs,
2774
+ addKeyBinding: Fo.addKeyBinding.bind(Fo),
2775
+ removeKeyBinding: Fo.removeKeyBinding.bind(Fo),
2776
+ triggerKey: Fo.triggerKey.bind(Fo),
2777
+ registerKeyboardShortcut: Fo.registerKeyboardShortcut.bind(Fo),
2778
+ getComputedSlideSize: Fs,
2779
+ setCurrentScrollPage: Qs,
2780
+ removeHiddenSlides: is,
2781
+ getScale: () => vo,
2782
2782
  getConfig: () => r,
2783
2783
  getQueryHash: Mt$1,
2784
- getSlidePath: Po.getHash.bind(Po),
2784
+ getSlidePath: Io.getHash.bind(Io),
2785
2785
  getRevealElement: () => e5,
2786
2786
  getSlidesElement: () => p.slides,
2787
2787
  getViewportElement: () => p.viewport,
2788
- getBackgroundsElement: () => Oo.element,
2789
- registerPlugin: Ro.registerPlugin.bind(Ro),
2790
- hasPlugin: Ro.hasPlugin.bind(Ro),
2791
- getPlugin: Ro.getPlugin.bind(Ro),
2792
- getPlugins: Ro.getRegisteredPlugins.bind(Ro)
2788
+ getBackgroundsElement: () => Ao.element,
2789
+ registerPlugin: Bo.registerPlugin.bind(Bo),
2790
+ hasPlugin: Bo.hasPlugin.bind(Bo),
2791
+ getPlugin: Bo.getPlugin.bind(Bo),
2792
+ getPlugins: Bo.getRegisteredPlugins.bind(Bo)
2793
2793
  };
2794
- return ge$1(n, We$1(Q$2({}, zc), {
2795
- announceStatus: ls,
2796
- getStatusText: us,
2797
- focus: Bo,
2798
- scroll: ko,
2799
- progress: Io,
2800
- controls: Fo,
2801
- location: Po,
2802
- overview: Mo,
2803
- keyboard: No,
2804
- fragments: jo,
2805
- backgrounds: Oo,
2806
- slideContent: wo,
2807
- slideNumber: To,
2808
- onUserInput: jc,
2809
- closeOverlay: zo.close.bind(zo),
2810
- updateSlidesVisibility: ic,
2811
- layoutSlideContents: js,
2812
- transformSlides: Es,
2813
- cueAutoSlide: xc,
2814
- cancelAutoSlide: Sc
2815
- })), zc;
2794
+ return ge$1(n, We$1(Q$2({}, Vc), {
2795
+ announceStatus: ds,
2796
+ getStatusText: fs,
2797
+ focus: Ho,
2798
+ scroll: jo,
2799
+ progress: Ro,
2800
+ controls: Lo,
2801
+ location: Io,
2802
+ overview: Po,
2803
+ keyboard: Fo,
2804
+ fragments: No,
2805
+ backgrounds: Ao,
2806
+ slideContent: Eo,
2807
+ slideNumber: Do,
2808
+ onUserInput: Nc,
2809
+ closeOverlay: Vo.close.bind(Vo),
2810
+ updateSlidesVisibility: oc,
2811
+ layoutSlideContents: Ns,
2812
+ transformSlides: Os,
2813
+ cueAutoSlide: Cc,
2814
+ cancelAutoSlide: wc
2815
+ })), Vc;
2816
2816
  }
2817
2817
  var ce$1 = Ut$1, qt$1 = [];
2818
2818
  ce$1.initialize = (e5) => {
@@ -2857,36 +2857,36 @@ function v$1(e5, t, n) {
2857
2857
  function y(e5, t, n) {
2858
2858
  return e5 ? JSON.stringify(v$1(e5, t, n)) : "[]";
2859
2859
  }
2860
- function b({ config: e5, plugins: t = ee$1, onReady: n, onSync: r, onSlideSync: i, onSlideChange: a, onSlideTransitionEnd: o, onFragmentShown: s, onFragmentHidden: c, onOverviewShown: l, onOverviewHidden: u, onPaused: f, onResumed: go, deckRef: _o, className: p, style: vo, children: yo }) {
2861
- let bo = (0, import_react.useRef)(null), xo = (0, import_react.useRef)(null), So = (0, import_react.useRef)(null), [Co, wo] = (0, import_react.useState)(null), To = (0, import_react.useRef)(t), Eo = (0, import_react.useRef)(false), Do = (0, import_react.useRef)(e5), Oo = (0, import_react.useRef)(null), ko = (0, import_react.useRef)(/* @__PURE__ */ new WeakMap()), Ao = (0, import_react.useRef)(1), jo = (0, import_react.useRef)(false), Mo = (0, import_react.useRef)(0);
2860
+ function b({ config: e5, plugins: t = ee$1, onReady: n, onSync: r, onSlideSync: i, onSlideChange: a, onSlideTransitionEnd: o, onFragmentShown: s, onFragmentHidden: c, onOverviewShown: l, onOverviewHidden: u, onPaused: f, onResumed: vo, deckRef: yo, className: p, style: bo, children: xo }) {
2861
+ let So = (0, import_react.useRef)(null), Co = (0, import_react.useRef)(null), wo = (0, import_react.useRef)(null), [To, Eo] = (0, import_react.useState)(null), Do = (0, import_react.useRef)(t), Oo = (0, import_react.useRef)(false), ko = (0, import_react.useRef)(e5), Ao = (0, import_react.useRef)(null), jo = (0, import_react.useRef)(/* @__PURE__ */ new WeakMap()), Mo = (0, import_react.useRef)(1), No = (0, import_react.useRef)(false), Po = (0, import_react.useRef)(0);
2862
2862
  return (0, import_react.useEffect)(() => {
2863
- if (jo.current = true, Mo.current += 1, So.current) So.current.isReady() && wo(So.current);
2863
+ if (No.current = true, Po.current += 1, wo.current) wo.current.isReady() && Eo(wo.current);
2864
2864
  else {
2865
- let t2 = new ce$1(bo.current, {
2865
+ let t2 = new ce$1(So.current, {
2866
2866
  ...e5,
2867
- plugins: To.current
2867
+ plugins: Do.current
2868
2868
  });
2869
- Do.current = e5, So.current = t2, t2.initialize().then(() => {
2870
- !jo.current || So.current !== t2 || (wo(t2), n == null ? void 0 : n(t2));
2869
+ ko.current = e5, wo.current = t2, t2.initialize().then(() => {
2870
+ !No.current || wo.current !== t2 || (Eo(t2), n == null ? void 0 : n(t2));
2871
2871
  });
2872
2872
  }
2873
2873
  return () => {
2874
- jo.current = false;
2875
- let e6 = So.current;
2874
+ No.current = false;
2875
+ let e6 = wo.current;
2876
2876
  if (!e6) return;
2877
- let t2 = ++Mo.current;
2877
+ let t2 = ++Po.current;
2878
2878
  Promise.resolve().then(() => {
2879
- if (!(jo.current || Mo.current !== t2) && So.current === e6) {
2879
+ if (!(No.current || Po.current !== t2) && wo.current === e6) {
2880
2880
  try {
2881
2881
  e6.destroy();
2882
2882
  } catch {
2883
2883
  }
2884
- So.current === e6 && (So.current = null);
2884
+ wo.current === e6 && (wo.current = null);
2885
2885
  }
2886
2886
  });
2887
2887
  };
2888
- }, []), (0, import_react.useEffect)(() => (g(_o, Co), () => g(_o, null)), [_o, Co]), (0, import_react.useEffect)(() => {
2889
- if (!Co) return;
2888
+ }, []), (0, import_react.useEffect)(() => (g(yo, To), () => g(yo, null)), [yo, To]), (0, import_react.useEffect)(() => {
2889
+ if (!To) return;
2890
2890
  let e6 = [
2891
2891
  ["sync", r],
2892
2892
  ["slidesync", i],
@@ -2897,14 +2897,14 @@ function b({ config: e5, plugins: t = ee$1, onReady: n, onSync: r, onSlideSync:
2897
2897
  ["overviewshown", l],
2898
2898
  ["overviewhidden", u],
2899
2899
  ["paused", f],
2900
- ["resumed", go]
2900
+ ["resumed", vo]
2901
2901
  ].filter((e7) => e7[1] != null);
2902
- for (let [t2, n2] of e6) Co.on(t2, n2);
2902
+ for (let [t2, n2] of e6) To.on(t2, n2);
2903
2903
  return () => {
2904
- for (let [t2, n2] of e6) Co.off(t2, n2);
2904
+ for (let [t2, n2] of e6) To.off(t2, n2);
2905
2905
  };
2906
2906
  }, [
2907
- Co,
2907
+ To,
2908
2908
  r,
2909
2909
  i,
2910
2910
  a,
@@ -2914,30 +2914,30 @@ function b({ config: e5, plugins: t = ee$1, onReady: n, onSync: r, onSlideSync:
2914
2914
  l,
2915
2915
  u,
2916
2916
  f,
2917
- go
2917
+ vo
2918
2918
  ]), (0, import_react.useLayoutEffect)(() => {
2919
2919
  var _a2;
2920
- !Co || !((_a2 = So.current) == null ? void 0 : _a2.isReady()) || te$1(Do.current, e5) && (Eo.current = true, So.current.configure(e5 ?? {}), Do.current = e5);
2921
- }, [Co, e5]), (0, import_react.useLayoutEffect)(() => {
2920
+ !To || !((_a2 = wo.current) == null ? void 0 : _a2.isReady()) || te$1(ko.current, e5) && (Oo.current = true, wo.current.configure(e5 ?? {}), ko.current = e5);
2921
+ }, [To, e5]), (0, import_react.useLayoutEffect)(() => {
2922
2922
  var _a2;
2923
- let e6 = Eo.current;
2924
- Eo.current = false;
2925
- let t2 = y(xo.current, ko.current, Ao);
2923
+ let e6 = Oo.current;
2924
+ Oo.current = false;
2925
+ let t2 = y(Co.current, jo.current, Mo);
2926
2926
  if (e6) {
2927
- Oo.current = t2;
2927
+ Ao.current = t2;
2928
2928
  return;
2929
2929
  }
2930
- ((_a2 = So.current) == null ? void 0 : _a2.isReady()) && Oo.current !== t2 && (So.current.sync(), Oo.current = t2);
2930
+ ((_a2 = wo.current) == null ? void 0 : _a2.isReady()) && Ao.current !== t2 && (wo.current.sync(), Ao.current = t2);
2931
2931
  }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(h.Provider, {
2932
- value: Co,
2932
+ value: To,
2933
2933
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
2934
2934
  className: p ? `reveal ${p}` : "reveal",
2935
- style: vo,
2936
- ref: bo,
2935
+ style: bo,
2936
+ ref: So,
2937
2937
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
2938
2938
  className: "slides",
2939
- ref: xo,
2940
- children: yo
2939
+ ref: Co,
2940
+ children: xo
2941
2941
  })
2942
2942
  })
2943
2943
  });
@@ -2989,8 +2989,8 @@ function C$1(e5, t) {
2989
2989
  }
2990
2990
  return n;
2991
2991
  }
2992
- function w({ children: e5, background: t, backgroundImage: n, backgroundVideo: r, backgroundVideoLoop: i, backgroundVideoMuted: a, backgroundIframe: o, backgroundColor: s, backgroundGradient: c, backgroundSize: l, backgroundPosition: u, backgroundRepeat: f, backgroundOpacity: go, backgroundTransition: _o, visibility: p, autoAnimate: vo, autoAnimateId: yo, autoAnimateRestart: bo, autoAnimateUnmatched: xo, autoAnimateEasing: So, autoAnimateDuration: Co, autoAnimateDelay: wo, transition: To, transitionSpeed: Eo, autoSlide: Do, notes: Oo, backgroundInteractive: ko, preload: Ao, ...jo }) {
2993
- let Mo = (0, import_react.useContext)(h), No = (0, import_react.useRef)(null), Po = (0, import_react.useRef)(null), Fo = (0, import_react.useRef)(null), Lo = C$1(jo, {
2992
+ function w({ children: e5, background: t, backgroundImage: n, backgroundVideo: r, backgroundVideoLoop: i, backgroundVideoMuted: a, backgroundIframe: o, backgroundColor: s, backgroundGradient: c, backgroundSize: l, backgroundPosition: u, backgroundRepeat: f, backgroundOpacity: vo, backgroundTransition: yo, visibility: p, autoAnimate: bo, autoAnimateId: xo, autoAnimateRestart: So, autoAnimateUnmatched: Co, autoAnimateEasing: wo, autoAnimateDuration: To, autoAnimateDelay: Eo, transition: Do, transitionSpeed: Oo, autoSlide: ko, notes: Ao, backgroundInteractive: jo, preload: Mo, ...No }) {
2993
+ let Po = (0, import_react.useContext)(h), Fo = (0, import_react.useRef)(null), Io = (0, import_react.useRef)(null), Lo = (0, import_react.useRef)(null), Ro = C$1(No, {
2994
2994
  background: t,
2995
2995
  backgroundImage: n,
2996
2996
  backgroundVideo: r,
@@ -3002,36 +3002,36 @@ function w({ children: e5, background: t, backgroundImage: n, backgroundVideo: r
3002
3002
  backgroundSize: l,
3003
3003
  backgroundPosition: u,
3004
3004
  backgroundRepeat: f,
3005
- backgroundOpacity: go,
3006
- backgroundTransition: _o,
3005
+ backgroundOpacity: vo,
3006
+ backgroundTransition: yo,
3007
3007
  visibility: p,
3008
- autoAnimate: vo,
3009
- autoAnimateId: yo,
3010
- autoAnimateRestart: bo,
3011
- autoAnimateUnmatched: xo,
3012
- autoAnimateEasing: So,
3013
- autoAnimateDuration: Co,
3014
- autoAnimateDelay: wo,
3015
- transition: To,
3016
- transitionSpeed: Eo,
3017
- autoSlide: Do,
3018
- notes: Oo,
3019
- backgroundInteractive: ko,
3020
- preload: Ao
3021
- }), Ro = S$1(Lo);
3008
+ autoAnimate: bo,
3009
+ autoAnimateId: xo,
3010
+ autoAnimateRestart: So,
3011
+ autoAnimateUnmatched: Co,
3012
+ autoAnimateEasing: wo,
3013
+ autoAnimateDuration: To,
3014
+ autoAnimateDelay: Eo,
3015
+ transition: Do,
3016
+ transitionSpeed: Oo,
3017
+ autoSlide: ko,
3018
+ notes: Ao,
3019
+ backgroundInteractive: jo,
3020
+ preload: Mo
3021
+ }), Bo = S$1(Ro);
3022
3022
  return (0, import_react.useLayoutEffect)(() => {
3023
- let e6 = No.current;
3024
- if (!Mo || !e6 || typeof Mo.syncSlide != "function") return;
3025
- if (Po.current !== Mo) {
3026
- Po.current = Mo, Fo.current = Ro;
3023
+ let e6 = Fo.current;
3024
+ if (!Po || !e6 || typeof Po.syncSlide != "function") return;
3025
+ if (Io.current !== Po) {
3026
+ Io.current = Po, Lo.current = Bo;
3027
3027
  return;
3028
3028
  }
3029
- if (Ro === "[]") return;
3030
- let t2 = Po.current === Mo, n2 = Fo.current === Ro;
3031
- t2 && n2 || (Mo.syncSlide(e6), Po.current = Mo, Fo.current = Ro);
3032
- }, [Mo, Ro]), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("section", {
3033
- ref: No,
3034
- ...Lo,
3029
+ if (Bo === "[]") return;
3030
+ let t2 = Io.current === Po, n2 = Lo.current === Bo;
3031
+ t2 && n2 || (Po.syncSlide(e6), Io.current = Po, Lo.current = Bo);
3032
+ }, [Po, Bo]), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("section", {
3033
+ ref: Fo,
3034
+ ...Ro,
3035
3035
  children: e5
3036
3036
  });
3037
3037
  }
@@ -3413,16 +3413,16 @@ ${c}` : c;
3413
3413
  r2 = t[0], e5 = e5.substring(r2.length);
3414
3414
  let c = Qe(t[2].split("\n", 1)[0], t[1].length), l = e5.split("\n", 1)[0], u = !c.trim(), f = 0;
3415
3415
  if (this.options.pedantic ? (f = 2, s2 = c.trimStart()) : u ? f = t[1].length + 1 : (f = c.search(this.rules.other.nonSpaceChar), f = f > 4 ? 1 : f, s2 = c.slice(f), f += t[1].length), u && this.rules.other.blankLine.test(l) && (r2 += l + "\n", e5 = e5.substring(l.length + 1), n2 = true), !n2) {
3416
- let t2 = this.rules.other.nextBulletRegex(f), n3 = this.rules.other.hrRegex(f), i2 = this.rules.other.fencesBeginRegex(f), a2 = this.rules.other.headingBeginRegex(f), o2 = this.rules.other.htmlBeginRegex(f), go = this.rules.other.blockquoteBeginRegex(f);
3416
+ let t2 = this.rules.other.nextBulletRegex(f), n3 = this.rules.other.hrRegex(f), i2 = this.rules.other.fencesBeginRegex(f), a2 = this.rules.other.headingBeginRegex(f), o2 = this.rules.other.htmlBeginRegex(f), vo = this.rules.other.blockquoteBeginRegex(f);
3417
3417
  for (; e5; ) {
3418
- let _o = e5.split("\n", 1)[0], p;
3419
- if (l = _o, this.options.pedantic ? (l = l.replace(this.rules.other.listReplaceNesting, " "), p = l) : p = l.replace(this.rules.other.tabCharGlobal, " "), i2.test(l) || a2.test(l) || o2.test(l) || go.test(l) || t2.test(l) || n3.test(l)) break;
3418
+ let yo = e5.split("\n", 1)[0], p;
3419
+ if (l = yo, this.options.pedantic ? (l = l.replace(this.rules.other.listReplaceNesting, " "), p = l) : p = l.replace(this.rules.other.tabCharGlobal, " "), i2.test(l) || a2.test(l) || o2.test(l) || vo.test(l) || t2.test(l) || n3.test(l)) break;
3420
3420
  if (p.search(this.rules.other.nonSpaceChar) >= f || !l.trim()) s2 += "\n" + p.slice(f);
3421
3421
  else {
3422
3422
  if (u || c.replace(this.rules.other.tabCharGlobal, " ").search(this.rules.other.nonSpaceChar) >= 4 || i2.test(c) || a2.test(c) || n3.test(c)) break;
3423
3423
  s2 += "\n" + l;
3424
3424
  }
3425
- u = !l.trim(), r2 += _o + "\n", e5 = e5.substring(_o.length + 1), c = p.slice(f);
3425
+ u = !l.trim(), r2 += yo + "\n", e5 = e5.substring(yo.length + 1), c = p.slice(f);
3426
3426
  }
3427
3427
  }
3428
3428
  i.loose || (o ? i.loose = true : this.rules.other.doubleBlankLine.test(r2) && (o = true)), i.items.push({
@@ -4697,8 +4697,8 @@ const SlideCellView = (e5) => (Logger.warn("SlideCellView islands stub rendered;
4697
4697
  var import_compiler_runtime$1 = require_compiler_runtime(), PERSIST_DELAY_MS = 300;
4698
4698
  const SlideNotesEditor = (e5) => {
4699
4699
  var _a2;
4700
- let t = (0, import_compiler_runtime$1.c)(25), { layout: n, setLayout: a, cellId: o, className: s } = e5, c = o ? ((_a2 = n.cells.get(o)) == null ? void 0 : _a2.speakerNotes) ?? "" : "", [l, u] = (0, import_react.useState)(c), f = (0, import_react.useRef)(false), go;
4701
- t[0] !== n || t[1] !== a ? (go = (e6, t2) => {
4700
+ let t = (0, import_compiler_runtime$1.c)(25), { layout: n, setLayout: a, cellId: o, className: s } = e5, c = o ? ((_a2 = n.cells.get(o)) == null ? void 0 : _a2.speakerNotes) ?? "" : "", [l, u] = (0, import_react.useState)(c), f = (0, import_react.useRef)(false), vo;
4701
+ t[0] !== n || t[1] !== a ? (vo = (e6, t2) => {
4702
4702
  f.current = false;
4703
4703
  let r = n.cells.get(e6);
4704
4704
  if (((r == null ? void 0 : r.speakerNotes) ?? "") === t2) return;
@@ -4710,41 +4710,41 @@ const SlideNotesEditor = (e5) => {
4710
4710
  ...n,
4711
4711
  cells: i
4712
4712
  });
4713
- }, t[0] = n, t[1] = a, t[2] = go) : go = t[2];
4714
- let _o = useDebouncedCallback(useEvent_default(go), PERSIST_DELAY_MS), p = (0, import_react.useRef)(o), vo, yo;
4715
- t[3] !== o || t[4] !== l || t[5] !== c || t[6] !== _o ? (vo = () => {
4713
+ }, t[0] = n, t[1] = a, t[2] = vo) : vo = t[2];
4714
+ let yo = useDebouncedCallback(useEvent_default(vo), PERSIST_DELAY_MS), p = (0, import_react.useRef)(o), bo, xo;
4715
+ t[3] !== o || t[4] !== l || t[5] !== c || t[6] !== yo ? (bo = () => {
4716
4716
  if (p.current !== o) {
4717
- _o.flush(), f.current = false, u(c), p.current = o;
4717
+ yo.flush(), f.current = false, u(c), p.current = o;
4718
4718
  return;
4719
4719
  }
4720
4720
  !f.current && c !== l && u(c);
4721
- }, yo = [
4721
+ }, xo = [
4722
4722
  o,
4723
4723
  c,
4724
4724
  l,
4725
- _o
4726
- ], t[3] = o, t[4] = l, t[5] = c, t[6] = _o, t[7] = vo, t[8] = yo) : (vo = t[7], yo = t[8]), (0, import_react.useEffect)(vo, yo);
4727
- let bo, xo;
4728
- t[9] === _o ? (bo = t[10], xo = t[11]) : (bo = () => () => {
4729
- _o.flush();
4730
- }, xo = [_o], t[9] = _o, t[10] = bo, t[11] = xo), (0, import_react.useEffect)(bo, xo);
4731
- let So;
4732
- t[12] !== o || t[13] !== _o ? (So = (e6) => {
4733
- u(e6), o && (f.current = true, _o(o, e6));
4734
- }, t[12] = o, t[13] = _o, t[14] = So) : So = t[14];
4735
- let Co = So, wo;
4736
- t[15] === s ? wo = t[16] : (wo = cn("h-full min-h-0 flex flex-col bg-muted/40 dark:bg-muted/20 border-t", s), t[15] = s, t[16] = wo);
4737
- let To;
4738
- t[17] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (To = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("header", {
4725
+ yo
4726
+ ], t[3] = o, t[4] = l, t[5] = c, t[6] = yo, t[7] = bo, t[8] = xo) : (bo = t[7], xo = t[8]), (0, import_react.useEffect)(bo, xo);
4727
+ let So, Co;
4728
+ t[9] === yo ? (So = t[10], Co = t[11]) : (So = () => () => {
4729
+ yo.flush();
4730
+ }, Co = [yo], t[9] = yo, t[10] = So, t[11] = Co), (0, import_react.useEffect)(So, Co);
4731
+ let wo;
4732
+ t[12] !== o || t[13] !== yo ? (wo = (e6) => {
4733
+ u(e6), o && (f.current = true, yo(o, e6));
4734
+ }, t[12] = o, t[13] = yo, t[14] = wo) : wo = t[14];
4735
+ let To = wo, Eo;
4736
+ t[15] === s ? Eo = t[16] : (Eo = cn("h-full min-h-0 flex flex-col bg-muted/40 dark:bg-muted/20 border-t", s), t[15] = s, t[16] = Eo);
4737
+ let Do;
4738
+ t[17] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (Do = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("header", {
4739
4739
  className: "flex items-center gap-1.5 px-3 h-8 shrink-0 text-xs font-medium uppercase tracking-wide text-muted-foreground",
4740
4740
  children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(StickyNote, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "Speaker notes" })]
4741
- }), t[17] = To) : To = t[17];
4742
- let Eo;
4743
- t[18] !== o || t[19] !== l || t[20] !== Co ? (Eo = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
4741
+ }), t[17] = Do) : Do = t[17];
4742
+ let Oo;
4743
+ t[18] !== o || t[19] !== l || t[20] !== To ? (Oo = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
4744
4744
  className: "flex-1 min-h-0 p-2",
4745
4745
  children: o ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("textarea", {
4746
4746
  value: l,
4747
- onChange: (e6) => Co(e6.target.value),
4747
+ onChange: (e6) => To(e6.target.value),
4748
4748
  onClick: Events.stopPropagation(),
4749
4749
  placeholder: "Add notes for this slide. Visible to you in speaker view (press S during presentation).",
4750
4750
  className: cn("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"),
@@ -4753,14 +4753,14 @@ const SlideNotesEditor = (e5) => {
4753
4753
  className: "h-full flex items-center justify-center text-xs text-muted-foreground",
4754
4754
  children: "Select a slide to add notes."
4755
4755
  })
4756
- }), t[18] = o, t[19] = l, t[20] = Co, t[21] = Eo) : Eo = t[21];
4757
- let Oo;
4758
- return t[22] !== wo || t[23] !== Eo ? (Oo = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("section", {
4759
- className: wo,
4756
+ }), t[18] = o, t[19] = l, t[20] = To, t[21] = Oo) : Oo = t[21];
4757
+ let Ao;
4758
+ return t[22] !== Eo || t[23] !== Oo ? (Ao = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("section", {
4759
+ className: Eo,
4760
4760
  "aria-label": "Speaker notes",
4761
4761
  onKeyDown: _temp$1,
4762
- children: [To, Eo]
4763
- }), t[22] = wo, t[23] = Eo, t[24] = Oo) : Oo = t[24], Oo;
4762
+ children: [Do, Oo]
4763
+ }), t[22] = Eo, t[23] = Oo, t[24] = Ao) : Ao = t[24], Ao;
4764
4764
  };
4765
4765
  function _temp$1(e5) {
4766
4766
  return e5.stopPropagation();
@@ -6059,16 +6059,16 @@ ${c}` : c;
6059
6059
  r2 = t[0], e5 = e5.substring(r2.length);
6060
6060
  let c = ie(t[2].split("\n", 1)[0], t[1].length), l = e5.split("\n", 1)[0], u = !c.trim(), f = 0;
6061
6061
  if (this.options.pedantic ? (f = 2, s2 = c.trimStart()) : u ? f = t[1].length + 1 : (f = c.search(this.rules.other.nonSpaceChar), f = f > 4 ? 1 : f, s2 = c.slice(f), f += t[1].length), u && this.rules.other.blankLine.test(l) && (r2 += l + "\n", e5 = e5.substring(l.length + 1), n2 = true), !n2) {
6062
- let t2 = this.rules.other.nextBulletRegex(f), n3 = this.rules.other.hrRegex(f), i2 = this.rules.other.fencesBeginRegex(f), a2 = this.rules.other.headingBeginRegex(f), o2 = this.rules.other.htmlBeginRegex(f), go = this.rules.other.blockquoteBeginRegex(f);
6062
+ let t2 = this.rules.other.nextBulletRegex(f), n3 = this.rules.other.hrRegex(f), i2 = this.rules.other.fencesBeginRegex(f), a2 = this.rules.other.headingBeginRegex(f), o2 = this.rules.other.htmlBeginRegex(f), vo = this.rules.other.blockquoteBeginRegex(f);
6063
6063
  for (; e5; ) {
6064
- let _o = e5.split("\n", 1)[0], p;
6065
- if (l = _o, this.options.pedantic ? (l = l.replace(this.rules.other.listReplaceNesting, " "), p = l) : p = l.replace(this.rules.other.tabCharGlobal, " "), i2.test(l) || a2.test(l) || o2.test(l) || go.test(l) || t2.test(l) || n3.test(l)) break;
6064
+ let yo = e5.split("\n", 1)[0], p;
6065
+ if (l = yo, this.options.pedantic ? (l = l.replace(this.rules.other.listReplaceNesting, " "), p = l) : p = l.replace(this.rules.other.tabCharGlobal, " "), i2.test(l) || a2.test(l) || o2.test(l) || vo.test(l) || t2.test(l) || n3.test(l)) break;
6066
6066
  if (p.search(this.rules.other.nonSpaceChar) >= f || !l.trim()) s2 += "\n" + p.slice(f);
6067
6067
  else {
6068
6068
  if (u || c.replace(this.rules.other.tabCharGlobal, " ").search(this.rules.other.nonSpaceChar) >= 4 || i2.test(c) || a2.test(c) || n3.test(c)) break;
6069
6069
  s2 += "\n" + l;
6070
6070
  }
6071
- u = !l.trim(), r2 += _o + "\n", e5 = e5.substring(_o.length + 1), c = p.slice(f);
6071
+ u = !l.trim(), r2 += yo + "\n", e5 = e5.substring(yo.length + 1), c = p.slice(f);
6072
6072
  }
6073
6073
  }
6074
6074
  i.loose || (o ? i.loose = true : this.rules.other.doubleBlankLine.test(r2) && (o = true)), i.items.push({
@@ -7279,35 +7279,35 @@ function useParkedPreview(e5) {
7279
7279
  activeCellId: a,
7280
7280
  cellId: null
7281
7281
  }, t[3] = a, t[4] = l);
7282
- let [u, f] = (0, import_react.useState)(l), go = u.cellId;
7283
- u.activeCellId === a ? s && go !== a && (go = a, f({
7282
+ let [u, f] = (0, import_react.useState)(l), vo = u.cellId;
7283
+ u.activeCellId === a ? s && vo !== a && (vo = a, f({
7284
7284
  activeCellId: a,
7285
- cellId: go
7286
- })) : (go = s ? a : null, f({
7285
+ cellId: vo
7286
+ })) : (vo = s ? a : null, f({
7287
7287
  activeCellId: a,
7288
- cellId: go
7288
+ cellId: vo
7289
7289
  }));
7290
- let _o = !c && a != null && go === a, p = _o ? go : null, vo;
7291
- t[5] === p ? vo = t[6] : (vo = {
7290
+ let yo = !c && a != null && vo === a, p = yo ? vo : null, bo;
7291
+ t[5] === p ? bo = t[6] : (bo = {
7292
7292
  cellId: p,
7293
7293
  show: true
7294
- }, t[5] = p, t[6] = vo);
7295
- let [yo, bo] = (0, import_react.useState)(vo), xo = yo.show;
7296
- yo.cellId !== p && (xo = true, bo({
7294
+ }, t[5] = p, t[6] = bo);
7295
+ let [xo, So] = (0, import_react.useState)(bo), Co = xo.show;
7296
+ xo.cellId !== p && (Co = true, So({
7297
7297
  cellId: p,
7298
7298
  show: true
7299
7299
  }));
7300
- let So;
7301
- t[7] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (So = () => bo(_temp), t[7] = So) : So = t[7];
7302
- let Co = useEvent_default(So), wo = c || _o ? n ?? null : null, To;
7303
- return t[8] !== p || t[9] !== xo || t[10] !== _o || t[11] !== s || t[12] !== wo || t[13] !== Co ? (To = {
7304
- parkedPreviewCell: wo,
7305
- isHeldEdit: _o,
7300
+ let wo;
7301
+ t[7] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (wo = () => So(_temp), t[7] = wo) : wo = t[7];
7302
+ let To = useEvent_default(wo), Eo = c || yo ? n ?? null : null, Do;
7303
+ return t[8] !== p || t[9] !== Co || t[10] !== yo || t[11] !== s || t[12] !== Eo || t[13] !== To ? (Do = {
7304
+ parkedPreviewCell: Eo,
7305
+ isHeldEdit: yo,
7306
7306
  isNoOutputPreview: s,
7307
7307
  heldEditCellId: p,
7308
- heldShowsCode: xo,
7309
- toggleHeldShowsCode: Co
7310
- }, t[8] = p, t[9] = xo, t[10] = _o, t[11] = s, t[12] = wo, t[13] = Co, t[14] = To) : To = t[14], To;
7308
+ heldShowsCode: Co,
7309
+ toggleHeldShowsCode: To
7310
+ }, t[8] = p, t[9] = Co, t[10] = yo, t[11] = s, t[12] = Eo, t[13] = To, t[14] = Do) : Do = t[14], Do;
7311
7311
  }
7312
7312
  function _temp(e5) {
7313
7313
  return {
@@ -7325,48 +7325,62 @@ function resolveSlideContentStyle(e5) {
7325
7325
  return { margin: "auto 20px" };
7326
7326
  }
7327
7327
  }
7328
+ const CellOutputBlock = (e5) => {
7329
+ let t = (0, import_compiler_runtime.c)(13), { cell: n } = e5, r;
7330
+ t[0] !== n.id || t[1] !== n.name ? (r = cellDomProps(n.id, n.name), t[0] = n.id, t[1] = n.name, t[2] = r) : r = t[2];
7331
+ let i = n.id, a = n.status, o = n.output, s;
7332
+ t[3] === n ? s = t[4] : (s = outputIsStale(n, false), t[3] = n, t[4] = s);
7333
+ let l;
7334
+ t[5] !== n.id || t[6] !== n.output || t[7] !== n.status || t[8] !== s ? (l = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Slide, {
7335
+ cellId: i,
7336
+ status: a,
7337
+ output: o,
7338
+ stale: s
7339
+ }), t[5] = n.id, t[6] = n.output, t[7] = n.status, t[8] = s, t[9] = l) : l = t[9];
7340
+ let u;
7341
+ return t[10] !== r || t[11] !== l ? (u = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7342
+ className: "flex flex-col",
7343
+ ...r,
7344
+ children: l
7345
+ }), t[10] = r, t[11] = l, t[12] = u) : u = t[12], u;
7346
+ };
7328
7347
  var SubslideView = (e5) => {
7329
- let t = (0, import_compiler_runtime.c)(24), { subslide: n, resolveShowCode: r, isEditable: i, slideConfigs: a, contentStyle: o } = e5, s, c, u, f, go, _o;
7348
+ let t = (0, import_compiler_runtime.c)(24), { subslide: n, resolveShowCode: r, isEditable: i, slideConfigs: a, contentStyle: o } = e5, s, c, l, u, f, vo;
7330
7349
  if (t[0] !== o || t[1] !== i || t[2] !== r || t[3] !== a || t[4] !== n) {
7331
- let { slideLevel: e6, cumulativeByBlock: p2 } = buildSubslideNotes(n, a);
7332
- u = e6;
7333
- let vo2 = n.blocks.some((e7) => e7.cells.some((e8) => r(e8.id)));
7334
- c = w, s = SlideScrollContainer, f = vo2 ? "mo-slide-content flex flex-col gap-3" : "mo-slide-content", go = o, _o = n.blocks.map((e7, t2) => {
7335
- let n2 = e7.cells.map((e8) => r(e8.id) ? i ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SlideCellView, { cell: e8 }, e8.id) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SlideCellReadOnlyView, { cell: e8 }, e8.id) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Slide, {
7336
- cellId: e8.id,
7337
- status: e8.status,
7338
- output: e8.output,
7339
- stale: outputIsStale(e8, false)
7340
- }, e8.id));
7350
+ let { slideLevel: e6, cumulativeByBlock: yo2 } = buildSubslideNotes(n, a);
7351
+ l = e6;
7352
+ let p2 = n.blocks.some((e7) => e7.cells.some((e8) => r(e8.id)));
7353
+ c = w, s = SlideScrollContainer, u = p2 ? "mo-slide-content flex flex-col gap-3" : "mo-slide-content", f = o, vo = n.blocks.map((e7, t2) => {
7354
+ let n2 = e7.cells.map((e8) => r(e8.id) ? i ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SlideCellView, { cell: e8 }, e8.id) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SlideCellReadOnlyView, { cell: e8 }, e8.id) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CellOutputBlock, { cell: e8 }, e8.id));
7341
7355
  if (e7.isFragment) {
7342
- let e8 = p2.get(t2);
7356
+ let e8 = yo2.get(t2);
7343
7357
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Bt, {
7344
7358
  as: "div",
7345
7359
  children: [n2, e8 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NotesAside, { text: e8 })]
7346
7360
  }, t2);
7347
7361
  }
7348
7362
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.Fragment, { children: n2 }, t2);
7349
- }), t[0] = o, t[1] = i, t[2] = r, t[3] = a, t[4] = n, t[5] = s, t[6] = c, t[7] = u, t[8] = f, t[9] = go, t[10] = _o;
7350
- } else s = t[5], c = t[6], u = t[7], f = t[8], go = t[9], _o = t[10];
7351
- let p;
7352
- t[11] !== f || t[12] !== go || t[13] !== _o ? (p = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7353
- className: f,
7354
- style: go,
7355
- children: _o
7356
- }), t[11] = f, t[12] = go, t[13] = _o, t[14] = p) : p = t[14];
7357
- let vo;
7358
- t[15] !== s || t[16] !== p ? (vo = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(s, { children: p }), t[15] = s, t[16] = p, t[17] = vo) : vo = t[17];
7363
+ }), 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] = f, t[10] = vo;
7364
+ } else s = t[5], c = t[6], l = t[7], u = t[8], f = t[9], vo = t[10];
7359
7365
  let yo;
7360
- t[18] === u ? yo = t[19] : (yo = u && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NotesAside, { text: u }), t[18] = u, t[19] = yo);
7366
+ t[11] !== u || t[12] !== f || t[13] !== vo ? (yo = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7367
+ className: u,
7368
+ style: f,
7369
+ children: vo
7370
+ }), t[11] = u, t[12] = f, t[13] = vo, t[14] = yo) : yo = t[14];
7371
+ let p;
7372
+ t[15] !== s || t[16] !== yo ? (p = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(s, { children: yo }), t[15] = s, t[16] = yo, t[17] = p) : p = t[17];
7373
+ let bo;
7374
+ t[18] === l ? bo = t[19] : (bo = l && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(NotesAside, { text: l }), t[18] = l, t[19] = bo);
7361
7375
  let xo;
7362
- return t[20] !== c || t[21] !== vo || t[22] !== yo ? (xo = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(c, { children: [vo, yo] }), t[20] = c, t[21] = vo, t[22] = yo, t[23] = xo) : xo = t[23], xo;
7376
+ return t[20] !== c || t[21] !== p || t[22] !== bo ? (xo = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(c, { children: [p, bo] }), t[20] = c, t[21] = p, t[22] = bo, t[23] = xo) : xo = t[23], xo;
7363
7377
  };
7364
7378
  function parkedRendersSource(e5) {
7365
7379
  let { isNoOutputPreview: t, isEditable: n, showCode: r } = e5;
7366
7380
  return t && n || r;
7367
7381
  }
7368
7382
  var ParkedPreviewContent = (e5) => {
7369
- let t = (0, import_compiler_runtime.c)(10), { cell: n, isNoOutputPreview: r, isEditable: i, showCode: a } = e5;
7383
+ let t = (0, import_compiler_runtime.c)(5), { cell: n, isNoOutputPreview: r, isEditable: i, showCode: a } = e5;
7370
7384
  if (parkedRendersSource({
7371
7385
  isNoOutputPreview: r,
7372
7386
  isEditable: i,
@@ -7375,187 +7389,180 @@ var ParkedPreviewContent = (e5) => {
7375
7389
  let e6;
7376
7390
  return t[0] !== n || t[1] !== i ? (e6 = i ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SlideCellView, { cell: n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SlideCellReadOnlyView, { cell: n }), t[0] = n, t[1] = i, t[2] = e6) : e6 = t[2], e6;
7377
7391
  }
7378
- let o = n.id, s = n.status, c = n.output, u;
7379
- t[3] === n ? u = t[4] : (u = outputIsStale(n, false), t[3] = n, t[4] = u);
7380
- let f;
7381
- return t[5] !== n.id || t[6] !== n.output || t[7] !== n.status || t[8] !== u ? (f = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Slide, {
7382
- cellId: o,
7383
- status: s,
7384
- output: c,
7385
- stale: u
7386
- }), t[5] = n.id, t[6] = n.output, t[7] = n.status, t[8] = u, t[9] = f) : f = t[9], f;
7387
- }, reveal_component_default = ({ slideCells: e5, layout: o, setLayout: s, noOutputIds: l, activeIndex: u, onSlideChange: f, mode: yo, configWidth: bo, isEditable: Co = false }) => {
7392
+ let o;
7393
+ return t[3] === n ? o = t[4] : (o = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CellOutputBlock, { cell: n }), t[3] = n, t[4] = o), o;
7394
+ }, reveal_component_default = ({ slideCells: e5, layout: o, setLayout: s, noOutputIds: c, activeIndex: l, onSlideChange: u, mode: Co, configWidth: wo, isEditable: To = false }) => {
7388
7395
  var _a2, _b2, _c;
7389
- let Eo = (0, import_react.useRef)(null), Do = (0, import_react.useRef)(null), { width: Oo, height: Po } = useSlideDimensions(Eo), Fo = useFullScreenElement() != null, Lo = useAtomValue(kioskModeAtom), Ro = (0, import_react.useMemo)(() => Lo ? [] : [ce], [Lo]), [zo, Bo] = (0, import_react.useState)(() => /* @__PURE__ */ new Set()), Vo = useNotebookCodeAvailable(e5), Ho = !isIslands() && Vo, Uo = u == null ? void 0 : e5[u], Wo = Uo ?? e5.at(0), { parkedPreviewCell: Go, isHeldEdit: Ko, isNoOutputPreview: qo, heldEditCellId: Jo, heldShowsCode: Yo, toggleHeldShowsCode: Xo } = useParkedPreview({
7390
- activeCell: Uo,
7396
+ let Eo = (0, import_react.useRef)(null), Oo = (0, import_react.useRef)(null), { width: ko, height: jo } = useSlideDimensions(Eo), Lo = useFullScreenElement() != null, Ro = useAtomValue(kioskModeAtom), Bo = (0, import_react.useMemo)(() => Ro ? [] : [ce], [Ro]), [Vo, Ho] = (0, import_react.useState)(() => /* @__PURE__ */ new Set()), Uo = useNotebookCodeAvailable(e5), Wo = !isIslands() && Uo, Go = l == null ? void 0 : e5[l], Ko = Go ?? e5.at(0), { parkedPreviewCell: qo, isHeldEdit: Jo, isNoOutputPreview: Yo, heldEditCellId: Xo, heldShowsCode: Zo, toggleHeldShowsCode: Qo } = useParkedPreview({
7397
+ activeCell: Go,
7391
7398
  slideConfigs: o.cells,
7392
- noOutputIds: l
7393
- }), Zo = (e6) => shouldShowCode({
7399
+ noOutputIds: c
7400
+ }), $o = (e6) => shouldShowCode({
7394
7401
  cells: o.cells,
7395
7402
  cellId: e6,
7396
- showCodeOverrides: zo,
7397
- codeToggleEnabled: Ho
7398
- }), Qo = (Uo == null ? void 0 : Uo.id) ?? (Wo == null ? void 0 : Wo.id), $o = Ko ? Yo : Zo(Qo), ns = Ho && Qo != null && (((_a2 = o.cells.get(Qo)) == null ? void 0 : _a2.showCode) ?? false), rs = (0, import_react.useMemo)(() => composeSlides({
7403
+ showCodeOverrides: Vo,
7404
+ codeToggleEnabled: Wo
7405
+ }), ns = (Go == null ? void 0 : Go.id) ?? (Ko == null ? void 0 : Ko.id), rs = Jo ? Zo : $o(ns), is = Wo && ns != null && (((_a2 = o.cells.get(ns)) == null ? void 0 : _a2.showCode) ?? false), as = (0, import_react.useMemo)(() => composeSlides({
7399
7406
  cells: e5,
7400
7407
  getType: (e6) => deckSlideType({
7401
7408
  cell: e6,
7402
- noOutputIds: l,
7403
- heldEditCellId: Jo,
7409
+ noOutputIds: c,
7410
+ heldEditCellId: Xo,
7404
7411
  slideConfigs: o.cells
7405
7412
  })
7406
7413
  }), [
7407
7414
  e5,
7408
- l,
7415
+ c,
7409
7416
  o.cells,
7410
- Jo
7411
- ]), { cellToTarget: is, targetToCellIndex: as } = (0, import_react.useMemo)(() => buildSlideIndices({
7412
- composition: rs,
7417
+ Xo
7418
+ ]), { cellToTarget: os, targetToCellIndex: ss } = (0, import_react.useMemo)(() => buildSlideIndices({
7419
+ composition: as,
7413
7420
  cells: e5,
7414
7421
  getId: (e6) => e6.id
7415
- }), [rs, e5]), os = ((_b2 = o.deck) == null ? void 0 : _b2.transition) ?? "slide", ss = resolveSlideContentStyle((_c = o.deck) == null ? void 0 : _c.verticalAlign), cs = (0, import_react.useMemo)(() => {
7422
+ }), [as, e5]), cs = ((_b2 = o.deck) == null ? void 0 : _b2.transition) ?? "slide", ls = resolveSlideContentStyle((_c = o.deck) == null ? void 0 : _c.verticalAlign), us = (0, import_react.useMemo)(() => {
7416
7423
  let e6 = new URL(window.location.href);
7417
7424
  return e6.searchParams.set("kiosk", "true"), e6.searchParams.set("show-chrome", "false"), e6.toString();
7418
- }, []), ls = (0, import_react.useMemo)(() => ({
7425
+ }, []), ds = (0, import_react.useMemo)(() => ({
7419
7426
  embedded: true,
7420
- width: Oo,
7421
- height: Po,
7427
+ width: ko,
7428
+ height: jo,
7422
7429
  center: false,
7423
7430
  minScale: 0.2,
7424
7431
  maxScale: 2,
7425
- transition: os,
7432
+ transition: cs,
7426
7433
  keyboardCondition: (e6) => !Events.fromInput(e6),
7427
- url: cs,
7434
+ url: us,
7428
7435
  scrollActivationWidth: 0
7429
7436
  }), [
7430
- Oo,
7431
- Po,
7432
- os,
7433
- cs
7434
- ]), us = useEvent_default((t) => {
7437
+ ko,
7438
+ jo,
7439
+ cs,
7440
+ us
7441
+ ]), fs = useEvent_default((t) => {
7435
7442
  let n = resolveDeckNavigationTarget({
7436
- activeIndex: u,
7443
+ activeIndex: l,
7437
7444
  cells: e5,
7438
- cellToTarget: is,
7445
+ cellToTarget: os,
7439
7446
  getId: (e6) => e6.id
7440
7447
  }), r = n && computeDeckNavigation(t.getIndices(), n);
7441
7448
  r && (t.slide(r.h, r.v, r.f), clearPreviousVerticalIndices(t));
7442
7449
  });
7443
7450
  (0, import_react.useEffect)(() => {
7444
- let e6 = Do.current;
7445
- e6 != null && us(e6);
7451
+ let e6 = Oo.current;
7452
+ e6 != null && fs(e6);
7446
7453
  }, [
7447
- u,
7448
- is,
7454
+ l,
7455
+ os,
7449
7456
  e5,
7450
- us
7457
+ fs
7451
7458
  ]);
7452
- let ds = useEvent_default(() => {
7453
- if (!(Qo == null || ns)) {
7454
- if (Ko) {
7455
- Xo();
7459
+ let ps = useEvent_default(() => {
7460
+ if (!(ns == null || is)) {
7461
+ if (Jo) {
7462
+ Qo();
7456
7463
  return;
7457
7464
  }
7458
- (0, import_react.startTransition)(() => Bo((e6) => {
7465
+ (0, import_react.startTransition)(() => Ho((e6) => {
7459
7466
  let t = new Set(e6);
7460
- return t.has(Qo) ? t.delete(Qo) : t.add(Qo), t;
7467
+ return t.has(ns) ? t.delete(ns) : t.add(ns), t;
7461
7468
  }));
7462
7469
  }
7463
- }), fs = useEvent_default((e6) => {
7470
+ }), ms = useEvent_default((e6) => {
7464
7471
  var _a3;
7465
- us(e6), Ho && e6.addKeyBinding({
7472
+ fs(e6), Wo && e6.addKeyBinding({
7466
7473
  keyCode: 67,
7467
7474
  key: "C",
7468
7475
  description: "Toggle code editor"
7469
- }, ds);
7476
+ }, ps);
7470
7477
  let t = (_a3 = e6.getSlidesElement()) == null ? void 0 : _a3.closest(".reveal");
7471
7478
  t instanceof HTMLElement && (t.tabIndex = -1, t.focus({ preventScroll: true }));
7472
- }), ps = useEvent_default(() => {
7473
- if (Go != null) return;
7474
- let e6 = Do.current;
7479
+ }), hs = useEvent_default(() => {
7480
+ if (qo != null) return;
7481
+ let e6 = Oo.current;
7475
7482
  if (!e6) return;
7476
- let t = resolveActiveCellIndex(as, e6.getIndices());
7477
- t != null && (f == null ? void 0 : f(t));
7478
- }), ms = useEvent_default((t) => {
7479
- if (!Go || u == null || Events.fromInput(t)) return;
7483
+ let t = resolveActiveCellIndex(ss, e6.getIndices());
7484
+ t != null && (u == null ? void 0 : u(t));
7485
+ }), gs = useEvent_default((t) => {
7486
+ if (!qo || l == null || Events.fromInput(t)) return;
7480
7487
  let n = classifyNavKey(t);
7481
7488
  if (n === 0) return;
7482
7489
  t.preventDefault(), t.stopPropagation();
7483
- let r = u + n;
7484
- r < 0 || r >= e5.length || (f == null ? void 0 : f(r));
7485
- }), hs = useEvent_default(() => {
7486
- ps();
7490
+ let r = l + n;
7491
+ r < 0 || r >= e5.length || (u == null ? void 0 : u(r));
7492
+ }), _s = useEvent_default(() => {
7493
+ hs();
7487
7494
  });
7488
- useEventListener(document, "keydown", ms, { capture: true });
7489
- let gs = Ko ? null : qo ? "Hidden as there is no output" : "Skipped in presentation", _s = Ko ? Yo : Zo(Go == null ? void 0 : Go.id), vs = parkedRendersSource({
7490
- isNoOutputPreview: qo,
7491
- isEditable: Co,
7492
- showCode: _s
7493
- }), ys = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7495
+ useEventListener(document, "keydown", gs, { capture: true });
7496
+ let vs = Jo ? null : Yo ? "Hidden as there is no output" : "Skipped in presentation", ys = Jo ? Zo : $o(qo == null ? void 0 : qo.id), bs = parkedRendersSource({
7497
+ isNoOutputPreview: Yo,
7498
+ isEditable: To,
7499
+ showCode: ys
7500
+ }), xs = /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7494
7501
  ref: Eo,
7495
7502
  className: "h-full w-full min-w-0 flex items-center justify-center overflow-hidden",
7496
7503
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
7497
7504
  className: "group relative",
7498
7505
  style: {
7499
- width: Oo,
7500
- height: Po
7506
+ width: ko,
7507
+ height: jo
7501
7508
  },
7502
7509
  children: [
7503
7510
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(b, {
7504
- deckRef: Do,
7511
+ deckRef: Oo,
7505
7512
  className: "aspect-video w-full overflow-hidden border rounded bg-background mo-slides-theme prose-slides focus:outline-hidden focus-visible:outline-hidden",
7506
- config: ls,
7507
- onReady: fs,
7508
- onSlideChange: hs,
7509
- onFragmentShown: ps,
7510
- onFragmentHidden: ps,
7511
- plugins: Ro,
7512
- children: rs.stacks.map((e6, t) => e6.subslides.length === 1 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SubslideView, {
7513
+ config: ds,
7514
+ onReady: ms,
7515
+ onSlideChange: _s,
7516
+ onFragmentShown: hs,
7517
+ onFragmentHidden: hs,
7518
+ plugins: Bo,
7519
+ children: as.stacks.map((e6, t) => e6.subslides.length === 1 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SubslideView, {
7513
7520
  subslide: e6.subslides[0],
7514
- resolveShowCode: Zo,
7515
- isEditable: Co,
7521
+ resolveShowCode: $o,
7522
+ isEditable: To,
7516
7523
  slideConfigs: o.cells,
7517
- contentStyle: ss
7524
+ contentStyle: ls
7518
7525
  }, t) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ne, { children: e6.subslides.map((e7, t2) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SubslideView, {
7519
7526
  subslide: e7,
7520
- resolveShowCode: Zo,
7521
- isEditable: Co,
7527
+ resolveShowCode: $o,
7528
+ isEditable: To,
7522
7529
  slideConfigs: o.cells,
7523
- contentStyle: ss
7530
+ contentStyle: ls
7524
7531
  }, t2)) }, t))
7525
7532
  }),
7526
- Go && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
7533
+ qo && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
7527
7534
  className: "absolute inset-0 z-10 border rounded bg-background flex flex-col overflow-hidden",
7528
- "aria-label": gs ?? void 0,
7529
- children: [gs && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
7535
+ "aria-label": vs ?? void 0,
7536
+ children: [vs && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
7530
7537
  className: "flex items-center gap-1.5 px-3 py-1.5 text-xs text-muted-foreground border-b bg-muted/40",
7531
- children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(EyeOff, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: gs })]
7538
+ children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(EyeOff, { className: "h-3.5 w-3.5" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: vs })]
7532
7539
  }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7533
7540
  className: "flex-1 overflow-auto flex",
7534
7541
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7535
- className: vs ? "mo-slide-content flex flex-col gap-3" : "mo-slide-content",
7536
- style: ss,
7542
+ className: bs ? "mo-slide-content flex flex-col gap-3" : "mo-slide-content",
7543
+ style: ls,
7537
7544
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ParkedPreviewContent, {
7538
- cell: Go,
7539
- isNoOutputPreview: qo,
7540
- isEditable: Co,
7541
- showCode: _s
7545
+ cell: qo,
7546
+ isNoOutputPreview: Yo,
7547
+ isEditable: To,
7548
+ showCode: ys
7542
7549
  })
7543
7550
  })
7544
7551
  })]
7545
- }, Go.id),
7552
+ }, qo.id),
7546
7553
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
7547
7554
  className: "absolute top-2 right-2 z-20 opacity-0 group-hover:opacity-70 text-muted-foreground transition-opacity",
7548
- children: [Ho && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Tooltip, {
7549
- content: ns ? "Code is always shown for this slide" : $o ? "Hide code (C)" : "Show code (C)",
7555
+ children: [Wo && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Tooltip, {
7556
+ content: is ? "Code is always shown for this slide" : rs ? "Hide code (C)" : "Show code (C)",
7550
7557
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button, {
7551
7558
  "data-testid": "marimo-plugin-slides-toggle-code",
7552
7559
  variant: "ghost",
7553
7560
  size: "icon",
7554
- className: cn("text-muted-foreground h-7 w-7", $o && "text-foreground bg-muted", ns && "opacity-50 cursor-not-allowed"),
7555
- "aria-pressed": $o,
7556
- "aria-disabled": ns,
7557
- "aria-label": ns ? "Code always shown" : $o ? "Hide code" : "Show code",
7558
- onClick: ds,
7561
+ className: cn("text-muted-foreground h-7 w-7", rs && "text-foreground bg-muted", is && "opacity-50 cursor-not-allowed"),
7562
+ "aria-pressed": rs,
7563
+ "aria-disabled": is,
7564
+ "aria-label": is ? "Code always shown" : rs ? "Hide code" : "Show code",
7565
+ onClick: ps,
7559
7566
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Code, { className: "h-4 w-4" })
7560
7567
  })
7561
7568
  }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Tooltip, {
@@ -7568,7 +7575,7 @@ var ParkedPreviewContent = (e5) => {
7568
7575
  "aria-label": "Enter fullscreen",
7569
7576
  onClick: () => {
7570
7577
  var _a3, _b3;
7571
- (_b3 = (_a3 = Do.current) == null ? void 0 : _a3.getViewportElement()) == null ? void 0 : _b3.requestFullscreen().catch((e6) => {
7578
+ (_b3 = (_a3 = Oo.current) == null ? void 0 : _a3.getViewportElement()) == null ? void 0 : _b3.requestFullscreen().catch((e6) => {
7572
7579
  Logger.error("Failed to request fullscreen", e6);
7573
7580
  });
7574
7581
  },
@@ -7579,9 +7586,9 @@ var ParkedPreviewContent = (e5) => {
7579
7586
  ]
7580
7587
  })
7581
7588
  });
7582
- return yo === "read" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7589
+ return Co === "read" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
7583
7590
  className: "flex-1 min-w-0 flex flex-row gap-3",
7584
- children: ys
7591
+ children: xs
7585
7592
  }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
7586
7593
  className: "flex-1 min-w-0 flex flex-row gap-3",
7587
7594
  children: [/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(PanelGroup, {
@@ -7592,7 +7599,7 @@ var ParkedPreviewContent = (e5) => {
7592
7599
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Panel, {
7593
7600
  defaultSize: 92,
7594
7601
  minSize: 60,
7595
- children: ys
7602
+ children: xs
7596
7603
  }),
7597
7604
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(PanelResizeHandle, {
7598
7605
  className: "mo-slides-notes-resize",
@@ -7600,7 +7607,7 @@ var ParkedPreviewContent = (e5) => {
7600
7607
  coarse: 12,
7601
7608
  fine: 4
7602
7609
  },
7603
- disabled: Fo
7610
+ disabled: Lo
7604
7611
  }),
7605
7612
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Panel, {
7606
7613
  defaultSize: 10,
@@ -7610,19 +7617,20 @@ var ParkedPreviewContent = (e5) => {
7610
7617
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SlideNotesEditor, {
7611
7618
  layout: o,
7612
7619
  setLayout: s,
7613
- cellId: Wo == null ? void 0 : Wo.id
7620
+ cellId: Ko == null ? void 0 : Ko.id
7614
7621
  })
7615
7622
  })
7616
7623
  ]
7617
7624
  }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SlideSidebar, {
7618
- configWidth: bo,
7625
+ configWidth: wo,
7619
7626
  layout: o,
7620
7627
  setLayout: s,
7621
- activeConfigCell: Wo
7628
+ activeConfigCell: Ko
7622
7629
  })]
7623
7630
  });
7624
7631
  };
7625
7632
  export {
7633
+ CellOutputBlock,
7626
7634
  deckSlideType,
7627
7635
  reveal_component_default as default,
7628
7636
  parkedRendersSource,