yom-format 0.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 (199) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +86 -0
  3. package/dist/cli.d.ts +30 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +344 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/index.d.ts +36 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +25 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/pipeline/avif.d.ts +3 -0
  12. package/dist/pipeline/avif.d.ts.map +1 -0
  13. package/dist/pipeline/avif.js +30 -0
  14. package/dist/pipeline/avif.js.map +1 -0
  15. package/dist/pipeline/convert.d.ts +28 -0
  16. package/dist/pipeline/convert.d.ts.map +1 -0
  17. package/dist/pipeline/convert.js +111 -0
  18. package/dist/pipeline/convert.js.map +1 -0
  19. package/dist/pipeline/index.d.ts +17 -0
  20. package/dist/pipeline/index.d.ts.map +1 -0
  21. package/dist/pipeline/index.js +17 -0
  22. package/dist/pipeline/index.js.map +1 -0
  23. package/dist/pipeline/ocrLayoutBuilder.d.ts +10 -0
  24. package/dist/pipeline/ocrLayoutBuilder.d.ts.map +1 -0
  25. package/dist/pipeline/ocrLayoutBuilder.js +62 -0
  26. package/dist/pipeline/ocrLayoutBuilder.js.map +1 -0
  27. package/dist/pipeline/pdfDocument.d.ts +12 -0
  28. package/dist/pipeline/pdfDocument.d.ts.map +1 -0
  29. package/dist/pipeline/pdfDocument.js +76 -0
  30. package/dist/pipeline/pdfDocument.js.map +1 -0
  31. package/dist/pipeline/renderPage.d.ts +10 -0
  32. package/dist/pipeline/renderPage.d.ts.map +1 -0
  33. package/dist/pipeline/renderPage.js +36 -0
  34. package/dist/pipeline/renderPage.js.map +1 -0
  35. package/dist/pipeline/textExtract.d.ts +29 -0
  36. package/dist/pipeline/textExtract.d.ts.map +1 -0
  37. package/dist/pipeline/textExtract.js +48 -0
  38. package/dist/pipeline/textExtract.js.map +1 -0
  39. package/dist/yom/blobLimits.d.ts +15 -0
  40. package/dist/yom/blobLimits.d.ts.map +1 -0
  41. package/dist/yom/blobLimits.js +25 -0
  42. package/dist/yom/blobLimits.js.map +1 -0
  43. package/dist/yom/byteSource.d.ts +56 -0
  44. package/dist/yom/byteSource.d.ts.map +1 -0
  45. package/dist/yom/byteSource.js +111 -0
  46. package/dist/yom/byteSource.js.map +1 -0
  47. package/dist/yom/bytes.d.ts +2 -0
  48. package/dist/yom/bytes.d.ts.map +1 -0
  49. package/dist/yom/bytes.js +13 -0
  50. package/dist/yom/bytes.js.map +1 -0
  51. package/dist/yom/constants.d.ts +34 -0
  52. package/dist/yom/constants.d.ts.map +1 -0
  53. package/dist/yom/constants.js +82 -0
  54. package/dist/yom/constants.js.map +1 -0
  55. package/dist/yom/errors.d.ts +44 -0
  56. package/dist/yom/errors.d.ts.map +1 -0
  57. package/dist/yom/errors.js +44 -0
  58. package/dist/yom/errors.js.map +1 -0
  59. package/dist/yom/flatbufferVerify.d.ts +21 -0
  60. package/dist/yom/flatbufferVerify.d.ts.map +1 -0
  61. package/dist/yom/flatbufferVerify.js +255 -0
  62. package/dist/yom/flatbufferVerify.js.map +1 -0
  63. package/dist/yom/generated/yomu/yom/blob-kind.d.ts +9 -0
  64. package/dist/yom/generated/yomu/yom/blob-kind.d.ts.map +1 -0
  65. package/dist/yom/generated/yomu/yom/blob-kind.js +12 -0
  66. package/dist/yom/generated/yomu/yom/blob-kind.js.map +1 -0
  67. package/dist/yom/generated/yomu/yom/blob-ref.d.ts +45 -0
  68. package/dist/yom/generated/yomu/yom/blob-ref.d.ts.map +1 -0
  69. package/dist/yom/generated/yomu/yom/blob-ref.js +141 -0
  70. package/dist/yom/generated/yomu/yom/blob-ref.js.map +1 -0
  71. package/dist/yom/generated/yomu/yom/book-metadata.d.ts +32 -0
  72. package/dist/yom/generated/yomu/yom/book-metadata.d.ts.map +1 -0
  73. package/dist/yom/generated/yomu/yom/book-metadata.js +89 -0
  74. package/dist/yom/generated/yomu/yom/book-metadata.js.map +1 -0
  75. package/dist/yom/generated/yomu/yom/compression.d.ts +5 -0
  76. package/dist/yom/generated/yomu/yom/compression.d.ts.map +1 -0
  77. package/dist/yom/generated/yomu/yom/compression.js +8 -0
  78. package/dist/yom/generated/yomu/yom/compression.js.map +1 -0
  79. package/dist/yom/generated/yomu/yom/main-index.d.ts +63 -0
  80. package/dist/yom/generated/yomu/yom/main-index.d.ts.map +1 -0
  81. package/dist/yom/generated/yomu/yom/main-index.js +208 -0
  82. package/dist/yom/generated/yomu/yom/main-index.js.map +1 -0
  83. package/dist/yom/generated/yomu/yom/ocrblock.d.ts +32 -0
  84. package/dist/yom/generated/yomu/yom/ocrblock.d.ts.map +1 -0
  85. package/dist/yom/generated/yomu/yom/ocrblock.js +84 -0
  86. package/dist/yom/generated/yomu/yom/ocrblock.js.map +1 -0
  87. package/dist/yom/generated/yomu/yom/ocrlayout.d.ts +27 -0
  88. package/dist/yom/generated/yomu/yom/ocrlayout.d.ts.map +1 -0
  89. package/dist/yom/generated/yomu/yom/ocrlayout.js +76 -0
  90. package/dist/yom/generated/yomu/yom/ocrlayout.js.map +1 -0
  91. package/dist/yom/generated/yomu/yom/ocrline.d.ts +35 -0
  92. package/dist/yom/generated/yomu/yom/ocrline.d.ts.map +1 -0
  93. package/dist/yom/generated/yomu/yom/ocrline.js +95 -0
  94. package/dist/yom/generated/yomu/yom/ocrline.js.map +1 -0
  95. package/dist/yom/generated/yomu/yom/ocrpage.d.ts +46 -0
  96. package/dist/yom/generated/yomu/yom/ocrpage.d.ts.map +1 -0
  97. package/dist/yom/generated/yomu/yom/ocrpage.js +147 -0
  98. package/dist/yom/generated/yomu/yom/ocrpage.js.map +1 -0
  99. package/dist/yom/generated/yomu/yom/ocrtoken.d.ts +44 -0
  100. package/dist/yom/generated/yomu/yom/ocrtoken.d.ts.map +1 -0
  101. package/dist/yom/generated/yomu/yom/ocrtoken.js +128 -0
  102. package/dist/yom/generated/yomu/yom/ocrtoken.js.map +1 -0
  103. package/dist/yom/generated/yomu/yom/outline-entry.d.ts +31 -0
  104. package/dist/yom/generated/yomu/yom/outline-entry.d.ts.map +1 -0
  105. package/dist/yom/generated/yomu/yom/outline-entry.js +92 -0
  106. package/dist/yom/generated/yomu/yom/outline-entry.js.map +1 -0
  107. package/dist/yom/generated/yomu/yom/page-entry.d.ts +95 -0
  108. package/dist/yom/generated/yomu/yom/page-entry.d.ts.map +1 -0
  109. package/dist/yom/generated/yomu/yom/page-entry.js +288 -0
  110. package/dist/yom/generated/yomu/yom/page-entry.js.map +1 -0
  111. package/dist/yom/generated/yomu/yom/pdfexport-metadata.d.ts +32 -0
  112. package/dist/yom/generated/yomu/yom/pdfexport-metadata.d.ts.map +1 -0
  113. package/dist/yom/generated/yomu/yom/pdfexport-metadata.js +96 -0
  114. package/dist/yom/generated/yomu/yom/pdfexport-metadata.js.map +1 -0
  115. package/dist/yom/generated/yomu/yom/reading-direction.d.ts +5 -0
  116. package/dist/yom/generated/yomu/yom/reading-direction.d.ts.map +1 -0
  117. package/dist/yom/generated/yomu/yom/reading-direction.js +8 -0
  118. package/dist/yom/generated/yomu/yom/reading-direction.js.map +1 -0
  119. package/dist/yom/generated/yomu/yom/search-term-ref.d.ts +34 -0
  120. package/dist/yom/generated/yomu/yom/search-term-ref.d.ts.map +1 -0
  121. package/dist/yom/generated/yomu/yom/search-term-ref.js +99 -0
  122. package/dist/yom/generated/yomu/yom/search-term-ref.js.map +1 -0
  123. package/dist/yom/generated/yomu/yom.d.ts +6 -0
  124. package/dist/yom/generated/yomu/yom.d.ts.map +1 -0
  125. package/dist/yom/generated/yomu/yom.js +8 -0
  126. package/dist/yom/generated/yomu/yom.js.map +1 -0
  127. package/dist/yom/hash.d.ts +4 -0
  128. package/dist/yom/hash.d.ts.map +1 -0
  129. package/dist/yom/hash.js +21 -0
  130. package/dist/yom/hash.js.map +1 -0
  131. package/dist/yom/header.d.ts +44 -0
  132. package/dist/yom/header.d.ts.map +1 -0
  133. package/dist/yom/header.js +115 -0
  134. package/dist/yom/header.js.map +1 -0
  135. package/dist/yom/reader.d.ts +57 -0
  136. package/dist/yom/reader.d.ts.map +1 -0
  137. package/dist/yom/reader.js +141 -0
  138. package/dist/yom/reader.js.map +1 -0
  139. package/dist/yom/searchIndex.d.ts +41 -0
  140. package/dist/yom/searchIndex.d.ts.map +1 -0
  141. package/dist/yom/searchIndex.js +133 -0
  142. package/dist/yom/searchIndex.js.map +1 -0
  143. package/dist/yom/textNormalizer.d.ts +19 -0
  144. package/dist/yom/textNormalizer.d.ts.map +1 -0
  145. package/dist/yom/textNormalizer.js +77 -0
  146. package/dist/yom/textNormalizer.js.map +1 -0
  147. package/dist/yom/validator.d.ts +14 -0
  148. package/dist/yom/validator.d.ts.map +1 -0
  149. package/dist/yom/validator.js +197 -0
  150. package/dist/yom/validator.js.map +1 -0
  151. package/dist/yom/writer.d.ts +76 -0
  152. package/dist/yom/writer.d.ts.map +1 -0
  153. package/dist/yom/writer.js +154 -0
  154. package/dist/yom/writer.js.map +1 -0
  155. package/dist/yom/zstd.d.ts +14 -0
  156. package/dist/yom/zstd.d.ts.map +1 -0
  157. package/dist/yom/zstd.js +43 -0
  158. package/dist/yom/zstd.js.map +1 -0
  159. package/package.json +65 -0
  160. package/src/cli.ts +372 -0
  161. package/src/index.ts +109 -0
  162. package/src/pipeline/avif.ts +33 -0
  163. package/src/pipeline/convert.ts +148 -0
  164. package/src/pipeline/index.ts +28 -0
  165. package/src/pipeline/ocrLayoutBuilder.ts +73 -0
  166. package/src/pipeline/pdfDocument.ts +86 -0
  167. package/src/pipeline/renderPage.ts +48 -0
  168. package/src/pipeline/textExtract.ts +64 -0
  169. package/src/worker/convert.worker.ts +54 -0
  170. package/src/yom/blobLimits.ts +30 -0
  171. package/src/yom/byteSource.ts +144 -0
  172. package/src/yom/bytes.ts +11 -0
  173. package/src/yom/constants.ts +89 -0
  174. package/src/yom/errors.ts +43 -0
  175. package/src/yom/flatbufferVerify.ts +298 -0
  176. package/src/yom/generated/yomu/yom/blob-kind.ts +12 -0
  177. package/src/yom/generated/yomu/yom/blob-ref.ts +184 -0
  178. package/src/yom/generated/yomu/yom/book-metadata.ts +121 -0
  179. package/src/yom/generated/yomu/yom/compression.ts +8 -0
  180. package/src/yom/generated/yomu/yom/main-index.ts +257 -0
  181. package/src/yom/generated/yomu/yom/ocrblock.ts +117 -0
  182. package/src/yom/generated/yomu/yom/ocrlayout.ts +102 -0
  183. package/src/yom/generated/yomu/yom/ocrline.ts +131 -0
  184. package/src/yom/generated/yomu/yom/ocrpage.ts +191 -0
  185. package/src/yom/generated/yomu/yom/ocrtoken.ts +173 -0
  186. package/src/yom/generated/yomu/yom/outline-entry.ts +124 -0
  187. package/src/yom/generated/yomu/yom/page-entry.ts +388 -0
  188. package/src/yom/generated/yomu/yom/pdfexport-metadata.ts +128 -0
  189. package/src/yom/generated/yomu/yom/reading-direction.ts +8 -0
  190. package/src/yom/generated/yomu/yom/search-term-ref.ts +134 -0
  191. package/src/yom/generated/yomu/yom.ts +9 -0
  192. package/src/yom/hash.ts +20 -0
  193. package/src/yom/header.ts +132 -0
  194. package/src/yom/reader.ts +163 -0
  195. package/src/yom/searchIndex.ts +178 -0
  196. package/src/yom/textNormalizer.ts +92 -0
  197. package/src/yom/validator.ts +245 -0
  198. package/src/yom/writer.ts +337 -0
  199. package/src/yom/zstd.ts +47 -0
