@nasser-sw/fabric 7.0.1-beta3 → 7.0.1-beta4

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 (105) hide show
  1. package/0 +0 -0
  2. package/dist/index.js +323 -155
  3. package/dist/index.js.map +1 -1
  4. package/dist/index.min.js +1 -1
  5. package/dist/index.min.js.map +1 -1
  6. package/dist/index.min.mjs +1 -1
  7. package/dist/index.min.mjs.map +1 -1
  8. package/dist/index.mjs +323 -155
  9. package/dist/index.mjs.map +1 -1
  10. package/dist/index.node.cjs +323 -155
  11. package/dist/index.node.cjs.map +1 -1
  12. package/dist/index.node.mjs +323 -155
  13. package/dist/index.node.mjs.map +1 -1
  14. package/dist/package.json.min.mjs +1 -1
  15. package/dist/package.json.mjs +1 -1
  16. package/dist/src/shapes/Line.d.ts +31 -86
  17. package/dist/src/shapes/Line.d.ts.map +1 -1
  18. package/dist/src/shapes/Line.min.mjs +1 -1
  19. package/dist/src/shapes/Line.min.mjs.map +1 -1
  20. package/dist/src/shapes/Line.mjs +323 -154
  21. package/dist/src/shapes/Line.mjs.map +1 -1
  22. package/dist-extensions/src/shapes/CustomLine.d.ts +10 -0
  23. package/dist-extensions/src/shapes/CustomLine.d.ts.map +1 -0
  24. package/dist-extensions/src/shapes/Line.d.ts +31 -86
  25. package/dist-extensions/src/shapes/Line.d.ts.map +1 -1
  26. package/fabric-test-editor.html +157 -8
  27. package/fabric-test2.html +513 -0
  28. package/fabric.ts +182 -182
  29. package/package.json +1 -1
  30. package/src/shapes/Line.ts +372 -158
  31. package/debug/konva/CHANGELOG.md +0 -1474
  32. package/debug/konva/LICENSE +0 -22
  33. package/debug/konva/README.md +0 -205
  34. package/debug/konva/gulpfile.mjs +0 -110
  35. package/debug/konva/package.json +0 -139
  36. package/debug/konva/release.sh +0 -65
  37. package/debug/konva/resources/doc-includes/ContainerParams.txt +0 -6
  38. package/debug/konva/resources/doc-includes/NodeParams.txt +0 -20
  39. package/debug/konva/resources/doc-includes/ShapeParams.txt +0 -53
  40. package/debug/konva/resources/jsdoc.conf.json +0 -28
  41. package/debug/konva/rollup.config.mjs +0 -32
  42. package/debug/konva/src/Animation.ts +0 -237
  43. package/debug/konva/src/BezierFunctions.ts +0 -826
  44. package/debug/konva/src/Canvas.ts +0 -193
  45. package/debug/konva/src/Container.ts +0 -649
  46. package/debug/konva/src/Context.ts +0 -1017
  47. package/debug/konva/src/Core.ts +0 -5
  48. package/debug/konva/src/DragAndDrop.ts +0 -173
  49. package/debug/konva/src/Factory.ts +0 -246
  50. package/debug/konva/src/FastLayer.ts +0 -29
  51. package/debug/konva/src/Global.ts +0 -210
  52. package/debug/konva/src/Group.ts +0 -31
  53. package/debug/konva/src/Layer.ts +0 -546
  54. package/debug/konva/src/Node.ts +0 -3477
  55. package/debug/konva/src/PointerEvents.ts +0 -67
  56. package/debug/konva/src/Shape.ts +0 -2081
  57. package/debug/konva/src/Stage.ts +0 -1000
  58. package/debug/konva/src/Tween.ts +0 -811
  59. package/debug/konva/src/Util.ts +0 -1123
  60. package/debug/konva/src/Validators.ts +0 -210
  61. package/debug/konva/src/_CoreInternals.ts +0 -85
  62. package/debug/konva/src/_FullInternals.ts +0 -171
  63. package/debug/konva/src/canvas-backend.ts +0 -36
  64. package/debug/konva/src/filters/Blur.ts +0 -388
  65. package/debug/konva/src/filters/Brighten.ts +0 -48
  66. package/debug/konva/src/filters/Brightness.ts +0 -30
  67. package/debug/konva/src/filters/Contrast.ts +0 -75
  68. package/debug/konva/src/filters/Emboss.ts +0 -207
  69. package/debug/konva/src/filters/Enhance.ts +0 -154
  70. package/debug/konva/src/filters/Grayscale.ts +0 -25
  71. package/debug/konva/src/filters/HSL.ts +0 -108
  72. package/debug/konva/src/filters/HSV.ts +0 -106
  73. package/debug/konva/src/filters/Invert.ts +0 -23
  74. package/debug/konva/src/filters/Kaleidoscope.ts +0 -274
  75. package/debug/konva/src/filters/Mask.ts +0 -220
  76. package/debug/konva/src/filters/Noise.ts +0 -44
  77. package/debug/konva/src/filters/Pixelate.ts +0 -107
  78. package/debug/konva/src/filters/Posterize.ts +0 -46
  79. package/debug/konva/src/filters/RGB.ts +0 -82
  80. package/debug/konva/src/filters/RGBA.ts +0 -103
  81. package/debug/konva/src/filters/Sepia.ts +0 -27
  82. package/debug/konva/src/filters/Solarize.ts +0 -29
  83. package/debug/konva/src/filters/Threshold.ts +0 -44
  84. package/debug/konva/src/index.ts +0 -3
  85. package/debug/konva/src/shapes/Arc.ts +0 -176
  86. package/debug/konva/src/shapes/Arrow.ts +0 -231
  87. package/debug/konva/src/shapes/Circle.ts +0 -76
  88. package/debug/konva/src/shapes/Ellipse.ts +0 -121
  89. package/debug/konva/src/shapes/Image.ts +0 -319
  90. package/debug/konva/src/shapes/Label.ts +0 -386
  91. package/debug/konva/src/shapes/Line.ts +0 -364
  92. package/debug/konva/src/shapes/Path.ts +0 -1013
  93. package/debug/konva/src/shapes/Rect.ts +0 -79
  94. package/debug/konva/src/shapes/RegularPolygon.ts +0 -167
  95. package/debug/konva/src/shapes/Ring.ts +0 -94
  96. package/debug/konva/src/shapes/Sprite.ts +0 -370
  97. package/debug/konva/src/shapes/Star.ts +0 -125
  98. package/debug/konva/src/shapes/Text.ts +0 -1065
  99. package/debug/konva/src/shapes/TextPath.ts +0 -583
  100. package/debug/konva/src/shapes/Transformer.ts +0 -1889
  101. package/debug/konva/src/shapes/Wedge.ts +0 -129
  102. package/debug/konva/src/skia-backend.ts +0 -35
  103. package/debug/konva/src/types.ts +0 -84
  104. package/debug/konva/tsconfig.json +0 -31
  105. package/debug/konva/tsconfig.test.json +0 -7
