takumi-js 1.0.13 → 1.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +1 -1
- package/dist/{render-CdlW9EIh.mjs → render-01YbRqd2.mjs} +9 -1
- package/dist/{render-D_xiyqZH.d.mts → render-8qtfnpqJ.d.cts} +4 -3
- package/dist/{render-_g6WzckI.cjs → render-GE_5ugLi.cjs} +9 -1
- package/dist/{render-mfKqlvP8.d.cts → render-tDjGNf6b.d.mts} +4 -3
- package/dist/response.cjs +1 -1
- package/dist/response.d.cts +3 -4
- package/dist/response.d.mts +3 -4
- package/dist/response.mjs +1 -1
- package/package.json +4 -4
package/dist/index.cjs
CHANGED
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as
|
|
1
|
+
import { n as RenderOptions, r as render } from "./render-8qtfnpqJ.cjs";
|
|
2
2
|
import { ContainerNode, FetchResourcesOptions, ImageNode, Node, NodeAttributes, NodeMetadata, ReactElementLike, TextNode } from "@takumi-rs/helpers";
|
|
3
3
|
import { AnimationFrameSource, AnimationOutputFormat, AnimationSceneSource, ConstructRendererOptions, DitheringAlgorithm, EncodeFramesOptions, Font, FontDetails, ImageSource, Keyframes, KeyframesMap, KeyframesRuleList, MeasuredNode, MeasuredTextRun, OutputFormat, RenderAnimationOptions } from "@takumi-rs/core";
|
|
4
4
|
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as
|
|
1
|
+
import { n as RenderOptions, r as render } from "./render-tDjGNf6b.mjs";
|
|
2
2
|
import { ContainerNode, FetchResourcesOptions, ImageNode, Node, NodeAttributes, NodeMetadata, ReactElementLike, TextNode } from "@takumi-rs/helpers";
|
|
3
3
|
import { AnimationFrameSource, AnimationOutputFormat, AnimationSceneSource, ConstructRendererOptions, DitheringAlgorithm, EncodeFramesOptions, Font, FontDetails, ImageSource, Keyframes, KeyframesMap, KeyframesRuleList, MeasuredNode, MeasuredTextRun, OutputFormat, RenderAnimationOptions } from "@takumi-rs/core";
|
|
4
4
|
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as render } from "./render-
|
|
1
|
+
import { t as render } from "./render-01YbRqd2.mjs";
|
|
2
2
|
export { render };
|
|
@@ -82,7 +82,15 @@ function isNodeEnvironment() {
|
|
|
82
82
|
//#endregion
|
|
83
83
|
//#region src/render.ts
|
|
84
84
|
let globalRenderer;
|
|
85
|
-
function
|
|
85
|
+
function isTakumiNode(element) {
|
|
86
|
+
if (typeof element !== "object" || element === null || !("type" in element)) return false;
|
|
87
|
+
return element.type === "container" || element.type === "text" || element.type === "image";
|
|
88
|
+
}
|
|
89
|
+
async function transformElement(element, options) {
|
|
90
|
+
if (isTakumiNode(element)) return {
|
|
91
|
+
node: element,
|
|
92
|
+
stylesheets: []
|
|
93
|
+
};
|
|
86
94
|
if (typeof element === "string") return fromHtml(element);
|
|
87
95
|
return fromJsx(element, options?.jsx);
|
|
88
96
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EmojiType } from "@takumi-rs/helpers/emoji";
|
|
2
|
-
import { FetchResourcesOptions, ReactElementLike } from "@takumi-rs/helpers";
|
|
2
|
+
import { FetchResourcesOptions, Node, ReactElementLike } from "@takumi-rs/helpers";
|
|
3
3
|
import { FromJsxOptions } from "@takumi-rs/helpers/jsx";
|
|
4
4
|
import * as napi from "@takumi-rs/core";
|
|
5
5
|
import * as wasm from "@takumi-rs/wasm";
|
|
@@ -37,6 +37,7 @@ type RenderOptionsWithRenderer = InnerRenderOptions & {
|
|
|
37
37
|
};
|
|
38
38
|
type RenderOptionsWithoutRenderer = Omit<RenderOptionsWithRenderer, "renderer"> & ManagedRendererOptions;
|
|
39
39
|
type RenderOptions = RenderOptionsWithRenderer | RenderOptionsWithoutRenderer;
|
|
40
|
+
type RenderInput = ReactNode | ReactElementLike | Node | string;
|
|
40
41
|
/**
|
|
41
42
|
* Renders a React element, HTML string, or Takumi node tree into an image.
|
|
42
43
|
*
|
|
@@ -57,6 +58,6 @@ type RenderOptions = RenderOptionsWithRenderer | RenderOptionsWithoutRenderer;
|
|
|
57
58
|
* @param options - Configuration for rendering, including dimensions, format, fonts, and more.
|
|
58
59
|
* @returns A promise that resolves to the rendered image data (Buffer/Uint8Array).
|
|
59
60
|
*/
|
|
60
|
-
declare function render(element:
|
|
61
|
+
declare function render(element: RenderInput, options?: RenderOptions): Promise<Uint8Array<ArrayBufferLike> | Buffer<ArrayBufferLike>>;
|
|
61
62
|
//#endregion
|
|
62
|
-
export {
|
|
63
|
+
export { RenderOptions as n, render as r, RenderInput as t };
|
|
@@ -83,7 +83,15 @@ function isNodeEnvironment() {
|
|
|
83
83
|
//#endregion
|
|
84
84
|
//#region src/render.ts
|
|
85
85
|
let globalRenderer;
|
|
86
|
-
function
|
|
86
|
+
function isTakumiNode(element) {
|
|
87
|
+
if (typeof element !== "object" || element === null || !("type" in element)) return false;
|
|
88
|
+
return element.type === "container" || element.type === "text" || element.type === "image";
|
|
89
|
+
}
|
|
90
|
+
async function transformElement(element, options) {
|
|
91
|
+
if (isTakumiNode(element)) return {
|
|
92
|
+
node: element,
|
|
93
|
+
stylesheets: []
|
|
94
|
+
};
|
|
87
95
|
if (typeof element === "string") return (0, _takumi_rs_helpers_html.fromHtml)(element);
|
|
88
96
|
return (0, _takumi_rs_helpers_jsx.fromJsx)(element, options?.jsx);
|
|
89
97
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EmojiType } from "@takumi-rs/helpers/emoji";
|
|
2
|
-
import { FetchResourcesOptions, ReactElementLike } from "@takumi-rs/helpers";
|
|
2
|
+
import { FetchResourcesOptions, Node, ReactElementLike } from "@takumi-rs/helpers";
|
|
3
3
|
import { FromJsxOptions } from "@takumi-rs/helpers/jsx";
|
|
4
4
|
import * as napi from "@takumi-rs/core";
|
|
5
5
|
import * as wasm from "@takumi-rs/wasm";
|
|
@@ -37,6 +37,7 @@ type RenderOptionsWithRenderer = InnerRenderOptions & {
|
|
|
37
37
|
};
|
|
38
38
|
type RenderOptionsWithoutRenderer = Omit<RenderOptionsWithRenderer, "renderer"> & ManagedRendererOptions;
|
|
39
39
|
type RenderOptions = RenderOptionsWithRenderer | RenderOptionsWithoutRenderer;
|
|
40
|
+
type RenderInput = ReactNode | ReactElementLike | Node | string;
|
|
40
41
|
/**
|
|
41
42
|
* Renders a React element, HTML string, or Takumi node tree into an image.
|
|
42
43
|
*
|
|
@@ -57,6 +58,6 @@ type RenderOptions = RenderOptionsWithRenderer | RenderOptionsWithoutRenderer;
|
|
|
57
58
|
* @param options - Configuration for rendering, including dimensions, format, fonts, and more.
|
|
58
59
|
* @returns A promise that resolves to the rendered image data (Buffer/Uint8Array).
|
|
59
60
|
*/
|
|
60
|
-
declare function render(element:
|
|
61
|
+
declare function render(element: RenderInput, options?: RenderOptions): Promise<Uint8Array<ArrayBufferLike> | Buffer<ArrayBufferLike>>;
|
|
61
62
|
//#endregion
|
|
62
|
-
export {
|
|
63
|
+
export { RenderOptions as n, render as r, RenderInput as t };
|
package/dist/response.cjs
CHANGED
|
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const require_render = require("./render-
|
|
5
|
+
const require_render = require("./render-GE_5ugLi.cjs");
|
|
6
6
|
//#region src/response/index.ts
|
|
7
7
|
function mergeOptions(defaultOptions, options) {
|
|
8
8
|
if (!defaultOptions) return options;
|
package/dist/response.d.cts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ReactNode } from "react";
|
|
1
|
+
import { n as RenderOptions, t as RenderInput } from "./render-8qtfnpqJ.cjs";
|
|
3
2
|
|
|
4
3
|
//#region src/response/index.d.ts
|
|
5
4
|
type ImageResponseResult = Response & {
|
|
@@ -8,7 +7,7 @@ type ImageResponseResult = Response & {
|
|
|
8
7
|
type ImageResponseOptions = RenderOptions & ResponseInit & {
|
|
9
8
|
onError?: (error: unknown) => void | Promise<void>;
|
|
10
9
|
};
|
|
11
|
-
type ImageResponseFactory = (component:
|
|
10
|
+
type ImageResponseFactory = (component: RenderInput, options?: ImageResponseOptions) => ImageResponseResult;
|
|
12
11
|
/**
|
|
13
12
|
* Creates a reusable ImageResponse factory with shared configuration.
|
|
14
13
|
*
|
|
@@ -55,7 +54,7 @@ declare function createImageResponse(defaultOptions?: ImageResponseOptions): Ima
|
|
|
55
54
|
*/
|
|
56
55
|
declare class ImageResponse extends Response {
|
|
57
56
|
readonly ready: Promise<void>;
|
|
58
|
-
constructor(component:
|
|
57
|
+
constructor(component: RenderInput, options?: ImageResponseOptions);
|
|
59
58
|
}
|
|
60
59
|
//#endregion
|
|
61
60
|
export { ImageResponse, ImageResponse as default, ImageResponseFactory, ImageResponseOptions, ImageResponseResult, createImageResponse };
|
package/dist/response.d.mts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ReactNode } from "react";
|
|
1
|
+
import { n as RenderOptions, t as RenderInput } from "./render-tDjGNf6b.mjs";
|
|
3
2
|
|
|
4
3
|
//#region src/response/index.d.ts
|
|
5
4
|
type ImageResponseResult = Response & {
|
|
@@ -8,7 +7,7 @@ type ImageResponseResult = Response & {
|
|
|
8
7
|
type ImageResponseOptions = RenderOptions & ResponseInit & {
|
|
9
8
|
onError?: (error: unknown) => void | Promise<void>;
|
|
10
9
|
};
|
|
11
|
-
type ImageResponseFactory = (component:
|
|
10
|
+
type ImageResponseFactory = (component: RenderInput, options?: ImageResponseOptions) => ImageResponseResult;
|
|
12
11
|
/**
|
|
13
12
|
* Creates a reusable ImageResponse factory with shared configuration.
|
|
14
13
|
*
|
|
@@ -55,7 +54,7 @@ declare function createImageResponse(defaultOptions?: ImageResponseOptions): Ima
|
|
|
55
54
|
*/
|
|
56
55
|
declare class ImageResponse extends Response {
|
|
57
56
|
readonly ready: Promise<void>;
|
|
58
|
-
constructor(component:
|
|
57
|
+
constructor(component: RenderInput, options?: ImageResponseOptions);
|
|
59
58
|
}
|
|
60
59
|
//#endregion
|
|
61
60
|
export { ImageResponse, ImageResponse as default, ImageResponseFactory, ImageResponseOptions, ImageResponseResult, createImageResponse };
|
package/dist/response.mjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "takumi-js",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.14",
|
|
4
4
|
"description": "All-in-one Takumi package for Node.js and WebAssembly runtimes.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"css",
|
|
@@ -90,9 +90,9 @@
|
|
|
90
90
|
"test:bundlers": "bun test tests/bundlers.test.ts"
|
|
91
91
|
},
|
|
92
92
|
"dependencies": {
|
|
93
|
-
"@takumi-rs/core": "1.0.
|
|
94
|
-
"@takumi-rs/helpers": "1.0.
|
|
95
|
-
"@takumi-rs/wasm": "1.0.
|
|
93
|
+
"@takumi-rs/core": "1.0.14",
|
|
94
|
+
"@takumi-rs/helpers": "1.0.14",
|
|
95
|
+
"@takumi-rs/wasm": "1.0.14"
|
|
96
96
|
},
|
|
97
97
|
"devDependencies": {
|
|
98
98
|
"@types/bun": "catalog:",
|