pdf-oxide 0.3.24 → 0.3.28

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 (271) hide show
  1. package/lib/builders/annotation-builder.d.ts +199 -0
  2. package/lib/builders/annotation-builder.d.ts.map +1 -0
  3. package/lib/builders/annotation-builder.js +318 -0
  4. package/lib/builders/annotation-builder.js.map +1 -0
  5. package/lib/builders/conversion-options-builder.d.ts +107 -0
  6. package/lib/builders/conversion-options-builder.d.ts.map +1 -0
  7. package/lib/builders/conversion-options-builder.js +215 -0
  8. package/lib/builders/conversion-options-builder.js.map +1 -0
  9. package/{src/builders/index.ts → lib/builders/index.d.ts} +1 -1
  10. package/lib/builders/index.d.ts.map +1 -0
  11. package/lib/builders/index.js +12 -0
  12. package/lib/builders/index.js.map +1 -0
  13. package/lib/builders/metadata-builder.d.ts +202 -0
  14. package/lib/builders/metadata-builder.d.ts.map +1 -0
  15. package/lib/builders/metadata-builder.js +286 -0
  16. package/lib/builders/metadata-builder.js.map +1 -0
  17. package/lib/builders/pdf-builder.d.ts +215 -0
  18. package/lib/builders/pdf-builder.d.ts.map +1 -0
  19. package/lib/builders/pdf-builder.js +339 -0
  20. package/lib/builders/pdf-builder.js.map +1 -0
  21. package/lib/builders/search-options-builder.d.ts +74 -0
  22. package/lib/builders/search-options-builder.d.ts.map +1 -0
  23. package/lib/builders/search-options-builder.js +130 -0
  24. package/lib/builders/search-options-builder.js.map +1 -0
  25. package/lib/document-editor-manager.d.ts +140 -0
  26. package/lib/document-editor-manager.d.ts.map +1 -0
  27. package/lib/document-editor-manager.js +257 -0
  28. package/lib/document-editor-manager.js.map +1 -0
  29. package/lib/errors.d.ts +383 -0
  30. package/lib/errors.d.ts.map +1 -0
  31. package/lib/errors.js +1117 -0
  32. package/lib/errors.js.map +1 -0
  33. package/lib/form-field-manager.d.ts +300 -0
  34. package/lib/form-field-manager.d.ts.map +1 -0
  35. package/lib/form-field-manager.js +567 -0
  36. package/lib/form-field-manager.js.map +1 -0
  37. package/lib/hybrid-ml-manager.d.ts +143 -0
  38. package/lib/hybrid-ml-manager.d.ts.map +1 -0
  39. package/lib/hybrid-ml-manager.js +209 -0
  40. package/lib/hybrid-ml-manager.js.map +1 -0
  41. package/lib/index.d.ts +23 -0
  42. package/lib/index.d.ts.map +1 -0
  43. package/lib/index.js +280 -0
  44. package/lib/index.js.map +1 -0
  45. package/lib/managers/accessibility-manager.d.ts +149 -0
  46. package/lib/managers/accessibility-manager.d.ts.map +1 -0
  47. package/lib/managers/accessibility-manager.js +224 -0
  48. package/lib/managers/accessibility-manager.js.map +1 -0
  49. package/lib/managers/annotation-manager.d.ts +220 -0
  50. package/lib/managers/annotation-manager.d.ts.map +1 -0
  51. package/lib/managers/annotation-manager.js +360 -0
  52. package/lib/managers/annotation-manager.js.map +1 -0
  53. package/lib/managers/barcode-manager.d.ts +80 -0
  54. package/lib/managers/barcode-manager.d.ts.map +1 -0
  55. package/lib/managers/barcode-manager.js +226 -0
  56. package/lib/managers/barcode-manager.js.map +1 -0
  57. package/lib/managers/batch-manager.d.ts +186 -0
  58. package/lib/managers/batch-manager.d.ts.map +1 -0
  59. package/lib/managers/batch-manager.js +389 -0
  60. package/lib/managers/batch-manager.js.map +1 -0
  61. package/lib/managers/cache-manager.d.ts +182 -0
  62. package/lib/managers/cache-manager.d.ts.map +1 -0
  63. package/lib/managers/cache-manager.js +387 -0
  64. package/lib/managers/cache-manager.js.map +1 -0
  65. package/lib/managers/compliance-manager.d.ts +104 -0
  66. package/lib/managers/compliance-manager.d.ts.map +1 -0
  67. package/lib/managers/compliance-manager.js +415 -0
  68. package/lib/managers/compliance-manager.js.map +1 -0
  69. package/lib/managers/content-manager.d.ts +121 -0
  70. package/lib/managers/content-manager.d.ts.map +1 -0
  71. package/lib/managers/content-manager.js +295 -0
  72. package/lib/managers/content-manager.js.map +1 -0
  73. package/lib/managers/document-utility-manager.d.ts +370 -0
  74. package/lib/managers/document-utility-manager.d.ts.map +1 -0
  75. package/lib/managers/document-utility-manager.js +731 -0
  76. package/lib/managers/document-utility-manager.js.map +1 -0
  77. package/lib/managers/dom-pdf-creator.d.ts +105 -0
  78. package/lib/managers/dom-pdf-creator.d.ts.map +1 -0
  79. package/lib/managers/dom-pdf-creator.js +300 -0
  80. package/lib/managers/dom-pdf-creator.js.map +1 -0
  81. package/lib/managers/editing-manager.d.ts +249 -0
  82. package/lib/managers/editing-manager.d.ts.map +1 -0
  83. package/lib/managers/editing-manager.js +388 -0
  84. package/lib/managers/editing-manager.js.map +1 -0
  85. package/lib/managers/enterprise-manager.d.ts +193 -0
  86. package/lib/managers/enterprise-manager.d.ts.map +1 -0
  87. package/lib/managers/enterprise-manager.js +305 -0
  88. package/lib/managers/enterprise-manager.js.map +1 -0
  89. package/lib/managers/extended-managers.d.ts +123 -0
  90. package/lib/managers/extended-managers.d.ts.map +1 -0
  91. package/lib/managers/extended-managers.js +658 -0
  92. package/lib/managers/extended-managers.js.map +1 -0
  93. package/lib/managers/extraction-manager.d.ts +247 -0
  94. package/lib/managers/extraction-manager.d.ts.map +1 -0
  95. package/lib/managers/extraction-manager.js +478 -0
  96. package/lib/managers/extraction-manager.js.map +1 -0
  97. package/lib/managers/final-utilities.d.ts +128 -0
  98. package/lib/managers/final-utilities.d.ts.map +1 -0
  99. package/lib/managers/final-utilities.js +653 -0
  100. package/lib/managers/final-utilities.js.map +1 -0
  101. package/lib/managers/hybrid-ml-advanced.d.ts +137 -0
  102. package/lib/managers/hybrid-ml-advanced.d.ts.map +1 -0
  103. package/lib/managers/hybrid-ml-advanced.js +707 -0
  104. package/lib/managers/hybrid-ml-advanced.js.map +1 -0
  105. package/lib/managers/index.d.ts +65 -0
  106. package/lib/managers/index.d.ts.map +1 -0
  107. package/lib/managers/index.js +70 -0
  108. package/lib/managers/index.js.map +1 -0
  109. package/lib/managers/layer-manager.d.ts +204 -0
  110. package/lib/managers/layer-manager.d.ts.map +1 -0
  111. package/lib/managers/layer-manager.js +403 -0
  112. package/lib/managers/layer-manager.js.map +1 -0
  113. package/lib/managers/metadata-manager.d.ts +149 -0
  114. package/lib/managers/metadata-manager.d.ts.map +1 -0
  115. package/lib/managers/metadata-manager.js +281 -0
  116. package/lib/managers/metadata-manager.js.map +1 -0
  117. package/lib/managers/ocr-manager.d.ts +195 -0
  118. package/lib/managers/ocr-manager.d.ts.map +1 -0
  119. package/lib/managers/ocr-manager.js +583 -0
  120. package/lib/managers/ocr-manager.js.map +1 -0
  121. package/lib/managers/optimization-manager.d.ts +103 -0
  122. package/lib/managers/optimization-manager.d.ts.map +1 -0
  123. package/lib/managers/optimization-manager.js +194 -0
  124. package/lib/managers/optimization-manager.js.map +1 -0
  125. package/lib/managers/outline-manager.d.ts +102 -0
  126. package/lib/managers/outline-manager.d.ts.map +1 -0
  127. package/lib/managers/outline-manager.js +170 -0
  128. package/lib/managers/outline-manager.js.map +1 -0
  129. package/lib/managers/page-manager.d.ts +143 -0
  130. package/lib/managers/page-manager.d.ts.map +1 -0
  131. package/lib/managers/page-manager.js +237 -0
  132. package/lib/managers/page-manager.js.map +1 -0
  133. package/lib/managers/pattern-detection.d.ts +170 -0
  134. package/lib/managers/pattern-detection.d.ts.map +1 -0
  135. package/lib/managers/pattern-detection.js +325 -0
  136. package/lib/managers/pattern-detection.js.map +1 -0
  137. package/lib/managers/rendering-manager.d.ts +354 -0
  138. package/lib/managers/rendering-manager.d.ts.map +1 -0
  139. package/lib/managers/rendering-manager.js +680 -0
  140. package/lib/managers/rendering-manager.js.map +1 -0
  141. package/lib/managers/search-manager.d.ts +236 -0
  142. package/lib/managers/search-manager.d.ts.map +1 -0
  143. package/lib/managers/search-manager.js +330 -0
  144. package/lib/managers/search-manager.js.map +1 -0
  145. package/lib/managers/security-manager.d.ts +162 -0
  146. package/lib/managers/security-manager.d.ts.map +1 -0
  147. package/lib/managers/security-manager.js +293 -0
  148. package/lib/managers/security-manager.js.map +1 -0
  149. package/lib/managers/signature-manager.d.ts +725 -0
  150. package/lib/managers/signature-manager.d.ts.map +1 -0
  151. package/lib/managers/signature-manager.js +1365 -0
  152. package/lib/managers/signature-manager.js.map +1 -0
  153. package/lib/managers/streams.d.ts +263 -0
  154. package/lib/managers/streams.d.ts.map +1 -0
  155. package/lib/managers/streams.js +472 -0
  156. package/lib/managers/streams.js.map +1 -0
  157. package/lib/managers/xfa-manager.d.ts +228 -0
  158. package/lib/managers/xfa-manager.d.ts.map +1 -0
  159. package/lib/managers/xfa-manager.js +490 -0
  160. package/lib/managers/xfa-manager.js.map +1 -0
  161. package/lib/pdf-creator-manager.d.ts +201 -0
  162. package/lib/pdf-creator-manager.d.ts.map +1 -0
  163. package/lib/pdf-creator-manager.js +379 -0
  164. package/lib/pdf-creator-manager.js.map +1 -0
  165. package/lib/properties.d.ts +80 -0
  166. package/lib/properties.d.ts.map +1 -0
  167. package/lib/properties.js +455 -0
  168. package/lib/properties.js.map +1 -0
  169. package/lib/result-accessors-manager.d.ts +347 -0
  170. package/lib/result-accessors-manager.d.ts.map +1 -0
  171. package/lib/result-accessors-manager.js +705 -0
  172. package/lib/result-accessors-manager.js.map +1 -0
  173. package/lib/thumbnail-manager.d.ts +122 -0
  174. package/lib/thumbnail-manager.d.ts.map +1 -0
  175. package/lib/thumbnail-manager.js +206 -0
  176. package/lib/thumbnail-manager.js.map +1 -0
  177. package/lib/types/common.d.ts +93 -0
  178. package/lib/types/common.d.ts.map +1 -0
  179. package/lib/types/common.js +5 -0
  180. package/lib/types/common.js.map +1 -0
  181. package/lib/types/document-types.d.ts +353 -0
  182. package/lib/types/document-types.d.ts.map +1 -0
  183. package/lib/types/document-types.js +83 -0
  184. package/lib/types/document-types.js.map +1 -0
  185. package/{src/types/index.ts → lib/types/index.d.ts} +1 -1
  186. package/lib/types/index.d.ts.map +1 -0
  187. package/lib/types/index.js +6 -0
  188. package/lib/types/index.js.map +1 -0
  189. package/lib/types/manager-types.d.ts +180 -0
  190. package/lib/types/manager-types.d.ts.map +1 -0
  191. package/lib/types/manager-types.js +99 -0
  192. package/lib/types/manager-types.js.map +1 -0
  193. package/lib/types/native-bindings.d.ts +440 -0
  194. package/lib/types/native-bindings.d.ts.map +1 -0
  195. package/lib/types/native-bindings.js +8 -0
  196. package/lib/types/native-bindings.js.map +1 -0
  197. package/{src/workers/index.ts → lib/workers/index.d.ts} +1 -1
  198. package/lib/workers/index.d.ts.map +1 -0
  199. package/lib/workers/index.js +6 -0
  200. package/lib/workers/index.js.map +1 -0
  201. package/lib/workers/pool.d.ts +65 -0
  202. package/lib/workers/pool.d.ts.map +1 -0
  203. package/lib/workers/pool.js +195 -0
  204. package/lib/workers/pool.js.map +1 -0
  205. package/lib/workers/worker.d.ts +6 -0
  206. package/lib/workers/worker.d.ts.map +1 -0
  207. package/lib/workers/worker.js +100 -0
  208. package/lib/workers/worker.js.map +1 -0
  209. package/package.json +12 -22
  210. package/prebuilds/darwin-arm64/pdf_oxide.node +0 -0
  211. package/prebuilds/darwin-x64/pdf_oxide.node +0 -0
  212. package/prebuilds/linux-arm64/pdf_oxide.node +0 -0
  213. package/prebuilds/linux-x64/pdf_oxide.node +0 -0
  214. package/prebuilds/win32-x64/pdf_oxide.node +0 -0
  215. package/binding.gyp +0 -35
  216. package/src/builders/annotation-builder.ts +0 -367
  217. package/src/builders/conversion-options-builder.ts +0 -257
  218. package/src/builders/metadata-builder.ts +0 -317
  219. package/src/builders/pdf-builder.ts +0 -386
  220. package/src/builders/search-options-builder.ts +0 -151
  221. package/src/document-editor-manager.ts +0 -318
  222. package/src/errors.ts +0 -1629
  223. package/src/form-field-manager.ts +0 -666
  224. package/src/hybrid-ml-manager.ts +0 -283
  225. package/src/index.ts +0 -453
  226. package/src/managers/accessibility-manager.ts +0 -338
  227. package/src/managers/annotation-manager.ts +0 -439
  228. package/src/managers/barcode-manager.ts +0 -235
  229. package/src/managers/batch-manager.ts +0 -533
  230. package/src/managers/cache-manager.ts +0 -486
  231. package/src/managers/compliance-manager.ts +0 -375
  232. package/src/managers/content-manager.ts +0 -339
  233. package/src/managers/document-utility-manager.ts +0 -922
  234. package/src/managers/dom-pdf-creator.ts +0 -365
  235. package/src/managers/editing-manager.ts +0 -514
  236. package/src/managers/enterprise-manager.ts +0 -478
  237. package/src/managers/extended-managers.ts +0 -437
  238. package/src/managers/extraction-manager.ts +0 -583
  239. package/src/managers/final-utilities.ts +0 -429
  240. package/src/managers/hybrid-ml-advanced.ts +0 -479
  241. package/src/managers/index.ts +0 -239
  242. package/src/managers/layer-manager.ts +0 -500
  243. package/src/managers/metadata-manager.ts +0 -303
  244. package/src/managers/ocr-manager.ts +0 -756
  245. package/src/managers/optimization-manager.ts +0 -262
  246. package/src/managers/outline-manager.ts +0 -196
  247. package/src/managers/page-manager.ts +0 -289
  248. package/src/managers/pattern-detection.ts +0 -440
  249. package/src/managers/rendering-manager.ts +0 -863
  250. package/src/managers/search-manager.ts +0 -385
  251. package/src/managers/security-manager.ts +0 -345
  252. package/src/managers/signature-manager.ts +0 -1664
  253. package/src/managers/streams.ts +0 -618
  254. package/src/managers/xfa-manager.ts +0 -500
  255. package/src/pdf-creator-manager.ts +0 -494
  256. package/src/properties.ts +0 -522
  257. package/src/result-accessors-manager.ts +0 -867
  258. package/src/tests/advanced-features.test.ts +0 -414
  259. package/src/tests/advanced.test.ts +0 -266
  260. package/src/tests/extended-managers.test.ts +0 -316
  261. package/src/tests/final-utilities.test.ts +0 -455
  262. package/src/tests/foundation.test.ts +0 -315
  263. package/src/tests/high-demand.test.ts +0 -257
  264. package/src/tests/specialized.test.ts +0 -97
  265. package/src/thumbnail-manager.ts +0 -272
  266. package/src/types/common.ts +0 -142
  267. package/src/types/document-types.ts +0 -457
  268. package/src/types/manager-types.ts +0 -284
  269. package/src/types/native-bindings.ts +0 -517
  270. package/src/workers/pool.ts +0 -274
  271. package/src/workers/worker.ts +0 -131
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compliance-manager.d.ts","sourceRoot":"","sources":["../../src/managers/compliance-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,415 @@
1
+ /**
2
+ * ComplianceManager - Canonical Compliance Manager (merged from 2 implementations)
3
+ *
4
+ * Consolidates:
5
+ * - src/compliance-manager.ts ComplianceManager (validation + issue analysis + native FFI)
6
+ * - src/managers/ocr-compliance-cache.ts ComplianceManager (validation + conversion + fixing)
7
+ *
8
+ * Provides complete PDF/A, PDF/X, PDF/UA compliance operations.
9
+ */
10
+ import { EventEmitter } from 'events';
11
+ import { promises as fs } from 'fs';
12
+ import { dirname } from 'path';
13
+ // =============================================================================
14
+ // Type Definitions (from root-level compliance-manager.ts)
15
+ // =============================================================================
16
+ export var PdfALevel;
17
+ (function (PdfALevel) {
18
+ PdfALevel["A1a"] = "PDF/A-1a";
19
+ PdfALevel["A1b"] = "PDF/A-1b";
20
+ PdfALevel["A2a"] = "PDF/A-2a";
21
+ PdfALevel["A2b"] = "PDF/A-2b";
22
+ PdfALevel["A3a"] = "PDF/A-3a";
23
+ PdfALevel["A3b"] = "PDF/A-3b";
24
+ })(PdfALevel || (PdfALevel = {}));
25
+ export var PdfXLevel;
26
+ (function (PdfXLevel) {
27
+ PdfXLevel["X1a"] = "PDF/X-1a";
28
+ PdfXLevel["X1a2001"] = "PDF/X-1a:2001";
29
+ PdfXLevel["X1a2003"] = "PDF/X-1a:2003";
30
+ PdfXLevel["X3"] = "PDF/X-3";
31
+ PdfXLevel["X3_2002"] = "PDF/X-3:2002";
32
+ PdfXLevel["X3_2003"] = "PDF/X-3:2003";
33
+ PdfXLevel["X4"] = "PDF/X-4";
34
+ })(PdfXLevel || (PdfXLevel = {}));
35
+ export var PdfUALevel;
36
+ (function (PdfUALevel) {
37
+ PdfUALevel["UA1"] = "PDF/UA-1";
38
+ PdfUALevel["UA2"] = "PDF/UA-2";
39
+ })(PdfUALevel || (PdfUALevel = {}));
40
+ export var ComplianceIssueType;
41
+ (function (ComplianceIssueType) {
42
+ ComplianceIssueType["FontNotEmbedded"] = "font_not_embedded";
43
+ ComplianceIssueType["InvalidColorSpace"] = "invalid_color_space";
44
+ ComplianceIssueType["MissingAltText"] = "missing_alt_text";
45
+ ComplianceIssueType["MissingLanguage"] = "missing_language";
46
+ ComplianceIssueType["MissingTitle"] = "missing_title";
47
+ ComplianceIssueType["InvalidAnnotation"] = "invalid_annotation";
48
+ ComplianceIssueType["MissingStructure"] = "missing_structure";
49
+ ComplianceIssueType["InvalidLink"] = "invalid_link";
50
+ ComplianceIssueType["Other"] = "other";
51
+ })(ComplianceIssueType || (ComplianceIssueType = {}));
52
+ export var IssueSeverity;
53
+ (function (IssueSeverity) {
54
+ IssueSeverity["Error"] = "error";
55
+ IssueSeverity["Warning"] = "warning";
56
+ IssueSeverity["Info"] = "info";
57
+ })(IssueSeverity || (IssueSeverity = {}));
58
+ // =============================================================================
59
+ // Canonical ComplianceManager
60
+ // =============================================================================
61
+ export class ComplianceManager extends EventEmitter {
62
+ constructor(document) {
63
+ super();
64
+ this.resultCache = new Map();
65
+ this.maxCacheSize = 100;
66
+ this.document = document;
67
+ try {
68
+ this.native = require('../../index.node');
69
+ }
70
+ catch {
71
+ this.native = null;
72
+ }
73
+ }
74
+ // ===========================================================================
75
+ // Validation (from root-level with native FFI)
76
+ // ===========================================================================
77
+ async validatePdfA(level = PdfALevel.A1b) {
78
+ const cacheKey = `compliance:pdfa:${level}`;
79
+ if (this.resultCache.has(cacheKey))
80
+ return this.resultCache.get(cacheKey);
81
+ let isCompliant = true;
82
+ let issues = [];
83
+ let validationTime = 0;
84
+ if (this.native?.validate_pdf_a) {
85
+ try {
86
+ const nativeResult = this.native.validate_pdf_a(level);
87
+ isCompliant = nativeResult.is_compliant ?? true;
88
+ validationTime = nativeResult.validation_time ?? 0;
89
+ if (nativeResult.issues_json) {
90
+ try {
91
+ issues = JSON.parse(nativeResult.issues_json);
92
+ }
93
+ catch {
94
+ issues = [];
95
+ }
96
+ }
97
+ }
98
+ catch {
99
+ isCompliant = true;
100
+ issues = [];
101
+ }
102
+ }
103
+ else if (this.document?.validatePdfA) {
104
+ try {
105
+ const valid = await this.document.validatePdfA(typeof level === 'string' ? level : '1b');
106
+ isCompliant = !!valid;
107
+ }
108
+ catch {
109
+ isCompliant = true;
110
+ }
111
+ }
112
+ const result = { isCompliant, level: typeof level === 'string' ? level : level, issues, validationTime };
113
+ this.setCached(cacheKey, result);
114
+ this.emit('pdfAValidated', { level, isCompliant, issueCount: issues.length });
115
+ return result;
116
+ }
117
+ async validatePdfX(level = PdfXLevel.X1a) {
118
+ const cacheKey = `compliance:pdfx:${level}`;
119
+ if (this.resultCache.has(cacheKey))
120
+ return this.resultCache.get(cacheKey);
121
+ let isCompliant = true;
122
+ let issues = [];
123
+ let validationTime = 0;
124
+ if (this.native?.validate_pdf_x) {
125
+ try {
126
+ const nativeResult = this.native.validate_pdf_x(level);
127
+ isCompliant = nativeResult.is_compliant ?? true;
128
+ validationTime = nativeResult.validation_time ?? 0;
129
+ if (nativeResult.issues_json) {
130
+ try {
131
+ issues = JSON.parse(nativeResult.issues_json);
132
+ }
133
+ catch {
134
+ issues = [];
135
+ }
136
+ }
137
+ }
138
+ catch {
139
+ isCompliant = true;
140
+ issues = [];
141
+ }
142
+ }
143
+ else if (this.document?.validatePdfX) {
144
+ try {
145
+ const valid = await this.document.validatePdfX(typeof level === 'string' ? level : '1a');
146
+ isCompliant = !!valid;
147
+ }
148
+ catch {
149
+ isCompliant = true;
150
+ }
151
+ }
152
+ const result = { isCompliant, level: typeof level === 'string' ? level : level, issues, validationTime };
153
+ this.setCached(cacheKey, result);
154
+ this.emit('pdfXValidated', { level, isCompliant, issueCount: issues.length });
155
+ return result;
156
+ }
157
+ async validatePdfUA(level = PdfUALevel.UA1) {
158
+ const cacheKey = `compliance:pdfua:${level}`;
159
+ if (this.resultCache.has(cacheKey))
160
+ return this.resultCache.get(cacheKey);
161
+ let isCompliant = true;
162
+ let issues = [];
163
+ let validationTime = 0;
164
+ if (this.native?.validate_pdf_ua) {
165
+ try {
166
+ const nativeResult = this.native.validate_pdf_ua(level);
167
+ isCompliant = nativeResult.is_compliant ?? true;
168
+ validationTime = nativeResult.validation_time ?? 0;
169
+ if (nativeResult.issues_json) {
170
+ try {
171
+ issues = JSON.parse(nativeResult.issues_json);
172
+ }
173
+ catch {
174
+ issues = [];
175
+ }
176
+ }
177
+ }
178
+ catch {
179
+ isCompliant = true;
180
+ issues = [];
181
+ }
182
+ }
183
+ else if (this.document?.validatePdfUA) {
184
+ try {
185
+ isCompliant = !!(await this.document.validatePdfUA());
186
+ }
187
+ catch {
188
+ isCompliant = true;
189
+ }
190
+ }
191
+ const result = { isCompliant, level: typeof level === 'string' ? level : level, issues, validationTime };
192
+ this.setCached(cacheKey, result);
193
+ this.emit('pdfUAValidated', { level, isCompliant, issueCount: issues.length });
194
+ return result;
195
+ }
196
+ // ===========================================================================
197
+ // Issue Analysis (from root-level)
198
+ // ===========================================================================
199
+ async getAllIssues() {
200
+ const cacheKey = 'compliance:all_issues';
201
+ if (this.resultCache.has(cacheKey))
202
+ return this.resultCache.get(cacheKey);
203
+ let issues = [];
204
+ if (this.native?.compliance_get_all_issues) {
205
+ try {
206
+ issues = JSON.parse(this.native.compliance_get_all_issues()) || [];
207
+ }
208
+ catch {
209
+ issues = [];
210
+ }
211
+ }
212
+ this.setCached(cacheKey, issues);
213
+ this.emit('issuesRetrieved', { count: issues.length });
214
+ return issues;
215
+ }
216
+ async getIssuesOfType(type) {
217
+ const allIssues = await this.getAllIssues();
218
+ return allIssues.filter(issue => issue.type === type);
219
+ }
220
+ async getIssueCount() { return (await this.getAllIssues()).length; }
221
+ async getErrorCount() { return (await this.getAllIssues()).filter(i => i.severity === IssueSeverity.Error).length; }
222
+ async getWarningCount() { return (await this.getAllIssues()).filter(i => i.severity === IssueSeverity.Warning).length; }
223
+ // ===========================================================================
224
+ // Conversion & Fixing (from managers version)
225
+ // ===========================================================================
226
+ async convertToPdfA(level = '1b') {
227
+ try {
228
+ const result = await this.document?.convertToPdfA?.(level);
229
+ this.resultCache.delete(`compliance:pdfa:${level}`);
230
+ this.emit('conversion-complete', { type: 'PDF/A', level, success: result });
231
+ return !!result;
232
+ }
233
+ catch (error) {
234
+ this.emit('error', error);
235
+ return false;
236
+ }
237
+ }
238
+ async convertToPdfUA() {
239
+ try {
240
+ const result = await this.document?.convertToPdfUA?.();
241
+ this.resultCache.delete('compliance:pdfua:');
242
+ this.emit('conversion-complete', { type: 'PDF/UA', success: result });
243
+ return !!result;
244
+ }
245
+ catch (error) {
246
+ this.emit('error', error);
247
+ return false;
248
+ }
249
+ }
250
+ async getComplianceReport(complianceType = 'all') {
251
+ try {
252
+ return await this.document?.getComplianceReport?.(complianceType) ?? '';
253
+ }
254
+ catch (error) {
255
+ this.emit('error', error);
256
+ return '';
257
+ }
258
+ }
259
+ async checkFontEmbedding() {
260
+ const cacheKey = 'compliance:fonts_embedded';
261
+ if (this.resultCache.has(cacheKey))
262
+ return this.resultCache.get(cacheKey);
263
+ const result = this.document?.checkFontEmbedding?.() ?? this.native?.compliance_has_embedded_fonts?.() ?? true;
264
+ this.setCached(cacheKey, result);
265
+ return result;
266
+ }
267
+ /** @deprecated Use checkFontEmbedding() instead */
268
+ async hasFontsEmbedded() { return this.checkFontEmbedding(); }
269
+ async checkColorSpace() {
270
+ const cacheKey = 'compliance:valid_color_space';
271
+ if (this.resultCache.has(cacheKey))
272
+ return this.resultCache.get(cacheKey);
273
+ const result = this.document?.checkColorSpace?.() ?? this.native?.compliance_has_valid_color_space?.() ?? true;
274
+ this.setCached(cacheKey, result);
275
+ return result;
276
+ }
277
+ /** @deprecated Use checkColorSpace() instead */
278
+ async hasValidColorSpace() { return this.checkColorSpace(); }
279
+ async checkTaggedContent() {
280
+ try {
281
+ return await this.document?.checkTaggedContent?.() ?? false;
282
+ }
283
+ catch (error) {
284
+ this.emit('error', error);
285
+ return false;
286
+ }
287
+ }
288
+ async addMissingTags() {
289
+ try {
290
+ const result = await this.document?.addMissingTags?.();
291
+ this.emit('tags-added');
292
+ return !!result;
293
+ }
294
+ catch (error) {
295
+ this.emit('error', error);
296
+ return false;
297
+ }
298
+ }
299
+ async fixFontIssues() {
300
+ try {
301
+ const count = await this.document?.fixFontIssues?.() ?? 0;
302
+ this.emit('fonts-fixed', { count });
303
+ return count;
304
+ }
305
+ catch (error) {
306
+ this.emit('error', error);
307
+ return 0;
308
+ }
309
+ }
310
+ async fixColorIssues() {
311
+ try {
312
+ const count = await this.document?.fixColorIssues?.() ?? 0;
313
+ this.emit('colors-fixed', { count });
314
+ return count;
315
+ }
316
+ catch (error) {
317
+ this.emit('error', error);
318
+ return 0;
319
+ }
320
+ }
321
+ async removeUnsupportedFeatures() {
322
+ try {
323
+ const count = await this.document?.removeUnsupportedFeatures?.() ?? 0;
324
+ this.emit('features-removed', { count });
325
+ return count;
326
+ }
327
+ catch (error) {
328
+ this.emit('error', error);
329
+ return 0;
330
+ }
331
+ }
332
+ async getComplianceIssues() {
333
+ try {
334
+ const issues = [];
335
+ const pdfA = await this.validatePdfA(PdfALevel.A1b);
336
+ if (!pdfA.isCompliant)
337
+ issues.push('PDF/A non-compliant');
338
+ const pdfX = await this.validatePdfX(PdfXLevel.X1a);
339
+ if (!pdfX.isCompliant)
340
+ issues.push('PDF/X non-compliant');
341
+ const pdfUA = await this.validatePdfUA(PdfUALevel.UA1);
342
+ if (!pdfUA.isCompliant)
343
+ issues.push('PDF/UA non-accessible');
344
+ const fontEmbedded = await this.checkFontEmbedding();
345
+ if (!fontEmbedded)
346
+ issues.push('Fonts not properly embedded');
347
+ const taggedContent = await this.checkTaggedContent();
348
+ if (!taggedContent)
349
+ issues.push('Missing proper tagging');
350
+ this.emit('issues-analyzed', { count: issues.length });
351
+ return issues;
352
+ }
353
+ catch (error) {
354
+ this.emit('error', error);
355
+ return [];
356
+ }
357
+ }
358
+ getIssueSeverity(issue) {
359
+ if (issue.includes('Font') || issue.includes('PDF/UA'))
360
+ return 'critical';
361
+ if (issue.includes('PDF/A') || issue.includes('PDF/X'))
362
+ return 'high';
363
+ if (issue.includes('tagging'))
364
+ return 'medium';
365
+ return 'low';
366
+ }
367
+ async createComplianceReportFile(filePath) {
368
+ try {
369
+ const report = await this.getComplianceReport('all');
370
+ await fs.mkdir(dirname(filePath), { recursive: true });
371
+ await fs.writeFile(filePath, report, 'utf8');
372
+ this.emit('report-created', { filePath });
373
+ return true;
374
+ }
375
+ catch (error) {
376
+ this.emit('error', error);
377
+ return false;
378
+ }
379
+ }
380
+ async getComplianceSummary() {
381
+ try {
382
+ return {
383
+ pdfA: await this.validatePdfA(PdfALevel.A1b),
384
+ pdfX: await this.validatePdfX(PdfXLevel.X1a),
385
+ pdfUA: await this.validatePdfUA(PdfUALevel.UA1),
386
+ fontEmbedded: await this.checkFontEmbedding(),
387
+ colorSpace: await this.checkColorSpace(),
388
+ taggedContent: await this.checkTaggedContent(),
389
+ issues: await this.getComplianceIssues(),
390
+ };
391
+ }
392
+ catch (error) {
393
+ this.emit('error', error);
394
+ return {};
395
+ }
396
+ }
397
+ // ===========================================================================
398
+ // Cache
399
+ // ===========================================================================
400
+ clearCache() { this.resultCache.clear(); this.emit('cacheCleared'); }
401
+ getCacheStats() {
402
+ return { cacheSize: this.resultCache.size, maxCacheSize: this.maxCacheSize, entries: Array.from(this.resultCache.keys()) };
403
+ }
404
+ destroy() { this.resultCache.clear(); this.removeAllListeners(); }
405
+ setCached(key, value) {
406
+ this.resultCache.set(key, value);
407
+ if (this.resultCache.size > this.maxCacheSize) {
408
+ const firstKey = this.resultCache.keys().next().value;
409
+ if (firstKey !== undefined)
410
+ this.resultCache.delete(firstKey);
411
+ }
412
+ }
413
+ }
414
+ export default ComplianceManager;
415
+ //# sourceMappingURL=compliance-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compliance-manager.js","sourceRoot":"","sources":["../../src/managers/compliance-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,gFAAgF;AAChF,2DAA2D;AAC3D,gFAAgF;AAEhF,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,6BAAgB,CAAA;IAChB,6BAAgB,CAAA;IAChB,6BAAgB,CAAA;IAChB,6BAAgB,CAAA;IAChB,6BAAgB,CAAA;IAChB,6BAAgB,CAAA;AAClB,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB;AAED,MAAM,CAAN,IAAY,SAQX;AARD,WAAY,SAAS;IACnB,6BAAgB,CAAA;IAChB,sCAAyB,CAAA;IACzB,sCAAyB,CAAA;IACzB,2BAAc,CAAA;IACd,qCAAwB,CAAA;IACxB,qCAAwB,CAAA;IACxB,2BAAc,CAAA;AAChB,CAAC,EARW,SAAS,KAAT,SAAS,QAQpB;AAED,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,8BAAgB,CAAA;IAChB,8BAAgB,CAAA;AAClB,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;AAED,MAAM,CAAN,IAAY,mBAUX;AAVD,WAAY,mBAAmB;IAC7B,4DAAqC,CAAA;IACrC,gEAAyC,CAAA;IACzC,0DAAmC,CAAA;IACnC,2DAAoC,CAAA;IACpC,qDAA8B,CAAA;IAC9B,+DAAwC,CAAA;IACxC,6DAAsC,CAAA;IACtC,mDAA4B,CAAA;IAC5B,sCAAe,CAAA;AACjB,CAAC,EAVW,mBAAmB,KAAnB,mBAAmB,QAU9B;AAED,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,oCAAmB,CAAA;IACnB,8BAAa,CAAA;AACf,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AAwBD,gFAAgF;AAChF,8BAA8B;AAC9B,gFAAgF;AAEhF,MAAM,OAAO,iBAAkB,SAAQ,YAAY;IAMjD,YAAY,QAAa;QACvB,KAAK,EAAE,CAAC;QALF,gBAAW,GAAG,IAAI,GAAG,EAAe,CAAC;QACrC,iBAAY,GAAG,GAAG,CAAC;QAKzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,+CAA+C;IAC/C,8EAA8E;IAE9E,KAAK,CAAC,YAAY,CAAC,QAA4B,SAAS,CAAC,GAAG;QAC1D,MAAM,QAAQ,GAAG,mBAAmB,KAAK,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE1E,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,IAAI,MAAM,GAAsB,EAAE,CAAC;QACnC,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,IAAI,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBACvD,WAAW,GAAG,YAAY,CAAC,YAAY,IAAI,IAAI,CAAC;gBAChD,cAAc,GAAG,YAAY,CAAC,eAAe,IAAI,CAAC,CAAC;gBACnD,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;oBAC7B,IAAI,CAAC;wBAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC;wBAAC,MAAM,GAAG,EAAE,CAAC;oBAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBAAC,WAAW,GAAG,IAAI,CAAC;gBAAC,MAAM,GAAG,EAAE,CAAC;YAAC,CAAC;QAC9C,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACzF,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC;YACxB,CAAC;YAAC,MAAM,CAAC;gBAAC,WAAW,GAAG,IAAI,CAAC;YAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAA+B,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QACrI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9E,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAA4B,SAAS,CAAC,GAAG;QAC1D,MAAM,QAAQ,GAAG,mBAAmB,KAAK,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE1E,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,IAAI,MAAM,GAAsB,EAAE,CAAC;QACnC,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,IAAI,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBACvD,WAAW,GAAG,YAAY,CAAC,YAAY,IAAI,IAAI,CAAC;gBAChD,cAAc,GAAG,YAAY,CAAC,eAAe,IAAI,CAAC,CAAC;gBACnD,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;oBAC7B,IAAI,CAAC;wBAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC;wBAAC,MAAM,GAAG,EAAE,CAAC;oBAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBAAC,WAAW,GAAG,IAAI,CAAC;gBAAC,MAAM,GAAG,EAAE,CAAC;YAAC,CAAC;QAC9C,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACzF,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC;YACxB,CAAC;YAAC,MAAM,CAAC;gBAAC,WAAW,GAAG,IAAI,CAAC;YAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAA+B,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QACrI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9E,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,QAA6B,UAAU,CAAC,GAAG;QAC7D,MAAM,QAAQ,GAAG,oBAAoB,KAAK,EAAE,CAAC;QAC7C,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE1E,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,IAAI,MAAM,GAAsB,EAAE,CAAC;QACnC,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,IAAI,IAAI,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;gBACxD,WAAW,GAAG,YAAY,CAAC,YAAY,IAAI,IAAI,CAAC;gBAChD,cAAc,GAAG,YAAY,CAAC,eAAe,IAAI,CAAC,CAAC;gBACnD,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;oBAC7B,IAAI,CAAC;wBAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC;wBAAC,MAAM,GAAG,EAAE,CAAC;oBAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBAAC,WAAW,GAAG,IAAI,CAAC;gBAAC,MAAM,GAAG,EAAE,CAAC;YAAC,CAAC;QAC9C,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC;YACxC,IAAI,CAAC;gBAAC,WAAW,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,WAAW,GAAG,IAAI,CAAC;YAAC,CAAC;QAC9F,CAAC;QAED,MAAM,MAAM,GAA+B,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QACrI,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/E,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8EAA8E;IAC9E,mCAAmC;IACnC,8EAA8E;IAE9E,KAAK,CAAC,YAAY;QAChB,MAAM,QAAQ,GAAG,uBAAuB,CAAC;QACzC,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1E,IAAI,MAAM,GAAsB,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,MAAM,EAAE,yBAAyB,EAAE,CAAC;YAC3C,IAAI,CAAC;gBAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,CAAC,IAAI,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,MAAM,GAAG,EAAE,CAAC;YAAC,CAAC;QACpG,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACvD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAyB;QAC7C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,OAAO,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,aAAa,KAAsB,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACrF,KAAK,CAAC,aAAa,KAAsB,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACrI,KAAK,CAAC,eAAe,KAAsB,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAEzI,8EAA8E;IAC9E,8CAA8C;IAC9C,8EAA8E;IAE9E,KAAK,CAAC,aAAa,CAAC,QAAgB,IAAI;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC,KAAK,CAAC,CAAC;YAC3D,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5E,OAAO,CAAC,CAAC,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,KAAK,CAAC;QAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;YAC7C,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACtE,OAAO,CAAC,CAAC,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,KAAK,CAAC;QAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,iBAAyB,KAAK;QACtD,IAAI,CAAC;YAAC,OAAO,MAAM,IAAI,CAAC,QAAQ,EAAE,mBAAmB,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAAC,CAAC;QAChF,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,EAAE,CAAC;QAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,QAAQ,GAAG,2BAA2B,CAAC;QAC7C,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,kBAAkB,EAAE,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,6BAA6B,EAAE,EAAE,IAAI,IAAI,CAAC;QAC/G,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mDAAmD;IACnD,KAAK,CAAC,gBAAgB,KAAuB,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;IAEhF,KAAK,CAAC,eAAe;QACnB,MAAM,QAAQ,GAAG,8BAA8B,CAAC;QAChD,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,gCAAgC,EAAE,EAAE,IAAI,IAAI,CAAC;QAC/G,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gDAAgD;IAChD,KAAK,CAAC,kBAAkB,KAAuB,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IAE/E,KAAK,CAAC,kBAAkB;QACtB,IAAI,CAAC;YAAC,OAAO,MAAM,IAAI,CAAC,QAAQ,EAAE,kBAAkB,EAAE,EAAE,IAAI,KAAK,CAAC;QAAC,CAAC;QACpE,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,KAAK,CAAC;QAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACxB,OAAO,CAAC,CAAC,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,KAAK,CAAC;QAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACpC,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,IAAI,CAAC,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACrC,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,yBAAyB;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,yBAAyB,EAAE,EAAE,IAAI,CAAC,CAAC;YACtE,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACzC,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,IAAI,CAAC;YACH,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,CAAC,KAAK,CAAC,WAAW;gBAAE,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC7D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACrD,IAAI,CAAC,YAAY;gBAAE,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;YAC9D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtD,IAAI,CAAC,aAAa;gBAAE,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YACvD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,EAAE,CAAC;QAAC,CAAC;IAC3D,CAAC;IAED,gBAAgB,CAAC,KAAa;QAC5B,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,OAAO,UAAU,CAAC;QAC1E,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO,MAAM,CAAC;QACtE,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,OAAO,QAAQ,CAAC;QAC/C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,QAAgB;QAC/C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvD,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,KAAK,CAAC;QAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,IAAI,CAAC;YACH,OAAO;gBACL,IAAI,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC;gBAC5C,IAAI,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC;gBAC5C,KAAK,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC;gBAC/C,YAAY,EAAE,MAAM,IAAI,CAAC,kBAAkB,EAAE;gBAC7C,UAAU,EAAE,MAAM,IAAI,CAAC,eAAe,EAAE;gBACxC,aAAa,EAAE,MAAM,IAAI,CAAC,kBAAkB,EAAE;gBAC9C,MAAM,EAAE,MAAM,IAAI,CAAC,mBAAmB,EAAE;aACzC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAAC,OAAO,EAAE,CAAC;QAAC,CAAC;IAC3D,CAAC;IAED,8EAA8E;IAC9E,QAAQ;IACR,8EAA8E;IAE9E,UAAU,KAAW,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAE3E,aAAa;QACX,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;IAC7H,CAAC;IAED,OAAO,KAAW,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;IAEhE,SAAS,CAAC,GAAW,EAAE,KAAU;QACvC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YACtD,IAAI,QAAQ,KAAK,SAAS;gBAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;CACF;AAED,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,121 @@
1
+ /**
2
+ * Manager for page-level content analysis
3
+ *
4
+ * Provides methods to analyze content type, complexity, and characteristics of PDF pages.
5
+ * This manager operates on a specific page, unlike document-level managers.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import { ContentManager } from 'pdf_oxide';
10
+ *
11
+ * const doc = PdfDocument.open('document.pdf');
12
+ * const contentManager = new ContentManager(doc, 0);
13
+ *
14
+ * if (!contentManager.isBlank()) {
15
+ * console.log(contentManager.getContentSummary());
16
+ * }
17
+ * ```
18
+ */
19
+ export interface ContentAnalysis {
20
+ pageIndex: number;
21
+ hasContent: boolean;
22
+ isBlank: boolean;
23
+ contentSize: number;
24
+ complexityScore: number;
25
+ dimensions: string;
26
+ contentTypes: string[];
27
+ likelyHasForms: boolean;
28
+ likelyHasTables: boolean;
29
+ likelyHasImages: boolean;
30
+ }
31
+ export declare class ContentManager {
32
+ private _document;
33
+ private _pageIndex;
34
+ private _cache;
35
+ /**
36
+ * Creates a new ContentManager for a specific page
37
+ * @param document - The PDF document
38
+ * @param pageIndex - Page index to analyze (0-based)
39
+ * @throws Error if document is null or undefined
40
+ */
41
+ constructor(document: any, pageIndex: number);
42
+ /**
43
+ * Gets the page index this manager operates on
44
+ * @returns Page index
45
+ */
46
+ get pageIndex(): number;
47
+ /**
48
+ * Clears the content cache
49
+ */
50
+ clearCache(): void;
51
+ /**
52
+ * Checks if the page has any content
53
+ * @returns True if the page has content
54
+ */
55
+ hasContent(): boolean;
56
+ /**
57
+ * Gets the approximate size of the content stream in bytes
58
+ * @returns Content size in bytes
59
+ */
60
+ getContentSize(): number;
61
+ /**
62
+ * Checks if the page appears to be blank (no visible content)
63
+ * @returns True if the page is blank
64
+ */
65
+ isBlank(): boolean;
66
+ /**
67
+ * Gets a complexity score for the page (0-100)
68
+ * Higher scores indicate more complex content.
69
+ * @returns Complexity score from 0 to 100
70
+ */
71
+ getComplexityScore(): number;
72
+ /**
73
+ * Gets a human-readable summary of page dimensions
74
+ * @returns Formatted dimensions string
75
+ */
76
+ getDimensionsSummary(): string;
77
+ /**
78
+ * Checks if the page likely contains form fields
79
+ * @returns True if the page likely has forms
80
+ */
81
+ likelyHasForms(): boolean;
82
+ /**
83
+ * Checks if the page likely contains tables
84
+ * @returns True if the page likely has tables
85
+ */
86
+ likelyHasTables(): boolean;
87
+ /**
88
+ * Checks if the page likely contains images
89
+ * @returns True if the page likely has images
90
+ */
91
+ likelyHasImages(): boolean;
92
+ /**
93
+ * Gets a list of content types detected on the page
94
+ * @returns Array of content type strings
95
+ *
96
+ * @example
97
+ * ```typescript
98
+ * const types = manager.getContentTypes();
99
+ * console.log(`Content types: ${types.join(', ')}`);
100
+ * ```
101
+ */
102
+ getContentTypes(): string[];
103
+ /**
104
+ * Gets a human-readable summary of the page content
105
+ * @returns Formatted content summary string
106
+ *
107
+ * @example
108
+ * ```typescript
109
+ * const summary = manager.getContentSummary();
110
+ * console.log(summary);
111
+ * // Output: "Dimensions: 612 x 792 pt; Content: text, images; Complexity: 45/100"
112
+ * ```
113
+ */
114
+ getContentSummary(): string;
115
+ /**
116
+ * Analyzes page content thoroughly
117
+ * @returns Detailed content analysis
118
+ */
119
+ analyze(): ContentAnalysis;
120
+ }
121
+ //# sourceMappingURL=content-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-manager.d.ts","sourceRoot":"","sources":["../../src/managers/content-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAmB;IAEjC;;;;;OAKG;gBACS,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM;IAY5C;;;OAGG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;;OAGG;IACH,UAAU,IAAI,OAAO;IAgBrB;;;OAGG;IACH,cAAc,IAAI,MAAM;IAgBxB;;;OAGG;IACH,OAAO,IAAI,OAAO;IAgBlB;;;;OAIG;IACH,kBAAkB,IAAI,MAAM;IAgB5B;;;OAGG;IACH,oBAAoB,IAAI,MAAM;IA4B9B;;;OAGG;IACH,cAAc,IAAI,OAAO;IAgBzB;;;OAGG;IACH,eAAe,IAAI,OAAO;IAgB1B;;;OAGG;IACH,eAAe,IAAI,OAAO;IAgB1B;;;;;;;;;OASG;IACH,eAAe,IAAI,MAAM,EAAE;IA8B3B;;;;;;;;;;OAUG;IACH,iBAAiB,IAAI,MAAM;IA0B3B;;;OAGG;IACH,OAAO,IAAI,eAAe;CAc3B"}