textmode.export.js 1.2.1 → 1.2.2

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 (81) hide show
  1. package/README.md +170 -172
  2. package/dist/textmode.export.esm.js +963 -944
  3. package/dist/textmode.export.umd.js +2 -2
  4. package/dist/types/exporters/base/DataExtractor.d.ts +2 -1
  5. package/dist/types/exporters/base/DataExtractor.d.ts.map +1 -1
  6. package/dist/types/exporters/base/FileHandler.d.ts +3 -0
  7. package/dist/types/exporters/base/FileHandler.d.ts.map +1 -1
  8. package/dist/types/exporters/gif/GIFExporter.d.ts +5 -2
  9. package/dist/types/exporters/gif/GIFExporter.d.ts.map +1 -1
  10. package/dist/types/exporters/gif/GIFRecorder.d.ts +3 -3
  11. package/dist/types/exporters/gif/GIFRecorder.d.ts.map +1 -1
  12. package/dist/types/exporters/gif/types.d.ts.map +1 -1
  13. package/dist/types/exporters/image/ImageExporter.d.ts +7 -2
  14. package/dist/types/exporters/image/ImageExporter.d.ts.map +1 -1
  15. package/dist/types/exporters/image/index.d.ts +1 -1
  16. package/dist/types/exporters/image/index.d.ts.map +1 -1
  17. package/dist/types/exporters/image/types.d.ts.map +1 -1
  18. package/dist/types/exporters/svg/SVGContentGenerator.d.ts +9 -1
  19. package/dist/types/exporters/svg/SVGContentGenerator.d.ts.map +1 -1
  20. package/dist/types/exporters/svg/SVGDataExtractor.d.ts +3 -1
  21. package/dist/types/exporters/svg/SVGDataExtractor.d.ts.map +1 -1
  22. package/dist/types/exporters/svg/SVGExporter.d.ts +3 -0
  23. package/dist/types/exporters/svg/SVGExporter.d.ts.map +1 -1
  24. package/dist/types/exporters/svg/SVGPathGenerator.d.ts +8 -4
  25. package/dist/types/exporters/svg/SVGPathGenerator.d.ts.map +1 -1
  26. package/dist/types/exporters/svg/index.d.ts +1 -1
  27. package/dist/types/exporters/svg/index.d.ts.map +1 -1
  28. package/dist/types/exporters/svg/types.d.ts.map +1 -1
  29. package/dist/types/exporters/txt/TXTExporter.d.ts +4 -0
  30. package/dist/types/exporters/txt/TXTExporter.d.ts.map +1 -1
  31. package/dist/types/exporters/txt/index.d.ts.map +1 -1
  32. package/dist/types/exporters/txt/types.d.ts.map +1 -1
  33. package/dist/types/exporters/video/VideoExporter.d.ts +5 -2
  34. package/dist/types/exporters/video/VideoExporter.d.ts.map +1 -1
  35. package/dist/types/exporters/video/VideoRecorder.d.ts +3 -3
  36. package/dist/types/exporters/video/VideoRecorder.d.ts.map +1 -1
  37. package/dist/types/exporters/video/index.d.ts +1 -1
  38. package/dist/types/exporters/video/index.d.ts.map +1 -1
  39. package/dist/types/exporters/video/types.d.ts +2 -2
  40. package/dist/types/exporters/video/types.d.ts.map +1 -1
  41. package/dist/types/index.d.ts +6 -0
  42. package/dist/types/index.d.ts.map +1 -1
  43. package/dist/types/overlay/blades/Blade.d.ts +6 -1
  44. package/dist/types/overlay/blades/Blade.d.ts.map +1 -1
  45. package/dist/types/overlay/blades/GIFBlade.d.ts.map +1 -1
  46. package/dist/types/overlay/blades/ImageBlade.d.ts.map +1 -1
  47. package/dist/types/overlay/blades/SVGBlade.d.ts.map +1 -1
  48. package/dist/types/overlay/blades/TextBlade.d.ts.map +1 -1
  49. package/dist/types/overlay/blades/VideoBlade.d.ts.map +1 -1
  50. package/dist/types/overlay/components/actions/Button.d.ts.map +1 -1
  51. package/dist/types/overlay/components/base/Component.d.ts.map +1 -1
  52. package/dist/types/overlay/components/base/Container.d.ts.map +1 -1
  53. package/dist/types/overlay/components/base/Field.d.ts.map +1 -1
  54. package/dist/types/overlay/components/display/Header.d.ts.map +1 -1
  55. package/dist/types/overlay/components/display/StatusDisplay.d.ts.map +1 -1
  56. package/dist/types/overlay/components/inputs/CheckboxInput.d.ts.map +1 -1
  57. package/dist/types/overlay/components/inputs/NumberInput.d.ts.map +1 -1
  58. package/dist/types/overlay/components/inputs/RangeInput.d.ts.map +1 -1
  59. package/dist/types/overlay/components/inputs/SelectInput.d.ts.map +1 -1
  60. package/dist/types/overlay/components/inputs/TextInput.d.ts.map +1 -1
  61. package/dist/types/overlay/core/EventBus.d.ts +1 -0
  62. package/dist/types/overlay/core/EventBus.d.ts.map +1 -1
  63. package/dist/types/overlay/core/OverlayController.d.ts.map +1 -1
  64. package/dist/types/overlay/core/StateManager.d.ts.map +1 -1
  65. package/dist/types/overlay/formatRegistry.d.ts.map +1 -1
  66. package/dist/types/overlay/index.d.ts +1 -0
  67. package/dist/types/overlay/index.d.ts.map +1 -1
  68. package/dist/types/overlay/models/FormatDefinition.d.ts +3 -3
  69. package/dist/types/overlay/models/FormatDefinition.d.ts.map +1 -1
  70. package/dist/types/overlay/models/OverlayEvents.d.ts.map +1 -1
  71. package/dist/types/overlay/models/OverlayState.d.ts.map +1 -1
  72. package/dist/types/overlay/services/ClipboardService.d.ts +7 -2
  73. package/dist/types/overlay/services/ClipboardService.d.ts.map +1 -1
  74. package/dist/types/overlay/services/ExportService.d.ts.map +1 -1
  75. package/dist/types/overlay/services/PositionService.d.ts.map +1 -1
  76. package/dist/types/overlay/types.d.ts.map +1 -1
  77. package/dist/types/types.d.ts +68 -0
  78. package/dist/types/types.d.ts.map +1 -1
  79. package/dist/types/utils/pixels.d.ts +1 -0
  80. package/dist/types/utils/pixels.d.ts.map +1 -1
  81. package/package.json +115 -71