@@ -0,0 +1,102 @@
1
+ // automatically generated by the FlatBuffers compiler, do not modify
2
+
3
+ /* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
4
+
5
+ import * as flatbuffers from 'flatbuffers';
6
+
7
+ import { OCRPage, OCRPageT } from '../../yomu/yom/ocrpage.js';
8
+
9
+
10
+ export class OCRLayout implements flatbuffers.IUnpackableObject<OCRLayoutT> {
11
+ bb: flatbuffers.ByteBuffer|null = null;
12
+ bb_pos = 0;
13
+ __init(i:number, bb:flatbuffers.ByteBuffer):OCRLayout {
14
+ this.bb_pos = i;
15
+ this.bb = bb;
16
+ return this;
17
+ }
18
+
19
+ static getRootAsOCRLayout(bb:flatbuffers.ByteBuffer, obj?:OCRLayout):OCRLayout {
20
+ return (obj || new OCRLayout()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
21
+ }
22
+
23
+ static getSizePrefixedRootAsOCRLayout(bb:flatbuffers.ByteBuffer, obj?:OCRLayout):OCRLayout {
24
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
25
+ return (obj || new OCRLayout()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
26
+ }
27
+
28
+ pages(index: number, obj?:OCRPage):OCRPage|null {
29
+ const offset = this.bb!.__offset(this.bb_pos, 4);
30
+ return offset ? (obj || new OCRPage()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
31
+ }
32
+
33
+ pagesLength():number {
34
+ const offset = this.bb!.__offset(this.bb_pos, 4);
35
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
36
+ }
37
+
38
+ static startOCRLayout(builder:flatbuffers.Builder) {
39
+ builder.startObject(1);
40
+ }
41
+
42
+ static addPages(builder:flatbuffers.Builder, pagesOffset:flatbuffers.Offset) {
43
+ builder.addFieldOffset(0, pagesOffset, 0);
44
+ }
45
+
46
+ static createPagesVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
47
+ builder.startVector(4, data.length, 4);
48
+ for (let i = data.length - 1; i >= 0; i--) {
49
+ builder.addOffset(data[i]!);
50
+ }
51
+ return builder.endVector();
52
+ }
53
+
54
+ static startPagesVector(builder:flatbuffers.Builder, numElems:number) {
55
+ builder.startVector(4, numElems, 4);
56
+ }
57
+
58
+ static endOCRLayout(builder:flatbuffers.Builder):flatbuffers.Offset {
59
+ const offset = builder.endObject();
60
+ return offset;
61
+ }
62
+
63
+ static finishOCRLayoutBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
64
+ builder.finish(offset);
65
+ }
66
+
67
+ static finishSizePrefixedOCRLayoutBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
68
+ builder.finish(offset, undefined, true);
69
+ }
70
+
71
+ static createOCRLayout(builder:flatbuffers.Builder, pagesOffset:flatbuffers.Offset):flatbuffers.Offset {
72
+ OCRLayout.startOCRLayout(builder);
73
+ OCRLayout.addPages(builder, pagesOffset);
74
+ return OCRLayout.endOCRLayout(builder);
75
+ }
76
+
77
+ unpack(): OCRLayoutT {
78
+ return new OCRLayoutT(
79
+ this.bb!.createObjList<OCRPage, OCRPageT>(this.pages.bind(this), this.pagesLength())
80
+ );
81
+ }
82
+
83
+
84
+ unpackTo(_o: OCRLayoutT): void {
85
+ _o.pages = this.bb!.createObjList<OCRPage, OCRPageT>(this.pages.bind(this), this.pagesLength());
86
+ }
87
+ }
88
+
89
+ export class OCRLayoutT implements flatbuffers.IGeneratedObject {
90
+ constructor(
91
+ public pages: (OCRPageT)[] = []
92
+ ){}
93
+
94
+
95
+ pack(builder:flatbuffers.Builder): flatbuffers.Offset {
96
+ const pages = OCRLayout.createPagesVector(builder, builder.createObjectOffsetList(this.pages));
97
+
98
+ return OCRLayout.createOCRLayout(builder,
99
+ pages
100
+ );
101
+ }
102
+ }
@@ -0,0 +1,131 @@
1
+ // automatically generated by the FlatBuffers compiler, do not modify
2
+
3
+ /* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
4
+
5
+ import * as flatbuffers from 'flatbuffers';
6
+
7
+
8
+
9
+ export class OCRLine implements flatbuffers.IUnpackableObject<OCRLineT> {
10
+ bb: flatbuffers.ByteBuffer|null = null;
11
+ bb_pos = 0;
12
+ __init(i:number, bb:flatbuffers.ByteBuffer):OCRLine {
13
+ this.bb_pos = i;
14
+ this.bb = bb;
15
+ return this;
16
+ }
17
+
18
+ static getRootAsOCRLine(bb:flatbuffers.ByteBuffer, obj?:OCRLine):OCRLine {
19
+ return (obj || new OCRLine()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
20
+ }
21
+
22
+ static getSizePrefixedRootAsOCRLine(bb:flatbuffers.ByteBuffer, obj?:OCRLine):OCRLine {
23
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
24
+ return (obj || new OCRLine()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
25
+ }
26
+
27
+ lineId():number {
28
+ const offset = this.bb!.__offset(this.bb_pos, 4);
29
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
30
+ }
31
+
32
+ blockId():number {
33
+ const offset = this.bb!.__offset(this.bb_pos, 6);
34
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
35
+ }
36
+
37
+ bbox(index: number):number|null {
38
+ const offset = this.bb!.__offset(this.bb_pos, 8);
39
+ return offset ? this.bb!.readFloat32(this.bb!.__vector(this.bb_pos + offset) + index * 4) : 0;
40
+ }
41
+
42
+ bboxLength():number {
43
+ const offset = this.bb!.__offset(this.bb_pos, 8);
44
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
45
+ }
46
+
47
+ bboxArray():Float32Array|null {
48
+ const offset = this.bb!.__offset(this.bb_pos, 8);
49
+ return offset ? new Float32Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
50
+ }
51
+
52
+ static startOCRLine(builder:flatbuffers.Builder) {
53
+ builder.startObject(3);
54
+ }
55
+
56
+ static addLineId(builder:flatbuffers.Builder, lineId:number) {
57
+ builder.addFieldInt32(0, lineId, 0);
58
+ }
59
+
60
+ static addBlockId(builder:flatbuffers.Builder, blockId:number) {
61
+ builder.addFieldInt32(1, blockId, 0);
62
+ }
63
+
64
+ static addBbox(builder:flatbuffers.Builder, bboxOffset:flatbuffers.Offset) {
65
+ builder.addFieldOffset(2, bboxOffset, 0);
66
+ }
67
+
68
+ static createBboxVector(builder:flatbuffers.Builder, data:number[]|Float32Array):flatbuffers.Offset;
69
+ /**
70
+ * @deprecated This Uint8Array overload will be removed in the future.
71
+ */
72
+ static createBboxVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
73
+ static createBboxVector(builder:flatbuffers.Builder, data:number[]|Float32Array|Uint8Array):flatbuffers.Offset {
74
+ builder.startVector(4, data.length, 4);
75
+ for (let i = data.length - 1; i >= 0; i--) {
76
+ builder.addFloat32(data[i]!);
77
+ }
78
+ return builder.endVector();
79
+ }
80
+
81
+ static startBboxVector(builder:flatbuffers.Builder, numElems:number) {
82
+ builder.startVector(4, numElems, 4);
83
+ }
84
+
85
+ static endOCRLine(builder:flatbuffers.Builder):flatbuffers.Offset {
86
+ const offset = builder.endObject();
87
+ return offset;
88
+ }
89
+
90
+ static createOCRLine(builder:flatbuffers.Builder, lineId:number, blockId:number, bboxOffset:flatbuffers.Offset):flatbuffers.Offset {
91
+ OCRLine.startOCRLine(builder);
92
+ OCRLine.addLineId(builder, lineId);
93
+ OCRLine.addBlockId(builder, blockId);
94
+ OCRLine.addBbox(builder, bboxOffset);
95
+ return OCRLine.endOCRLine(builder);
96
+ }
97
+
98
+ unpack(): OCRLineT {
99
+ return new OCRLineT(
100
+ this.lineId(),
101
+ this.blockId(),
102
+ this.bb!.createScalarList<number>(this.bbox.bind(this), this.bboxLength())
103
+ );
104
+ }
105
+
106
+
107
+ unpackTo(_o: OCRLineT): void {
108
+ _o.lineId = this.lineId();
109
+ _o.blockId = this.blockId();
110
+ _o.bbox = this.bb!.createScalarList<number>(this.bbox.bind(this), this.bboxLength());
111
+ }
112
+ }
113
+
114
+ export class OCRLineT implements flatbuffers.IGeneratedObject {
115
+ constructor(
116
+ public lineId: number = 0,
117
+ public blockId: number = 0,
118
+ public bbox: (number)[] = []
119
+ ){}
120
+
121
+
122
+ pack(builder:flatbuffers.Builder): flatbuffers.Offset {
123
+ const bbox = OCRLine.createBboxVector(builder, this.bbox);
124
+
125
+ return OCRLine.createOCRLine(builder,
126
+ this.lineId,
127
+ this.blockId,
128
+ bbox
129
+ );
130
+ }
131
+ }
@@ -0,0 +1,191 @@
1
+ // automatically generated by the FlatBuffers compiler, do not modify
2
+
3
+ /* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
4
+
5
+ import * as flatbuffers from 'flatbuffers';
6
+
7
+ import { OCRBlock, OCRBlockT } from '../../yomu/yom/ocrblock.js';
8
+ import { OCRLine, OCRLineT } from '../../yomu/yom/ocrline.js';
9
+ import { OCRToken, OCRTokenT } from '../../yomu/yom/ocrtoken.js';
10
+
11
+
12
+ export class OCRPage implements flatbuffers.IUnpackableObject<OCRPageT> {
13
+ bb: flatbuffers.ByteBuffer|null = null;
14
+ bb_pos = 0;
15
+ __init(i:number, bb:flatbuffers.ByteBuffer):OCRPage {
16
+ this.bb_pos = i;
17
+ this.bb = bb;
18
+ return this;
19
+ }
20
+
21
+ static getRootAsOCRPage(bb:flatbuffers.ByteBuffer, obj?:OCRPage):OCRPage {
22
+ return (obj || new OCRPage()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
23
+ }
24
+
25
+ static getSizePrefixedRootAsOCRPage(bb:flatbuffers.ByteBuffer, obj?:OCRPage):OCRPage {
26
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
27
+ return (obj || new OCRPage()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
28
+ }
29
+
30
+ pageId():number {
31
+ const offset = this.bb!.__offset(this.bb_pos, 4);
32
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
33
+ }
34
+
35
+ text():string|null
36
+ text(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
37
+ text(optionalEncoding?:any):string|Uint8Array|null {
38
+ const offset = this.bb!.__offset(this.bb_pos, 6);
39
+ return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
40
+ }
41
+
42
+ blocks(index: number, obj?:OCRBlock):OCRBlock|null {
43
+ const offset = this.bb!.__offset(this.bb_pos, 8);
44
+ return offset ? (obj || new OCRBlock()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
45
+ }
46
+
47
+ blocksLength():number {
48
+ const offset = this.bb!.__offset(this.bb_pos, 8);
49
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
50
+ }
51
+
52
+ lines(index: number, obj?:OCRLine):OCRLine|null {
53
+ const offset = this.bb!.__offset(this.bb_pos, 10);
54
+ return offset ? (obj || new OCRLine()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
55
+ }
56
+
57
+ linesLength():number {
58
+ const offset = this.bb!.__offset(this.bb_pos, 10);
59
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
60
+ }
61
+
62
+ tokens(index: number, obj?:OCRToken):OCRToken|null {
63
+ const offset = this.bb!.__offset(this.bb_pos, 12);
64
+ return offset ? (obj || new OCRToken()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
65
+ }
66
+
67
+ tokensLength():number {
68
+ const offset = this.bb!.__offset(this.bb_pos, 12);
69
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
70
+ }
71
+
72
+ static startOCRPage(builder:flatbuffers.Builder) {
73
+ builder.startObject(5);
74
+ }
75
+
76
+ static addPageId(builder:flatbuffers.Builder, pageId:number) {
77
+ builder.addFieldInt32(0, pageId, 0);
78
+ }
79
+
80
+ static addText(builder:flatbuffers.Builder, textOffset:flatbuffers.Offset) {
81
+ builder.addFieldOffset(1, textOffset, 0);
82
+ }
83
+
84
+ static addBlocks(builder:flatbuffers.Builder, blocksOffset:flatbuffers.Offset) {
85
+ builder.addFieldOffset(2, blocksOffset, 0);
86
+ }
87
+
88
+ static createBlocksVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
89
+ builder.startVector(4, data.length, 4);
90
+ for (let i = data.length - 1; i >= 0; i--) {
91
+ builder.addOffset(data[i]!);
92
+ }
93
+ return builder.endVector();
94
+ }
95
+
96
+ static startBlocksVector(builder:flatbuffers.Builder, numElems:number) {
97
+ builder.startVector(4, numElems, 4);
98
+ }
99
+
100
+ static addLines(builder:flatbuffers.Builder, linesOffset:flatbuffers.Offset) {
101
+ builder.addFieldOffset(3, linesOffset, 0);
102
+ }
103
+
104
+ static createLinesVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
105
+ builder.startVector(4, data.length, 4);
106
+ for (let i = data.length - 1; i >= 0; i--) {
107
+ builder.addOffset(data[i]!);
108
+ }
109
+ return builder.endVector();
110
+ }
111
+
112
+ static startLinesVector(builder:flatbuffers.Builder, numElems:number) {
113
+ builder.startVector(4, numElems, 4);
114
+ }
115
+
116
+ static addTokens(builder:flatbuffers.Builder, tokensOffset:flatbuffers.Offset) {
117
+ builder.addFieldOffset(4, tokensOffset, 0);
118
+ }
119
+
120
+ static createTokensVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
121
+ builder.startVector(4, data.length, 4);
122
+ for (let i = data.length - 1; i >= 0; i--) {
123
+ builder.addOffset(data[i]!);
124
+ }
125
+ return builder.endVector();
126
+ }
127
+
128
+ static startTokensVector(builder:flatbuffers.Builder, numElems:number) {
129
+ builder.startVector(4, numElems, 4);
130
+ }
131
+
132
+ static endOCRPage(builder:flatbuffers.Builder):flatbuffers.Offset {
133
+ const offset = builder.endObject();
134
+ return offset;
135
+ }
136
+
137
+ static createOCRPage(builder:flatbuffers.Builder, pageId:number, textOffset:flatbuffers.Offset, blocksOffset:flatbuffers.Offset, linesOffset:flatbuffers.Offset, tokensOffset:flatbuffers.Offset):flatbuffers.Offset {
138
+ OCRPage.startOCRPage(builder);
139
+ OCRPage.addPageId(builder, pageId);
140
+ OCRPage.addText(builder, textOffset);
141
+ OCRPage.addBlocks(builder, blocksOffset);
142
+ OCRPage.addLines(builder, linesOffset);
143
+ OCRPage.addTokens(builder, tokensOffset);
144
+ return OCRPage.endOCRPage(builder);
145
+ }
146
+
147
+ unpack(): OCRPageT {
148
+ return new OCRPageT(
149
+ this.pageId(),
150
+ this.text(),
151
+ this.bb!.createObjList<OCRBlock, OCRBlockT>(this.blocks.bind(this), this.blocksLength()),
152
+ this.bb!.createObjList<OCRLine, OCRLineT>(this.lines.bind(this), this.linesLength()),
153
+ this.bb!.createObjList<OCRToken, OCRTokenT>(this.tokens.bind(this), this.tokensLength())
154
+ );
155
+ }
156
+
157
+
158
+ unpackTo(_o: OCRPageT): void {
159
+ _o.pageId = this.pageId();
160
+ _o.text = this.text();
161
+ _o.blocks = this.bb!.createObjList<OCRBlock, OCRBlockT>(this.blocks.bind(this), this.blocksLength());
162
+ _o.lines = this.bb!.createObjList<OCRLine, OCRLineT>(this.lines.bind(this), this.linesLength());
163
+ _o.tokens = this.bb!.createObjList<OCRToken, OCRTokenT>(this.tokens.bind(this), this.tokensLength());
164
+ }
165
+ }
166
+
167
+ export class OCRPageT implements flatbuffers.IGeneratedObject {
168
+ constructor(
169
+ public pageId: number = 0,
170
+ public text: string|Uint8Array|null = null,
171
+ public blocks: (OCRBlockT)[] = [],
172
+ public lines: (OCRLineT)[] = [],
173
+ public tokens: (OCRTokenT)[] = []
174
+ ){}
175
+
176
+
177
+ pack(builder:flatbuffers.Builder): flatbuffers.Offset {
178
+ const text = (this.text !== null ? builder.createString(this.text!) : 0);
179
+ const blocks = OCRPage.createBlocksVector(builder, builder.createObjectOffsetList(this.blocks));
180
+ const lines = OCRPage.createLinesVector(builder, builder.createObjectOffsetList(this.lines));
181
+ const tokens = OCRPage.createTokensVector(builder, builder.createObjectOffsetList(this.tokens));
182
+
183
+ return OCRPage.createOCRPage(builder,
184
+ this.pageId,
185
+ text,
186
+ blocks,
187
+ lines,
188
+ tokens
189
+ );
190
+ }
191
+ }
@@ -0,0 +1,173 @@
1
+ // automatically generated by the FlatBuffers compiler, do not modify
2
+
3
+ /* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */
4
+
5
+ import * as flatbuffers from 'flatbuffers';
6
+
7
+
8
+
9
+ export class OCRToken implements flatbuffers.IUnpackableObject<OCRTokenT> {
10
+ bb: flatbuffers.ByteBuffer|null = null;
11
+ bb_pos = 0;
12
+ __init(i:number, bb:flatbuffers.ByteBuffer):OCRToken {
13
+ this.bb_pos = i;
14
+ this.bb = bb;
15
+ return this;
16
+ }
17
+
18
+ static getRootAsOCRToken(bb:flatbuffers.ByteBuffer, obj?:OCRToken):OCRToken {
19
+ return (obj || new OCRToken()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
20
+ }
21
+
22
+ static getSizePrefixedRootAsOCRToken(bb:flatbuffers.ByteBuffer, obj?:OCRToken):OCRToken {
23
+ bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
24
+ return (obj || new OCRToken()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
25
+ }
26
+
27
+ textStart():number {
28
+ const offset = this.bb!.__offset(this.bb_pos, 4);
29
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
30
+ }
31
+
32
+ textLength():number {
33
+ const offset = this.bb!.__offset(this.bb_pos, 6);
34
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
35
+ }
36
+
37
+ bbox(index: number):number|null {
38
+ const offset = this.bb!.__offset(this.bb_pos, 8);
39
+ return offset ? this.bb!.readFloat32(this.bb!.__vector(this.bb_pos + offset) + index * 4) : 0;
40
+ }
41
+
42
+ bboxLength():number {
43
+ const offset = this.bb!.__offset(this.bb_pos, 8);
44
+ return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
45
+ }
46
+
47
+ bboxArray():Float32Array|null {
48
+ const offset = this.bb!.__offset(this.bb_pos, 8);
49
+ return offset ? new Float32Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
50
+ }
51
+
52
+ confidence():number {
53
+ const offset = this.bb!.__offset(this.bb_pos, 10);
54
+ return offset ? this.bb!.readFloat32(this.bb_pos + offset) : 0.0;
55
+ }
56
+
57
+ lineId():number {
58
+ const offset = this.bb!.__offset(this.bb_pos, 12);
59
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
60
+ }
61
+
62
+ blockId():number {
63
+ const offset = this.bb!.__offset(this.bb_pos, 14);
64
+ return offset ? this.bb!.readUint32(this.bb_pos + offset) : 0;
65
+ }
66
+
67
+ static startOCRToken(builder:flatbuffers.Builder) {
68
+ builder.startObject(6);
69
+ }
70
+
71
+ static addTextStart(builder:flatbuffers.Builder, textStart:number) {
72
+ builder.addFieldInt32(0, textStart, 0);
73
+ }
74
+
75
+ static addTextLength(builder:flatbuffers.Builder, textLength:number) {
76
+ builder.addFieldInt32(1, textLength, 0);
77
+ }
78
+
79
+ static addBbox(builder:flatbuffers.Builder, bboxOffset:flatbuffers.Offset) {
80
+ builder.addFieldOffset(2, bboxOffset, 0);
81
+ }
82
+
83
+ static createBboxVector(builder:flatbuffers.Builder, data:number[]|Float32Array):flatbuffers.Offset;
84
+ /**
85
+ * @deprecated This Uint8Array overload will be removed in the future.
86
+ */
87
+ static createBboxVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
88
+ static createBboxVector(builder:flatbuffers.Builder, data:number[]|Float32Array|Uint8Array):flatbuffers.Offset {
89
+ builder.startVector(4, data.length, 4);
90
+ for (let i = data.length - 1; i >= 0; i--) {
91
+ builder.addFloat32(data[i]!);
92
+ }
93
+ return builder.endVector();
94
+ }
95
+
96
+ static startBboxVector(builder:flatbuffers.Builder, numElems:number) {
97
+ builder.startVector(4, numElems, 4);
98
+ }
99
+
100
+ static addConfidence(builder:flatbuffers.Builder, confidence:number) {
101
+ builder.addFieldFloat32(3, confidence, 0.0);
102
+ }
103
+
104
+ static addLineId(builder:flatbuffers.Builder, lineId:number) {
105
+ builder.addFieldInt32(4, lineId, 0);
106
+ }
107
+
108
+ static addBlockId(builder:flatbuffers.Builder, blockId:number) {
109
+ builder.addFieldInt32(5, blockId, 0);
110
+ }
111
+
112
+ static endOCRToken(builder:flatbuffers.Builder):flatbuffers.Offset {
113
+ const offset = builder.endObject();
114
+ return offset;
115
+ }
116
+
117
+ static createOCRToken(builder:flatbuffers.Builder, textStart:number, textLength:number, bboxOffset:flatbuffers.Offset, confidence:number, lineId:number, blockId:number):flatbuffers.Offset {
118
+ OCRToken.startOCRToken(builder);
119
+ OCRToken.addTextStart(builder, textStart);
120
+ OCRToken.addTextLength(builder, textLength);
121
+ OCRToken.addBbox(builder, bboxOffset);
122
+ OCRToken.addConfidence(builder, confidence);
123
+ OCRToken.addLineId(builder, lineId);
124
+ OCRToken.addBlockId(builder, blockId);
125
+ return OCRToken.endOCRToken(builder);
126
+ }
127
+
128
+ unpack(): OCRTokenT {
129
+ return new OCRTokenT(
130
+ this.textStart(),
131
+ this.textLength(),
132
+ this.bb!.createScalarList<number>(this.bbox.bind(this), this.bboxLength()),
133
+ this.confidence(),
134
+ this.lineId(),
135
+ this.blockId()
136
+ );
137
+ }
138
+
139
+
140
+ unpackTo(_o: OCRTokenT): void {
141
+ _o.textStart = this.textStart();
142
+ _o.textLength = this.textLength();
143
+ _o.bbox = this.bb!.createScalarList<number>(this.bbox.bind(this), this.bboxLength());
144
+ _o.confidence = this.confidence();
145
+ _o.lineId = this.lineId();
146
+ _o.blockId = this.blockId();
147
+ }
148
+ }
149
+
150
+ export class OCRTokenT implements flatbuffers.IGeneratedObject {
151
+ constructor(
152
+ public textStart: number = 0,
153
+ public textLength: number = 0,
154
+ public bbox: (number)[] = [],
155
+ public confidence: number = 0.0,
156
+ public lineId: number = 0,
157
+ public blockId: number = 0
158
+ ){}
159
+
160
+
161
+ pack(builder:flatbuffers.Builder): flatbuffers.Offset {
162
+ const bbox = OCRToken.createBboxVector(builder, this.bbox);
163
+
164
+ return OCRToken.createOCRToken(builder,
165
+ this.textStart,
166
+ this.textLength,
167
+ bbox,
168
+ this.confidence,
169
+ this.lineId,
170
+ this.blockId
171
+ );
172
+ }
173
+ }