@hirokisakabe/pom 6.0.1 → 6.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/buildPptx.d.ts.map +1 -1
- package/dist/buildPptx.js +2 -2
- package/dist/icons/renderIcon.d.ts +2 -2
- package/dist/icons/renderIcon.d.ts.map +1 -1
- package/dist/icons/renderIcon.js +49 -3
- package/dist/parseXml/coercionRules.d.ts.map +1 -1
- package/dist/parseXml/coercionRules.js +1 -4
- package/dist/registry/definitions/icon.js +3 -3
- package/dist/registry/definitions/layer.d.ts.map +1 -1
- package/dist/registry/definitions/layer.js +4 -4
- package/dist/registry/types.d.ts +1 -1
- package/dist/registry/types.d.ts.map +1 -1
- package/dist/renderPptx/renderPptx.d.ts +1 -1
- package/dist/renderPptx/renderPptx.d.ts.map +1 -1
- package/dist/renderPptx/renderPptx.js +11 -8
- package/dist/renderPptx/utils/backgroundBorder.d.ts.map +1 -1
- package/dist/renderPptx/utils/backgroundBorder.js +1 -2
- package/dist/toPositioned/toPositioned.d.ts +1 -1
- package/dist/toPositioned/toPositioned.d.ts.map +1 -1
- package/dist/toPositioned/toPositioned.js +2 -2
- package/dist/types.d.ts +176 -24
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -4
- package/package.json +6 -14
package/dist/buildPptx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildPptx.d.ts","sourceRoot":"","sources":["../src/buildPptx.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAG3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMnD,OAAO,EAAkB,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAEpC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,WAAW,EAAE,OAAO,CAAC;IAClC,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B;AAED,wBAAsB,SAAS,CAC7B,GAAG,EAAE,MAAM,EACX,SAAS,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EACnC,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GACA,OAAO,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"buildPptx.d.ts","sourceRoot":"","sources":["../src/buildPptx.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAG3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMnD,OAAO,EAAkB,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhE,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAEpC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,WAAW,EAAE,OAAO,CAAC;IAClC,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B;AAED,wBAAsB,SAAS,CAC7B,GAAG,EAAE,MAAM,EACX,SAAS,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EACnC,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GACA,OAAO,CAAC,eAAe,CAAC,CAmC1B"}
|
package/dist/buildPptx.js
CHANGED
|
@@ -21,7 +21,7 @@ export async function buildPptx(xml, slideSize, options) {
|
|
|
21
21
|
map = await calcYogaLayout(node, slideSize, ctx);
|
|
22
22
|
}
|
|
23
23
|
const layoutMap = extractLayoutResults(map);
|
|
24
|
-
const positioned = toPositioned(node, ctx, layoutMap);
|
|
24
|
+
const positioned = await toPositioned(node, ctx, layoutMap);
|
|
25
25
|
positionedPages.push(positioned);
|
|
26
26
|
}
|
|
27
27
|
finally {
|
|
@@ -29,7 +29,7 @@ export async function buildPptx(xml, slideSize, options) {
|
|
|
29
29
|
freeYogaTree(map);
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
const pptx = renderPptx(positionedPages, slideSize, ctx, options?.master);
|
|
32
|
+
const pptx = await renderPptx(positionedPages, slideSize, ctx, options?.master);
|
|
33
33
|
const diagnostics = ctx.diagnostics.items;
|
|
34
34
|
if (options?.strict && diagnostics.length > 0) {
|
|
35
35
|
throw new DiagnosticsError(diagnostics);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export declare function rasterizeIcon(name: string, size: number, color: string, cache: Map<string, string>): string
|
|
1
|
+
export declare function rasterizeIcon(name: string, size: number, color: string, cache: Map<string, string>): Promise<string>;
|
|
2
2
|
/**
|
|
3
3
|
* インライン SVG 文字列を指定サイズでラスタライズし、base64 PNG を返す。
|
|
4
4
|
* color が指定された場合、SVG ルートに stroke / fill 属性を設定する。
|
|
5
5
|
*/
|
|
6
|
-
export declare function rasterizeSvgContent(svgContent: string, size: number, color: string | undefined, cache: Map<string, string>): string
|
|
6
|
+
export declare function rasterizeSvgContent(svgContent: string, size: number, color: string | undefined, cache: Map<string, string>): Promise<string>;
|
|
7
7
|
//# sourceMappingURL=renderIcon.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderIcon.d.ts","sourceRoot":"","sources":["../../src/icons/renderIcon.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"renderIcon.d.ts","sourceRoot":"","sources":["../../src/icons/renderIcon.ts"],"names":[],"mappings":"AA2DA,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACzB,OAAO,CAAC,MAAM,CAAC,CAcjB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACzB,OAAO,CAAC,MAAM,CAAC,CAyCjB"}
|
package/dist/icons/renderIcon.js
CHANGED
|
@@ -1,5 +1,47 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { existsSync } from "node:fs";
|
|
2
|
+
import { readFile } from "node:fs/promises";
|
|
3
|
+
import { createRequire } from "node:module";
|
|
4
|
+
import { dirname, join } from "node:path";
|
|
5
|
+
import { fileURLToPath } from "node:url";
|
|
2
6
|
import { ICON_DATA } from "./iconData.js";
|
|
7
|
+
const RESVG_PKG = ["@resvg", "resvg-wasm"].join("/");
|
|
8
|
+
let resvgModule;
|
|
9
|
+
let wasmInitPromise;
|
|
10
|
+
/**
|
|
11
|
+
* WASM バイナリのパスを解決する。
|
|
12
|
+
* バンドル環境(esbuild)では同ディレクトリの index_bg.wasm を参照し、
|
|
13
|
+
* 非バンドル環境では createRequire で node_modules から解決する。
|
|
14
|
+
*/
|
|
15
|
+
function resolveWasmPath() {
|
|
16
|
+
const dir = dirname(fileURLToPath(import.meta.url));
|
|
17
|
+
const localPath = join(dir, "index_bg.wasm");
|
|
18
|
+
if (existsSync(localPath))
|
|
19
|
+
return localPath;
|
|
20
|
+
const require = createRequire(import.meta.url);
|
|
21
|
+
return require.resolve(`${RESVG_PKG}/index_bg.wasm`);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* WASM モジュールを初期化し、Resvg クラスを返す。
|
|
25
|
+
* 並行呼び出しでも安全(Promise をキャッシュ)。
|
|
26
|
+
*/
|
|
27
|
+
function ensureWasmInitialized() {
|
|
28
|
+
if (!wasmInitPromise) {
|
|
29
|
+
wasmInitPromise = (async () => {
|
|
30
|
+
const req = createRequire(import.meta.url);
|
|
31
|
+
const mod = req(RESVG_PKG);
|
|
32
|
+
const wasmPath = resolveWasmPath();
|
|
33
|
+
const wasmBuffer = await readFile(wasmPath);
|
|
34
|
+
await mod.initWasm(wasmBuffer);
|
|
35
|
+
resvgModule = mod;
|
|
36
|
+
})();
|
|
37
|
+
}
|
|
38
|
+
return wasmInitPromise;
|
|
39
|
+
}
|
|
40
|
+
function getResvg() {
|
|
41
|
+
if (!resvgModule)
|
|
42
|
+
throw new Error("WASM not initialized");
|
|
43
|
+
return resvgModule.Resvg;
|
|
44
|
+
}
|
|
3
45
|
function buildIconSvg(name, size, color) {
|
|
4
46
|
const pathData = ICON_DATA[name];
|
|
5
47
|
if (!pathData) {
|
|
@@ -7,11 +49,13 @@ function buildIconSvg(name, size, color) {
|
|
|
7
49
|
}
|
|
8
50
|
return `<svg xmlns="http://www.w3.org/2000/svg" width="${size}" height="${size}" viewBox="0 0 24 24" fill="none" stroke="${color}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">${pathData}</svg>`;
|
|
9
51
|
}
|
|
10
|
-
export function rasterizeIcon(name, size, color, cache) {
|
|
52
|
+
export async function rasterizeIcon(name, size, color, cache) {
|
|
11
53
|
const key = `${name}|${size}|${color}`;
|
|
12
54
|
const cached = cache.get(key);
|
|
13
55
|
if (cached)
|
|
14
56
|
return cached;
|
|
57
|
+
await ensureWasmInitialized();
|
|
58
|
+
const Resvg = getResvg();
|
|
15
59
|
const svg = buildIconSvg(name, size, color);
|
|
16
60
|
const resvg = new Resvg(svg, { fitTo: { mode: "width", value: size } });
|
|
17
61
|
const pngData = resvg.render();
|
|
@@ -24,7 +68,7 @@ export function rasterizeIcon(name, size, color, cache) {
|
|
|
24
68
|
* インライン SVG 文字列を指定サイズでラスタライズし、base64 PNG を返す。
|
|
25
69
|
* color が指定された場合、SVG ルートに stroke / fill 属性を設定する。
|
|
26
70
|
*/
|
|
27
|
-
export function rasterizeSvgContent(svgContent, size, color, cache) {
|
|
71
|
+
export async function rasterizeSvgContent(svgContent, size, color, cache) {
|
|
28
72
|
const key = `svg:${svgContent}|${size}|${color ?? ""}`;
|
|
29
73
|
const cached = cache.get(key);
|
|
30
74
|
if (cached)
|
|
@@ -52,6 +96,8 @@ export function rasterizeSvgContent(svgContent, size, color, cache) {
|
|
|
52
96
|
}
|
|
53
97
|
return `<svg${newAttrs}>`;
|
|
54
98
|
});
|
|
99
|
+
await ensureWasmInitialized();
|
|
100
|
+
const Resvg = getResvg();
|
|
55
101
|
const resvg = new Resvg(svg, { fitTo: { mode: "width", value: size } });
|
|
56
102
|
const pngData = resvg.render();
|
|
57
103
|
const pngBuffer = pngData.asPng();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coercionRules.d.ts","sourceRoot":"","sources":["../../src/parseXml/coercionRules.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,MAAM,GACN;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CAAE,CAAC;AAI5D,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,YAAY,GACjB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAyD1C;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,YAAY,EAAE,GACtB,OAAO,CAuCT;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAarD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,YAAY,GACjB,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAY1C;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAQpE;
|
|
1
|
+
{"version":3,"file":"coercionRules.d.ts","sourceRoot":"","sources":["../../src/parseXml/coercionRules.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,MAAM,GACN;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CAAE,CAAC;AAI5D,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,YAAY,GACjB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAyD1C;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,YAAY,EAAE,GACtB,OAAO,CAuCT;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAarD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,YAAY,GACjB,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,SAAS,CAY1C;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAQpE;AA8HD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CA0I1E,CAAC;AAGF,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAC7C,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CA6E7B,CAAC"}
|
|
@@ -237,6 +237,7 @@ const BASE_RULES = {
|
|
|
237
237
|
bottom: "number",
|
|
238
238
|
left: "number",
|
|
239
239
|
alignSelf: "string",
|
|
240
|
+
shadow: SHADOW_STYLE_RULE,
|
|
240
241
|
};
|
|
241
242
|
// テキスト系の共通属性
|
|
242
243
|
const TEXT_STYLE_RULES = {
|
|
@@ -274,7 +275,6 @@ export const NODE_COERCION_MAP = {
|
|
|
274
275
|
...BASE_RULES,
|
|
275
276
|
src: "string",
|
|
276
277
|
sizing: IMAGE_SIZING_RULE,
|
|
277
|
-
shadow: SHADOW_STYLE_RULE,
|
|
278
278
|
},
|
|
279
279
|
icon: {
|
|
280
280
|
...BASE_RULES,
|
|
@@ -296,7 +296,6 @@ export const NODE_COERCION_MAP = {
|
|
|
296
296
|
text: "string",
|
|
297
297
|
fill: FILL_STYLE_RULE,
|
|
298
298
|
line: BORDER_STYLE_RULE,
|
|
299
|
-
shadow: SHADOW_STYLE_RULE,
|
|
300
299
|
...TEXT_STYLE_RULES,
|
|
301
300
|
},
|
|
302
301
|
chart: {
|
|
@@ -380,7 +379,6 @@ export const NODE_COERCION_MAP = {
|
|
|
380
379
|
gap: "number",
|
|
381
380
|
alignItems: "string",
|
|
382
381
|
justifyContent: "string",
|
|
383
|
-
shadow: SHADOW_STYLE_RULE,
|
|
384
382
|
flexWrap: "string",
|
|
385
383
|
},
|
|
386
384
|
hstack: {
|
|
@@ -388,7 +386,6 @@ export const NODE_COERCION_MAP = {
|
|
|
388
386
|
gap: "number",
|
|
389
387
|
alignItems: "string",
|
|
390
388
|
justifyContent: "string",
|
|
391
|
-
shadow: SHADOW_STYLE_RULE,
|
|
392
389
|
flexWrap: "string",
|
|
393
390
|
},
|
|
394
391
|
layer: {
|
|
@@ -11,7 +11,7 @@ export const iconNodeDef = {
|
|
|
11
11
|
const totalSize = n.variant ? Math.ceil(iconSize * 1.75) : iconSize;
|
|
12
12
|
yn.setMeasureFunc(() => ({ width: totalSize, height: totalSize }));
|
|
13
13
|
},
|
|
14
|
-
toPositioned(pom, absoluteX, absoluteY, layout, ctx) {
|
|
14
|
+
async toPositioned(pom, absoluteX, absoluteY, layout, ctx) {
|
|
15
15
|
const n = pom;
|
|
16
16
|
const iconSize = n.size ?? 24;
|
|
17
17
|
// padding を考慮したコンテンツ領域で bg/icon の座標を計算
|
|
@@ -25,8 +25,8 @@ export const iconNodeDef = {
|
|
|
25
25
|
// 実描画サイズに合わせてラスタライズ(不要に大きい PNG を防ぐ)
|
|
26
26
|
const rasterSize = Math.max(Math.ceil(n.variant ? iconSize : Math.min(content.w, content.h)), iconSize);
|
|
27
27
|
const iconImageData = n.svgContent
|
|
28
|
-
? rasterizeSvgContent(n.svgContent, rasterSize, n.color, ctx.iconRasterCache)
|
|
29
|
-
: rasterizeIcon(n.name, rasterSize, n.color ?? "#000000", ctx.iconRasterCache);
|
|
28
|
+
? await rasterizeSvgContent(n.svgContent, rasterSize, n.color, ctx.iconRasterCache)
|
|
29
|
+
: await rasterizeIcon(n.name, rasterSize, n.color ?? "#000000", ctx.iconRasterCache);
|
|
30
30
|
const positioned = {
|
|
31
31
|
...n,
|
|
32
32
|
x: absoluteX,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layer.d.ts","sourceRoot":"","sources":["../../../src/registry/definitions/layer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAGlD,eAAO,MAAM,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"layer.d.ts","sourceRoot":"","sources":["../../../src/registry/definitions/layer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAGlD,eAAO,MAAM,YAAY,EAAE,cA8D1B,CAAC"}
|
|
@@ -3,7 +3,7 @@ export const layerNodeDef = {
|
|
|
3
3
|
type: "layer",
|
|
4
4
|
category: "absolute-child",
|
|
5
5
|
// applyYogaStyle: layer は子を絶対配置するコンテナ。サイズは明示的に指定されることを期待
|
|
6
|
-
toPositioned(pom, absoluteX, absoluteY, layout, ctx, map) {
|
|
6
|
+
async toPositioned(pom, absoluteX, absoluteY, layout, ctx, map) {
|
|
7
7
|
const n = pom;
|
|
8
8
|
// layer の子要素は layer 内の相対座標(child.x, child.y)を持つ
|
|
9
9
|
// layer の絶対座標に加算してスライド上の絶対座標に変換
|
|
@@ -13,7 +13,7 @@ export const layerNodeDef = {
|
|
|
13
13
|
y: absoluteY,
|
|
14
14
|
w: layout.width,
|
|
15
15
|
h: layout.height,
|
|
16
|
-
children: n.children.map((child) => {
|
|
16
|
+
children: await Promise.all(n.children.map(async (child) => {
|
|
17
17
|
const childX = child.x ?? 0;
|
|
18
18
|
const childY = child.y ?? 0;
|
|
19
19
|
// line ノードは特別な処理が必要
|
|
@@ -44,8 +44,8 @@ export const layerNodeDef = {
|
|
|
44
44
|
}
|
|
45
45
|
const adjustedParentX = absoluteX + childX - childLayout.left;
|
|
46
46
|
const adjustedParentY = absoluteY + childY - childLayout.top;
|
|
47
|
-
return toPositioned(child, ctx, map, adjustedParentX, adjustedParentY);
|
|
48
|
-
}),
|
|
47
|
+
return (await toPositioned(child, ctx, map, adjustedParentX, adjustedParentY));
|
|
48
|
+
})),
|
|
49
49
|
};
|
|
50
50
|
},
|
|
51
51
|
// render: category ベースの子要素再帰で対応
|
package/dist/registry/types.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export interface NodeDefinition {
|
|
|
18
18
|
toPositioned?: (pom: POMNode, absoluteX: number, absoluteY: number, layout: {
|
|
19
19
|
width: number;
|
|
20
20
|
height: number;
|
|
21
|
-
}, ctx: BuildContext, map: LayoutResultMap) => PositionedNode
|
|
21
|
+
}, ctx: BuildContext, map: LayoutResultMap) => PositionedNode | Promise<PositionedNode>;
|
|
22
22
|
/** PositionedNode をスライドにレンダリングする(リーフノード用) */
|
|
23
23
|
render?: (node: PositionedNode, ctx: RenderContext) => void;
|
|
24
24
|
/** 画像ソース収集(prefetch 用) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/registry/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,KAAK,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC;AAExD,4BAA4B;AAC5B,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,aAAa,GACb,gBAAgB,CAAC;AAErB,MAAM,WAAW,cAAc;IAC7B,cAAc;IACd,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtB,cAAc;IACd,QAAQ,EAAE,YAAY,CAAC;IAEvB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,CACf,IAAI,EAAE,OAAO,EACb,EAAE,EAAE,QAAQ,EACZ,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,YAAY,KACd,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B,kEAAkE;IAClE,YAAY,CAAC,EAAE,CACb,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EACzC,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,eAAe,KACjB,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/registry/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,KAAK,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC;AAExD,4BAA4B;AAC5B,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,aAAa,GACb,gBAAgB,CAAC;AAErB,MAAM,WAAW,cAAc;IAC7B,cAAc;IACd,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtB,cAAc;IACd,QAAQ,EAAE,YAAY,CAAC;IAEvB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,CACf,IAAI,EAAE,OAAO,EACb,EAAE,EAAE,QAAQ,EACZ,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,YAAY,KACd,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B,kEAAkE;IAClE,YAAY,CAAC,EAAE,CACb,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EACzC,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,eAAe,KACjB,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAE9C,6CAA6C;IAC7C,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,aAAa,KAAK,IAAI,CAAC;IAE5D,0BAA0B;IAC1B,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC;CACnD"}
|
|
@@ -11,6 +11,6 @@ type SlidePx = {
|
|
|
11
11
|
* @param master スライドマスターオプション(省略可能)
|
|
12
12
|
* @returns PptxGenJS インスタンス
|
|
13
13
|
*/
|
|
14
|
-
export declare function renderPptx(pages: PositionedNode[], slidePx: SlidePx, buildContext: BuildContext, master?: SlideMasterOptions): import("pptxgenjs").default
|
|
14
|
+
export declare function renderPptx(pages: PositionedNode[], slidePx: SlidePx, buildContext: BuildContext, master?: SlideMasterOptions): Promise<import("pptxgenjs").default>;
|
|
15
15
|
export {};
|
|
16
16
|
//# sourceMappingURL=renderPptx.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderPptx.d.ts","sourceRoot":"","sources":["../../src/renderPptx/renderPptx.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAEnB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAQvD,KAAK,OAAO,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA+JxC;;;;;;GAMG;AACH,
|
|
1
|
+
{"version":3,"file":"renderPptx.d.ts","sourceRoot":"","sources":["../../src/renderPptx/renderPptx.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAEnB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAQvD,KAAK,OAAO,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA+JxC;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,KAAK,EAAE,cAAc,EAAE,EACvB,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,YAAY,EAC1B,MAAM,CAAC,EAAE,kBAAkB,wCAiI5B"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
// pptxgenjs は CJS パッケージのため動的 import で読み込む
|
|
2
|
+
async function loadPptxGenJS() {
|
|
3
|
+
const pptxModule = await import("pptxgenjs");
|
|
4
|
+
// CJS default export の解決: module.default.default (ESM wrapper) または module.default
|
|
5
|
+
/* eslint-disable @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-return */
|
|
6
|
+
const mod = pptxModule;
|
|
7
|
+
return mod.default?.default ?? mod.default ?? mod;
|
|
8
|
+
/* eslint-enable @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-return */
|
|
9
|
+
}
|
|
8
10
|
import { pxToIn, pxToPt } from "./units.js";
|
|
9
11
|
import { convertUnderline, convertStrike } from "./textOptions.js";
|
|
10
12
|
import { getImageData } from "../shared/measureImage.js";
|
|
@@ -165,8 +167,9 @@ function defineSlideMasterFromOptions(pptx, master) {
|
|
|
165
167
|
* @param master スライドマスターオプション(省略可能)
|
|
166
168
|
* @returns PptxGenJS インスタンス
|
|
167
169
|
*/
|
|
168
|
-
export function renderPptx(pages, slidePx, buildContext, master) {
|
|
170
|
+
export async function renderPptx(pages, slidePx, buildContext, master) {
|
|
169
171
|
const slideIn = { w: pxToIn(slidePx.w), h: pxToIn(slidePx.h) }; // layout(=px) → PptxGenJS(=inch) への最終変換
|
|
172
|
+
const PptxGenJS = await loadPptxGenJS();
|
|
170
173
|
const pptx = new PptxGenJS();
|
|
171
174
|
pptx.defineLayout({ name: "custom", width: slideIn.w, height: slideIn.h });
|
|
172
175
|
pptx.layout = "custom";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backgroundBorder.d.ts","sourceRoot":"","sources":["../../../src/renderPptx/utils/backgroundBorder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAElE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAcjD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,aAAa,GACjB,IAAI,
|
|
1
|
+
{"version":3,"file":"backgroundBorder.d.ts","sourceRoot":"","sources":["../../../src/renderPptx/utils/backgroundBorder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAElE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAcjD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,aAAa,GACjB,IAAI,CA2HN"}
|
|
@@ -17,8 +17,7 @@ function convertShadow(shadow) {
|
|
|
17
17
|
* 描画順序: 背景色 → 背景画像 → ボーダー
|
|
18
18
|
*/
|
|
19
19
|
export function renderBackgroundAndBorder(node, ctx) {
|
|
20
|
-
const { backgroundColor, backgroundImage, border, borderRadius } = node;
|
|
21
|
-
const shadow = "shadow" in node ? node.shadow : undefined;
|
|
20
|
+
const { backgroundColor, backgroundImage, border, borderRadius, shadow } = node;
|
|
22
21
|
const hasBackground = Boolean(backgroundColor);
|
|
23
22
|
const hasBackgroundImage = Boolean(backgroundImage);
|
|
24
23
|
const hasBorder = Boolean(border &&
|
|
@@ -10,5 +10,5 @@ import type { LayoutResultMap } from "../calcYogaLayout/types.ts";
|
|
|
10
10
|
* @param parentY 親ノードの絶対Y座標
|
|
11
11
|
* @returns PositionedNode ツリー
|
|
12
12
|
*/
|
|
13
|
-
export declare function toPositioned(pom: POMNode, ctx: BuildContext, map: LayoutResultMap, parentX?: number, parentY?: number): PositionedNode
|
|
13
|
+
export declare function toPositioned(pom: POMNode, ctx: BuildContext, map: LayoutResultMap, parentX?: number, parentY?: number): Promise<PositionedNode>;
|
|
14
14
|
//# sourceMappingURL=toPositioned.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toPositioned.d.ts","sourceRoot":"","sources":["../../src/toPositioned/toPositioned.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAGlE;;;;;;;;GAQG;AACH,
|
|
1
|
+
{"version":3,"file":"toPositioned.d.ts","sourceRoot":"","sources":["../../src/toPositioned/toPositioned.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAGlE;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,eAAe,EACpB,OAAO,SAAI,EACX,OAAO,SAAI,GACV,OAAO,CAAC,cAAc,CAAC,CAmDzB"}
|
|
@@ -8,7 +8,7 @@ import { getNodeDef } from "../registry/index.js";
|
|
|
8
8
|
* @param parentY 親ノードの絶対Y座標
|
|
9
9
|
* @returns PositionedNode ツリー
|
|
10
10
|
*/
|
|
11
|
-
export function toPositioned(pom, ctx, map, parentX = 0, parentY = 0) {
|
|
11
|
+
export async function toPositioned(pom, ctx, map, parentX = 0, parentY = 0) {
|
|
12
12
|
const layout = map.get(pom);
|
|
13
13
|
if (!layout) {
|
|
14
14
|
throw new Error("Layout result not found in map for POMNode");
|
|
@@ -38,7 +38,7 @@ export function toPositioned(pom, ctx, map, parentX = 0, parentY = 0) {
|
|
|
38
38
|
y: absoluteY,
|
|
39
39
|
w: layout.width,
|
|
40
40
|
h: layout.height,
|
|
41
|
-
children: containerNode.children.map((child) => toPositioned(child, ctx, map, absoluteX, absoluteY)),
|
|
41
|
+
children: await Promise.all(containerNode.children.map((child) => toPositioned(child, ctx, map, absoluteX, absoluteY))),
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
44
|
case "absolute-child":
|
package/dist/types.d.ts
CHANGED
|
@@ -131,6 +131,17 @@ declare const basePOMNodeSchema: z.ZodObject<{
|
|
|
131
131
|
end: "end";
|
|
132
132
|
stretch: "stretch";
|
|
133
133
|
}>>;
|
|
134
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
135
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
136
|
+
outer: "outer";
|
|
137
|
+
inner: "inner";
|
|
138
|
+
}>>;
|
|
139
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
140
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
141
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
142
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
143
|
+
color: z.ZodOptional<z.ZodString>;
|
|
144
|
+
}, z.core.$strip>>;
|
|
134
145
|
}, z.core.$strip>;
|
|
135
146
|
type BasePOMNode = z.infer<typeof basePOMNodeSchema>;
|
|
136
147
|
export declare const textNodeSchema: z.ZodObject<{
|
|
@@ -192,6 +203,17 @@ export declare const textNodeSchema: z.ZodObject<{
|
|
|
192
203
|
end: "end";
|
|
193
204
|
stretch: "stretch";
|
|
194
205
|
}>>;
|
|
206
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
207
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
208
|
+
outer: "outer";
|
|
209
|
+
inner: "inner";
|
|
210
|
+
}>>;
|
|
211
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
212
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
213
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
214
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
215
|
+
color: z.ZodOptional<z.ZodString>;
|
|
216
|
+
}, z.core.$strip>>;
|
|
195
217
|
type: z.ZodLiteral<"text">;
|
|
196
218
|
text: z.ZodString;
|
|
197
219
|
fontSize: z.ZodOptional<z.ZodNumber>;
|
|
@@ -317,6 +339,17 @@ export declare const ulNodeSchema: z.ZodObject<{
|
|
|
317
339
|
end: "end";
|
|
318
340
|
stretch: "stretch";
|
|
319
341
|
}>>;
|
|
342
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
343
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
344
|
+
outer: "outer";
|
|
345
|
+
inner: "inner";
|
|
346
|
+
}>>;
|
|
347
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
348
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
349
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
350
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
351
|
+
color: z.ZodOptional<z.ZodString>;
|
|
352
|
+
}, z.core.$strip>>;
|
|
320
353
|
type: z.ZodLiteral<"ul">;
|
|
321
354
|
items: z.ZodArray<z.ZodObject<{
|
|
322
355
|
text: z.ZodString;
|
|
@@ -441,6 +474,17 @@ export declare const olNodeSchema: z.ZodObject<{
|
|
|
441
474
|
end: "end";
|
|
442
475
|
stretch: "stretch";
|
|
443
476
|
}>>;
|
|
477
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
478
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
479
|
+
outer: "outer";
|
|
480
|
+
inner: "inner";
|
|
481
|
+
}>>;
|
|
482
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
483
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
484
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
485
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
486
|
+
color: z.ZodOptional<z.ZodString>;
|
|
487
|
+
}, z.core.$strip>>;
|
|
444
488
|
type: z.ZodLiteral<"ol">;
|
|
445
489
|
items: z.ZodArray<z.ZodObject<{
|
|
446
490
|
text: z.ZodString;
|
|
@@ -584,6 +628,17 @@ export declare const imageNodeSchema: z.ZodObject<{
|
|
|
584
628
|
end: "end";
|
|
585
629
|
stretch: "stretch";
|
|
586
630
|
}>>;
|
|
631
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
632
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
633
|
+
outer: "outer";
|
|
634
|
+
inner: "inner";
|
|
635
|
+
}>>;
|
|
636
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
637
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
638
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
639
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
640
|
+
color: z.ZodOptional<z.ZodString>;
|
|
641
|
+
}, z.core.$strip>>;
|
|
587
642
|
type: z.ZodLiteral<"image">;
|
|
588
643
|
src: z.ZodString;
|
|
589
644
|
sizing: z.ZodOptional<z.ZodObject<{
|
|
@@ -597,17 +652,6 @@ export declare const imageNodeSchema: z.ZodObject<{
|
|
|
597
652
|
x: z.ZodOptional<z.ZodNumber>;
|
|
598
653
|
y: z.ZodOptional<z.ZodNumber>;
|
|
599
654
|
}, z.core.$strip>>;
|
|
600
|
-
shadow: z.ZodOptional<z.ZodObject<{
|
|
601
|
-
type: z.ZodOptional<z.ZodEnum<{
|
|
602
|
-
outer: "outer";
|
|
603
|
-
inner: "inner";
|
|
604
|
-
}>>;
|
|
605
|
-
opacity: z.ZodOptional<z.ZodNumber>;
|
|
606
|
-
blur: z.ZodOptional<z.ZodNumber>;
|
|
607
|
-
angle: z.ZodOptional<z.ZodNumber>;
|
|
608
|
-
offset: z.ZodOptional<z.ZodNumber>;
|
|
609
|
-
color: z.ZodOptional<z.ZodString>;
|
|
610
|
-
}, z.core.$strip>>;
|
|
611
655
|
}, z.core.$strip>;
|
|
612
656
|
export declare const iconNodeSchema: z.ZodObject<{
|
|
613
657
|
w: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"max">, z.ZodString]>>;
|
|
@@ -668,6 +712,17 @@ export declare const iconNodeSchema: z.ZodObject<{
|
|
|
668
712
|
end: "end";
|
|
669
713
|
stretch: "stretch";
|
|
670
714
|
}>>;
|
|
715
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
716
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
717
|
+
outer: "outer";
|
|
718
|
+
inner: "inner";
|
|
719
|
+
}>>;
|
|
720
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
721
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
722
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
723
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
724
|
+
color: z.ZodOptional<z.ZodString>;
|
|
725
|
+
}, z.core.$strip>>;
|
|
671
726
|
type: z.ZodLiteral<"icon">;
|
|
672
727
|
name: z.ZodOptional<z.ZodEnum<{
|
|
673
728
|
[x: string]: string;
|
|
@@ -743,6 +798,17 @@ export declare const tableNodeSchema: z.ZodObject<{
|
|
|
743
798
|
end: "end";
|
|
744
799
|
stretch: "stretch";
|
|
745
800
|
}>>;
|
|
801
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
802
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
803
|
+
outer: "outer";
|
|
804
|
+
inner: "inner";
|
|
805
|
+
}>>;
|
|
806
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
807
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
808
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
809
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
810
|
+
color: z.ZodOptional<z.ZodString>;
|
|
811
|
+
}, z.core.$strip>>;
|
|
746
812
|
type: z.ZodLiteral<"table">;
|
|
747
813
|
columns: z.ZodArray<z.ZodObject<{
|
|
748
814
|
width: z.ZodOptional<z.ZodNumber>;
|
|
@@ -848,6 +914,17 @@ export declare const shapeNodeSchema: z.ZodObject<{
|
|
|
848
914
|
end: "end";
|
|
849
915
|
stretch: "stretch";
|
|
850
916
|
}>>;
|
|
917
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
918
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
919
|
+
outer: "outer";
|
|
920
|
+
inner: "inner";
|
|
921
|
+
}>>;
|
|
922
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
923
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
924
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
925
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
926
|
+
color: z.ZodOptional<z.ZodString>;
|
|
927
|
+
}, z.core.$strip>>;
|
|
851
928
|
type: z.ZodLiteral<"shape">;
|
|
852
929
|
shapeType: z.ZodEnum<{
|
|
853
930
|
cloud: "cloud";
|
|
@@ -1048,17 +1125,6 @@ export declare const shapeNodeSchema: z.ZodObject<{
|
|
|
1048
1125
|
sysDot: "sysDot";
|
|
1049
1126
|
}>>;
|
|
1050
1127
|
}, z.core.$strip>>;
|
|
1051
|
-
shadow: z.ZodOptional<z.ZodObject<{
|
|
1052
|
-
type: z.ZodOptional<z.ZodEnum<{
|
|
1053
|
-
outer: "outer";
|
|
1054
|
-
inner: "inner";
|
|
1055
|
-
}>>;
|
|
1056
|
-
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1057
|
-
blur: z.ZodOptional<z.ZodNumber>;
|
|
1058
|
-
angle: z.ZodOptional<z.ZodNumber>;
|
|
1059
|
-
offset: z.ZodOptional<z.ZodNumber>;
|
|
1060
|
-
color: z.ZodOptional<z.ZodString>;
|
|
1061
|
-
}, z.core.$strip>>;
|
|
1062
1128
|
fontSize: z.ZodOptional<z.ZodNumber>;
|
|
1063
1129
|
color: z.ZodOptional<z.ZodString>;
|
|
1064
1130
|
textAlign: z.ZodOptional<z.ZodEnum<{
|
|
@@ -1152,6 +1218,17 @@ export declare const chartNodeSchema: z.ZodObject<{
|
|
|
1152
1218
|
end: "end";
|
|
1153
1219
|
stretch: "stretch";
|
|
1154
1220
|
}>>;
|
|
1221
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
1222
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1223
|
+
outer: "outer";
|
|
1224
|
+
inner: "inner";
|
|
1225
|
+
}>>;
|
|
1226
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1227
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
1228
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
1229
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1230
|
+
color: z.ZodOptional<z.ZodString>;
|
|
1231
|
+
}, z.core.$strip>>;
|
|
1155
1232
|
type: z.ZodLiteral<"chart">;
|
|
1156
1233
|
chartType: z.ZodEnum<{
|
|
1157
1234
|
radar: "radar";
|
|
@@ -1243,6 +1320,17 @@ export declare const timelineNodeSchema: z.ZodObject<{
|
|
|
1243
1320
|
end: "end";
|
|
1244
1321
|
stretch: "stretch";
|
|
1245
1322
|
}>>;
|
|
1323
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
1324
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1325
|
+
outer: "outer";
|
|
1326
|
+
inner: "inner";
|
|
1327
|
+
}>>;
|
|
1328
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1329
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
1330
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
1331
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1332
|
+
color: z.ZodOptional<z.ZodString>;
|
|
1333
|
+
}, z.core.$strip>>;
|
|
1246
1334
|
type: z.ZodLiteral<"timeline">;
|
|
1247
1335
|
direction: z.ZodOptional<z.ZodEnum<{
|
|
1248
1336
|
horizontal: "horizontal";
|
|
@@ -1315,6 +1403,17 @@ export declare const matrixNodeSchema: z.ZodObject<{
|
|
|
1315
1403
|
end: "end";
|
|
1316
1404
|
stretch: "stretch";
|
|
1317
1405
|
}>>;
|
|
1406
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
1407
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1408
|
+
outer: "outer";
|
|
1409
|
+
inner: "inner";
|
|
1410
|
+
}>>;
|
|
1411
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1412
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
1413
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
1414
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1415
|
+
color: z.ZodOptional<z.ZodString>;
|
|
1416
|
+
}, z.core.$strip>>;
|
|
1318
1417
|
type: z.ZodLiteral<"matrix">;
|
|
1319
1418
|
axes: z.ZodObject<{
|
|
1320
1419
|
x: z.ZodString;
|
|
@@ -1407,6 +1506,17 @@ export declare const treeNodeSchema: z.ZodObject<{
|
|
|
1407
1506
|
end: "end";
|
|
1408
1507
|
stretch: "stretch";
|
|
1409
1508
|
}>>;
|
|
1509
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
1510
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1511
|
+
outer: "outer";
|
|
1512
|
+
inner: "inner";
|
|
1513
|
+
}>>;
|
|
1514
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1515
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
1516
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
1517
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1518
|
+
color: z.ZodOptional<z.ZodString>;
|
|
1519
|
+
}, z.core.$strip>>;
|
|
1410
1520
|
type: z.ZodLiteral<"tree">;
|
|
1411
1521
|
layout: z.ZodOptional<z.ZodEnum<{
|
|
1412
1522
|
horizontal: "horizontal";
|
|
@@ -1489,6 +1599,17 @@ export declare const processArrowNodeSchema: z.ZodObject<{
|
|
|
1489
1599
|
end: "end";
|
|
1490
1600
|
stretch: "stretch";
|
|
1491
1601
|
}>>;
|
|
1602
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
1603
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1604
|
+
outer: "outer";
|
|
1605
|
+
inner: "inner";
|
|
1606
|
+
}>>;
|
|
1607
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1608
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
1609
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
1610
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1611
|
+
color: z.ZodOptional<z.ZodString>;
|
|
1612
|
+
}, z.core.$strip>>;
|
|
1492
1613
|
type: z.ZodLiteral<"processArrow">;
|
|
1493
1614
|
direction: z.ZodOptional<z.ZodEnum<{
|
|
1494
1615
|
horizontal: "horizontal";
|
|
@@ -1588,6 +1709,17 @@ export declare const pyramidNodeSchema: z.ZodObject<{
|
|
|
1588
1709
|
end: "end";
|
|
1589
1710
|
stretch: "stretch";
|
|
1590
1711
|
}>>;
|
|
1712
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
1713
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1714
|
+
outer: "outer";
|
|
1715
|
+
inner: "inner";
|
|
1716
|
+
}>>;
|
|
1717
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1718
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
1719
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
1720
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1721
|
+
color: z.ZodOptional<z.ZodString>;
|
|
1722
|
+
}, z.core.$strip>>;
|
|
1591
1723
|
type: z.ZodLiteral<"pyramid">;
|
|
1592
1724
|
direction: z.ZodOptional<z.ZodEnum<{
|
|
1593
1725
|
up: "up";
|
|
@@ -1661,6 +1793,17 @@ export declare const flowNodeSchema: z.ZodObject<{
|
|
|
1661
1793
|
end: "end";
|
|
1662
1794
|
stretch: "stretch";
|
|
1663
1795
|
}>>;
|
|
1796
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
1797
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1798
|
+
outer: "outer";
|
|
1799
|
+
inner: "inner";
|
|
1800
|
+
}>>;
|
|
1801
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1802
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
1803
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
1804
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1805
|
+
color: z.ZodOptional<z.ZodString>;
|
|
1806
|
+
}, z.core.$strip>>;
|
|
1664
1807
|
type: z.ZodLiteral<"flow">;
|
|
1665
1808
|
direction: z.ZodOptional<z.ZodEnum<{
|
|
1666
1809
|
horizontal: "horizontal";
|
|
@@ -1780,6 +1923,17 @@ export declare const lineNodeSchema: z.ZodObject<{
|
|
|
1780
1923
|
end: "end";
|
|
1781
1924
|
stretch: "stretch";
|
|
1782
1925
|
}>>;
|
|
1926
|
+
shadow: z.ZodOptional<z.ZodObject<{
|
|
1927
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
1928
|
+
outer: "outer";
|
|
1929
|
+
inner: "inner";
|
|
1930
|
+
}>>;
|
|
1931
|
+
opacity: z.ZodOptional<z.ZodNumber>;
|
|
1932
|
+
blur: z.ZodOptional<z.ZodNumber>;
|
|
1933
|
+
angle: z.ZodOptional<z.ZodNumber>;
|
|
1934
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
1935
|
+
color: z.ZodOptional<z.ZodString>;
|
|
1936
|
+
}, z.core.$strip>>;
|
|
1783
1937
|
type: z.ZodLiteral<"line">;
|
|
1784
1938
|
x1: z.ZodNumber;
|
|
1785
1939
|
y1: z.ZodNumber;
|
|
@@ -1826,7 +1980,6 @@ export type VStackNode = BasePOMNode & {
|
|
|
1826
1980
|
gap?: number;
|
|
1827
1981
|
alignItems?: AlignItems;
|
|
1828
1982
|
justifyContent?: JustifyContent;
|
|
1829
|
-
shadow?: ShadowStyle;
|
|
1830
1983
|
flexWrap?: FlexWrap;
|
|
1831
1984
|
};
|
|
1832
1985
|
export type HStackNode = BasePOMNode & {
|
|
@@ -1835,7 +1988,6 @@ export type HStackNode = BasePOMNode & {
|
|
|
1835
1988
|
gap?: number;
|
|
1836
1989
|
alignItems?: AlignItems;
|
|
1837
1990
|
justifyContent?: JustifyContent;
|
|
1838
|
-
shadow?: ShadowStyle;
|
|
1839
1991
|
flexWrap?: FlexWrap;
|
|
1840
1992
|
};
|
|
1841
1993
|
type LayerChild = POMNode & {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0CxB,eAAO,MAAM,iBAAiB;;;;;;;;;;iBAO5B,CAAC;AAqBH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;EAgB/B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;mBAM1B,CAAC;AAEH,QAAA,MAAM,gBAAgB;;;;;EAAgD,CAAC;AAMvE,QAAA,MAAM,cAAc;;;;EAA4C,CAAC;AAEjE,QAAA,MAAM,oBAAoB;;;;;;;EAOxB,CAAC;AAwLH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAWxD,QAAA,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -304,6 +304,7 @@ const basePOMNodeSchema = z.object({
|
|
|
304
304
|
bottom: z.number().optional(),
|
|
305
305
|
left: z.number().optional(),
|
|
306
306
|
alignSelf: alignSelfSchema.optional(),
|
|
307
|
+
shadow: shadowStyleSchema.optional(),
|
|
307
308
|
});
|
|
308
309
|
// ===== Non-recursive Node Types =====
|
|
309
310
|
export const textNodeSchema = basePOMNodeSchema.extend({
|
|
@@ -372,7 +373,6 @@ export const imageNodeSchema = basePOMNodeSchema.extend({
|
|
|
372
373
|
type: z.literal("image"),
|
|
373
374
|
src: z.string(),
|
|
374
375
|
sizing: imageSizingSchema.optional(),
|
|
375
|
-
shadow: shadowStyleSchema.optional(),
|
|
376
376
|
});
|
|
377
377
|
const iconNameSchema = z.enum(Object.keys(ICON_DATA));
|
|
378
378
|
const iconColorSchema = z
|
|
@@ -429,7 +429,6 @@ export const shapeNodeSchema = basePOMNodeSchema.extend({
|
|
|
429
429
|
text: z.string().optional(),
|
|
430
430
|
fill: fillStyleSchema.optional(),
|
|
431
431
|
line: borderStyleSchema.optional(),
|
|
432
|
-
shadow: shadowStyleSchema.optional(),
|
|
433
432
|
fontSize: z.number().optional(),
|
|
434
433
|
color: z.string().optional(),
|
|
435
434
|
textAlign: z.enum(["left", "center", "right"]).optional(),
|
|
@@ -640,7 +639,6 @@ const vStackNodeSchemaBase = basePOMNodeSchema.extend({
|
|
|
640
639
|
gap: z.number().optional(),
|
|
641
640
|
alignItems: alignItemsSchema.optional(),
|
|
642
641
|
justifyContent: justifyContentSchema.optional(),
|
|
643
|
-
shadow: shadowStyleSchema.optional(),
|
|
644
642
|
flexWrap: flexWrapSchema.optional(),
|
|
645
643
|
});
|
|
646
644
|
const hStackNodeSchemaBase = basePOMNodeSchema.extend({
|
|
@@ -649,7 +647,6 @@ const hStackNodeSchemaBase = basePOMNodeSchema.extend({
|
|
|
649
647
|
gap: z.number().optional(),
|
|
650
648
|
alignItems: alignItemsSchema.optional(),
|
|
651
649
|
justifyContent: justifyContentSchema.optional(),
|
|
652
|
-
shadow: shadowStyleSchema.optional(),
|
|
653
650
|
flexWrap: flexWrapSchema.optional(),
|
|
654
651
|
});
|
|
655
652
|
const layerChildSchemaBase = z.lazy(() => pomNodeSchema.and(z.object({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hirokisakabe/pom",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.3",
|
|
4
4
|
"description": "AI-friendly PowerPoint generation with a Flexbox layout engine.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -22,7 +22,8 @@
|
|
|
22
22
|
},
|
|
23
23
|
"repository": {
|
|
24
24
|
"type": "git",
|
|
25
|
-
"url": "git+https://github.com/hirokisakabe/pom.git"
|
|
25
|
+
"url": "git+https://github.com/hirokisakabe/pom.git",
|
|
26
|
+
"directory": "packages/pom"
|
|
26
27
|
},
|
|
27
28
|
"license": "MIT",
|
|
28
29
|
"keywords": [
|
|
@@ -44,30 +45,22 @@
|
|
|
44
45
|
"access": "public"
|
|
45
46
|
},
|
|
46
47
|
"devDependencies": {
|
|
47
|
-
"@changesets/changelog-github": "^0.5.2",
|
|
48
|
-
"@changesets/cli": "^2.29.8",
|
|
49
|
-
"@eslint/js": "^9.39.1",
|
|
50
48
|
"@size-limit/file": "^12.0.1",
|
|
49
|
+
"@types/node": "^25.5.0",
|
|
51
50
|
"@types/opentype.js": "^1.3.8",
|
|
52
51
|
"@types/pngjs": "6.0.5",
|
|
53
52
|
"@vitest/coverage-v8": "^4.1.0",
|
|
54
53
|
"@vitest/ui": "^4.1.0",
|
|
55
|
-
"eslint": "^9.39.1",
|
|
56
|
-
"globals": "^16.5.0",
|
|
57
|
-
"jiti": "2.6.1",
|
|
58
54
|
"knip": "^5.85.0",
|
|
59
55
|
"lucide-static": "^0.577.0",
|
|
60
56
|
"pixelmatch": "7.1.0",
|
|
61
57
|
"pngjs": "7.0.0",
|
|
62
|
-
"prettier": "3.6.2",
|
|
63
58
|
"size-limit": "^12.0.1",
|
|
64
59
|
"tsx": "4.21.0",
|
|
65
|
-
"typescript": "
|
|
66
|
-
"typescript-eslint": "^8.47.0",
|
|
67
|
-
"vitest": "^4.1.0"
|
|
60
|
+
"typescript-eslint": "^8.47.0"
|
|
68
61
|
},
|
|
69
62
|
"dependencies": {
|
|
70
|
-
"@resvg/resvg-
|
|
63
|
+
"@resvg/resvg-wasm": "^2.6.2",
|
|
71
64
|
"fast-xml-parser": "^5.3.7",
|
|
72
65
|
"image-size": "2.0.2",
|
|
73
66
|
"opentype.js": "^1.3.4",
|
|
@@ -97,7 +90,6 @@
|
|
|
97
90
|
"docs:images:docker:update": "docker compose build docs-images && docker compose run --rm docs-images",
|
|
98
91
|
"docs:images:vrt": "tsx scripts/docs-images/generateNodeImages.ts --check",
|
|
99
92
|
"docs:images:vrt:docker": "docker compose build docs-images-vrt && docker compose run --rm docs-images-vrt",
|
|
100
|
-
"release": "changeset publish",
|
|
101
93
|
"size": "size-limit"
|
|
102
94
|
}
|
|
103
95
|
}
|