fika-editor 3.2.10 → 3.3.1

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 (97) hide show
  1. package/dist/embed/{824.js → 6104.js} +18 -18
  2. package/dist/embed/agentic-manifest.json +44 -8
  3. package/dist/embed/chunks/1131.js +1 -1
  4. package/dist/embed/chunks/2407.js +1 -1
  5. package/dist/embed/chunks/2807.js +1 -1
  6. package/dist/embed/chunks/3888.js +1 -1
  7. package/dist/embed/chunks/5216.js +1 -1
  8. package/dist/embed/chunks/574.js +1 -1
  9. package/dist/embed/chunks/655.js +1 -0
  10. package/dist/embed/chunks/862.js +1 -1
  11. package/dist/embed/chunks/9657.js +1 -1
  12. package/dist/embed/chunks/9800.js +1 -1
  13. package/dist/embed/fika-embed.css +1 -1
  14. package/dist/embed/fika-embed.js +18 -4
  15. package/dist/layout/utils/resizeDeck.js +5 -0
  16. package/dist/types/components/Button.d.ts +2 -2
  17. package/dist/types/embed/agentic/canvasContext.d.ts +4 -0
  18. package/dist/types/embed/agentic/canvasOperations.d.ts +3 -0
  19. package/dist/types/embed/agentic/types.d.ts +118 -0
  20. package/dist/types/embed/index.d.ts +2 -0
  21. package/dist/types/embed/render.d.ts +4 -0
  22. package/dist/types/embed/types.d.ts +3 -2
  23. package/dist/types/hooks/textCreationDefaults.d.ts +2 -0
  24. package/dist/types/hooks/useAnimationFrameCallback.d.ts +6 -0
  25. package/dist/types/i18n/cs/myna/index.d.ts +3 -0
  26. package/dist/types/i18n/en/myna/index.d.ts +3 -0
  27. package/dist/types/i18n/i18n-react.d.ts +2 -0
  28. package/dist/types/i18n/i18n-types.d.ts +2888 -1341
  29. package/dist/types/i18n/i18n-util.async.d.ts +1 -0
  30. package/dist/types/i18n/i18n-util.d.ts +1 -0
  31. package/dist/types/i18n/pl/myna/index.d.ts +3 -0
  32. package/dist/types/i18n/sk/myna/index.d.ts +3 -0
  33. package/dist/types/paint/slidePainter.d.ts +11 -0
  34. package/dist/types/store/slides.d.ts +241 -1
  35. package/dist/types/types/slides.d.ts +53 -0
  36. package/dist/types/utils/canvasFit.d.ts +17 -0
  37. package/dist/types/utils/canvasHitTest.d.ts +4 -0
  38. package/dist/types/utils/element.d.ts +27 -0
  39. package/dist/types/utils/elementPaint.d.ts +129 -0
  40. package/dist/types/utils/frameDomClip.d.ts +3 -0
  41. package/dist/types/utils/nestedFrames.d.ts +19 -0
  42. package/dist/types/utils/pageGuides.d.ts +6 -0
  43. package/dist/types/utils/renderMetrics.d.ts +2 -0
  44. package/dist/types/utils/selectInsertedElements.d.ts +2 -0
  45. package/dist/types/utils/transferPageElements.d.ts +3 -0
  46. package/dist/types/views/Editor/Canvas/MynaRulers.d.ts +17 -0
  47. package/dist/types/views/Editor/Canvas/ViewportBackground.d.ts +3 -1
  48. package/dist/types/views/Editor/Canvas/hooks/useDragElement.d.ts +2 -1
  49. package/dist/types/views/Editor/Canvas/hooks/useDrop.d.ts +1 -1
  50. package/dist/types/views/Editor/Canvas/hooks/useViewportSize.d.ts +1 -0
  51. package/dist/types/views/Editor/Canvas/index.d.ts +4 -1
  52. package/dist/types/views/Editor/EditorHeader/index.d.ts +4 -2
  53. package/dist/types/views/Editor/index.d.ts +3 -2
  54. package/dist/types/views/Myna/MynaAssetsPanel.d.ts +28 -0
  55. package/dist/types/views/Myna/MynaDownload.d.ts +4 -0
  56. package/dist/types/views/Myna/MynaDrawer.d.ts +9 -0
  57. package/dist/types/views/Myna/MynaElementsPanel.d.ts +12 -0
  58. package/dist/types/views/Myna/MynaFrameTitles.d.ts +6 -0
  59. package/dist/types/views/Myna/MynaFramesHierarchy.d.ts +1 -0
  60. package/dist/types/views/Myna/MynaFramesPanel.d.ts +6 -0
  61. package/dist/types/views/Myna/MynaHeader.d.ts +5 -0
  62. package/dist/types/views/Myna/MynaInspector.d.ts +2 -0
  63. package/dist/types/views/Myna/MynaLayersPanel.d.ts +1 -0
  64. package/dist/types/views/Myna/MynaPageCanvas.d.ts +14 -0
  65. package/dist/types/views/Myna/MynaPageLayoutControls.d.ts +1 -0
  66. package/dist/types/views/Myna/MynaPageOutline.d.ts +1 -0
  67. package/dist/types/views/Myna/MynaPageOverflow.d.ts +9 -0
  68. package/dist/types/views/Myna/MynaPagesPanel.d.ts +14 -0
  69. package/dist/types/views/Myna/MynaQrPanel.d.ts +1 -0
  70. package/dist/types/views/Myna/MynaTemplateLibrary.d.ts +3 -0
  71. package/dist/types/views/Myna/MynaViewSettings.d.ts +2 -0
  72. package/dist/types/views/Myna/MynaWorkspace.d.ts +1 -0
  73. package/dist/types/views/Myna/MynaZoomControl.d.ts +3 -0
  74. package/dist/types/views/Myna/WorkspaceLabels.d.ts +8 -0
  75. package/dist/types/views/Myna/WorkspaceObjects.d.ts +9 -0
  76. package/dist/types/views/Myna/catalog.d.ts +233 -0
  77. package/dist/types/views/Myna/exportPages.d.ts +2 -0
  78. package/dist/types/views/Myna/inspectorLabels.d.ts +30 -0
  79. package/dist/types/views/Myna/libraryMessages.d.ts +28 -0
  80. package/dist/types/views/Myna/pageLayout.d.ts +22 -0
  81. package/dist/types/views/Myna/pageSnapping.d.ts +41 -0
  82. package/dist/types/views/Myna/pdf.d.ts +10 -0
  83. package/dist/types/views/Myna/photoFrameLabels.d.ts +28 -0
  84. package/dist/types/views/Myna/photoFrameUpload.d.ts +5 -0
  85. package/dist/types/views/Myna/photoFrames.d.ts +11 -0
  86. package/dist/types/views/Myna/qrCode.d.ts +7 -0
  87. package/dist/types/views/Myna/qrMessages.d.ts +18 -0
  88. package/dist/types/views/Myna/svg.d.ts +21 -0
  89. package/dist/types/views/Myna/svgWatermark.d.ts +2 -0
  90. package/dist/types/views/Myna/templateLibrary.d.ts +26 -0
  91. package/dist/types/views/Myna/viewStore.d.ts +14 -0
  92. package/dist/types/views/Myna/workspaceLabels.d.ts +10 -0
  93. package/dist/types/views/Myna/workspaceSelectors.d.ts +17 -0
  94. package/docs/AGENTIC_BRIDGE.md +23 -0
  95. package/docs/EMBED.md +10 -0
  96. package/docs/MYNA.md +247 -0
  97. package/package.json +5 -1
