@umituz/web-canvas 1.0.7 → 1.1.0

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 (41) hide show
  1. package/README.md +33 -0
  2. package/dist/CanvasConfig-HFgH7irb.d.mts +310 -0
  3. package/dist/CanvasConfig-HFgH7irb.d.ts +310 -0
  4. package/dist/application/index.d.mts +78 -0
  5. package/dist/application/index.d.ts +78 -0
  6. package/dist/application/index.js +1146 -0
  7. package/dist/application/index.mjs +11 -0
  8. package/dist/chunk-DNKRSL6D.mjs +358 -0
  9. package/dist/chunk-HJ24NSQA.mjs +777 -0
  10. package/dist/chunk-MC6PNV2F.mjs +34 -0
  11. package/dist/chunk-TZGTTYTZ.mjs +0 -0
  12. package/dist/chunk-UOGTEMIJ.mjs +712 -0
  13. package/dist/chunk-Z6IB4BQV.mjs +31 -0
  14. package/dist/domain/config/index.d.mts +87 -0
  15. package/dist/domain/config/index.d.ts +87 -0
  16. package/dist/domain/config/index.js +92 -0
  17. package/dist/domain/config/index.mjs +15 -0
  18. package/dist/domain/index.d.mts +45 -0
  19. package/dist/domain/index.d.ts +45 -0
  20. package/dist/domain/index.js +137 -0
  21. package/dist/domain/index.mjs +55 -0
  22. package/dist/index.d.mts +7 -0
  23. package/dist/index.d.ts +7 -0
  24. package/dist/index.js +1927 -0
  25. package/dist/index.mjs +40 -0
  26. package/dist/infrastructure/index.d.mts +198 -0
  27. package/dist/infrastructure/index.d.ts +198 -0
  28. package/dist/infrastructure/index.js +765 -0
  29. package/dist/infrastructure/index.mjs +13 -0
  30. package/dist/presentation/index.d.mts +145 -0
  31. package/dist/presentation/index.d.ts +145 -0
  32. package/dist/presentation/index.js +1911 -0
  33. package/dist/presentation/index.mjs +16 -0
  34. package/dist/report.types-DWDnprBx.d.mts +76 -0
  35. package/dist/report.types-DWDnprBx.d.ts +76 -0
  36. package/package.json +8 -2
  37. package/src/domain/types/freehand.types.ts +42 -0
  38. package/src/domain/types/index.ts +1 -0
  39. package/src/index.ts +10 -0
  40. package/src/presentation/hooks/useFreehandCanvas.ts +244 -0
  41. package/src/presentation/index.ts +1 -0
