textmode.export.js 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/README.md +1 -1
  2. package/dist/textmode.export.esm.js +1001 -880
  3. package/dist/textmode.export.umd.js +2 -2
  4. package/dist/types/exporters/base/LayerTarget.d.ts +46 -0
  5. package/dist/types/exporters/base/LayerTarget.d.ts.map +1 -0
  6. package/dist/types/exporters/base/index.d.ts +2 -0
  7. package/dist/types/exporters/base/index.d.ts.map +1 -1
  8. package/dist/types/exporters/gif/GIFExporter.d.ts +1 -1
  9. package/dist/types/exporters/gif/GIFExporter.d.ts.map +1 -1
  10. package/dist/types/exporters/gif/GIFRecorder.d.ts +1 -1
  11. package/dist/types/exporters/gif/GIFRecorder.d.ts.map +1 -1
  12. package/dist/types/exporters/json/JSONDataExtractor.d.ts +3 -4
  13. package/dist/types/exporters/json/JSONDataExtractor.d.ts.map +1 -1
  14. package/dist/types/exporters/json/JSONExporter.d.ts +12 -7
  15. package/dist/types/exporters/json/JSONExporter.d.ts.map +1 -1
  16. package/dist/types/exporters/json/index.d.ts +1 -1
  17. package/dist/types/exporters/json/index.d.ts.map +1 -1
  18. package/dist/types/exporters/json/types.d.ts +78 -15
  19. package/dist/types/exporters/json/types.d.ts.map +1 -1
  20. package/dist/types/exporters/svg/SVGContentGenerator.d.ts +1 -1
  21. package/dist/types/exporters/svg/SVGContentGenerator.d.ts.map +1 -1
  22. package/dist/types/exporters/svg/SVGExporter.d.ts.map +1 -1
  23. package/dist/types/exporters/svg/SVGPathGenerator.d.ts +1 -1
  24. package/dist/types/exporters/svg/SVGPathGenerator.d.ts.map +1 -1
  25. package/dist/types/exporters/svg/types.d.ts +3 -1
  26. package/dist/types/exporters/svg/types.d.ts.map +1 -1
  27. package/dist/types/exporters/txt/TXTExporter.d.ts.map +1 -1
  28. package/dist/types/exporters/txt/TXTExporter.test.d.ts +2 -0
  29. package/dist/types/exporters/txt/TXTExporter.test.d.ts.map +1 -0
  30. package/dist/types/exporters/txt/types.d.ts +3 -1
  31. package/dist/types/exporters/txt/types.d.ts.map +1 -1
  32. package/dist/types/exporters/video/VideoExporter.d.ts +1 -1
  33. package/dist/types/exporters/video/VideoExporter.d.ts.map +1 -1
  34. package/dist/types/exporters/video/VideoRecorder.d.ts +1 -1
  35. package/dist/types/exporters/video/VideoRecorder.d.ts.map +1 -1
  36. package/dist/types/index.d.ts +4 -3
  37. package/dist/types/index.d.ts.map +1 -1
  38. package/dist/types/overlay/blades/Blade.d.ts +2 -0
  39. package/dist/types/overlay/blades/Blade.d.ts.map +1 -1
  40. package/dist/types/overlay/blades/JSONBlade.d.ts +5 -0
  41. package/dist/types/overlay/blades/JSONBlade.d.ts.map +1 -1
  42. package/dist/types/overlay/blades/SVGBlade.d.ts +2 -0
  43. package/dist/types/overlay/blades/SVGBlade.d.ts.map +1 -1
  44. package/dist/types/overlay/blades/TextBlade.d.ts +2 -0
  45. package/dist/types/overlay/blades/TextBlade.d.ts.map +1 -1
  46. package/dist/types/overlay/components/inputs/LayerTargetSelect.d.ts +20 -0
  47. package/dist/types/overlay/components/inputs/LayerTargetSelect.d.ts.map +1 -0
  48. package/dist/types/overlay/core/OverlayController.d.ts +1 -0
  49. package/dist/types/overlay/core/OverlayController.d.ts.map +1 -1
  50. package/dist/types/overlay/formatRegistry.d.ts +2 -1
  51. package/dist/types/overlay/formatRegistry.d.ts.map +1 -1
  52. package/dist/types/overlay/formatRegistry.test.d.ts +2 -0
  53. package/dist/types/overlay/formatRegistry.test.d.ts.map +1 -0
  54. package/dist/types/overlay/index.d.ts +3 -1
  55. package/dist/types/overlay/index.d.ts.map +1 -1
  56. package/dist/types/types.d.ts +21 -18
  57. package/dist/types/types.d.ts.map +1 -1
  58. package/package.json +4 -3
@@ -1,5 +1,4 @@
1
- import type { Textmodifier } from 'textmode.js';
2
- import { DataExtractor } from '../base';
1
+ import { DataExtractor, type ResolvedLayerExportTarget } from '../base';
3
2
  import type { JSONCellData } from './types';
4
3
  /**
5
4
  * Extracts structured cell data from the base textmode layer for JSON export.
@@ -8,9 +7,9 @@ export declare class JSONDataExtractor extends DataExtractor {
8
7
  /**
9
8
  * Extracts all base-layer cell data needed for JSON export.
10
9
  *
11
- * @param textmodifier The Textmodifier instance to extract data from
10
+ * @param target The resolved layer target to extract data from
12
11
  * @returns Row-major cell data for the current base layer
13
12
  */
14
- $extractCellData(textmodifier: Textmodifier): JSONCellData[];
13
+ $extractCellData(target: ResolvedLayerExportTarget): JSONCellData[];
15
14
  }
16
15
  //# sourceMappingURL=JSONDataExtractor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JSONDataExtractor.d.ts","sourceRoot":"","sources":["../../../../src/exporters/json/JSONDataExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,aAAa,EAA8B,MAAM,SAAS,CAAC;AAEpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,aAAa;IACnD;;;;;OAKG;IACI,gBAAgB,CAAC,YAAY,EAAE,YAAY,GAAG,YAAY,EAAE;CAkCnE"}