@@ -5,6 +5,7 @@ export declare const loadAllLocalesAsync: () => Promise<void[]>;
5
5
  export declare const loadFormatters: (locale: Locales) => void;
6
6
  export declare const importNamespaceAsync: <Namespace extends Namespaces>(locale: Locales, namespace: Namespace) => Promise<{
7
7
  screen: import("./i18n-types").NamespaceScreenTranslation;
8
+ myna: import("./i18n-types").NamespaceMynaTranslation;
8
9
  export: import("./i18n-types").NamespaceExportTranslation;
9
10
  editor: import("./i18n-types").NamespaceEditorTranslation;
10
11
  mobile: import("./i18n-types").NamespaceMobileTranslation;
@@ -10,6 +10,7 @@ export declare const loadedLocales: Record<Locales, Translations>;
10
10
  export declare const loadedFormatters: Record<Locales, Formatters>;
11
11
  export declare const extendDictionary: <Base extends import("typesafe-i18n").BaseTranslation | {
12
12
  screen: import("./i18n-types").NamespaceScreenTranslation;
13
+ myna: import("./i18n-types").NamespaceMynaTranslation;
13
14
  export: import("./i18n-types").NamespaceExportTranslation;
14
15
  editor: import("./i18n-types").NamespaceEditorTranslation;
15
16
  mobile: import("./i18n-types").NamespaceMobileTranslation;
@@ -0,0 +1,3 @@
1
+ import type { NamespaceMynaTranslation } from '../../i18n-types';
2
+ declare const myna: NamespaceMynaTranslation;
3
+ export default myna;
@@ -0,0 +1,3 @@
1
+ import type { NamespaceMynaTranslation } from '../../i18n-types';
2
+ declare const myna: NamespaceMynaTranslation;
3
+ export default myna;
@@ -1,5 +1,12 @@
1
1
  import type { Slide, SlideTheme } from '../types/slides';
2
2
  export type PaintSlideOptions = {
3
+ /** Workspace-only projection. Exports and thumbnails retain page clipping. */
4
+ workspaceBounds?: {
5
+ x: number;
6
+ y: number;
7
+ width: number;
8
+ height: number;
9
+ };
3
10
  slide: Slide;
4
11
  theme: SlideTheme;
5
12
  viewportSize: number;
@@ -10,6 +17,10 @@ export type PaintSlideOptions = {
10
17
  invalidate: () => void;
11
18
  /** Paint unfilled placeholder prompts (layout picker cards). Slide thumbnails keep them hidden. */
12
19
  showPlaceholders?: boolean;
20
+ /** Export without the page background; element paint and contrast stay unchanged. */
21
+ transparentBackground?: boolean;
22
+ /** Export-owned full-resolution images; thumbnails keep their lightweight cache. */
23
+ imageBitmaps?: ReadonlyMap<string, ImageBitmap>;
13
24
  };
14
25
  /**
15
26
  * Direct Slide JSON -> final-DPR canvas paint. No DOM tree, foreignObject
@@ -1,4 +1,4 @@
1
- import type { Slide, SlideTheme, PPTElement, PPTAnimation, SlideTemplate, ImportedSlideTemplate, TurningMode } from '../types/slides';
1
+ import type { WorkspaceLabel, Slide, SlideTheme, PPTElement, PPTAnimation, SlideTemplate, ImportedSlideTemplate, TurningMode } from '../types/slides';
2
2
  export type AddSlideOptions = {
3
3
  index?: number;
4
4
  select?: boolean;
@@ -42,6 +42,18 @@ export interface SlidesActions {
42
42
  addImportedTemplate: (template: ImportedSlideTemplate) => void;
43
43
  replaceSlide: (slide: Slide, slideId?: string) => void;
44
44
  addSlide: (slide: Slide | Slide[], options?: AddSlideOptions) => void;
45
+ transferPageElements: (sourceId: string, targetId: string, ids: readonly string[]) => void;
46
+ updateWorkspace: (change: {
47
+ positions?: Record<string, {
48
+ x: number;
49
+ y: number;
50
+ }>;
51
+ annotation?: {
52
+ owner: string;
53
+ id: string;
54
+ props: Partial<WorkspaceLabel>;
55
+ };
56
+ }) => void;
45
57
  updateSlide: (props: Partial<Slide>, slideId?: string) => void;
46
58
  removeSlideProps: (data: RemovePropData) => void;
47
59
  deleteSlide: (slideId: string | string[]) => void;
@@ -93,8 +105,27 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
93
105
  styleId?: string;
94
106
  };
95
107
  slides: {
108
+ workspaceLabels?: {
109
+ kind?: 'section' | 'comment';
110
+ width?: number;
111
+ height?: number;
112
+ pageIds?: string[];
113
+ resolved?: boolean;
114
+ replies?: string[];
115
+ id: string;
116
+ text: string;
117
+ x: number;
118
+ y: number;
119
+ fontSize: number;
120
+ }[];
121
+ canvasPosition?: {
122
+ x: number;
123
+ y: number;
124
+ };
125
+ canvasName?: string;
96
126
  id: string;
97
127
  elements: ({
128
+ parentFrameId?: string;
98
129
  id: string;
99
130
  left: number;
100
131
  top: number;
@@ -148,6 +179,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
148
179
  poster?: string;
149
180
  ext?: string;
150
181
  } | {
182
+ parentFrameId?: string;
151
183
  id: string;
152
184
  left: number;
153
185
  top: number;
@@ -215,6 +247,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
215
247
  textColor?: string;
216
248
  lineColor?: string;
217
249
  } | {
250
+ parentFrameId?: string;
218
251
  id: string;
219
252
  left: number;
220
253
  top: number;
@@ -266,6 +299,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
266
299
  fontSize: number;
267
300
  showLineNumbers: boolean;
268
301
  } | {
302
+ parentFrameId?: string;
269
303
  id: string;
270
304
  left: number;
271
305
  top: number;
@@ -345,7 +379,22 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
345
379
  radius?: number;
346
380
  colorMask?: string;
347
381
  imageType?: import("../types/slides").ImageType;
382
+ qrCode?: {
383
+ text: string;
384
+ errorCorrection: 'L' | 'M' | 'Q' | 'H';
385
+ foreground: string;
386
+ background: string;
387
+ };
388
+ photoFrame?: {
389
+ layout: string;
390
+ cell: number;
391
+ gutter: number;
392
+ empty: boolean;
393
+ sourceWidth?: number;
394
+ sourceHeight?: number;
395
+ };
348
396
  } | {
397
+ parentFrameId?: string;
349
398
  id: string;
350
399
  left: number;
351
400
  top: number;
@@ -398,6 +447,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
398
447
  viewBox: [number, number];
399
448
  fixedRatio: boolean;
400
449
  } | {
450
+ parentFrameId?: string;
401
451
  id: string;
402
452
  left: number;
403
453
  top: number;
@@ -458,6 +508,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
458
508
  curve?: [number, number];
459
509
  cubic?: [[number, number], [number, number]];
460
510
  } | {
511
+ parentFrameId?: string;
461
512
  id: string;
462
513
  left: number;
463
514
  top: number;
@@ -505,6 +556,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
505
556
  type: 'mermaid';
506
557
  code: string;
507
558
  } | {
559
+ parentFrameId?: string;
508
560
  id: string;
509
561
  left: number;
510
562
  top: number;
@@ -549,6 +601,9 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
549
601
  radius: number;
550
602
  };
551
603
  };
604
+ frame?: {
605
+ clipContent: boolean;
606
+ };
552
607
  type: 'shape';
553
608
  viewBox: [number, number];
554
609
  path: string;
@@ -594,6 +649,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
594
649
  pathFormula?: import("../types/slides").ShapePathFormulasKeys;
595
650
  keypoints?: number[];
596
651
  } | {
652
+ parentFrameId?: string;
597
653
  id: string;
598
654
  left: number;
599
655
  top: number;
@@ -677,6 +733,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
677
733
  };
678
734
  }[][];
679
735
  } | {
736
+ parentFrameId?: string;
680
737
  id: string;
681
738
  left: number;
682
739
  top: number;
@@ -771,6 +828,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
771
828
  }[];
772
829
  };
773
830
  } | {
831
+ parentFrameId?: string;
774
832
  id: string;
775
833
  left: number;
776
834
  top: number;
@@ -821,6 +879,11 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
821
879
  poster?: string;
822
880
  ext?: string;
823
881
  })[];
882
+ guides?: {
883
+ id: string;
884
+ axis: 'x' | 'y';
885
+ position: number;
886
+ }[];
824
887
  notes?: {
825
888
  id: string;
826
889
  content: string;
@@ -881,8 +944,27 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
881
944
  name: string;
882
945
  id: string;
883
946
  slides: {
947
+ workspaceLabels?: {
948
+ kind?: 'section' | 'comment';
949
+ width?: number;
950
+ height?: number;
951
+ pageIds?: string[];
952
+ resolved?: boolean;
953
+ replies?: string[];
954
+ id: string;
955
+ text: string;
956
+ x: number;
957
+ y: number;
958
+ fontSize: number;
959
+ }[];
960
+ canvasPosition?: {
961
+ x: number;
962
+ y: number;
963
+ };
964
+ canvasName?: string;
884
965
  id: string;
885
966
  elements: ({
967
+ parentFrameId?: string;
886
968
  id: string;
887
969
  left: number;
888
970
  top: number;
@@ -936,6 +1018,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
936
1018
  poster?: string;
937
1019
  ext?: string;
938
1020
  } | {
1021
+ parentFrameId?: string;
939
1022
  id: string;
940
1023
  left: number;
941
1024
  top: number;
@@ -1003,6 +1086,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1003
1086
  textColor?: string;
1004
1087
  lineColor?: string;
1005
1088
  } | {
1089
+ parentFrameId?: string;
1006
1090
  id: string;
1007
1091
  left: number;
1008
1092
  top: number;
@@ -1054,6 +1138,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1054
1138
  fontSize: number;
1055
1139
  showLineNumbers: boolean;
1056
1140
  } | {
1141
+ parentFrameId?: string;
1057
1142
  id: string;
1058
1143
  left: number;
1059
1144
  top: number;
@@ -1133,7 +1218,22 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1133
1218
  radius?: number;
1134
1219
  colorMask?: string;
1135
1220
  imageType?: import("../types/slides").ImageType;
1221
+ qrCode?: {
1222
+ text: string;
1223
+ errorCorrection: 'L' | 'M' | 'Q' | 'H';
1224
+ foreground: string;
1225
+ background: string;
1226
+ };
1227
+ photoFrame?: {
1228
+ layout: string;
1229
+ cell: number;
1230
+ gutter: number;
1231
+ empty: boolean;
1232
+ sourceWidth?: number;
1233
+ sourceHeight?: number;
1234
+ };
1136
1235
  } | {
1236
+ parentFrameId?: string;
1137
1237
  id: string;
1138
1238
  left: number;
1139
1239
  top: number;
@@ -1186,6 +1286,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1186
1286
  viewBox: [number, number];
1187
1287
  fixedRatio: boolean;
1188
1288
  } | {
1289
+ parentFrameId?: string;
1189
1290
  id: string;
1190
1291
  left: number;
1191
1292
  top: number;
@@ -1246,6 +1347,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1246
1347
  curve?: [number, number];
1247
1348
  cubic?: [[number, number], [number, number]];
1248
1349
  } | {
1350
+ parentFrameId?: string;
1249
1351
  id: string;
1250
1352
  left: number;
1251
1353
  top: number;
@@ -1293,6 +1395,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1293
1395
  type: 'mermaid';
1294
1396
  code: string;
1295
1397
  } | {
1398
+ parentFrameId?: string;
1296
1399
  id: string;
1297
1400
  left: number;
1298
1401
  top: number;
@@ -1337,6 +1440,9 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1337
1440
  radius: number;
1338
1441
  };
1339
1442
  };
1443
+ frame?: {
1444
+ clipContent: boolean;
1445
+ };
1340
1446
  type: 'shape';
1341
1447
  viewBox: [number, number];
1342
1448
  path: string;
@@ -1382,6 +1488,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1382
1488
  pathFormula?: import("../types/slides").ShapePathFormulasKeys;
1383
1489
  keypoints?: number[];
1384
1490
  } | {
1491
+ parentFrameId?: string;
1385
1492
  id: string;
1386
1493
  left: number;
1387
1494
  top: number;
@@ -1465,6 +1572,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1465
1572
  };
1466
1573
  }[][];
1467
1574
  } | {
1575
+ parentFrameId?: string;
1468
1576
  id: string;
1469
1577
  left: number;
1470
1578
  top: number;
@@ -1559,6 +1667,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1559
1667
  }[];
1560
1668
  };
1561
1669
  } | {
1670
+ parentFrameId?: string;
1562
1671
  id: string;
1563
1672
  left: number;
1564
1673
  top: number;
@@ -1609,6 +1718,11 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1609
1718
  poster?: string;
1610
1719
  ext?: string;
1611
1720
  })[];
1721
+ guides?: {
1722
+ id: string;
1723
+ axis: 'x' | 'y';
1724
+ position: number;
1725
+ }[];
1612
1726
  notes?: {
1613
1727
  id: string;
1614
1728
  content: string;
@@ -1690,6 +1804,18 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1690
1804
  addImportedTemplate: (template: ImportedSlideTemplate) => void;
1691
1805
  replaceSlide: (slide: Slide, slideId?: string) => void;
1692
1806
  addSlide: (slide: Slide | Slide[], options?: AddSlideOptions) => void;
1807
+ transferPageElements: (sourceId: string, targetId: string, ids: readonly string[]) => void;
1808
+ updateWorkspace: (change: {
1809
+ positions?: Record<string, {
1810
+ x: number;
1811
+ y: number;
1812
+ }>;
1813
+ annotation?: {
1814
+ owner: string;
1815
+ id: string;
1816
+ props: Partial<WorkspaceLabel>;
1817
+ };
1818
+ }) => void;
1693
1819
  updateSlide: (props: Partial<Slide>, slideId?: string) => void;
1694
1820
  removeSlideProps: (data: RemovePropData) => void;
1695
1821
  deleteSlide: (slideId: string | string[]) => void;
@@ -1724,8 +1850,27 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1724
1850
  styleId?: string;
1725
1851
  };
1726
1852
  slides: {
1853
+ workspaceLabels?: {
1854
+ kind?: 'section' | 'comment';
1855
+ width?: number;
1856
+ height?: number;
1857
+ pageIds?: string[];
1858
+ resolved?: boolean;
1859
+ replies?: string[];
1860
+ id: string;
1861
+ text: string;
1862
+ x: number;
1863
+ y: number;
1864
+ fontSize: number;
1865
+ }[];
1866
+ canvasPosition?: {
1867
+ x: number;
1868
+ y: number;
1869
+ };
1870
+ canvasName?: string;
1727
1871
  id: string;
1728
1872
  elements: ({
1873
+ parentFrameId?: string;
1729
1874
  id: string;
1730
1875
  left: number;
1731
1876
  top: number;
@@ -1779,6 +1924,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1779
1924
  poster?: string;
1780
1925
  ext?: string;
1781
1926
  } | {
1927
+ parentFrameId?: string;
1782
1928
  id: string;
1783
1929
  left: number;
1784
1930
  top: number;
@@ -1846,6 +1992,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1846
1992
  textColor?: string;
1847
1993
  lineColor?: string;
1848
1994
  } | {
1995
+ parentFrameId?: string;
1849
1996
  id: string;
1850
1997
  left: number;
1851
1998
  top: number;
@@ -1897,6 +2044,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1897
2044
  fontSize: number;
1898
2045
  showLineNumbers: boolean;
1899
2046
  } | {
2047
+ parentFrameId?: string;
1900
2048
  id: string;
1901
2049
  left: number;
1902
2050
  top: number;
@@ -1976,7 +2124,22 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
1976
2124
  radius?: number;
1977
2125
  colorMask?: string;
1978
2126
  imageType?: import("../types/slides").ImageType;
2127
+ qrCode?: {
2128
+ text: string;
2129
+ errorCorrection: 'L' | 'M' | 'Q' | 'H';
2130
+ foreground: string;
2131
+ background: string;
2132
+ };
2133
+ photoFrame?: {
2134
+ layout: string;
2135
+ cell: number;
2136
+ gutter: number;
2137
+ empty: boolean;
2138
+ sourceWidth?: number;
2139
+ sourceHeight?: number;
2140
+ };
1979
2141
  } | {
2142
+ parentFrameId?: string;
1980
2143
  id: string;
1981
2144
  left: number;
1982
2145
  top: number;
@@ -2029,6 +2192,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2029
2192
  viewBox: [number, number];
2030
2193
  fixedRatio: boolean;
2031
2194
  } | {
2195
+ parentFrameId?: string;
2032
2196
  id: string;
2033
2197
  left: number;
2034
2198
  top: number;
@@ -2089,6 +2253,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2089
2253
  curve?: [number, number];
2090
2254
  cubic?: [[number, number], [number, number]];
2091
2255
  } | {
2256
+ parentFrameId?: string;
2092
2257
  id: string;
2093
2258
  left: number;
2094
2259
  top: number;
@@ -2136,6 +2301,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2136
2301
  type: 'mermaid';
2137
2302
  code: string;
2138
2303
  } | {
2304
+ parentFrameId?: string;
2139
2305
  id: string;
2140
2306
  left: number;
2141
2307
  top: number;
@@ -2180,6 +2346,9 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2180
2346
  radius: number;
2181
2347
  };
2182
2348
  };
2349
+ frame?: {
2350
+ clipContent: boolean;
2351
+ };
2183
2352
  type: 'shape';
2184
2353
  viewBox: [number, number];
2185
2354
  path: string;
@@ -2225,6 +2394,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2225
2394
  pathFormula?: import("../types/slides").ShapePathFormulasKeys;
2226
2395
  keypoints?: number[];
2227
2396
  } | {
2397
+ parentFrameId?: string;
2228
2398
  id: string;
2229
2399
  left: number;
2230
2400
  top: number;
@@ -2308,6 +2478,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2308
2478
  };
2309
2479
  }[][];
2310
2480
  } | {
2481
+ parentFrameId?: string;
2311
2482
  id: string;
2312
2483
  left: number;
2313
2484
  top: number;
@@ -2402,6 +2573,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2402
2573
  }[];
2403
2574
  };
2404
2575
  } | {
2576
+ parentFrameId?: string;
2405
2577
  id: string;
2406
2578
  left: number;
2407
2579
  top: number;
@@ -2452,6 +2624,11 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2452
2624
  poster?: string;
2453
2625
  ext?: string;
2454
2626
  })[];
2627
+ guides?: {
2628
+ id: string;
2629
+ axis: 'x' | 'y';
2630
+ position: number;
2631
+ }[];
2455
2632
  notes?: {
2456
2633
  id: string;
2457
2634
  content: string;
@@ -2512,8 +2689,27 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2512
2689
  name: string;
2513
2690
  id: string;
2514
2691
  slides: {
2692
+ workspaceLabels?: {
2693
+ kind?: 'section' | 'comment';
2694
+ width?: number;
2695
+ height?: number;
2696
+ pageIds?: string[];
2697
+ resolved?: boolean;
2698
+ replies?: string[];
2699
+ id: string;
2700
+ text: string;
2701
+ x: number;
2702
+ y: number;
2703
+ fontSize: number;
2704
+ }[];
2705
+ canvasPosition?: {
2706
+ x: number;
2707
+ y: number;
2708
+ };
2709
+ canvasName?: string;
2515
2710
  id: string;
2516
2711
  elements: ({
2712
+ parentFrameId?: string;
2517
2713
  id: string;
2518
2714
  left: number;
2519
2715
  top: number;
@@ -2567,6 +2763,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2567
2763
  poster?: string;
2568
2764
  ext?: string;
2569
2765
  } | {
2766
+ parentFrameId?: string;
2570
2767
  id: string;
2571
2768
  left: number;
2572
2769
  top: number;
@@ -2634,6 +2831,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2634
2831
  textColor?: string;
2635
2832
  lineColor?: string;
2636
2833
  } | {
2834
+ parentFrameId?: string;
2637
2835
  id: string;
2638
2836
  left: number;
2639
2837
  top: number;
@@ -2685,6 +2883,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2685
2883
  fontSize: number;
2686
2884
  showLineNumbers: boolean;
2687
2885
  } | {
2886
+ parentFrameId?: string;
2688
2887
  id: string;
2689
2888
  left: number;
2690
2889
  top: number;
@@ -2764,7 +2963,22 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2764
2963
  radius?: number;
2765
2964
  colorMask?: string;
2766
2965
  imageType?: import("../types/slides").ImageType;
2966
+ qrCode?: {
2967
+ text: string;
2968
+ errorCorrection: 'L' | 'M' | 'Q' | 'H';
2969
+ foreground: string;
2970
+ background: string;
2971
+ };
2972
+ photoFrame?: {
2973
+ layout: string;
2974
+ cell: number;
2975
+ gutter: number;
2976
+ empty: boolean;
2977
+ sourceWidth?: number;
2978
+ sourceHeight?: number;
2979
+ };
2767
2980
  } | {
2981
+ parentFrameId?: string;
2768
2982
  id: string;
2769
2983
  left: number;
2770
2984
  top: number;
@@ -2817,6 +3031,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2817
3031
  viewBox: [number, number];
2818
3032
  fixedRatio: boolean;
2819
3033
  } | {
3034
+ parentFrameId?: string;
2820
3035
  id: string;
2821
3036
  left: number;
2822
3037
  top: number;
@@ -2877,6 +3092,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2877
3092
  curve?: [number, number];
2878
3093
  cubic?: [[number, number], [number, number]];
2879
3094
  } | {
3095
+ parentFrameId?: string;
2880
3096
  id: string;
2881
3097
  left: number;
2882
3098
  top: number;
@@ -2924,6 +3140,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2924
3140
  type: 'mermaid';
2925
3141
  code: string;
2926
3142
  } | {
3143
+ parentFrameId?: string;
2927
3144
  id: string;
2928
3145
  left: number;
2929
3146
  top: number;
@@ -2968,6 +3185,9 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
2968
3185
  radius: number;
2969
3186
  };
2970
3187
  };
3188
+ frame?: {
3189
+ clipContent: boolean;
3190
+ };
2971
3191
  type: 'shape';
2972
3192
  viewBox: [number, number];
2973
3193
  path: string;
@@ -3013,6 +3233,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
3013
3233
  pathFormula?: import("../types/slides").ShapePathFormulasKeys;
3014
3234
  keypoints?: number[];
3015
3235
  } | {
3236
+ parentFrameId?: string;
3016
3237
  id: string;
3017
3238
  left: number;
3018
3239
  top: number;
@@ -3096,6 +3317,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
3096
3317
  };
3097
3318
  }[][];
3098
3319
  } | {
3320
+ parentFrameId?: string;
3099
3321
  id: string;
3100
3322
  left: number;
3101
3323
  top: number;
@@ -3190,6 +3412,7 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
3190
3412
  }[];
3191
3413
  };
3192
3414
  } | {
3415
+ parentFrameId?: string;
3193
3416
  id: string;
3194
3417
  left: number;
3195
3418
  top: number;
@@ -3240,6 +3463,11 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
3240
3463
  poster?: string;
3241
3464
  ext?: string;
3242
3465
  })[];
3466
+ guides?: {
3467
+ id: string;
3468
+ axis: 'x' | 'y';
3469
+ position: number;
3470
+ }[];
3243
3471
  notes?: {
3244
3472
  id: string;
3245
3473
  content: string;
@@ -3321,6 +3549,18 @@ export declare const useSlidesStore: import("zustand").UseBoundStore<Omit<import
3321
3549
  addImportedTemplate: (template: ImportedSlideTemplate) => void;
3322
3550
  replaceSlide: (slide: Slide, slideId?: string) => void;
3323
3551
  addSlide: (slide: Slide | Slide[], options?: AddSlideOptions) => void;
3552
+ transferPageElements: (sourceId: string, targetId: string, ids: readonly string[]) => void;
3553
+ updateWorkspace: (change: {
3554
+ positions?: Record<string, {
3555
+ x: number;
3556
+ y: number;
3557
+ }>;
3558
+ annotation?: {
3559
+ owner: string;
3560
+ id: string;
3561
+ props: Partial<WorkspaceLabel>;
3562
+ };
3563
+ }) => void;
3324
3564
  updateSlide: (props: Partial<Slide>, slideId?: string) => void;
3325
3565
  removeSlideProps: (data: RemovePropData) => void;
3326
3566
  deleteSlide: (slideId: string | string[]) => void;