abstract-image 13.0.13 → 13.0.15

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.
@@ -1,3 +1,10 @@
1
1
  import { AbstractImage } from "../model/abstract-image.js";
2
- export declare function createSVG(image: AbstractImage, pixelWidth?: number, pixelHeight?: number): string;
2
+ import { Optional } from "../model/shared.js";
3
+ export declare const SVG_DATA_URL = "data:image/svg+xml,";
4
+ export type SvgOptions = {
5
+ readonly pixelWidth: number;
6
+ readonly pixelHeight: number;
7
+ readonly imageDataByUrl: Record<string, `data:image/${string},${string}`>;
8
+ };
9
+ export declare function createSVG(image: AbstractImage, options?: Optional<SvgOptions>): string;
3
10
  //# sourceMappingURL=svg-export-image.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"svg-export-image.d.ts","sourceRoot":"","sources":["../../src/exporters/svg-export-image.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAG3D,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAajG"}
1
+ {"version":3,"file":"svg-export-image.d.ts","sourceRoot":"","sources":["../../src/exporters/svg-export-image.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,eAAO,MAAM,YAAY,wBAAwB,CAAC;AAElD,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;CAC3E,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,MAAM,CAkBtF"}
@@ -1,21 +1,27 @@
1
1
  import { fromByteArray } from "base64-js";
2
- export function createSVG(image, pixelWidth, pixelHeight) {
3
- const imageElements = image.components.map((c) => abstractComponentToSVG(c));
2
+ export const SVG_DATA_URL = "data:image/svg+xml,";
3
+ export function createSVG(image, options) {
4
+ const opts = {
5
+ imageDataByUrl: options?.imageDataByUrl ?? {},
6
+ pixelWidth: options?.pixelWidth || image.size.width,
7
+ pixelHeight: options?.pixelHeight || image.size.height,
8
+ };
9
+ const imageElements = image.components.map((c) => abstractComponentToSVG(c, opts));
4
10
  return createElement("svg", {
5
11
  xmlns: "http://www.w3.org/2000/svg",
6
- width: `${pixelWidth || image.size.width}px`,
7
- height: `${pixelHeight || image.size.height}px`,
12
+ width: `${opts.pixelWidth}px`,
13
+ height: `${opts.pixelHeight}px`,
8
14
  viewBox: [0, 0, image.size.width, image.size.height].join(" "),
9
15
  }, imageElements);
10
16
  }
11
- function abstractComponentToSVG(component) {
17
+ function abstractComponentToSVG(component, options) {
12
18
  switch (component.type) {
13
19
  case "group":
14
20
  return createElement("g", {
15
21
  name: component.name,
16
- }, component.children.map((c) => abstractComponentToSVG(c)));
22
+ }, component.children.map((c) => abstractComponentToSVG(c, options)));
17
23
  case "binaryimage":
18
- const url = getImageUrl(component.format, component.data);
24
+ const url = getImageUrl(component.format, component.data, options);
19
25
  return url
20
26
  ? createElement("image", {
21
27
  x: component.topLeft.x.toString(),
@@ -263,9 +269,9 @@ function colorToRgb(color) {
263
269
  function colorToOpacity(color) {
264
270
  return (color.a / 255).toString();
265
271
  }
266
- function getImageUrl(format, data) {
272
+ function getImageUrl(format, data, options) {
267
273
  if (data.type === "url") {
268
- return data.url;
274
+ return options.imageDataByUrl[data.url] ?? data.url;
269
275
  }
270
276
  else if (format === "png") {
271
277
  const base64 = fromByteArray(data.bytes);
@@ -1 +1 @@
1
- {"version":3,"file":"svg-export-image.js","sourceRoot":"","sources":["../../src/exporters/svg-export-image.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"svg-export-image.js","sourceRoot":"","sources":["../../src/exporters/svg-export-image.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "abstract-image",
3
- "version": "13.0.13",
3
+ "version": "13.0.15",
4
4
  "description": "Dynamically create images using code or JSX and render to any format",
5
5
  "repository": "https://github.com/dividab/abstract-visuals/tree/master/packages/abstract-image",
6
6
  "main": "lib/index.js",
@@ -27,7 +27,7 @@
27
27
  "handlebars": "4.7.8",
28
28
  "handlebars-xml": "^0.4.3",
29
29
  "iconv-lite": "^0.7.2",
30
- "jsxpression": "^0.1.16"
30
+ "jsxpression": "^0.1.17"
31
31
  },
32
32
  "peerDependencies": {
33
33
  "react": ">=17.0.0 <20.0.0"
@@ -39,5 +39,5 @@
39
39
  "vite": "^6.0.1",
40
40
  "vitest": "^2.1.6"
41
41
  },
42
- "gitHead": "4acbc3d839e9cfff1b761342a6fda68c7297943d"
42
+ "gitHead": "e2f6fc3bce909bb135e4e5709f88b76b56399279"
43
43
  }
@@ -3,6 +3,7 @@ import { AbstractImage } from "../model/abstract-image.js";
3
3
  import { generateDataSchema } from "./utils.js";
4
4
  import { createComponents } from "./components.js";
5
5
  import { baseSchema } from "./schema.js";
6
+ import { FunctionSchema } from "../../../jsxpression/src/schema.js";
6
7
 
7
8
  export type DynamicImageResult =
8
9
  | { readonly type: "Ok"; readonly image: AbstractImage; readonly imageUrls: ReadonlyArray<string> }
@@ -17,14 +18,17 @@ export type DynamicImageError = {
17
18
  export function dynamicImage(
18
19
  source: string,
19
20
  data: Record<string, unknown>,
20
- dataSchema?: Record<string, PropertySchema>
21
+ dataSchema?: Record<string, PropertySchema>,
22
+ functions?: Record<string, Function>,
23
+ funcSchema?: Record<string, FunctionSchema>
21
24
  ): DynamicImageResult {
22
25
  try {
23
26
  const imageUrls = Array<string>();
24
- const schema: Schema = dataSchema ? { ...baseSchema, data: dataSchema } : baseSchema;
27
+ const schema: Schema = dataSchema ? { ...baseSchema, data: dataSchema, functions: funcSchema } : baseSchema;
25
28
 
26
29
  const image = render<AbstractImage>(source, schema, {
27
30
  data,
31
+ functions,
28
32
  components: createComponents(imageUrls),
29
33
  });
30
34
 
@@ -44,6 +48,7 @@ export type CompileDynamicImageResult =
44
48
  export function compileDynamicImage(
45
49
  source: string,
46
50
  dataSchema?: Record<string, PropertySchema>,
51
+ functionSchema?: Record<string, FunctionSchema>,
47
52
  tempSkipValidation?: boolean | undefined
48
53
  ): CompileDynamicImageResult {
49
54
  try {
@@ -51,7 +56,7 @@ export function compileDynamicImage(
51
56
  type: "Ok",
52
57
  value: compile(
53
58
  source,
54
- dataSchema ? { ...baseSchema, data: dataSchema } : baseSchema,
59
+ dataSchema ? { ...baseSchema, data: dataSchema, functions: functionSchema } : baseSchema,
55
60
  undefined,
56
61
  tempSkipValidation
57
62
  ),
@@ -64,12 +69,12 @@ export function compileDynamicImage(
64
69
  }
65
70
  }
66
71
 
67
- export function renderDynamicImage(jsString: string, data: Record<string, unknown>): DynamicImageResult {
72
+ export function renderDynamicImage(jsString: string, data: Record<string, unknown>, functions?: Record<string, Function>): DynamicImageResult {
68
73
  const imageUrls = Array<string>();
69
74
  try {
70
75
  return {
71
76
  type: "Ok",
72
- image: evaluate(jsString, baseSchema, { data, components: createComponents(imageUrls) }) as AbstractImage,
77
+ image: evaluate(jsString, baseSchema, { data, functions, components: createComponents(imageUrls) }) as AbstractImage,
73
78
  imageUrls,
74
79
  };
75
80
  } catch (error) {