@meonode/canvas 1.0.0-beta.1

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.
Files changed (65) hide show
  1. package/CONTRIBUTING.md +75 -0
  2. package/LICENSE +21 -0
  3. package/Readme.md +382 -0
  4. package/dist/cjs/canvas/canvas.helper.d.ts +57 -0
  5. package/dist/cjs/canvas/canvas.helper.d.ts.map +1 -0
  6. package/dist/cjs/canvas/canvas.helper.js +239 -0
  7. package/dist/cjs/canvas/canvas.helper.js.map +1 -0
  8. package/dist/cjs/canvas/canvas.type.d.ts +657 -0
  9. package/dist/cjs/canvas/canvas.type.d.ts.map +1 -0
  10. package/dist/cjs/canvas/grid.canvas.util.d.ts +39 -0
  11. package/dist/cjs/canvas/grid.canvas.util.d.ts.map +1 -0
  12. package/dist/cjs/canvas/grid.canvas.util.js +263 -0
  13. package/dist/cjs/canvas/grid.canvas.util.js.map +1 -0
  14. package/dist/cjs/canvas/image.canvas.util.d.ts +34 -0
  15. package/dist/cjs/canvas/image.canvas.util.d.ts.map +1 -0
  16. package/dist/cjs/canvas/image.canvas.util.js +310 -0
  17. package/dist/cjs/canvas/image.canvas.util.js.map +1 -0
  18. package/dist/cjs/canvas/layout.canvas.util.d.ts +123 -0
  19. package/dist/cjs/canvas/layout.canvas.util.d.ts.map +1 -0
  20. package/dist/cjs/canvas/layout.canvas.util.js +785 -0
  21. package/dist/cjs/canvas/layout.canvas.util.js.map +1 -0
  22. package/dist/cjs/canvas/root.canvas.util.d.ts +42 -0
  23. package/dist/cjs/canvas/root.canvas.util.d.ts.map +1 -0
  24. package/dist/cjs/canvas/root.canvas.util.js +140 -0
  25. package/dist/cjs/canvas/root.canvas.util.js.map +1 -0
  26. package/dist/cjs/canvas/text.canvas.util.d.ts +148 -0
  27. package/dist/cjs/canvas/text.canvas.util.d.ts.map +1 -0
  28. package/dist/cjs/canvas/text.canvas.util.js +1112 -0
  29. package/dist/cjs/canvas/text.canvas.util.js.map +1 -0
  30. package/dist/cjs/constant/common.const.d.ts +37 -0
  31. package/dist/cjs/constant/common.const.d.ts.map +1 -0
  32. package/dist/cjs/constant/common.const.js +51 -0
  33. package/dist/cjs/constant/common.const.js.map +1 -0
  34. package/dist/cjs/index.d.ts +7 -0
  35. package/dist/cjs/index.d.ts.map +1 -0
  36. package/dist/cjs/index.js +31 -0
  37. package/dist/cjs/index.js.map +1 -0
  38. package/dist/esm/canvas/canvas.helper.d.ts +57 -0
  39. package/dist/esm/canvas/canvas.helper.d.ts.map +1 -0
  40. package/dist/esm/canvas/canvas.helper.js +214 -0
  41. package/dist/esm/canvas/canvas.type.d.ts +657 -0
  42. package/dist/esm/canvas/canvas.type.d.ts.map +1 -0
  43. package/dist/esm/canvas/grid.canvas.util.d.ts +39 -0
  44. package/dist/esm/canvas/grid.canvas.util.d.ts.map +1 -0
  45. package/dist/esm/canvas/grid.canvas.util.js +259 -0
  46. package/dist/esm/canvas/image.canvas.util.d.ts +34 -0
  47. package/dist/esm/canvas/image.canvas.util.d.ts.map +1 -0
  48. package/dist/esm/canvas/image.canvas.util.js +306 -0
  49. package/dist/esm/canvas/layout.canvas.util.d.ts +123 -0
  50. package/dist/esm/canvas/layout.canvas.util.d.ts.map +1 -0
  51. package/dist/esm/canvas/layout.canvas.util.js +777 -0
  52. package/dist/esm/canvas/root.canvas.util.d.ts +42 -0
  53. package/dist/esm/canvas/root.canvas.util.d.ts.map +1 -0
  54. package/dist/esm/canvas/root.canvas.util.js +116 -0
  55. package/dist/esm/canvas/text.canvas.util.d.ts +148 -0
  56. package/dist/esm/canvas/text.canvas.util.d.ts.map +1 -0
  57. package/dist/esm/canvas/text.canvas.util.js +1108 -0
  58. package/dist/esm/constant/common.const.d.ts +37 -0
  59. package/dist/esm/constant/common.const.d.ts.map +1 -0
  60. package/dist/esm/constant/common.const.js +23 -0
  61. package/dist/esm/index.d.ts +7 -0
  62. package/dist/esm/index.d.ts.map +1 -0
  63. package/dist/esm/index.js +7 -0
  64. package/dist/meonode-canvas-1.0.0-beta.1.tgz +0 -0
  65. package/package.json +79 -0
