@sliiu/present-renderer 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/COPYRIGHT +5 -0
- package/LICENSE +661 -0
- package/THIRD-PARTY-NOTICES.md +221 -0
- package/dist/cjs/arrow-geom.js +38 -0
- package/dist/cjs/canvas-backend.js +1368 -0
- package/dist/cjs/cell-borders.js +25 -0
- package/dist/cjs/chart-canvas.js +1059 -0
- package/dist/cjs/chart-ex-render.js +275 -0
- package/dist/cjs/chart-geom.js +313 -0
- package/dist/cjs/chart-svg.js +1110 -0
- package/dist/cjs/compose.js +74 -0
- package/dist/cjs/effect-clip.js +652 -0
- package/dist/cjs/entrance-hide.js +63 -0
- package/dist/cjs/font-stack.js +103 -0
- package/dist/cjs/hit-geom.js +50 -0
- package/dist/cjs/hybrid-backend.js +93 -0
- package/dist/cjs/hybrid-segments.js +54 -0
- package/dist/cjs/index.js +70 -0
- package/dist/cjs/linked-src.js +116 -0
- package/dist/cjs/metafile-preview.js +142 -0
- package/dist/cjs/model3d-frame.js +199 -0
- package/dist/cjs/model3d-render.js +78 -0
- package/dist/cjs/morph-transition.js +57 -0
- package/dist/cjs/node-affine.js +79 -0
- package/dist/cjs/ole-render.js +291 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/paint-canvas.js +701 -0
- package/dist/cjs/paint-svg.js +674 -0
- package/dist/cjs/scene-node.js +762 -0
- package/dist/cjs/selection.js +130 -0
- package/dist/cjs/shape-effects.js +66 -0
- package/dist/cjs/shape-front.js +38 -0
- package/dist/cjs/stage-chrome.js +15 -0
- package/dist/cjs/svg-backend.js +2172 -0
- package/dist/cjs/text-autofit.js +48 -0
- package/dist/cjs/text-hit.js +284 -0
- package/dist/cjs/text-layout.js +408 -0
- package/dist/cjs/text-shared.js +238 -0
- package/dist/cjs/text-stacked.js +82 -0
- package/dist/cjs/text-warp.js +377 -0
- package/dist/cjs/text-wordart.js +33 -0
- package/dist/cjs/video-frame.js +113 -0
- package/dist/cjs/webgl-model3d-backend.js +285 -0
- package/dist/cjs/webgl-shape-backend.js +360 -0
- package/dist/esm/arrow-geom.js +33 -0
- package/dist/esm/canvas-backend.js +1363 -0
- package/dist/esm/cell-borders.js +21 -0
- package/dist/esm/chart-canvas.js +1056 -0
- package/dist/esm/chart-ex-render.js +261 -0
- package/dist/esm/chart-geom.js +296 -0
- package/dist/esm/chart-svg.js +1107 -0
- package/dist/esm/compose.js +71 -0
- package/dist/esm/effect-clip.js +648 -0
- package/dist/esm/entrance-hide.js +59 -0
- package/dist/esm/font-stack.js +100 -0
- package/dist/esm/hit-geom.js +45 -0
- package/dist/esm/hybrid-backend.js +89 -0
- package/dist/esm/hybrid-segments.js +51 -0
- package/dist/esm/index.js +24 -0
- package/dist/esm/linked-src.js +109 -0
- package/dist/esm/metafile-preview.js +135 -0
- package/dist/esm/model3d-frame.js +158 -0
- package/dist/esm/model3d-render.js +73 -0
- package/dist/esm/morph-transition.js +54 -0
- package/dist/esm/node-affine.js +71 -0
- package/dist/esm/ole-render.js +286 -0
- package/dist/esm/paint-canvas.js +693 -0
- package/dist/esm/paint-svg.js +670 -0
- package/dist/esm/scene-node.js +750 -0
- package/dist/esm/selection.js +122 -0
- package/dist/esm/shape-effects.js +60 -0
- package/dist/esm/shape-front.js +35 -0
- package/dist/esm/stage-chrome.js +12 -0
- package/dist/esm/svg-backend.js +2168 -0
- package/dist/esm/text-autofit.js +44 -0
- package/dist/esm/text-hit.js +280 -0
- package/dist/esm/text-layout.js +400 -0
- package/dist/esm/text-shared.js +221 -0
- package/dist/esm/text-stacked.js +78 -0
- package/dist/esm/text-warp.js +371 -0
- package/dist/esm/text-wordart.js +30 -0
- package/dist/esm/video-frame.js +109 -0
- package/dist/esm/webgl-model3d-backend.js +248 -0
- package/dist/esm/webgl-shape-backend.js +323 -0
- package/dist/types/arrow-geom.d.ts +10 -0
- package/dist/types/canvas-backend.d.ts +55 -0
- package/dist/types/cell-borders.d.ts +9 -0
- package/dist/types/chart-canvas.d.ts +2 -0
- package/dist/types/chart-ex-render.d.ts +79 -0
- package/dist/types/chart-geom.d.ts +112 -0
- package/dist/types/chart-svg.d.ts +2 -0
- package/dist/types/compose.d.ts +2 -0
- package/dist/types/effect-clip.d.ts +10 -0
- package/dist/types/entrance-hide.d.ts +16 -0
- package/dist/types/font-stack.d.ts +9 -0
- package/dist/types/hit-geom.d.ts +15 -0
- package/dist/types/hybrid-backend.d.ts +21 -0
- package/dist/types/hybrid-segments.d.ts +11 -0
- package/dist/types/index.d.ts +24 -0
- package/dist/types/linked-src.d.ts +13 -0
- package/dist/types/metafile-preview.d.ts +11 -0
- package/dist/types/model3d-frame.d.ts +8 -0
- package/dist/types/model3d-render.d.ts +4 -0
- package/dist/types/morph-transition.d.ts +15 -0
- package/dist/types/node-affine.d.ts +22 -0
- package/dist/types/ole-render.d.ts +7 -0
- package/dist/types/paint-canvas.d.ts +22 -0
- package/dist/types/paint-svg.d.ts +19 -0
- package/dist/types/scene-node.d.ts +128 -0
- package/dist/types/selection.d.ts +22 -0
- package/dist/types/shape-effects.d.ts +13 -0
- package/dist/types/shape-front.d.ts +4 -0
- package/dist/types/stage-chrome.d.ts +8 -0
- package/dist/types/svg-backend.d.ts +88 -0
- package/dist/types/text-autofit.d.ts +7 -0
- package/dist/types/text-hit.d.ts +7 -0
- package/dist/types/text-layout.d.ts +35 -0
- package/dist/types/text-shared.d.ts +86 -0
- package/dist/types/text-stacked.d.ts +11 -0
- package/dist/types/text-warp.d.ts +37 -0
- package/dist/types/text-wordart.d.ts +18 -0
- package/dist/types/video-frame.d.ts +2 -0
- package/dist/types/webgl-model3d-backend.d.ts +25 -0
- package/dist/types/webgl-shape-backend.d.ts +33 -0
- package/package.json +33 -4
- package/README.md +0 -3
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
# 第三方许可证
|
|
2
|
+
|
|
3
|
+
公开包自有代码的版权人是 Sliiu Inc,使用 AGPL-3.0-or-later,全文是同目录的 `AGPL-3.0.txt`。版权行见 `COPYRIGHT`。下面这些库不是 SlimPPT 写的,许可证保持原样。版本是整理这份声明时锁文件里的版本。
|
|
4
|
+
|
|
5
|
+
各依赖包自带的 `LICENSE` 随 npm 安装保留。这里记下标识,以及不能被商业授权盖住的那几份。
|
|
6
|
+
|
|
7
|
+
## 不能并进商业授权
|
|
8
|
+
|
|
9
|
+
`mtx-decompressor@1.6.0`(`@ppt/parser`)是 MPL-2.0,作者 ChristopherVR。全文是 `MPL-2.0.txt`。只约束这个库的文件,可以和闭源程序放在一起,不能改成专有许可。
|
|
10
|
+
|
|
11
|
+
`@ffmpeg/ffmpeg@0.12.15` 和 `@ffmpeg/util@0.12.2` 是 MIT,作者 Jerome Wu。编辑器在 `packages/editor/src/video-export.ts` 里另从 `https://unpkg.com/@ffmpeg/core@0.12.6/dist/esm` 加载内核。`0.12.6` 的 npm 元数据写着 MIT。该 WebAssembly 的构建串包含 libx264、libx265 和 libmp3lame,实际是 GPL-2.0-or-later。GPL-2.0 全文是 `GPL-2.0.txt`;“or later” 也可以选用 GNU GPL 3.0。商业授权不含这段内核。
|
|
12
|
+
|
|
13
|
+
## Apache-2.0
|
|
14
|
+
|
|
15
|
+
全文是 `Apache-2.0.txt`。可以放进 AGPL 程序,文件本身仍是 Apache-2.0。
|
|
16
|
+
|
|
17
|
+
| 包 | 版本 | 版权声明 |
|
|
18
|
+
|---|---|---|
|
|
19
|
+
| `ai`、`@ai-sdk/anthropic`、`@ai-sdk/google`、`@ai-sdk/mcp`、`@ai-sdk/openai`、`@ai-sdk/openai-compatible`,以及它们带上的 `@ai-sdk/gateway`、`@ai-sdk/provider`、`@ai-sdk/provider-utils`、`@vercel/oidc` | 见附录 | Copyright 2023 Vercel, Inc. |
|
|
20
|
+
| `@paddleocr/paddleocr-js` | 0.4.2 | PaddlePaddle Authors |
|
|
21
|
+
| `@techstark/opencv-js` | 4.10.0-release.1 | Apache-2.0 |
|
|
22
|
+
| `tesseract.js`、`tesseract.js-core` | 7.0.0 | Apache-2.0 |
|
|
23
|
+
| `emf-converter` | 4.8.0 | ChristopherVR |
|
|
24
|
+
|
|
25
|
+
## 字体
|
|
26
|
+
|
|
27
|
+
`katex@0.18.9` 的代码是 MIT,Copyright (c) 2013-2020 Khan Academy and other contributors。随包的字体文件是 SIL OFL 1.1,全文是 `OFL-1.1.txt`。字体不能改许可,可以随软件分发;用这些字体排出来的幻灯片不因此变成 OFL。
|
|
28
|
+
|
|
29
|
+
主题只引用 Google Fonts 的 CSS,字体文件不打进包。
|
|
30
|
+
|
|
31
|
+
网站壳自带的那份字体许可证是另一份 OFL,不进公开包。
|
|
32
|
+
|
|
33
|
+
## 其余直接依赖
|
|
34
|
+
|
|
35
|
+
| 包 | 版本 | 许可证 | 版权声明 |
|
|
36
|
+
|---|---|---|---|
|
|
37
|
+
| `fast-xml-parser` | 5.11.1 | MIT | Copyright (c) 2017 Amit Kumar Gupta |
|
|
38
|
+
| `fflate` | 0.8.3 | MIT | Copyright (c) 2026 Arjun Barrett |
|
|
39
|
+
| `three` | 0.186.0 | MIT | Copyright © 2010-2026 three.js authors |
|
|
40
|
+
| `zod` | 4.6.5 | MIT | Copyright (c) 2025 Colin McDonnell |
|
|
41
|
+
| `@modelcontextprotocol/sdk` | 1.30.1 | MIT | Copyright (c) 2024 Anthropic, PBC |
|
|
42
|
+
| `lucide` | 1.48.0 | ISC | Copyright (c) 2026 Lucide Icons and Contributors。其中来自 Feather 的图标另为 MIT,Copyright (c) 2013-present Cole Bemis |
|
|
43
|
+
| `clipper-lib` | 6.4.2 | Boost-1.0 | Copyright Angus Johnson 2010-2017。使用、修改和分发遵循 Boost Software License 1.0 |
|
|
44
|
+
| `js-yaml` | 4.3.2 | MIT | Copyright (C) 2011-2015 by Vitaly Puzrin |
|
|
45
|
+
| `onnxruntime-web`、`onnxruntime-common` | 1.30.0 | MIT | 版权声明以包内 LICENSE 为准 |
|
|
46
|
+
|
|
47
|
+
`@modelcontextprotocol/sdk` 会带上 `express`、`hono` 这些服务端库。它们随 `@ppt/ai` 安装,许可证见附录,不因此把网关算进公开包。
|
|
48
|
+
|
|
49
|
+
`json-schema@0.4.0` 是 AFL-2.1 或 BSD-3-Clause。这里取 BSD-3-Clause。
|
|
50
|
+
|
|
51
|
+
## 不在这份声明里
|
|
52
|
+
|
|
53
|
+
网关及其依赖、`tests/pptx-viewer` 依赖的 `pptx-react-viewer`(Apache-2.0)、构建工具(`lightningcss`、`sharp`、`axe-core`、Sentry 命令行)。这些不进公开包。
|
|
54
|
+
|
|
55
|
+
## 附录:公开包生产依赖
|
|
56
|
+
|
|
57
|
+
`animation`、`core`、`parser`、`serializer`、`three-bake`、`renderer`、`transition-fx`、`plugin-sdk`、`themes`、`ui`、`player`、`editor`、`ai` 的生产依赖,含传递依赖。不含 `@ppt/*` 自身,不含上面那份另行加载的 `@ffmpeg/core`。
|
|
58
|
+
|
|
59
|
+
| 包 | 版本 | 许可证 |
|
|
60
|
+
|---|---|---|
|
|
61
|
+
| `@ai-sdk/anthropic` | 4.0.62 | `Apache-2.0` |
|
|
62
|
+
| `@ai-sdk/gateway` | 4.0.91 | `Apache-2.0` |
|
|
63
|
+
| `@ai-sdk/google` | 4.0.79 | `Apache-2.0` |
|
|
64
|
+
| `@ai-sdk/mcp` | 2.0.57 | `Apache-2.0` |
|
|
65
|
+
| `@ai-sdk/openai` | 4.0.74 | `Apache-2.0` |
|
|
66
|
+
| `@ai-sdk/openai-compatible` | 3.0.55 | `Apache-2.0` |
|
|
67
|
+
| `@ai-sdk/provider` | 4.0.18 | `Apache-2.0` |
|
|
68
|
+
| `@ai-sdk/provider-utils` | 5.0.47 | `Apache-2.0` |
|
|
69
|
+
| `@exodus/bytes` | 1.16.0 | `MIT` |
|
|
70
|
+
| `@ffmpeg/ffmpeg` | 0.12.15 | `MIT` |
|
|
71
|
+
| `@ffmpeg/types` | 0.12.4 | `MIT` |
|
|
72
|
+
| `@ffmpeg/util` | 0.12.2 | `MIT` |
|
|
73
|
+
| `@hono/node-server` | 2.1.1 | `MIT` |
|
|
74
|
+
| `@modelcontextprotocol/sdk` | 1.30.1 | `MIT` |
|
|
75
|
+
| `@nodable/entities` | 3.0.0 | `MIT` |
|
|
76
|
+
| `@paddleocr/paddleocr-js` | 0.4.2 | `Apache-2.0` |
|
|
77
|
+
| `@protobufjs/aspromise` | 1.1.2 | `BSD-3-Clause` |
|
|
78
|
+
| `@protobufjs/base64` | 1.1.2 | `BSD-3-Clause` |
|
|
79
|
+
| `@protobufjs/codegen` | 2.0.5 | `BSD-3-Clause` |
|
|
80
|
+
| `@protobufjs/eventemitter` | 1.1.1 | `BSD-3-Clause` |
|
|
81
|
+
| `@protobufjs/fetch` | 1.1.1 | `BSD-3-Clause` |
|
|
82
|
+
| `@protobufjs/float` | 1.0.2 | `BSD-3-Clause` |
|
|
83
|
+
| `@protobufjs/path` | 1.1.2 | `BSD-3-Clause` |
|
|
84
|
+
| `@protobufjs/pool` | 1.1.0 | `BSD-3-Clause` |
|
|
85
|
+
| `@protobufjs/utf8` | 1.1.2 | `BSD-3-Clause` |
|
|
86
|
+
| `@standard-schema/spec` | 1.1.0 | `MIT` |
|
|
87
|
+
| `@techstark/opencv-js` | 4.10.0-release.1 | `Apache-2.0` |
|
|
88
|
+
| `@types/node` | 26.6.2 | `MIT` |
|
|
89
|
+
| `@vercel/oidc` | 3.2.0 | `Apache-2.0` |
|
|
90
|
+
| `@workflow/serde` | 4.1.0 | `Apache-2.0` |
|
|
91
|
+
| `accepts` | 2.0.0 | `MIT` |
|
|
92
|
+
| `ai` | 7.0.113 | `Apache-2.0` |
|
|
93
|
+
| `ajv` | 8.20.0 | `MIT` |
|
|
94
|
+
| `ajv-formats` | 3.0.1 | `MIT` |
|
|
95
|
+
| `anynum` | 1.0.1 | `MIT` |
|
|
96
|
+
| `argparse` | 2.0.1 | `Python-2.0` |
|
|
97
|
+
| `bmp-js` | 0.1.0 | `MIT` |
|
|
98
|
+
| `body-parser` | 2.3.0 | `MIT` |
|
|
99
|
+
| `bytes` | 3.1.2 | `MIT` |
|
|
100
|
+
| `call-bind-apply-helpers` | 1.0.2 | `MIT` |
|
|
101
|
+
| `call-bound` | 1.0.4 | `MIT` |
|
|
102
|
+
| `clipper-lib` | 6.4.2 | `BSL`(Boost-1.0) |
|
|
103
|
+
| `commander` | 15.0.0 | `MIT` |
|
|
104
|
+
| `content-disposition` | 1.1.0 | `MIT` |
|
|
105
|
+
| `content-type` | 1.0.5 | `MIT` |
|
|
106
|
+
| `cookie` | 1.1.1 | `MIT` |
|
|
107
|
+
| `cookie-signature` | 1.2.2 | `MIT` |
|
|
108
|
+
| `cors` | 2.8.6 | `MIT` |
|
|
109
|
+
| `cross-spawn` | 7.0.6 | `MIT` |
|
|
110
|
+
| `debug` | 4.4.3 | `MIT` |
|
|
111
|
+
| `depd` | 2.0.0 | `MIT` |
|
|
112
|
+
| `dunder-proto` | 1.0.1 | `MIT` |
|
|
113
|
+
| `ee-first` | 1.1.1 | `MIT` |
|
|
114
|
+
| `emf-converter` | 4.8.0 | `Apache-2.0` |
|
|
115
|
+
| `encodeurl` | 2.0.0 | `MIT` |
|
|
116
|
+
| `es-define-property` | 1.0.1 | `MIT` |
|
|
117
|
+
| `es-errors` | 1.3.0 | `MIT` |
|
|
118
|
+
| `es-object-atoms` | 1.1.2 | `MIT` |
|
|
119
|
+
| `escape-html` | 1.0.3 | `MIT` |
|
|
120
|
+
| `etag` | 1.8.1 | `MIT` |
|
|
121
|
+
| `eventsource` | 3.0.7 | `MIT` |
|
|
122
|
+
| `eventsource-parser` | 3.1.1 | `MIT` |
|
|
123
|
+
| `express` | 5.2.1 | `MIT` |
|
|
124
|
+
| `express-rate-limit` | 8.7.0 | `MIT` |
|
|
125
|
+
| `fast-deep-equal` | 3.1.3 | `MIT` |
|
|
126
|
+
| `fast-uri` | 3.1.8 | `BSD-3-Clause` |
|
|
127
|
+
| `fast-xml-builder` | 1.3.1 | `MIT` |
|
|
128
|
+
| `fast-xml-parser` | 5.11.1 | `MIT` |
|
|
129
|
+
| `fflate` | 0.8.3 | `MIT` |
|
|
130
|
+
| `finalhandler` | 2.1.1 | `MIT` |
|
|
131
|
+
| `flatbuffers` | 25.9.23 | `Apache-2.0` |
|
|
132
|
+
| `forwarded` | 0.2.0 | `MIT` |
|
|
133
|
+
| `fresh` | 2.0.0 | `MIT` |
|
|
134
|
+
| `function-bind` | 1.1.2 | `MIT` |
|
|
135
|
+
| `get-intrinsic` | 1.3.0 | `MIT` |
|
|
136
|
+
| `get-proto` | 1.0.1 | `MIT` |
|
|
137
|
+
| `gopd` | 1.2.0 | `MIT` |
|
|
138
|
+
| `guid-typescript` | 1.0.9 | `ISC` |
|
|
139
|
+
| `has-symbols` | 1.1.0 | `MIT` |
|
|
140
|
+
| `hasown` | 2.0.4 | `MIT` |
|
|
141
|
+
| `hono` | 4.13.9 | `MIT` |
|
|
142
|
+
| `http-errors` | 2.0.1 | `MIT` |
|
|
143
|
+
| `iconv-lite` | 0.7.3 | `MIT` |
|
|
144
|
+
| `idb-keyval` | 6.3.0 | `Apache-2.0` |
|
|
145
|
+
| `inherits` | 2.0.4 | `ISC` |
|
|
146
|
+
| `ip-address` | 10.7.2 | `MIT` |
|
|
147
|
+
| `ipaddr.js` | 1.9.1 | `MIT` |
|
|
148
|
+
| `is-promise` | 4.0.0 | `MIT` |
|
|
149
|
+
| `is-unsafe` | 2.0.2 | `MIT` |
|
|
150
|
+
| `is-url` | 1.2.4 | `MIT` |
|
|
151
|
+
| `isexe` | 2.0.0 | `ISC` |
|
|
152
|
+
| `jose` | 6.2.12 | `MIT` |
|
|
153
|
+
| `js-yaml` | 4.3.2 | `MIT` |
|
|
154
|
+
| `json-schema` | 0.4.0 | `BSD-3-Clause`(双许可,取这一支) |
|
|
155
|
+
| `json-schema-traverse` | 1.0.0 | `MIT` |
|
|
156
|
+
| `json-schema-typed` | 8.0.2 | `BSD-2-Clause` |
|
|
157
|
+
| `katex` | 0.18.9 | `MIT` |
|
|
158
|
+
| `long` | 5.3.2 | `Apache-2.0` |
|
|
159
|
+
| `lucide` | 1.48.0 | `ISC` |
|
|
160
|
+
| `math-intrinsics` | 1.1.0 | `MIT` |
|
|
161
|
+
| `media-typer` | 1.1.1 | `MIT` |
|
|
162
|
+
| `merge-descriptors` | 2.0.0 | `MIT` |
|
|
163
|
+
| `mime-db` | 1.54.0 | `MIT` |
|
|
164
|
+
| `mime-types` | 3.0.2 | `MIT` |
|
|
165
|
+
| `ms` | 2.1.3 | `MIT` |
|
|
166
|
+
| `mtx-decompressor` | 1.6.0 | `MPL-2.0` |
|
|
167
|
+
| `negotiator` | 1.1.0 | `MIT` |
|
|
168
|
+
| `node-fetch` | 2.7.0 | `MIT` |
|
|
169
|
+
| `object-assign` | 4.1.1 | `MIT` |
|
|
170
|
+
| `object-inspect` | 1.13.4 | `MIT` |
|
|
171
|
+
| `on-finished` | 2.4.1 | `MIT` |
|
|
172
|
+
| `once` | 1.4.0 | `ISC` |
|
|
173
|
+
| `onnxruntime-common` | 1.30.0 | `MIT` |
|
|
174
|
+
| `onnxruntime-web` | 1.30.0 | `MIT` |
|
|
175
|
+
| `opencollective-postinstall` | 2.0.3 | `MIT` |
|
|
176
|
+
| `parseurl` | 1.3.3 | `MIT` |
|
|
177
|
+
| `path-expression-matcher` | 1.6.2 | `MIT` |
|
|
178
|
+
| `path-key` | 3.1.1 | `MIT` |
|
|
179
|
+
| `path-to-regexp` | 8.4.2 | `MIT` |
|
|
180
|
+
| `pkce-challenge` | 5.0.1 | `MIT` |
|
|
181
|
+
| `platform` | 1.3.6 | `MIT` |
|
|
182
|
+
| `protobufjs` | 7.6.6 | `BSD-3-Clause` |
|
|
183
|
+
| `proxy-addr` | 2.0.8 | `MIT` |
|
|
184
|
+
| `punycode` | 2.3.1 | `MIT` |
|
|
185
|
+
| `qs` | 6.16.0 | `BSD-3-Clause` |
|
|
186
|
+
| `range-parser` | 1.3.0 | `MIT` |
|
|
187
|
+
| `raw-body` | 3.0.2 | `MIT` |
|
|
188
|
+
| `regenerator-runtime` | 0.13.11 | `MIT` |
|
|
189
|
+
| `require-from-string` | 2.0.2 | `MIT` |
|
|
190
|
+
| `router` | 2.2.0 | `MIT` |
|
|
191
|
+
| `safer-buffer` | 2.1.2 | `MIT` |
|
|
192
|
+
| `send` | 1.2.1 | `MIT` |
|
|
193
|
+
| `serve-static` | 2.2.1 | `MIT` |
|
|
194
|
+
| `setprototypeof` | 1.2.0 | `ISC` |
|
|
195
|
+
| `shebang-command` | 2.0.0 | `MIT` |
|
|
196
|
+
| `shebang-regex` | 3.0.0 | `MIT` |
|
|
197
|
+
| `side-channel` | 1.1.1 | `MIT` |
|
|
198
|
+
| `side-channel-list` | 1.0.1 | `MIT` |
|
|
199
|
+
| `side-channel-map` | 1.0.1 | `MIT` |
|
|
200
|
+
| `side-channel-weakmap` | 1.0.2 | `MIT` |
|
|
201
|
+
| `statuses` | 2.0.2 | `MIT` |
|
|
202
|
+
| `strnum` | 2.4.2 | `MIT` |
|
|
203
|
+
| `tesseract.js` | 7.0.0 | `Apache-2.0` |
|
|
204
|
+
| `tesseract.js-core` | 7.0.0 | `Apache-2.0` |
|
|
205
|
+
| `three` | 0.186.0 | `MIT` |
|
|
206
|
+
| `toidentifier` | 1.0.1 | `MIT` |
|
|
207
|
+
| `tr46` | 6.0.0 | `MIT` |
|
|
208
|
+
| `type-is` | 2.1.0 | `MIT` |
|
|
209
|
+
| `undici` | 7.29.0 | `MIT` |
|
|
210
|
+
| `undici-types` | 8.9.0 | `MIT` |
|
|
211
|
+
| `unpipe` | 1.0.0 | `MIT` |
|
|
212
|
+
| `vary` | 1.1.2 | `MIT` |
|
|
213
|
+
| `wasm-feature-detect` | 1.9.0 | `Apache-2.0` |
|
|
214
|
+
| `webidl-conversions` | 8.0.1 | `BSD-2-Clause` |
|
|
215
|
+
| `whatwg-url` | 17.1.2 | `MIT` |
|
|
216
|
+
| `which` | 2.0.2 | `ISC` |
|
|
217
|
+
| `wrappy` | 1.0.2 | `ISC` |
|
|
218
|
+
| `xml-naming` | 0.3.0 | `MIT` |
|
|
219
|
+
| `zlibjs` | 0.3.1 | `MIT` |
|
|
220
|
+
| `zod` | 4.6.5 | `MIT` |
|
|
221
|
+
| `zod-to-json-schema` | 3.25.2 | `ISC` |
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.arrowSize = arrowSize;
|
|
4
|
+
exports.arrowPathD = arrowPathD;
|
|
5
|
+
exports.arrowRefX = arrowRefX;
|
|
6
|
+
// 线端箭头(headEnd / tailEnd)的几何,SVG 与 Canvas 两个 backend 共用,保证导出一致。
|
|
7
|
+
// 尺寸单位为 strokeWidth 的倍数(与 SVG markerUnits="strokeWidth" 一致)。
|
|
8
|
+
function arrowSize(spec) {
|
|
9
|
+
const wMap = { sm: 3, med: 5, lg: 8 };
|
|
10
|
+
const lMap = { sm: 3, med: 5, lg: 8 };
|
|
11
|
+
return { w: wMap[spec.w ?? "med"], l: lMap[spec.len ?? "med"] };
|
|
12
|
+
}
|
|
13
|
+
function arrowPathD(kind, w, l, side) {
|
|
14
|
+
if (kind === "oval") {
|
|
15
|
+
return `M 0 ${-w / 2} a ${l / 2} ${w / 2} 0 1 0 0 ${w} a ${l / 2} ${w / 2} 0 1 0 0 ${-w} z`;
|
|
16
|
+
}
|
|
17
|
+
if (kind === "diamond") {
|
|
18
|
+
return `M 0 0 L ${l / 2} ${-w / 2} L ${l} 0 L ${l / 2} ${w / 2} Z`;
|
|
19
|
+
}
|
|
20
|
+
if (kind === "stealth") {
|
|
21
|
+
return side === "end"
|
|
22
|
+
? `M 0 ${-w / 2} L ${l} 0 L 0 ${w / 2} L ${l * 0.3} 0 Z`
|
|
23
|
+
: `M ${l} ${-w / 2} L 0 0 L ${l} ${w / 2} L ${l * 0.7} 0 Z`;
|
|
24
|
+
}
|
|
25
|
+
return side === "end"
|
|
26
|
+
? `M 0 ${-w / 2} L ${l} 0 L 0 ${w / 2} Z`
|
|
27
|
+
: `M ${l} ${-w / 2} L 0 0 L ${l} ${w / 2} Z`;
|
|
28
|
+
}
|
|
29
|
+
// PowerPoint / WPS 约定下,三角 / 隐身箭头的"基底"锚定在线端点,"尖端"向外延伸;
|
|
30
|
+
// 圆 / 菱形等中心对称形状骑跨在线端点上(中心 = 端点)。orient="auto" 让 +X 沿线方向,
|
|
31
|
+
// 因此 end 侧 refX=0(基底在端点、尖端向 +X 外延),start 侧 path 已镜像、refX=l。
|
|
32
|
+
function arrowRefX(kind, side, l) {
|
|
33
|
+
if (kind === "oval")
|
|
34
|
+
return 0;
|
|
35
|
+
if (kind === "diamond")
|
|
36
|
+
return l / 2;
|
|
37
|
+
return side === "end" ? 0 : l;
|
|
38
|
+
}
|