@danielsimonjr/mathts-plot 0.4.3 → 0.4.4
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.js +98 -18
- package/dist/render-file.d.ts +1 -0
- package/dist/render-file.d.ts.map +1 -1
- package/dist/svg.d.ts +13 -1
- package/dist/svg.d.ts.map +1 -1
- package/dist/three/project.d.ts +1 -0
- package/dist/three/project.d.ts.map +1 -1
- package/dist/tikz.d.ts.map +1 -1
- package/package.json +3 -2
package/dist/index.js
CHANGED
|
@@ -136,30 +136,101 @@ function fmt(n) {
|
|
|
136
136
|
return String(Math.round(n * 1e6) / 1e6);
|
|
137
137
|
}
|
|
138
138
|
var r2 = (n) => Math.round(n * 100) / 100;
|
|
139
|
+
var ATTR_ENTITIES = {
|
|
140
|
+
"&": "&",
|
|
141
|
+
"<": "<",
|
|
142
|
+
">": ">",
|
|
143
|
+
'"': """,
|
|
144
|
+
"'": "'"
|
|
145
|
+
};
|
|
146
|
+
function escAttr(v) {
|
|
147
|
+
return String(v).replace(/[&<>"']/g, (c) => ATTR_ENTITIES[c]);
|
|
148
|
+
}
|
|
149
|
+
function el(tag, attrs, body) {
|
|
150
|
+
let s = `<${tag}`;
|
|
151
|
+
for (const [name, value] of attrs) if (value !== void 0) s += ` ${name}="${escAttr(value)}"`;
|
|
152
|
+
return body === void 0 ? `${s}/>` : `${s}>${body}</${tag}>`;
|
|
153
|
+
}
|
|
154
|
+
var opacityAttr = (opacity) => opacity !== void 0 && opacity < 1 ? Math.round(opacity * 1e3) / 1e3 : void 0;
|
|
155
|
+
var points = (pts) => pts.map(([x, y]) => `${r2(x)},${r2(y)}`).join(" ");
|
|
139
156
|
function svgDoc(width, height, body, bg) {
|
|
140
|
-
return
|
|
157
|
+
return el(
|
|
158
|
+
"svg",
|
|
159
|
+
[
|
|
160
|
+
["xmlns", "http://www.w3.org/2000/svg"],
|
|
161
|
+
["viewBox", `0 0 ${width} ${height}`],
|
|
162
|
+
["width", "100%"],
|
|
163
|
+
["role", "img"]
|
|
164
|
+
],
|
|
165
|
+
el("rect", [
|
|
166
|
+
["x", 0],
|
|
167
|
+
["y", 0],
|
|
168
|
+
["width", width],
|
|
169
|
+
["height", height],
|
|
170
|
+
["fill", bg]
|
|
171
|
+
]) + body
|
|
172
|
+
);
|
|
141
173
|
}
|
|
142
174
|
function line(x1, y1, x2, y2, stroke, w = 1, opacity) {
|
|
143
|
-
|
|
144
|
-
|
|
175
|
+
return el("line", [
|
|
176
|
+
["x1", r2(x1)],
|
|
177
|
+
["y1", r2(y1)],
|
|
178
|
+
["x2", r2(x2)],
|
|
179
|
+
["y2", r2(y2)],
|
|
180
|
+
["stroke", stroke],
|
|
181
|
+
["stroke-width", w],
|
|
182
|
+
["stroke-opacity", opacityAttr(opacity)]
|
|
183
|
+
]);
|
|
145
184
|
}
|
|
146
185
|
function circle(cx, cy, r, fill, opacity) {
|
|
147
|
-
|
|
148
|
-
|
|
186
|
+
return el("circle", [
|
|
187
|
+
["cx", r2(cx)],
|
|
188
|
+
["cy", r2(cy)],
|
|
189
|
+
["r", r],
|
|
190
|
+
["fill", fill],
|
|
191
|
+
["fill-opacity", opacityAttr(opacity)]
|
|
192
|
+
]);
|
|
149
193
|
}
|
|
150
194
|
function rect(x, y, w, h, fill) {
|
|
151
|
-
return
|
|
195
|
+
return el("rect", [
|
|
196
|
+
["x", r2(x)],
|
|
197
|
+
["y", r2(y)],
|
|
198
|
+
["width", r2(w)],
|
|
199
|
+
["height", r2(h)],
|
|
200
|
+
["fill", fill]
|
|
201
|
+
]);
|
|
152
202
|
}
|
|
153
203
|
function polyline(pts, stroke, w = 2) {
|
|
154
|
-
|
|
155
|
-
|
|
204
|
+
return el("polyline", [
|
|
205
|
+
["points", points(pts)],
|
|
206
|
+
["fill", "none"],
|
|
207
|
+
["stroke", stroke],
|
|
208
|
+
["stroke-width", w]
|
|
209
|
+
]);
|
|
156
210
|
}
|
|
157
211
|
function polygon(pts, fill, stroke = "none") {
|
|
158
|
-
|
|
159
|
-
|
|
212
|
+
return el("polygon", [
|
|
213
|
+
["points", points(pts)],
|
|
214
|
+
["fill", fill],
|
|
215
|
+
["stroke", stroke]
|
|
216
|
+
]);
|
|
160
217
|
}
|
|
161
|
-
function text(x, y, s, fill, anchor = "start", size = 12) {
|
|
162
|
-
|
|
218
|
+
function text(x, y, s, fill, anchor = "start", size = 12, transform) {
|
|
219
|
+
const pos = transform === void 0 ? [
|
|
220
|
+
["x", r2(x)],
|
|
221
|
+
["y", r2(y)]
|
|
222
|
+
] : [["transform", transform]];
|
|
223
|
+
return el(
|
|
224
|
+
"text",
|
|
225
|
+
[
|
|
226
|
+
...pos,
|
|
227
|
+
["text-anchor", anchor],
|
|
228
|
+
["font-family", "system-ui,sans-serif"],
|
|
229
|
+
["font-size", size],
|
|
230
|
+
["fill", fill]
|
|
231
|
+
],
|
|
232
|
+
esc(s)
|
|
233
|
+
);
|
|
163
234
|
}
|
|
164
235
|
function primSVG(p) {
|
|
165
236
|
switch (p.k) {
|
|
@@ -174,7 +245,15 @@ function primSVG(p) {
|
|
|
174
245
|
case "polygon":
|
|
175
246
|
return polygon(p.pts, p.fill, p.stroke);
|
|
176
247
|
case "text":
|
|
177
|
-
return p.rotate !== void 0 ?
|
|
248
|
+
return p.rotate !== void 0 ? text(
|
|
249
|
+
p.x,
|
|
250
|
+
p.y,
|
|
251
|
+
p.s,
|
|
252
|
+
p.fill,
|
|
253
|
+
p.anchor,
|
|
254
|
+
p.size,
|
|
255
|
+
`translate(${p.x},${p.y}) rotate(${p.rotate})`
|
|
256
|
+
) : text(p.x, p.y, p.s, p.fill, p.anchor, p.size);
|
|
178
257
|
}
|
|
179
258
|
}
|
|
180
259
|
function emitSVG(scene) {
|
|
@@ -342,6 +421,7 @@ function texEsc(s) {
|
|
|
342
421
|
}
|
|
343
422
|
});
|
|
344
423
|
}
|
|
424
|
+
var TIKZ_COLOR_NAME = /^[A-Za-z][A-Za-z0-9!.]*$/;
|
|
345
425
|
function tikzColor(c) {
|
|
346
426
|
if (c === "none") return { color: "none", alpha: 1 };
|
|
347
427
|
if (c.startsWith("#")) {
|
|
@@ -352,7 +432,7 @@ function tikzColor(c) {
|
|
|
352
432
|
const alpha = h.length >= 8 ? Math.round(parseInt(h.slice(6, 8), 16) / 255 * 100) / 100 : 1;
|
|
353
433
|
return { color: `{rgb,255:red,${r};green,${g};blue,${b}}`, alpha };
|
|
354
434
|
}
|
|
355
|
-
return { color: c, alpha: 1 };
|
|
435
|
+
return { color: TIKZ_COLOR_NAME.test(c) ? c : "black", alpha: 1 };
|
|
356
436
|
}
|
|
357
437
|
var round = (n) => Math.round(n * 100) / 100;
|
|
358
438
|
var ANCHOR = {
|
|
@@ -736,13 +816,13 @@ function contour(z, opts = {}) {
|
|
|
736
816
|
// src/three/project.ts
|
|
737
817
|
function project(p, cam) {
|
|
738
818
|
const az = cam.azim * Math.PI / 180;
|
|
739
|
-
const
|
|
819
|
+
const el2 = cam.elev * Math.PI / 180;
|
|
740
820
|
const [x, y, z] = p;
|
|
741
821
|
const xa = x * Math.cos(az) - y * Math.sin(az);
|
|
742
822
|
const ya = x * Math.sin(az) + y * Math.cos(az);
|
|
743
823
|
const sx = xa;
|
|
744
|
-
const sy = z * Math.cos(
|
|
745
|
-
const depth = z * Math.sin(
|
|
824
|
+
const sy = z * Math.cos(el2) - ya * Math.sin(el2);
|
|
825
|
+
const depth = z * Math.sin(el2) + ya * Math.cos(el2);
|
|
746
826
|
return [sx, sy, depth];
|
|
747
827
|
}
|
|
748
828
|
|
|
@@ -1128,7 +1208,7 @@ function curve3d(x, y, z, opts = {}) {
|
|
|
1128
1208
|
}
|
|
1129
1209
|
|
|
1130
1210
|
// src/index.ts
|
|
1131
|
-
var VERSION = "0.4.
|
|
1211
|
+
var VERSION = "0.4.4";
|
|
1132
1212
|
export {
|
|
1133
1213
|
VERSION,
|
|
1134
1214
|
area,
|
package/dist/render-file.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export declare class PlotRenderError extends Error {
|
|
|
4
4
|
readonly missingTool?: string | undefined;
|
|
5
5
|
constructor(message: string, missingTool?: string | undefined);
|
|
6
6
|
}
|
|
7
|
+
/** Options for the file render bridge. `tool` selects one allowed external tool. `timeoutMs` limits each tool run (default 30 s for SVG conversion, 60 s for LaTeX). `density` and `background` apply only to PNG output from rsvg-convert. */
|
|
7
8
|
export interface RenderOptions {
|
|
8
9
|
tool?: string;
|
|
9
10
|
timeoutMs?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-file.d.ts","sourceRoot":"","sources":["../src/render-file.ts"],"names":[],"mappings":"AAWA;gFACgF;AAChF,qBAAa,eAAgB,SAAQ,KAAK;IAGtC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM;IAF/B,YACE,OAAO,EAAE,MAAM,EACN,WAAW,CAAC,EAAE,MAAM,YAAA,EAI9B;CACF;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAID;+DAC+D;AAC/D,wBAAgB,OAAO,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,OAAO,CAAC,SAAS,CAAC,CAuBpB;AAED,oEAAoE;AACpE,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO5D;AAED;;kFAEkF;AAClF,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,aAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CA2Df;AAED;iEACiE;AACjE,wBAAgB,SAAS,
|
|
1
|
+
{"version":3,"file":"render-file.d.ts","sourceRoot":"","sources":["../src/render-file.ts"],"names":[],"mappings":"AAWA;gFACgF;AAChF,qBAAa,eAAgB,SAAQ,KAAK;IAGtC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM;IAF/B,YACE,OAAO,EAAE,MAAM,EACN,WAAW,CAAC,EAAE,MAAM,YAAA,EAI9B;CACF;AAED,+OAA+O;AAC/O,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAID;+DAC+D;AAC/D,wBAAgB,OAAO,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,OAAO,CAAC,SAAS,CAAC,CAuBpB;AAED,oEAAoE;AACpE,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO5D;AAED;;kFAEkF;AAClF,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,aAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CA2Df;AAED;iEACiE;AACjE,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAcpF;AAED;;kFAEkF;AAClF,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,aAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CAwCf"}
|
package/dist/svg.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Scene } from './scene.js';
|
|
2
|
+
/** Color scheme for SVG chart output: foreground, muted, grid, axis and background colors, and an ordered list of data-series colors. */
|
|
2
3
|
export interface Theme {
|
|
3
4
|
fg: string;
|
|
4
5
|
muted: string;
|
|
@@ -8,15 +9,26 @@ export interface Theme {
|
|
|
8
9
|
series: string[];
|
|
9
10
|
}
|
|
10
11
|
export declare const THEMES: Record<'light' | 'dark', Theme>;
|
|
12
|
+
/** Replace `&`, `<` and `>` in a string with their XML entities. Quote characters stay unchanged, so use the result as element text only. Attribute values go through `escAttr`. */
|
|
11
13
|
export declare function esc(s: string): string;
|
|
14
|
+
/** Format a number as a tick label. A non-finite value gives an empty string. A non-zero value with magnitude below 1e-3 or at or above 1e6 uses exponential notation with two decimals. Other values are rounded to six decimal places. */
|
|
12
15
|
export declare function fmt(n: number): string;
|
|
16
|
+
/** Escape a value for use inside a quoted XML attribute. Replaces `&`, `<`, `>`, `"` and `'` with entities. A number is converted with `String` first, so a value typed `number` but passed as a string at run time cannot end the attribute. */
|
|
17
|
+
export declare function escAttr(v: string | number): string;
|
|
18
|
+
/** Wrap SVG body markup in a complete `<svg>` document of the given size, with a full-size background rectangle and the `img` ARIA role. Every attribute value is escaped with `escAttr`. */
|
|
13
19
|
export declare function svgDoc(width: number, height: number, body: string, bg: string): string;
|
|
20
|
+
/** Make an SVG `<line>` element between two points. Coordinates are rounded to two decimals. The `stroke-opacity` attribute is added only when the opacity is below 1. Every attribute value is escaped with `escAttr`. */
|
|
14
21
|
export declare function line(x1: number, y1: number, x2: number, y2: number, stroke: string, w?: number, opacity?: number): string;
|
|
22
|
+
/** Make an SVG `<circle>` element. The `fill-opacity` attribute is added only when the opacity is below 1. Every attribute value is escaped with `escAttr`. */
|
|
15
23
|
export declare function circle(cx: number, cy: number, r: number, fill: string, opacity?: number): string;
|
|
24
|
+
/** Make a filled SVG `<rect>` element. Position and size are rounded to two decimals. Every attribute value is escaped with `escAttr`. */
|
|
16
25
|
export declare function rect(x: number, y: number, w: number, h: number, fill: string): string;
|
|
26
|
+
/** Make an SVG `<polyline>` element with no fill from a list of [x, y] points. Every attribute value is escaped with `escAttr`. */
|
|
17
27
|
export declare function polyline(pts: Array<[number, number]>, stroke: string, w?: number): string;
|
|
28
|
+
/** Make an SVG `<polygon>` element from a list of [x, y] vertices. The stroke is `none` by default. Every attribute value is escaped with `escAttr`. */
|
|
18
29
|
export declare function polygon(pts: Array<[number, number]>, fill: string, stroke?: string): string;
|
|
19
|
-
|
|
30
|
+
/** Make an SVG `<text>` element. The text content is escaped with `esc`, and every attribute value with `escAttr`. When `transform` is given it replaces the `x`/`y` attributes. */
|
|
31
|
+
export declare function text(x: number, y: number, s: string, fill: string, anchor?: string, size?: number, transform?: string): string;
|
|
20
32
|
/** Serialize a Scene to a self-contained SVG string (reuses the exported builders). */
|
|
21
33
|
export declare function emitSVG(scene: Scene): string;
|
|
22
34
|
//# sourceMappingURL=svg.d.ts.map
|
package/dist/svg.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svg.d.ts","sourceRoot":"","sources":["../src/svg.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAQ,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAaD,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,EAAE,KAAK,CAiBlD,CAAC;AAEF,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAErC;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAKrC;
|
|
1
|
+
{"version":3,"file":"svg.d.ts","sourceRoot":"","sources":["../src/svg.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAQ,MAAM,YAAY,CAAC;AAE9C,yIAAyI;AACzI,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAaD,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,EAAE,KAAK,CAiBlD,CAAC;AAEF,oLAAoL;AACpL,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAErC;AAED,4OAA4O;AAC5O,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAKrC;AAYD,iPAAiP;AACjP,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAElD;AAwBD,6LAA6L;AAC7L,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAiBtF;AAED,2NAA2N;AAC3N,wBAAgB,IAAI,CAClB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,CAAC,SAAI,EACL,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAUR;AACD,+JAA+J;AAC/J,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAQhG;AACD,0IAA0I;AAC1I,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAQrF;AACD,mIAAmI;AACnI,wBAAgB,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,SAAI,GAAG,MAAM,CAOpF;AACD,wJAAwJ;AACxJ,wBAAgB,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,SAAS,GAAG,MAAM,CAM3F;AACD,oLAAoL;AACpL,wBAAgB,IAAI,CAClB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EACZ,MAAM,SAAU,EAChB,IAAI,SAAK,EACT,SAAS,CAAC,EAAE,MAAM,GACjB,MAAM,CAmBR;AA+BD,uFAAuF;AACvF,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAE5C"}
|
package/dist/three/project.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/three/project.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAY1F"}
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/three/project.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAY1F"}
|
package/dist/tikz.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tikz.d.ts","sourceRoot":"","sources":["../src/tikz.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAQ,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;2DAC2D;AAC3D,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAaxC;
|
|
1
|
+
{"version":3,"file":"tikz.d.ts","sourceRoot":"","sources":["../src/tikz.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAQ,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;2DAC2D;AAC3D,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAaxC;AAsED,gGAAgG;AAChG,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,GAAE,WAAgB,GAAG,MAAM,CAYrE"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@danielsimonjr/mathts-plot",
|
|
3
|
-
"version": "0.4.
|
|
4
|
-
"description": "Headless SVG 2D/3D plotting for MathTS
|
|
3
|
+
"version": "0.4.4",
|
|
4
|
+
"description": "Headless SVG 2D/3D plotting for MathTS — dependency-light, expression-aware, built on core/functions/expression",
|
|
5
5
|
"author": "Daniel Simon Jr.",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"type": "module",
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/node": "^26.4.0",
|
|
43
|
+
"@xmldom/xmldom": "^0.9.12",
|
|
43
44
|
"tsup": "^8.0.0",
|
|
44
45
|
"typescript": "^7.0.2",
|
|
45
46
|
"vitest": "^5.0.0"
|