@@ -0,0 +1,37 @@
1
+ import Yoga, * as All from 'yoga-layout';
2
+ /**
3
+ * Style constants extending Yoga layout engine with additional border styles
4
+ */
5
+ export declare enum Border {
6
+ Solid = 0,
7
+ Dashed = 1,
8
+ Dotted = 2
9
+ }
10
+ /**
11
+ * Consolidated Style object combining Yoga layout constants and custom border styles
12
+ */
13
+ export declare const Style: {
14
+ Border: typeof Border;
15
+ default: import("node_modules/yoga-layout/dist/src/wrapAssembly.js").Yoga;
16
+ Align: typeof All.Align;
17
+ BoxSizing: typeof All.BoxSizing;
18
+ Dimension: typeof All.Dimension;
19
+ Direction: typeof All.Direction;
20
+ Display: typeof All.Display;
21
+ Edge: typeof All.Edge;
22
+ Errata: typeof All.Errata;
23
+ ExperimentalFeature: typeof All.ExperimentalFeature;
24
+ FlexDirection: typeof All.FlexDirection;
25
+ Gutter: typeof All.Gutter;
26
+ Justify: typeof All.Justify;
27
+ LogLevel: typeof All.LogLevel;
28
+ MeasureMode: typeof All.MeasureMode;
29
+ NodeType: typeof All.NodeType;
30
+ Overflow: typeof All.Overflow;
31
+ PositionType: typeof All.PositionType;
32
+ Unit: typeof All.Unit;
33
+ Wrap: typeof All.Wrap;
34
+ };
35
+ export * from 'yoga-layout';
36
+ export default Yoga;
37
+ //# sourceMappingURL=common.const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.const.d.ts","sourceRoot":"","sources":["../../../src/constant/common.const.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,KAAK,GAAG,MAAM,aAAa,CAAA;AAExC;;GAEG;AACH,oBAAY,MAAM;IAChB,KAAK,IAAA;IACL,MAAM,IAAA;IACN,MAAM,IAAA;CACP;AAED;;GAEG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;CAGjB,CAAA;AAED,cAAc,aAAa,CAAA;AAC3B,eAAe,IAAI,CAAA"}
@@ -0,0 +1,23 @@
1
+ import * as YogaTypes from 'yoga-layout';
2
+ import YogaTypes__default from 'yoga-layout';
3
+ export * from 'yoga-layout';
4
+ export { default } from 'yoga-layout';
5
+
6
+ /**
7
+ * Style constants extending Yoga layout engine with additional border styles
8
+ */
9
+ var Border;
10
+ (function (Border) {
11
+ Border[Border["Solid"] = 0] = "Solid";
12
+ Border[Border["Dashed"] = 1] = "Dashed";
13
+ Border[Border["Dotted"] = 2] = "Dotted";
14
+ })(Border || (Border = {}));
15
+ /**
16
+ * Consolidated Style object combining Yoga layout constants and custom border styles
17
+ */
18
+ const Style = {
19
+ ...YogaTypes,
20
+ Border,
21
+ };
22
+
23
+ export { Border, Style };
@@ -0,0 +1,7 @@
1
+ export * from './constant/common.const.js';
2
+ export { Box, Column, Row, type BoxNode } from './canvas/layout.canvas.util.js';
3
+ export { Image } from './canvas/image.canvas.util.js';
4
+ export { Text } from './canvas/text.canvas.util.js';
5
+ export { Root } from './canvas/root.canvas.util.js';
6
+ export { Grid } from './canvas/grid.canvas.util.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAC/E,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA"}
@@ -0,0 +1,7 @@
1
+ export { Border, Style } from './constant/common.const.js';
2
+ export { Box, Column, Row } from './canvas/layout.canvas.util.js';
3
+ export { Image } from './canvas/image.canvas.util.js';
4
+ export { Text } from './canvas/text.canvas.util.js';
5
+ export { Root } from './canvas/root.canvas.util.js';
6
+ export { Grid } from './canvas/grid.canvas.util.js';
7
+ export * from 'yoga-layout';
package/package.json ADDED
@@ -0,0 +1,79 @@
1
+ {
2
+ "name": "@meonode/canvas",
3
+ "version": "1.0.0-beta.1",
4
+ "description": "A declarative, component-based library for generating high-quality images on a canvas, inspired by the MeoNode UI library for React. It leverages skia-canvas for rendering and yoga-layout for flexible, CSS-like layouts.",
5
+ "license": "MIT",
6
+ "author": "Ukasyah Rahmatullah Zada",
7
+ "publishConfig": {
8
+ "access": "public"
9
+ },
10
+ "type": "module",
11
+ "main": "./dist/cjs/index.js",
12
+ "module": "./dist/esm/index.js",
13
+ "types": "./dist/esm/index.d.ts",
14
+ "exports": {
15
+ ".": {
16
+ "import": "./dist/esm/index.js",
17
+ "require": "./dist/cjs/index.js"
18
+ }
19
+ },
20
+ "scripts": {
21
+ "build": "rm -rf ./dist && rollup -c --bundleConfigAsCjs && tsc-alias -p tsconfig.esm.json && tsc-alias -p tsconfig.cjs.json",
22
+ "test": "node --experimental-vm-modules $(yarn bin jest)",
23
+ "lint": "eslint . --ext .ts,.tsx,.js,.jsx,.mjs",
24
+ "format": "prettier --write .",
25
+ "prepare": "husky"
26
+ },
27
+ "devDependencies": {
28
+ "@rollup/plugin-alias": "^6.0.0",
29
+ "@rollup/plugin-commonjs": "^29.0.0",
30
+ "@rollup/plugin-node-resolve": "^16.0.3",
31
+ "@rollup/plugin-typescript": "^12.3.0",
32
+ "@semantic-release/commit-analyzer": "^13.0.1",
33
+ "@semantic-release/gitlab": "^13.2.9",
34
+ "@semantic-release/npm": "^13.1.1",
35
+ "@semantic-release/release-notes-generator": "^14.1.0",
36
+ "@types/jest": "^30.0.0",
37
+ "@types/lodash-es": "^4.17.12",
38
+ "@types/module-alias": "^2.0.4",
39
+ "@types/sharp": "^0.32.0",
40
+ "@types/skia-canvas": "^0.9.28",
41
+ "@types/tinycolor2": "^1.4.6",
42
+ "@types/yoga-layout": "^3.1.0",
43
+ "@typescript-eslint/eslint-plugin": "^8.46.3",
44
+ "@typescript-eslint/parser": "^8.46.3",
45
+ "eslint": "^9.39.1",
46
+ "eslint-config-prettier": "^10.1.8",
47
+ "eslint-plugin-import": "^2.32.0",
48
+ "eslint-plugin-prettier": "^5.5.4",
49
+ "eslint-plugin-unused-imports": "^4.3.0",
50
+ "husky": "^9.1.7",
51
+ "jest": "^30.2.0",
52
+ "meocord": "^1.0.14",
53
+ "prettier": "^3.6.2",
54
+ "rollup": "^4.53.1",
55
+ "rollup-plugin-tsconfig-paths": "^1.5.2",
56
+ "semantic-release": "^25.0.2",
57
+ "ts-jest": "^29.4.5",
58
+ "tsc-alias": "^1.8.16",
59
+ "typescript": "^5.9.3",
60
+ "typescript-eslint": "^8.46.3"
61
+ },
62
+ "packageManager": "yarn@4.11.0",
63
+ "dependencies": {
64
+ "file-type": "^21.0.0",
65
+ "lodash-es": "^4.17.21",
66
+ "module-alias": "^2.2.3",
67
+ "skia-canvas": "^3.0.8",
68
+ "tinycolor2": "^1.6.0",
69
+ "tslib": "^2.8.1",
70
+ "yoga-layout": "^3.2.1"
71
+ },
72
+ "files": [
73
+ "dist",
74
+ "package.json",
75
+ "LICENSE",
76
+ "README.md",
77
+ "CONTRIBUTING.md"
78
+ ]
79
+ }