@@ -0,0 +1,31 @@
1
+ // src/domain/config/ScreenshotStudioConfig.ts
2
+ var DEFAULT_SCREENSHOT_STUDIO_CONFIG = {
3
+ canvas: {
4
+ defaultFormat: "png",
5
+ defaultQuality: 0.9,
6
+ scale: 2,
7
+ useCORS: true
8
+ },
9
+ device: {
10
+ devices: ["iphone-15-pro"],
11
+ defaultDevice: "iphone-15-pro",
12
+ showFrame: true,
13
+ frameColor: "#1f2937",
14
+ frameThickness: 8
15
+ },
16
+ export: {
17
+ includeMetadata: true,
18
+ folderStructure: "by-language",
19
+ defaultFormat: "png"
20
+ },
21
+ ai: {
22
+ enabled: true,
23
+ provider: "gemini"
24
+ },
25
+ languages: ["en-US", "tr-TR", "de-DE", "fr-FR", "es-ES", "ja-JP"],
26
+ defaultLanguage: "en-US"
27
+ };
28
+
29
+ export {
30
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG
31
+ };
@@ -0,0 +1,87 @@
1
+ import { m as DeviceType, a as CanvasConfig, p as ScreenshotFormat, L as Language } from '../../CanvasConfig-HFgH7irb.mjs';
2
+ export { D as DEFAULT_CANVAS_CONFIG } from '../../CanvasConfig-HFgH7irb.mjs';
3
+
4
+ /**
5
+ * Device Configuration
6
+ * Device frame configuration
7
+ */
8
+
9
+ /**
10
+ * Device configuration
11
+ */
12
+ interface DeviceConfigOption {
13
+ /** Available device types */
14
+ devices: DeviceType[];
15
+ /** Default device type */
16
+ defaultDevice?: DeviceType;
17
+ /** Show device frame */
18
+ showFrame?: boolean;
19
+ /** Frame color */
20
+ frameColor?: string;
21
+ /** Frame thickness in pixels */
22
+ frameThickness?: number;
23
+ }
24
+ /**
25
+ * Device dimensions presets
26
+ */
27
+ declare const DEVICE_DIMENSIONS: Record<DeviceType, {
28
+ width: number;
29
+ height: number;
30
+ }>;
31
+ /**
32
+ * Default device configuration
33
+ */
34
+ declare const DEFAULT_DEVICE_CONFIG: DeviceConfigOption;
35
+
36
+ /**
37
+ * Screenshot Studio Configuration
38
+ * Complete screenshot studio configuration
39
+ */
40
+
41
+ /**
42
+ * Export configuration
43
+ */
44
+ interface ExportConfig {
45
+ /** Include ASO metadata in export */
46
+ includeMetadata?: boolean;
47
+ /** ZIP filename template */
48
+ zipFilename?: string;
49
+ /** Folder structure */
50
+ folderStructure?: 'flat' | 'by-language' | 'by-device';
51
+ /** Default export format */
52
+ defaultFormat?: ScreenshotFormat;
53
+ }
54
+ /**
55
+ * AI configuration
56
+ */
57
+ interface AIConfig {
58
+ /** Enable AI features */
59
+ enabled?: boolean;
60
+ /** AI provider */
61
+ provider?: 'gemini' | 'openai' | 'anthropic';
62
+ /** API key (if needed) */
63
+ apiKey?: string;
64
+ }
65
+ /**
66
+ * Screenshot studio configuration
67
+ */
68
+ interface ScreenshotStudioConfig {
69
+ /** Canvas configuration */
70
+ canvas?: CanvasConfig;
71
+ /** Device configuration */
72
+ device?: DeviceConfigOption;
73
+ /** Export configuration */
74
+ export?: ExportConfig;
75
+ /** AI configuration */
76
+ ai?: AIConfig;
77
+ /** Supported languages */
78
+ languages?: Language[];
79
+ /** Default language */
80
+ defaultLanguage?: Language;
81
+ }
82
+ /**
83
+ * Default screenshot studio configuration
84
+ */
85
+ declare const DEFAULT_SCREENSHOT_STUDIO_CONFIG: ScreenshotStudioConfig;
86
+
87
+ export { type AIConfig, CanvasConfig, DEFAULT_DEVICE_CONFIG, DEFAULT_SCREENSHOT_STUDIO_CONFIG, DEVICE_DIMENSIONS, type DeviceConfigOption, type ExportConfig, type ScreenshotStudioConfig };
@@ -0,0 +1,87 @@
1
+ import { m as DeviceType, a as CanvasConfig, p as ScreenshotFormat, L as Language } from '../../CanvasConfig-HFgH7irb.js';
2
+ export { D as DEFAULT_CANVAS_CONFIG } from '../../CanvasConfig-HFgH7irb.js';
3
+
4
+ /**
5
+ * Device Configuration
6
+ * Device frame configuration
7
+ */
8
+
9
+ /**
10
+ * Device configuration
11
+ */
12
+ interface DeviceConfigOption {
13
+ /** Available device types */
14
+ devices: DeviceType[];
15
+ /** Default device type */
16
+ defaultDevice?: DeviceType;
17
+ /** Show device frame */
18
+ showFrame?: boolean;
19
+ /** Frame color */
20
+ frameColor?: string;
21
+ /** Frame thickness in pixels */
22
+ frameThickness?: number;
23
+ }
24
+ /**
25
+ * Device dimensions presets
26
+ */
27
+ declare const DEVICE_DIMENSIONS: Record<DeviceType, {
28
+ width: number;
29
+ height: number;
30
+ }>;
31
+ /**
32
+ * Default device configuration
33
+ */
34
+ declare const DEFAULT_DEVICE_CONFIG: DeviceConfigOption;
35
+
36
+ /**
37
+ * Screenshot Studio Configuration
38
+ * Complete screenshot studio configuration
39
+ */
40
+
41
+ /**
42
+ * Export configuration
43
+ */
44
+ interface ExportConfig {
45
+ /** Include ASO metadata in export */
46
+ includeMetadata?: boolean;
47
+ /** ZIP filename template */
48
+ zipFilename?: string;
49
+ /** Folder structure */
50
+ folderStructure?: 'flat' | 'by-language' | 'by-device';
51
+ /** Default export format */
52
+ defaultFormat?: ScreenshotFormat;
53
+ }
54
+ /**
55
+ * AI configuration
56
+ */
57
+ interface AIConfig {
58
+ /** Enable AI features */
59
+ enabled?: boolean;
60
+ /** AI provider */
61
+ provider?: 'gemini' | 'openai' | 'anthropic';
62
+ /** API key (if needed) */
63
+ apiKey?: string;
64
+ }
65
+ /**
66
+ * Screenshot studio configuration
67
+ */
68
+ interface ScreenshotStudioConfig {
69
+ /** Canvas configuration */
70
+ canvas?: CanvasConfig;
71
+ /** Device configuration */
72
+ device?: DeviceConfigOption;
73
+ /** Export configuration */
74
+ export?: ExportConfig;
75
+ /** AI configuration */
76
+ ai?: AIConfig;
77
+ /** Supported languages */
78
+ languages?: Language[];
79
+ /** Default language */
80
+ defaultLanguage?: Language;
81
+ }
82
+ /**
83
+ * Default screenshot studio configuration
84
+ */
85
+ declare const DEFAULT_SCREENSHOT_STUDIO_CONFIG: ScreenshotStudioConfig;
86
+
87
+ export { type AIConfig, CanvasConfig, DEFAULT_DEVICE_CONFIG, DEFAULT_SCREENSHOT_STUDIO_CONFIG, DEVICE_DIMENSIONS, type DeviceConfigOption, type ExportConfig, type ScreenshotStudioConfig };
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/domain/config/index.ts
21
+ var config_exports = {};
22
+ __export(config_exports, {
23
+ DEFAULT_CANVAS_CONFIG: () => DEFAULT_CANVAS_CONFIG,
24
+ DEFAULT_DEVICE_CONFIG: () => DEFAULT_DEVICE_CONFIG,
25
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG: () => DEFAULT_SCREENSHOT_STUDIO_CONFIG,
26
+ DEVICE_DIMENSIONS: () => DEVICE_DIMENSIONS
27
+ });
28
+ module.exports = __toCommonJS(config_exports);
29
+
30
+ // src/domain/config/CanvasConfig.ts
31
+ var DEFAULT_CANVAS_CONFIG = {
32
+ defaultFormat: "png",
33
+ defaultQuality: 0.9,
34
+ maxDimension: 4096,
35
+ scale: 2,
36
+ backgroundColor: "#ffffff",
37
+ useCORS: true
38
+ };
39
+
40
+ // src/domain/config/DeviceConfig.ts
41
+ var DEVICE_DIMENSIONS = {
42
+ "iphone-15-pro": { width: 1290, height: 2796 },
43
+ "iphone-15": { width: 1179, height: 2556 },
44
+ "iphone-se": { width: 1080, height: 2340 },
45
+ "ipad-pro": { width: 2048, height: 2732 },
46
+ "ipad": { width: 1620, height: 2160 },
47
+ "android-phone": { width: 1440, height: 3120 },
48
+ "android-tablet": { width: 2e3, height: 2200 },
49
+ "desktop": { width: 1920, height: 1080 }
50
+ };
51
+ var DEFAULT_DEVICE_CONFIG = {
52
+ devices: Object.keys(DEVICE_DIMENSIONS),
53
+ defaultDevice: "iphone-15-pro",
54
+ showFrame: true,
55
+ frameColor: "#1f2937",
56
+ frameThickness: 8
57
+ };
58
+
59
+ // src/domain/config/ScreenshotStudioConfig.ts
60
+ var DEFAULT_SCREENSHOT_STUDIO_CONFIG = {
61
+ canvas: {
62
+ defaultFormat: "png",
63
+ defaultQuality: 0.9,
64
+ scale: 2,
65
+ useCORS: true
66
+ },
67
+ device: {
68
+ devices: ["iphone-15-pro"],
69
+ defaultDevice: "iphone-15-pro",
70
+ showFrame: true,
71
+ frameColor: "#1f2937",
72
+ frameThickness: 8
73
+ },
74
+ export: {
75
+ includeMetadata: true,
76
+ folderStructure: "by-language",
77
+ defaultFormat: "png"
78
+ },
79
+ ai: {
80
+ enabled: true,
81
+ provider: "gemini"
82
+ },
83
+ languages: ["en-US", "tr-TR", "de-DE", "fr-FR", "es-ES", "ja-JP"],
84
+ defaultLanguage: "en-US"
85
+ };
86
+ // Annotate the CommonJS export names for ESM import in node:
87
+ 0 && (module.exports = {
88
+ DEFAULT_CANVAS_CONFIG,
89
+ DEFAULT_DEVICE_CONFIG,
90
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG,
91
+ DEVICE_DIMENSIONS
92
+ });
@@ -0,0 +1,15 @@
1
+ import "../../chunk-TZGTTYTZ.mjs";
2
+ import {
3
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG
4
+ } from "../../chunk-Z6IB4BQV.mjs";
5
+ import {
6
+ DEFAULT_CANVAS_CONFIG,
7
+ DEFAULT_DEVICE_CONFIG,
8
+ DEVICE_DIMENSIONS
9
+ } from "../../chunk-MC6PNV2F.mjs";
10
+ export {
11
+ DEFAULT_CANVAS_CONFIG,
12
+ DEFAULT_DEVICE_CONFIG,
13
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG,
14
+ DEVICE_DIMENSIONS
15
+ };
@@ -0,0 +1,45 @@
1
+ export { A as AppStoreMetadata, B as BackgroundPattern, u as BackgroundPatternEnum, C as CanvasColor, a as CanvasConfig, b as CanvasContextConfig, c as CanvasDimensions, d as CanvasExportOptions, e as CanvasFormat, f as CanvasOperation, g as CanvasPosition, h as CanvasQuality, i as CanvasRect, j as CanvasResult, D as DEFAULT_CANVAS_CONFIG, k as DeviceConfig, l as DeviceDimensions, m as DeviceType, v as DeviceTypeEnum, F as FrameStyle, w as FrameStyleEnum, L as Language, n as LayoutStyle, x as LayoutStyleEnum, S as ScreenshotContent, o as ScreenshotDesign, p as ScreenshotFormat, y as ScreenshotFormatEnum, q as ScreenshotGenerationOptions, r as ScreenshotMetadata, s as ScreenshotProject, t as ScreenshotTemplate } from '../CanvasConfig-HFgH7irb.mjs';
2
+ export { C as CSVExportOptions, E as ExcelExportOptions, a as ExportFormat, P as PDFExportOptions, R as ReportData, b as ReportExportResult, c as ReportItem, d as ReportItemType, e as ReportSummary } from '../report.types-DWDnprBx.mjs';
3
+ export { AIConfig, DEFAULT_DEVICE_CONFIG, DEFAULT_SCREENSHOT_STUDIO_CONFIG, DEVICE_DIMENSIONS, DeviceConfigOption, ExportConfig, ScreenshotStudioConfig } from './config/index.mjs';
4
+
5
+ /**
6
+ * Freehand Types
7
+ * Types for pointer-based freehand drawing on a canvas
8
+ */
9
+ /**
10
+ * A single sampled point along a stroke, in CSS pixels relative to the canvas
11
+ */
12
+ interface FreehandPoint {
13
+ x: number;
14
+ y: number;
15
+ /** Normalized stylus pressure (0–1). ~0.5 for mouse/touch when unsupported. */
16
+ pressure: number;
17
+ }
18
+ /**
19
+ * A completed (or in-progress) freehand stroke
20
+ */
21
+ interface FreehandStroke {
22
+ /** Base brush size in CSS pixels. */
23
+ size: number;
24
+ /** CSS color of the stroke. */
25
+ color: string;
26
+ /** True when the stroke should vary width with per-point pressure. */
27
+ dynamic: boolean;
28
+ /** Ordered points from pointer-down to pointer-up. */
29
+ points: FreehandPoint[];
30
+ }
31
+ /**
32
+ * Options for the useFreehandCanvas hook
33
+ */
34
+ interface UseFreehandCanvasOptions {
35
+ /** Base brush size in CSS pixels. Default: 3 */
36
+ brushSize?: number;
37
+ /** Stroke color. Default: '#1a1a1a' */
38
+ color?: string;
39
+ /** Vary stroke width with stylus pressure (mouse/touch stay constant). Default: true */
40
+ pressureEnabled?: boolean;
41
+ /** Called after each completed stroke (pointer-up). */
42
+ onStrokeEnd?: (stroke: FreehandStroke) => void;
43
+ }
44
+
45
+ export type { FreehandPoint, FreehandStroke, UseFreehandCanvasOptions };
@@ -0,0 +1,45 @@
1
+ export { A as AppStoreMetadata, B as BackgroundPattern, u as BackgroundPatternEnum, C as CanvasColor, a as CanvasConfig, b as CanvasContextConfig, c as CanvasDimensions, d as CanvasExportOptions, e as CanvasFormat, f as CanvasOperation, g as CanvasPosition, h as CanvasQuality, i as CanvasRect, j as CanvasResult, D as DEFAULT_CANVAS_CONFIG, k as DeviceConfig, l as DeviceDimensions, m as DeviceType, v as DeviceTypeEnum, F as FrameStyle, w as FrameStyleEnum, L as Language, n as LayoutStyle, x as LayoutStyleEnum, S as ScreenshotContent, o as ScreenshotDesign, p as ScreenshotFormat, y as ScreenshotFormatEnum, q as ScreenshotGenerationOptions, r as ScreenshotMetadata, s as ScreenshotProject, t as ScreenshotTemplate } from '../CanvasConfig-HFgH7irb.js';
2
+ export { C as CSVExportOptions, E as ExcelExportOptions, a as ExportFormat, P as PDFExportOptions, R as ReportData, b as ReportExportResult, c as ReportItem, d as ReportItemType, e as ReportSummary } from '../report.types-DWDnprBx.js';
3
+ export { AIConfig, DEFAULT_DEVICE_CONFIG, DEFAULT_SCREENSHOT_STUDIO_CONFIG, DEVICE_DIMENSIONS, DeviceConfigOption, ExportConfig, ScreenshotStudioConfig } from './config/index.js';
4
+
5
+ /**
6
+ * Freehand Types
7
+ * Types for pointer-based freehand drawing on a canvas
8
+ */
9
+ /**
10
+ * A single sampled point along a stroke, in CSS pixels relative to the canvas
11
+ */
12
+ interface FreehandPoint {
13
+ x: number;
14
+ y: number;
15
+ /** Normalized stylus pressure (0–1). ~0.5 for mouse/touch when unsupported. */
16
+ pressure: number;
17
+ }
18
+ /**
19
+ * A completed (or in-progress) freehand stroke
20
+ */
21
+ interface FreehandStroke {
22
+ /** Base brush size in CSS pixels. */
23
+ size: number;
24
+ /** CSS color of the stroke. */
25
+ color: string;
26
+ /** True when the stroke should vary width with per-point pressure. */
27
+ dynamic: boolean;
28
+ /** Ordered points from pointer-down to pointer-up. */
29
+ points: FreehandPoint[];
30
+ }
31
+ /**
32
+ * Options for the useFreehandCanvas hook
33
+ */
34
+ interface UseFreehandCanvasOptions {
35
+ /** Base brush size in CSS pixels. Default: 3 */
36
+ brushSize?: number;
37
+ /** Stroke color. Default: '#1a1a1a' */
38
+ color?: string;
39
+ /** Vary stroke width with stylus pressure (mouse/touch stay constant). Default: true */
40
+ pressureEnabled?: boolean;
41
+ /** Called after each completed stroke (pointer-up). */
42
+ onStrokeEnd?: (stroke: FreehandStroke) => void;
43
+ }
44
+
45
+ export type { FreehandPoint, FreehandStroke, UseFreehandCanvasOptions };
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/domain/index.ts
21
+ var domain_exports = {};
22
+ __export(domain_exports, {
23
+ BackgroundPatternEnum: () => BackgroundPatternEnum,
24
+ DEFAULT_CANVAS_CONFIG: () => DEFAULT_CANVAS_CONFIG,
25
+ DEFAULT_DEVICE_CONFIG: () => DEFAULT_DEVICE_CONFIG,
26
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG: () => DEFAULT_SCREENSHOT_STUDIO_CONFIG,
27
+ DEVICE_DIMENSIONS: () => DEVICE_DIMENSIONS,
28
+ DeviceTypeEnum: () => DeviceTypeEnum,
29
+ FrameStyleEnum: () => FrameStyleEnum,
30
+ LayoutStyleEnum: () => LayoutStyleEnum,
31
+ ScreenshotFormatEnum: () => ScreenshotFormatEnum
32
+ });
33
+ module.exports = __toCommonJS(domain_exports);
34
+
35
+ // src/domain/types/screenshot.types.ts
36
+ var DeviceTypeEnum = {
37
+ IPHONE_15_PRO: "iphone-15-pro",
38
+ IPHONE_15: "iphone-15",
39
+ IPHONE_SE: "iphone-se",
40
+ IPAD_PRO: "ipad-pro",
41
+ IPAD: "ipad",
42
+ ANDROID_PHONE: "android-phone",
43
+ ANDROID_TABLET: "android-tablet",
44
+ DESKTOP: "desktop"
45
+ };
46
+ var FrameStyleEnum = {
47
+ REALISTIC: "realistic",
48
+ MINIMAL: "minimal",
49
+ NONE: "none"
50
+ };
51
+ var LayoutStyleEnum = {
52
+ TEXT_TOP: "text-top",
53
+ TEXT_BOTTOM: "text-bottom",
54
+ TEXT_OVERLAY: "text-overlay"
55
+ };
56
+ var BackgroundPatternEnum = {
57
+ NONE: "none",
58
+ DOTS: "dots",
59
+ GRID: "grid",
60
+ LINES: "lines",
61
+ WAVES: "waves",
62
+ CHECKERS: "checkers"
63
+ };
64
+ var ScreenshotFormatEnum = {
65
+ PNG: "png",
66
+ JPEG: "jpeg",
67
+ WEBP: "webp"
68
+ };
69
+
70
+ // src/domain/config/CanvasConfig.ts
71
+ var DEFAULT_CANVAS_CONFIG = {
72
+ defaultFormat: "png",
73
+ defaultQuality: 0.9,
74
+ maxDimension: 4096,
75
+ scale: 2,
76
+ backgroundColor: "#ffffff",
77
+ useCORS: true
78
+ };
79
+
80
+ // src/domain/config/DeviceConfig.ts
81
+ var DEVICE_DIMENSIONS = {
82
+ "iphone-15-pro": { width: 1290, height: 2796 },
83
+ "iphone-15": { width: 1179, height: 2556 },
84
+ "iphone-se": { width: 1080, height: 2340 },
85
+ "ipad-pro": { width: 2048, height: 2732 },
86
+ "ipad": { width: 1620, height: 2160 },
87
+ "android-phone": { width: 1440, height: 3120 },
88
+ "android-tablet": { width: 2e3, height: 2200 },
89
+ "desktop": { width: 1920, height: 1080 }
90
+ };
91
+ var DEFAULT_DEVICE_CONFIG = {
92
+ devices: Object.keys(DEVICE_DIMENSIONS),
93
+ defaultDevice: "iphone-15-pro",
94
+ showFrame: true,
95
+ frameColor: "#1f2937",
96
+ frameThickness: 8
97
+ };
98
+
99
+ // src/domain/config/ScreenshotStudioConfig.ts
100
+ var DEFAULT_SCREENSHOT_STUDIO_CONFIG = {
101
+ canvas: {
102
+ defaultFormat: "png",
103
+ defaultQuality: 0.9,
104
+ scale: 2,
105
+ useCORS: true
106
+ },
107
+ device: {
108
+ devices: ["iphone-15-pro"],
109
+ defaultDevice: "iphone-15-pro",
110
+ showFrame: true,
111
+ frameColor: "#1f2937",
112
+ frameThickness: 8
113
+ },
114
+ export: {
115
+ includeMetadata: true,
116
+ folderStructure: "by-language",
117
+ defaultFormat: "png"
118
+ },
119
+ ai: {
120
+ enabled: true,
121
+ provider: "gemini"
122
+ },
123
+ languages: ["en-US", "tr-TR", "de-DE", "fr-FR", "es-ES", "ja-JP"],
124
+ defaultLanguage: "en-US"
125
+ };
126
+ // Annotate the CommonJS export names for ESM import in node:
127
+ 0 && (module.exports = {
128
+ BackgroundPatternEnum,
129
+ DEFAULT_CANVAS_CONFIG,
130
+ DEFAULT_DEVICE_CONFIG,
131
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG,
132
+ DEVICE_DIMENSIONS,
133
+ DeviceTypeEnum,
134
+ FrameStyleEnum,
135
+ LayoutStyleEnum,
136
+ ScreenshotFormatEnum
137
+ });
@@ -0,0 +1,55 @@
1
+ import "../chunk-TZGTTYTZ.mjs";
2
+ import {
3
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG
4
+ } from "../chunk-Z6IB4BQV.mjs";
5
+ import {
6
+ DEFAULT_CANVAS_CONFIG,
7
+ DEFAULT_DEVICE_CONFIG,
8
+ DEVICE_DIMENSIONS
9
+ } from "../chunk-MC6PNV2F.mjs";
10
+
11
+ // src/domain/types/screenshot.types.ts
12
+ var DeviceTypeEnum = {
13
+ IPHONE_15_PRO: "iphone-15-pro",
14
+ IPHONE_15: "iphone-15",
15
+ IPHONE_SE: "iphone-se",
16
+ IPAD_PRO: "ipad-pro",
17
+ IPAD: "ipad",
18
+ ANDROID_PHONE: "android-phone",
19
+ ANDROID_TABLET: "android-tablet",
20
+ DESKTOP: "desktop"
21
+ };
22
+ var FrameStyleEnum = {
23
+ REALISTIC: "realistic",
24
+ MINIMAL: "minimal",
25
+ NONE: "none"
26
+ };
27
+ var LayoutStyleEnum = {
28
+ TEXT_TOP: "text-top",
29
+ TEXT_BOTTOM: "text-bottom",
30
+ TEXT_OVERLAY: "text-overlay"
31
+ };
32
+ var BackgroundPatternEnum = {
33
+ NONE: "none",
34
+ DOTS: "dots",
35
+ GRID: "grid",
36
+ LINES: "lines",
37
+ WAVES: "waves",
38
+ CHECKERS: "checkers"
39
+ };
40
+ var ScreenshotFormatEnum = {
41
+ PNG: "png",
42
+ JPEG: "jpeg",
43
+ WEBP: "webp"
44
+ };
45
+ export {
46
+ BackgroundPatternEnum,
47
+ DEFAULT_CANVAS_CONFIG,
48
+ DEFAULT_DEVICE_CONFIG,
49
+ DEFAULT_SCREENSHOT_STUDIO_CONFIG,
50
+ DEVICE_DIMENSIONS,
51
+ DeviceTypeEnum,
52
+ FrameStyleEnum,
53
+ LayoutStyleEnum,
54
+ ScreenshotFormatEnum
55
+ };
@@ -0,0 +1,7 @@
1
+ export { A as AppStoreMetadata, B as BackgroundPattern, C as CanvasColor, a as CanvasConfig, b as CanvasContextConfig, c as CanvasDimensions, d as CanvasExportOptions, e as CanvasFormat, f as CanvasOperation, g as CanvasPosition, h as CanvasQuality, i as CanvasRect, j as CanvasResult, D as DEFAULT_CANVAS_CONFIG, k as DeviceConfig, l as DeviceDimensions, m as DeviceType, F as FrameStyle, L as Language, n as LayoutStyle, S as ScreenshotContent, o as ScreenshotDesign, p as ScreenshotFormat, q as ScreenshotGenerationOptions, r as ScreenshotMetadata, s as ScreenshotProject, t as ScreenshotTemplate } from './CanvasConfig-HFgH7irb.mjs';
2
+ export { C as CSVExportOptions, E as ExcelExportOptions, a as ExportFormat, P as PDFExportOptions, R as ReportData, b as ReportExportResult, c as ReportItem, d as ReportItemType, e as ReportSummary } from './report.types-DWDnprBx.mjs';
3
+ export { FreehandPoint, FreehandStroke, UseFreehandCanvasOptions } from './domain/index.mjs';
4
+ export { AIConfig, DEFAULT_DEVICE_CONFIG, DEFAULT_SCREENSHOT_STUDIO_CONFIG, DEVICE_DIMENSIONS, DeviceConfigOption, ExportConfig, ScreenshotStudioConfig } from './domain/config/index.mjs';
5
+ export { CanvasRenderer, DeviceConfigService, PatternRenderer, ScreenshotRenderer } from './infrastructure/index.mjs';
6
+ export { ReportService, ScreenshotStudioService } from './application/index.mjs';
7
+ export { UseCanvasExportOptions, UseCanvasExportReturn, UseFreehandCanvasReturn, UseReportExportReturn, UseScreenshotStudioOptions, UseScreenshotStudioReturn, useCanvasExport, useFreehandCanvas, useReportExport, useScreenshotStudio } from './presentation/index.mjs';
@@ -0,0 +1,7 @@
1
+ export { A as AppStoreMetadata, B as BackgroundPattern, C as CanvasColor, a as CanvasConfig, b as CanvasContextConfig, c as CanvasDimensions, d as CanvasExportOptions, e as CanvasFormat, f as CanvasOperation, g as CanvasPosition, h as CanvasQuality, i as CanvasRect, j as CanvasResult, D as DEFAULT_CANVAS_CONFIG, k as DeviceConfig, l as DeviceDimensions, m as DeviceType, F as FrameStyle, L as Language, n as LayoutStyle, S as ScreenshotContent, o as ScreenshotDesign, p as ScreenshotFormat, q as ScreenshotGenerationOptions, r as ScreenshotMetadata, s as ScreenshotProject, t as ScreenshotTemplate } from './CanvasConfig-HFgH7irb.js';
2
+ export { C as CSVExportOptions, E as ExcelExportOptions, a as ExportFormat, P as PDFExportOptions, R as ReportData, b as ReportExportResult, c as ReportItem, d as ReportItemType, e as ReportSummary } from './report.types-DWDnprBx.js';
3
+ export { FreehandPoint, FreehandStroke, UseFreehandCanvasOptions } from './domain/index.js';
4
+ export { AIConfig, DEFAULT_DEVICE_CONFIG, DEFAULT_SCREENSHOT_STUDIO_CONFIG, DEVICE_DIMENSIONS, DeviceConfigOption, ExportConfig, ScreenshotStudioConfig } from './domain/config/index.js';
5
+ export { CanvasRenderer, DeviceConfigService, PatternRenderer, ScreenshotRenderer } from './infrastructure/index.js';
6
+ export { ReportService, ScreenshotStudioService } from './application/index.js';
7
+ export { UseCanvasExportOptions, UseCanvasExportReturn, UseFreehandCanvasReturn, UseReportExportReturn, UseScreenshotStudioOptions, UseScreenshotStudioReturn, useCanvasExport, useFreehandCanvas, useReportExport, useScreenshotStudio } from './presentation/index.js';