@@ -1 +1 @@
1
- {"version":3,"file":"TextInput.d.ts","sourceRoot":"","sources":["../../../../../src/overlay/components/inputs/TextInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,SAAU,SAAQ,SAAS,CAAC,cAAc,CAAC;IACtD,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAE1B;gBAEU,KAAK,EAAE,cAAc;IAKjC,MAAM,IAAI,WAAW;IAiBrB,IAAI,YAAY,IAAI,gBAAgB,CAEnC;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,EAErB;IAED,SAAS,CAAC,UAAU,IAAI,IAAI;IAI5B,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;CAYhD"}
1
+ {"version":3,"file":"TextInput.d.ts","sourceRoot":"","sources":["../../../../../src/overlay/components/inputs/TextInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,WAAW,cAAc;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,SAAU,SAAQ,SAAS,CAAC,cAAc,CAAC;IACvD,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAE1B;gBAEU,KAAK,EAAE,cAAc;IAKjC,MAAM,IAAI,WAAW;IAiBrB,IAAI,YAAY,IAAI,gBAAgB,CAEnC;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,EAErB;IAED,SAAS,CAAC,UAAU,IAAI,IAAI;IAI5B,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;CAY/C"}
@@ -2,6 +2,7 @@ type Listener<T> = (payload: T) => void;
2
2
  type EventMap = Record<string, unknown>;
3
3
  export declare class EventBus<TEvents extends EventMap> {
4
4
  private readonly _listeners;
5
+ private _getPool;
5
6
  $on<K extends keyof TEvents>(event: K, listener: Listener<TEvents[K]>): () => void;
6
7
  $emit<K extends keyof TEvents>(event: K, payload: TEvents[K]): void;
7
8
  $clear(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"EventBus.d.ts","sourceRoot":"","sources":["../../../../src/overlay/core/EventBus.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAC;AAExC,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAExC,qBAAa,QAAQ,CAAC,OAAO,SAAS,QAAQ;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgD;IAEpE,GAAG,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAelF,KAAK,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAenE,MAAM,IAAI,IAAI;CAGtB"}
1
+ {"version":3,"file":"EventBus.d.ts","sourceRoot":"","sources":["../../../../src/overlay/core/EventBus.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAC;AAExC,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAKxC,qBAAa,QAAQ,CAAC,OAAO,SAAS,QAAQ;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiC;IAE5D,OAAO,CAAC,QAAQ;IAWT,GAAG,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAYlF,KAAK,CAAC,CAAC,SAAS,MAAM,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAenE,MAAM,IAAI,IAAI;CAKrB"}
@@ -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;IAC5B,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;gBAGA,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;IAavC,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;IAwBtB,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;IAyB9B,OAAO,CAAC,mBAAmB;CAgD5B"}
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;IAqC9B,OAAO,CAAC,mBAAmB;CAgD3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"StateManager.d.ts","sourceRoot":"","sources":["../../../../src/overlay/core/StateManager.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;AAEtE,qBAAa,YAAY,CAAC,MAAM,SAAS,MAAM;IAC7C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;gBAEnD,OAAO,EAAE,MAAM;IAI3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,CAE/B;IAEM,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI;IAYpC,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI;IAQvD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAOnC"}
1
+ {"version":3,"file":"StateManager.d.ts","sourceRoot":"","sources":["../../../../src/overlay/core/StateManager.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;AAEtE,qBAAa,YAAY,CAAC,MAAM,SAAS,MAAM;IAC9C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;gBAEnD,OAAO,EAAE,MAAM;IAI3B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,CAE/B;IAEM,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI;IAYpC,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI;IAQvD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAOlC"}
@@ -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;AAyElE,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;AA8ElE,wBAAgB,0BAA0B,IAAI,aAAa,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAE1F"}
@@ -4,6 +4,7 @@ import { OverlayController } from './core/OverlayController';
4
4
  export type { ExportFormat } from './types';
5
5
  /**
6
6
  * Creates an export overlay controller.
7
+ *
7
8
  * @param textmodifier - The text modifier instance.
8
9
  * @param exportAPI - The export API instance.
9
10
  * @returns The overlay controller instance.
@@ -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;;;;;GAKG;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,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,9 +1,9 @@
1
- import type { ExportFormat } from '../types';
1
+ import type { ExportFormat, ExportOptionsMap } from '../types';
2
2
  import type { Blade } from '../blades';
3
- export interface FormatDefinition<TFormat extends ExportFormat = ExportFormat, TBlade extends Blade<any> = Blade<any>> {
3
+ export interface FormatDefinition<TFormat extends ExportFormat = ExportFormat> {
4
4
  readonly format: TFormat;
5
5
  readonly label: string;
6
6
  readonly supportsClipboard: boolean;
7
- createBlade(): TBlade;
7
+ createBlade(): Blade<ExportOptionsMap[TFormat]>;
8
8
  }
9
9
  //# sourceMappingURL=FormatDefinition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormatDefinition.d.ts","sourceRoot":"","sources":["../../../../src/overlay/models/FormatDefinition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,YAAY,GAAG,YAAY,EAAE,MAAM,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC;IACnH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,WAAW,IAAI,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"FormatDefinition.d.ts","sourceRoot":"","sources":["../../../../src/overlay/models/FormatDefinition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,YAAY,GAAG,YAAY;IAC5E,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,WAAW,IAAI,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;CAChD"}
@@ -1 +1 @@
1
- {"version":3,"file":"OverlayEvents.d.ts","sourceRoot":"","sources":["../../../../src/overlay/models/OverlayEvents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,WAAW,aAAc,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC5D,eAAe,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;IAC1C,gBAAgB,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;IAC3C,iBAAiB,EAAE;QAAE,MAAM,EAAE,YAAY,CAAC;QAAC,QAAQ,CAAC,EAAE,iBAAiB,GAAG,mBAAmB,CAAA;KAAE,CAAC;IAChG,gBAAgB,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;IAC3C,cAAc,EAAE;QAAE,MAAM,EAAE,YAAY,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IACvD,mBAAmB,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;CAC/C"}
1
+ {"version":3,"file":"OverlayEvents.d.ts","sourceRoot":"","sources":["../../../../src/overlay/models/OverlayEvents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,WAAW,aAAc,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC7D,eAAe,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;IAC1C,gBAAgB,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;IAC3C,iBAAiB,EAAE;QAAE,MAAM,EAAE,YAAY,CAAC;QAAC,QAAQ,CAAC,EAAE,iBAAiB,GAAG,mBAAmB,CAAA;KAAE,CAAC;IAChG,gBAAgB,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;IAC3C,cAAc,EAAE;QAAE,MAAM,EAAE,YAAY,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IACvD,mBAAmB,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,CAAC;CAC9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"OverlayState.d.ts","sourceRoot":"","sources":["../../../../src/overlay/models/OverlayState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEtF,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,iBAAiB,CAAC;IACvB,KAAK,EAAE,mBAAmB,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,eAAO,MAAM,yBAAyB,GAAI,eAAe,YAAY,KAAG,YAGtE,CAAC"}
1
+ {"version":3,"file":"OverlayState.d.ts","sourceRoot":"","sources":["../../../../src/overlay/models/OverlayState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEtF,MAAM,WAAW,sBAAsB;IACtC,GAAG,EAAE,iBAAiB,CAAC;IACvB,KAAK,EAAE,mBAAmB,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,KAAK,CAAC,EAAE,KAAK,CAAC;CACd;AAED,eAAO,MAAM,yBAAyB,GAAI,eAAe,YAAY,KAAG,YAGtE,CAAC"}
@@ -1,8 +1,13 @@
1
- import type { ExportFormat } from '../types';
1
+ import type { ExportFormat, ExportOptionsMap } from '../types';
2
2
  import type { TextmodeExportAPI } from '../../types';
3
+ type ClipboardExportFormat = Extract<ExportFormat, 'txt' | 'svg' | 'image'>;
3
4
  export declare class ClipboardService {
4
5
  private readonly api;
5
6
  constructor(api: TextmodeExportAPI);
6
- $copy(format: ExportFormat, options: unknown): Promise<void>;
7
+ $copy(format: 'txt', options: ExportOptionsMap['txt']): Promise<void>;
8
+ $copy(format: 'svg', options: ExportOptionsMap['svg']): Promise<void>;
9
+ $copy(format: 'image', options: ExportOptionsMap['image']): Promise<void>;
10
+ $copy(format: ClipboardExportFormat, options: ExportOptionsMap[ClipboardExportFormat]): Promise<void>;
7
11
  }
12
+ export {};
8
13
  //# sourceMappingURL=ClipboardService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClipboardService.d.ts","sourceRoot":"","sources":["../../../../src/overlay/services/ClipboardService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;gBAE5B,GAAG,EAAE,iBAAiB;IAI5B,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;CAoBnE"}
1
+ {"version":3,"file":"ClipboardService.d.ts","sourceRoot":"","sources":["../../../../src/overlay/services/ClipboardService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,KAAK,qBAAqB,GAAG,OAAO,CAAC,YAAY,EAAE,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC,CAAC;AAE5E,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;gBAE5B,GAAG,EAAE,iBAAiB;IAI5B,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACrE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACrE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACzE,KAAK,CAAC,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAqB3G"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExportService.d.ts","sourceRoot":"","sources":["../../../../src/overlay/services/ExportService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,KAAK,EAAsB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAIrF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACtD,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;CAC3D;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;gBAErC,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC;IAKtD,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B3G,OAAO,CAAC,QAAQ;CAwBjB"}
1
+ {"version":3,"file":"ExportService.d.ts","sourceRoot":"","sources":["../../../../src/overlay/services/ExportService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,KAAK,EAAsB,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAIrF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC3B,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACtD,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;CAC1D;AAED,qBAAa,aAAa;IACzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoB;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;gBAErC,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC;IAKtD,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B3G,OAAO,CAAC,QAAQ;CAwBhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"PositionService.d.ts","sourceRoot":"","sources":["../../../../src/overlay/services/PositionService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAa;IAC1C,OAAO,CAAC,KAAK,CAAS;gBAEV,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW;IAMxD,cAAc,IAAI,IAAI;IAOtB,IAAI,IAAI,IAAI;IAUZ,OAAO,CAAC,MAAM;IAOd,OAAO,IAAI,IAAI;CAWhB"}
1
+ {"version":3,"file":"PositionService.d.ts","sourceRoot":"","sources":["../../../../src/overlay/services/PositionService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,qBAAa,eAAe;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAa;IAC1C,OAAO,CAAC,KAAK,CAAS;gBAEV,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW;IAMxD,cAAc,IAAI,IAAI;IAOtB,IAAI,IAAI,IAAI;IAUZ,OAAO,CAAC,MAAM;IAOd,OAAO,IAAI,IAAI;CAWf"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/overlay/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,CAAC;AAErE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,EAAE,gBAAgB,CAAC;IACtB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,GAAG,EAAE,gBAAgB,CAAC;IACtB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,GAAG,EAAE,gBAAgB,CAAC;CACvB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/overlay/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,CAAC;AAErE,MAAM,MAAM,gBAAgB,GAAG;IAC9B,GAAG,EAAE,gBAAgB,CAAC;IACtB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,GAAG,EAAE,gBAAgB,CAAC;IACtB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,GAAG,EAAE,gBAAgB,CAAC;CACtB,CAAC"}
@@ -9,18 +9,38 @@ import type { VideoExportOptions } from './exporters/video';
9
9
  export interface ExportOverlayController {
10
10
  /**
11
11
  * Shows the export overlay UI.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * t.exportOverlay.show();
16
+ * ```
12
17
  */
13
18
  show(): void;
14
19
  /**
15
20
  * Hides the export overlay UI.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * t.exportOverlay.hide();
25
+ * ```
16
26
  */
17
27
  hide(): void;
18
28
  /**
19
29
  * Toggles the export overlay UI visibility.
30
+ *
31
+ * @example
32
+ * ```ts
33
+ * t.exportOverlay.toggle();
34
+ * ```
20
35
  */
21
36
  toggle(): void;
22
37
  /**
23
38
  * Checks if the export overlay is currently visible.
39
+ *
40
+ * @example
41
+ * ```ts
42
+ * const visible = t.exportOverlay.isVisible();
43
+ * ```
24
44
  */
25
45
  isVisible(): boolean;
26
46
  }
@@ -34,44 +54,92 @@ export interface TextmodeExportAPI {
34
54
  exportOverlay: ExportOverlayController;
35
55
  /**
36
56
  * Saves the current canvas content to an image file *(`'png'` by default)*.
57
+ *
37
58
  * @param options Export options.
59
+ *
60
+ * @example
61
+ * ```ts
62
+ * await t.saveCanvas({ format: 'png', filename: 'frame-001' });
63
+ * ```
38
64
  */
39
65
  saveCanvas(options?: ImageExportOptions): Promise<void>;
40
66
  /**
41
67
  * Copies the current canvas to the user's clipboard as an image.
68
+ *
42
69
  * @param options Export options.
70
+ *
71
+ * @example
72
+ * ```ts
73
+ * await t.copyCanvas({ format: 'png' });
74
+ * ```
43
75
  */
44
76
  copyCanvas(options?: ImageExportOptions): Promise<void>;
45
77
  /**
46
78
  * Downloads the current frame as an SVG file.
79
+ *
47
80
  * @param options Export options.
81
+ *
82
+ * @example
83
+ * ```ts
84
+ * t.saveSVG({ filename: 'poster', includeBackgroundRectangles: true });
85
+ * ```
48
86
  */
49
87
  saveSVG(options?: SVGExportOptions): void;
50
88
  /**
51
89
  * Downloads the current text content as a plain-text file.
90
+ *
52
91
  * @param options Export options.
92
+ *
93
+ * @example
94
+ * ```ts
95
+ * t.saveStrings({ filename: 'frame', preserveTrailingSpaces: true });
96
+ * ```
53
97
  */
54
98
  saveStrings(options?: TXTExportOptions): void;
55
99
  /**
56
100
  * Generates the SVG markup for the current frame.
101
+ *
57
102
  * @param options Export options.
58
103
  * @returns The SVG content representing the artwork.
104
+ *
105
+ * @example
106
+ * ```ts
107
+ * const svg = t.toSVG({ drawMode: 'stroke', strokeWidth: 1.5 });
108
+ * ```
59
109
  */
60
110
  toSVG(options?: SVGExportOptions): string;
61
111
  /**
62
112
  * Produces the current text content as a string.
113
+ *
63
114
  * @param options Export options.
64
115
  * @returns The textual representation of the artwork.
116
+ *
117
+ * @example
118
+ * ```ts
119
+ * const text = t.toString({ preserveTrailingSpaces: false });
120
+ * ```
65
121
  */
66
122
  toString(options?: TXTExportOptions): string;
67
123
  /**
68
124
  * Records an animated GIF and saves it to disk.
125
+ *
69
126
  * @param options Export options.
127
+ *
128
+ * @example
129
+ * ```ts
130
+ * await t.saveGIF({ frameCount: 120, frameRate: 30, filename: 'loop' });
131
+ * ```
70
132
  */
71
133
  saveGIF(options?: GIFExportOptions): Promise<void>;
72
134
  /**
73
135
  * Captures a WEBM video and saves it to disk.
136
+ *
74
137
  * @param options Export options.
138
+ *
139
+ * @example
140
+ * ```ts
141
+ * await t.saveWEBM({ frameCount: 240, frameRate: 60, filename: 'capture' });
142
+ * ```
75
143
  */
76
144
  saveWEBM(options?: VideoExportOptions): Promise<void>;
77
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;OAEG;IACH,MAAM,IAAI,IAAI,CAAC;IAEf;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,aAAa,EAAE,uBAAuB,CAAC;IAEvC;;;OAGG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;OAGG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;OAGG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAE1C;;;OAGG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAE9C;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC;IAE1C;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC;IAE7C;;;OAGG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC;;;;;;;OAOG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;;;;;;OAOG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;;;;;;OAOG;IACH,MAAM,IAAI,IAAI,CAAC;IAEf;;;;;;;OAOG;IACH,SAAS,IAAI,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC;;OAEG;IACH,aAAa,EAAE,uBAAuB,CAAC;IAEvC;;;;;;;;;OASG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;;;;;;;OASG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;;;;;;;OASG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAE1C;;;;;;;;;OASG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAE9C;;;;;;;;;;OAUG;IACH,KAAK,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC;IAE1C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC;IAE7C;;;;;;;;;OASG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;;;;;;;;OASG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC3C;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB"}
@@ -1,5 +1,6 @@
1
1
  /**
2
2
  * Convert a pixel array to an RGBA object.
3
+ *
3
4
  * @param pixels Pixel array (Uint8Array)
4
5
  * @param index Starting index in the pixel array
5
6
  * @returns RGBA object
@@ -1 +1 @@
1
- {"version":3,"file":"pixels.d.ts","sourceRoot":"","sources":["../../../src/utils/pixels.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAO9G"}
1
+ {"version":3,"file":"pixels.d.ts","sourceRoot":"","sources":["../../../src/utils/pixels.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAO9G"}
package/package.json CHANGED
@@ -1,71 +1,115 @@
1
- {
2
- "name": "textmode.export.js",
3
- "version": "1.2.1",
4
- "description": "Export plugin for textmode.js - Save your creations as images, GIFs, videos, SVG, and plain text.",
5
- "type": "module",
6
- "types": "./dist/types/index.d.ts",
7
- "main": "./dist/textmode.export.umd.js",
8
- "module": "./dist/textmode.export.esm.js",
9
- "exports": {
10
- ".": {
11
- "types": "./dist/types/index.d.ts",
12
- "import": "./dist/textmode.export.esm.js",
13
- "require": "./dist/textmode.export.umd.js"
14
- }
15
- },
16
- "scripts": {
17
- "dev": "vite --port 5174",
18
- "build": "vite build && tsc",
19
- "preview": "vite preview",
20
- "build:docs": "typedoc",
21
- "dev:docs": "typedoc --watch"
22
- },
23
- "devDependencies": {
24
- "@rollup/plugin-terser": "^0.4.4",
25
- "@types/node": "^24.5.2",
26
- "terser": "^5.44.0",
27
- "typedoc": "^0.28.13",
28
- "typedoc-plugin-frontmatter": "^1.3.1",
29
- "typedoc-plugin-markdown": "^4.9.0",
30
- "typedoc-vitepress-theme": "^1.1.2",
31
- "typescript": "~5.8.3",
32
- "vite": "^7.1.7",
33
- "vite-plugin-css-injected-by-js": "^3.5.2"
34
- },
35
- "dependencies": {
36
- "gifenc": "^1.0.1",
37
- "webm-writer": "^1.0.0",
38
- "textmode.js": ">=0.7.0"
39
- },
40
- "repository": {
41
- "type": "git",
42
- "url": "git+https://github.com/humanbydefinition/textmode.export.js.git"
43
- },
44
- "keywords": [
45
- "textmode",
46
- "textmode.js",
47
- "ascii",
48
- "petscii",
49
- "export",
50
- "plugin",
51
- "gif",
52
- "video",
53
- "webm",
54
- "svg",
55
- "image",
56
- "png",
57
- "jpg",
58
- "webp",
59
- "creative-coding",
60
- "canvas"
61
- ],
62
- "author": "humanbydefinition",
63
- "license": "MIT",
64
- "bugs": {
65
- "url": "https://github.com/humanbydefinition/textmode.export.js/issues"
66
- },
67
- "homepage": "https://code.textmode.art",
68
- "files": [
69
- "dist"
70
- ]
71
- }
1
+ {
2
+ "name": "textmode.export.js",
3
+ "version": "1.2.2",
4
+ "description": "Export plugin for textmode.js - Save your creations as images, GIFs, videos, SVG, and plain text.",
5
+ "type": "module",
6
+ "types": "./dist/types/index.d.ts",
7
+ "main": "./dist/textmode.export.umd.js",
8
+ "module": "./dist/textmode.export.esm.js",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/types/index.d.ts",
12
+ "import": "./dist/textmode.export.esm.js",
13
+ "require": "./dist/textmode.export.umd.js"
14
+ }
15
+ },
16
+ "sideEffects": [
17
+ "./dist/textmode.export.esm.js",
18
+ "./dist/textmode.export.umd.js"
19
+ ],
20
+ "scripts": {
21
+ "dev": "vite --port 5174 --host",
22
+ "build": "vite build && tsc -p tsconfig.json",
23
+ "check": "npm run format:check && npm run lint && npm run lint:md && npm run typecheck && npm run check:api-docs && npm run test && npm run build",
24
+ "check:api-docs": "node ./scripts/check-public-api-docs.mjs",
25
+ "dev:docs": "typedoc --watch",
26
+ "build:docs": "typedoc",
27
+ "preview": "vite preview",
28
+ "test": "vitest run --passWithNoTests",
29
+ "test:watch": "vitest --passWithNoTests",
30
+ "test:ui": "vitest --ui --passWithNoTests",
31
+ "test:coverage": "vitest --coverage --passWithNoTests",
32
+ "format": "prettier --write \"src/**/*.{ts,js}\" \"typedoc-plugins/**/*.js\" \"examples/**/*.{js,html,css}\" \"scripts/**/*.mjs\" \"*.{js,ts,json,md}\" \".markdownlint*.jsonc\" \".prettierrc\" \".releaserc.json\"",
33
+ "format:check": "prettier --check \"src/**/*.{ts,js}\" \"typedoc-plugins/**/*.js\" \"examples/**/*.{js,html,css}\" \"scripts/**/*.mjs\" \"*.{js,ts,json,md}\" \".markdownlint*.jsonc\" \".prettierrc\" \".releaserc.json\"",
34
+ "typecheck": "tsc --noEmit -p tsconfig.json",
35
+ "lint:md": "markdownlint-cli2",
36
+ "lint:md:fix": "markdownlint-cli2 --fix",
37
+ "lint": "eslint src --config eslint.config.js",
38
+ "prepare": "husky"
39
+ },
40
+ "peerDependencies": {
41
+ "textmode.js": ">=0.10.0"
42
+ },
43
+ "devDependencies": {
44
+ "@commitlint/cli": "^20.3.1",
45
+ "@commitlint/config-conventional": "^20.3.1",
46
+ "@eslint/js": "^9.39.4",
47
+ "@rollup/plugin-terser": "^0.4.4",
48
+ "@semantic-release/commit-analyzer": "^13.0.1",
49
+ "@semantic-release/exec": "^7.1.0",
50
+ "@semantic-release/github": "^12.0.6",
51
+ "@semantic-release/npm": "^13.1.2",
52
+ "@semantic-release/release-notes-generator": "^14.1.0",
53
+ "@types/node": "^24.5.2",
54
+ "@vitest/ui": "^3.1.2",
55
+ "eslint": "^9.39.2",
56
+ "eslint-plugin-jsdoc": "^62.4.1",
57
+ "globals": "^17.1.0",
58
+ "husky": "^9.1.7",
59
+ "jsdom": "^26.1.0",
60
+ "lint-staged": "^16.4.0",
61
+ "markdownlint-cli2": "^0.20.0",
62
+ "markdownlint-cli2-formatter-default": "^0.0.6",
63
+ "prettier": "^3.7.4",
64
+ "semantic-release": "^25.0.3",
65
+ "terser": "^5.44.0",
66
+ "textmode.js": "^0.12.0",
67
+ "typedoc": "^0.28.13",
68
+ "typedoc-plugin-frontmatter": "^1.3.1",
69
+ "typedoc-plugin-markdown": "^4.9.0",
70
+ "typedoc-vitepress-theme": "^1.1.2",
71
+ "typescript": "~5.8.3",
72
+ "typescript-eslint": "^8.53.1",
73
+ "vite": "^7.1.7",
74
+ "vite-plugin-css-injected-by-js": "^3.5.2",
75
+ "vitest": "^3.1.2"
76
+ },
77
+ "dependencies": {
78
+ "gifenc": "^1.0.1",
79
+ "webm-writer": "^1.0.0"
80
+ },
81
+ "keywords": [
82
+ "textmode",
83
+ "textmode.js",
84
+ "ascii",
85
+ "petscii",
86
+ "export",
87
+ "plugin",
88
+ "gif",
89
+ "video",
90
+ "webm",
91
+ "svg",
92
+ "image",
93
+ "png",
94
+ "jpg",
95
+ "webp",
96
+ "creative-coding",
97
+ "canvas"
98
+ ],
99
+ "author": "humanbydefinition <hello@textmode.art> (https://code.textmode.art)",
100
+ "license": "MIT",
101
+ "homepage": "https://code.textmode.art",
102
+ "lint-staged": {
103
+ "**/*.{ts,js,mjs,json,jsonc,html,css,md}": "prettier --write"
104
+ },
105
+ "files": [
106
+ "dist"
107
+ ],
108
+ "repository": {
109
+ "type": "git",
110
+ "url": "git+https://github.com/humanbydefinition/textmode.export.js.git"
111
+ },
112
+ "bugs": {
113
+ "url": "https://github.com/humanbydefinition/textmode.export.js/issues"
114
+ }
115
+ }