@@ -1,129 +0,0 @@
1
- import { Factory } from '../Factory.ts';
2
- import type { Context } from '../Context.ts';
3
- import type { ShapeConfig } from '../Shape.ts';
4
- import { Shape } from '../Shape.ts';
5
- import { Konva } from '../Global.ts';
6
- import { getNumberValidator } from '../Validators.ts';
7
- import { _registerNode } from '../Global.ts';
8
-
9
- import type { GetSet } from '../types.ts';
10
-
11
- export interface WedgeConfig extends ShapeConfig {
12
- angle: number;
13
- radius: number;
14
- clockwise?: boolean;
15
- }
16
-
17
- /**
18
- * Wedge constructor
19
- * @constructor
20
- * @memberof Konva
21
- * @augments Konva.Shape
22
- * @param {Object} config
23
- * @param {Number} config.angle in degrees
24
- * @param {Number} config.radius
25
- * @param {Boolean} [config.clockwise]
26
- * @@shapeParams
27
- * @@nodeParams
28
- * @example
29
- * // draw a wedge that's pointing downwards
30
- * var wedge = new Konva.Wedge({
31
- * radius: 40,
32
- * fill: 'red',
33
- * stroke: 'black'
34
- * strokeWidth: 5,
35
- * angleDeg: 60,
36
- * rotationDeg: -120
37
- * });
38
- */
39
- export class Wedge extends Shape<WedgeConfig> {
40
- _sceneFunc(context: Context) {
41
- context.beginPath();
42
- context.arc(
43
- 0,
44
- 0,
45
- this.radius(),
46
- 0,
47
- Konva.getAngle(this.angle()),
48
- this.clockwise()
49
- );
50
- context.lineTo(0, 0);
51
- context.closePath();
52
- context.fillStrokeShape(this);
53
- }
54
- getWidth() {
55
- return this.radius() * 2;
56
- }
57
- getHeight() {
58
- return this.radius() * 2;
59
- }
60
- setWidth(width: number) {
61
- this.radius(width / 2);
62
- }
63
- setHeight(height: number) {
64
- this.radius(height / 2);
65
- }
66
-
67
- radius: GetSet<number, this>;
68
- angle: GetSet<number, this>;
69
- clockwise: GetSet<boolean, this>;
70
- }
71
-
72
- Wedge.prototype.className = 'Wedge';
73
- Wedge.prototype._centroid = true;
74
- Wedge.prototype._attrsAffectingSize = ['radius'];
75
- _registerNode(Wedge);
76
-
77
- /**
78
- * get/set radius
79
- * @name Konva.Wedge#radius
80
- * @method
81
- * @param {Number} radius
82
- * @returns {Number}
83
- * @example
84
- * // get radius
85
- * var radius = wedge.radius();
86
- *
87
- * // set radius
88
- * wedge.radius(10);
89
- */
90
- Factory.addGetterSetter(Wedge, 'radius', 0, getNumberValidator());
91
-
92
- /**
93
- * get/set angle in degrees
94
- * @name Konva.Wedge#angle
95
- * @method
96
- * @param {Number} angle
97
- * @returns {Number}
98
- * @example
99
- * // get angle
100
- * var angle = wedge.angle();
101
- *
102
- * // set angle
103
- * wedge.angle(20);
104
- */
105
- Factory.addGetterSetter(Wedge, 'angle', 0, getNumberValidator());
106
-
107
- /**
108
- * get/set clockwise flag
109
- * @name Konva.Wedge#clockwise
110
- * @method
111
- * @param {Number} clockwise
112
- * @returns {Number}
113
- * @example
114
- * // get clockwise flag
115
- * var clockwise = wedge.clockwise();
116
- *
117
- * // draw wedge counter-clockwise
118
- * wedge.clockwise(false);
119
- *
120
- * // draw wedge clockwise
121
- * wedge.clockwise(true);
122
- */
123
- Factory.addGetterSetter(Wedge, 'clockwise', false);
124
-
125
- Factory.backCompat(Wedge, {
126
- angleDeg: 'angle',
127
- getAngleDeg: 'getAngle',
128
- setAngleDeg: 'setAngle',
129
- });
@@ -1,35 +0,0 @@
1
- import { Konva } from './_CoreInternals.ts';
2
- // @ts-ignore
3
- import { Canvas, DOMMatrix, Image, Path2D } from 'skia-canvas';
4
-
5
- global.DOMMatrix = DOMMatrix as any;
6
-
7
- global.Path2D = Path2D as any;
8
- Path2D.prototype.toString = () => '[object Path2D]';
9
-
10
- Konva.Util['createCanvasElement'] = () => {
11
- const node = new Canvas(300, 300) as any;
12
- if (!node['style']) {
13
- node['style'] = {};
14
- }
15
- node.toString = () => '[object HTMLCanvasElement]';
16
- const ctx = node.getContext('2d');
17
- // Override the getter to return the canvas node directly
18
- // because in skia-canvas canvas is using weak ref to the canvas node
19
- // and somehow on many tests it fails to get the canvas node
20
- Object.defineProperty(ctx, 'canvas', {
21
- get: () => node,
22
- });
23
- return node;
24
- };
25
-
26
- // create image in Node env
27
- Konva.Util.createImageElement = () => {
28
- const node = new Image() as any;
29
- node.toString = () => '[object HTMLImageElement]';
30
- return node;
31
- };
32
-
33
- Konva._renderBackend = 'skia-canvas';
34
-
35
- export default Konva;
@@ -1,84 +0,0 @@
1
- export interface GetSet<Type, This> {
2
- (): Type;
3
- (v: Type | null | undefined): This;
4
- }
5
-
6
- export interface Vector2d {
7
- x: number;
8
- y: number;
9
- }
10
-
11
- export interface PathSegment {
12
- command:
13
- | 'm'
14
- | 'M'
15
- | 'l'
16
- | 'L'
17
- | 'v'
18
- | 'V'
19
- | 'h'
20
- | 'H'
21
- | 'z'
22
- | 'Z'
23
- | 'c'
24
- | 'C'
25
- | 'q'
26
- | 'Q'
27
- | 't'
28
- | 'T'
29
- | 's'
30
- | 'S'
31
- | 'a'
32
- | 'A';
33
- start: Vector2d;
34
- points: number[];
35
- pathLength: number;
36
- }
37
-
38
- export interface IRect {
39
- x: number;
40
- y: number;
41
- width: number;
42
- height: number;
43
- }
44
-
45
- export interface IFrame {
46
- time: number;
47
- timeDiff: number;
48
- lastTime: number;
49
- frameRate: number;
50
- }
51
-
52
- export type AnimationFn = (frame: IFrame) => boolean | void;
53
-
54
- export const KonvaNodeEvent = {
55
- mouseover: 'mouseover',
56
- mouseout: 'mouseout',
57
- mousemove: 'mousemove',
58
- mouseleave: 'mouseleave',
59
- mouseenter: 'mouseenter',
60
- mousedown: 'mousedown',
61
- mouseup: 'mouseup',
62
- wheel: 'wheel',
63
- contextmenu: 'contextmenu',
64
- click: 'click',
65
- dblclick: 'dblclick',
66
- touchstart: 'touchstart',
67
- touchmove: 'touchmove',
68
- touchend: 'touchend',
69
- tap: 'tap',
70
- dbltap: 'dbltap',
71
- dragstart: 'dragstart',
72
- dragmove: 'dragmove',
73
- dragend: 'dragend',
74
- } as const;
75
-
76
- export interface RGB {
77
- r: number;
78
- g: number;
79
- b: number;
80
- }
81
-
82
- export interface RGBA extends RGB {
83
- a: number;
84
- }
@@ -1,31 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "outDir": "lib",
4
- "target": "ES2018",
5
- "lib": ["ES2019", "dom"],
6
- "module": "nodenext",
7
- "noUncheckedSideEffectImports": true,
8
- "rewriteRelativeImportExtensions": true,
9
- "isolatedModules": true,
10
- "erasableSyntaxOnly": true,
11
- "verbatimModuleSyntax": true,
12
- // "sourceMap": true,
13
- "noEmitOnError": true,
14
- "declaration": true,
15
- "removeComments": false,
16
-
17
- "strict": true,
18
- "noImplicitAny": false,
19
- "noImplicitThis": false,
20
- "useUnknownInCatchVariables": false,
21
- "skipLibCheck": true,
22
- // probably we would never enable this one
23
- // because it's too strict, konva generates many functions on the runtime
24
- "strictPropertyInitialization": false,
25
- // our initializer `field: GetSet<string, this>` will cause `field` to
26
- // be set to undefined if target>=ES2022, this also affects tools like `tsx` running locally
27
- // https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html#the-usedefineforclassfields-flag-and-the-declare-property-modifier
28
- "useDefineForClassFields": false
29
- },
30
- "include": ["src"]
31
- }
@@ -1,7 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "noEmit": true
5
- },
6
- "include": ["src", "test"]
7
- }