@signiphi/pdf-signer 0.1.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 (192) hide show
  1. package/INSTALLING_LOCALLY.md +184 -0
  2. package/LICENSE +2 -0
  3. package/README.md +1093 -0
  4. package/assets/viewer.html +314 -0
  5. package/dist/__tests__/helpers/fixtures.d.ts +43 -0
  6. package/dist/__tests__/helpers/fixtures.d.ts.map +1 -0
  7. package/dist/__tests__/helpers/mocks.d.ts +333 -0
  8. package/dist/__tests__/helpers/mocks.d.ts.map +1 -0
  9. package/dist/__tests__/setup.d.ts +6 -0
  10. package/dist/__tests__/setup.d.ts.map +1 -0
  11. package/dist/components/AttachmentUpload.d.ts +17 -0
  12. package/dist/components/AttachmentUpload.d.ts.map +1 -0
  13. package/dist/components/EditableFieldsPanel.d.ts +30 -0
  14. package/dist/components/EditableFieldsPanel.d.ts.map +1 -0
  15. package/dist/components/ErrorBoundary.d.ts +67 -0
  16. package/dist/components/ErrorBoundary.d.ts.map +1 -0
  17. package/dist/components/FormFieldsView.d.ts +42 -0
  18. package/dist/components/FormFieldsView.d.ts.map +1 -0
  19. package/dist/components/PdfViewerStyled.d.ts +16 -0
  20. package/dist/components/PdfViewerStyled.d.ts.map +1 -0
  21. package/dist/components/PoweredBySigniphi.d.ts +11 -0
  22. package/dist/components/PoweredBySigniphi.d.ts.map +1 -0
  23. package/dist/components/SignatureCanvas.d.ts +12 -0
  24. package/dist/components/SignatureCanvas.d.ts.map +1 -0
  25. package/dist/components/SignatureInitialsBox.d.ts +23 -0
  26. package/dist/components/SignatureInitialsBox.d.ts.map +1 -0
  27. package/dist/components/SignatureModal.d.ts +22 -0
  28. package/dist/components/SignatureModal.d.ts.map +1 -0
  29. package/dist/components/SigningInstructions.d.ts +12 -0
  30. package/dist/components/SigningInstructions.d.ts.map +1 -0
  31. package/dist/components/SubmissionForm.d.ts +52 -0
  32. package/dist/components/SubmissionForm.d.ts.map +1 -0
  33. package/dist/components/ViewToggleToolbar.d.ts +30 -0
  34. package/dist/components/ViewToggleToolbar.d.ts.map +1 -0
  35. package/dist/components/form-fields/CheckboxRenderer.d.ts +10 -0
  36. package/dist/components/form-fields/CheckboxRenderer.d.ts.map +1 -0
  37. package/dist/components/form-fields/DateFieldRenderer.d.ts +14 -0
  38. package/dist/components/form-fields/DateFieldRenderer.d.ts.map +1 -0
  39. package/dist/components/form-fields/DropdownRenderer.d.ts +14 -0
  40. package/dist/components/form-fields/DropdownRenderer.d.ts.map +1 -0
  41. package/dist/components/form-fields/FormFieldRenderer.d.ts +20 -0
  42. package/dist/components/form-fields/FormFieldRenderer.d.ts.map +1 -0
  43. package/dist/components/form-fields/InitialsFieldRenderer.d.ts +14 -0
  44. package/dist/components/form-fields/InitialsFieldRenderer.d.ts.map +1 -0
  45. package/dist/components/form-fields/RadioGroupRenderer.d.ts +10 -0
  46. package/dist/components/form-fields/RadioGroupRenderer.d.ts.map +1 -0
  47. package/dist/components/form-fields/SignatureFieldRenderer.d.ts +16 -0
  48. package/dist/components/form-fields/SignatureFieldRenderer.d.ts.map +1 -0
  49. package/dist/components/form-fields/TextFieldRenderer.d.ts +14 -0
  50. package/dist/components/form-fields/TextFieldRenderer.d.ts.map +1 -0
  51. package/dist/components/form-fields/TextLabelRenderer.d.ts +14 -0
  52. package/dist/components/form-fields/TextLabelRenderer.d.ts.map +1 -0
  53. package/dist/components/form-fields/index.d.ts +14 -0
  54. package/dist/components/form-fields/index.d.ts.map +1 -0
  55. package/dist/components/index.d.ts +14 -0
  56. package/dist/components/index.d.ts.map +1 -0
  57. package/dist/components/index.js +6297 -0
  58. package/dist/components/index.js.map +1 -0
  59. package/dist/components/index.mjs +6248 -0
  60. package/dist/components/index.mjs.map +1 -0
  61. package/dist/core/PdfViewerCore.d.ts +19 -0
  62. package/dist/core/PdfViewerCore.d.ts.map +1 -0
  63. package/dist/core/SignatureCaptureCore.d.ts +37 -0
  64. package/dist/core/SignatureCaptureCore.d.ts.map +1 -0
  65. package/dist/core/index.d.ts +3 -0
  66. package/dist/core/index.d.ts.map +1 -0
  67. package/dist/core/index.js +907 -0
  68. package/dist/core/index.js.map +1 -0
  69. package/dist/core/index.mjs +884 -0
  70. package/dist/core/index.mjs.map +1 -0
  71. package/dist/hooks/index.d.ts +8 -0
  72. package/dist/hooks/index.d.ts.map +1 -0
  73. package/dist/hooks/index.js +2167 -0
  74. package/dist/hooks/index.js.map +1 -0
  75. package/dist/hooks/index.mjs +2139 -0
  76. package/dist/hooks/index.mjs.map +1 -0
  77. package/dist/hooks/useAttachments.d.ts +25 -0
  78. package/dist/hooks/useAttachments.d.ts.map +1 -0
  79. package/dist/hooks/useFieldFiltering.d.ts +29 -0
  80. package/dist/hooks/useFieldFiltering.d.ts.map +1 -0
  81. package/dist/hooks/useFormFields.d.ts +23 -0
  82. package/dist/hooks/useFormFields.d.ts.map +1 -0
  83. package/dist/hooks/useMultiSignerContext.d.ts +25 -0
  84. package/dist/hooks/useMultiSignerContext.d.ts.map +1 -0
  85. package/dist/hooks/usePdfViewer.d.ts +52 -0
  86. package/dist/hooks/usePdfViewer.d.ts.map +1 -0
  87. package/dist/hooks/useSignatureCapture.d.ts +17 -0
  88. package/dist/hooks/useSignatureCapture.d.ts.map +1 -0
  89. package/dist/hooks/useSignatures.d.ts +25 -0
  90. package/dist/hooks/useSignatures.d.ts.map +1 -0
  91. package/dist/index.css +4929 -0
  92. package/dist/index.css.map +1 -0
  93. package/dist/index.d.ts +17 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/dist/index.js +7220 -0
  96. package/dist/index.js.map +1 -0
  97. package/dist/index.mjs +7093 -0
  98. package/dist/index.mjs.map +1 -0
  99. package/dist/integrations/index.d.ts +6 -0
  100. package/dist/integrations/index.d.ts.map +1 -0
  101. package/dist/integrations/index.js +242 -0
  102. package/dist/integrations/index.js.map +1 -0
  103. package/dist/integrations/index.mjs +218 -0
  104. package/dist/integrations/index.mjs.map +1 -0
  105. package/dist/integrations/next-config.d.ts +46 -0
  106. package/dist/integrations/next-config.d.ts.map +1 -0
  107. package/dist/integrations/vite-plugin.d.ts +48 -0
  108. package/dist/integrations/vite-plugin.d.ts.map +1 -0
  109. package/dist/lib/index.d.ts +3 -0
  110. package/dist/lib/index.d.ts.map +1 -0
  111. package/dist/lib/ui/alert.d.ts +9 -0
  112. package/dist/lib/ui/alert.d.ts.map +1 -0
  113. package/dist/lib/ui/button.d.ts +12 -0
  114. package/dist/lib/ui/button.d.ts.map +1 -0
  115. package/dist/lib/ui/calendar.d.ts +10 -0
  116. package/dist/lib/ui/calendar.d.ts.map +1 -0
  117. package/dist/lib/ui/card.d.ts +9 -0
  118. package/dist/lib/ui/card.d.ts.map +1 -0
  119. package/dist/lib/ui/checkbox.d.ts +5 -0
  120. package/dist/lib/ui/checkbox.d.ts.map +1 -0
  121. package/dist/lib/ui/dialog.d.ts +20 -0
  122. package/dist/lib/ui/dialog.d.ts.map +1 -0
  123. package/dist/lib/ui/index.d.ts +12 -0
  124. package/dist/lib/ui/index.d.ts.map +1 -0
  125. package/dist/lib/ui/input.d.ts +6 -0
  126. package/dist/lib/ui/input.d.ts.map +1 -0
  127. package/dist/lib/ui/label.d.ts +6 -0
  128. package/dist/lib/ui/label.d.ts.map +1 -0
  129. package/dist/lib/ui/popover.d.ts +7 -0
  130. package/dist/lib/ui/popover.d.ts.map +1 -0
  131. package/dist/lib/ui/radio-group.d.ts +6 -0
  132. package/dist/lib/ui/radio-group.d.ts.map +1 -0
  133. package/dist/lib/ui/select.d.ts +14 -0
  134. package/dist/lib/ui/select.d.ts.map +1 -0
  135. package/dist/lib/utils.d.ts +7 -0
  136. package/dist/lib/utils.d.ts.map +1 -0
  137. package/dist/styles/index.css +5004 -0
  138. package/dist/types/index.d.ts +265 -0
  139. package/dist/types/index.d.ts.map +1 -0
  140. package/dist/types/index.js +26 -0
  141. package/dist/types/index.js.map +1 -0
  142. package/dist/types/index.mjs +23 -0
  143. package/dist/types/index.mjs.map +1 -0
  144. package/dist/utils/attachment-validators.d.ts +118 -0
  145. package/dist/utils/attachment-validators.d.ts.map +1 -0
  146. package/dist/utils/audit-trail.d.ts +27 -0
  147. package/dist/utils/audit-trail.d.ts.map +1 -0
  148. package/dist/utils/date-validation.d.ts +30 -0
  149. package/dist/utils/date-validation.d.ts.map +1 -0
  150. package/dist/utils/errors.d.ts +106 -0
  151. package/dist/utils/errors.d.ts.map +1 -0
  152. package/dist/utils/field-extraction.d.ts +27 -0
  153. package/dist/utils/field-extraction.d.ts.map +1 -0
  154. package/dist/utils/field-visibility.d.ts +104 -0
  155. package/dist/utils/field-visibility.d.ts.map +1 -0
  156. package/dist/utils/index.d.ts +17 -0
  157. package/dist/utils/index.d.ts.map +1 -0
  158. package/dist/utils/index.js +2501 -0
  159. package/dist/utils/index.js.map +1 -0
  160. package/dist/utils/index.mjs +2404 -0
  161. package/dist/utils/index.mjs.map +1 -0
  162. package/dist/utils/logger.d.ts +16 -0
  163. package/dist/utils/logger.d.ts.map +1 -0
  164. package/dist/utils/pdf-field-type-helpers.d.ts +78 -0
  165. package/dist/utils/pdf-field-type-helpers.d.ts.map +1 -0
  166. package/dist/utils/pdf-helpers.d.ts +38 -0
  167. package/dist/utils/pdf-helpers.d.ts.map +1 -0
  168. package/dist/utils/pdf-lib-loader.d.ts +45 -0
  169. package/dist/utils/pdf-lib-loader.d.ts.map +1 -0
  170. package/dist/utils/pdf-manipulation.d.ts +93 -0
  171. package/dist/utils/pdf-manipulation.d.ts.map +1 -0
  172. package/dist/utils/pdf-validators.d.ts +149 -0
  173. package/dist/utils/pdf-validators.d.ts.map +1 -0
  174. package/dist/utils/pdf-viewer-filter.d.ts +35 -0
  175. package/dist/utils/pdf-viewer-filter.d.ts.map +1 -0
  176. package/dist/utils/pdf-widget-helpers.d.ts +98 -0
  177. package/dist/utils/pdf-widget-helpers.d.ts.map +1 -0
  178. package/dist/utils/pdfjs-config.d.ts +56 -0
  179. package/dist/utils/pdfjs-config.d.ts.map +1 -0
  180. package/dist/utils/pdfjs-version-check.d.ts +28 -0
  181. package/dist/utils/pdfjs-version-check.d.ts.map +1 -0
  182. package/dist/utils/performance-monitor.d.ts +172 -0
  183. package/dist/utils/performance-monitor.d.ts.map +1 -0
  184. package/dist/utils/tracking.d.ts +89 -0
  185. package/dist/utils/tracking.d.ts.map +1 -0
  186. package/package.json +180 -0
  187. package/scripts/analyze-bundle.js +271 -0
  188. package/scripts/copy-utils.js +227 -0
  189. package/scripts/copy-utils.test.js +164 -0
  190. package/scripts/postinstall.js +109 -0
  191. package/scripts/setup.js +108 -0
  192. package/src/styles/index.css +139 -0
