takumi-js 2.13.4 → 2.13.6
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/backend/node.d.cts +1 -1
- package/dist/backend/node.d.mts +1 -1
- package/dist/backend/wasm.d.cts +1 -1
- package/dist/backend/wasm.d.mts +1 -1
- 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-BPTOJWUk.mjs → render-B1HYpcq6.mjs} +24 -22
- package/dist/{render-C7kRwHMk.cjs → render-B2cdtVWB.cjs} +24 -22
- package/dist/{render-9RT7wd29.d.mts → render-BIjyc8uU.d.cts} +6 -3
- package/dist/{render-DDQRhVd1.d.cts → render-C-wS8FET.d.mts} +6 -3
- package/dist/response.cjs +1 -1
- package/dist/response.d.cts +1 -1
- package/dist/response.d.mts +1 -1
- package/dist/response.mjs +1 -1
- package/dist/{types-BRKMNBAj.d.cts → types-DfaY8MSH.d.cts} +1 -1
- package/dist/{types-BRKMNBAj.d.mts → types-DfaY8MSH.d.mts} +1 -1
- package/package.json +5 -5
package/dist/backend/node.d.cts
CHANGED
package/dist/backend/node.d.mts
CHANGED
package/dist/backend/wasm.d.cts
CHANGED
package/dist/backend/wasm.d.mts
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_render = require("./render-
|
|
2
|
+
const require_render = require("./render-B2cdtVWB.cjs");
|
|
3
3
|
exports.render = require_render.render;
|
|
4
4
|
exports.renderAnimation = require_render.renderAnimation;
|
|
5
5
|
exports.renderSvg = require_render.renderSvg;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as RenderOptions, c as renderAnimation, i as RenderInput, l as renderSvg, n as ImagesInput, o as RenderSvgOptions, r as RenderAnimationOptions, s as render, t as AnimationScene } from "./render-
|
|
1
|
+
import { a as RenderOptions, c as renderAnimation, i as RenderInput, l as renderSvg, n as ImagesInput, o as RenderSvgOptions, r as RenderAnimationOptions, s as render, t as AnimationScene } from "./render-BIjyc8uU.cjs";
|
|
2
2
|
import { AnimationOutputFormat, DitheringAlgorithm, Font, FontDetails, FontLoader, ImageSource, Keyframes, KeyframesMap, KeyframesRuleList, MeasuredNode, MeasuredTextRun, OutputFormat } from "@takumi-rs/core";
|
|
3
3
|
import { AnimationRule, ContainerNode, CssInput, Declarations, FetchOptions, ImageNode, LayerRule, MediaRule, Node, NodeAttributes, NodeMetadata, ReactElementLike, RgbaImage, StyleRule, SupportsRule, TextNode } from "@takumi-rs/helpers";
|
|
4
4
|
//#region src/glyph-cache.d.ts
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as RenderOptions, c as renderAnimation, i as RenderInput, l as renderSvg, n as ImagesInput, o as RenderSvgOptions, r as RenderAnimationOptions, s as render, t as AnimationScene } from "./render-
|
|
1
|
+
import { a as RenderOptions, c as renderAnimation, i as RenderInput, l as renderSvg, n as ImagesInput, o as RenderSvgOptions, r as RenderAnimationOptions, s as render, t as AnimationScene } from "./render-C-wS8FET.mjs";
|
|
2
2
|
import { AnimationRule, ContainerNode, CssInput, Declarations, FetchOptions, ImageNode, LayerRule, MediaRule, Node, NodeAttributes, NodeMetadata, ReactElementLike, RgbaImage, StyleRule, SupportsRule, TextNode } from "@takumi-rs/helpers";
|
|
3
3
|
import { AnimationOutputFormat, DitheringAlgorithm, Font, FontDetails, FontLoader, ImageSource, Keyframes, KeyframesMap, KeyframesRuleList, MeasuredNode, MeasuredTextRun, OutputFormat } from "@takumi-rs/core";
|
|
4
4
|
//#region src/glyph-cache.d.ts
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as setGlyphCacheMaxBytes, n as renderAnimation, r as renderSvg, t as render } from "./render-
|
|
1
|
+
import { i as setGlyphCacheMaxBytes, n as renderAnimation, r as renderSvg, t as render } from "./render-B1HYpcq6.mjs";
|
|
2
2
|
export { render, renderAnimation, renderSvg, setGlyphCacheMaxBytes };
|
|
@@ -29,27 +29,30 @@ function applyGlyphCacheMaxBytes(backend) {
|
|
|
29
29
|
if (maxBytes !== void 0) backend.setGlyphCacheMaxBytes(maxBytes);
|
|
30
30
|
}
|
|
31
31
|
//#endregion
|
|
32
|
-
//#region src/
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
|
|
32
|
+
//#region src/backend/renderer.ts
|
|
33
|
+
var RendererProvider = class {
|
|
34
|
+
load;
|
|
35
|
+
backend;
|
|
36
|
+
renderer;
|
|
37
|
+
constructor(load) {
|
|
38
|
+
this.load = load;
|
|
39
|
+
}
|
|
40
|
+
async get(module) {
|
|
41
|
+
this.backend ??= this.load(module).catch((error) => {
|
|
42
|
+
this.backend = void 0;
|
|
43
|
+
throw error;
|
|
44
|
+
});
|
|
45
|
+
const backend = await this.backend;
|
|
46
|
+
return this.renderer ??= new backend.Renderer();
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
const defaultRenderer = new RendererProvider(async (module) => {
|
|
50
|
+
const backend = await (module === void 0 ? loadBackend() : import("./wasm-init-DzwbPAKW.mjs").then((n) => n.n).then(({ initWasm }) => initWasm(module)));
|
|
51
|
+
applyGlyphCacheMaxBytes(backend);
|
|
52
|
+
return backend;
|
|
53
|
+
});
|
|
50
54
|
//#endregion
|
|
51
55
|
//#region src/render.ts
|
|
52
|
-
let globalRenderer;
|
|
53
56
|
function isTakumiNode(element) {
|
|
54
57
|
if (typeof element !== "object" || element === null || !("type" in element)) return false;
|
|
55
58
|
return element.type === "container" || element.type === "text" || element.type === "image";
|
|
@@ -62,11 +65,10 @@ async function transformElement(element, options) {
|
|
|
62
65
|
if (typeof element === "string") return fromHtml(element);
|
|
63
66
|
return fromJsx(element, options?.jsx);
|
|
64
67
|
}
|
|
65
|
-
/** Resolves
|
|
68
|
+
/** Resolves a caller-supplied renderer or the default provider. */
|
|
66
69
|
async function resolveRenderer(options) {
|
|
67
70
|
if (options && "renderer" in options && options.renderer) return options.renderer;
|
|
68
|
-
|
|
69
|
-
return globalRenderer ??= new imports.Renderer();
|
|
71
|
+
return defaultRenderer.get(options?.module);
|
|
70
72
|
}
|
|
71
73
|
/** Transforms an input into a node tree and extracts its emojis. */
|
|
72
74
|
async function resolveContent(element, options) {
|
|
@@ -29,27 +29,30 @@ function applyGlyphCacheMaxBytes(backend) {
|
|
|
29
29
|
if (maxBytes !== void 0) backend.setGlyphCacheMaxBytes(maxBytes);
|
|
30
30
|
}
|
|
31
31
|
//#endregion
|
|
32
|
-
//#region src/
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
|
|
32
|
+
//#region src/backend/renderer.ts
|
|
33
|
+
var RendererProvider = class {
|
|
34
|
+
load;
|
|
35
|
+
backend;
|
|
36
|
+
renderer;
|
|
37
|
+
constructor(load) {
|
|
38
|
+
this.load = load;
|
|
39
|
+
}
|
|
40
|
+
async get(module) {
|
|
41
|
+
this.backend ??= this.load(module).catch((error) => {
|
|
42
|
+
this.backend = void 0;
|
|
43
|
+
throw error;
|
|
44
|
+
});
|
|
45
|
+
const backend = await this.backend;
|
|
46
|
+
return this.renderer ??= new backend.Renderer();
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
const defaultRenderer = new RendererProvider(async (module) => {
|
|
50
|
+
const backend = await (module === void 0 ? (0, _backend.loadBackend)() : Promise.resolve().then(() => require("./wasm-init-Dl-su2Ub.cjs")).then((n) => n.wasm_init_exports).then(({ initWasm }) => initWasm(module)));
|
|
51
|
+
applyGlyphCacheMaxBytes(backend);
|
|
52
|
+
return backend;
|
|
53
|
+
});
|
|
50
54
|
//#endregion
|
|
51
55
|
//#region src/render.ts
|
|
52
|
-
let globalRenderer;
|
|
53
56
|
function isTakumiNode(element) {
|
|
54
57
|
if (typeof element !== "object" || element === null || !("type" in element)) return false;
|
|
55
58
|
return element.type === "container" || element.type === "text" || element.type === "image";
|
|
@@ -62,11 +65,10 @@ async function transformElement(element, options) {
|
|
|
62
65
|
if (typeof element === "string") return (0, _takumi_rs_helpers_html.fromHtml)(element);
|
|
63
66
|
return (0, _takumi_rs_helpers_jsx.fromJsx)(element, options?.jsx);
|
|
64
67
|
}
|
|
65
|
-
/** Resolves
|
|
68
|
+
/** Resolves a caller-supplied renderer or the default provider. */
|
|
66
69
|
async function resolveRenderer(options) {
|
|
67
70
|
if (options && "renderer" in options && options.renderer) return options.renderer;
|
|
68
|
-
|
|
69
|
-
return globalRenderer ??= new imports.Renderer();
|
|
71
|
+
return defaultRenderer.get(options?.module);
|
|
70
72
|
}
|
|
71
73
|
/** Transforms an input into a node tree and extracts its emojis. */
|
|
72
74
|
async function resolveContent(element, options) {
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
+
import { t as Backend } from "./types-DfaY8MSH.cjs";
|
|
2
|
+
import * as napi from "@takumi-rs/core";
|
|
3
|
+
import * as wasm from "@takumi-rs/wasm";
|
|
1
4
|
import { EmojiType } from "@takumi-rs/helpers/emoji";
|
|
2
5
|
import { CssInput, FetchOptions, ImageFetchCache, Node, ReactElementLike } from "@takumi-rs/helpers";
|
|
3
6
|
import { FromJsxOptions } from "@takumi-rs/helpers/jsx";
|
|
4
|
-
import * as napi from "@takumi-rs/core";
|
|
5
|
-
import * as wasm from "@takumi-rs/wasm";
|
|
6
7
|
import { ReactNode } from "react";
|
|
8
|
+
//#region src/backend/renderer.d.ts
|
|
9
|
+
type Renderer = InstanceType<Backend["Renderer"]>;
|
|
10
|
+
//#endregion
|
|
7
11
|
//#region src/render.d.ts
|
|
8
|
-
type Renderer = napi.Renderer | wasm.Renderer;
|
|
9
12
|
type ImageLoader = napi.ImageLoader | wasm.ImageLoader;
|
|
10
13
|
/**
|
|
11
14
|
* Images for a render: pre-fetched entries, or a group that also controls how remote images
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import * as wasm from "@takumi-rs/wasm";
|
|
1
|
+
import { t as Backend } from "./types-DfaY8MSH.mjs";
|
|
3
2
|
import { EmojiType } from "@takumi-rs/helpers/emoji";
|
|
4
3
|
import { CssInput, FetchOptions, ImageFetchCache, Node, ReactElementLike } from "@takumi-rs/helpers";
|
|
5
4
|
import { FromJsxOptions } from "@takumi-rs/helpers/jsx";
|
|
5
|
+
import * as napi from "@takumi-rs/core";
|
|
6
|
+
import * as wasm from "@takumi-rs/wasm";
|
|
6
7
|
import { ReactNode } from "react";
|
|
8
|
+
//#region src/backend/renderer.d.ts
|
|
9
|
+
type Renderer = InstanceType<Backend["Renderer"]>;
|
|
10
|
+
//#endregion
|
|
7
11
|
//#region src/render.d.ts
|
|
8
|
-
type Renderer = napi.Renderer | wasm.Renderer;
|
|
9
12
|
type ImageLoader = napi.ImageLoader | wasm.ImageLoader;
|
|
10
13
|
/**
|
|
11
14
|
* Images for a render: pre-fetched entries, or a group that also controls how remote images
|
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-B2cdtVWB.cjs");
|
|
6
6
|
//#region src/response/index.ts
|
|
7
7
|
const contentTypeMap = {
|
|
8
8
|
png: "image/png",
|
package/dist/response.d.cts
CHANGED
package/dist/response.d.mts
CHANGED
package/dist/response.mjs
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "takumi-js",
|
|
3
|
-
"version": "2.13.
|
|
3
|
+
"version": "2.13.6",
|
|
4
4
|
"description": "Render OG images from JSX, HTML, and CSS. No headless browser.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"animated-webp",
|
|
@@ -238,9 +238,9 @@
|
|
|
238
238
|
"publish-lint": "attw --pack . && publint --strict ."
|
|
239
239
|
},
|
|
240
240
|
"dependencies": {
|
|
241
|
-
"@takumi-rs/core": "2.13.
|
|
242
|
-
"@takumi-rs/helpers": "2.13.
|
|
243
|
-
"@takumi-rs/wasm": "2.13.
|
|
241
|
+
"@takumi-rs/core": "2.13.6",
|
|
242
|
+
"@takumi-rs/helpers": "2.13.6",
|
|
243
|
+
"@takumi-rs/wasm": "2.13.6"
|
|
244
244
|
},
|
|
245
245
|
"devDependencies": {
|
|
246
246
|
"@types/bun": "^1.4.0",
|
|
@@ -250,6 +250,6 @@
|
|
|
250
250
|
"unrun": "^0.3.1"
|
|
251
251
|
},
|
|
252
252
|
"engines": {
|
|
253
|
-
"node": ">=
|
|
253
|
+
"node": ">=20.19"
|
|
254
254
|
}
|
|
255
255
|
}
|