ooxml-ui 1.28.0 → 1.29.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.
Files changed (73) hide show
  1. package/dist/chart/format-pane-3d.d.ts +1 -0
  2. package/dist/chart/format-pane-fill-kinds.d.ts +0 -1
  3. package/dist/chart/format-pane-targets.d.ts +0 -1
  4. package/dist/chart/format-pane-types.d.ts +0 -1
  5. package/dist/chart/format-pane-view.d.ts +0 -1
  6. package/dist/{chunk-2EFIFIPB.js → chunk-LNHFMJ2P.js} +1 -1
  7. package/dist/{chunk-FHO7TEWA.js → chunk-WYKMVMX4.js} +14 -1
  8. package/dist/{chunk-WBE2Q5DC.js → chunk-YMZFOG2U.js} +2 -2
  9. package/dist/comments/mentions.d.ts +63 -0
  10. package/dist/comments/mentions.d.ts.map +1 -0
  11. package/dist/form/checkable.d.ts +0 -1
  12. package/dist/index.js +3 -3
  13. package/dist/pptx/ai/host.cjs +121 -0
  14. package/dist/pptx/ai/host.d.ts +39 -0
  15. package/dist/pptx/ai/host.d.ts.map +1 -0
  16. package/dist/pptx/ai/host.mjs +4 -0
  17. package/dist/pptx/ai/index.cjs +120 -870
  18. package/dist/pptx/ai/index.mjs +6 -842
  19. package/dist/pptx/{chunk-WBFAVFD4.cjs → chunk-BXCXY4HB.cjs} +722 -279
  20. package/dist/pptx/{chunk-CT7UD6VL.mjs → chunk-DVLU476S.mjs} +688 -231
  21. package/dist/pptx/{chunk-MJACF7Y2.mjs → chunk-EHIQ4ANA.mjs} +5 -0
  22. package/dist/pptx/chunk-IY7H76CZ.cjs +874 -0
  23. package/dist/pptx/{chunk-GWKTHP6U.cjs → chunk-PATUICO4.cjs} +5 -0
  24. package/dist/pptx/{chunk-3AFB46RL.cjs → chunk-UTBHXIDK.cjs} +46 -46
  25. package/dist/pptx/{chunk-7OD74VJC.mjs → chunk-YO3EMGXD.mjs} +2 -2
  26. package/dist/pptx/chunk-YQANSI3A.mjs +844 -0
  27. package/dist/pptx/dom/glyph-outline-cache.d.ts +3 -1
  28. package/dist/pptx/dom/glyph-outline-cache.d.ts.map +1 -1
  29. package/dist/pptx/dom/index.cjs +399 -398
  30. package/dist/pptx/dom/index.mjs +15 -14
  31. package/dist/pptx/dom/load-presentation.d.ts +7 -1
  32. package/dist/pptx/dom/load-presentation.d.ts.map +1 -1
  33. package/dist/pptx/export/html2canvas-clone.cjs +4 -4
  34. package/dist/pptx/export/html2canvas-clone.mjs +1 -1
  35. package/dist/pptx/export/print-document.cjs +18 -18
  36. package/dist/pptx/export/print-document.mjs +2 -2
  37. package/dist/pptx/i18n/index.cjs +6 -6
  38. package/dist/pptx/i18n/index.mjs +1 -1
  39. package/dist/pptx/i18n/translations-en.d.ts.map +1 -1
  40. package/dist/pptx/index.cjs +3185 -3161
  41. package/dist/pptx/index.mjs +9 -9
  42. package/dist/pptx/render/comment-mentions.d.ts +16 -1
  43. package/dist/pptx/render/comment-mentions.d.ts.map +1 -1
  44. package/dist/pptx/render/comments-list.d.ts +11 -7
  45. package/dist/pptx/render/comments-list.d.ts.map +1 -1
  46. package/dist/pptx/render/embedded-font-trust.d.ts +7 -0
  47. package/dist/pptx/render/embedded-font-trust.d.ts.map +1 -1
  48. package/dist/pptx/render/embedded-fonts.d.ts +4 -3
  49. package/dist/pptx/render/embedded-fonts.d.ts.map +1 -1
  50. package/dist/pptx/render/glyph-outline-font-registration.d.ts +83 -0
  51. package/dist/pptx/render/glyph-outline-font-registration.d.ts.map +1 -0
  52. package/dist/pptx/render/index.d.ts +2 -0
  53. package/dist/pptx/render/index.d.ts.map +1 -1
  54. package/dist/pptx/render/load-limits.d.ts +18 -0
  55. package/dist/pptx/render/load-limits.d.ts.map +1 -0
  56. package/dist/pptx/render/text-warp-glyph-outline-lookup.d.ts +39 -0
  57. package/dist/pptx/render/text-warp-glyph-outline-lookup.d.ts.map +1 -0
  58. package/dist/pptx/render/text-warp-opentype-parser.d.ts +15 -2
  59. package/dist/pptx/render/text-warp-opentype-parser.d.ts.map +1 -1
  60. package/dist/pptx/render/text-warp-outline-font-cache.d.ts +116 -42
  61. package/dist/pptx/render/text-warp-outline-font-cache.d.ts.map +1 -1
  62. package/dist/pptx/render/viewer-props-manifest.d.ts.map +1 -1
  63. package/dist/pptx/{smartart-insert-preview-3BY6HNZL.cjs → smartart-insert-preview-DHQ47GXP.cjs} +11 -11
  64. package/dist/pptx/{smartart-insert-preview-7CRBDPYF.mjs → smartart-insert-preview-IQVC5LMF.mjs} +10 -10
  65. package/dist/{presentation-preview-KY56TONW.js → presentation-preview-XGJMARKI.js} +1 -1
  66. package/dist/teams/app/presentation-preview.d.ts +3 -0
  67. package/dist/teams.js +2 -2
  68. package/dist/xlsx.js +4 -4
  69. package/package.json +8 -8
  70. package/dist/pptx/{chunk-YMITEJST.cjs → chunk-3CYWRMYZ.cjs} +1 -1
  71. package/dist/pptx/{chunk-3LOVEO7U.mjs → chunk-5VSUIPDX.mjs} +1 -1
  72. /package/dist/pptx/{chunk-FM4C4MBJ.cjs → chunk-67UQWOEQ.cjs} +0 -0
  73. /package/dist/pptx/{chunk-AMW2AR7J.mjs → chunk-6MZFWTBS.mjs} +0 -0