@@ -0,0 +1,172 @@
1
+ /**
2
+ * Performance Monitoring Utility
3
+ *
4
+ * Provides utilities for tracking and measuring performance metrics
5
+ * in critical operations like PDF loading, form filling, and signature capture.
6
+ *
7
+ * Usage:
8
+ * ```typescript
9
+ * const monitor = createPerformanceMonitor();
10
+ * const endTimer = monitor.startTimer('pdf-load');
11
+ * await loadPdf(url);
12
+ * endTimer();
13
+ * const metrics = monitor.getMetrics();
14
+ * ```
15
+ */
16
+ export interface PerformanceMetric {
17
+ label: string;
18
+ duration: number;
19
+ timestamp: number;
20
+ }
21
+ export interface PerformanceMetrics {
22
+ [label: string]: {
23
+ count: number;
24
+ total: number;
25
+ avg: number;
26
+ min: number;
27
+ max: number;
28
+ last: number;
29
+ };
30
+ }
31
+ /**
32
+ * Performance Monitor Class
33
+ *
34
+ * Tracks performance metrics for various operations.
35
+ * Maintains history and calculates statistics (avg, min, max).
36
+ */
37
+ export declare class PerformanceMonitor {
38
+ private metrics;
39
+ private enabled;
40
+ constructor(enabled?: boolean);
41
+ /**
42
+ * Start a timer for a labeled operation
43
+ *
44
+ * @param label - Unique label for the operation
45
+ * @returns Function to call when operation completes
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * const endTimer = monitor.startTimer('pdf-load');
50
+ * await loadPdf(url);
51
+ * endTimer(); // Records duration
52
+ * ```
53
+ */
54
+ startTimer(label: string): () => void;
55
+ /**
56
+ * Manually record a performance measurement
57
+ *
58
+ * @param label - Unique label for the operation
59
+ * @param duration - Duration in milliseconds
60
+ *
61
+ * @example
62
+ * ```typescript
63
+ * monitor.measure('pdf-load', 1234.56);
64
+ * ```
65
+ */
66
+ measure(label: string, duration: number): void;
67
+ /**
68
+ * Get all recorded metrics with statistics
69
+ *
70
+ * @returns Object containing metrics for all labels
71
+ *
72
+ * @example
73
+ * ```typescript
74
+ * const metrics = monitor.getMetrics();
75
+ * console.log(`PDF load avg: ${metrics['pdf-load'].avg}ms`);
76
+ * ```
77
+ */
78
+ getMetrics(): PerformanceMetrics;
79
+ /**
80
+ * Get metrics for a specific label
81
+ *
82
+ * @param label - Label to get metrics for
83
+ * @returns Metrics for the label, or null if not found
84
+ */
85
+ getMetric(label: string): PerformanceMetrics[string] | null;
86
+ /**
87
+ * Get raw measurements for a label
88
+ *
89
+ * @param label - Label to get measurements for
90
+ * @returns Array of duration measurements in milliseconds
91
+ */
92
+ getRawMeasurements(label: string): number[];
93
+ /**
94
+ * Clear all metrics
95
+ */
96
+ clear(): void;
97
+ /**
98
+ * Clear metrics for a specific label
99
+ *
100
+ * @param label - Label to clear metrics for
101
+ */
102
+ clearLabel(label: string): void;
103
+ /**
104
+ * Enable or disable performance monitoring
105
+ *
106
+ * @param enabled - Whether to enable monitoring
107
+ */
108
+ setEnabled(enabled: boolean): void;
109
+ /**
110
+ * Check if monitoring is enabled
111
+ */
112
+ isEnabled(): boolean;
113
+ /**
114
+ * Generate a performance report as a string
115
+ *
116
+ * @returns Formatted performance report
117
+ */
118
+ generateReport(): string;
119
+ }
120
+ /**
121
+ * Create a new performance monitor instance
122
+ *
123
+ * @param enabled - Whether to enable monitoring (default: true in development)
124
+ * @returns PerformanceMonitor instance
125
+ *
126
+ * @example
127
+ * ```typescript
128
+ * const monitor = createPerformanceMonitor();
129
+ * ```
130
+ */
131
+ export declare function createPerformanceMonitor(enabled?: boolean): PerformanceMonitor;
132
+ /**
133
+ * Global performance monitor instance
134
+ * Can be used across the application for centralized monitoring
135
+ */
136
+ export declare const globalPerformanceMonitor: PerformanceMonitor;
137
+ /**
138
+ * Decorator for measuring function performance
139
+ *
140
+ * @param label - Label for the performance measurement
141
+ * @param monitor - Performance monitor instance (defaults to global)
142
+ * @returns Function decorator
143
+ *
144
+ * @example
145
+ * ```typescript
146
+ * class MyClass {
147
+ * @measurePerformance('my-operation')
148
+ * async myOperation() {
149
+ * // ... operation code ...
150
+ * }
151
+ * }
152
+ * ```
153
+ */
154
+ export declare function measurePerformance(label: string, monitor?: PerformanceMonitor): (_target: any, _propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
155
+ /**
156
+ * Higher-order function to wrap async functions with performance monitoring
157
+ *
158
+ * @param label - Label for the performance measurement
159
+ * @param fn - Function to wrap
160
+ * @param monitor - Performance monitor instance (defaults to global)
161
+ * @returns Wrapped function
162
+ *
163
+ * @example
164
+ * ```typescript
165
+ * const loadPdfWithMonitoring = withPerformanceMonitoring(
166
+ * 'pdf-load',
167
+ * loadPdf
168
+ * );
169
+ * ```
170
+ */
171
+ export declare function withPerformanceMonitoring<T extends (...args: any[]) => Promise<any>>(label: string, fn: T, monitor?: PerformanceMonitor): T;
172
+ //# sourceMappingURL=performance-monitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"performance-monitor.d.ts","sourceRoot":"","sources":["../../src/utils/performance-monitor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,CAAC,KAAK,EAAE,MAAM,GAAG;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED;;;;;GAKG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,OAAO,CAAU;gBAEb,OAAO,GAAE,OAAc;IAInC;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,IAAI;IAarC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAY9C;;;;;;;;;;OAUG;IACH,UAAU,IAAI,kBAAkB;IAyBhC;;;;;OAKG;IACH,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,IAAI;IAsB3D;;;;;OAKG;IACH,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAI3C;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;;;OAIG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI/B;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIlC;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;OAIG;IACH,cAAc,IAAI,MAAM;CAoBzB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAG9E;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB,oBAA6B,CAAC;AAEnE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,kBAA6C,IAGpD,SAAS,GAAG,EACZ,cAAc,MAAM,EACpB,YAAY,kBAAkB,wBAgBjC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,EAClF,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,CAAC,EACL,OAAO,GAAE,kBAA6C,GACrD,CAAC,CASH"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Usage tracking utilities for signiphi API integration.
3
+ * Enables automatic tracking of document sends and signings via API key.
4
+ */
5
+ /**
6
+ * Configuration for the tracking API
7
+ */
8
+ export interface TrackingConfig {
9
+ /** API key for authentication */
10
+ apiKey: string;
11
+ /** Custom API endpoint (defaults to https://api.signiphi.ai) */
12
+ endpoint?: string;
13
+ }
14
+ /**
15
+ * Data for tracking a document send event
16
+ */
17
+ export interface TrackSendData {
18
+ /** Email address of the recipient */
19
+ recipientEmail: string;
20
+ /** Optional document ID for correlation */
21
+ documentId?: string;
22
+ /** Optional idempotency key to prevent duplicate tracking */
23
+ idempotencyKey?: string;
24
+ /** Optional additional metadata */
25
+ metadata?: Record<string, unknown>;
26
+ }
27
+ /**
28
+ * Data for tracking a document signing event
29
+ */
30
+ export interface TrackSigningData {
31
+ /** Email address of the signer */
32
+ signerEmail: string;
33
+ /** Optional document ID for correlation */
34
+ documentId?: string;
35
+ /** Optional idempotency key to prevent duplicate tracking */
36
+ idempotencyKey?: string;
37
+ /** Optional additional metadata */
38
+ metadata?: Record<string, unknown>;
39
+ }
40
+ /**
41
+ * Response from tracking API
42
+ */
43
+ export interface TrackingResponse {
44
+ success: boolean;
45
+ eventId: string;
46
+ idempotencyKey: string;
47
+ usage: {
48
+ currentMonth: number;
49
+ limit: number;
50
+ remaining: number;
51
+ };
52
+ }
53
+ /**
54
+ * Track a document send event.
55
+ * Call this when a document is sent to a recipient for signing.
56
+ *
57
+ * @param config - Tracking configuration with API key
58
+ * @param data - Send event data
59
+ * @returns Tracking response with usage stats
60
+ */
61
+ export declare function trackDocumentSent(config: TrackingConfig, data: TrackSendData): Promise<TrackingResponse>;
62
+ /**
63
+ * Track a document signing event.
64
+ * Call this when a document is signed by a recipient.
65
+ *
66
+ * @param config - Tracking configuration with API key
67
+ * @param data - Signing event data
68
+ * @returns Tracking response with usage stats
69
+ */
70
+ export declare function trackDocumentSigned(config: TrackingConfig, data: TrackSigningData): Promise<TrackingResponse>;
71
+ /**
72
+ * Silently track a document signing event (non-blocking).
73
+ * This version catches errors and logs them without throwing.
74
+ * Use this when tracking failure should not affect the main flow.
75
+ *
76
+ * @param config - Tracking configuration with API key
77
+ * @param data - Signing event data
78
+ */
79
+ export declare function trackDocumentSignedSilent(config: TrackingConfig, data: TrackSigningData): Promise<void>;
80
+ /**
81
+ * Silently track a document send event (non-blocking).
82
+ * This version catches errors and logs them without throwing.
83
+ * Use this when tracking failure should not affect the main flow.
84
+ *
85
+ * @param config - Tracking configuration with API key
86
+ * @param data - Send event data
87
+ */
88
+ export declare function trackDocumentSentSilent(config: TrackingConfig, data: TrackSendData): Promise<void>;
89
+ //# sourceMappingURL=tracking.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracking.d.ts","sourceRoot":"","sources":["../../src/utils/tracking.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAMD;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,gBAAgB,CAAC,CAgC3B;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,gBAAgB,CAAC,CAgC3B;AAED;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,IAAI,CAAC,CAMf"}
package/package.json ADDED
@@ -0,0 +1,180 @@
1
+ {
2
+ "name": "@signiphi/pdf-signer",
3
+ "version": "0.1.1",
4
+ "description": "Flexible React components for PDF viewing, form filling, and signature capture",
5
+ "main": "./dist/index.js",
6
+ "module": "./dist/index.mjs",
7
+ "types": "./dist/index.d.ts",
8
+ "sideEffects": [
9
+ "*.css",
10
+ "./src/utils/pdfjs-config.ts",
11
+ "./dist/styles/*.css"
12
+ ],
13
+ "exports": {
14
+ ".": {
15
+ "types": "./dist/index.d.ts",
16
+ "import": "./dist/index.mjs",
17
+ "require": "./dist/index.js",
18
+ "default": "./dist/index.js"
19
+ },
20
+ "./styles": "./dist/styles/index.css",
21
+ "./styles/source": "./src/styles/index.css",
22
+ "./src/styles/index.css": "./src/styles/index.css",
23
+ "./dist/styles/index.css": "./dist/styles/index.css",
24
+ "./package.json": "./package.json",
25
+ "./vite": {
26
+ "types": "./dist/integrations/index.d.ts",
27
+ "import": "./dist/integrations/index.mjs",
28
+ "require": "./dist/integrations/index.js"
29
+ },
30
+ "./next": {
31
+ "types": "./dist/integrations/index.d.ts",
32
+ "import": "./dist/integrations/index.mjs",
33
+ "require": "./dist/integrations/index.js"
34
+ },
35
+ "./headless": {
36
+ "types": "./dist/core/index.d.ts",
37
+ "import": "./dist/core/index.mjs",
38
+ "require": "./dist/core/index.js"
39
+ },
40
+ "./components": {
41
+ "types": "./dist/components/index.d.ts",
42
+ "import": "./dist/components/index.mjs",
43
+ "require": "./dist/components/index.js"
44
+ },
45
+ "./hooks": {
46
+ "types": "./dist/hooks/index.d.ts",
47
+ "import": "./dist/hooks/index.mjs",
48
+ "require": "./dist/hooks/index.js"
49
+ },
50
+ "./types": {
51
+ "types": "./dist/types/index.d.ts",
52
+ "import": "./dist/types/index.mjs",
53
+ "require": "./dist/types/index.js"
54
+ },
55
+ "./utils": {
56
+ "types": "./dist/utils/index.d.ts",
57
+ "import": "./dist/utils/index.mjs",
58
+ "require": "./dist/utils/index.js"
59
+ }
60
+ },
61
+ "files": [
62
+ "dist",
63
+ "src/styles",
64
+ "scripts",
65
+ "assets",
66
+ "README.md",
67
+ "INSTALLING_LOCALLY.md",
68
+ "LICENSE"
69
+ ],
70
+ "bin": {
71
+ "signiphi-setup": "./scripts/setup.js"
72
+ },
73
+ "scripts": {
74
+ "postinstall": "node scripts/postinstall.js",
75
+ "prepare": "node scripts/postinstall.js || true",
76
+ "dev": "tsup --watch",
77
+ "build": "tsup && tsc --emitDeclarationOnly && node -e \"require('fs').mkdirSync('dist/styles', {recursive: true})\" && postcss src/styles/index.css -o dist/styles/index.css",
78
+ "build:analyze": "pnpm build && node scripts/analyze-bundle.js",
79
+ "clean": "rm -rf dist",
80
+ "lint": "eslint src --ext .ts,.tsx",
81
+ "type-check": "tsc --noEmit",
82
+ "test": "vitest run",
83
+ "test:watch": "vitest",
84
+ "test:coverage": "vitest run --coverage",
85
+ "analyze": "node scripts/analyze-bundle.js",
86
+ "analyze:check": "node scripts/analyze-bundle.js --check-budgets"
87
+ },
88
+ "keywords": [
89
+ "pdf",
90
+ "signature",
91
+ "esign",
92
+ "react",
93
+ "headless",
94
+ "form",
95
+ "document"
96
+ ],
97
+ "author": "signiphi",
98
+ "license": "",
99
+ "repository": {
100
+ "type": "git",
101
+ "url": "https://github.com/signiphi/signiphi.git",
102
+ "directory": "packages/pdf-signer"
103
+ },
104
+ "bundleSize": {
105
+ "index.mjs": {
106
+ "limit": "200kb",
107
+ "gzip": "60kb"
108
+ },
109
+ "core/index.mjs": {
110
+ "limit": "50kb",
111
+ "gzip": "15kb"
112
+ },
113
+ "components/index.mjs": {
114
+ "limit": "120kb",
115
+ "gzip": "35kb"
116
+ },
117
+ "hooks/index.mjs": {
118
+ "limit": "80kb",
119
+ "gzip": "25kb"
120
+ },
121
+ "types/index.mjs": {
122
+ "limit": "5kb",
123
+ "gzip": "2kb"
124
+ },
125
+ "utils/index.mjs": {
126
+ "limit": "100kb",
127
+ "gzip": "30kb"
128
+ }
129
+ },
130
+ "peerDependencies": {
131
+ "@radix-ui/react-checkbox": "^1.1.0",
132
+ "@radix-ui/react-dialog": "^1.1.15",
133
+ "@radix-ui/react-label": "^2.1.0",
134
+ "@radix-ui/react-popover": "^1.1.0",
135
+ "@radix-ui/react-radio-group": "^1.2.0",
136
+ "@radix-ui/react-select": "^2.1.0",
137
+ "@radix-ui/react-tabs": "^1.1.0",
138
+ "date-fns": "^3.0.0",
139
+ "lucide-react": "^0.400.0",
140
+ "react": ">=18.0.0",
141
+ "react-day-picker": "^9.0.0",
142
+ "react-dom": ">=18.0.0"
143
+ },
144
+ "peerDependenciesMeta": {
145
+ "tailwindcss": {
146
+ "optional": true
147
+ }
148
+ },
149
+ "dependencies": {
150
+ "@radix-ui/react-slot": "^1.2.3",
151
+ "class-variance-authority": "^0.7.1",
152
+ "clsx": "^2.1.1",
153
+ "pdf-lib": "^1.17.1",
154
+ "pdfjs-dist": "5.3.93",
155
+ "react-error-boundary": "^5.0.0",
156
+ "tailwind-merge": "^3.3.1"
157
+ },
158
+ "devDependencies": {
159
+ "@jridgewell/remapping": "^2.3.5",
160
+ "@tailwindcss/postcss": "^4.1.4",
161
+ "@testing-library/react": "^14.1.2",
162
+ "@types/react": "^18.3.17",
163
+ "@types/react-dom": "^18.3.5",
164
+ "@vitest/coverage-v8": "^1.0.4",
165
+ "@vitest/ui": "^1.0.4",
166
+ "esbuild": "0.19.12",
167
+ "eslint": "^9.25.1",
168
+ "happy-dom": "^20.0.10",
169
+ "jsdom": "^23.0.1",
170
+ "postcss": "^8.5.6",
171
+ "postcss-cli": "^11.0.0",
172
+ "postcss-nesting": "^13.0.2",
173
+ "postcss-preset-env": "^10.4.0",
174
+ "tailwindcss": "^4.1.4",
175
+ "tailwindcss-animate": "^1.0.7",
176
+ "tsup": "^8.3.5",
177
+ "typescript": "^5.8.3",
178
+ "vitest": "^1.0.4"
179
+ }
180
+ }