pptx-svelte-viewer 4.0.0 → 4.1.0

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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,12 @@ A release listed with no entries carried no Conventional Commit in this package'
7
7
  scope: scripts/release-plan.mjs re-releases a package whenever any of its files
8
8
  change, not only on conventional ones.
9
9
 
10
+ ## [4.0.0](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-svelte-viewer@4.0.0) - 2026-09-18
11
+
12
+ ### Bug Fixes
13
+
14
+ - **core:** Switch to emf-converter's unified convertMetafileToDataUrl (by @ChristopherVR) ([70a2ea5](https://github.com/ChristopherVR/pptx-viewer/commit/70a2ea5059af31627dfa1f0a7ebe5e12219804bb))
15
+
10
16
  ## [3.22.0](https://github.com/ChristopherVR/pptx-viewer/releases/tag/pptx-svelte-viewer@3.22.0) - 2026-09-17
11
17
 
12
18
  ### Features
package/README.md CHANGED
@@ -195,6 +195,15 @@ the complete props/events contract, theming, and localization guides.
195
195
 
196
196
  ### Composing a custom viewer shell
197
197
 
198
+ Pass the existing `createViewerState` collaboration option through a getter to
199
+ keep a host-owned configuration reactive. Its `shellState` exposes effective
200
+ `canEdit`, connection status, sanitized remote users and connected count, and
201
+ uses the same editability rule as the native editor. `EditorLayer`,
202
+ `CollaborationCursors`, `RemoteSelectionOverlay` and their prop types are exported
203
+ from `/viewer` for composing the real editing and presence layers with `SlideCanvas`.
204
+ See the [custom-shell collaboration guide](https://christophervr.github.io/pptx-viewer/svelte/collaboration#custom-host-chrome)
205
+ and `demos/demo-svelte/src/HostOwnedHeadlessEditor.svelte` for complete wiring.
206
+
198
207
  `<PowerPointViewer>` bundles the slide canvas, ribbon, thumbnail rail,
199
208
  inspector, and every dialog into one component. If you only want a subset,
200
209
  for example your own chrome around just the ribbon and the slide canvas,
@@ -1,8 +1,8 @@
1
- import { F as V } from "./transition-overlay-B-nZF-3w.js";
2
- import { B as ce, C as pe, D as de, E as ve, F as ue, H as A, I as he, L as O, N as Y, O as _e, P as $, R as U, S as ge, T as xe, V as fe, _ as me, b as be, g as ye, h as ke, k as we, v as Ce, w as Me, x as ze, y as Se, z as Pe } from "./export-DWgZyIq6.js";
1
+ import { F as V } from "./transition-overlay-Dvef1UAZ.js";
2
+ import { B as U, C as ce, D as pe, E as de, G as A, H as ve, I as Y, L as $, O as ue, R as he, S as _e, T as ge, U as xe, V as R, W as fe, _ as me, b as be, g as ye, h as ke, k as we, v as Ce, w as Me, x as ze, y as Se, z as Pe } from "./export-gq-uU4it.js";
3
3
  import "svelte/internal/disclose-version";
4
4
  import * as e from "svelte/internal/client";
5
- import { onMount as qe, untrack as R } from "svelte";
5
+ import { onMount as qe, untrack as O } from "svelte";
6
6
  var Te = /* @__PURE__ */ new Set([
7
7
  "$$slots",
8
8
  "$$events",
@@ -43,7 +43,7 @@ function W(s, t) {
43
43
  }
44
44
  function Ae(s) {
45
45
  let t = e.state(e.proxy([]));
46
- const a = R(() => me({
46
+ const a = O(() => me({
47
47
  deckId: Se(s.bridge),
48
48
  store: s.store,
49
49
  getMessages: () => s.getMessages(),
@@ -53,7 +53,7 @@ function Ae(s) {
53
53
  e.set(t, d, !0);
54
54
  }
55
55
  }));
56
- let i = e.state(e.proxy(R(() => a.activeChatId())));
56
+ let i = e.state(e.proxy(O(() => a.activeChatId())));
57
57
  const r = () => {
58
58
  e.set(i, a.activeChatId(), !0);
59
59
  };
@@ -126,7 +126,7 @@ var De = class {
126
126
  async init() {
127
127
  this.initState = "checking", this.initError = void 0;
128
128
  try {
129
- if (!await (this.#t.checkAvailable ?? pe)()) {
129
+ if (!await (this.#t.checkAvailable ?? ce)()) {
130
130
  this.initState = "unavailable";
131
131
  return;
132
132
  }
@@ -140,7 +140,7 @@ var De = class {
140
140
  onToolCall: async ({ toolCall: a }) => {
141
141
  const { toolName: i, toolCallId: r, input: d } = a, z = e.get(this.#e);
142
142
  if (!z) return;
143
- this.#t.onToolTarget?.(_e(i, d));
143
+ this.#t.onToolTarget?.(ue(i, d));
144
144
  const f = z.addToolOutput;
145
145
  try {
146
146
  f({
@@ -204,13 +204,13 @@ function Ie(s, t) {
204
204
  return i;
205
205
  } }));
206
206
  }
207
- var Fe = /* @__PURE__ */ new Set([
207
+ var Le = /* @__PURE__ */ new Set([
208
208
  "$$slots",
209
209
  "$$events",
210
210
  "$$legacy"
211
211
  ]);
212
- function Le(s, t) {
213
- let a = e.rest_props(t, Fe);
212
+ function Fe(s, t) {
213
+ let a = e.rest_props(t, Le);
214
214
  const i = {
215
215
  name: "square",
216
216
  size: 24,
@@ -247,7 +247,7 @@ function Be(s, t) {
247
247
  e.remove_textarea_child(g), e.bind_this(g, (u) => e.set(f, u), () => e.get(f));
248
248
  var k = e.sibling(g, 2), w = (u) => {
249
249
  var o = He(), l = e.child(o);
250
- Le(l, {
250
+ Fe(l, {
251
251
  size: 16,
252
252
  "aria-hidden": "true"
253
253
  }), e.reset(o), e.template_effect((v, C) => {
@@ -273,11 +273,11 @@ function Be(s, t) {
273
273
  }, [() => r("pptx.ai.placeholder"), () => r("pptx.ai.placeholder")]), e.delegated("keydown", g, m), e.bind_value(g, () => e.get(d), (u) => e.set(d, u)), e.append(s, b), e.pop();
274
274
  }
275
275
  e.delegate(["keydown", "click"]);
276
- var Oe = e.from_html('<div class="pptx-svelte-ai-error svelte-1vkckow" role="alert"><!> <div class="pptx-svelte-ai-error-body svelte-1vkckow"><div class="pptx-svelte-ai-error-title svelte-1vkckow"> </div> <div class="pptx-svelte-ai-error-msg svelte-1vkckow"> </div></div> <button type="button" class="pptx-svelte-ai-error-retry svelte-1vkckow"> </button></div>');
277
- function Re(s, t) {
276
+ var Ue = e.from_html('<div class="pptx-svelte-ai-error svelte-1vkckow" role="alert"><!> <div class="pptx-svelte-ai-error-body svelte-1vkckow"><div class="pptx-svelte-ai-error-title svelte-1vkckow"> </div> <div class="pptx-svelte-ai-error-msg svelte-1vkckow"> </div></div> <button type="button" class="pptx-svelte-ai-error-retry svelte-1vkckow"> </button></div>');
277
+ function Oe(s, t) {
278
278
  e.push(t, !0);
279
279
  const a = V();
280
- var i = Oe(), r = e.child(i);
280
+ var i = Ue(), r = e.child(i);
281
281
  W(r, {
282
282
  size: 14,
283
283
  "aria-hidden": "true"
@@ -292,13 +292,13 @@ function Re(s, t) {
292
292
  }), e.append(s, i), e.pop();
293
293
  }
294
294
  e.delegate(["click"]);
295
- var Ue = /* @__PURE__ */ new Set([
295
+ var Re = /* @__PURE__ */ new Set([
296
296
  "$$slots",
297
297
  "$$events",
298
298
  "$$legacy"
299
299
  ]);
300
300
  function Z(s, t) {
301
- let a = e.rest_props(t, Ue);
301
+ let a = e.rest_props(t, Re);
302
302
  const i = {
303
303
  name: "crosshair",
304
304
  size: 24,
@@ -343,7 +343,7 @@ var We = /* @__PURE__ */ new Set([
343
343
  "$$events",
344
344
  "$$legacy"
345
345
  ]);
346
- function Ke(s, t) {
346
+ function Ge(s, t) {
347
347
  let a = e.rest_props(t, We);
348
348
  const i = {
349
349
  name: "git-merge",
@@ -366,13 +366,13 @@ function Ke(s, t) {
366
366
  return i;
367
367
  } }));
368
368
  }
369
- var Ge = /* @__PURE__ */ new Set([
369
+ var Ke = /* @__PURE__ */ new Set([
370
370
  "$$slots",
371
371
  "$$events",
372
372
  "$$legacy"
373
373
  ]);
374
374
  function Xe(s, t) {
375
- let a = e.rest_props(t, Ge);
375
+ let a = e.rest_props(t, Ke);
376
376
  const i = {
377
377
  name: "pin",
378
378
  size: 24,
@@ -425,12 +425,12 @@ function at(s, t) {
425
425
  });
426
426
  var x = e.sibling(m, 2), g = e.child(x), k = (n) => {
427
427
  var c = $e(), M = e.child(c);
428
- Ke(M, {
428
+ Ge(M, {
429
429
  size: 12,
430
430
  "aria-hidden": "true"
431
431
  });
432
432
  var S = e.sibling(M);
433
- e.reset(c), e.template_effect((D) => e.set_text(S, ` ${D ?? ""}`), [() => a("pptx.ai.mergeSelectedTables")]), e.delegated("click", c, () => t.onsenddirective(xe(e.get(r).slideIndex, e.get(r).elementIdA, e.get(r).elementIdB))), e.append(n, c);
433
+ e.reset(c), e.template_effect((D) => e.set_text(S, ` ${D ?? ""}`), [() => a("pptx.ai.mergeSelectedTables")]), e.delegated("click", c, () => t.onsenddirective(ge(e.get(r).slideIndex, e.get(r).elementIdA, e.get(r).elementIdB))), e.append(n, c);
434
434
  };
435
435
  e.if(g, (n) => {
436
436
  e.get(r) && n(k);
@@ -444,7 +444,7 @@ function at(s, t) {
444
444
  }), e.reset(w);
445
445
  var o = e.sibling(w, 2), l = (n) => {
446
446
  var c = J(), M = e.child(c);
447
- U(M, {
447
+ R(M, {
448
448
  size: 14,
449
449
  "aria-hidden": "true"
450
450
  }), e.reset(c), e.template_effect((S, D) => {
@@ -544,55 +544,55 @@ function pt(s, t) {
544
544
  "aria-hidden": "true"
545
545
  }), e.reset(x);
546
546
  var k = e.sibling(x, 2), w = e.child(k);
547
- O(w, {
547
+ U(w, {
548
548
  size: 14,
549
549
  "aria-hidden": "true"
550
550
  }), e.reset(k), e.reset(b), e.reset(f);
551
551
  var T = e.sibling(f, 2), u = (o) => {
552
552
  var l = ot(), v = e.child(l), C = e.child(v), P = e.only_child(C, !0), n = e.sibling(C, 2), c = e.child(n);
553
- ce(c, {
553
+ xe(c, {
554
554
  size: 12,
555
555
  "aria-hidden": "true"
556
556
  });
557
557
  var M = e.sibling(c);
558
558
  e.reset(n), e.reset(v);
559
559
  var S = e.sibling(v, 2), D = (j) => {
560
- var E = rt(), F = e.only_child(E, !0);
561
- e.template_effect((L) => e.set_text(F, L), [() => a("pptx.ai.historyEmpty")]), e.append(j, E);
560
+ var E = rt(), L = e.only_child(E, !0);
561
+ e.template_effect((F) => e.set_text(L, F), [() => a("pptx.ai.historyEmpty")]), e.append(j, E);
562
562
  }, q = (j) => {
563
563
  var E = nt();
564
- e.each(E, 21, () => t.chats, (F) => F.id, (F, L) => {
564
+ e.each(E, 21, () => t.chats, (L) => L.id, (L, F) => {
565
565
  var I = lt(), H = e.child(I);
566
566
  let N;
567
- var K = e.child(H);
568
- fe(K, {
567
+ var G = e.child(H);
568
+ fe(G, {
569
569
  size: 14,
570
570
  "aria-hidden": "true"
571
571
  });
572
- var G = e.sibling(K, 2), X = e.child(G), te = e.only_child(X, !0), ae = e.sibling(X, 2), se = e.only_child(ae, !0);
573
- e.reset(G), e.reset(H);
572
+ var K = e.sibling(G, 2), X = e.child(K), te = e.only_child(X, !0), ae = e.sibling(X, 2), se = e.only_child(ae, !0);
573
+ e.reset(K), e.reset(H);
574
574
  var B = e.sibling(H, 2), ie = e.child(B);
575
- O(ie, {
575
+ U(ie, {
576
576
  size: 14,
577
577
  "aria-hidden": "true"
578
578
  }), e.reset(B), e.reset(I), e.template_effect((re, le, ne, oe) => {
579
- N = e.set_class(H, 1, "pptx-svelte-ai-history-resume svelte-1i56i9n", null, N, { "is-active": e.get(L).id === t.activeChatId }), e.set_text(te, re), e.set_text(se, le), e.set_attribute(B, "title", ne), e.set_attribute(B, "aria-label", oe);
579
+ N = e.set_class(H, 1, "pptx-svelte-ai-history-resume svelte-1i56i9n", null, N, { "is-active": e.get(F).id === t.activeChatId }), e.set_text(te, re), e.set_text(se, le), e.set_attribute(B, "title", ne), e.set_attribute(B, "aria-label", oe);
580
580
  }, [
581
- () => e.get(L).title || a("pptx.ai.untitledChat"),
582
- () => a("pptx.ai.messageCount", { count: e.get(L).messageCount }),
581
+ () => e.get(F).title || a("pptx.ai.untitledChat"),
582
+ () => a("pptx.ai.messageCount", { count: e.get(F).messageCount }),
583
583
  () => a("pptx.ai.deleteChat"),
584
584
  () => a("pptx.ai.deleteChat")
585
585
  ]), e.delegated("click", H, () => {
586
- t.onresume(e.get(L).id), e.set(i, !1);
587
- }), e.delegated("click", B, () => t.ondelete(e.get(L).id)), e.append(F, I);
586
+ t.onresume(e.get(F).id), e.set(i, !1);
587
+ }), e.delegated("click", B, () => t.ondelete(e.get(F).id)), e.append(L, I);
588
588
  }), e.reset(E), e.append(j, E);
589
589
  };
590
590
  e.if(S, (j) => {
591
591
  t.chats.length === 0 ? j(D) : j(q, -1);
592
592
  });
593
593
  var h = e.sibling(S, 2), p = e.only_child(h, !0);
594
- e.reset(l), e.template_effect((j, E, F) => {
595
- e.set_text(P, j), e.set_text(M, ` ${E ?? ""}`), e.set_text(p, F);
594
+ e.reset(l), e.template_effect((j, E, L) => {
595
+ e.set_text(P, j), e.set_text(M, ` ${E ?? ""}`), e.set_text(p, L);
596
596
  }, [
597
597
  () => a("pptx.ai.historyTitle"),
598
598
  () => a("pptx.ai.newChat"),
@@ -913,20 +913,20 @@ function It(s, t) {
913
913
  e.push(t, !0);
914
914
  const a = V(), i = {
915
915
  view: ke,
916
- text: ue,
916
+ text: he,
917
917
  shape: Pt,
918
918
  theme: zt,
919
919
  table: Tt,
920
920
  slide: bt,
921
921
  chart: gt,
922
922
  move: kt,
923
- delete: O,
924
- search: he,
923
+ delete: U,
924
+ search: Pe,
925
925
  nav: Ct,
926
926
  animation: ft,
927
- notes: Pe,
927
+ notes: ve,
928
928
  tool: Q
929
- }, r = e.derived(() => t.part.state === "output-error"), d = e.derived(() => t.part.state === "output-available"), z = e.derived(() => !e.get(r) && !e.get(d)), f = e.derived(() => be(t.part.toolName, t.part.input, e.get(z) ? "present" : "past")), _ = e.derived(() => i[e.get(f).icon] ?? Q), y = e.derived(() => ve(t.part.input)), m = e.derived(() => e.get(r) ? a("pptx.ai.toolFailed") : e.get(d) ? a("pptx.ai.toolDone") : a("pptx.ai.toolRunning"));
929
+ }, r = e.derived(() => t.part.state === "output-error"), d = e.derived(() => t.part.state === "output-available"), z = e.derived(() => !e.get(r) && !e.get(d)), f = e.derived(() => be(t.part.toolName, t.part.input, e.get(z) ? "present" : "past")), _ = e.derived(() => i[e.get(f).icon] ?? Q), y = e.derived(() => de(t.part.input)), m = e.derived(() => e.get(r) ? a("pptx.ai.toolFailed") : e.get(d) ? a("pptx.ai.toolDone") : a("pptx.ai.toolRunning"));
930
930
  var b = Et(), x = e.child(b), g = e.child(x);
931
931
  {
932
932
  let p = e.derived(() => e.get(r) ? "pptx-svelte-ai-tool-ic is-error" : "pptx-svelte-ai-tool-ic");
@@ -982,9 +982,9 @@ function It(s, t) {
982
982
  e.get(r) && t.part.errorText && p(D);
983
983
  });
984
984
  var q = e.sibling(S, 2), h = (p) => {
985
- var j = Dt(), E = e.child(j), F = e.only_child(E, !0), L = e.sibling(E, 2), I = e.only_child(L);
985
+ var j = Dt(), E = e.child(j), L = e.only_child(E, !0), F = e.sibling(E, 2), I = e.only_child(F);
986
986
  e.reset(j), e.template_effect((H, N) => {
987
- e.set_text(F, H), e.set_text(I, `${N ?? ""}: ${e.get(y) ?? ""}`);
987
+ e.set_text(L, H), e.set_text(I, `${N ?? ""}: ${e.get(y) ?? ""}`);
988
988
  }, [() => a("pptx.ai.toolDetails"), () => we(t.part.toolName)]), e.append(p, j);
989
989
  };
990
990
  e.if(q, (p) => {
@@ -996,7 +996,7 @@ function It(s, t) {
996
996
  }), e.set_text(M, ` ${e.get(m) ?? ""}`);
997
997
  }), e.append(s, b), e.pop();
998
998
  }
999
- var Ft = e.from_html('<div class="pptx-svelte-ai-empty svelte-16qhgfb"><!> <p class="pptx-svelte-ai-empty-title svelte-16qhgfb"> </p> <p class="pptx-svelte-ai-empty-hint svelte-16qhgfb"> </p></div>'), Lt = e.from_html('<p class="pptx-svelte-ai-msg-text svelte-16qhgfb"> </p>'), Ht = e.from_html('<div class="pptx-svelte-ai-msg svelte-16qhgfb"><div><!></div> <div class="pptx-svelte-ai-msg-body svelte-16qhgfb"></div></div>'), Vt = e.from_html('<div class="pptx-svelte-ai-thinking svelte-16qhgfb"><span class="pptx-svelte-ai-dots svelte-16qhgfb"><span class="svelte-16qhgfb"></span><span class="svelte-16qhgfb"></span><span class="svelte-16qhgfb"></span></span> </div>'), Nt = e.from_html('<div class="pptx-svelte-ai-messages svelte-16qhgfb" role="log" aria-live="polite"><!> <!> <div class="svelte-16qhgfb"></div></div>');
999
+ var Lt = e.from_html('<div class="pptx-svelte-ai-empty svelte-16qhgfb"><!> <p class="pptx-svelte-ai-empty-title svelte-16qhgfb"> </p> <p class="pptx-svelte-ai-empty-hint svelte-16qhgfb"> </p></div>'), Ft = e.from_html('<p class="pptx-svelte-ai-msg-text svelte-16qhgfb"> </p>'), Ht = e.from_html('<div class="pptx-svelte-ai-msg svelte-16qhgfb"><div><!></div> <div class="pptx-svelte-ai-msg-body svelte-16qhgfb"></div></div>'), Vt = e.from_html('<div class="pptx-svelte-ai-thinking svelte-16qhgfb"><span class="pptx-svelte-ai-dots svelte-16qhgfb"><span class="svelte-16qhgfb"></span><span class="svelte-16qhgfb"></span><span class="svelte-16qhgfb"></span></span> </div>'), Nt = e.from_html('<div class="pptx-svelte-ai-messages svelte-16qhgfb" role="log" aria-live="polite"><!> <!> <div class="svelte-16qhgfb"></div></div>');
1000
1000
  function Bt(s, t) {
1001
1001
  e.push(t, !0);
1002
1002
  const a = V();
@@ -1005,7 +1005,7 @@ function Bt(s, t) {
1005
1005
  t.messages, t.isStreaming, e.get(i)?.scrollIntoView({ block: "end" });
1006
1006
  });
1007
1007
  var r = e.comment(), d = e.first_child(r), z = (_) => {
1008
- var y = Ft(), m = e.child(y);
1008
+ var y = Lt(), m = e.child(y);
1009
1009
  Y(m, {
1010
1010
  size: 26,
1011
1011
  "aria-hidden": "true"
@@ -1017,7 +1017,7 @@ function Bt(s, t) {
1017
1017
  }, f = (_) => {
1018
1018
  var y = Nt(), m = e.child(y);
1019
1019
  e.each(m, 17, () => t.messages, (k) => k.id, (k, w) => {
1020
- const T = e.derived(() => e.get(w).role === "user"), u = e.derived(() => de(e.get(w)));
1020
+ const T = e.derived(() => e.get(w).role === "user"), u = e.derived(() => pe(e.get(w)));
1021
1021
  var o = e.comment(), l = e.first_child(o), v = (C) => {
1022
1022
  var P = Ht(), n = e.child(P);
1023
1023
  let c;
@@ -1037,16 +1037,16 @@ function Bt(s, t) {
1037
1037
  }), e.reset(n);
1038
1038
  var q = e.sibling(n, 2);
1039
1039
  e.each(q, 23, () => e.get(u), (h, p) => h.kind === "tool" && h.toolCallId || p, (h, p) => {
1040
- var j = e.comment(), E = e.first_child(j), F = (I) => {
1041
- var H = Lt(), N = e.only_child(H, !0);
1040
+ var j = e.comment(), E = e.first_child(j), L = (I) => {
1041
+ var H = Ft(), N = e.only_child(H, !0);
1042
1042
  e.template_effect(() => e.set_text(N, e.get(p).text)), e.append(I, H);
1043
- }, L = (I) => {
1043
+ }, F = (I) => {
1044
1044
  It(I, { get part() {
1045
1045
  return e.get(p);
1046
1046
  } });
1047
1047
  };
1048
1048
  e.if(E, (I) => {
1049
- e.get(p).kind === "text" ? I(F) : I(L, -1);
1049
+ e.get(p).kind === "text" ? I(L) : I(F, -1);
1050
1050
  }), e.append(h, j);
1051
1051
  }), e.reset(q), e.reset(P), e.template_effect((h) => {
1052
1052
  c = e.set_class(n, 1, "pptx-svelte-ai-avatar svelte-16qhgfb", null, c, { "is-user": e.get(T) }), e.set_attribute(n, "aria-label", h);
@@ -1070,14 +1070,14 @@ function Bt(s, t) {
1070
1070
  t.messages.length === 0 ? _(z) : _(f, -1);
1071
1071
  }), e.append(s, r), e.pop();
1072
1072
  }
1073
- var Ot = e.from_html('<li class="svelte-15p5728"> </li>'), Rt = e.from_html('<ul class="pptx-svelte-ai-proposal-summary svelte-15p5728"></ul>'), Ut = e.from_html('<div class="pptx-svelte-ai-proposal svelte-15p5728"><div class="pptx-svelte-ai-proposal-tag svelte-15p5728"> </div> <div class="pptx-svelte-ai-proposal-label svelte-15p5728"> </div> <!> <div class="pptx-svelte-ai-proposal-actions svelte-15p5728"><button type="button" class="pptx-svelte-ai-proposal-btn is-accept svelte-15p5728"><!> </button> <button type="button" class="pptx-svelte-ai-proposal-btn is-reject svelte-15p5728"><!> </button></div></div>');
1073
+ var Ut = e.from_html('<li class="svelte-15p5728"> </li>'), Ot = e.from_html('<ul class="pptx-svelte-ai-proposal-summary svelte-15p5728"></ul>'), Rt = e.from_html('<div class="pptx-svelte-ai-proposal svelte-15p5728"><div class="pptx-svelte-ai-proposal-tag svelte-15p5728"> </div> <div class="pptx-svelte-ai-proposal-label svelte-15p5728"> </div> <!> <div class="pptx-svelte-ai-proposal-actions svelte-15p5728"><button type="button" class="pptx-svelte-ai-proposal-btn is-accept svelte-15p5728"><!> </button> <button type="button" class="pptx-svelte-ai-proposal-btn is-reject svelte-15p5728"><!> </button></div></div>');
1074
1074
  function Wt(s, t) {
1075
1075
  e.push(t, !0);
1076
- const a = V(), i = e.derived(() => t.proposal.summary.map(ge));
1077
- var r = Ut(), d = e.child(r), z = e.only_child(d, !0), f = e.sibling(d, 2), _ = e.only_child(f, !0), y = e.sibling(f, 2), m = (o) => {
1078
- var l = Rt();
1076
+ const a = V(), i = e.derived(() => t.proposal.summary.map(_e));
1077
+ var r = Rt(), d = e.child(r), z = e.only_child(d, !0), f = e.sibling(d, 2), _ = e.only_child(f, !0), y = e.sibling(f, 2), m = (o) => {
1078
+ var l = Ot();
1079
1079
  e.each(l, 21, () => e.get(i), e.index, (v, C) => {
1080
- var P = Ot(), n = e.only_child(P, !0);
1080
+ var P = Ut(), n = e.only_child(P, !0);
1081
1081
  e.template_effect(() => e.set_text(n, e.get(C))), e.append(v, P);
1082
1082
  }), e.reset(l), e.append(o, l);
1083
1083
  };
@@ -1092,7 +1092,7 @@ function Wt(s, t) {
1092
1092
  var k = e.sibling(g);
1093
1093
  e.reset(x);
1094
1094
  var w = e.sibling(x, 2), T = e.child(w);
1095
- U(T, {
1095
+ R(T, {
1096
1096
  size: 13,
1097
1097
  "aria-hidden": "true"
1098
1098
  });
@@ -1106,12 +1106,12 @@ function Wt(s, t) {
1106
1106
  ]), e.delegated("click", x, () => t.onaccept(t.proposal.id)), e.delegated("click", w, () => t.onreject(t.proposal.id)), e.append(s, r), e.pop();
1107
1107
  }
1108
1108
  e.delegate(["click"]);
1109
- var Kt = e.from_html('<button type="button" class="pptx-svelte-ai-accept-all svelte-1jz2xis"> </button>'), Gt = e.from_html('<div class="pptx-svelte-ai-proposals svelte-1jz2xis"><div class="pptx-svelte-ai-proposals-head svelte-1jz2xis"><span class="pptx-svelte-ai-proposals-title svelte-1jz2xis"> </span> <!></div> <!></div>');
1109
+ var Gt = e.from_html('<button type="button" class="pptx-svelte-ai-accept-all svelte-1jz2xis"> </button>'), Kt = e.from_html('<div class="pptx-svelte-ai-proposals svelte-1jz2xis"><div class="pptx-svelte-ai-proposals-head svelte-1jz2xis"><span class="pptx-svelte-ai-proposals-title svelte-1jz2xis"> </span> <!></div> <!></div>');
1110
1110
  function Xt(s, t) {
1111
1111
  e.push(t, !0);
1112
1112
  const a = V();
1113
- var i = Gt(), r = e.child(i), d = e.child(r), z = e.only_child(d, !0), f = e.sibling(d, 2), _ = (m) => {
1114
- var b = Kt(), x = e.only_child(b, !0);
1113
+ var i = Kt(), r = e.child(i), d = e.child(r), z = e.only_child(d, !0), f = e.sibling(d, 2), _ = (m) => {
1114
+ var b = Gt(), x = e.only_child(b, !0);
1115
1115
  e.template_effect((g) => e.set_text(x, g), [() => a("pptx.ai.acceptAll")]), e.delegated("click", b, function(...g) {
1116
1116
  t.onacceptall?.apply(this, g);
1117
1117
  }), e.append(m, b);
@@ -1142,7 +1142,7 @@ function sa(s, t) {
1142
1142
  function i(l) {
1143
1143
  l && l.slideIndex !== void 0 && t.bridge.goToSlide(l.slideIndex), t.aiPanel.flashToolTarget(l);
1144
1144
  }
1145
- const r = R(() => new De({
1145
+ const r = O(() => new De({
1146
1146
  bridge: t.bridge,
1147
1147
  config: t.config,
1148
1148
  onToolTarget: i
@@ -1176,7 +1176,7 @@ function sa(s, t) {
1176
1176
  "aria-hidden": "true"
1177
1177
  });
1178
1178
  var b = e.sibling(m, 2), x = e.only_child(b, !0), g = e.sibling(b, 2), k = e.child(g);
1179
- U(k, {
1179
+ R(k, {
1180
1180
  size: 16,
1181
1181
  "aria-hidden": "true"
1182
1182
  }), e.reset(g), e.reset(y);
@@ -1258,7 +1258,7 @@ function sa(s, t) {
1258
1258
  }
1259
1259
  });
1260
1260
  var c = e.sibling(n, 2), M = (h) => {
1261
- Re(h, {
1261
+ Oe(h, {
1262
1262
  get message() {
1263
1263
  return r.error.message;
1264
1264
  },