textmode.export.js 1.8.0-beta.1 → 1.8.0-beta.3

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.
@@ -2,7 +2,7 @@
2
2
  * TypeScript augmentation for `textmode.export.js`.
3
3
  */
4
4
  import type { TextmodeExportAPI } from '../types';
5
- declare module 'textmode.js' {
6
- interface Textmodifier extends TextmodeExportAPI {
5
+ declare module 'textmode.js/addon' {
6
+ interface TextmodifierExtensions extends TextmodeExportAPI {
7
7
  }
8
8
  }
@@ -22,6 +22,5 @@ export declare class VideoExporter {
22
22
  private _hardwareAcceleration;
23
23
  private _keyFrameInterval;
24
24
  private _currentPixelDensity;
25
- private _filePicker;
26
25
  private _withExtension;
27
26
  }
@@ -5,6 +5,5 @@ export declare class VideoExportError extends Error {
5
5
  constructor(code: VideoExportErrorCode, message: string, cause?: unknown);
6
6
  }
7
7
  export declare function createAbortError(): VideoExportError;
8
- export declare function normalizeFilePickerError(error: unknown): VideoExportError | undefined;
9
8
  export declare function createTimeoutError(message: string, cause?: unknown): VideoExportError;
10
9
  export declare function isAbortError(error: unknown): boolean;
@@ -0,0 +1,24 @@
1
+ import type { Textmodifier } from 'textmode.js';
2
+ import type { TextmodeExportAPI } from '../types';
3
+ export declare const EXPORT_API_METHOD_KEYS: ReadonlyArray<Exclude<keyof TextmodeExportAPI, 'exportOverlay'>>;
4
+ type PostDrawSubscription = (callback: () => void) => () => void;
5
+ /**
6
+ * Deep export implementation for one installed plugin instance.
7
+ *
8
+ * The host adapter registers this controller's API as extensions. The controller owns
9
+ * DOM resources, post-draw subscriptions, and abort controllers for asynchronous capture.
10
+ */
11
+ export declare class TextmodeExportController {
12
+ readonly api: TextmodeExportAPI;
13
+ private readonly _registerPostDrawHook;
14
+ private readonly _activeOperations;
15
+ private readonly _overlayController;
16
+ private readonly _stopOverlayRefresh;
17
+ private _disposed;
18
+ constructor(textmodifier: Textmodifier, registerPostDrawHook: PostDrawSubscription);
19
+ dispose(): void;
20
+ private _createOverlayAPI;
21
+ private _runOperation;
22
+ private _assertLive;
23
+ }
24
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "textmode.export.js",
3
- "version": "1.8.0-beta.1",
3
+ "version": "1.8.0-beta.3",
4
4
  "description": "Export plugin for textmode.js - Save your creations as images, GIFs, videos, SVG, JSON, and plain text.",
5
5
  "type": "module",
6
6
  "devEngines": {
@@ -33,6 +33,8 @@
33
33
  "dist"
34
34
  ],
35
35
  "scripts": {
36
+ "prebuild": "npm run clean",
37
+ "clean": "rm -rf dist",
36
38
  "dev": "textmode-build dev --port 5174 --host",
37
39
  "build:bundle": "textmode-build build",
38
40
  "build:types": "textmode-types build",
@@ -58,7 +60,7 @@
58
60
  "release": "textmode-release release"
59
61
  },
60
62
  "peerDependencies": {
61
- "textmode.js": "^0.17.2"
63
+ "textmode.js": "^0.18.0-beta.3"
62
64
  },
63
65
  "dependencies": {
64
66
  "gifenc": "^1.0.1",
@@ -69,9 +71,9 @@
69
71
  "@textmode/docs": "^0.3.0",
70
72
  "@textmode/lint": "^0.1.0",
71
73
  "@textmode/release": "^0.2.0",
72
- "@textmode/tsconfig": "^0.2.0",
74
+ "@textmode/tsconfig": "^0.2.1",
73
75
  "@types/node": "^24.0.0",
74
- "textmode.js": "^0.17.2",
76
+ "textmode.js": "^0.18.0-beta.3",
75
77
  "typescript": "^6.0.3",
76
78
  "vite-plugin-css-injected-by-js": "^5.0.2",
77
79
  "vitest": "^4.1.10"