apexify.js 4.9.26 → 4.9.27

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 (108) hide show
  1. package/README.md +358 -47
  2. package/dist/cjs/Canvas/ApexPainter.d.ts +122 -78
  3. package/dist/cjs/Canvas/ApexPainter.d.ts.map +1 -1
  4. package/dist/cjs/Canvas/ApexPainter.js +461 -352
  5. package/dist/cjs/Canvas/ApexPainter.js.map +1 -1
  6. package/dist/cjs/Canvas/utils/Background/bg.d.ts +23 -11
  7. package/dist/cjs/Canvas/utils/Background/bg.d.ts.map +1 -1
  8. package/dist/cjs/Canvas/utils/Background/bg.js +174 -107
  9. package/dist/cjs/Canvas/utils/Background/bg.js.map +1 -1
  10. package/dist/cjs/Canvas/utils/Custom/customLines.js +2 -2
  11. package/dist/cjs/Canvas/utils/Custom/customLines.js.map +1 -1
  12. package/dist/cjs/Canvas/utils/Image/imageFilters.d.ts +11 -0
  13. package/dist/cjs/Canvas/utils/Image/imageFilters.d.ts.map +1 -0
  14. package/dist/cjs/Canvas/utils/Image/imageFilters.js +307 -0
  15. package/dist/cjs/Canvas/utils/Image/imageFilters.js.map +1 -0
  16. package/dist/cjs/Canvas/utils/Image/imageProperties.d.ts +47 -112
  17. package/dist/cjs/Canvas/utils/Image/imageProperties.d.ts.map +1 -1
  18. package/dist/cjs/Canvas/utils/Image/imageProperties.js +229 -560
  19. package/dist/cjs/Canvas/utils/Image/imageProperties.js.map +1 -1
  20. package/dist/cjs/Canvas/utils/Image/professionalImageFilters.d.ts +11 -0
  21. package/dist/cjs/Canvas/utils/Image/professionalImageFilters.d.ts.map +1 -0
  22. package/dist/cjs/Canvas/utils/Image/professionalImageFilters.js +351 -0
  23. package/dist/cjs/Canvas/utils/Image/professionalImageFilters.js.map +1 -0
  24. package/dist/cjs/Canvas/utils/Image/simpleProfessionalFilters.d.ts +11 -0
  25. package/dist/cjs/Canvas/utils/Image/simpleProfessionalFilters.d.ts.map +1 -0
  26. package/dist/cjs/Canvas/utils/Image/simpleProfessionalFilters.js +215 -0
  27. package/dist/cjs/Canvas/utils/Image/simpleProfessionalFilters.js.map +1 -0
  28. package/dist/cjs/Canvas/utils/Patterns/enhancedPatternRenderer.d.ts +71 -0
  29. package/dist/cjs/Canvas/utils/Patterns/enhancedPatternRenderer.d.ts.map +1 -0
  30. package/dist/cjs/Canvas/utils/Patterns/enhancedPatternRenderer.js +392 -0
  31. package/dist/cjs/Canvas/utils/Patterns/enhancedPatternRenderer.js.map +1 -0
  32. package/dist/cjs/Canvas/utils/Shapes/shapes.d.ts +29 -0
  33. package/dist/cjs/Canvas/utils/Shapes/shapes.d.ts.map +1 -0
  34. package/dist/cjs/Canvas/utils/Shapes/shapes.js +334 -0
  35. package/dist/cjs/Canvas/utils/Shapes/shapes.js.map +1 -0
  36. package/dist/cjs/Canvas/utils/Texts/enhancedTextRenderer.d.ts +127 -0
  37. package/dist/cjs/Canvas/utils/Texts/enhancedTextRenderer.d.ts.map +1 -0
  38. package/dist/cjs/Canvas/utils/Texts/enhancedTextRenderer.js +365 -0
  39. package/dist/cjs/Canvas/utils/Texts/enhancedTextRenderer.js.map +1 -0
  40. package/dist/cjs/Canvas/utils/types.d.ts +227 -131
  41. package/dist/cjs/Canvas/utils/types.d.ts.map +1 -1
  42. package/dist/cjs/Canvas/utils/types.js +0 -1
  43. package/dist/cjs/Canvas/utils/types.js.map +1 -1
  44. package/dist/cjs/Canvas/utils/utils.d.ts +7 -4
  45. package/dist/cjs/Canvas/utils/utils.d.ts.map +1 -1
  46. package/dist/cjs/Canvas/utils/utils.js +17 -7
  47. package/dist/cjs/Canvas/utils/utils.js.map +1 -1
  48. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  49. package/dist/esm/Canvas/ApexPainter.d.ts +122 -78
  50. package/dist/esm/Canvas/ApexPainter.d.ts.map +1 -1
  51. package/dist/esm/Canvas/ApexPainter.js +461 -352
  52. package/dist/esm/Canvas/ApexPainter.js.map +1 -1
  53. package/dist/esm/Canvas/utils/Background/bg.d.ts +23 -11
  54. package/dist/esm/Canvas/utils/Background/bg.d.ts.map +1 -1
  55. package/dist/esm/Canvas/utils/Background/bg.js +174 -107
  56. package/dist/esm/Canvas/utils/Background/bg.js.map +1 -1
  57. package/dist/esm/Canvas/utils/Custom/customLines.js +2 -2
  58. package/dist/esm/Canvas/utils/Custom/customLines.js.map +1 -1
  59. package/dist/esm/Canvas/utils/Image/imageFilters.d.ts +11 -0
  60. package/dist/esm/Canvas/utils/Image/imageFilters.d.ts.map +1 -0
  61. package/dist/esm/Canvas/utils/Image/imageFilters.js +307 -0
  62. package/dist/esm/Canvas/utils/Image/imageFilters.js.map +1 -0
  63. package/dist/esm/Canvas/utils/Image/imageProperties.d.ts +47 -112
  64. package/dist/esm/Canvas/utils/Image/imageProperties.d.ts.map +1 -1
  65. package/dist/esm/Canvas/utils/Image/imageProperties.js +229 -560
  66. package/dist/esm/Canvas/utils/Image/imageProperties.js.map +1 -1
  67. package/dist/esm/Canvas/utils/Image/professionalImageFilters.d.ts +11 -0
  68. package/dist/esm/Canvas/utils/Image/professionalImageFilters.d.ts.map +1 -0
  69. package/dist/esm/Canvas/utils/Image/professionalImageFilters.js +351 -0
  70. package/dist/esm/Canvas/utils/Image/professionalImageFilters.js.map +1 -0
  71. package/dist/esm/Canvas/utils/Image/simpleProfessionalFilters.d.ts +11 -0
  72. package/dist/esm/Canvas/utils/Image/simpleProfessionalFilters.d.ts.map +1 -0
  73. package/dist/esm/Canvas/utils/Image/simpleProfessionalFilters.js +215 -0
  74. package/dist/esm/Canvas/utils/Image/simpleProfessionalFilters.js.map +1 -0
  75. package/dist/esm/Canvas/utils/Patterns/enhancedPatternRenderer.d.ts +71 -0
  76. package/dist/esm/Canvas/utils/Patterns/enhancedPatternRenderer.d.ts.map +1 -0
  77. package/dist/esm/Canvas/utils/Patterns/enhancedPatternRenderer.js +392 -0
  78. package/dist/esm/Canvas/utils/Patterns/enhancedPatternRenderer.js.map +1 -0
  79. package/dist/esm/Canvas/utils/Shapes/shapes.d.ts +29 -0
  80. package/dist/esm/Canvas/utils/Shapes/shapes.d.ts.map +1 -0
  81. package/dist/esm/Canvas/utils/Shapes/shapes.js +334 -0
  82. package/dist/esm/Canvas/utils/Shapes/shapes.js.map +1 -0
  83. package/dist/esm/Canvas/utils/Texts/enhancedTextRenderer.d.ts +127 -0
  84. package/dist/esm/Canvas/utils/Texts/enhancedTextRenderer.d.ts.map +1 -0
  85. package/dist/esm/Canvas/utils/Texts/enhancedTextRenderer.js +365 -0
  86. package/dist/esm/Canvas/utils/Texts/enhancedTextRenderer.js.map +1 -0
  87. package/dist/esm/Canvas/utils/types.d.ts +227 -131
  88. package/dist/esm/Canvas/utils/types.d.ts.map +1 -1
  89. package/dist/esm/Canvas/utils/types.js +0 -1
  90. package/dist/esm/Canvas/utils/types.js.map +1 -1
  91. package/dist/esm/Canvas/utils/utils.d.ts +7 -4
  92. package/dist/esm/Canvas/utils/utils.d.ts.map +1 -1
  93. package/dist/esm/Canvas/utils/utils.js +17 -7
  94. package/dist/esm/Canvas/utils/utils.js.map +1 -1
  95. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  96. package/lib/Canvas/ApexPainter.ts +1325 -1218
  97. package/lib/Canvas/utils/Background/bg.ts +247 -173
  98. package/lib/Canvas/utils/Custom/customLines.ts +3 -3
  99. package/lib/Canvas/utils/Image/imageFilters.ts +356 -0
  100. package/lib/Canvas/utils/Image/imageProperties.ts +322 -775
  101. package/lib/Canvas/utils/Image/professionalImageFilters.ts +391 -0
  102. package/lib/Canvas/utils/Image/simpleProfessionalFilters.ts +229 -0
  103. package/lib/Canvas/utils/Patterns/enhancedPatternRenderer.ts +444 -0
  104. package/lib/Canvas/utils/Shapes/shapes.ts +528 -0
  105. package/lib/Canvas/utils/Texts/enhancedTextRenderer.ts +478 -0
  106. package/lib/Canvas/utils/types.ts +301 -117
  107. package/lib/Canvas/utils/utils.ts +85 -72
  108. package/package.json +106 -188