1
+ {"version":3,"file":"JSONDataExtractor.d.ts","sourceRoot":"","sources":["../../../../src/exporters/json/JSONDataExtractor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAA8B,KAAK,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAEpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,aAAa;IACnD;;;;;OAKG;IACI,gBAAgB,CAAC,MAAM,EAAE,yBAAyB,GAAG,YAAY,EAAE;CAkC1E"}
@@ -1,8 +1,8 @@
1
1
  import type { Textmodifier } from 'textmode.js';
2
- import type { JSONExportOptions, TextmodeLayerJSON } from './types';
2
+ import type { JSONExportOptions, TextmodeDocumentJSON } from './types';
3
3
  /**
4
4
  * Main JSON exporter for the textmode.js library.
5
- * Orchestrates structured base-layer export and file download.
5
+ * Orchestrates structured selected-layer or layer-stack export and file download.
6
6
  */
7
7
  export declare class JSONExporter {
8
8
  /**
@@ -12,6 +12,7 @@ export declare class JSONExporter {
12
12
  * @returns Complete options with defaults applied
13
13
  */
14
14
  private _applyDefaultOptions;
15
+ private _createMetadata;
15
16
  /**
16
17
  * Converts an RGBA color to the configured JSON representation.
17
18
  *
@@ -24,21 +25,25 @@ export declare class JSONExporter {
24
25
  * Creates the row-based cell encoding.
25
26
  *
26
27
  * @param cells Extracted cell data
27
- * @param textmodifier The Textmodifier instance for grid dimensions
28
+ * @param cols Number of grid columns
29
+ * @param rows Number of grid rows
28
30
  * @param colorMode Configured color mode
29
31
  * @returns Readable row-based cell structure
30
32
  */
31
33
  private _createObjectRowsCells;
34
+ private _createLayerGrid;
35
+ private _createLayerCells;
36
+ private _createStackLayer;
32
37
  /**
33
- * Generates structured JSON layer data without serializing it.
38
+ * Generates structured JSON document data without serializing it.
34
39
  *
35
40
  * @param textmodifier The Textmodifier instance to extract data from
36
41
  * @param options Export options
37
- * @returns Structured JSON document for the base layer
42
+ * @returns Structured JSON document for the selected layer or layer stack
38
43
  */
39
- $generateJSONData(textmodifier: Textmodifier, options?: JSONExportOptions): TextmodeLayerJSON;
44
+ $generateJSONData(textmodifier: Textmodifier, options?: JSONExportOptions): TextmodeDocumentJSON;
40
45
  /**
41
- * Generates the serialized JSON string for the current base layer.
46
+ * Generates the serialized JSON string for the selected layer or layer stack.
42
47
  *
43
48
  * @param textmodifier The Textmodifier instance to extract data from
44
49
  * @param options Export options
@@ -1 +1 @@
1
- {"version":3,"file":"JSONExporter.d.ts","sourceRoot":"","sources":["../../../../src/exporters/json/JSONExporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD,OAAO,KAAK,EAGX,iBAAiB,EAGjB,iBAAiB,EACjB,MAAM,SAAS,CAAC;AAIjB;;;GAGG;AACH,qBAAa,YAAY;IACxB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IAcpB;;;;;;;OAOG;IACH,OAAO,CAAC,sBAAsB;IA2B9B;;;;;;OAMG;IACI,iBAAiB,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,iBAAsB,GAAG,iBAAiB;IAqCxG;;;;;;OAMG;IACI,mBAAmB,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM;IAQ/F;;;;;OAKG;IACI,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,iBAAsB,GAAG,IAAI;CASnF"}
1
+ {"version":3,"file":"JSONExporter.d.ts","sourceRoot":"","sources":["../../../../src/exporters/json/JSONExporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAUhD,OAAO,KAAK,EAKX,iBAAiB,EAIjB,oBAAoB,EAEpB,MAAM,SAAS,CAAC;AAKjB;;;GAGG;AACH,qBAAa,YAAY;IACxB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,eAAe;IAYvB;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IAcpB;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IA4B9B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,iBAAiB;IAiBzB;;;;;;OAMG;IACI,iBAAiB,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,iBAAsB,GAAG,oBAAoB;IAwC3G;;;;;;OAMG;IACI,mBAAmB,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM;IAQ/F;;;;;OAKG;IACI,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,iBAAsB,GAAG,IAAI;CASnF"}
@@ -1,4 +1,4 @@
1
1
  export { JSONExporter } from './JSONExporter';
2
2
  export { JSONDataExtractor } from './JSONDataExtractor';
3
- export type { JSONCellCollection, JSONCellData, JSONCellTransform, JSONColorValue, JSONExportColorMode, JSONExportMetadata, JSONExportOptions, JSONGenerationOptions, JSONObjectRowCell, JSONObjectRowsCellCollection, JSONRGBAColor, TextmodeLayerJSON, } from './types';
3
+ export type { JSONDocumentFormat, JSONDocumentVersion, JSONCellCollection, JSONCellData, JSONCellTransform, JSONColorValue, JSONExportColorMode, JSONExportMetadata, JSONExportOptions, JSONExportTarget, JSONGenerationOptions, JSONLayerGrid, JSONObjectRowCell, JSONObjectRowsCellCollection, JSONRGBAColor, TextmodeAllDocumentJSON, TextmodeDocumentJSON, TextmodeDocumentLayer, TextmodeSelectedDocumentJSON, TextmodeSelectedDocumentLayer, } from './types';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/exporters/json/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,YAAY,EACX,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,EAC5B,aAAa,EACb,iBAAiB,GACjB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/exporters/json/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,YAAY,EACX,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,4BAA4B,EAC5B,aAAa,EACb,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,EAC5B,6BAA6B,GAC7B,MAAM,SAAS,CAAC"}
@@ -1,3 +1,16 @@
1
+ import type { LayerExportOptions } from '../base';
2
+ /**
3
+ * Target scope for JSON export.
4
+ */
5
+ export type JSONExportTarget = 'selected' | 'all';
6
+ /**
7
+ * Canonical JSON document format identifier.
8
+ */
9
+ export type JSONDocumentFormat = 'textmode.document';
10
+ /**
11
+ * Canonical JSON document format version.
12
+ */
13
+ export type JSONDocumentVersion = '2.0.0';
1
14
  /**
2
15
  * Supported JSON color output modes.
3
16
  */
@@ -46,6 +59,15 @@ export interface JSONObjectRowsCellCollection {
46
59
  * Supported JSON cell collection variants.
47
60
  */
48
61
  export type JSONCellCollection = JSONObjectRowsCellCollection;
62
+ /**
63
+ * Grid dimensions exported for a layer.
64
+ */
65
+ export interface JSONLayerGrid {
66
+ cols: number;
67
+ rows: number;
68
+ cellWidth: number;
69
+ cellHeight: number;
70
+ }
49
71
  /**
50
72
  * Optional export metadata.
51
73
  */
@@ -57,32 +79,71 @@ export interface JSONExportMetadata {
57
79
  };
58
80
  }
59
81
  /**
60
- * Layer document exported by the JSON exporter.
82
+ * Selected-layer entry in a JSON document export.
83
+ */
84
+ export interface TextmodeSelectedDocumentLayer {
85
+ id: string;
86
+ cells: JSONCellCollection;
87
+ }
88
+ /**
89
+ * Selected-layer document exported by the JSON exporter.
61
90
  */
62
- export interface TextmodeLayerJSON {
63
- $schema: string;
64
- format: 'textmode.layer';
65
- formatVersion: '1.0.0';
91
+ export interface TextmodeSelectedDocumentJSON {
92
+ format: JSONDocumentFormat;
93
+ formatVersion: JSONDocumentVersion;
94
+ target: 'selected';
66
95
  metadata?: JSONExportMetadata;
67
96
  canvas: {
68
97
  width: number;
69
98
  height: number;
70
99
  };
71
- grid: {
72
- cols: number;
73
- rows: number;
74
- cellWidth: number;
75
- cellHeight: number;
76
- };
77
- layer: {
78
- id: 'base';
79
- cells: JSONCellCollection;
100
+ grid: JSONLayerGrid;
101
+ layer: TextmodeSelectedDocumentLayer;
102
+ }
103
+ /**
104
+ * Single layer entry in an all-layers JSON export.
105
+ */
106
+ export interface TextmodeDocumentLayer {
107
+ id: string;
108
+ visible: boolean;
109
+ opacity: number;
110
+ blendMode: string;
111
+ offsetX: number;
112
+ offsetY: number;
113
+ rotationZ: number;
114
+ grid: JSONLayerGrid;
115
+ cells: JSONCellCollection;
116
+ }
117
+ /**
118
+ * Layer stack document exported by the JSON exporter.
119
+ */
120
+ export interface TextmodeAllDocumentJSON {
121
+ format: JSONDocumentFormat;
122
+ formatVersion: JSONDocumentVersion;
123
+ target: 'all';
124
+ metadata?: JSONExportMetadata;
125
+ canvas: {
126
+ width: number;
127
+ height: number;
80
128
  };
129
+ layers: TextmodeDocumentLayer[];
81
130
  }
131
+ /**
132
+ * JSON document exported by the JSON exporter.
133
+ */
134
+ export type TextmodeDocumentJSON = TextmodeSelectedDocumentJSON | TextmodeAllDocumentJSON;
82
135
  /**
83
136
  * Options for exporting the textmode content to JSON format.
84
137
  */
85
- export type JSONExportOptions = {
138
+ export type JSONExportOptions = LayerExportOptions & {
139
+ /**
140
+ * Scope of the JSON export.
141
+ *
142
+ * Use `'selected'` to export one layer, or `'all'` to export the base layer and every user-created layer.
143
+ *
144
+ * Defaults to `'selected'`.
145
+ */
146
+ target?: JSONExportTarget;
86
147
  /**
87
148
  * The filename to save the JSON file as.
88
149
  *
@@ -116,10 +177,12 @@ export type JSONExportOptions = {
116
177
  * Internal options used by JSON generation (with all defaults applied).
117
178
  */
118
179
  export interface JSONGenerationOptions {
180
+ target: JSONExportTarget;
119
181
  pretty: boolean | number;
120
182
  colorMode: JSONExportColorMode;
121
183
  includeMetadata: boolean;
122
184
  filename?: string;
185
+ layer?: LayerExportOptions['layer'];
123
186
  }
124
187
  /**
125
188
  * Internal extracted cell data used while building the JSON document.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/exporters/json/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,MAAM,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACV;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,aAAa,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,cAAc,CAAC;IAC3B,UAAU,EAAE,cAAc,CAAC;IAC3B,SAAS,EAAE,iBAAiB,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC5C,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,IAAI,EAAE,iBAAiB,EAAE,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,4BAA4B,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QACV,IAAI,EAAE,oBAAoB,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;KAChB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,gBAAgB,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,MAAM,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KACf,CAAC;IACF,IAAI,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,KAAK,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,kBAAkB,CAAC;KAC1B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAEhC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,SAAS,EAAE,mBAAmB,CAAC;IAC/B,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,aAAa,CAAC;IAC1B,UAAU,EAAE,aAAa,CAAC;IAC1B,SAAS,EAAE,iBAAiB,CAAC;CAC7B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/exporters/json/types.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { SVGCellData, SVGGenerationOptions } from './types';
2
2
  import type { TextmodeGrid } from 'textmode.js';
3
- import type { TextmodeFont } from 'textmode.js/fonts';
3
+ import type { TextmodeFont } from 'textmode.js';
4
4
  /**
5
5
  * Generates SVG content and markup from processed cell data.
6
6
  * This class handles the creation of SVG elements, groups, and styling.
@@ -1 +1 @@
1
- {"version":3,"file":"SVGContentGenerator.d.ts","sourceRoot":"","sources":["../../../../src/exporters/svg/SVGContentGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjE;;;GAGG;AACH,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,cAAc,CAAmB;;IAMzC;;;;;OAKG;IACI,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM;IAKzD;;;;OAIG;IACI,kBAAkB,IAAI,MAAM;IAInC;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B;IAwBnC;;;;;;;OAOG;IACH,OAAO,CAAC,uBAAuB;IAgB/B;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;;;;;;;OAQG;IACI,oBAAoB,CAC1B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,oBAAoB,GAC3B,MAAM;IAiBT;;;;;;;;OAQG;IACI,mBAAmB,CACzB,aAAa,EAAE,WAAW,EAAE,EAC5B,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,oBAAoB,GAC3B,MAAM;IAYT;;;;;OAKG;IACI,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;CAKtD"}
1
+ {"version":3,"file":"SVGContentGenerator.d.ts","sourceRoot":"","sources":["../../../../src/exporters/svg/SVGContentGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAa,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3D;;;GAGG;AACH,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,cAAc,CAAmB;;IAMzC;;;;;OAKG;IACI,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM;IAKzD;;;;OAIG;IACI,kBAAkB,IAAI,MAAM;IAInC;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B;IAwBnC;;;;;;;OAOG;IACH,OAAO,CAAC,uBAAuB;IAgB/B;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;;;;;;;OAQG;IACI,oBAAoB,CAC1B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,oBAAoB,GAC3B,MAAM;IAiBT;;;;;;;;OAQG;IACI,mBAAmB,CACzB,aAAa,EAAE,WAAW,EAAE,EAC5B,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,oBAAoB,GAC3B,MAAM;IAYT;;;;;OAKG;IACI,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;CAKtD"}
@@ -1 +1 @@
1
- {"version":3,"file":"SVGExporter.d.ts","sourceRoot":"","sources":["../../../../src/exporters/svg/SVGExporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAwB,MAAM,SAAS,CAAC;AAGtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD;;;;GAIG;AACH,qBAAa,WAAW;IACvB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;;;;;OAMG;IACI,YAAY,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM;IAqBvF;;;;;OAKG;IACI,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI;CAMjF"}
1
+ {"version":3,"file":"SVGExporter.d.ts","sourceRoot":"","sources":["../../../../src/exporters/svg/SVGExporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAwB,MAAM,SAAS,CAAC;AAGtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD;;;;GAIG;AACH,qBAAa,WAAW;IACvB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;;;;;OAMG;IACI,YAAY,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM;IAuBvF;;;;;OAKG;IACI,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI;CAMjF"}
@@ -1,4 +1,4 @@
1
- import type { TextmodeFont } from 'textmode.js/fonts';
1
+ import type { TextmodeFont } from 'textmode.js';
2
2
  /**
3
3
  * Glyph data structure for parsed glyphs.
4
4
  * Mirrors the shape used by textmode.js internally for Typr glyph data.
@@ -1 +1 @@
1
- {"version":3,"file":"SVGPathGenerator.d.ts","sourceRoot":"","sources":["../../../../src/exporters/svg/SVGPathGenerator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;GAGG;AACH,UAAU,SAAS;IAClB,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IACZ,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,iDAAiD;IACjD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,kCAAkC;IAClC,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,kCAAkC;IAClC,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,mDAAmD;IACnD,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAClB,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;CACrB;AAeD;;;GAGG;AACH,qBAAa,gBAAgB;IAC5B;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB;IAwBxB;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAwDvB;;;;;;;;;;;;;;;OAeG;IACI,gCAAgC,CACtC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,SAAS,GAAG,IAAI,GACzB,MAAM,GAAG,IAAI;CAwBhB"}
1
+ {"version":3,"file":"SVGPathGenerator.d.ts","sourceRoot":"","sources":["../../../../src/exporters/svg/SVGPathGenerator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD;;;GAGG;AACH,UAAU,SAAS;IAClB,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IACZ,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,iDAAiD;IACjD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,kCAAkC;IAClC,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,kCAAkC;IAClC,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,mDAAmD;IACnD,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAClB,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;CACrB;AAeD;;;GAGG;AACH,qBAAa,gBAAgB;IAC5B;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB;IAwBxB;;;;;;;;OAQG;IACH,OAAO,CAAC,eAAe;IAwDvB;;;;;;;;;;;;;;;OAeG;IACI,gCAAgC,CACtC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,SAAS,GAAG,IAAI,GACzB,MAAM,GAAG,IAAI;CAwBhB"}
@@ -1,3 +1,4 @@
1
+ import type { LayerExportOptions } from '../base';
1
2
  /**
2
3
  * RGBA color representation.
3
4
  */
@@ -53,7 +54,7 @@ export interface FramebufferData {
53
54
  /**
54
55
  * Options for exporting the textmode content to SVG format.
55
56
  */
56
- export type SVGExportOptions = {
57
+ export type SVGExportOptions = LayerExportOptions & {
57
58
  /**
58
59
  * The filename to save the SVG file as.
59
60
  *
@@ -105,5 +106,6 @@ export interface SVGGenerationOptions {
105
106
  drawMode: 'fill' | 'stroke';
106
107
  strokeWidth: number;
107
108
  filename?: string;
109
+ layer?: LayerExportOptions['layer'];
108
110
  }
109
111
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/exporters/svg/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,IAAI;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACV;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACV;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,IAAI,CAAC;IACnB,cAAc,EAAE,IAAI,CAAC;IACrB,SAAS,EAAE,aAAa,CAAC;IACzB,QAAQ,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,eAAe,EAAE,UAAU,CAAC;IAC5B,kBAAkB,EAAE,UAAU,CAAC;IAC/B,oBAAoB,EAAE,UAAU,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IAEtC;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAE7B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,SAAS;IACzB,cAAc,IAAI;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,KAAK,IAAI,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,2BAA2B,EAAE,OAAO,CAAC;IACrC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/exporters/svg/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,IAAI;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACV;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACV;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,IAAI,CAAC;IACnB,cAAc,EAAE,IAAI,CAAC;IACrB,SAAS,EAAE,aAAa,CAAC;IACzB,QAAQ,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,eAAe,EAAE,UAAU,CAAC;IAC5B,kBAAkB,EAAE,UAAU,CAAC;IAC/B,oBAAoB,EAAE,UAAU,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,GAAG;IACnD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IAEtC;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAE7B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,SAAS;IACzB,cAAc,IAAI;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACrE,KAAK,IAAI,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,2BAA2B,EAAE,OAAO,CAAC;IACrC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;CACpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TXTExporter.d.ts","sourceRoot":"","sources":["../../../../src/exporters/txt/TXTExporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAwB,MAAM,SAAS,CAAC;AACtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD;;;;GAIG;AACH,qBAAa,WAAW;IACvB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAuCzB;;;;;;OAMG;IACI,YAAY,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM;IAIvF;;;;;OAKG;IACI,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI;CAOjF"}
1
+ {"version":3,"file":"TXTExporter.d.ts","sourceRoot":"","sources":["../../../../src/exporters/txt/TXTExporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAwB,MAAM,SAAS,CAAC;AACtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD;;;;GAIG;AACH,qBAAa,WAAW;IACvB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAqCzB;;;;;;OAMG;IACI,YAAY,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM;IAIvF;;;;;OAKG;IACI,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,gBAAqB,GAAG,IAAI;CAOjF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=TXTExporter.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TXTExporter.test.d.ts","sourceRoot":"","sources":["../../../../src/exporters/txt/TXTExporter.test.ts"],"names":[],"mappings":""}
@@ -1,7 +1,8 @@
1
+ import type { LayerExportOptions } from '../base';
1
2
  /**
2
3
  * Options for exporting the textmode content to TXT format.
3
4
  */
4
- export type TXTExportOptions = {
5
+ export type TXTExportOptions = LayerExportOptions & {
5
6
  /**
6
7
  * The filename to save the TXT file as.
7
8
  *
@@ -29,6 +30,7 @@ export interface TXTGenerationOptions {
29
30
  preserveTrailingSpaces: boolean;
30
31
  emptyCharacter: string;
31
32
  filename?: string;
33
+ layer?: LayerExportOptions['layer'];
32
34
  }
33
35
  /**
34
36
  * Re-export shared types from SVG module that are also used by TXT exporter
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/exporters/txt/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAEjC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,sBAAsB,EAAE,OAAO,CAAC;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/exporters/txt/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,GAAG;IACnD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAEjC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,sBAAsB,EAAE,OAAO,CAAC;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { Textmodifier } from 'textmode.js';
2
- import type { TextmodePluginContext } from 'textmode.js/plugins';
2
+ import type { TextmodePluginContext } from 'textmode.js';
3
3
  import type { VideoExportOptions } from './types';
4
4
  /**
5
5
  * Main video exporter for the textmode.js library.
@@ -1 +1 @@
1
- {"version":3,"file":"VideoExporter.d.ts","sourceRoot":"","sources":["../../../../src/exporters/video/VideoExporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,OAAO,KAAK,EAAE,kBAAkB,EAA0B,MAAM,SAAS,CAAC;AAG1E;;;;GAIG;AACH,qBAAa,aAAa;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAC1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAgD;IAEtF;;;;;OAKG;gBACS,YAAY,EAAE,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,CAAC,sBAAsB,CAAC;IAM3G;;;;OAIG;IACU,SAAS,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBvE;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;CAU5B"}
1
+ {"version":3,"file":"VideoExporter.d.ts","sourceRoot":"","sources":["../../../../src/exporters/video/VideoExporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,KAAK,EAAE,kBAAkB,EAA0B,MAAM,SAAS,CAAC;AAG1E;;;;GAIG;AACH,qBAAa,aAAa;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAC1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAgD;IAEtF;;;;;OAKG;gBACS,YAAY,EAAE,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,CAAC,sBAAsB,CAAC;IAM3G;;;;OAIG;IACU,SAAS,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBvE;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;CAU5B"}
@@ -1,4 +1,4 @@
1
- import type { TextmodePluginContext } from 'textmode.js/plugins';
1
+ import type { TextmodePluginContext } from 'textmode.js';
2
2
  import type { VideoExportProgress, VideoGenerationOptions } from './types';
3
3
  /**
4
4
  * Records frames from a canvas to create WEBM video files.
@@ -1 +1 @@
1
- {"version":3,"file":"VideoRecorder.d.ts","sourceRoot":"","sources":["../../../../src/exporters/video/VideoRecorder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAG3E;;;;GAIG;AACH,qBAAa,aAAa;IACzB;;;;;;;;;OASG;IACU,OAAO,CACnB,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,sBAAsB,EAC/B,oBAAoB,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,EACnE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,GAClD,OAAO,CAAC,IAAI,CAAC;IAyIhB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;CAsD9B"}
1
+ {"version":3,"file":"VideoRecorder.d.ts","sourceRoot":"","sources":["../../../../src/exporters/video/VideoRecorder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAG3E;;;;GAIG;AACH,qBAAa,aAAa;IACzB;;;;;;;;;OASG;IACU,OAAO,CACnB,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,sBAAsB,EAC/B,oBAAoB,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,EACnE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,GAClD,OAAO,CAAC,IAAI,CAAC;IAyIhB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;CAsD9B"}
@@ -17,7 +17,7 @@
17
17
  *
18
18
  * ### Text formats
19
19
  * - {@link TXTExportOptions | TXT} - Save text content as plain text
20
- * - {@link JSONExportOptions | JSON} - Save base-layer data as structured JSON
20
+ * - {@link JSONExportOptions | JSON} - Save document data as structured JSON
21
21
  *
22
22
  * ### Animation formats
23
23
  * - {@link GIFExportOptions | GIF} - Save as animated GIF
@@ -25,15 +25,16 @@
25
25
  *
26
26
  * @module textmode.export.js
27
27
  */
28
- import type { TextmodePlugin } from 'textmode.js/plugins';
28
+ import type { TextmodePlugin } from 'textmode.js';
29
29
  import type { TextmodeExportPluginOptions } from './types';
30
30
  export type { TextmodeExportAPI, TextmodeExportPluginOptions, ExportOverlayController } from './types';
31
31
  export type { ImageExportOptions } from './exporters/image';
32
32
  export type { SVGExportOptions } from './exporters/svg';
33
33
  export type { TXTExportOptions } from './exporters/txt';
34
- export type { JSONExportOptions, TextmodeLayerJSON } from './exporters/json';
34
+ export type { JSONCellCollection, JSONCellTransform, JSONColorValue, JSONDocumentFormat, JSONDocumentVersion, JSONExportColorMode, JSONExportMetadata, JSONExportOptions, JSONExportTarget, JSONLayerGrid, JSONObjectRowCell, JSONObjectRowsCellCollection, JSONRGBAColor, TextmodeAllDocumentJSON, TextmodeDocumentJSON, TextmodeDocumentLayer, TextmodeSelectedDocumentJSON, TextmodeSelectedDocumentLayer, } from './exporters/json';
35
35
  export type { GIFExportOptions, GIFExportProgress } from './exporters/gif';
36
36
  export type { VideoExportOptions, VideoExportProgress } from './exporters/video';
37
+ export type { LayerExportOptions } from './exporters/base';
37
38
  /**
38
39
  * Export plugin for textmode.js.
39
40
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAyB,MAAM,qBAAqB,CAAC;AAQjF,OAAO,KAAK,EAAqB,2BAA2B,EAA2B,MAAM,SAAS,CAAC;AAIvG,YAAY,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACvG,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAOjF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,YAAY,EAAE,cA4K1B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,0BAA0B,GAAI,UAAS,2BAAgC,KAAG,cAkBtF,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,YAAY,CAAC,EAAE,cAAc,CAAC;QAC9B,0BAA0B,CAAC,EAAE,OAAO,0BAA0B,CAAC;KAC/D;CACD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAyB,MAAM,aAAa,CAAC;AASzE,OAAO,KAAK,EAAqB,2BAA2B,EAA2B,MAAM,SAAS,CAAC;AAIvG,YAAY,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACvG,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,YAAY,EACX,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,4BAA4B,EAC5B,aAAa,EACb,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,EAC5B,6BAA6B,GAC7B,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACjF,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAO3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,YAAY,EAAE,cAqL1B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,0BAA0B,GAAI,UAAS,2BAAgC,KAAG,cAkBtF,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,YAAY,CAAC,EAAE,cAAc,CAAC;QAC9B,0BAA0B,CAAC,EAAE,OAAO,0BAA0B,CAAC;KAC/D;CACD"}
@@ -1,5 +1,6 @@
1
1
  import type { ExportFormat } from '../types';
2
2
  import { Component } from '../components/base/Component';
3
+ import type { LayerTargetProvider } from '../../exporters/base';
3
4
  interface ManagedComponent {
4
5
  unmount(): void;
5
6
  destroy(): void;
@@ -9,6 +10,7 @@ export interface BladeConfig<TOptions> {
9
10
  supportsClipboard: boolean;
10
11
  format: ExportFormat;
11
12
  defaultOptions: TOptions;
13
+ layerTargetProvider?: LayerTargetProvider;
12
14
  }
13
15
  export declare abstract class Blade<TOptions> extends Component<void> {
14
16
  protected readonly _config: BladeConfig<TOptions>;
@@ -1 +1 @@
1
- {"version":3,"file":"Blade.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blades/Blade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,UAAU,gBAAgB;IACzB,OAAO,IAAI,IAAI,CAAC;IAChB,OAAO,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,WAAW,CAAC,QAAQ;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,cAAc,EAAE,QAAQ,CAAC;CACzB;AAED,8BAAsB,KAAK,CAAC,QAAQ,CAAE,SAAQ,SAAS,CAAC,IAAI,CAAC;IAC5D,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA+B;gBAEtD,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC;IAKzC,QAAQ,CAAC,UAAU,IAAI,QAAQ;IAC/B,QAAQ,CAAC,KAAK,IAAI,IAAI;IACtB,QAAQ,CAAC,QAAQ,IAAI,OAAO;IAE5B,SAAS,CAAC,gBAAgB,CAAC,UAAU,SAAS,gBAAgB,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU;IAKlG,SAAS,CAAC,UAAU,IAAI,IAAI;IAM5B,SAAS,CAAC,UAAU,IAAI,IAAI;CAM5B"}
1
+ {"version":3,"file":"Blade.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blades/Blade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEhE,UAAU,gBAAgB;IACzB,OAAO,IAAI,IAAI,CAAC;IAChB,OAAO,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,WAAW,CAAC,QAAQ;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,cAAc,EAAE,QAAQ,CAAC;IACzB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC1C;AAED,8BAAsB,KAAK,CAAC,QAAQ,CAAE,SAAQ,SAAS,CAAC,IAAI,CAAC;IAC5D,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA+B;gBAEtD,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC;IAKzC,QAAQ,CAAC,UAAU,IAAI,QAAQ;IAC/B,QAAQ,CAAC,KAAK,IAAI,IAAI;IACtB,QAAQ,CAAC,QAAQ,IAAI,OAAO;IAE5B,SAAS,CAAC,gBAAgB,CAAC,UAAU,SAAS,gBAAgB,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU;IAKlG,SAAS,CAAC,UAAU,IAAI,IAAI;IAM5B,SAAS,CAAC,UAAU,IAAI,IAAI;CAM5B"}
@@ -2,6 +2,9 @@ import type { JSONExportOptions } from '../../exporters/json';
2
2
  import type { BladeConfig } from './Blade';
3
3
  import { Blade } from './Blade';
4
4
  export declare class JSONBlade extends Blade<JSONExportOptions> {
5
+ private readonly layerTarget?;
6
+ private layerTargetContainer?;
7
+ private target;
5
8
  private prettyPrint;
6
9
  private includeMetadata;
7
10
  private colorMode;
@@ -10,6 +13,8 @@ export declare class JSONBlade extends Blade<JSONExportOptions> {
10
13
  getOptions(): JSONExportOptions;
11
14
  reset(): void;
12
15
  validate(): boolean;
16
+ refreshLayerTargets(): void;
13
17
  private applyDefaults;
18
+ private updateLayerTargetVisibility;
14
19
  }
15
20
  //# sourceMappingURL=JSONBlade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JSONBlade.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blades/JSONBlade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAKnF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,SAAU,SAAQ,KAAK,CAAC,iBAAiB,CAAC;IACtD,OAAO,CAAC,WAAW,CAMjB;IAEF,OAAO,CAAC,eAAe,CAMrB;IAEF,OAAO,CAAC,SAAS,CASf;gBAEU,MAAM,EAAE,WAAW,CAAC,iBAAiB,CAAC;IAIlD,MAAM,IAAI,WAAW;IAkBrB,UAAU,IAAI,iBAAiB;IAQ/B,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,OAAO;IAInB,OAAO,CAAC,aAAa;CAOrB"}
1
+ {"version":3,"file":"JSONBlade.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blades/JSONBlade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,iBAAiB,EAAoB,MAAM,sBAAsB,CAAC;AAMrG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,SAAU,SAAQ,KAAK,CAAC,iBAAiB,CAAC;IACtD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAoB;IACjD,OAAO,CAAC,oBAAoB,CAAC,CAAc;IAE3C,OAAO,CAAC,MAAM,CASZ;IAEF,OAAO,CAAC,WAAW,CAMjB;IAEF,OAAO,CAAC,eAAe,CAMrB;IAEF,OAAO,CAAC,SAAS,CASf;gBAEU,MAAM,EAAE,WAAW,CAAC,iBAAiB,CAAC;IAYlD,MAAM,IAAI,WAAW;IAkCrB,UAAU,IAAI,iBAAiB;IAW/B,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,OAAO;IAInB,mBAAmB,IAAI,IAAI;IAI3B,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,2BAA2B;CAOnC"}
@@ -2,6 +2,7 @@ import type { SVGExportOptions } from '../../exporters/svg';
2
2
  import type { BladeConfig } from './Blade';
3
3
  import { Blade } from './Blade';
4
4
  export declare class SVGBlade extends Blade<SVGExportOptions> {
5
+ private readonly layerTarget?;
5
6
  private includeBackground;
6
7
  private drawMode;
7
8
  private strokeWidth;
@@ -10,6 +11,7 @@ export declare class SVGBlade extends Blade<SVGExportOptions> {
10
11
  getOptions(): SVGExportOptions;
11
12
  reset(): void;
12
13
  validate(): boolean;
14
+ refreshLayerTargets(): void;
13
15
  private updateStrokeControls;
14
16
  private applyDefaults;
15
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SVGBlade.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blades/SVGBlade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAO5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,QAAS,SAAQ,KAAK,CAAC,gBAAgB,CAAC;IACpD,OAAO,CAAC,iBAAiB,CAMvB;IAEF,OAAO,CAAC,QAAQ,CASd;IAEF,OAAO,CAAC,WAAW,CAKjB;gBAEU,MAAM,EAAE,WAAW,CAAC,gBAAgB,CAAC;IAIjD,MAAM,IAAI,WAAW;IAgCrB,UAAU,IAAI,gBAAgB;IAQ9B,KAAK,IAAI,IAAI;IAKb,QAAQ,IAAI,OAAO;IAQnB,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,aAAa;CAQrB"}
1
+ {"version":3,"file":"SVGBlade.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blades/SVGBlade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQ5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,QAAS,SAAQ,KAAK,CAAC,gBAAgB,CAAC;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAoB;IAEjD,OAAO,CAAC,iBAAiB,CAMvB;IAEF,OAAO,CAAC,QAAQ,CASd;IAEF,OAAO,CAAC,WAAW,CAKjB;gBAEU,MAAM,EAAE,WAAW,CAAC,gBAAgB,CAAC;IAYjD,MAAM,IAAI,WAAW;IAiCrB,UAAU,IAAI,gBAAgB;IAS9B,KAAK,IAAI,IAAI;IAKb,QAAQ,IAAI,OAAO;IAQnB,mBAAmB,IAAI,IAAI;IAI3B,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,aAAa;CAQrB"}
@@ -2,6 +2,7 @@ import type { TXTExportOptions } from '../../exporters/txt';
2
2
  import type { BladeConfig } from './Blade';
3
3
  import { Blade } from './Blade';
4
4
  export declare class TextBlade extends Blade<TXTExportOptions> {
5
+ private readonly layerTarget?;
5
6
  private trailingSpaces;
6
7
  private emptyCharacter;
7
8
  constructor(config: BladeConfig<TXTExportOptions>);
@@ -9,6 +10,7 @@ export declare class TextBlade extends Blade<TXTExportOptions> {
9
10
  getOptions(): TXTExportOptions;
10
11
  reset(): void;
11
12
  validate(): boolean;
13
+ refreshLayerTargets(): void;
12
14
  private applyDefaults;
13
15
  }
14
16
  //# sourceMappingURL=TextBlade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TextBlade.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blades/TextBlade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAK5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,SAAU,SAAQ,KAAK,CAAC,gBAAgB,CAAC;IACrD,OAAO,CAAC,cAAc,CAKpB;IAEF,OAAO,CAAC,cAAc,CAMpB;gBAEU,MAAM,EAAE,WAAW,CAAC,gBAAgB,CAAC;IAIjD,MAAM,IAAI,WAAW;IAiBrB,UAAU,IAAI,gBAAgB;IAS9B,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,OAAO;IAKnB,OAAO,CAAC,aAAa;CAKrB"}
1
+ {"version":3,"file":"TextBlade.d.ts","sourceRoot":"","sources":["../../../../src/overlay/blades/TextBlade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAM5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,SAAU,SAAQ,KAAK,CAAC,gBAAgB,CAAC;IACrD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAoB;IAEjD,OAAO,CAAC,cAAc,CAKpB;IAEF,OAAO,CAAC,cAAc,CAMpB;gBAEU,MAAM,EAAE,WAAW,CAAC,gBAAgB,CAAC;IAYjD,MAAM,IAAI,WAAW;IAkBrB,UAAU,IAAI,gBAAgB;IAU9B,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,OAAO;IAKnB,mBAAmB,IAAI,IAAI;IAI3B,OAAO,CAAC,aAAa;CAKrB"}
@@ -0,0 +1,20 @@
1
+ import type { TextmodeLayer } from 'textmode.js';
2
+ import type { LayerTargetProvider } from '../../../exporters/base';
3
+ import { Component } from '../base/Component';
4
+ export interface LayerTargetSelectProps {
5
+ id: string;
6
+ provider: LayerTargetProvider;
7
+ }
8
+ export declare class LayerTargetSelect extends Component<void> {
9
+ private readonly provider;
10
+ private readonly field;
11
+ private readonly select;
12
+ constructor(props: LayerTargetSelectProps);
13
+ render(): HTMLElement;
14
+ get layer(): TextmodeLayer | undefined;
15
+ setDisabled(disabled: boolean): void;
16
+ refresh(): void;
17
+ protected _onUnmount(): void;
18
+ protected _onDestroy(): void;
19
+ }
20
+ //# sourceMappingURL=LayerTargetSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LayerTargetSelect.d.ts","sourceRoot":"","sources":["../../../../../src/overlay/components/inputs/LayerTargetSelect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,mBAAmB,CAAC;CAC9B;AAED,qBAAa,iBAAkB,SAAQ,SAAS,CAAC,IAAI,CAAC;IACrD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;gBAEjC,KAAK,EAAE,sBAAsB;IAezC,MAAM,IAAI,WAAW;IAQrB,IAAI,KAAK,IAAI,aAAa,GAAG,SAAS,CASrC;IAED,WAAW,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAIpC,OAAO,IAAI,IAAI;IAaf,SAAS,CAAC,UAAU,IAAI,IAAI;IAK5B,SAAS,CAAC,UAAU,IAAI,IAAI;CAI5B"}
@@ -36,6 +36,7 @@ export declare class OverlayController {
36
36
  hide(): void;
37
37
  toggle(): void;
38
38
  isVisible(): boolean;
39
+ refreshLayerTargets(): void;
39
40
  $dispose(): void;
40
41
  private _initializeFormatMap;
41
42
  private _createOverlay;
@@ -1 +1 @@
1
- {"version":3,"file":"OverlayController.d.ts","sourceRoot":"","sources":["../../../../src/overlay/core/OverlayController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAOrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAiBnE,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA0C;IACnE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAyB;IAE7D,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,oBAAoB,CAAkB;IAC9C,OAAO,CAAC,gBAAgB,CAAmB;IAE3C,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAA8F;IAClH,OAAO,CAAC,aAAa,CAGlB;IACH,OAAO,CAAC,aAAa,CAA+E;IACpG,OAAO,CAAC,WAAW,CAAmF;IAEtG,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,aAAa,CAAC,CAAgB;IAEtC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAExC;IAEF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAIrC;IAEF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAInC;gBAGD,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,iBAAiB,EAC5B,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,EACjC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,EAC/B,WAAW,EAAE,aAAa,CAAC,gBAAgB,CAAC;IAatC,MAAM,IAAI,IAAI;IAQd,IAAI,IAAI,IAAI;IAMZ,IAAI,IAAI,IAAI;IAMZ,MAAM,IAAI,IAAI;IAQd,SAAS,IAAI,OAAO;IAIpB,QAAQ,IAAI,IAAI;IA0BvB,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,cAAc;IAyBtB,OAAO,CAAC,oBAAoB;IA4B5B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,sBAAsB;IA6C9B,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,aAAa;IAwBrB,OAAO,CAAC,sBAAsB;YAMhB,kBAAkB;YAqElB,gBAAgB;IAwC9B,OAAO,CAAC,mBAAmB;CAgD3B"}
1
+ {"version":3,"file":"OverlayController.d.ts","sourceRoot":"","sources":["../../../../src/overlay/core/OverlayController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAOrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AA2BnE,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA0C;IACnE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAyB;IAE7D,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,oBAAoB,CAAkB;IAC9C,OAAO,CAAC,gBAAgB,CAAmB;IAE3C,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAA8F;IAClH,OAAO,CAAC,aAAa,CAGlB;IACH,OAAO,CAAC,aAAa,CAA+E;IACpG,OAAO,CAAC,WAAW,CAAmF;IAEtG,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,aAAa,CAAC,CAAgB;IAEtC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAExC;IAEF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAIrC;IAEF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAInC;gBAGD,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,iBAAiB,EAC5B,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,EACjC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,EAC/B,WAAW,EAAE,aAAa,CAAC,gBAAgB,CAAC;IAatC,MAAM,IAAI,IAAI;IAQd,IAAI,IAAI,IAAI;IAOZ,IAAI,IAAI,IAAI;IAMZ,MAAM,IAAI,IAAI;IAQd,SAAS,IAAI,OAAO;IAIpB,mBAAmB,IAAI,IAAI;IAM3B,QAAQ,IAAI,IAAI;IA0BvB,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,cAAc;IAyBtB,OAAO,CAAC,oBAAoB;IA4B5B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,sBAAsB;IA6C9B,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,sBAAsB;YAMhB,kBAAkB;YAqElB,gBAAgB;IAwC9B,OAAO,CAAC,mBAAmB;CAgD3B"}
@@ -1,4 +1,5 @@
1
1
  import type { ExportFormat } from './types';
2
2
  import type { FormatDefinition } from './models/FormatDefinition';
3
- export declare function getExportFormatDefinitions(): ReadonlyArray<FormatDefinition<ExportFormat>>;
3
+ import type { LayerTargetProvider } from '../exporters/base';
4
+ export declare function getExportFormatDefinitions(layerTargetProvider?: LayerTargetProvider): ReadonlyArray<FormatDefinition<ExportFormat>>;
4
5
  //# sourceMappingURL=formatRegistry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatRegistry.d.ts","sourceRoot":"","sources":["../../../src/overlay/formatRegistry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AA8FlE,wBAAgB,0BAA0B,IAAI,aAAa,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAE1F"}
1
+ {"version":3,"file":"formatRegistry.d.ts","sourceRoot":"","sources":["../../../src/overlay/formatRegistry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,wBAAgB,0BAA0B,CACzC,mBAAmB,CAAC,EAAE,mBAAmB,GACvC,aAAa,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAgG/C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=formatRegistry.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatRegistry.test.d.ts","sourceRoot":"","sources":["../../../src/overlay/formatRegistry.test.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
1
  import type { Textmodifier } from 'textmode.js';
2
2
  import type { TextmodeExportAPI } from '../types';
3
+ import type { LayerTargetProvider } from '../exporters/base';
3
4
  import { OverlayController } from './core/OverlayController';
4
5
  export type { ExportFormat } from './types';
5
6
  /**
@@ -7,7 +8,8 @@ export type { ExportFormat } from './types';
7
8
  *
8
9
  * @param textmodifier - The text modifier instance.
9
10
  * @param exportAPI - The export API instance.
11
+ * @param layerTargetProvider - Provider for dynamic layer export targets.
10
12
  * @returns The overlay controller instance.
11
13
  */
12
- export declare function createExportOverlay(textmodifier: Textmodifier, exportAPI: TextmodeExportAPI): OverlayController;
14
+ export declare function createExportOverlay(textmodifier: Textmodifier, exportAPI: TextmodeExportAPI, layerTargetProvider?: LayerTargetProvider): OverlayController;
13
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlay/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAO7D,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,iBAAiB,GAAG,iBAAiB,CAS/G"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlay/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAO7D,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAClC,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,iBAAiB,EAC5B,mBAAmB,CAAC,EAAE,mBAAmB,GACvC,iBAAiB,CASnB"}