pptx-react-viewer 4.17.0 → 4.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +36 -0
- package/dist/{AiChatPanel-BVWU7HDV.js → AiChatPanel-4RAGQKFE.js} +28 -28
- package/dist/AiChatPanel-4RAGQKFE.js.br +0 -0
- package/dist/AiChatPanel-4RAGQKFE.js.gz +0 -0
- package/dist/{AiChatPanel-2VX4EF2E.mjs → AiChatPanel-BIS3OYZ2.mjs} +4 -4
- package/dist/AiChatPanel-BIS3OYZ2.mjs.br +0 -0
- package/dist/AiChatPanel-BIS3OYZ2.mjs.gz +0 -0
- package/dist/{Model3DScene-6FW74F37.js → Model3DScene-KJBH5LFE.js} +2 -2
- package/dist/Model3DScene-KJBH5LFE.js.br +0 -0
- package/dist/Model3DScene-KJBH5LFE.js.gz +0 -0
- package/dist/{Model3DScene-PR3MSU7A.mjs → Model3DScene-ZVXXKGMO.mjs} +1 -1
- package/dist/Model3DScene-ZVXXKGMO.mjs.br +0 -0
- package/dist/Model3DScene-ZVXXKGMO.mjs.gz +0 -0
- package/dist/{chunk-QWQADOJZ.js → chunk-2GRLCBMP.js} +1 -9
- package/dist/chunk-2GRLCBMP.js.br +0 -0
- package/dist/chunk-2GRLCBMP.js.gz +0 -0
- package/dist/{chunk-PU6X5LPR.mjs → chunk-5OYCO5WW.mjs} +1 -1
- package/dist/chunk-5OYCO5WW.mjs.br +0 -0
- package/dist/chunk-5OYCO5WW.mjs.gz +0 -0
- package/dist/{chunk-XUT6KCC4.js → chunk-7T64DQTQ.js} +197 -197
- package/dist/chunk-7T64DQTQ.js.br +0 -0
- package/dist/chunk-7T64DQTQ.js.gz +0 -0
- package/dist/{chunk-UN4FCEZI.js → chunk-CJ3GYPF6.js} +3192 -4602
- package/dist/chunk-CJ3GYPF6.js.br +0 -0
- package/dist/chunk-CJ3GYPF6.js.gz +0 -0
- package/dist/{chunk-NMYQ4XT2.mjs → chunk-EDQ436NK.mjs} +5593 -1711
- package/dist/chunk-EDQ436NK.mjs.br +0 -0
- package/dist/chunk-EDQ436NK.mjs.gz +0 -0
- package/dist/{chunk-GLLEZR4U.mjs → chunk-IDZ7S2O3.mjs} +2 -9
- package/dist/chunk-IDZ7S2O3.mjs.br +0 -0
- package/dist/chunk-IDZ7S2O3.mjs.gz +0 -0
- package/dist/{chunk-Y5JCGX5P.mjs → chunk-NWWE7I6R.mjs} +1292 -2702
- package/dist/chunk-NWWE7I6R.mjs.br +0 -0
- package/dist/chunk-NWWE7I6R.mjs.gz +0 -0
- package/dist/{chunk-7KKE5JM3.js → chunk-SJJ4AOLI.js} +831 -831
- package/dist/chunk-SJJ4AOLI.js.br +0 -0
- package/dist/chunk-SJJ4AOLI.js.gz +0 -0
- package/dist/{chunk-AC4V4C43.mjs → chunk-SJJY4B4V.mjs} +5 -5
- package/dist/chunk-SJJY4B4V.mjs.br +0 -0
- package/dist/chunk-SJJY4B4V.mjs.gz +0 -0
- package/dist/{chunk-N5EJL7SU.js → chunk-UWRUG37I.js} +5 -5
- package/dist/chunk-UWRUG37I.js.br +0 -0
- package/dist/chunk-UWRUG37I.js.gz +0 -0
- package/dist/{chunk-CRHNHNQL.mjs → chunk-X5O53JPT.mjs} +2 -2
- package/dist/chunk-X5O53JPT.mjs.br +0 -0
- package/dist/chunk-X5O53JPT.mjs.gz +0 -0
- package/dist/{chunk-A56VH5AT.js → chunk-XZQNOZA6.js} +5621 -1723
- package/dist/chunk-XZQNOZA6.js.br +0 -0
- package/dist/chunk-XZQNOZA6.js.gz +0 -0
- package/dist/i18n/de.cjs +1 -0
- package/dist/i18n/de.cjs.br +0 -0
- package/dist/i18n/de.cjs.gz +0 -0
- package/dist/i18n/de.mjs +1 -0
- package/dist/i18n/de.mjs.br +0 -0
- package/dist/i18n/de.mjs.gz +0 -0
- package/dist/i18n/es.cjs +1 -0
- package/dist/i18n/es.cjs.br +0 -0
- package/dist/i18n/es.cjs.gz +0 -0
- package/dist/i18n/es.mjs +1 -0
- package/dist/i18n/es.mjs.br +0 -0
- package/dist/i18n/es.mjs.gz +0 -0
- package/dist/i18n/fr.cjs +1 -0
- package/dist/i18n/fr.cjs.br +0 -0
- package/dist/i18n/fr.cjs.gz +0 -0
- package/dist/i18n/fr.mjs +1 -0
- package/dist/i18n/fr.mjs.br +0 -0
- package/dist/i18n/fr.mjs.gz +0 -0
- package/dist/i18n/zh-CN.cjs +1 -0
- package/dist/i18n/zh-CN.cjs.br +0 -0
- package/dist/i18n/zh-CN.cjs.gz +0 -0
- package/dist/i18n/zh-CN.mjs +1 -0
- package/dist/i18n/zh-CN.mjs.br +0 -0
- package/dist/i18n/zh-CN.mjs.gz +0 -0
- package/dist/i18n.js +4 -4
- package/dist/i18n.js.br +0 -0
- package/dist/i18n.js.gz +0 -0
- package/dist/i18n.mjs +1 -1
- package/dist/i18n.mjs.br +0 -0
- package/dist/i18n.mjs.gz +0 -0
- package/dist/index.d.ts +436 -1
- package/dist/index.js +63 -63
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/index.mjs +6 -6
- package/dist/index.mjs.br +0 -0
- package/dist/index.mjs.gz +0 -0
- package/dist/internals.d.ts +391 -1
- package/dist/internals.js +105 -105
- package/dist/internals.js.br +0 -0
- package/dist/internals.js.gz +0 -0
- package/dist/internals.mjs +4 -4
- package/dist/internals.mjs.br +0 -0
- package/dist/internals.mjs.gz +0 -0
- package/dist/pptx-viewer.css +1 -1
- package/dist/pptx-viewer.css.br +0 -0
- package/dist/pptx-viewer.css.gz +0 -0
- package/dist/viewer/index.d.ts +436 -1
- package/dist/viewer/index.js +27 -27
- package/dist/viewer/index.js.br +0 -0
- package/dist/viewer/index.js.gz +0 -0
- package/dist/viewer/index.mjs +6 -6
- package/dist/viewer/index.mjs.br +0 -0
- package/dist/viewer/index.mjs.gz +0 -0
- package/package.json +2 -2
- package/dist/AiChatPanel-2VX4EF2E.mjs.br +0 -0
- package/dist/AiChatPanel-2VX4EF2E.mjs.gz +0 -0
- package/dist/AiChatPanel-BVWU7HDV.js.br +0 -0
- package/dist/AiChatPanel-BVWU7HDV.js.gz +0 -0
- package/dist/Model3DScene-6FW74F37.js.br +0 -0
- package/dist/Model3DScene-6FW74F37.js.gz +0 -0
- package/dist/Model3DScene-PR3MSU7A.mjs.br +0 -2
- package/dist/Model3DScene-PR3MSU7A.mjs.gz +0 -0
- package/dist/chunk-7KKE5JM3.js.br +0 -0
- package/dist/chunk-7KKE5JM3.js.gz +0 -0
- package/dist/chunk-A56VH5AT.js.br +0 -0
- package/dist/chunk-A56VH5AT.js.gz +0 -0
- package/dist/chunk-AC4V4C43.mjs.br +0 -0
- package/dist/chunk-AC4V4C43.mjs.gz +0 -0
- package/dist/chunk-CRHNHNQL.mjs.br +0 -0
- package/dist/chunk-CRHNHNQL.mjs.gz +0 -0
- package/dist/chunk-GLLEZR4U.mjs.br +0 -0
- package/dist/chunk-GLLEZR4U.mjs.gz +0 -0
- package/dist/chunk-N5EJL7SU.js.br +0 -0
- package/dist/chunk-N5EJL7SU.js.gz +0 -0
- package/dist/chunk-NMYQ4XT2.mjs.br +0 -0
- package/dist/chunk-NMYQ4XT2.mjs.gz +0 -0
- package/dist/chunk-PU6X5LPR.mjs.br +0 -0
- package/dist/chunk-PU6X5LPR.mjs.gz +0 -0
- package/dist/chunk-QWQADOJZ.js.br +0 -0
- package/dist/chunk-QWQADOJZ.js.gz +0 -0
- package/dist/chunk-UN4FCEZI.js.br +0 -0
- package/dist/chunk-UN4FCEZI.js.gz +0 -0
- package/dist/chunk-XUT6KCC4.js.br +0 -0
- package/dist/chunk-XUT6KCC4.js.gz +0 -0
- package/dist/chunk-Y5JCGX5P.mjs.br +0 -0
- package/dist/chunk-Y5JCGX5P.mjs.gz +0 -0
|
Binary file
|
|
Binary file
|
package/dist/i18n/de.cjs
CHANGED
|
@@ -2646,6 +2646,7 @@ var translations16 = {
|
|
|
2646
2646
|
"pptx.presentation.laserPointer": "Laserpointer",
|
|
2647
2647
|
"pptx.presentation.endOfSlideShow": "Ende der Bildschirmpr\xE4sentation, zum Beenden klicken.",
|
|
2648
2648
|
"pptx.presentation.pointerTools": "Zeigeroptionen",
|
|
2649
|
+
"pptx.presentation.menuLabel": "Bildschirmpr\xE4sentationsmen\xFC",
|
|
2649
2650
|
"pptx.presentation.runProgramNotice": "Diese Pr\xE4sentation m\xF6chte ein Programm ausf\xFChren, das nicht \xFCber den Browser gestartet werden kann: {{target}}",
|
|
2650
2651
|
"pptx.presentation.runProgramCopy": "Kopieren",
|
|
2651
2652
|
"pptx.customShows.title": "Benutzerdefinierte Bildschirmpr\xE4sentationen",
|
package/dist/i18n/de.cjs.br
CHANGED
|
Binary file
|
package/dist/i18n/de.cjs.gz
CHANGED
|
Binary file
|
package/dist/i18n/de.mjs
CHANGED
|
@@ -2620,6 +2620,7 @@ var translations16 = {
|
|
|
2620
2620
|
"pptx.presentation.laserPointer": "Laserpointer",
|
|
2621
2621
|
"pptx.presentation.endOfSlideShow": "Ende der Bildschirmpr\xE4sentation, zum Beenden klicken.",
|
|
2622
2622
|
"pptx.presentation.pointerTools": "Zeigeroptionen",
|
|
2623
|
+
"pptx.presentation.menuLabel": "Bildschirmpr\xE4sentationsmen\xFC",
|
|
2623
2624
|
"pptx.presentation.runProgramNotice": "Diese Pr\xE4sentation m\xF6chte ein Programm ausf\xFChren, das nicht \xFCber den Browser gestartet werden kann: {{target}}",
|
|
2624
2625
|
"pptx.presentation.runProgramCopy": "Kopieren",
|
|
2625
2626
|
"pptx.customShows.title": "Benutzerdefinierte Bildschirmpr\xE4sentationen",
|
package/dist/i18n/de.mjs.br
CHANGED
|
Binary file
|
package/dist/i18n/de.mjs.gz
CHANGED
|
Binary file
|
package/dist/i18n/es.cjs
CHANGED
|
@@ -2646,6 +2646,7 @@ var translations16 = {
|
|
|
2646
2646
|
"pptx.presentation.laserPointer": "Puntero l\xE1ser",
|
|
2647
2647
|
"pptx.presentation.endOfSlideShow": "Fin de la presentaci\xF3n, haga clic para salir.",
|
|
2648
2648
|
"pptx.presentation.pointerTools": "Opciones de puntero",
|
|
2649
|
+
"pptx.presentation.menuLabel": "Men\xFA de la presentaci\xF3n",
|
|
2649
2650
|
"pptx.presentation.runProgramNotice": "Esta presentaci\xF3n quiere ejecutar un programa, que no se puede iniciar desde el navegador: {{target}}",
|
|
2650
2651
|
"pptx.presentation.runProgramCopy": "Copiar",
|
|
2651
2652
|
"pptx.customShows.title": "Presentaciones personalizadas",
|
package/dist/i18n/es.cjs.br
CHANGED
|
Binary file
|
package/dist/i18n/es.cjs.gz
CHANGED
|
Binary file
|
package/dist/i18n/es.mjs
CHANGED
|
@@ -2620,6 +2620,7 @@ var translations16 = {
|
|
|
2620
2620
|
"pptx.presentation.laserPointer": "Puntero l\xE1ser",
|
|
2621
2621
|
"pptx.presentation.endOfSlideShow": "Fin de la presentaci\xF3n, haga clic para salir.",
|
|
2622
2622
|
"pptx.presentation.pointerTools": "Opciones de puntero",
|
|
2623
|
+
"pptx.presentation.menuLabel": "Men\xFA de la presentaci\xF3n",
|
|
2623
2624
|
"pptx.presentation.runProgramNotice": "Esta presentaci\xF3n quiere ejecutar un programa, que no se puede iniciar desde el navegador: {{target}}",
|
|
2624
2625
|
"pptx.presentation.runProgramCopy": "Copiar",
|
|
2625
2626
|
"pptx.customShows.title": "Presentaciones personalizadas",
|
package/dist/i18n/es.mjs.br
CHANGED
|
Binary file
|
package/dist/i18n/es.mjs.gz
CHANGED
|
Binary file
|
package/dist/i18n/fr.cjs
CHANGED
|
@@ -2646,6 +2646,7 @@ var translations16 = {
|
|
|
2646
2646
|
"pptx.presentation.laserPointer": "Pointeur laser",
|
|
2647
2647
|
"pptx.presentation.endOfSlideShow": "Fin du diaporama, cliquez pour quitter.",
|
|
2648
2648
|
"pptx.presentation.pointerTools": "Options du pointeur",
|
|
2649
|
+
"pptx.presentation.menuLabel": "Menu du diaporama",
|
|
2649
2650
|
"pptx.presentation.runProgramNotice": "Cette pr\xE9sentation souhaite ex\xE9cuter un programme, qui ne peut pas \xEAtre lanc\xE9 depuis le navigateur : {{target}}",
|
|
2650
2651
|
"pptx.presentation.runProgramCopy": "Copier",
|
|
2651
2652
|
"pptx.customShows.title": "Diaporamas personnalis\xE9s",
|
package/dist/i18n/fr.cjs.br
CHANGED
|
Binary file
|
package/dist/i18n/fr.cjs.gz
CHANGED
|
Binary file
|
package/dist/i18n/fr.mjs
CHANGED
|
@@ -2620,6 +2620,7 @@ var translations16 = {
|
|
|
2620
2620
|
"pptx.presentation.laserPointer": "Pointeur laser",
|
|
2621
2621
|
"pptx.presentation.endOfSlideShow": "Fin du diaporama, cliquez pour quitter.",
|
|
2622
2622
|
"pptx.presentation.pointerTools": "Options du pointeur",
|
|
2623
|
+
"pptx.presentation.menuLabel": "Menu du diaporama",
|
|
2623
2624
|
"pptx.presentation.runProgramNotice": "Cette pr\xE9sentation souhaite ex\xE9cuter un programme, qui ne peut pas \xEAtre lanc\xE9 depuis le navigateur : {{target}}",
|
|
2624
2625
|
"pptx.presentation.runProgramCopy": "Copier",
|
|
2625
2626
|
"pptx.customShows.title": "Diaporamas personnalis\xE9s",
|
package/dist/i18n/fr.mjs.br
CHANGED
|
Binary file
|
package/dist/i18n/fr.mjs.gz
CHANGED
|
Binary file
|
package/dist/i18n/zh-CN.cjs
CHANGED
|
@@ -2657,6 +2657,7 @@ var translations21 = {
|
|
|
2657
2657
|
"pptx.presentation.laserPointer": "\u6FC0\u5149\u7B14",
|
|
2658
2658
|
"pptx.presentation.endOfSlideShow": "\u5E7B\u706F\u7247\u653E\u6620\u7ED3\u675F\uFF0C\u5355\u51FB\u9000\u51FA\u3002",
|
|
2659
2659
|
"pptx.presentation.pointerTools": "\u6307\u9488\u9009\u9879",
|
|
2660
|
+
"pptx.presentation.menuLabel": "\u653E\u6620\u83DC\u5355",
|
|
2660
2661
|
"pptx.presentation.runProgramNotice": "\u8BE5\u6F14\u793A\u6587\u7A3F\u60F3\u8981\u8FD0\u884C\u4E00\u4E2A\u65E0\u6CD5\u4ECE\u6D4F\u89C8\u5668\u542F\u52A8\u7684\u7A0B\u5E8F\uFF1A{{target}}",
|
|
2661
2662
|
"pptx.presentation.runProgramCopy": "\u590D\u5236",
|
|
2662
2663
|
"pptx.customShows.title": "\u81EA\u5B9A\u4E49\u653E\u6620",
|
package/dist/i18n/zh-CN.cjs.br
CHANGED
|
Binary file
|
package/dist/i18n/zh-CN.cjs.gz
CHANGED
|
Binary file
|
package/dist/i18n/zh-CN.mjs
CHANGED
|
@@ -2631,6 +2631,7 @@ var translations21 = {
|
|
|
2631
2631
|
"pptx.presentation.laserPointer": "\u6FC0\u5149\u7B14",
|
|
2632
2632
|
"pptx.presentation.endOfSlideShow": "\u5E7B\u706F\u7247\u653E\u6620\u7ED3\u675F\uFF0C\u5355\u51FB\u9000\u51FA\u3002",
|
|
2633
2633
|
"pptx.presentation.pointerTools": "\u6307\u9488\u9009\u9879",
|
|
2634
|
+
"pptx.presentation.menuLabel": "\u653E\u6620\u83DC\u5355",
|
|
2634
2635
|
"pptx.presentation.runProgramNotice": "\u8BE5\u6F14\u793A\u6587\u7A3F\u60F3\u8981\u8FD0\u884C\u4E00\u4E2A\u65E0\u6CD5\u4ECE\u6D4F\u89C8\u5668\u542F\u52A8\u7684\u7A0B\u5E8F\uFF1A{{target}}",
|
|
2635
2636
|
"pptx.presentation.runProgramCopy": "\u590D\u5236",
|
|
2636
2637
|
"pptx.customShows.title": "\u81EA\u5B9A\u4E49\u653E\u6620",
|
package/dist/i18n/zh-CN.mjs.br
CHANGED
|
Binary file
|
package/dist/i18n/zh-CN.mjs.gz
CHANGED
|
Binary file
|
package/dist/i18n.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk2GRLCBMP_js = require('./chunk-2GRLCBMP.js');
|
|
4
4
|
require('./chunk-4VNS5WPM.js');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "LOCALE_CATALOG", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunk2GRLCBMP_js.LOCALE_CATALOG; }
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "keyToLabel", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunk2GRLCBMP_js.keyToLabel; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "translationsEn", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunk2GRLCBMP_js.translationsEn; }
|
|
19
19
|
});
|
package/dist/i18n.js.br
CHANGED
|
Binary file
|
package/dist/i18n.js.gz
CHANGED
|
Binary file
|
package/dist/i18n.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { LOCALE_CATALOG, keyToLabel, translationsEn } from './chunk-
|
|
1
|
+
export { LOCALE_CATALOG, keyToLabel, translationsEn } from './chunk-IDZ7S2O3.mjs';
|
|
2
2
|
import './chunk-XGB3TDIC.mjs';
|
package/dist/i18n.mjs.br
CHANGED
|
Binary file
|
package/dist/i18n.mjs.gz
CHANGED
|
Binary file
|
package/dist/index.d.ts
CHANGED
|
@@ -2486,6 +2486,168 @@ declare function presentationBaseName(sourceName: string | null | undefined, fal
|
|
|
2486
2486
|
*/
|
|
2487
2487
|
declare function savedPresentationFileName(sourceName: string | null | undefined, format?: SavedPresentationFormat): string;
|
|
2488
2488
|
//#endregion
|
|
2489
|
+
//#region src/render/presentation-session-types.d.ts
|
|
2490
|
+
interface PresentationSnapshot {
|
|
2491
|
+
slideIndex: number;
|
|
2492
|
+
buildStep: number;
|
|
2493
|
+
sequence: number;
|
|
2494
|
+
blackout: 'none' | 'black' | 'white';
|
|
2495
|
+
paused: boolean;
|
|
2496
|
+
elapsedMs: number;
|
|
2497
|
+
zoom?: PresentationZoomState;
|
|
2498
|
+
pointer?: PresentationPointerState;
|
|
2499
|
+
inkStrokes?: PresentationInkStroke[];
|
|
2500
|
+
/**
|
|
2501
|
+
* Whether ink markup is drawn (PowerPoint's Ctrl+M). Undefined means visible,
|
|
2502
|
+
* so existing snapshots keep showing their ink. Hiding never discards the
|
|
2503
|
+
* strokes, which stay in `inkStrokes` and can be kept on exit.
|
|
2504
|
+
*/
|
|
2505
|
+
inkMarkupVisible?: boolean;
|
|
2506
|
+
caption?: string;
|
|
2507
|
+
subtitlesVisible?: boolean;
|
|
2508
|
+
}
|
|
2509
|
+
interface PresentationZoomState {
|
|
2510
|
+
scale: number;
|
|
2511
|
+
originX: number;
|
|
2512
|
+
originY: number;
|
|
2513
|
+
}
|
|
2514
|
+
type PresentationPointerTool = 'none' | 'laser' | 'pen' | 'highlighter' | 'eraser';
|
|
2515
|
+
interface PresentationPointerState {
|
|
2516
|
+
tool: PresentationPointerTool;
|
|
2517
|
+
x: number;
|
|
2518
|
+
y: number;
|
|
2519
|
+
color: string;
|
|
2520
|
+
}
|
|
2521
|
+
interface PresentationInkPoint {
|
|
2522
|
+
x: number;
|
|
2523
|
+
y: number;
|
|
2524
|
+
}
|
|
2525
|
+
interface PresentationInkStroke {
|
|
2526
|
+
id: string;
|
|
2527
|
+
slideIndex: number;
|
|
2528
|
+
tool: 'pen' | 'highlighter';
|
|
2529
|
+
color: string;
|
|
2530
|
+
width: number;
|
|
2531
|
+
points: PresentationInkPoint[];
|
|
2532
|
+
}
|
|
2533
|
+
//#endregion
|
|
2534
|
+
//#region src/render/presentation-blackboard.d.ts
|
|
2535
|
+
/** Blackout state, as carried by {@link PresentationSnapshot}. */
|
|
2536
|
+
type PresentationBlackout = PresentationSnapshot['blackout'];
|
|
2537
|
+
//#endregion
|
|
2538
|
+
//#region src/render/chrome-controls-state.d.ts
|
|
2539
|
+
type ChromeTranslate = (key: string, params?: Record<string, string | number>) => string;
|
|
2540
|
+
type ReadOnlyBannerPasswordError = 'wrong-password' | 'unsupported-algorithm';
|
|
2541
|
+
interface ReadOnlyBannerViewState {
|
|
2542
|
+
/** `ReadOnlyRecommendation.kind`; mirrored onto the host's `data-kind`. */
|
|
2543
|
+
kind: string | null;
|
|
2544
|
+
/** `ReadOnlyRecommendation.messageKey`, translated by `translate`. */
|
|
2545
|
+
messageKey: string;
|
|
2546
|
+
/** Swap the Edit anyway / Dismiss pair for the inline password form. */
|
|
2547
|
+
passwordPromptOpen?: boolean;
|
|
2548
|
+
passwordError?: ReadOnlyBannerPasswordError | null;
|
|
2549
|
+
/** Disables the form while a submitted password is being checked. */
|
|
2550
|
+
checkingPassword?: boolean;
|
|
2551
|
+
translate?: ChromeTranslate;
|
|
2552
|
+
}
|
|
2553
|
+
interface PasteOptionsViewState {
|
|
2554
|
+
/** Right edge of the pasted element in viewport pixels. */
|
|
2555
|
+
left: number;
|
|
2556
|
+
/** Bottom edge of the pasted element in viewport pixels. */
|
|
2557
|
+
top: number;
|
|
2558
|
+
translate?: ChromeTranslate;
|
|
2559
|
+
}
|
|
2560
|
+
interface CompatToastViewItem {
|
|
2561
|
+
readonly id: string;
|
|
2562
|
+
readonly code: string;
|
|
2563
|
+
readonly severity: 'info' | 'warning';
|
|
2564
|
+
readonly messageKey: string;
|
|
2565
|
+
readonly params?: Readonly<Record<string, string>>;
|
|
2566
|
+
}
|
|
2567
|
+
interface CompatToastsViewState {
|
|
2568
|
+
/** Dismiss-filtered toasts. The element shows the first {@link COMPAT_TOAST_VISIBLE_LIMIT}. */
|
|
2569
|
+
toasts: readonly CompatToastViewItem[];
|
|
2570
|
+
/** Extra toasts a host already trimmed off the list it passes. */
|
|
2571
|
+
overflowCount?: number;
|
|
2572
|
+
/** Width of the open right-docked panel (see `compatToastStackStyle`). */
|
|
2573
|
+
rightInset?: number;
|
|
2574
|
+
/** Live height of the docked notes strip (see `compatToastStackStyle`). */
|
|
2575
|
+
bottomInset?: number;
|
|
2576
|
+
translate?: ChromeTranslate;
|
|
2577
|
+
}
|
|
2578
|
+
type DialogFooterVariant = 'secondary' | 'primary' | 'warning';
|
|
2579
|
+
type DialogFooterIcon = 'trash' | 'pen' | 'restore' | 'print' | 'check';
|
|
2580
|
+
interface DialogFooterAction {
|
|
2581
|
+
/** Stable id echoed back in the `dialog-footer-request` intent. */
|
|
2582
|
+
id: string;
|
|
2583
|
+
/** Already-translated visible label and accessible name. */
|
|
2584
|
+
label: string;
|
|
2585
|
+
variant?: DialogFooterVariant;
|
|
2586
|
+
icon?: DialogFooterIcon;
|
|
2587
|
+
disabled?: boolean;
|
|
2588
|
+
/** Optional `data-testid` stamped on the button. */
|
|
2589
|
+
testId?: string;
|
|
2590
|
+
}
|
|
2591
|
+
interface DialogFooterViewState {
|
|
2592
|
+
actions: readonly DialogFooterAction[];
|
|
2593
|
+
}
|
|
2594
|
+
type MobileBarId = 'slides' | 'insert' | 'inspector' | 'comments' | 'notes';
|
|
2595
|
+
interface MobileBarViewState {
|
|
2596
|
+
/** Every button disables at 0 (see `buildBarActions`). */
|
|
2597
|
+
slideCount: number;
|
|
2598
|
+
/** The button whose sheet is open; reflected as `aria-pressed` and a top pill. */
|
|
2599
|
+
activeSheet?: MobileBarId | null;
|
|
2600
|
+
/** Comment count on the badge of Comments (`99+` above 99). */
|
|
2601
|
+
commentCount?: number;
|
|
2602
|
+
/** Buttons dropped entirely, such as Notes when `hiddenActions` hides it. */
|
|
2603
|
+
hidden?: readonly MobileBarId[];
|
|
2604
|
+
/** Buttons disabled beyond the no-slides rule, such as edit-only ones in view mode. */
|
|
2605
|
+
disabled?: readonly MobileBarId[];
|
|
2606
|
+
translate?: ChromeTranslate;
|
|
2607
|
+
}
|
|
2608
|
+
type MobileToolbarId = 'menu' | 'undo' | 'redo' | 'ai' | 'save' | 'present' | 'share';
|
|
2609
|
+
interface MobileToolbarViewState {
|
|
2610
|
+
/** Menu, Undo, Redo, AI and Share only show while editing. */
|
|
2611
|
+
editable: boolean;
|
|
2612
|
+
canUndo: boolean;
|
|
2613
|
+
canRedo: boolean;
|
|
2614
|
+
/** Host opted into the AI assistant; the element draws its toggle. */
|
|
2615
|
+
aiVisible?: boolean;
|
|
2616
|
+
aiActive?: boolean;
|
|
2617
|
+
/** Reflected as `aria-expanded` on Menu when given. */
|
|
2618
|
+
menuOpen?: boolean;
|
|
2619
|
+
/** Buttons dropped entirely (`hiddenActions`, or Share when the host has none). */
|
|
2620
|
+
hidden?: readonly MobileToolbarId[];
|
|
2621
|
+
/** Buttons disabled, such as Present while there is nothing to present. */
|
|
2622
|
+
disabled?: readonly MobileToolbarId[];
|
|
2623
|
+
translate?: ChromeTranslate;
|
|
2624
|
+
}
|
|
2625
|
+
interface PresentToolbarViewState {
|
|
2626
|
+
/** Zero-based slide on screen. */
|
|
2627
|
+
current: number;
|
|
2628
|
+
total: number;
|
|
2629
|
+
/** The armed annotation tool; `none` leaves every tool unpressed. */
|
|
2630
|
+
tool: PresentationPointerTool;
|
|
2631
|
+
penColor: string;
|
|
2632
|
+
highlighterColor: string;
|
|
2633
|
+
hasAnnotations: boolean;
|
|
2634
|
+
/** With the pen, marks the Blackboard toggle active (`isBlackboardActive`). */
|
|
2635
|
+
blackout: PresentationBlackout;
|
|
2636
|
+
/** Show the presenter-view toggle (default false). */
|
|
2637
|
+
presenterViewVisible?: boolean;
|
|
2638
|
+
presenterViewActive?: boolean;
|
|
2639
|
+
/** Epoch ms the show started. The element ticks the readout; null shows 00:00. */
|
|
2640
|
+
startTime: number | null;
|
|
2641
|
+
translate?: ChromeTranslate;
|
|
2642
|
+
}
|
|
2643
|
+
interface PresenterConsoleViewState {
|
|
2644
|
+
/** Ids of toggles that read as on (and the resume / close-window variants). */
|
|
2645
|
+
active: readonly string[];
|
|
2646
|
+
/** Ids of controls that are disabled. */
|
|
2647
|
+
disabled: readonly string[];
|
|
2648
|
+
translate?: ChromeTranslate;
|
|
2649
|
+
}
|
|
2650
|
+
//#endregion
|
|
2489
2651
|
//#region src/render/insert-chart.d.ts
|
|
2490
2652
|
/**
|
|
2491
2653
|
* Dropdown ids for the insert-chart menu. Distinct from `PptxChartType`
|
|
@@ -2550,6 +2712,24 @@ interface ZoomNavigationTarget {
|
|
|
2550
2712
|
returnToParent: boolean;
|
|
2551
2713
|
transitionDurationMs?: number;
|
|
2552
2714
|
}
|
|
2715
|
+
//#endregion
|
|
2716
|
+
//#region src/render/command-search.d.ts
|
|
2717
|
+
/**
|
|
2718
|
+
* Command-search data for the PowerPoint-style "Tell me what you want to do"
|
|
2719
|
+
* search bar. Provides searchable command entries grouped by category, each
|
|
2720
|
+
* mapping a label translation key to a command identifier that bindings can
|
|
2721
|
+
* dispatch.
|
|
2722
|
+
*/
|
|
2723
|
+
interface CommandSearchEntry {
|
|
2724
|
+
/** Translation key for the display label. */
|
|
2725
|
+
labelKey: string;
|
|
2726
|
+
/** Command identifier dispatched to the host binding. */
|
|
2727
|
+
command: string;
|
|
2728
|
+
/** Optional icon hint (binding resolves to framework icon component). */
|
|
2729
|
+
icon?: string;
|
|
2730
|
+
/** Category grouping key; hosts with their own short list may omit it. */
|
|
2731
|
+
category?: 'format' | 'insert' | 'view' | 'slideShow' | 'design' | 'arrange';
|
|
2732
|
+
}
|
|
2553
2733
|
interface SubtitleSettings {
|
|
2554
2734
|
spokenLanguage: string;
|
|
2555
2735
|
}
|
|
@@ -2756,11 +2936,15 @@ interface RibbonHomeControlState {
|
|
|
2756
2936
|
disabled?: boolean;
|
|
2757
2937
|
/** Omit for ordinary commands; a boolean reflects `aria-pressed`. */
|
|
2758
2938
|
pressed?: boolean;
|
|
2939
|
+
/** Popover triggers only: reflects `aria-expanded` while the native popover is open. */
|
|
2940
|
+
expanded?: boolean;
|
|
2759
2941
|
hidden?: boolean;
|
|
2760
2942
|
}
|
|
2943
|
+
/** State key of a control: its id, or `id#part` when several buttons share one id. */
|
|
2944
|
+
type RibbonHomeKey = RibbonControlId | `${RibbonControlId}#${string}`;
|
|
2761
2945
|
interface RibbonHomeViewState {
|
|
2762
2946
|
/** Missing entries are enabled, unpressed and visible. */
|
|
2763
|
-
controls: Readonly<Partial<Record<
|
|
2947
|
+
controls: Readonly<Partial<Record<RibbonHomeKey, RibbonHomeControlState>>>;
|
|
2764
2948
|
translate?: (key: string) => string;
|
|
2765
2949
|
}
|
|
2766
2950
|
/** Controlled View tab state. Native viewers own the values and every side effect. */
|
|
@@ -2793,6 +2977,113 @@ interface RibbonTransitionsViewState {
|
|
|
2793
2977
|
translate?: RibbonTransitionsTranslate;
|
|
2794
2978
|
}
|
|
2795
2979
|
//#endregion
|
|
2980
|
+
//#region src/render/status-bar-state.d.ts
|
|
2981
|
+
/**
|
|
2982
|
+
* Shared model for the bottom status bar (`pptx-ui-status-bar`).
|
|
2983
|
+
*
|
|
2984
|
+
* The slide counter, save indicator, notes toggle, view-mode buttons and zoom
|
|
2985
|
+
* cluster were hand-built five times. The view owns the markup, pressed state
|
|
2986
|
+
* and gating; hosts own every effect (notes panel, view switching, zoom).
|
|
2987
|
+
*/
|
|
2988
|
+
type StatusBarTranslate = (key: string, params?: Record<string, string | number>) => string;
|
|
2989
|
+
type StatusBarSaveKind = 'idle' | 'saving' | 'error';
|
|
2990
|
+
type StatusBarViewMode = 'normal' | 'sorter' | 'slideShow';
|
|
2991
|
+
interface StatusBarViewState {
|
|
2992
|
+
slideCount: number;
|
|
2993
|
+
/** Zero-based active slide; clamped into range for display. */
|
|
2994
|
+
activeSlideIndex: number;
|
|
2995
|
+
/** Already-translated save indicator, see {@link resolveStatusBarSave}. */
|
|
2996
|
+
saveText: string;
|
|
2997
|
+
saveKind?: StatusBarSaveKind;
|
|
2998
|
+
/** Omit to hide the whole zoom cluster. */
|
|
2999
|
+
zoomPercent?: number;
|
|
3000
|
+
showNotes?: boolean;
|
|
3001
|
+
notesExpanded?: boolean;
|
|
3002
|
+
/** Default true. False drops the Normal / Sorter / Slide Show cluster. */
|
|
3003
|
+
showViewModes?: boolean;
|
|
3004
|
+
/** Default true. */
|
|
3005
|
+
showSorter?: boolean;
|
|
3006
|
+
/** Default true. */
|
|
3007
|
+
showSlideShow?: boolean;
|
|
3008
|
+
/** The pressed view button; omit when none is active. */
|
|
3009
|
+
viewMode?: StatusBarViewMode;
|
|
3010
|
+
translate?: StatusBarTranslate;
|
|
3011
|
+
}
|
|
3012
|
+
//#endregion
|
|
3013
|
+
//#region src/render/notes-toolbar-state.d.ts
|
|
3014
|
+
/**
|
|
3015
|
+
* Shared model for the speaker-notes formatting toolbar (`pptx-ui-notes-toolbar`).
|
|
3016
|
+
*
|
|
3017
|
+
* The toolbar owns the buttons, their order, icons, labels, enabled state and
|
|
3018
|
+
* the hyperlink popover. Hosts own the contenteditable editor, selection-based
|
|
3019
|
+
* edits, history, printing and persistence, and route typed intents to them.
|
|
3020
|
+
*/
|
|
3021
|
+
type NotesToolbarTranslate = (key: string, params?: Record<string, string | number>) => string;
|
|
3022
|
+
interface NotesToolbarViewState {
|
|
3023
|
+
/** True while the rich (contenteditable) surface is active. Drives the mode button label. */
|
|
3024
|
+
rich: boolean;
|
|
3025
|
+
/** Enables the formatting buttons. False in the plain editor, where they cannot act. */
|
|
3026
|
+
canFormat: boolean;
|
|
3027
|
+
/** Shows the Print button. */
|
|
3028
|
+
showPrint: boolean;
|
|
3029
|
+
/** Disables every button, for example while no slide is selected. */
|
|
3030
|
+
disabled?: boolean;
|
|
3031
|
+
/** Host translator; keys are the canonical `pptx.notes.*` set. Omitted: keys are shown. */
|
|
3032
|
+
translate?: NotesToolbarTranslate;
|
|
3033
|
+
}
|
|
3034
|
+
//#endregion
|
|
3035
|
+
//#region src/render/title-bar-state.d.ts
|
|
3036
|
+
type TitleBarTranslate = (key: string, params?: Record<string, string | number>) => string;
|
|
3037
|
+
type TitleBarPlacement = 'titleBar' | 'belowRibbon';
|
|
3038
|
+
type TitleBarTone = 'idle' | 'saving' | 'error';
|
|
3039
|
+
interface TitleBarAutosaveView {
|
|
3040
|
+
enabled: boolean;
|
|
3041
|
+
/** Default true. False renders the switch inert (host policy `autosave: false`). */
|
|
3042
|
+
toggleAvailable?: boolean;
|
|
3043
|
+
/** Translation key from `resolveTitleBarStatusKey`. */
|
|
3044
|
+
statusKey: string;
|
|
3045
|
+
/** Colour of the status text; only meaningful while `enabled`. */
|
|
3046
|
+
tone?: TitleBarTone;
|
|
3047
|
+
}
|
|
3048
|
+
interface TitleBarHistoryState {
|
|
3049
|
+
canUndo: boolean;
|
|
3050
|
+
canRedo: boolean;
|
|
3051
|
+
/** Description of the pending action, e.g. "Delete shape". */
|
|
3052
|
+
undoLabel?: string | null;
|
|
3053
|
+
redoLabel?: string | null;
|
|
3054
|
+
/** Default true. Maps to `hiddenActions: ['undo']`. */
|
|
3055
|
+
showUndo?: boolean;
|
|
3056
|
+
/** Default true. Maps to `hiddenActions: ['redo']`. */
|
|
3057
|
+
showRedo?: boolean;
|
|
3058
|
+
}
|
|
3059
|
+
interface TitleBarQuickAccessView {
|
|
3060
|
+
visible: boolean;
|
|
3061
|
+
position: QuickAccessPosition;
|
|
3062
|
+
showCommandLabels: boolean;
|
|
3063
|
+
/** Ordered catalog ids (File > Options > Quick Access Toolbar). */
|
|
3064
|
+
commandIds: readonly string[];
|
|
3065
|
+
}
|
|
3066
|
+
interface TitleBarViewState {
|
|
3067
|
+
/** Edit mode with an editable deck. Gates AutoSave, the strip, status and search. */
|
|
3068
|
+
editing: boolean;
|
|
3069
|
+
/** Whether the command search shows; hosts pass `editing`. */
|
|
3070
|
+
searchVisible: boolean;
|
|
3071
|
+
/** Display name; the translated default shows when empty. */
|
|
3072
|
+
fileName?: string;
|
|
3073
|
+
autosave: TitleBarAutosaveView;
|
|
3074
|
+
history: TitleBarHistoryState;
|
|
3075
|
+
/** Default true. */
|
|
3076
|
+
showSave?: boolean;
|
|
3077
|
+
quickAccess: TitleBarQuickAccessView;
|
|
3078
|
+
/** Search catalogue; defaults to the shared `COMMAND_SEARCH_ENTRIES`. */
|
|
3079
|
+
commands?: readonly CommandSearchEntry[];
|
|
3080
|
+
/** Default true. False drops the "Find in Slides" fallback row. */
|
|
3081
|
+
contentSearch?: boolean;
|
|
3082
|
+
/** ScreenTip rule (Options > General); returning undefined suppresses the title. */
|
|
3083
|
+
screenTip?: (label: string) => string | undefined;
|
|
3084
|
+
translate?: TitleBarTranslate;
|
|
3085
|
+
}
|
|
3086
|
+
//#endregion
|
|
2796
3087
|
//#region src/web-components/theme-editor.d.ts
|
|
2797
3088
|
interface PptxUiThemeEditorElement extends HTMLElement {
|
|
2798
3089
|
theme: PptxTheme | undefined;
|
|
@@ -2804,6 +3095,74 @@ declare global {
|
|
|
2804
3095
|
'pptx-ui-theme-editor': PptxUiThemeEditorElement;
|
|
2805
3096
|
}
|
|
2806
3097
|
}
|
|
3098
|
+
interface PptxUiCompatToastsElement extends HTMLElement {
|
|
3099
|
+
state: CompatToastsViewState;
|
|
3100
|
+
}
|
|
3101
|
+
declare global {
|
|
3102
|
+
interface HTMLElementTagNameMap {
|
|
3103
|
+
'pptx-ui-compat-toasts': PptxUiCompatToastsElement;
|
|
3104
|
+
}
|
|
3105
|
+
}
|
|
3106
|
+
interface PptxUiDialogFooterElement extends HTMLElement {
|
|
3107
|
+
state: DialogFooterViewState;
|
|
3108
|
+
/** Move keyboard focus to an action, e.g. the primary one when a dialog opens. */
|
|
3109
|
+
focusAction(id: string): void;
|
|
3110
|
+
}
|
|
3111
|
+
declare global {
|
|
3112
|
+
interface HTMLElementTagNameMap {
|
|
3113
|
+
'pptx-ui-dialog-footer': PptxUiDialogFooterElement;
|
|
3114
|
+
}
|
|
3115
|
+
}
|
|
3116
|
+
interface PptxUiMobileBarElement extends HTMLElement {
|
|
3117
|
+
state: MobileBarViewState;
|
|
3118
|
+
}
|
|
3119
|
+
declare global {
|
|
3120
|
+
interface HTMLElementTagNameMap {
|
|
3121
|
+
'pptx-ui-mobile-bar': PptxUiMobileBarElement;
|
|
3122
|
+
}
|
|
3123
|
+
}
|
|
3124
|
+
interface PptxUiMobileToolbarElement extends HTMLElement {
|
|
3125
|
+
state: MobileToolbarViewState;
|
|
3126
|
+
}
|
|
3127
|
+
declare global {
|
|
3128
|
+
interface HTMLElementTagNameMap {
|
|
3129
|
+
'pptx-ui-mobile-toolbar': PptxUiMobileToolbarElement;
|
|
3130
|
+
}
|
|
3131
|
+
}
|
|
3132
|
+
interface PptxUiPasteOptionsElement extends HTMLElement {
|
|
3133
|
+
state: PasteOptionsViewState;
|
|
3134
|
+
}
|
|
3135
|
+
declare global {
|
|
3136
|
+
interface HTMLElementTagNameMap {
|
|
3137
|
+
'pptx-ui-paste-options': PptxUiPasteOptionsElement;
|
|
3138
|
+
}
|
|
3139
|
+
}
|
|
3140
|
+
interface PptxUiPresentToolbarElement extends HTMLElement {
|
|
3141
|
+
state: PresentToolbarViewState;
|
|
3142
|
+
/** Close an open colour palette, e.g. when the host auto-hides the bar. */
|
|
3143
|
+
closePalettes(): void;
|
|
3144
|
+
}
|
|
3145
|
+
declare global {
|
|
3146
|
+
interface HTMLElementTagNameMap {
|
|
3147
|
+
'pptx-ui-present-toolbar': PptxUiPresentToolbarElement;
|
|
3148
|
+
}
|
|
3149
|
+
}
|
|
3150
|
+
interface PptxUiPresenterConsoleElement extends HTMLElement {
|
|
3151
|
+
state: PresenterConsoleViewState;
|
|
3152
|
+
}
|
|
3153
|
+
declare global {
|
|
3154
|
+
interface HTMLElementTagNameMap {
|
|
3155
|
+
'pptx-ui-presenter-console': PptxUiPresenterConsoleElement;
|
|
3156
|
+
}
|
|
3157
|
+
}
|
|
3158
|
+
interface PptxUiReadOnlyBannerElement extends HTMLElement {
|
|
3159
|
+
state: ReadOnlyBannerViewState;
|
|
3160
|
+
}
|
|
3161
|
+
declare global {
|
|
3162
|
+
interface HTMLElementTagNameMap {
|
|
3163
|
+
'pptx-ui-read-only-banner': PptxUiReadOnlyBannerElement;
|
|
3164
|
+
}
|
|
3165
|
+
}
|
|
2807
3166
|
interface PptxUiRibbonAnimationsElement extends HTMLElement {
|
|
2808
3167
|
state: RibbonAnimationsViewState;
|
|
2809
3168
|
}
|
|
@@ -2822,6 +3181,8 @@ declare global {
|
|
|
2822
3181
|
}
|
|
2823
3182
|
interface PptxUiRibbonHomeElement extends HTMLElement {
|
|
2824
3183
|
state: RibbonHomeViewState;
|
|
3184
|
+
/** Wrapper (or button) of a control id, where a host mounts or anchors its native popover. */
|
|
3185
|
+
anchor(id: string): HTMLElement | undefined;
|
|
2825
3186
|
}
|
|
2826
3187
|
declare global {
|
|
2827
3188
|
interface HTMLElementTagNameMap {
|
|
@@ -2829,6 +3190,12 @@ declare global {
|
|
|
2829
3190
|
'pptx-ui-ribbon-home-font': PptxUiRibbonHomeElement;
|
|
2830
3191
|
'pptx-ui-ribbon-home-paragraph': PptxUiRibbonHomeElement;
|
|
2831
3192
|
'pptx-ui-ribbon-home-editing': PptxUiRibbonHomeElement;
|
|
3193
|
+
'pptx-ui-ribbon-home-slides': PptxUiRibbonHomeElement;
|
|
3194
|
+
'pptx-ui-ribbon-home-drawing': PptxUiRibbonHomeElement;
|
|
3195
|
+
'pptx-ui-ribbon-home-arrange-align': PptxUiRibbonHomeElement;
|
|
3196
|
+
'pptx-ui-ribbon-home-arrange-flip': PptxUiRibbonHomeElement;
|
|
3197
|
+
'pptx-ui-ribbon-home-arrange-order': PptxUiRibbonHomeElement;
|
|
3198
|
+
'pptx-ui-ribbon-home-arrange-edit': PptxUiRibbonHomeElement;
|
|
2832
3199
|
}
|
|
2833
3200
|
}
|
|
2834
3201
|
interface PptxUiRibbonTransitionsElement extends HTMLElement {
|
|
@@ -2896,6 +3263,74 @@ declare global {
|
|
|
2896
3263
|
'pptx-ui-subtitle-settings': PptxUiSubtitleSettingsElement;
|
|
2897
3264
|
}
|
|
2898
3265
|
}
|
|
3266
|
+
interface PptxUiStatusBarElement extends HTMLElement {
|
|
3267
|
+
state: StatusBarViewState;
|
|
3268
|
+
}
|
|
3269
|
+
declare global {
|
|
3270
|
+
interface HTMLElementTagNameMap {
|
|
3271
|
+
'pptx-ui-status-bar': PptxUiStatusBarElement;
|
|
3272
|
+
}
|
|
3273
|
+
}
|
|
3274
|
+
interface PptxUiNotesToolbarElement extends HTMLElement {
|
|
3275
|
+
state: NotesToolbarViewState;
|
|
3276
|
+
}
|
|
3277
|
+
declare global {
|
|
3278
|
+
interface HTMLElementTagNameMap {
|
|
3279
|
+
'pptx-ui-notes-toolbar': PptxUiNotesToolbarElement;
|
|
3280
|
+
}
|
|
3281
|
+
}
|
|
3282
|
+
interface PptxUiTitleBarElement extends HTMLElement {
|
|
3283
|
+
state: TitleBarViewState | undefined;
|
|
3284
|
+
placement: TitleBarPlacement;
|
|
3285
|
+
}
|
|
3286
|
+
declare global {
|
|
3287
|
+
interface HTMLElementTagNameMap {
|
|
3288
|
+
'pptx-ui-title-bar': PptxUiTitleBarElement;
|
|
3289
|
+
}
|
|
3290
|
+
}
|
|
3291
|
+
/** One row of a context menu. Hosts decide `id`, wording, gating and what activation does. */
|
|
3292
|
+
interface ContextMenuViewItem {
|
|
3293
|
+
/** Stable command id, echoed by `menu-request`. */
|
|
3294
|
+
id: string;
|
|
3295
|
+
/** Already-translated visible label. */
|
|
3296
|
+
label: string;
|
|
3297
|
+
/** Draw a rule before this row. */
|
|
3298
|
+
separatorBefore?: boolean;
|
|
3299
|
+
/** Group heading shown before this row; the row and the ones after it join that group. */
|
|
3300
|
+
heading?: string;
|
|
3301
|
+
/** Destructive command (Delete): tinted. */
|
|
3302
|
+
danger?: boolean;
|
|
3303
|
+
/** Offered but unavailable: announced and drawn dim, skipped by arrow keys. */
|
|
3304
|
+
disabled?: boolean;
|
|
3305
|
+
/** A toggle (Grid and Guides, Ruler) in this state; omitted for one-shot commands. */
|
|
3306
|
+
checked?: boolean;
|
|
3307
|
+
}
|
|
3308
|
+
/** Everything the controlled element needs to draw one menu. */
|
|
3309
|
+
interface ContextMenuViewState {
|
|
3310
|
+
/** Pointer position, in viewport pixels. The element clamps it into the window. */
|
|
3311
|
+
x: number;
|
|
3312
|
+
y: number;
|
|
3313
|
+
/** Accessible name of the menu. */
|
|
3314
|
+
label: string;
|
|
3315
|
+
items: readonly ContextMenuViewItem[];
|
|
3316
|
+
/**
|
|
3317
|
+
* Test-hook attributes copied onto the host element (`data-pptx-context-menu`,
|
|
3318
|
+
* `data-pptx-canvas-context-menu`, ...). Only `data-pptx-*` names are accepted.
|
|
3319
|
+
*/
|
|
3320
|
+
markers?: readonly string[];
|
|
3321
|
+
/** Stacking order; defaults to {@link CONTEXT_MENU_EDITOR_LAYER}. */
|
|
3322
|
+
zIndex?: number;
|
|
3323
|
+
/** Move focus onto the first command on open. Default true. */
|
|
3324
|
+
autoFocus?: boolean;
|
|
3325
|
+
}
|
|
3326
|
+
interface PptxUiContextMenuElement extends HTMLElement {
|
|
3327
|
+
state: ContextMenuViewState;
|
|
3328
|
+
}
|
|
3329
|
+
declare global {
|
|
3330
|
+
interface HTMLElementTagNameMap {
|
|
3331
|
+
'pptx-ui-context-menu': PptxUiContextMenuElement;
|
|
3332
|
+
}
|
|
3333
|
+
}
|
|
2899
3334
|
//#endregion
|
|
2900
3335
|
//#region src/web-components/select-value.d.ts
|
|
2901
3336
|
/** Public DOM shape used by all bindings; the element is not a native select. */
|