@@ -1 +1 @@
1
- {"version":3,"file":"ApexPainter.js","sourceRoot":"","sources":["../../../lib/Canvas/ApexPainter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApexPainter.js","sourceRoot":"","sources":["../../../lib/Canvas/ApexPainter.ts"],"names":[],"mappings":"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"}
@@ -1,31 +1,43 @@
1
1
  import { SKRSContext2D } from "@napi-rs/canvas";
2
- import { CanvasConfig } from "../types";
3
- interface ZoomConfig {
4
- scale?: number;
5
- x?: number;
6
- y?: number;
7
- }
2
+ import { CanvasConfig, gradient } from "../types";
3
+ export type AlignMode = 'center' | 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
4
+ export type FitMode = 'fill' | 'contain' | 'cover';
8
5
  /**
9
6
  * Draws a gradient background on the canvas with optional zoom support.
10
7
  * @param ctx The canvas rendering context.
11
8
  * @param canvas The canvas configuration object.
12
9
  * @param zoom Optional zoom configuration.
13
10
  */
14
- export declare function drawBackgroundGradient(ctx: SKRSContext2D, canvas: CanvasConfig, zoom?: ZoomConfig, blur?: number): Promise<void>;
11
+ export declare function drawBackgroundGradient(ctx: SKRSContext2D, canvas: CanvasConfig): Promise<void>;
15
12
  /**
16
13
  * Draws a solid background color on the canvas with optional zoom effect.
17
14
  * @param ctx The canvas rendering context.
18
15
  * @param canvas The canvas configuration object.
19
16
  * @param zoom Optional zoom configuration.
20
17
  */
21
- export declare function drawBackgroundColor(ctx: SKRSContext2D, canvas: CanvasConfig, zoom?: ZoomConfig, blur?: number): Promise<void>;
18
+ export declare function drawBackgroundColor(ctx: SKRSContext2D, canvas: CanvasConfig): Promise<void>;
22
19
  /**
23
20
  * Draws a custom background image on the canvas with optional zoom functionality.
24
21
  * @param ctx The canvas rendering context.
25
22
  * @param canvas The canvas configuration object.
26
23
  * @param zoom Optional zoom configuration.
27
24
  */
28
- export declare function customBackground(ctx: SKRSContext2D, canvas: CanvasConfig, zoom?: ZoomConfig, blur?: number): Promise<void>;
29
- export declare function backgroundRadius(ctx: SKRSContext2D, x: number, y: number, width: number, height: number, borderRadius: number | "circular", borderPosition?: string): void;
30
- export {};
25
+ export declare function customBackground(ctx: SKRSContext2D, canvas: CanvasConfig): Promise<void>;
26
+ export declare function buildPathbg(ctx: SKRSContext2D, x: number, y: number, width: number, height: number, borderRadius?: number | "circular", borderPosition?: string): void;
27
+ export declare function applyNoise(ctx: SKRSContext2D, width: number, height: number, intensity?: number): void;
28
+ export declare function drawPattern(ctx: SKRSContext2D, { source, repeat, opacity }: {
29
+ source: string;
30
+ repeat?: 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat';
31
+ opacity?: number;
32
+ }, width: number, height: number): Promise<void>;
33
+ export declare function applyCanvasZoom(ctx: SKRSContext2D, width: number, height: number, zoom?: {
34
+ scale?: number;
35
+ centerX?: number;
36
+ centerY?: number;
37
+ }): void;
38
+ export declare function buildCanvasGradient(ctx: SKRSContext2D, cfg: {
39
+ gradient: gradient;
40
+ width: number;
41
+ height: number;
42
+ }): CanvasGradient;
31
43
  //# sourceMappingURL=bg.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bg.d.ts","sourceRoot":"","sources":["../../../../../lib/Canvas/utils/Background/bg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,UAAU,UAAU;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CACxC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,YAAY,EACpB,IAAI,CAAC,EAAE,UAAU,EACjB,IAAI,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAiDf;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACrC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,YAAY,EACpB,IAAI,CAAC,EAAE,UAAU,EACjB,IAAI,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAClC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,YAAY,EACpB,IAAI,CAAC,EAAE,UAAU,EACjB,IAAI,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAyCf;AAED,wBAAgB,gBAAgB,CAC5B,GAAG,EAAE,aAAa,EAClB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,cAAc,GAAE,MAAc,GAC7B,IAAI,CAmCN"}
1
+ {"version":3,"file":"bg.d.ts","sourceRoot":"","sources":["../../../../../lib/Canvas/utils/Background/bg.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGlD,MAAM,MAAM,SAAS,GACjB,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAC9C,UAAU,GAAG,WAAW,GAAG,aAAa,GAAG,cAAc,CAAC;AAE9D,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAEnD;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,YAAY,iBAerB;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA8Cf;AAwBD,wBAAgB,WAAW,CACzB,GAAG,EAAE,aAAa,EAClB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,YAAY,GAAE,MAAM,GAAG,UAAc,EACrC,cAAc,GAAE,MAAc,GAC7B,IAAI,CAkCN;AAID,wBAAgB,UAAU,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,SAAO,QAa7F;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,aAAa,EAClB,EAAE,MAAM,EAAE,MAAiB,EAAE,OAAW,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,QAAQ,GAAC,UAAU,GAAC,UAAU,GAAC,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EACrI,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,iBAUf;AAeD,wBAAgB,eAAe,CAC7B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,QAa9D;AAGD,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE;IAAE,QAAQ,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzD,cAAc,CAoChB"}
@@ -6,7 +6,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.drawBackgroundGradient = drawBackgroundGradient;
7
7
  exports.drawBackgroundColor = drawBackgroundColor;
8
8
  exports.customBackground = customBackground;
9
- exports.backgroundRadius = backgroundRadius;
9
+ exports.buildPathbg = buildPathbg;
10
+ exports.applyNoise = applyNoise;
11
+ exports.drawPattern = drawPattern;
12
+ exports.applyCanvasZoom = applyCanvasZoom;
13
+ exports.buildCanvasGradient = buildCanvasGradient;
10
14
  const canvas_1 = require("@napi-rs/canvas");
11
15
  const path_1 = __importDefault(require("path"));
12
16
  /**
@@ -15,40 +19,20 @@ const path_1 = __importDefault(require("path"));
15
19
  * @param canvas The canvas configuration object.
16
20
  * @param zoom Optional zoom configuration.
17
21
  */
18
- async function drawBackgroundGradient(ctx, canvas, zoom, blur) {
19
- if (canvas.gradientBg) {
20
- const { type, startX = 0, startY = 0, endX = canvas.width || 500, endY = canvas.height || 500, startRadius = 0, endRadius = 0, colors } = canvas.gradientBg;
21
- if (!colors || colors.length === 0) {
22
- throw new Error("You need to provide colors for the gradient.");
23
- }
24
- let gradient;
25
- if (type === "linear" || type === undefined) {
26
- let finalStartX = startX, finalStartY = startY, finalEndX = endX, finalEndY = endY;
27
- if (zoom) {
28
- const scale = Math.max(1, zoom.scale || 1);
29
- finalStartX = (zoom.x || 0) - (endX - startX) / (2 * scale);
30
- finalStartY = (zoom.y || 0) - (endY - startY) / (2 * scale);
31
- finalEndX = (zoom.x || 0) + (endX - startX) / (2 * scale);
32
- finalEndY = (zoom.y || 0) + (endY - startY) / (2 * scale);
33
- }
34
- gradient = ctx.createLinearGradient(finalStartX, finalStartY, finalEndX, finalEndY);
35
- }
36
- else if (type === "radial") {
37
- gradient = ctx.createRadialGradient(startX, startY, startRadius, endX, endY, endRadius);
38
- }
39
- else {
40
- throw new Error("Unsupported gradient type.");
41
- }
42
- for (const { stop, color } of colors) {
43
- gradient.addColorStop(stop, color);
44
- }
45
- if (blur) {
46
- ctx.filter = `blur(${blur}px)`;
47
- }
48
- ctx.fillStyle = gradient;
49
- ctx.fillRect(0, 0, canvas.width || 500, canvas.height || 500);
50
- ctx.filter = "none";
51
- }
22
+ async function drawBackgroundGradient(ctx, canvas) {
23
+ if (!canvas.gradientBg)
24
+ return;
25
+ const width = canvas.width ?? 500;
26
+ const height = canvas.height ?? 500;
27
+ const grad = buildCanvasGradient(ctx, {
28
+ gradient: canvas.gradientBg,
29
+ width, height
30
+ });
31
+ if (canvas.blur)
32
+ ctx.filter = `blur(${canvas.blur}px)`;
33
+ ctx.fillStyle = grad;
34
+ ctx.fillRect(0, 0, width, height);
35
+ ctx.filter = 'none';
52
36
  }
53
37
  /**
54
38
  * Draws a solid background color on the canvas with optional zoom effect.
@@ -56,26 +40,16 @@ async function drawBackgroundGradient(ctx, canvas, zoom, blur) {
56
40
  * @param canvas The canvas configuration object.
57
41
  * @param zoom Optional zoom configuration.
58
42
  */
59
- async function drawBackgroundColor(ctx, canvas, zoom, blur) {
60
- const canvasWidth = canvas.width || 500;
61
- const canvasHeight = canvas.height || 500;
62
- ctx.save();
63
- if (blur) {
64
- ctx.filter = `blur(${blur}px)`;
65
- }
66
- if (zoom) {
67
- const scale = Math.max(1, zoom.scale || 1);
68
- const zoomedWidth = canvasWidth / scale;
69
- const zoomedHeight = canvasHeight / scale;
70
- ctx.scale(scale, scale);
71
- ctx.translate((zoom.x || 0) + zoomedWidth / 2, (zoom.y || 0) + zoomedHeight / 2);
43
+ async function drawBackgroundColor(ctx, canvas) {
44
+ const W = canvas.width ?? 500;
45
+ const H = canvas.height ?? 500;
46
+ if (canvas.blur)
47
+ ctx.filter = `blur(${canvas.blur}px)`;
48
+ if (canvas.colorBg !== 'transparent') {
49
+ ctx.fillStyle = (canvas.colorBg ?? '#000');
50
+ ctx.fillRect(0, 0, W, H);
72
51
  }
73
- if (canvas.colorBg !== "transparent") {
74
- ctx.fillStyle = canvas.colorBg;
75
- ctx.fillRect(0, 0, canvasWidth, canvasHeight);
76
- }
77
- ctx.filter = "none";
78
- ctx.restore();
52
+ ctx.filter = 'none';
79
53
  }
80
54
  /**
81
55
  * Draws a custom background image on the canvas with optional zoom functionality.
@@ -83,79 +57,172 @@ async function drawBackgroundColor(ctx, canvas, zoom, blur) {
83
57
  * @param canvas The canvas configuration object.
84
58
  * @param zoom Optional zoom configuration.
85
59
  */
86
- async function customBackground(ctx, canvas, zoom, blur) {
87
- if (canvas.customBg) {
88
- try {
89
- let imageBuffer;
90
- if (canvas.customBg.startsWith("http")) {
91
- imageBuffer = canvas.customBg;
92
- }
93
- else {
94
- imageBuffer = path_1.default.join(process.cwd(), canvas.customBg);
95
- }
96
- const image = await (0, canvas_1.loadImage)(imageBuffer);
97
- const imgWidth = image.width;
98
- const imgHeight = image.height;
99
- const canvasWidth = canvas.width || imgWidth;
100
- const canvasHeight = canvas.height || imgHeight;
101
- if (blur) {
102
- ctx.filter = `blur(${blur}px)`;
103
- }
104
- if (zoom) {
105
- const scale = Math.max(1, zoom.scale || 1);
106
- const cropWidth = imgWidth / scale;
107
- const cropHeight = imgHeight / scale;
108
- let sx = (zoom.x || 0) - cropWidth / 2;
109
- let sy = (zoom.y || 0) - cropHeight / 2;
110
- sx = Math.max(0, Math.min(sx, imgWidth - cropWidth));
111
- sy = Math.max(0, Math.min(sy, imgHeight - cropHeight));
112
- ctx.drawImage(image, sx, sy, cropWidth, cropHeight, 0, 0, canvasWidth, canvasHeight);
60
+ async function customBackground(ctx, canvas) {
61
+ const cfg = canvas.customBg;
62
+ if (!cfg)
63
+ return;
64
+ let imagePath = cfg.source;
65
+ if (!/^https?:\/\//i.test(imagePath)) {
66
+ imagePath = path_1.default.join(process.cwd(), imagePath);
67
+ }
68
+ try {
69
+ const img = await (0, canvas_1.loadImage)(imagePath);
70
+ // Canvas size (createCanvas may have overridden via inherit)
71
+ const W = canvas.width ?? img.width;
72
+ const H = canvas.height ?? img.height;
73
+ if (canvas.blur)
74
+ ctx.filter = `blur(${canvas.blur}px)`;
75
+ if (cfg.inherit) {
76
+ // Canvas was resized to image size in createCanvas; just draw 1:1
77
+ ctx.drawImage(img, 0, 0);
78
+ }
79
+ else {
80
+ // scale by fit + align
81
+ const fit = cfg.fit ?? 'fill';
82
+ let dx = 0, dy = 0, dw = W, dh = H;
83
+ if (fit === 'contain' || fit === 'cover') {
84
+ const s = fit === 'contain'
85
+ ? Math.min(W / img.width, H / img.height)
86
+ : Math.max(W / img.width, H / img.height);
87
+ dw = img.width * s;
88
+ dh = img.height * s;
89
+ // alignment
90
+ const align = cfg.align ?? 'center';
91
+ ({ dx, dy } = alignInto(W, H, dw, dh, align));
113
92
  }
114
93
  else {
115
- ctx.drawImage(image, 0, 0, canvasWidth, canvasHeight);
94
+ // 'fill' stretches image to exactly W x H (may distort)
95
+ dx = 0;
96
+ dy = 0;
97
+ dw = W;
98
+ dh = H;
116
99
  }
117
- ctx.filter = "none";
118
- }
119
- catch (error) {
120
- console.error("Error loading custom background image:", error.message);
100
+ ctx.drawImage(img, dx, dy, dw, dh);
121
101
  }
102
+ ctx.filter = 'none';
103
+ }
104
+ catch (e) {
105
+ console.error('customBackground: failed to load', e?.message ?? e);
106
+ }
107
+ }
108
+ // helper to place the fitted rect inside canvas by alignment keyword
109
+ function alignInto(W, H, w, h, align) {
110
+ const cx = (W - w) / 2;
111
+ const cy = (H - h) / 2;
112
+ switch (align) {
113
+ case 'top-left': return { dx: 0, dy: 0 };
114
+ case 'top': return { dx: cx, dy: 0 };
115
+ case 'top-right': return { dx: W - w, dy: 0 };
116
+ case 'left': return { dx: 0, dy: cy };
117
+ case 'center': return { dx: cx, dy: cy };
118
+ case 'right': return { dx: W - w, dy: cy };
119
+ case 'bottom-left': return { dx: 0, dy: H - h };
120
+ case 'bottom': return { dx: cx, dy: H - h };
121
+ case 'bottom-right': return { dx: W - w, dy: H - h };
122
+ default: return { dx: cx, dy: cy };
122
123
  }
123
124
  }
124
- function backgroundRadius(ctx, x, y, width, height, borderRadius, borderPosition = "all") {
125
+ function buildPathbg(ctx, x, y, width, height, borderRadius = 0, borderPosition = "all") {
125
126
  ctx.beginPath();
126
127
  if (borderRadius === "circular") {
127
- const circleRadius = Math.min(width, height) / 2;
128
- ctx.arc(x + width / 2, y + height / 2, circleRadius, 0, 2 * Math.PI);
128
+ const r = Math.min(width, height) / 2;
129
+ ctx.arc(x + width / 2, y + height / 2, r, 0, 2 * Math.PI);
129
130
  }
130
131
  else if (typeof borderRadius === "number" && borderRadius > 0) {
131
132
  const br = Math.min(borderRadius, width / 2, height / 2);
132
- const selectedPositions = new Set(borderPosition.toLowerCase().split(",").map((s) => s.trim()));
133
- const roundTopLeft = selectedPositions.has("all") || selectedPositions.has("top-left") || (selectedPositions.has("top") && selectedPositions.has("left"));
134
- const roundTopRight = selectedPositions.has("all") || selectedPositions.has("top-right") || (selectedPositions.has("top") && selectedPositions.has("right"));
135
- const roundBottomRight = selectedPositions.has("all") || selectedPositions.has("bottom-right") || (selectedPositions.has("bottom") && selectedPositions.has("right"));
136
- const roundBottomLeft = selectedPositions.has("all") || selectedPositions.has("bottom-left") || (selectedPositions.has("bottom") && selectedPositions.has("left"));
137
- const tl = roundTopLeft ? br : 0;
138
- const tr = roundTopRight ? br : 0;
139
- const brR = roundBottomRight ? br : 0;
140
- const bl = roundBottomLeft ? br : 0;
133
+ const selected = new Set(borderPosition.toLowerCase().split(",").map(s => s.trim()));
134
+ const roundTL = selected.has("all") || selected.has("top-left") || (selected.has("top") && selected.has("left"));
135
+ const roundTR = selected.has("all") || selected.has("top-right") || (selected.has("top") && selected.has("right"));
136
+ const roundBR = selected.has("all") || selected.has("bottom-right") || (selected.has("bottom") && selected.has("right"));
137
+ const roundBL = selected.has("all") || selected.has("bottom-left") || (selected.has("bottom") && selected.has("left"));
138
+ const tl = roundTL ? br : 0;
139
+ const tr = roundTR ? br : 0;
140
+ const brR = roundBR ? br : 0;
141
+ const bl = roundBL ? br : 0;
141
142
  ctx.moveTo(x + tl, y);
142
143
  ctx.lineTo(x + width - tr, y);
143
- if (tr > 0)
144
- ctx.arc(x + width - tr, y + tr, tr, -Math.PI / 2, 0, false);
144
+ if (tr)
145
+ ctx.arcTo(x + width, y, x + width, y + tr, tr);
145
146
  ctx.lineTo(x + width, y + height - brR);
146
- if (brR > 0)
147
- ctx.arc(x + width - brR, y + height - brR, brR, 0, Math.PI / 2, false);
147
+ if (brR)
148
+ ctx.arcTo(x + width, y + height, x + width - brR, y + height, brR);
148
149
  ctx.lineTo(x + bl, y + height);
149
- if (bl > 0)
150
- ctx.arc(x + bl, y + height - bl, bl, Math.PI / 2, Math.PI, false);
150
+ if (bl)
151
+ ctx.arcTo(x, y + height, x, y + height - bl, bl);
151
152
  ctx.lineTo(x, y + tl);
152
- if (tl > 0)
153
- ctx.arc(x + tl, y + tl, tl, Math.PI, -Math.PI / 2, false);
153
+ if (tl)
154
+ ctx.arcTo(x, y, x + tl, y, tl);
154
155
  }
155
156
  else {
156
157
  ctx.rect(x, y, width, height);
157
158
  }
158
159
  ctx.closePath();
159
- ctx.clip();
160
+ }
161
+ function applyNoise(ctx, width, height, intensity = 0.05) {
162
+ const noiseCanvas = (0, canvas_1.createCanvas)(width, height);
163
+ const nctx = noiseCanvas.getContext("2d");
164
+ const imageData = nctx.createImageData(width, height);
165
+ for (let i = 0; i < imageData.data.length; i += 4) {
166
+ const v = (Math.random() * 255) | 0;
167
+ imageData.data[i] = v;
168
+ imageData.data[i + 1] = v;
169
+ imageData.data[i + 2] = v;
170
+ imageData.data[i + 3] = 255 * intensity;
171
+ }
172
+ nctx.putImageData(imageData, 0, 0);
173
+ ctx.drawImage(noiseCanvas, 0, 0);
174
+ }
175
+ async function drawPattern(ctx, { source, repeat = "repeat", opacity = 1 }, width, height) {
176
+ const img = await (0, canvas_1.loadImage)(source);
177
+ const pattern = ctx.createPattern(img, repeat);
178
+ if (!pattern)
179
+ return;
180
+ ctx.save();
181
+ ctx.globalAlpha = opacity;
182
+ ctx.fillStyle = pattern;
183
+ ctx.fillRect(0, 0, width, height);
184
+ ctx.restore();
185
+ }
186
+ function rotatePoint(x, y, pivotX, pivotY, deg) {
187
+ if (!deg)
188
+ return [x, y];
189
+ const a = (deg * Math.PI) / 180;
190
+ const dx = x - pivotX, dy = y - pivotY;
191
+ const rx = dx * Math.cos(a) - dy * Math.sin(a);
192
+ const ry = dx * Math.sin(a) + dy * Math.cos(a);
193
+ return [pivotX + rx, pivotY + ry];
194
+ }
195
+ function applyCanvasZoom(ctx, width, height, zoom) {
196
+ if (!zoom)
197
+ return;
198
+ const scale = zoom.scale ?? 1;
199
+ if (scale === 1)
200
+ return; // nothing to do
201
+ const cx = zoom.centerX ?? width / 2;
202
+ const cy = zoom.centerY ?? height / 2;
203
+ ctx.translate(cx, cy);
204
+ ctx.scale(scale, scale);
205
+ ctx.translate(-cx, -cy);
206
+ }
207
+ function buildCanvasGradient(ctx, cfg) {
208
+ const { gradient, width, height } = cfg;
209
+ if (gradient.type === 'linear') {
210
+ const { startX = 0, startY = 0, endX = width, endY = 0, rotate = 0, pivotX = width / 2, pivotY = height / 2, colors } = gradient;
211
+ const [sx, sy] = rotatePoint(startX, startY, pivotX, pivotY, rotate);
212
+ const [ex, ey] = rotatePoint(endX, endY, pivotX, pivotY, rotate);
213
+ const g = ctx.createLinearGradient(sx, sy, ex, ey);
214
+ for (const { stop, color } of colors)
215
+ g.addColorStop(stop, color);
216
+ return g;
217
+ }
218
+ // radial
219
+ const { startX = width / 2, startY = height / 2, startRadius = 0, endX = width / 2, endY = height / 2, endRadius = Math.max(width, height) / 2, rotate = 0, pivotX = width / 2, pivotY = height / 2, colors } = gradient;
220
+ // If centers differ, rotation will rotate both centers around pivot.
221
+ const [sx, sy] = rotatePoint(startX, startY, pivotX, pivotY, rotate);
222
+ const [ex, ey] = rotatePoint(endX, endY, pivotX, pivotY, rotate);
223
+ const g = ctx.createRadialGradient(sx, sy, startRadius, ex, ey, endRadius);
224
+ for (const { stop, color } of colors)
225
+ g.addColorStop(stop, color);
226
+ return g;
160
227
  }
161
228
  //# sourceMappingURL=bg.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bg.js","sourceRoot":"","sources":["../../../../../lib/Canvas/utils/Background/bg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bg.js","sourceRoot":"","sources":["../../../../../lib/Canvas/utils/Background/bg.ts"],"names":[],"mappings":";;;;;AAgBA,wDAiBC;AAQD,kDAaC;AAQD,4CAiDC;AAwBD,kCA0CC;AAID,gCAaC;AAED,kCAcC;AAeD,0CAiBC;AAGD,kDAuCC;AA5RD,4CAAyE;AAEzE,gDAAwB;AAQxB;;;;;GAKG;AACI,KAAK,UAAU,sBAAsB,CAC1C,GAAkB,EAClB,MAAoB;IAEpB,IAAI,CAAC,MAAM,CAAC,UAAU;QAAE,OAAO;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC;IAClC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;IAEpC,MAAM,IAAI,GAAG,mBAAmB,CAAC,GAAG,EAAE;QACpC,QAAQ,EAAE,MAAM,CAAC,UAAU;QAC3B,KAAK,EAAE,MAAM;KACd,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,IAAI;QAAE,GAAG,CAAC,MAAM,GAAG,QAAQ,MAAM,CAAC,IAAI,KAAK,CAAC;IACvD,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;IACrB,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAClC,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CACvC,GAAkB,EAClB,MAAoB;IAEpB,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC;IAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;IAE/B,IAAI,MAAM,CAAC,IAAI;QAAE,GAAG,CAAC,MAAM,GAAG,QAAQ,MAAM,CAAC,IAAI,KAAK,CAAC;IACvD,IAAI,MAAM,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;QACrC,GAAG,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAW,CAAC;QACrD,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;IACD,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CACpC,GAAkB,EAClB,MAAoB;IAEpB,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC5B,IAAI,CAAC,GAAG;QAAE,OAAO;IAEjB,IAAI,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;IAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACrC,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAA,kBAAS,EAAC,SAAS,CAAC,CAAC;QACvC,6DAA6D;QAC7D,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC;QACpC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC;QAEtC,IAAI,MAAM,CAAC,IAAI;YAAE,GAAG,CAAC,MAAM,GAAG,QAAQ,MAAM,CAAC,IAAI,KAAK,CAAC;QAEvD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,kEAAkE;YAClE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,uBAAuB;YACvB,MAAM,GAAG,GAAY,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC;YACvC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YAEnC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBACzC,MAAM,CAAC,GAAG,GAAG,KAAK,SAAS;oBACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;oBACzC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC5C,EAAE,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;gBACnB,EAAE,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;gBACpB,YAAY;gBACZ,MAAM,KAAK,GAAc,GAAG,CAAC,KAAK,IAAI,QAAQ,CAAC;gBAC/C,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACN,wDAAwD;gBACxD,EAAE,GAAG,CAAC,CAAC;gBAAC,EAAE,GAAG,CAAC,CAAC;gBAAC,EAAE,GAAG,CAAC,CAAC;gBAAC,EAAE,GAAG,CAAC,CAAC;YACjC,CAAC;YAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACrC,CAAC;QAED,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,kCAAkC,EAAE,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC;IACrE,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,SAAS,SAAS,CAChB,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,KAAgB;IAE5D,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACvB,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACvB,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,UAAU,CAAC,CAAK,OAAO,EAAE,EAAE,EAAE,CAAC,EAAI,EAAE,EAAE,CAAC,EAAE,CAAC;QAC/C,KAAK,KAAK,CAAC,CAAU,OAAO,EAAE,EAAE,EAAE,EAAE,EAAG,EAAE,EAAE,CAAC,EAAE,CAAC;QAC/C,KAAK,WAAW,CAAC,CAAI,OAAO,EAAE,EAAE,EAAE,CAAC,GAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAC/C,KAAK,MAAM,CAAC,CAAS,OAAO,EAAE,EAAE,EAAE,CAAC,EAAI,EAAE,EAAE,EAAE,EAAE,CAAC;QAChD,KAAK,QAAQ,CAAC,CAAO,OAAO,EAAE,EAAE,EAAE,EAAE,EAAG,EAAE,EAAE,EAAE,EAAE,CAAC;QAChD,KAAK,OAAO,CAAC,CAAQ,OAAO,EAAE,EAAE,EAAE,CAAC,GAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QAChD,KAAK,aAAa,CAAC,CAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAI,EAAE,EAAE,CAAC,GAAC,CAAC,EAAE,CAAC;QACjD,KAAK,QAAQ,CAAC,CAAO,OAAO,EAAE,EAAE,EAAE,EAAE,EAAG,EAAE,EAAE,CAAC,GAAC,CAAC,EAAE,CAAC;QACjD,KAAK,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,GAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAC,CAAC,EAAE,CAAC;QACjD,OAAO,CAAC,CAAa,OAAO,EAAE,EAAE,EAAE,EAAE,EAAG,EAAE,EAAE,EAAE,EAAE,CAAC;IAClD,CAAC;AACH,CAAC;AAID,SAAgB,WAAW,CACzB,GAAkB,EAClB,CAAS,EACT,CAAS,EACT,KAAa,EACb,MAAc,EACd,eAAoC,CAAC,EACrC,iBAAyB,KAAK;IAE9B,GAAG,CAAC,SAAS,EAAE,CAAC;IAEhB,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;QAChC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACtC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC;SAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAErF,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACjH,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QACnH,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;QACzH,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QAEvH,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5B,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QACtB,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9B,IAAI,EAAE;YAAE,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;QACvD,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC,CAAC;QACxC,IAAI,GAAG;YAAE,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,KAAK,GAAG,GAAG,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC;QAC5E,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC;QAC/B,IAAI,EAAE;YAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QACtB,IAAI,EAAE;YAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,GAAG,CAAC,SAAS,EAAE,CAAC;AAClB,CAAC;AAID,SAAgB,UAAU,CAAC,GAAkB,EAAE,KAAa,EAAE,MAAc,EAAE,SAAS,GAAG,IAAI;IAC5F,MAAM,WAAW,GAAG,IAAA,qBAAY,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,GAAK,CAAC,CAAC;QACxB,SAAS,CAAC,IAAI,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxB,SAAS,CAAC,IAAI,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxB,SAAS,CAAC,IAAI,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,GAAG,GAAG,SAAS,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACnC,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,GAAkB,EAClB,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,EAAE,OAAO,GAAG,CAAC,EAA6F,EACrI,KAAa,EACb,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,IAAA,kBAAS,EAAC,MAAM,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO;QAAE,OAAO;IACrB,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC;IAC1B,GAAG,CAAC,SAAS,GAAG,OAAc,CAAC;IAC/B,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAClC,GAAG,CAAC,OAAO,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAClB,CAAS,EAAE,CAAS,EACpB,MAAc,EAAE,MAAc,EAC9B,GAAW;IAEX,IAAI,CAAC,GAAG;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,EAAE,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC;IACvC,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,CAAC,CAAC;AACpC,CAAC;AAED,SAAgB,eAAe,CAC7B,GAAkB,EAClB,KAAa,EACb,MAAc,EACd,IAA6D;IAE7D,IAAI,CAAC,IAAI;QAAE,OAAO;IAElB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;IAC9B,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,gBAAgB;IAEzC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,IAAI,KAAK,GAAG,CAAC,CAAC;IACrC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,GAAG,CAAC,CAAC;IAEtC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACtB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxB,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AAGD,SAAgB,mBAAmB,CACjC,GAAkB,EAClB,GAA0D;IAE1D,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IAExC,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,EACJ,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EACtB,IAAI,GAAK,KAAK,EAAE,IAAI,GAAK,CAAC,EAC1B,MAAM,GAAG,CAAC,EACV,MAAM,GAAG,KAAK,GAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAC,CAAC,EACnC,MAAM,EACP,GAAG,QAAQ,CAAC;QAEb,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACrE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,WAAW,CAAC,IAAI,EAAI,IAAI,EAAI,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAErE,MAAM,CAAC,GAAG,GAAG,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACnD,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,MAAM;YAAE,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAClE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,SAAS;IACT,MAAM,EACJ,MAAM,GAAG,KAAK,GAAC,CAAC,EAAG,MAAM,GAAG,MAAM,GAAC,CAAC,EAAG,WAAW,GAAG,CAAC,EACtD,IAAI,GAAK,KAAK,GAAC,CAAC,EAAG,IAAI,GAAK,MAAM,GAAC,CAAC,EAAG,SAAS,GAAK,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,GAAC,CAAC,EAC9E,MAAM,GAAG,CAAC,EACV,MAAM,GAAG,KAAK,GAAC,CAAC,EAAG,MAAM,GAAG,MAAM,GAAC,CAAC,EACpC,MAAM,EACP,GAAG,QAAQ,CAAC;IAEb,qEAAqE;IACrE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACrE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,WAAW,CAAC,IAAI,EAAI,IAAI,EAAI,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAErE,MAAM,CAAC,GAAG,GAAG,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;IAC3E,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,MAAM;QAAE,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAClE,OAAO,CAAC,CAAC;AACX,CAAC"}