@@ -4,3 +4,4 @@ import type { ChartFormatThreeDView } from './format-pane-view.js';
4
4
  export declare const CHART_BEVEL_TYPES: readonly ['circle', 'relaxedInset', 'cross', 'coolSlant', 'angle', 'softRound', 'convex', 'slope', 'divot', 'riblet', 'hardEdge', 'artDeco'];
5
5
  /** The 3-D Format section for an element with `threeD` as its current 3-D settings. */
6
6
  export declare function threeDSection(threeD: ChartFormatThreeDView): ChartFormatSection;
7
+ //# sourceMappingURL=format-pane-3d.d.ts.map
@@ -13,4 +13,3 @@ export declare function gradientFields(prefix: string, gradient: ChartGradientFi
13
13
  export declare function patternFields(pattern: NonNullable<ChartFormatFillView['pattern']>, presets: readonly ChartFormatChoice[]): ChartFormatField[];
14
14
  /** Picture source, transparency and tiling of a picture fill. */
15
15
  export declare function pictureFields(picture: ChartFormatFillView['picture']): ChartFormatField[];
16
- //# sourceMappingURL=format-pane-fill-kinds.d.ts.map
@@ -22,4 +22,3 @@ export declare function chartFormatPaneTitle(target: ChartFormatTarget): ChartFo
22
22
  export declare function chartFormatTargetOptions(targets: readonly ChartFormatTarget[], describe: ChartFormatDescribe): ChartFormatTargetOption[];
23
23
  /** The chart area entry, what a stale or missing key falls back to. */
24
24
  export declare const CHART_AREA_TARGET: ChartFormatTargetOption;
25
- //# sourceMappingURL=format-pane-targets.d.ts.map
@@ -115,4 +115,3 @@ export interface ChartFormatPaneModel {
115
115
  /** The value a field change carries. */
116
116
  export type ChartFormatFieldValue = string | number | boolean | '';
117
117
  export {};
118
- //# sourceMappingURL=format-pane-types.d.ts.map
@@ -209,4 +209,3 @@ export interface ChartFormatSource {
209
209
  /** Caption of the element picker (default "Chart Options"). */
210
210
  readonly picker?: ChartFormatText;
211
211
  }
212
- //# sourceMappingURL=format-pane-view.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import { defineSmartArt, defineSmartArtPicker, defineSmartArtTextPane } from './chunk-W2JD75LX.js';
2
- import { TEAMS_TAGS, registerTeams } from './chunk-WBE2Q5DC.js';
2
+ import { TEAMS_TAGS, registerTeams } from './chunk-YMZFOG2U.js';
3
3
  import { installOfficeUiTheme } from './chunk-T5ARELU2.js';
4
4
  import { registerControls } from './chunk-WDOWQKKC.js';
5
5
  import { definePresence } from './chunk-YZH2QS7J.js';
@@ -3320,7 +3320,10 @@ var TeamsPresentationPreview = class extends TeamsLitElement {
3320
3320
  observer;
3321
3321
  resizeFrame = 0;
3322
3322
  fontUrls = [];
3323
+ /** Releases the shown deck's fonts from the shared glyph-outline cache. */
3324
+ releaseOutlineFonts;
3323
3325
  generation = 0;
3326
+ detachOutlineFonts;
3324
3327
  constructor() {
3325
3328
  super();
3326
3329
  this.data = null;
@@ -3366,7 +3369,13 @@ var TeamsPresentationPreview = class extends TeamsLitElement {
3366
3369
  );
3367
3370
  this.fontCss = fonts.fontFaceCss;
3368
3371
  this.fontUrls = fonts.objectUrls;
3369
- renderer.glyphOutlineFontCache.registerEmbeddedFonts(data.embeddedFonts);
3372
+ this.releaseOutlineFonts = renderer.glyphOutlineFontCache.registerEmbeddedFonts(
3373
+ data.embeddedFonts
3374
+ );
3375
+ this.detachOutlineFonts = renderer.glyphOutlineFontCache.subscribe(() => {
3376
+ this.showSlide();
3377
+ this.requestUpdate();
3378
+ });
3370
3379
  this.showSlide();
3371
3380
  await this.updateComplete;
3372
3381
  if (generation !== this.generation || !this.isConnected) return;
@@ -3409,11 +3418,15 @@ var TeamsPresentationPreview = class extends TeamsLitElement {
3409
3418
  this.stageNode = null;
3410
3419
  }
3411
3420
  clear() {
3421
+ this.detachOutlineFonts?.();
3422
+ this.detachOutlineFonts = void 0;
3412
3423
  cancelAnimationFrame(this.resizeFrame);
3413
3424
  this.observer?.disconnect();
3414
3425
  this.observer = void 0;
3415
3426
  this.stopMedia();
3416
3427
  this.data?.handler.dispose();
3428
+ this.releaseOutlineFonts?.();
3429
+ this.releaseOutlineFonts = void 0;
3417
3430
  this.renderer?.revokeBlobUrls([...this.data?.blobUrls ?? [], ...this.fontUrls]);
3418
3431
  this.fontUrls = [];
3419
3432
  this.fontCss = "";
@@ -1,4 +1,4 @@
1
- import { TeamsLitElement, LOCALE_HOST, teamsI18n, inheritLocale, pushLocale } from './chunk-FHO7TEWA.js';
1
+ import { TeamsLitElement, LOCALE_HOST, teamsI18n, inheritLocale, pushLocale } from './chunk-WYKMVMX4.js';
2
2
  import { listenEvents, bindElement, syncClassName } from './chunk-CDAXY5KC.js';
3
3
  import { eventArgs, pickProps } from './chunk-NDUD5JJB.js';
4
4
  import { THEME_CSS, installOfficeUiTheme } from './chunk-T5ARELU2.js';
@@ -2257,7 +2257,7 @@ var TeamsContentPreview = class extends TeamsLitElement {
2257
2257
  if (kind === "xlsx") (await import('./xlsx.js')).defineXlsxEditor();
2258
2258
  if (kind === "vsdx") (await import('./visio.js')).registerVisioViewer();
2259
2259
  if (kind === "pptx")
2260
- (await import('./presentation-preview-KY56TONW.js')).defineTeamsPresentationPreview();
2260
+ (await import('./presentation-preview-XGJMARKI.js')).defineTeamsPresentationPreview();
2261
2261
  if (request.signal.aborted) return;
2262
2262
  this.native = kind;
2263
2263
  await this.updateComplete;
@@ -0,0 +1,63 @@
1
+ /** One mention: `length` characters of the text from `start`, the `@` included. */
2
+ export interface OfficeCommentMention {
3
+ start: number;
4
+ length: number;
5
+ /** The mentioned person's id in the product's people list. */
6
+ id?: string;
7
+ /** The mentioned person's display name. */
8
+ name?: string;
9
+ }
10
+ /** A person the typeahead offers. */
11
+ export interface OfficeMentionCandidate {
12
+ id: string;
13
+ name: string;
14
+ initials?: string;
15
+ }
16
+ /** One run of a comment's text: plain text or a mention. */
17
+ export interface OfficeCommentSegment {
18
+ kind: 'text' | 'mention';
19
+ text: string;
20
+ id?: string;
21
+ name?: string;
22
+ }
23
+ /**
24
+ * The text split into plain runs and mentions. Spans out of range, empty or overlapping an earlier
25
+ * one are ignored (the offsets can come from a file another program edited).
26
+ */
27
+ export declare function commentSegments(text: string, mentions?: readonly OfficeCommentMention[]): OfficeCommentSegment[];
28
+ /** The `@` token being typed: the text after the `@`, lower-cased, and where the `@` is. */
29
+ export interface OfficeMentionQuery {
30
+ query: string;
31
+ start: number;
32
+ }
33
+ /**
34
+ * The `@` token just left of `caret`, or `null`. The `@` must start the text or follow whitespace and
35
+ * the token holds no whitespace, so an e-mail address does not open the typeahead.
36
+ */
37
+ export declare function mentionQueryAt(text: string, caret: number): OfficeMentionQuery | null;
38
+ /** The candidates a query matches, best first: name prefixes, then names or initials containing it. */
39
+ export declare function matchMentionCandidates<C extends OfficeMentionCandidate>(candidates: readonly C[], query: string, limit?: number): C[];
40
+ /** The text, mentions and caret after a pick from the typeahead. */
41
+ export interface OfficeMentionInsertion {
42
+ text: string;
43
+ mentions: OfficeCommentMention[];
44
+ caret: number;
45
+ }
46
+ /**
47
+ * The `@` token at `caret` (or the caret itself) replaced by `@<name>` and a space, with the new span
48
+ * (the `@` included, as Office records it) and the spans after it shifted. A span the token overlaps
49
+ * (a pick made inside an existing mention) is dropped, so the text is never claimed twice.
50
+ */
51
+ export declare function insertMention(text: string, mentions: readonly OfficeCommentMention[] | undefined, caret: number, candidate: OfficeMentionCandidate): OfficeMentionInsertion;
52
+ /** What a box posts: its text without the surrounding whitespace, and the spans moved with it. */
53
+ export declare function trimMentionText(text: string, mentions: readonly OfficeCommentMention[] | undefined): {
54
+ text: string;
55
+ mentions: OfficeCommentMention[];
56
+ };
57
+ /**
58
+ * The spans after the text changed from `before` to `after` by one edit (typing, deleting or a
59
+ * paste): spans before the changed part stay, spans after it move by the length change, and a span
60
+ * the edit touches is dropped. The same array when the text did not change.
61
+ */
62
+ export declare function followTextEdit(before: string, after: string, mentions: readonly OfficeCommentMention[]): readonly OfficeCommentMention[];
63
+ //# sourceMappingURL=mentions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mentions.d.ts","sourceRoot":"","sources":["../../src/comments/mentions.ts"],"names":[],"mappings":"AAKA,mFAAmF;AACnF,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,qCAAqC;AACrC,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,4DAA4D;AAC5D,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAcD;;;GAGG;AACH,wBAAgB,eAAe,CAC9B,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,SAAS,oBAAoB,EAAE,GACxC,oBAAoB,EAAE,CAkBxB;AAED,4FAA4F;AAC5F,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI,CAYrF;AAWD,uGAAuG;AACvG,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,sBAAsB,EACtE,UAAU,EAAE,SAAS,CAAC,EAAE,EACxB,KAAK,EAAE,MAAM,EACb,KAAK,SAAI,GACP,CAAC,EAAE,CAWL;AAED,oEAAoE;AACpE,MAAM,WAAW,sBAAsB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC5B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,EACrD,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,sBAAsB,GAC/B,sBAAsB,CAmBxB;AAED,kGAAkG;AAClG,wBAAgB,eAAe,CAC9B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,GACnD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,oBAAoB,EAAE,CAAA;CAAE,CAUpD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC7B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,SAAS,oBAAoB,EAAE,GACvC,SAAS,oBAAoB,EAAE,CAmBjC"}
@@ -47,4 +47,3 @@ export declare abstract class OfficeUiCheckable extends OfficeElement {
47
47
  /** The tick, shown through CSS when `checked`. */
48
48
  protected renderCheck(): import("lit").TemplateResult<1>;
49
49
  }
50
- //# sourceMappingURL=checkable.d.ts.map
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
- export { OFFICE_UI_TAGS, registerOfficeUi } from './chunk-2EFIFIPB.js';
1
+ export { OFFICE_UI_TAGS, registerOfficeUi } from './chunk-LNHFMJ2P.js';
2
2
  export { HOST_REGION_ATTRIBUTE, HostRegionHost, RIBBON_ADD_IN_EVENT, createHostBackstagePages, defineRibbonAddInElements, syncHostMenuChildren, syncRibbonAddIns, tidyMenuSeparators, withHostMenuItems } from './chunk-KSOHDEUI.js';
3
3
  export { OfficeUiSmartArt, OfficeUiSmartArtPicker, OfficeUiSmartArtTextPane, SmartArtTextPaneController, defineSmartArt, defineSmartArtPicker, defineSmartArtTextPane, renderDiagramDrawing, smartArtColorsGalleryState, smartArtLayoutTileSvg, smartArtStylesGalleryState, smartArtTileSvg } from './chunk-W2JD75LX.js';
4
- export { EMOJI, OfficeUiActivityFeed, OfficeUiAppRail, OfficeUiAvatar, OfficeUiCalendarAgenda, OfficeUiCalendarView, OfficeUiCallControls, OfficeUiCallGrid, OfficeUiChannelList, OfficeUiChatComposer, OfficeUiChatList, OfficeUiChatSidebar, OfficeUiPeoplePicker, OfficeUiPrejoin, QUICK_REACTIONS, TEAMS_CONTRACT, TEAMS_TAGS, TeamsApp, TeamsChannelTab, TeamsContentPreview, TeamsController, TeamsElement, TeamsFilesPanel, TeamsSettings, activityTime, applyTeamsProps, bindTeams, colorFor, createTeams, dayKind, dayLabel, defineActivityFeed, defineAppRail, defineAvatar, defineCalendarAgenda, defineCalendarView, defineCallControls, defineCallGrid, defineChannelList, defineChatComposer, defineChatList, defineChatSidebar, definePeoplePicker, definePrejoin, defineTeamsApp, defineTeamsChannelTab, defineTeamsContentPreview, defineTeamsFilesPanel, defineTeamsSettings, formatElapsed, formatSize, formatTime, formatWhen, icon, listenTeamsEvents, loadConfig, loadIdentity, parseIceLines, pickTeamsProps, registerTeams, safeStorage, saveConfig, saveIdentity, withStyles } from './chunk-WBE2Q5DC.js';
5
- export { TeamsPresentationPreview, defineTeamsPresentationPreview } from './chunk-FHO7TEWA.js';
4
+ export { EMOJI, OfficeUiActivityFeed, OfficeUiAppRail, OfficeUiAvatar, OfficeUiCalendarAgenda, OfficeUiCalendarView, OfficeUiCallControls, OfficeUiCallGrid, OfficeUiChannelList, OfficeUiChatComposer, OfficeUiChatList, OfficeUiChatSidebar, OfficeUiPeoplePicker, OfficeUiPrejoin, QUICK_REACTIONS, TEAMS_CONTRACT, TEAMS_TAGS, TeamsApp, TeamsChannelTab, TeamsContentPreview, TeamsController, TeamsElement, TeamsFilesPanel, TeamsSettings, activityTime, applyTeamsProps, bindTeams, colorFor, createTeams, dayKind, dayLabel, defineActivityFeed, defineAppRail, defineAvatar, defineCalendarAgenda, defineCalendarView, defineCallControls, defineCallGrid, defineChannelList, defineChatComposer, defineChatList, defineChatSidebar, definePeoplePicker, definePrejoin, defineTeamsApp, defineTeamsChannelTab, defineTeamsContentPreview, defineTeamsFilesPanel, defineTeamsSettings, formatElapsed, formatSize, formatTime, formatWhen, icon, listenTeamsEvents, loadConfig, loadIdentity, parseIceLines, pickTeamsProps, registerTeams, safeStorage, saveConfig, saveIdentity, withStyles } from './chunk-YMZFOG2U.js';
5
+ export { TeamsPresentationPreview, defineTeamsPresentationPreview } from './chunk-WYKMVMX4.js';
6
6
  import './chunk-CDAXY5KC.js';
7
7
  import './chunk-NDUD5JJB.js';
8
8
  import './chunk-KJMAVPQB.js';
@@ -0,0 +1,121 @@
1
+ 'use strict';
2
+
3
+ var chunkIY7H76CZ_cjs = require('../chunk-IY7H76CZ.cjs');
4
+ var chunkA5MANNJR_cjs = require('../chunk-A5MANNJR.cjs');
5
+ require('../chunk-Y6DO6SVT.cjs');
6
+ require('../chunk-PBZWDEXQ.cjs');
7
+
8
+
9
+
10
+ Object.defineProperty(exports, "AI_CHANGE_ATTR", {
11
+ enumerable: true,
12
+ get: function () { return chunkIY7H76CZ_cjs.AI_CHANGE_ATTR; }
13
+ });
14
+ Object.defineProperty(exports, "AI_TOOL_FLASH_MS", {
15
+ enumerable: true,
16
+ get: function () { return chunkIY7H76CZ_cjs.AI_TOOL_FLASH_MS; }
17
+ });
18
+ Object.defineProperty(exports, "aiChangeAnimationCss", {
19
+ enumerable: true,
20
+ get: function () { return chunkIY7H76CZ_cjs.aiChangeAnimationCss; }
21
+ });
22
+ Object.defineProperty(exports, "aiFixDirective", {
23
+ enumerable: true,
24
+ get: function () { return chunkIY7H76CZ_cjs.aiFixDirective; }
25
+ });
26
+ Object.defineProperty(exports, "applyElementUpdate", {
27
+ enumerable: true,
28
+ get: function () { return chunkIY7H76CZ_cjs.applyElementUpdate; }
29
+ });
30
+ Object.defineProperty(exports, "applyShapeStyleUpdate", {
31
+ enumerable: true,
32
+ get: function () { return chunkIY7H76CZ_cjs.applyShapeStyleUpdate; }
33
+ });
34
+ Object.defineProperty(exports, "applyTextUpdate", {
35
+ enumerable: true,
36
+ get: function () { return chunkIY7H76CZ_cjs.applyTextUpdate; }
37
+ });
38
+ Object.defineProperty(exports, "buildChatLogExport", {
39
+ enumerable: true,
40
+ get: function () { return chunkIY7H76CZ_cjs.buildChatLogExport; }
41
+ });
42
+ Object.defineProperty(exports, "buildChatLogMarkdown", {
43
+ enumerable: true,
44
+ get: function () { return chunkIY7H76CZ_cjs.buildChatLogMarkdown; }
45
+ });
46
+ Object.defineProperty(exports, "changeGhostStyle", {
47
+ enumerable: true,
48
+ get: function () { return chunkIY7H76CZ_cjs.changeGhostStyle; }
49
+ });
50
+ Object.defineProperty(exports, "collectStoredChats", {
51
+ enumerable: true,
52
+ get: function () { return chunkIY7H76CZ_cjs.collectStoredChats; }
53
+ });
54
+ Object.defineProperty(exports, "computeFocusTargets", {
55
+ enumerable: true,
56
+ get: function () { return chunkIY7H76CZ_cjs.computeFocusTargets; }
57
+ });
58
+ Object.defineProperty(exports, "createAiChangeAnimator", {
59
+ enumerable: true,
60
+ get: function () { return chunkIY7H76CZ_cjs.createAiChangeAnimator; }
61
+ });
62
+ Object.defineProperty(exports, "createPptxAiBridge", {
63
+ enumerable: true,
64
+ get: function () { return chunkIY7H76CZ_cjs.createPptxAiBridge; }
65
+ });
66
+ Object.defineProperty(exports, "createPptxAiPanelController", {
67
+ enumerable: true,
68
+ get: function () { return chunkIY7H76CZ_cjs.createPptxAiPanelController; }
69
+ });
70
+ Object.defineProperty(exports, "deckDataFieldChanged", {
71
+ enumerable: true,
72
+ get: function () { return chunkIY7H76CZ_cjs.deckDataFieldChanged; }
73
+ });
74
+ Object.defineProperty(exports, "diffChangedElements", {
75
+ enumerable: true,
76
+ get: function () { return chunkIY7H76CZ_cjs.diffChangedElements; }
77
+ });
78
+ Object.defineProperty(exports, "exportAiChatLogs", {
79
+ enumerable: true,
80
+ get: function () { return chunkIY7H76CZ_cjs.exportAiChatLogs; }
81
+ });
82
+ Object.defineProperty(exports, "focusTargetChips", {
83
+ enumerable: true,
84
+ get: function () { return chunkIY7H76CZ_cjs.focusTargetChips; }
85
+ });
86
+ Object.defineProperty(exports, "isAiFocusPinned", {
87
+ enumerable: true,
88
+ get: function () { return chunkIY7H76CZ_cjs.isAiFocusPinned; }
89
+ });
90
+ Object.defineProperty(exports, "isTwoTableFocus", {
91
+ enumerable: true,
92
+ get: function () { return chunkIY7H76CZ_cjs.isTwoTableFocus; }
93
+ });
94
+ Object.defineProperty(exports, "mergeTablesDirective", {
95
+ enumerable: true,
96
+ get: function () { return chunkIY7H76CZ_cjs.mergeTablesDirective; }
97
+ });
98
+ Object.defineProperty(exports, "pptxAiDeckTitle", {
99
+ enumerable: true,
100
+ get: function () { return chunkIY7H76CZ_cjs.pptxAiDeckTitle; }
101
+ });
102
+ Object.defineProperty(exports, "resolveAiEffectiveTargets", {
103
+ enumerable: true,
104
+ get: function () { return chunkIY7H76CZ_cjs.resolveAiEffectiveTargets; }
105
+ });
106
+ Object.defineProperty(exports, "resolveChangeAnimationConfig", {
107
+ enumerable: true,
108
+ get: function () { return chunkIY7H76CZ_cjs.resolveChangeAnimationConfig; }
109
+ });
110
+ Object.defineProperty(exports, "toLogChat", {
111
+ enumerable: true,
112
+ get: function () { return chunkIY7H76CZ_cjs.toLogChat; }
113
+ });
114
+ Object.defineProperty(exports, "toolCallLine", {
115
+ enumerable: true,
116
+ get: function () { return chunkIY7H76CZ_cjs.toolCallLine; }
117
+ });
118
+ Object.defineProperty(exports, "createChatHistoryStore", {
119
+ enumerable: true,
120
+ get: function () { return chunkA5MANNJR_cjs.createChatHistoryStore; }
121
+ });
@@ -0,0 +1,39 @@
1
+ /**
2
+ * `ooxml-ui/pptx/ai/host`: the part of the AI assistant core with no SDK runtime imports.
3
+ *
4
+ * A viewer needs these helpers even when the host never opens the chat: the deck bridge
5
+ * (`createPptxAiBridge`, focus targets, the deck-data change check, element updates), the
6
+ * panel controller, the canvas change overlay and its animator, and the stored chat history
7
+ * with its log export. The full `ooxml-ui/pptx/ai` barrel also carries the chat session, the
8
+ * tool registry and the server tool set, which reach the optional `ai` SDK, `zod` and the
9
+ * automation schemas. Nothing reachable from this entry imports any of those at runtime
10
+ * (`host.test.ts` checks it), so a binding's main entry can use it without pulling the
11
+ * assistant runtime into the host's initial bundle.
12
+ *
13
+ * This is about runtime imports only. The type declarations still reference SDK types (the
14
+ * stored chat history and log export name the `ai` package's `UIMessage`), so type checking a
15
+ * consumer resolves `ai` types the same way the full barrel does.
16
+ *
17
+ * Every export here is also exported, unchanged, from `ooxml-ui/pptx/ai`.
18
+ */
19
+ export { deckDataFieldChanged } from './deck-data-diff.js';
20
+ export { createPptxAiBridge, pptxAiDeckTitle } from './bridge-factory.js';
21
+ export type { PptxAiBridgePort, PptxAiCanvasSize } from './bridge-factory.js';
22
+ export { AI_TOOL_FLASH_MS, aiFixDirective, createPptxAiPanelController, isAiFocusPinned, resolveAiEffectiveTargets, } from './panel-controller.js';
23
+ export type { PptxAiPanelController, PptxAiPanelControllerDeps, PptxAiPanelState, PptxAiPrefill, } from './panel-controller.js';
24
+ export type { PptxAiBridge, PptxAiDataUpdater, PptxAiDeckMeta, PptxAiElementUpdate, PptxAiFocusedTarget, PptxAiNotifyLevel, PptxAiSlidesUpdater, } from './bridge.js';
25
+ export { computeFocusTargets, focusTargetChips, isTwoTableFocus, mergeTablesDirective, } from './focus-targets.js';
26
+ export type { AiCanvasHighlight, FocusChip, FocusSelectionInput } from './focus-targets.js';
27
+ export { createAiChangeAnimator, resolveChangeAnimationConfig } from './change-animator.js';
28
+ export type { AiChangeAnimationConfig, AiChangeAnimator, AiChangeBatch, ResolvedAiChangeAnimationConfig, } from './change-animator.js';
29
+ export { diffChangedElements } from './change-diff.js';
30
+ export type { AiChangeBounds, AiChangeKind, AiElementChange } from './change-diff.js';
31
+ export { AI_CHANGE_ATTR, aiChangeAnimationCss, changeGhostStyle } from './change-animation-css.js';
32
+ export type { GhostStyle } from './change-animation-css.js';
33
+ export { createChatHistoryStore } from './chat-history-store.js';
34
+ export type { PptxAiChatStore, PptxAiChatSummary, PptxAiStoredChat } from './chat-history-store.js';
35
+ export { buildChatLogExport, buildChatLogMarkdown, collectStoredChats, exportAiChatLogs, toLogChat, toolCallLine, } from './chat-log-export.js';
36
+ export type { AiLogChat, AiLogExport, AiLogFormat, AiLogMessage, AiLogToolCall, BuildChatLogOptions, ExportAiChatLogsMeta, SaveChatLogFile, } from './chat-log-export.js';
37
+ export { applyElementUpdate, applyShapeStyleUpdate, applyTextUpdate } from './tools/mutations.js';
38
+ export type { ToolCanvasTarget } from './tool-target.js';
39
+ //# sourceMappingURL=host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../src/pptx/ai/host.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACvE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAE3E,OAAO,EACN,gBAAgB,EAChB,cAAc,EACd,2BAA2B,EAC3B,eAAe,EACf,yBAAyB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACX,qBAAqB,EACrB,yBAAyB,EACzB,gBAAgB,EAChB,aAAa,GACb,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACX,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACnB,MAAM,UAAU,CAAC;AAElB,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,GACpB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEzF,OAAO,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AACzF,YAAY,EACX,uBAAuB,EACvB,gBAAgB,EAChB,aAAa,EACb,+BAA+B,GAC/B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAChG,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEjG,OAAO,EACN,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACT,YAAY,GACZ,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACX,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,GACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAE/F,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { AI_CHANGE_ATTR, AI_TOOL_FLASH_MS, aiChangeAnimationCss, aiFixDirective, applyElementUpdate, applyShapeStyleUpdate, applyTextUpdate, buildChatLogExport, buildChatLogMarkdown, changeGhostStyle, collectStoredChats, computeFocusTargets, createAiChangeAnimator, createPptxAiBridge, createPptxAiPanelController, deckDataFieldChanged, diffChangedElements, exportAiChatLogs, focusTargetChips, isAiFocusPinned, isTwoTableFocus, mergeTablesDirective, pptxAiDeckTitle, resolveAiEffectiveTargets, resolveChangeAnimationConfig, toLogChat, toolCallLine } from '../chunk-YQANSI3A.mjs';
2
+ export { createChatHistoryStore } from '../chunk-LVDF75JU.mjs';
3
+ import '../chunk-WM5SW737.mjs';
4
+ import '../chunk-PEDGPFLR.mjs';