@lofcz/pptist 2.0.25 → 2.0.26
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/dist/embed/agentic-manifest.json +4 -4
- package/dist/embed/chunks/chunk-jwUa06l-.js +23 -0
- package/dist/embed/chunks/{texmath-Ca6UVlA5.js → texmath-ChY8kWTv.js} +1 -1
- package/dist/embed/pptist-embed.css +1 -1
- package/dist/embed/pptist-embed.js +24774 -24917
- package/dist/types/components/FitText.vue.d.ts +3 -0
- package/dist/types/components/NumberInput.vue.d.ts +3 -0
- package/dist/types/i18n/i18n-types.d.ts +16 -0
- package/dist/types/store/main.d.ts +18 -4
- package/dist/types/store/slides.d.ts +27 -0
- package/dist/types/types/edit.d.ts +2 -2
- package/dist/types/types/slides.d.ts +5 -0
- package/dist/types/utils/element.d.ts +1 -0
- package/dist/types/utils/elementOutline.d.ts +21 -0
- package/dist/types/utils/placeholderLayout.d.ts +32 -0
- package/dist/types/utils/prosemirror/commands/applyPlaceholderStyles.d.ts +9 -0
- package/dist/types/utils/prosemirror/utils.d.ts +3 -3
- package/dist/types/views/Screen/ScreenElement.vue.d.ts +2 -1
- package/dist/types/views/components/ThumbnailSlide/ThumbnailElement.vue.d.ts +2 -1
- package/dist/types/views/components/element/ProsemirrorEditor.vue.d.ts +5 -0
- package/dist/types/views/components/element/TextElement/BaseTextElement.vue.d.ts +2 -1
- package/dist/types/views/components/element/hooks/useElementOutline.d.ts +3 -0
- package/package.json +5 -2
|
@@ -9,6 +9,8 @@ type __VLS_Props = {
|
|
|
9
9
|
lineHeight?: number;
|
|
10
10
|
letterSpacing?: number;
|
|
11
11
|
maxLines?: number;
|
|
12
|
+
/** Extra px allowed in the height fit check (underline / descenders). */
|
|
13
|
+
measureHeightSlack?: number;
|
|
12
14
|
};
|
|
13
15
|
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
16
|
lineHeight: number;
|
|
@@ -20,6 +22,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
|
|
|
20
22
|
textDecoration: string;
|
|
21
23
|
maxFontSize: number;
|
|
22
24
|
minFontSize: number;
|
|
25
|
+
measureHeightSlack: number;
|
|
23
26
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
24
27
|
declare const _default: typeof __VLS_export;
|
|
25
28
|
export default _default;
|
|
@@ -5,6 +5,8 @@ type __VLS_Props = {
|
|
|
5
5
|
min?: number;
|
|
6
6
|
max?: number;
|
|
7
7
|
step?: number;
|
|
8
|
+
/** Shrink prefix label to one line via FitText in the prefix slot. */
|
|
9
|
+
fitPrefix?: boolean;
|
|
8
10
|
};
|
|
9
11
|
declare var __VLS_1: {}, __VLS_3: {};
|
|
10
12
|
type __VLS_Slots = {} & {
|
|
@@ -32,6 +34,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
32
34
|
placeholder: string;
|
|
33
35
|
disabled: boolean;
|
|
34
36
|
step: number;
|
|
37
|
+
fitPrefix: boolean;
|
|
35
38
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
36
39
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
37
40
|
declare const _default: typeof __VLS_export;
|
|
@@ -57,6 +57,10 @@ export type NamespaceCanvasTranslation = {
|
|
|
57
57
|
* Border width:
|
|
58
58
|
*/
|
|
59
59
|
widthLabel: string;
|
|
60
|
+
/**
|
|
61
|
+
* Border radius:
|
|
62
|
+
*/
|
|
63
|
+
radiusLabel: string;
|
|
60
64
|
};
|
|
61
65
|
chart: {
|
|
62
66
|
/**
|
|
@@ -2474,6 +2478,10 @@ export type NamespaceEditorTranslation = {
|
|
|
2474
2478
|
* Border width:
|
|
2475
2479
|
*/
|
|
2476
2480
|
borderWidth: string;
|
|
2481
|
+
/**
|
|
2482
|
+
* Border radius:
|
|
2483
|
+
*/
|
|
2484
|
+
borderRadius: string;
|
|
2477
2485
|
/**
|
|
2478
2486
|
* Search fonts
|
|
2479
2487
|
*/
|
|
@@ -4660,6 +4668,10 @@ export type TranslationFunctions = {
|
|
|
4660
4668
|
* Border width:
|
|
4661
4669
|
*/
|
|
4662
4670
|
widthLabel: () => LocalizedString;
|
|
4671
|
+
/**
|
|
4672
|
+
* Border radius:
|
|
4673
|
+
*/
|
|
4674
|
+
radiusLabel: () => LocalizedString;
|
|
4663
4675
|
};
|
|
4664
4676
|
chart: {
|
|
4665
4677
|
/**
|
|
@@ -7084,6 +7096,10 @@ export type TranslationFunctions = {
|
|
|
7084
7096
|
* Border width:
|
|
7085
7097
|
*/
|
|
7086
7098
|
borderWidth: () => LocalizedString;
|
|
7099
|
+
/**
|
|
7100
|
+
* Border radius:
|
|
7101
|
+
*/
|
|
7102
|
+
borderRadius: () => LocalizedString;
|
|
7087
7103
|
/**
|
|
7088
7104
|
* Search fonts
|
|
7089
7105
|
*/
|
|
@@ -96,7 +96,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
96
96
|
fontsize: string;
|
|
97
97
|
fontname: string;
|
|
98
98
|
link: string;
|
|
99
|
-
align: "
|
|
99
|
+
align: import("../embed").TextAlign;
|
|
100
100
|
bulletList: boolean;
|
|
101
101
|
orderedList: boolean;
|
|
102
102
|
blockquote: boolean;
|
|
@@ -115,7 +115,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
115
115
|
backcolor?: string | undefined;
|
|
116
116
|
fontsize?: string | undefined;
|
|
117
117
|
fontname?: string | undefined;
|
|
118
|
-
align?: "
|
|
118
|
+
align?: import("../embed").TextAlign | undefined;
|
|
119
119
|
} | null;
|
|
120
120
|
shapeFormatPainter: {
|
|
121
121
|
keep: boolean;
|
|
@@ -132,6 +132,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
132
132
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
133
133
|
width?: number | undefined;
|
|
134
134
|
color?: string | undefined;
|
|
135
|
+
radius?: number | undefined;
|
|
135
136
|
} | undefined;
|
|
136
137
|
opacity?: number | undefined;
|
|
137
138
|
shadow?: {
|
|
@@ -157,10 +158,12 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
157
158
|
placeholderFontSize?: number | undefined;
|
|
158
159
|
placeholderColor?: string | undefined;
|
|
159
160
|
placeholderAlign?: import("../embed").TextAlign | undefined;
|
|
161
|
+
placeholderLayoutHeight?: number | undefined;
|
|
160
162
|
outline?: {
|
|
161
163
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
162
164
|
width?: number | undefined;
|
|
163
165
|
color?: string | undefined;
|
|
166
|
+
radius?: number | undefined;
|
|
164
167
|
} | undefined;
|
|
165
168
|
fill?: string | undefined;
|
|
166
169
|
lineHeight?: number | undefined;
|
|
@@ -199,6 +202,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
199
202
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
200
203
|
width?: number | undefined;
|
|
201
204
|
color?: string | undefined;
|
|
205
|
+
radius?: number | undefined;
|
|
202
206
|
} | undefined;
|
|
203
207
|
filters?: {
|
|
204
208
|
blur?: string | undefined;
|
|
@@ -258,6 +262,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
258
262
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
259
263
|
width?: number | undefined;
|
|
260
264
|
color?: string | undefined;
|
|
265
|
+
radius?: number | undefined;
|
|
261
266
|
} | undefined;
|
|
262
267
|
opacity?: number | undefined;
|
|
263
268
|
flipH?: boolean | undefined;
|
|
@@ -341,6 +346,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
341
346
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
342
347
|
width?: number | undefined;
|
|
343
348
|
color?: string | undefined;
|
|
349
|
+
radius?: number | undefined;
|
|
344
350
|
} | undefined;
|
|
345
351
|
themeColors: string[];
|
|
346
352
|
textColor?: string | undefined;
|
|
@@ -364,6 +370,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
364
370
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
365
371
|
width?: number | undefined;
|
|
366
372
|
color?: string | undefined;
|
|
373
|
+
radius?: number | undefined;
|
|
367
374
|
};
|
|
368
375
|
theme?: {
|
|
369
376
|
color: string;
|
|
@@ -525,7 +532,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
525
532
|
fontsize: string;
|
|
526
533
|
fontname: string;
|
|
527
534
|
link: string;
|
|
528
|
-
align: "
|
|
535
|
+
align: import("../embed").TextAlign;
|
|
529
536
|
bulletList: boolean;
|
|
530
537
|
orderedList: boolean;
|
|
531
538
|
blockquote: boolean;
|
|
@@ -544,7 +551,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
544
551
|
backcolor?: string | undefined;
|
|
545
552
|
fontsize?: string | undefined;
|
|
546
553
|
fontname?: string | undefined;
|
|
547
|
-
align?: "
|
|
554
|
+
align?: import("../embed").TextAlign | undefined;
|
|
548
555
|
} | null;
|
|
549
556
|
shapeFormatPainter: {
|
|
550
557
|
keep: boolean;
|
|
@@ -561,6 +568,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
561
568
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
562
569
|
width?: number | undefined;
|
|
563
570
|
color?: string | undefined;
|
|
571
|
+
radius?: number | undefined;
|
|
564
572
|
} | undefined;
|
|
565
573
|
opacity?: number | undefined;
|
|
566
574
|
shadow?: {
|
|
@@ -586,10 +594,12 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
586
594
|
placeholderFontSize?: number | undefined;
|
|
587
595
|
placeholderColor?: string | undefined;
|
|
588
596
|
placeholderAlign?: import("../embed").TextAlign | undefined;
|
|
597
|
+
placeholderLayoutHeight?: number | undefined;
|
|
589
598
|
outline?: {
|
|
590
599
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
591
600
|
width?: number | undefined;
|
|
592
601
|
color?: string | undefined;
|
|
602
|
+
radius?: number | undefined;
|
|
593
603
|
} | undefined;
|
|
594
604
|
fill?: string | undefined;
|
|
595
605
|
lineHeight?: number | undefined;
|
|
@@ -628,6 +638,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
628
638
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
629
639
|
width?: number | undefined;
|
|
630
640
|
color?: string | undefined;
|
|
641
|
+
radius?: number | undefined;
|
|
631
642
|
} | undefined;
|
|
632
643
|
filters?: {
|
|
633
644
|
blur?: string | undefined;
|
|
@@ -687,6 +698,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
687
698
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
688
699
|
width?: number | undefined;
|
|
689
700
|
color?: string | undefined;
|
|
701
|
+
radius?: number | undefined;
|
|
690
702
|
} | undefined;
|
|
691
703
|
opacity?: number | undefined;
|
|
692
704
|
flipH?: boolean | undefined;
|
|
@@ -770,6 +782,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
770
782
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
771
783
|
width?: number | undefined;
|
|
772
784
|
color?: string | undefined;
|
|
785
|
+
radius?: number | undefined;
|
|
773
786
|
} | undefined;
|
|
774
787
|
themeColors: string[];
|
|
775
788
|
textColor?: string | undefined;
|
|
@@ -793,6 +806,7 @@ export declare const useMainStore: import("pinia").StoreDefinition<"main", MainS
|
|
|
793
806
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
794
807
|
width?: number | undefined;
|
|
795
808
|
color?: string | undefined;
|
|
809
|
+
radius?: number | undefined;
|
|
796
810
|
};
|
|
797
811
|
theme?: {
|
|
798
812
|
color: string;
|
|
@@ -34,6 +34,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
34
34
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
35
35
|
width?: number | undefined;
|
|
36
36
|
color?: string | undefined;
|
|
37
|
+
radius?: number | undefined;
|
|
37
38
|
};
|
|
38
39
|
shadow: {
|
|
39
40
|
h: number;
|
|
@@ -54,10 +55,12 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
54
55
|
placeholderFontSize?: number | undefined;
|
|
55
56
|
placeholderColor?: string | undefined;
|
|
56
57
|
placeholderAlign?: import("../types/slides").TextAlign | undefined;
|
|
58
|
+
placeholderLayoutHeight?: number | undefined;
|
|
57
59
|
outline?: {
|
|
58
60
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
59
61
|
width?: number | undefined;
|
|
60
62
|
color?: string | undefined;
|
|
63
|
+
radius?: number | undefined;
|
|
61
64
|
} | undefined;
|
|
62
65
|
fill?: string | undefined;
|
|
63
66
|
lineHeight?: number | undefined;
|
|
@@ -96,6 +99,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
96
99
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
97
100
|
width?: number | undefined;
|
|
98
101
|
color?: string | undefined;
|
|
102
|
+
radius?: number | undefined;
|
|
99
103
|
} | undefined;
|
|
100
104
|
filters?: {
|
|
101
105
|
blur?: string | undefined;
|
|
@@ -155,6 +159,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
155
159
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
156
160
|
width?: number | undefined;
|
|
157
161
|
color?: string | undefined;
|
|
162
|
+
radius?: number | undefined;
|
|
158
163
|
} | undefined;
|
|
159
164
|
opacity?: number | undefined;
|
|
160
165
|
flipH?: boolean | undefined;
|
|
@@ -238,6 +243,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
238
243
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
239
244
|
width?: number | undefined;
|
|
240
245
|
color?: string | undefined;
|
|
246
|
+
radius?: number | undefined;
|
|
241
247
|
} | undefined;
|
|
242
248
|
themeColors: string[];
|
|
243
249
|
textColor?: string | undefined;
|
|
@@ -261,6 +267,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
261
267
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
262
268
|
width?: number | undefined;
|
|
263
269
|
color?: string | undefined;
|
|
270
|
+
radius?: number | undefined;
|
|
264
271
|
};
|
|
265
272
|
theme?: {
|
|
266
273
|
color: string;
|
|
@@ -429,10 +436,12 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
429
436
|
placeholderFontSize?: number | undefined;
|
|
430
437
|
placeholderColor?: string | undefined;
|
|
431
438
|
placeholderAlign?: import("../types/slides").TextAlign | undefined;
|
|
439
|
+
placeholderLayoutHeight?: number | undefined;
|
|
432
440
|
outline?: {
|
|
433
441
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
434
442
|
width?: number | undefined;
|
|
435
443
|
color?: string | undefined;
|
|
444
|
+
radius?: number | undefined;
|
|
436
445
|
} | undefined;
|
|
437
446
|
fill?: string | undefined;
|
|
438
447
|
lineHeight?: number | undefined;
|
|
@@ -471,6 +480,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
471
480
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
472
481
|
width?: number | undefined;
|
|
473
482
|
color?: string | undefined;
|
|
483
|
+
radius?: number | undefined;
|
|
474
484
|
} | undefined;
|
|
475
485
|
filters?: {
|
|
476
486
|
blur?: string | undefined;
|
|
@@ -530,6 +540,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
530
540
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
531
541
|
width?: number | undefined;
|
|
532
542
|
color?: string | undefined;
|
|
543
|
+
radius?: number | undefined;
|
|
533
544
|
} | undefined;
|
|
534
545
|
opacity?: number | undefined;
|
|
535
546
|
flipH?: boolean | undefined;
|
|
@@ -613,6 +624,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
613
624
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
614
625
|
width?: number | undefined;
|
|
615
626
|
color?: string | undefined;
|
|
627
|
+
radius?: number | undefined;
|
|
616
628
|
} | undefined;
|
|
617
629
|
themeColors: string[];
|
|
618
630
|
textColor?: string | undefined;
|
|
@@ -636,6 +648,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
636
648
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
637
649
|
width?: number | undefined;
|
|
638
650
|
color?: string | undefined;
|
|
651
|
+
radius?: number | undefined;
|
|
639
652
|
};
|
|
640
653
|
theme?: {
|
|
641
654
|
color: string;
|
|
@@ -795,6 +808,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
795
808
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
796
809
|
width?: number | undefined;
|
|
797
810
|
color?: string | undefined;
|
|
811
|
+
radius?: number | undefined;
|
|
798
812
|
};
|
|
799
813
|
shadow: {
|
|
800
814
|
h: number;
|
|
@@ -815,10 +829,12 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
815
829
|
placeholderFontSize?: number | undefined;
|
|
816
830
|
placeholderColor?: string | undefined;
|
|
817
831
|
placeholderAlign?: import("../types/slides").TextAlign | undefined;
|
|
832
|
+
placeholderLayoutHeight?: number | undefined;
|
|
818
833
|
outline?: {
|
|
819
834
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
820
835
|
width?: number | undefined;
|
|
821
836
|
color?: string | undefined;
|
|
837
|
+
radius?: number | undefined;
|
|
822
838
|
} | undefined;
|
|
823
839
|
fill?: string | undefined;
|
|
824
840
|
lineHeight?: number | undefined;
|
|
@@ -857,6 +873,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
857
873
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
858
874
|
width?: number | undefined;
|
|
859
875
|
color?: string | undefined;
|
|
876
|
+
radius?: number | undefined;
|
|
860
877
|
} | undefined;
|
|
861
878
|
filters?: {
|
|
862
879
|
blur?: string | undefined;
|
|
@@ -916,6 +933,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
916
933
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
917
934
|
width?: number | undefined;
|
|
918
935
|
color?: string | undefined;
|
|
936
|
+
radius?: number | undefined;
|
|
919
937
|
} | undefined;
|
|
920
938
|
opacity?: number | undefined;
|
|
921
939
|
flipH?: boolean | undefined;
|
|
@@ -999,6 +1017,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
999
1017
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
1000
1018
|
width?: number | undefined;
|
|
1001
1019
|
color?: string | undefined;
|
|
1020
|
+
radius?: number | undefined;
|
|
1002
1021
|
} | undefined;
|
|
1003
1022
|
themeColors: string[];
|
|
1004
1023
|
textColor?: string | undefined;
|
|
@@ -1022,6 +1041,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
1022
1041
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
1023
1042
|
width?: number | undefined;
|
|
1024
1043
|
color?: string | undefined;
|
|
1044
|
+
radius?: number | undefined;
|
|
1025
1045
|
};
|
|
1026
1046
|
theme?: {
|
|
1027
1047
|
color: string;
|
|
@@ -1198,6 +1218,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
1198
1218
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
1199
1219
|
width?: number | undefined;
|
|
1200
1220
|
color?: string | undefined;
|
|
1221
|
+
radius?: number | undefined;
|
|
1201
1222
|
};
|
|
1202
1223
|
shadow: {
|
|
1203
1224
|
h: number;
|
|
@@ -1218,10 +1239,12 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
1218
1239
|
placeholderFontSize?: number | undefined;
|
|
1219
1240
|
placeholderColor?: string | undefined;
|
|
1220
1241
|
placeholderAlign?: import("../types/slides").TextAlign | undefined;
|
|
1242
|
+
placeholderLayoutHeight?: number | undefined;
|
|
1221
1243
|
outline?: {
|
|
1222
1244
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
1223
1245
|
width?: number | undefined;
|
|
1224
1246
|
color?: string | undefined;
|
|
1247
|
+
radius?: number | undefined;
|
|
1225
1248
|
} | undefined;
|
|
1226
1249
|
fill?: string | undefined;
|
|
1227
1250
|
lineHeight?: number | undefined;
|
|
@@ -1260,6 +1283,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
1260
1283
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
1261
1284
|
width?: number | undefined;
|
|
1262
1285
|
color?: string | undefined;
|
|
1286
|
+
radius?: number | undefined;
|
|
1263
1287
|
} | undefined;
|
|
1264
1288
|
filters?: {
|
|
1265
1289
|
blur?: string | undefined;
|
|
@@ -1319,6 +1343,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
1319
1343
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
1320
1344
|
width?: number | undefined;
|
|
1321
1345
|
color?: string | undefined;
|
|
1346
|
+
radius?: number | undefined;
|
|
1322
1347
|
} | undefined;
|
|
1323
1348
|
opacity?: number | undefined;
|
|
1324
1349
|
flipH?: boolean | undefined;
|
|
@@ -1402,6 +1427,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
1402
1427
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
1403
1428
|
width?: number | undefined;
|
|
1404
1429
|
color?: string | undefined;
|
|
1430
|
+
radius?: number | undefined;
|
|
1405
1431
|
} | undefined;
|
|
1406
1432
|
themeColors: string[];
|
|
1407
1433
|
textColor?: string | undefined;
|
|
@@ -1425,6 +1451,7 @@ export declare const useSlidesStore: import("pinia").StoreDefinition<"slides", S
|
|
|
1425
1451
|
style?: import("../types/slides").LineStyleType | undefined;
|
|
1426
1452
|
width?: number | undefined;
|
|
1427
1453
|
color?: string | undefined;
|
|
1454
|
+
radius?: number | undefined;
|
|
1428
1455
|
};
|
|
1429
1456
|
theme?: {
|
|
1430
1457
|
color: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ShapePoolItem } from '../configs/shapes';
|
|
2
2
|
import type { LinePoolItem } from '../configs/lines';
|
|
3
|
-
import type { ImageClipDataRange, PPTElementOutline, PPTElementShadow, Gradient } from './slides';
|
|
3
|
+
import type { ImageClipDataRange, PPTElementOutline, PPTElementShadow, Gradient, TextAlign } from './slides';
|
|
4
4
|
export declare enum ElementOrderCommands {
|
|
5
5
|
UP = "up",
|
|
6
6
|
DOWN = "down",
|
|
@@ -99,7 +99,7 @@ export interface TextFormatPainter {
|
|
|
99
99
|
backcolor?: string;
|
|
100
100
|
fontsize?: string;
|
|
101
101
|
fontname?: string;
|
|
102
|
-
align?:
|
|
102
|
+
align?: TextAlign;
|
|
103
103
|
}
|
|
104
104
|
export interface ShapeFormatPainter {
|
|
105
105
|
keep: boolean;
|
|
@@ -77,11 +77,14 @@ export interface PPTElementShadow {
|
|
|
77
77
|
* width?: 边框宽度
|
|
78
78
|
*
|
|
79
79
|
* color?: 边框颜色
|
|
80
|
+
*
|
|
81
|
+
* radius?: 圆角半径(px)
|
|
80
82
|
*/
|
|
81
83
|
export interface PPTElementOutline {
|
|
82
84
|
style?: LineStyleType;
|
|
83
85
|
width?: number;
|
|
84
86
|
color?: string;
|
|
87
|
+
radius?: number;
|
|
85
88
|
}
|
|
86
89
|
export type ElementLinkType = 'web' | 'slide';
|
|
87
90
|
/**
|
|
@@ -178,6 +181,8 @@ export interface PPTTextElement extends PPTBaseElement {
|
|
|
178
181
|
placeholderFontSize?: number;
|
|
179
182
|
placeholderColor?: string;
|
|
180
183
|
placeholderAlign?: TextAlign;
|
|
184
|
+
/** Empty-state layout height; frozen at creation, not updated when content grows. */
|
|
185
|
+
placeholderLayoutHeight?: number;
|
|
181
186
|
outline?: PPTElementOutline;
|
|
182
187
|
fill?: string;
|
|
183
188
|
lineHeight?: number;
|
|
@@ -95,6 +95,7 @@ export declare const rotateRectLikeElement: (element: Exclude<PPTElement, PPTLin
|
|
|
95
95
|
placeholderFontSize?: number;
|
|
96
96
|
placeholderColor?: string;
|
|
97
97
|
placeholderAlign?: import("../types/slides").TextAlign;
|
|
98
|
+
placeholderLayoutHeight?: number;
|
|
98
99
|
outline?: import("../types/slides").PPTElementOutline;
|
|
99
100
|
fill?: string;
|
|
100
101
|
lineHeight?: number;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { LineStyleType, PPTElementOutline } from '../types/slides';
|
|
2
|
+
/** Clamp corner radius to half the shorter box side. */
|
|
3
|
+
export declare const clampOutlineRadius: (radius: number, width: number, height: number) => number;
|
|
4
|
+
export declare const outlineRadiusCss: (radius: number | undefined, width: number, height: number) => string | undefined;
|
|
5
|
+
/** SVG path for a rectangular outline (optionally rounded). */
|
|
6
|
+
export declare const roundedRectOutlinePath: (width: number, height: number, radius?: number) => string;
|
|
7
|
+
/** pptxgenjs `rectRadius` is 0–1 relative to the shorter side. */
|
|
8
|
+
export declare const outlineRadiusToPptxRectRadius: (radius: number, width: number, height: number) => number;
|
|
9
|
+
interface PptxOutlineSource {
|
|
10
|
+
borderColor?: string;
|
|
11
|
+
borderWidth?: number;
|
|
12
|
+
borderType?: LineStyleType;
|
|
13
|
+
shapType?: string;
|
|
14
|
+
keypoints?: Record<string, number>;
|
|
15
|
+
width: number;
|
|
16
|
+
height: number;
|
|
17
|
+
}
|
|
18
|
+
export declare const importOutlineFromPptx: (el: PptxOutlineSource, ratio: number, options?: {
|
|
19
|
+
includeCornerRadius?: boolean;
|
|
20
|
+
}) => PPTElementOutline;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { PPTTextElement, Slide, TextAlignVertical, TextInset } from '../types/slides';
|
|
2
|
+
export interface PlaceholderBoxMetrics {
|
|
3
|
+
placeholderFontSize?: number;
|
|
4
|
+
lineHeight?: number;
|
|
5
|
+
inset?: TextInset;
|
|
6
|
+
/** Lines of placeholder-sized text the box should fit (default 1). */
|
|
7
|
+
lines?: number;
|
|
8
|
+
paragraphSpace?: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Minimum box height from placeholder typography: vertical inset + text lines at
|
|
12
|
+
* placeholderFontSize × lineHeight (+ paragraph gaps between lines).
|
|
13
|
+
*/
|
|
14
|
+
export declare const computePlaceholderMinBoxHeight: (metrics?: PlaceholderBoxMetrics) => number;
|
|
15
|
+
/** Fixed empty-state box height set at placeholder creation (never grows with content). */
|
|
16
|
+
export declare const getPlaceholderBaselineHeight: (el: PPTTextElement) => number;
|
|
17
|
+
export declare const isPlaceholderElement: (el: PPTTextElement) => boolean;
|
|
18
|
+
/** Title placeholder on content slides (slide 2+): left-aligned, vertically centered in the layout box. */
|
|
19
|
+
export declare const isContentSlideTitlePlaceholder: (el: PPTTextElement, slideType?: Slide["type"]) => boolean;
|
|
20
|
+
export interface TextBoxLayout {
|
|
21
|
+
fixedHeight: boolean;
|
|
22
|
+
vAlign: TextAlignVertical;
|
|
23
|
+
/** Flex-column vertical centering without locking box height (content slides title). */
|
|
24
|
+
flexCenterInLayoutBox: boolean;
|
|
25
|
+
}
|
|
26
|
+
export declare const resolveTextBoxLayout: (el: PPTTextElement, slideType?: Slide["type"]) => TextBoxLayout;
|
|
27
|
+
/**
|
|
28
|
+
* Placeholder shrink guard:
|
|
29
|
+
* - With content: allow shrinking to fit text; only block absurdly small heights.
|
|
30
|
+
* - Empty: keep the baseline layout height (do not inherit peak multiline height).
|
|
31
|
+
*/
|
|
32
|
+
export declare const shouldBlockPlaceholderHeightShrink: (el: PPTTextElement, measuredHeight: number, contentEmpty: boolean) => boolean;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EditorView } from 'prosemirror-view';
|
|
2
|
+
export interface PlaceholderStyleOptions {
|
|
3
|
+
fontSize: string;
|
|
4
|
+
align: string;
|
|
5
|
+
color: string;
|
|
6
|
+
fontName?: string;
|
|
7
|
+
}
|
|
8
|
+
/** Apply placeholder typography to the whole doc without selecting all (keeps caret). */
|
|
9
|
+
export declare const applyPlaceholderStyles: (view: EditorView, options: PlaceholderStyleOptions) => void;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Node, NodeType, Mark, MarkType, Schema } from 'prosemirror-model';
|
|
2
2
|
import type { EditorState, Selection } from 'prosemirror-state';
|
|
3
3
|
import type { EditorView } from 'prosemirror-view';
|
|
4
|
+
import type { TextAlign } from '../../types/slides';
|
|
4
5
|
export declare const isList: (node: Node, schema: Schema) => boolean;
|
|
5
6
|
export declare const autoSelectAll: (view: EditorView) => void;
|
|
6
7
|
export declare const addMark: (editorView: EditorView, mark: Mark, selection?: {
|
|
@@ -37,13 +38,12 @@ export declare const getAttrValue: (marks: readonly Mark[], markType: string, at
|
|
|
37
38
|
export declare const isActiveMark: (marks: readonly Mark[], markType: string) => boolean;
|
|
38
39
|
export declare const markActive: (state: EditorState, type: MarkType) => boolean | Mark | undefined;
|
|
39
40
|
export declare const getAttrValueInSelection: (view: EditorView, attr: string) => string;
|
|
40
|
-
type Align = 'left' | 'right' | 'center';
|
|
41
41
|
interface DefaultAttrs {
|
|
42
42
|
color: string;
|
|
43
43
|
backcolor: string;
|
|
44
44
|
fontsize: string;
|
|
45
45
|
fontname: string;
|
|
46
|
-
align:
|
|
46
|
+
align: TextAlign;
|
|
47
47
|
}
|
|
48
48
|
export declare const getTextAttrs: (view: EditorView, attrs?: Partial<DefaultAttrs>) => {
|
|
49
49
|
bold: boolean;
|
|
@@ -58,7 +58,7 @@ export declare const getTextAttrs: (view: EditorView, attrs?: Partial<DefaultAtt
|
|
|
58
58
|
fontsize: string;
|
|
59
59
|
fontname: string;
|
|
60
60
|
link: string;
|
|
61
|
-
align:
|
|
61
|
+
align: TextAlign;
|
|
62
62
|
bulletList: boolean;
|
|
63
63
|
orderedList: boolean;
|
|
64
64
|
blockquote: boolean;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { type PPTElement } from '../../types/slides';
|
|
1
|
+
import { type PPTElement, type Slide } from '../../types/slides';
|
|
2
2
|
type __VLS_Props = {
|
|
3
3
|
elementInfo: PPTElement;
|
|
4
4
|
elementIndex: number;
|
|
5
5
|
animationIndex: number;
|
|
6
|
+
slideType?: Slide['type'];
|
|
6
7
|
turnSlideToId: (id: string) => void;
|
|
7
8
|
manualExitFullscreen: () => void;
|
|
8
9
|
};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { type PPTElement } from '../../../types/slides';
|
|
1
|
+
import { type PPTElement, type Slide } from '../../../types/slides';
|
|
2
2
|
type __VLS_Props = {
|
|
3
3
|
elementInfo: PPTElement;
|
|
4
4
|
elementIndex: number;
|
|
5
|
+
slideType?: Slide['type'];
|
|
5
6
|
};
|
|
6
7
|
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
7
8
|
declare const _default: typeof __VLS_export;
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
+
import { type PlaceholderStyleOptions } from '../../../utils/prosemirror/commands/applyPlaceholderStyles';
|
|
2
|
+
import type { TextAlign } from '../../../types/slides';
|
|
1
3
|
type __VLS_Props = {
|
|
2
4
|
elementId: string;
|
|
3
5
|
defaultColor: string;
|
|
4
6
|
defaultFontName: string;
|
|
7
|
+
defaultFontSize?: string;
|
|
8
|
+
defaultAlign?: TextAlign;
|
|
5
9
|
value: string;
|
|
6
10
|
editable?: boolean;
|
|
7
11
|
autoFocus?: boolean;
|
|
8
12
|
};
|
|
9
13
|
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
|
|
10
14
|
focus: () => void;
|
|
15
|
+
seedPlaceholderStyles: (options: PlaceholderStyleOptions) => void;
|
|
11
16
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
12
17
|
blur: () => any;
|
|
13
18
|
focus: () => any;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { PPTTextElement } from '../../../../types/slides';
|
|
1
|
+
import type { PPTTextElement, Slide } from '../../../../types/slides';
|
|
2
2
|
type __VLS_Props = {
|
|
3
3
|
elementInfo: PPTTextElement;
|
|
4
4
|
target?: string;
|
|
5
|
+
slideType?: Slide['type'];
|
|
5
6
|
};
|
|
6
7
|
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
7
8
|
declare const _default: typeof __VLS_export;
|
|
@@ -4,6 +4,9 @@ declare const _default: (outline: Ref<PPTElementOutline | undefined>) => {
|
|
|
4
4
|
outlineWidth: import("vue").ComputedRef<number>;
|
|
5
5
|
outlineStyle: import("vue").ComputedRef<import("../../../../types/slides").LineStyleType>;
|
|
6
6
|
outlineColor: import("vue").ComputedRef<string>;
|
|
7
|
+
outlineRadius: import("vue").ComputedRef<number>;
|
|
7
8
|
strokeDashArray: import("vue").ComputedRef<string>;
|
|
8
9
|
};
|
|
9
10
|
export default _default;
|
|
11
|
+
export declare const useOutlinePath: (outline: Ref<PPTElementOutline | undefined>, width: Ref<number>, height: Ref<number>) => import("vue").ComputedRef<string>;
|
|
12
|
+
export declare const useOutlineRadiusCss: (outline: Ref<PPTElementOutline | undefined>, width: Ref<number>, height: Ref<number>) => import("vue").ComputedRef<string | undefined>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lofcz/pptist",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.26",
|
|
4
4
|
"description": "PPTist presentation editor embed bundle with a typed agentic bridge.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/embed/pptist-embed.js",
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
"number-precision": "^1.6.0",
|
|
85
85
|
"overlayscrollbars": "^2.16.0",
|
|
86
86
|
"pinia": "^3.0.2",
|
|
87
|
-
"pptxgenjs": "^
|
|
87
|
+
"@lofcz/pptxgenjs": "^4.0.1",
|
|
88
88
|
"pptxtojson": "^2.0.6",
|
|
89
89
|
"prosemirror-commands": "^1.6.0",
|
|
90
90
|
"prosemirror-dropcursor": "^1.8.1",
|
|
@@ -131,5 +131,8 @@
|
|
|
131
131
|
"vite": "^8.0.14",
|
|
132
132
|
"vite-plus": "^0.1.23",
|
|
133
133
|
"vue-tsc": "^3.3.3"
|
|
134
|
+
},
|
|
135
|
+
"allowScripts": {
|
|
136
|
+
"@parcel/watcher@2.5.6": true
|
|
134
137
|
}
|
|
135
138
|
}
|