geotiff 3.0.2 → 3.0.4-beta.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 (279) hide show
  1. package/dist-browser/geotiff.js +3 -3
  2. package/dist-browser/geotiff.js.map +1 -1
  3. package/dist-module/compression/basedecoder.d.ts +30 -4
  4. package/dist-module/compression/basedecoder.d.ts.map +1 -1
  5. package/dist-module/compression/basedecoder.js +22 -1
  6. package/dist-module/compression/basedecoder.js.map +1 -0
  7. package/dist-module/compression/deflate.d.ts +2 -1
  8. package/dist-module/compression/deflate.d.ts.map +1 -1
  9. package/dist-module/compression/deflate.js +2 -0
  10. package/dist-module/compression/deflate.js.map +1 -0
  11. package/dist-module/compression/index.d.ts +14 -22
  12. package/dist-module/compression/index.d.ts.map +1 -1
  13. package/dist-module/compression/index.js +36 -25
  14. package/dist-module/compression/index.js.map +1 -0
  15. package/dist-module/compression/jpeg.d.ts +55 -15
  16. package/dist-module/compression/jpeg.d.ts.map +1 -1
  17. package/dist-module/compression/jpeg.js +187 -16
  18. package/dist-module/compression/jpeg.js.map +1 -0
  19. package/dist-module/compression/lerc.d.ts +11 -1
  20. package/dist-module/compression/lerc.d.ts.map +1 -1
  21. package/dist-module/compression/lerc.js +16 -4
  22. package/dist-module/compression/lerc.js.map +1 -0
  23. package/dist-module/compression/lzw.d.ts +2 -1
  24. package/dist-module/compression/lzw.d.ts.map +1 -1
  25. package/dist-module/compression/lzw.js +29 -1
  26. package/dist-module/compression/lzw.js.map +1 -0
  27. package/dist-module/compression/packbits.d.ts +2 -1
  28. package/dist-module/compression/packbits.d.ts.map +1 -1
  29. package/dist-module/compression/packbits.js +2 -0
  30. package/dist-module/compression/packbits.js.map +1 -0
  31. package/dist-module/compression/raw.d.ts +2 -1
  32. package/dist-module/compression/raw.d.ts.map +1 -1
  33. package/dist-module/compression/raw.js +2 -0
  34. package/dist-module/compression/raw.js.map +1 -0
  35. package/dist-module/compression/webimage.d.ts +2 -1
  36. package/dist-module/compression/webimage.d.ts.map +1 -1
  37. package/dist-module/compression/webimage.js +5 -0
  38. package/dist-module/compression/webimage.js.map +1 -0
  39. package/dist-module/compression/zstd.d.ts +4 -2
  40. package/dist-module/compression/zstd.d.ts.map +1 -1
  41. package/dist-module/compression/zstd.js +3 -1
  42. package/dist-module/compression/zstd.js.map +1 -0
  43. package/dist-module/dataslice.d.ts +78 -22
  44. package/dist-module/dataslice.d.ts.map +1 -1
  45. package/dist-module/dataslice.js +57 -1
  46. package/dist-module/dataslice.js.map +1 -0
  47. package/dist-module/dataview64.d.ts +71 -14
  48. package/dist-module/dataview64.d.ts.map +1 -1
  49. package/dist-module/dataview64.js +58 -1
  50. package/dist-module/dataview64.js.map +1 -0
  51. package/dist-module/geotiff.d.ts +61 -12
  52. package/dist-module/geotiff.d.ts.map +1 -1
  53. package/dist-module/geotiff.js +73 -14
  54. package/dist-module/geotiff.js.map +1 -0
  55. package/dist-module/geotiffimage.d.ts +41 -15
  56. package/dist-module/geotiffimage.d.ts.map +1 -1
  57. package/dist-module/geotiffimage.js +132 -52
  58. package/dist-module/geotiffimage.js.map +1 -0
  59. package/dist-module/geotiffwriter.d.ts +28 -1
  60. package/dist-module/geotiffwriter.d.ts.map +1 -1
  61. package/dist-module/geotiffwriter.js +206 -84
  62. package/dist-module/geotiffwriter.js.map +1 -0
  63. package/dist-module/globals.d.ts +912 -92
  64. package/dist-module/globals.d.ts.map +1 -1
  65. package/dist-module/globals.js +201 -227
  66. package/dist-module/globals.js.map +1 -0
  67. package/dist-module/imagefiledirectory.d.ts +72 -19
  68. package/dist-module/imagefiledirectory.d.ts.map +1 -1
  69. package/dist-module/imagefiledirectory.js +51 -26
  70. package/dist-module/imagefiledirectory.js.map +1 -0
  71. package/dist-module/logging.d.ts +36 -10
  72. package/dist-module/logging.d.ts.map +1 -1
  73. package/dist-module/logging.js +16 -2
  74. package/dist-module/logging.js.map +1 -0
  75. package/dist-module/pool.d.ts +15 -8
  76. package/dist-module/pool.d.ts.map +1 -1
  77. package/dist-module/pool.js +11 -3
  78. package/dist-module/pool.js.map +1 -0
  79. package/dist-module/predictor.d.ts +10 -1
  80. package/dist-module/predictor.d.ts.map +1 -1
  81. package/dist-module/predictor.js +19 -0
  82. package/dist-module/predictor.js.map +1 -0
  83. package/dist-module/resample.d.ts.map +1 -1
  84. package/dist-module/resample.js +12 -0
  85. package/dist-module/resample.js.map +1 -0
  86. package/dist-module/rgb.js +1 -0
  87. package/dist-module/rgb.js.map +1 -0
  88. package/dist-module/source/arraybuffer.d.ts +7 -4
  89. package/dist-module/source/arraybuffer.d.ts.map +1 -1
  90. package/dist-module/source/arraybuffer.js +15 -1
  91. package/dist-module/source/arraybuffer.js.map +1 -0
  92. package/dist-module/source/basesource.d.ts +11 -6
  93. package/dist-module/source/basesource.d.ts.map +1 -1
  94. package/dist-module/source/basesource.js +7 -4
  95. package/dist-module/source/basesource.js.map +1 -0
  96. package/dist-module/source/blockedsource.d.ts +2 -2
  97. package/dist-module/source/blockedsource.d.ts.map +1 -1
  98. package/dist-module/source/blockedsource.js +8 -5
  99. package/dist-module/source/blockedsource.js.map +1 -0
  100. package/dist-module/source/client/base.d.ts +8 -7
  101. package/dist-module/source/client/base.d.ts.map +1 -1
  102. package/dist-module/source/client/base.js +7 -5
  103. package/dist-module/source/client/base.js.map +1 -0
  104. package/dist-module/source/client/fetch.d.ts +6 -2
  105. package/dist-module/source/client/fetch.d.ts.map +1 -1
  106. package/dist-module/source/client/fetch.js +7 -2
  107. package/dist-module/source/client/fetch.js.map +1 -0
  108. package/dist-module/source/client/http.d.ts +27 -5
  109. package/dist-module/source/client/http.d.ts.map +1 -1
  110. package/dist-module/source/client/http.js +16 -2
  111. package/dist-module/source/client/http.js.map +1 -0
  112. package/dist-module/source/client/xhr.d.ts +22 -3
  113. package/dist-module/source/client/xhr.d.ts.map +1 -1
  114. package/dist-module/source/client/xhr.js +12 -2
  115. package/dist-module/source/client/xhr.js.map +1 -0
  116. package/dist-module/source/file.d.ts +8 -5
  117. package/dist-module/source/file.d.ts.map +1 -1
  118. package/dist-module/source/file.js +40 -8
  119. package/dist-module/source/file.js.map +1 -0
  120. package/dist-module/source/filereader.d.ts +12 -4
  121. package/dist-module/source/filereader.d.ts.map +1 -1
  122. package/dist-module/source/filereader.js +15 -2
  123. package/dist-module/source/filereader.js.map +1 -0
  124. package/dist-module/source/httputils.d.ts +16 -9
  125. package/dist-module/source/httputils.d.ts.map +1 -1
  126. package/dist-module/source/httputils.js +19 -12
  127. package/dist-module/source/httputils.js.map +1 -0
  128. package/dist-module/source/remote.d.ts.map +1 -1
  129. package/dist-module/source/remote.js +19 -7
  130. package/dist-module/source/remote.js.map +1 -0
  131. package/dist-module/utils.d.ts +36 -41
  132. package/dist-module/utils.d.ts.map +1 -1
  133. package/dist-module/utils.js +17 -12
  134. package/dist-module/utils.js.map +1 -0
  135. package/dist-module/worker/create.js +1 -1
  136. package/dist-module/worker/create.js.map +1 -0
  137. package/dist-module/worker/decoder.d.ts +2 -0
  138. package/dist-module/worker/decoder.d.ts.map +1 -0
  139. package/dist-module/worker/decoder.js +21 -0
  140. package/dist-module/worker/decoder.js.map +1 -0
  141. package/dist-node/compression/basedecoder.d.ts +30 -4
  142. package/dist-node/compression/basedecoder.d.ts.map +1 -1
  143. package/dist-node/compression/basedecoder.js +22 -1
  144. package/dist-node/compression/basedecoder.js.map +1 -1
  145. package/dist-node/compression/deflate.d.ts +2 -1
  146. package/dist-node/compression/deflate.d.ts.map +1 -1
  147. package/dist-node/compression/deflate.js +2 -0
  148. package/dist-node/compression/deflate.js.map +1 -1
  149. package/dist-node/compression/index.d.ts +14 -22
  150. package/dist-node/compression/index.d.ts.map +1 -1
  151. package/dist-node/compression/index.js +36 -25
  152. package/dist-node/compression/index.js.map +1 -1
  153. package/dist-node/compression/jpeg.d.ts +55 -16
  154. package/dist-node/compression/jpeg.d.ts.map +1 -1
  155. package/dist-node/compression/jpeg.js +187 -16
  156. package/dist-node/compression/jpeg.js.map +1 -1
  157. package/dist-node/compression/lerc.d.ts +11 -1
  158. package/dist-node/compression/lerc.d.ts.map +1 -1
  159. package/dist-node/compression/lerc.js +16 -4
  160. package/dist-node/compression/lerc.js.map +1 -1
  161. package/dist-node/compression/lzw.d.ts +2 -1
  162. package/dist-node/compression/lzw.d.ts.map +1 -1
  163. package/dist-node/compression/lzw.js +29 -1
  164. package/dist-node/compression/lzw.js.map +1 -1
  165. package/dist-node/compression/packbits.d.ts +2 -1
  166. package/dist-node/compression/packbits.d.ts.map +1 -1
  167. package/dist-node/compression/packbits.js +2 -0
  168. package/dist-node/compression/packbits.js.map +1 -1
  169. package/dist-node/compression/raw.d.ts +2 -1
  170. package/dist-node/compression/raw.d.ts.map +1 -1
  171. package/dist-node/compression/raw.js +2 -0
  172. package/dist-node/compression/raw.js.map +1 -1
  173. package/dist-node/compression/webimage.d.ts +2 -2
  174. package/dist-node/compression/webimage.d.ts.map +1 -1
  175. package/dist-node/compression/webimage.js +5 -0
  176. package/dist-node/compression/webimage.js.map +1 -1
  177. package/dist-node/compression/zstd.d.ts +2 -1
  178. package/dist-node/compression/zstd.d.ts.map +1 -1
  179. package/dist-node/compression/zstd.js +3 -1
  180. package/dist-node/compression/zstd.js.map +1 -1
  181. package/dist-node/dataslice.d.ts +78 -22
  182. package/dist-node/dataslice.d.ts.map +1 -1
  183. package/dist-node/dataslice.js +57 -1
  184. package/dist-node/dataslice.js.map +1 -1
  185. package/dist-node/dataview64.d.ts +71 -14
  186. package/dist-node/dataview64.d.ts.map +1 -1
  187. package/dist-node/dataview64.js +58 -1
  188. package/dist-node/dataview64.js.map +1 -1
  189. package/dist-node/geotiff.d.ts +61 -12
  190. package/dist-node/geotiff.d.ts.map +1 -1
  191. package/dist-node/geotiff.js +75 -15
  192. package/dist-node/geotiff.js.map +1 -1
  193. package/dist-node/geotiffimage.d.ts +41 -15
  194. package/dist-node/geotiffimage.d.ts.map +1 -1
  195. package/dist-node/geotiffimage.js +132 -52
  196. package/dist-node/geotiffimage.js.map +1 -1
  197. package/dist-node/geotiffwriter.d.ts +28 -1
  198. package/dist-node/geotiffwriter.d.ts.map +1 -1
  199. package/dist-node/geotiffwriter.js +206 -84
  200. package/dist-node/geotiffwriter.js.map +1 -1
  201. package/dist-node/globals.d.ts +910 -90
  202. package/dist-node/globals.d.ts.map +1 -1
  203. package/dist-node/globals.js +202 -228
  204. package/dist-node/globals.js.map +1 -1
  205. package/dist-node/imagefiledirectory.d.ts +72 -19
  206. package/dist-node/imagefiledirectory.d.ts.map +1 -1
  207. package/dist-node/imagefiledirectory.js +51 -26
  208. package/dist-node/imagefiledirectory.js.map +1 -1
  209. package/dist-node/logging.d.ts +36 -10
  210. package/dist-node/logging.d.ts.map +1 -1
  211. package/dist-node/logging.js +16 -2
  212. package/dist-node/logging.js.map +1 -1
  213. package/dist-node/pool.d.ts +15 -8
  214. package/dist-node/pool.d.ts.map +1 -1
  215. package/dist-node/pool.js +11 -3
  216. package/dist-node/pool.js.map +1 -1
  217. package/dist-node/predictor.d.ts +10 -1
  218. package/dist-node/predictor.d.ts.map +1 -1
  219. package/dist-node/predictor.js +19 -0
  220. package/dist-node/predictor.js.map +1 -1
  221. package/dist-node/resample.d.ts.map +1 -1
  222. package/dist-node/resample.js +12 -0
  223. package/dist-node/resample.js.map +1 -1
  224. package/dist-node/rgb.js +1 -0
  225. package/dist-node/rgb.js.map +1 -1
  226. package/dist-node/source/arraybuffer.d.ts +7 -4
  227. package/dist-node/source/arraybuffer.d.ts.map +1 -1
  228. package/dist-node/source/arraybuffer.js +15 -1
  229. package/dist-node/source/arraybuffer.js.map +1 -1
  230. package/dist-node/source/basesource.d.ts +11 -6
  231. package/dist-node/source/basesource.d.ts.map +1 -1
  232. package/dist-node/source/basesource.js +7 -4
  233. package/dist-node/source/basesource.js.map +1 -1
  234. package/dist-node/source/blockedsource.d.ts +2 -2
  235. package/dist-node/source/blockedsource.d.ts.map +1 -1
  236. package/dist-node/source/blockedsource.js +8 -5
  237. package/dist-node/source/blockedsource.js.map +1 -1
  238. package/dist-node/source/client/base.d.ts +8 -7
  239. package/dist-node/source/client/base.d.ts.map +1 -1
  240. package/dist-node/source/client/base.js +7 -5
  241. package/dist-node/source/client/base.js.map +1 -1
  242. package/dist-node/source/client/fetch.d.ts +5 -2
  243. package/dist-node/source/client/fetch.d.ts.map +1 -1
  244. package/dist-node/source/client/fetch.js +7 -2
  245. package/dist-node/source/client/fetch.js.map +1 -1
  246. package/dist-node/source/client/http.d.ts +22 -4
  247. package/dist-node/source/client/http.d.ts.map +1 -1
  248. package/dist-node/source/client/http.js +16 -2
  249. package/dist-node/source/client/http.js.map +1 -1
  250. package/dist-node/source/client/xhr.d.ts +23 -3
  251. package/dist-node/source/client/xhr.d.ts.map +1 -1
  252. package/dist-node/source/client/xhr.js +12 -2
  253. package/dist-node/source/client/xhr.js.map +1 -1
  254. package/dist-node/source/file.d.ts +8 -5
  255. package/dist-node/source/file.d.ts.map +1 -1
  256. package/dist-node/source/file.js +40 -8
  257. package/dist-node/source/file.js.map +1 -1
  258. package/dist-node/source/filereader.d.ts +12 -4
  259. package/dist-node/source/filereader.d.ts.map +1 -1
  260. package/dist-node/source/filereader.js +15 -2
  261. package/dist-node/source/filereader.js.map +1 -1
  262. package/dist-node/source/httputils.d.ts +16 -9
  263. package/dist-node/source/httputils.d.ts.map +1 -1
  264. package/dist-node/source/httputils.js +19 -12
  265. package/dist-node/source/httputils.js.map +1 -1
  266. package/dist-node/source/remote.d.ts.map +1 -1
  267. package/dist-node/source/remote.js +19 -7
  268. package/dist-node/source/remote.js.map +1 -1
  269. package/dist-node/utils.d.ts +9 -8
  270. package/dist-node/utils.d.ts.map +1 -1
  271. package/dist-node/utils.js +17 -12
  272. package/dist-node/utils.js.map +1 -1
  273. package/dist-node/worker/create.js +1 -1
  274. package/dist-node/worker/create.js.map +1 -1
  275. package/dist-node/worker/decoder.d.ts +2 -0
  276. package/dist-node/worker/decoder.d.ts.map +1 -0
  277. package/dist-node/worker/decoder.js +24 -0
  278. package/dist-node/worker/decoder.js.map +1 -0
  279. package/package.json +5 -3
@@ -1 +1 @@
1
- {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../src/globals.js"],"names":[],"mappings":"AA6CA,2EAA2E;AAE3E;;;;;GAKG;AACH,4CAJW,SAAS,GACP,MAAM,CASlB;AA+ND;;;;;;;;;GASG;AACH,iCARW,MAAM,QACN,MAAM,QACN,MAAM,GAAC,MAAM,GAAC,SAAS,6BAEvB,OAAO,QAajB;AAMD;;;GAGG;AACH,0CAHW,MAAM,GAAC,MAAM,GACX,MAAM,CAOlB;AAED,gDAEC;AAhUD;;;;;;;;;;;;;;;;;GAmBG;AAEH,gDAAgD;AAEhD,+DAA+D;AAE/D,8DAA8D;AAC9D;;;;;;;;;;;;;;;;;GAiBG;AAqOH;;GAEG;AACH,sBAAuB;AAEvB;;GAEG;AACH,gCAAiC;AA0CjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqDE;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAEH,kEAAkE;AAElE;;GAEG;AACH,sBAFU,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAEkC;;;;6BArbxD,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC"}
1
+ {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../src/globals.js"],"names":[],"mappings":"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"}
@@ -1,27 +1,28 @@
1
- export const fieldTypes = Object.freeze({
2
- BYTE: 0x0001,
3
- ASCII: 0x0002,
4
- SHORT: 0x0003,
5
- LONG: 0x0004,
6
- RATIONAL: 0x0005,
7
- SBYTE: 0x0006,
8
- UNDEFINED: 0x0007,
9
- SSHORT: 0x0008,
10
- SLONG: 0x0009,
11
- SRATIONAL: 0x000a,
12
- FLOAT: 0x000b,
13
- DOUBLE: 0x000c,
1
+ /** @import {TypedArray} from './geotiff.js' */
2
+ export const fieldTypes = {
3
+ BYTE: /** @type {1} */ (0x0001),
4
+ ASCII: /** @type {2} */ (0x0002),
5
+ SHORT: /** @type {3} */ (0x0003),
6
+ LONG: /** @type {4} */ (0x0004),
7
+ RATIONAL: /** @type {5} */ (0x0005),
8
+ SBYTE: /** @type {6} */ (0x0006),
9
+ UNDEFINED: /** @type {7} */ (0x0007),
10
+ SSHORT: /** @type {8} */ (0x0008),
11
+ SLONG: /** @type {9} */ (0x0009),
12
+ SRATIONAL: /** @type {10} */ (0x000a),
13
+ FLOAT: /** @type {11} */ (0x000b),
14
+ DOUBLE: /** @type {12} */ (0x000c),
14
15
  // IFD offset, suggested by https://owl.phy.queensu.ca/~phil/exiftool/standards.html
15
- IFD: 0x000d,
16
+ IFD: /** @type {13} */ (0x000d),
16
17
  // introduced by BigTIFF
17
- LONG8: 0x0010,
18
- SLONG8: 0x0011,
19
- IFD8: 0x0012,
20
- });
18
+ LONG8: /** @type {16} */ (0x0010),
19
+ SLONG8: /** @type {17} */ (0x0011),
20
+ IFD8: /** @type {18} */ (0x0012),
21
+ };
21
22
  /** @typedef {keyof fieldTypes} FieldTypeName */
22
23
  /** @typedef {fieldTypes[keyof typeof fieldTypes]} FieldType */
23
24
  /** @typedef {Record<FieldTypeName, number>} FieldTypeSizes */
24
- export const fieldTypeSizes = Object.freeze({
25
+ export const fieldTypeSizes = /** @type {const} */ ({
25
26
  [fieldTypes.BYTE]: 1,
26
27
  [fieldTypes.ASCII]: 1,
27
28
  [fieldTypes.SBYTE]: 1,
@@ -53,219 +54,188 @@ export function getFieldTypeSize(fieldType) {
53
54
  }
54
55
  return size;
55
56
  }
56
- const tagSource = [
57
- { tag: 254, name: 'NewSubfileType', fieldTypes: fieldTypes.LONG },
58
- { tag: 255, name: 'SubfileType', type: fieldTypes.SHORT },
59
- { tag: 256, name: 'ImageWidth', type: fieldTypes.SHORT },
60
- { tag: 257, name: 'ImageLength', type: fieldTypes.SHORT },
61
- {
62
- tag: 258,
63
- name: 'BitsPerSample',
64
- type: fieldTypes.SHORT,
65
- isArray: true,
66
- eager: true,
67
- },
68
- { tag: 259, name: 'Compression', type: fieldTypes.SHORT },
69
- { tag: 262, name: 'PhotometricInterpretation', type: fieldTypes.SHORT },
70
- { tag: 263, name: 'Threshholding', type: fieldTypes.SHORT },
71
- { tag: 264, name: 'CellWidth', type: fieldTypes.SHORT },
72
- { tag: 265, name: 'CellLength', type: fieldTypes.SHORT },
73
- { tag: 266, name: 'FillOrder', type: fieldTypes.SHORT },
74
- { tag: 269, name: 'DocumentName', type: fieldTypes.ASCII },
75
- { tag: 270, name: 'ImageDescription', type: fieldTypes.ASCII },
76
- { tag: 271, name: 'Make', type: fieldTypes.ASCII },
77
- { tag: 272, name: 'Model', type: fieldTypes.ASCII },
78
- { tag: 273, name: 'StripOffsets', type: fieldTypes.SHORT, isArray: true },
79
- { tag: 274, name: 'Orientation', type: fieldTypes.SHORT },
80
- { tag: 277, name: 'SamplesPerPixel', type: fieldTypes.SHORT },
81
- { tag: 278, name: 'RowsPerStrip', type: fieldTypes.SHORT },
82
- { tag: 279, name: 'StripByteCounts', type: fieldTypes.LONG, isArray: true },
83
- { tag: 280, name: 'MinSampleValue', type: fieldTypes.SHORT, isArray: true },
84
- { tag: 281, name: 'MaxSampleValue', type: fieldTypes.SHORT, isArray: true },
85
- { tag: 282, name: 'XResolution', type: fieldTypes.RATIONAL },
86
- { tag: 283, name: 'YResolution', type: fieldTypes.RATIONAL },
87
- { tag: 284, name: 'PlanarConfiguration', fieldTypes: fieldTypes.SHORT },
88
- { tag: 285, name: 'PageName', type: fieldTypes.ASCII },
89
- { tag: 286, name: 'XPosition', type: fieldTypes.RATIONAL },
90
- { tag: 287, name: 'YPosition', type: fieldTypes.RATIONAL },
91
- { tag: 288, name: 'FreeOffsets', type: fieldTypes.LONG },
92
- { tag: 289, name: 'FreeByteCounts', type: fieldTypes.LONG },
93
- { tag: 290, name: 'GrayResponseUnit', type: fieldTypes.SHORT },
94
- {
95
- tag: 291,
96
- name: 'GrayResponseCurve',
97
- type: fieldTypes.SHORT,
98
- isArray: true,
99
- },
100
- { tag: 292, name: 'T4Options', type: fieldTypes.LONG },
101
- { tag: 293, name: 'T6Options', type: fieldTypes.LONG },
102
- { tag: 296, name: 'ResolutionUnit', type: fieldTypes.SHORT },
103
- { tag: 297, name: 'PageNumber', type: fieldTypes.SHORT, isArray: true },
104
- { tag: 301, name: 'TransferFunction', type: fieldTypes.SHORT, isArray: true },
105
- { tag: 305, name: 'Software', type: fieldTypes.ASCII },
106
- { tag: 306, name: 'DateTime', type: fieldTypes.ASCII },
107
- { tag: 315, name: 'Artist', type: fieldTypes.ASCII },
108
- { tag: 316, name: 'HostComputer', type: fieldTypes.ASCII },
109
- { tag: 317, name: 'Predictor', type: fieldTypes.SHORT },
110
- { tag: 318, name: 'WhitePoint', type: fieldTypes.RATIONAL, isArray: true },
111
- {
112
- tag: 319,
113
- name: 'PrimaryChromaticities',
114
- type: fieldTypes.RATIONAL,
115
- isArray: true,
116
- },
117
- { tag: 320, name: 'ColorMap', type: fieldTypes.SHORT, isArray: true },
118
- { tag: 321, name: 'HalftoneHints', type: fieldTypes.SHORT, isArray: true },
119
- { tag: 322, name: 'TileWidth', type: fieldTypes.SHORT },
120
- { tag: 323, name: 'TileLength', type: fieldTypes.SHORT },
121
- { tag: 324, name: 'TileOffsets', type: fieldTypes.LONG, isArray: true },
122
- { tag: 325, name: 'TileByteCounts', type: fieldTypes.SHORT, isArray: true },
123
- { tag: 332, name: 'InkSet', type: fieldTypes.SHORT },
124
- { tag: 333, name: 'InkNames', type: fieldTypes.ASCII },
125
- { tag: 334, name: 'NumberOfInks', type: fieldTypes.SHORT },
126
- { tag: 336, name: 'DotRange', type: fieldTypes.BYTE, isArray: true },
127
- { tag: 337, name: 'TargetPrinter', type: fieldTypes.ASCII },
128
- { tag: 338, name: 'ExtraSamples', type: fieldTypes.BYTE, isArray: true },
129
- {
130
- tag: 339,
131
- name: 'SampleFormat',
132
- type: fieldTypes.SHORT,
133
- isArray: true,
134
- eager: true,
135
- },
136
- { tag: 340, name: 'SMinSampleValue', isArray: true },
137
- { tag: 341, name: 'SMaxSampleValue', isArray: true },
138
- { tag: 342, name: 'TransferRange', type: fieldTypes.SHORT, isArray: true },
139
- { tag: 512, name: 'JPEGProc', type: fieldTypes.SHORT },
140
- { tag: 513, name: 'JPEGInterchangeFormat', type: fieldTypes.LONG },
141
- { tag: 514, name: 'JPEGInterchangeFormatLngth', type: fieldTypes.LONG },
142
- { tag: 515, name: 'JPEGRestartInterval', type: fieldTypes.SHORT },
143
- {
144
- tag: 517,
145
- name: 'JPEGLosslessPredictors',
146
- type: fieldTypes.SHORT,
147
- isArray: true,
148
- },
149
- {
150
- tag: 518,
151
- name: 'JPEGPointTransforms',
152
- type: fieldTypes.SHORT,
153
- isArray: true,
154
- },
155
- { tag: 519, name: 'JPEGQTables', type: fieldTypes.LONG, isArray: true },
156
- { tag: 520, name: 'JPEGDCTables', type: fieldTypes.LONG, isArray: true },
157
- { tag: 521, name: 'JPEGACTables', type: fieldTypes.LONG, isArray: true },
158
- {
159
- tag: 529,
160
- name: 'YCbCrCoefficients',
161
- type: fieldTypes.RATIONAL,
162
- isArray: true,
163
- },
164
- { tag: 530, name: 'YCbCrSubSampling', type: fieldTypes.SHORT, isArray: true },
165
- { tag: 531, name: 'YCbCrPositioning', type: fieldTypes.SHORT },
166
- {
167
- tag: 532,
168
- name: 'ReferenceBlackWhite',
169
- type: fieldTypes.LONG,
170
- isArray: true,
171
- },
172
- { tag: 33432, name: 'Copyright', type: fieldTypes.ASCII },
173
- // TIFF Extended
174
- { tag: 326, name: 'BadFaxLines' },
175
- { tag: 327, name: 'CleanFaxData' },
176
- { tag: 343, name: 'ClipPath' },
177
- { tag: 328, name: 'ConsecutiveBadFaxLines' },
178
- { tag: 433, name: 'Decode' },
179
- { tag: 434, name: 'DefaultImageColor' },
180
- { tag: 346, name: 'Indexed' },
181
- { tag: 347, name: 'JPEGTables', isArray: true, eager: true },
182
- { tag: 559, name: 'StripRowCounts', isArray: true },
183
- { tag: 330, name: 'SubIFDs', isArray: true },
184
- { tag: 344, name: 'XClipPathUnits' },
185
- { tag: 345, name: 'YClipPathUnits' },
186
- // EXIF
187
- { tag: 37378, name: 'ApertureValue' },
188
- { tag: 40961, name: 'ColorSpace' },
189
- { tag: 36868, name: 'DateTimeDigitized' },
190
- { tag: 36867, name: 'DateTimeOriginal' },
191
- { tag: 34665, name: 'Exif IFD', type: fieldTypes.LONG },
192
- { tag: 36864, name: 'ExifVersion' },
193
- { tag: 33434, name: 'ExposureTime' },
194
- { tag: 41728, name: 'FileSource' },
195
- { tag: 37385, name: 'Flash' },
196
- { tag: 40960, name: 'FlashpixVersion' },
197
- { tag: 33437, name: 'FNumber' },
198
- { tag: 42016, name: 'ImageUniqueID' },
199
- { tag: 37384, name: 'LightSource' },
200
- { tag: 37500, name: 'MakerNote' },
201
- { tag: 37377, name: 'ShutterSpeedValue' },
202
- { tag: 37510, name: 'UserComment' },
203
- // IPTC
204
- { tag: 33723, name: 'IPTC' },
205
- // Laser Scanning Microscopy
206
- { tag: 34412, name: 'CZ_LSMINFO' },
207
- // ICC
208
- { tag: 34675, name: 'ICC Profile' },
209
- // XMP
210
- { tag: 700, name: 'XMP' },
211
- // GDAL
212
- { tag: 42112, name: 'GDAL_METADATA' },
213
- { tag: 42113, name: 'GDAL_NODATA', type: fieldTypes.ASCII },
214
- // Photoshop
215
- { tag: 34377, name: 'Photoshop' },
216
- // GeoTiff
217
- {
218
- tag: 33550,
219
- name: 'ModelPixelScale',
220
- type: fieldTypes.DOUBLE,
221
- isArray: true,
222
- eager: true,
223
- },
224
- {
225
- tag: 33922,
226
- name: 'ModelTiepoint',
227
- type: fieldTypes.DOUBLE,
228
- isArray: true,
229
- eager: true,
230
- },
231
- {
232
- tag: 34264,
233
- name: 'ModelTransformation',
234
- type: fieldTypes.DOUBLE,
235
- isArray: true,
236
- eager: true,
237
- },
238
- {
239
- tag: 34735,
240
- name: 'GeoKeyDirectory',
241
- type: fieldTypes.SHORT,
242
- isArray: true,
243
- eager: true,
244
- },
245
- {
246
- tag: 34736,
247
- name: 'GeoDoubleParams',
248
- type: fieldTypes.DOUBLE,
249
- isArray: true,
250
- eager: true,
251
- },
252
- { tag: 34737, name: 'GeoAsciiParams', type: fieldTypes.ASCII, eager: true },
253
- // LERC
254
- { tag: 50674, name: 'LercParameters', eager: true },
255
- ];
57
+ /**
58
+ * @typedef {Object} TagDictionaryEntry
59
+ * @property {number} tag
60
+ * @property {string} [name]
61
+ * @property {number} [type]
62
+ * @property {boolean} [isArray]
63
+ * @property {boolean} [eager]
64
+ */
65
+ export const tagDictionary = /** @type {const} */ ({
66
+ NewSubfileType: { tag: 254, type: fieldTypes.LONG },
67
+ SubfileType: { tag: 255, type: fieldTypes.SHORT },
68
+ ImageWidth: { tag: 256, type: fieldTypes.SHORT },
69
+ ImageLength: { tag: 257, type: fieldTypes.SHORT },
70
+ BitsPerSample: { tag: 258, type: fieldTypes.SHORT, isArray: true, eager: true },
71
+ Compression: { tag: 259, type: fieldTypes.SHORT },
72
+ PhotometricInterpretation: { tag: 262, type: fieldTypes.SHORT },
73
+ Threshholding: { tag: 263, type: fieldTypes.SHORT },
74
+ CellWidth: { tag: 264, type: fieldTypes.SHORT },
75
+ CellLength: { tag: 265, type: fieldTypes.SHORT },
76
+ FillOrder: { tag: 266, type: fieldTypes.SHORT },
77
+ DocumentName: { tag: 269, type: fieldTypes.ASCII },
78
+ ImageDescription: { tag: 270, type: fieldTypes.ASCII },
79
+ Make: { tag: 271, type: fieldTypes.ASCII },
80
+ Model: { tag: 272, type: fieldTypes.ASCII },
81
+ StripOffsets: { tag: 273, type: fieldTypes.SHORT, isArray: true },
82
+ Orientation: { tag: 274, type: fieldTypes.SHORT },
83
+ SamplesPerPixel: { tag: 277, type: fieldTypes.SHORT },
84
+ RowsPerStrip: { tag: 278, type: fieldTypes.SHORT },
85
+ StripByteCounts: { tag: 279, type: fieldTypes.LONG, isArray: true },
86
+ MinSampleValue: { tag: 280, type: fieldTypes.SHORT, isArray: true },
87
+ MaxSampleValue: { tag: 281, type: fieldTypes.SHORT, isArray: true },
88
+ XResolution: { tag: 282, type: fieldTypes.RATIONAL },
89
+ YResolution: { tag: 283, type: fieldTypes.RATIONAL },
90
+ PlanarConfiguration: { tag: 284, type: fieldTypes.SHORT },
91
+ PageName: { tag: 285, type: fieldTypes.ASCII },
92
+ XPosition: { tag: 286, type: fieldTypes.RATIONAL },
93
+ YPosition: { tag: 287, type: fieldTypes.RATIONAL },
94
+ FreeOffsets: { tag: 288, type: fieldTypes.LONG },
95
+ FreeByteCounts: { tag: 289, type: fieldTypes.LONG },
96
+ GrayResponseUnit: { tag: 290, type: fieldTypes.SHORT },
97
+ GrayResponseCurve: { tag: 291, type: fieldTypes.SHORT, isArray: true },
98
+ T4Options: { tag: 292, type: fieldTypes.LONG },
99
+ T6Options: { tag: 293, type: fieldTypes.LONG },
100
+ ResolutionUnit: { tag: 296, type: fieldTypes.SHORT },
101
+ PageNumber: { tag: 297, type: fieldTypes.SHORT, isArray: true },
102
+ TransferFunction: { tag: 301, type: fieldTypes.SHORT, isArray: true },
103
+ Software: { tag: 305, type: fieldTypes.ASCII },
104
+ DateTime: { tag: 306, type: fieldTypes.ASCII },
105
+ Artist: { tag: 315, type: fieldTypes.ASCII },
106
+ HostComputer: { tag: 316, type: fieldTypes.ASCII },
107
+ Predictor: { tag: 317, type: fieldTypes.SHORT },
108
+ WhitePoint: { tag: 318, type: fieldTypes.RATIONAL, isArray: true },
109
+ PrimaryChromaticities: { tag: 319, type: fieldTypes.RATIONAL, isArray: true },
110
+ ColorMap: { tag: 320, type: fieldTypes.SHORT, isArray: true },
111
+ HalftoneHints: { tag: 321, type: fieldTypes.SHORT, isArray: true },
112
+ TileWidth: { tag: 322, type: fieldTypes.SHORT },
113
+ TileLength: { tag: 323, type: fieldTypes.SHORT },
114
+ TileOffsets: { tag: 324, type: fieldTypes.LONG, isArray: true },
115
+ TileByteCounts: { tag: 325, type: fieldTypes.SHORT, isArray: true },
116
+ InkSet: { tag: 332, type: fieldTypes.SHORT },
117
+ InkNames: { tag: 333, type: fieldTypes.ASCII },
118
+ NumberOfInks: { tag: 334, type: fieldTypes.SHORT },
119
+ DotRange: { tag: 336, type: fieldTypes.BYTE, isArray: true },
120
+ TargetPrinter: { tag: 337, type: fieldTypes.ASCII },
121
+ ExtraSamples: { tag: 338, type: fieldTypes.BYTE, isArray: true },
122
+ SampleFormat: { tag: 339, type: fieldTypes.SHORT, isArray: true, eager: true },
123
+ SMinSampleValue: { tag: 340, isArray: true },
124
+ SMaxSampleValue: { tag: 341, isArray: true },
125
+ TransferRange: { tag: 342, type: fieldTypes.SHORT, isArray: true },
126
+ JPEGProc: { tag: 512, type: fieldTypes.SHORT },
127
+ JPEGInterchangeFormat: { tag: 513, type: fieldTypes.LONG },
128
+ JPEGInterchangeFormatLngth: { tag: 514, type: fieldTypes.LONG },
129
+ JPEGRestartInterval: { tag: 515, type: fieldTypes.SHORT },
130
+ JPEGLosslessPredictors: { tag: 517, type: fieldTypes.SHORT, isArray: true },
131
+ JPEGPointTransforms: { tag: 518, type: fieldTypes.SHORT, isArray: true },
132
+ JPEGQTables: { tag: 519, type: fieldTypes.LONG, isArray: true },
133
+ JPEGDCTables: { tag: 520, type: fieldTypes.LONG, isArray: true },
134
+ JPEGACTables: { tag: 521, type: fieldTypes.LONG, isArray: true },
135
+ YCbCrCoefficients: { tag: 529, type: fieldTypes.RATIONAL, isArray: true },
136
+ YCbCrSubSampling: { tag: 530, type: fieldTypes.SHORT, isArray: true },
137
+ YCbCrPositioning: { tag: 531, type: fieldTypes.SHORT },
138
+ ReferenceBlackWhite: { tag: 532, type: fieldTypes.LONG, isArray: true },
139
+ Copyright: { tag: 33432, type: fieldTypes.ASCII },
140
+ BadFaxLines: { tag: 326 },
141
+ CleanFaxData: { tag: 327 },
142
+ ClipPath: { tag: 343 },
143
+ ConsecutiveBadFaxLines: { tag: 328 },
144
+ Decode: { tag: 433 },
145
+ DefaultImageColor: { tag: 434 },
146
+ Indexed: { tag: 346 },
147
+ JPEGTables: { tag: 347, isArray: true, eager: true },
148
+ StripRowCounts: { tag: 559, isArray: true },
149
+ SubIFDs: { tag: 330, isArray: true },
150
+ XClipPathUnits: { tag: 344 },
151
+ YClipPathUnits: { tag: 345 },
152
+ ApertureValue: { tag: 37378 },
153
+ ColorSpace: { tag: 40961 },
154
+ DateTimeDigitized: { tag: 36868 },
155
+ DateTimeOriginal: { tag: 36867 },
156
+ ExifIFD: { tag: 34665, name: 'Exif IFD', type: fieldTypes.LONG },
157
+ ExifVersion: { tag: 36864 },
158
+ ExposureTime: { tag: 33434 },
159
+ FileSource: { tag: 41728 },
160
+ Flash: { tag: 37385 },
161
+ FlashpixVersion: { tag: 40960 },
162
+ FNumber: { tag: 33437 },
163
+ ImageUniqueID: { tag: 42016 },
164
+ LightSource: { tag: 37384 },
165
+ MakerNote: { tag: 37500 },
166
+ ShutterSpeedValue: { tag: 37377 },
167
+ UserComment: { tag: 37510 },
168
+ IPTC: { tag: 33723 },
169
+ CZ_LSMINFO: { tag: 34412 },
170
+ ICCProfile: { tag: 34675, name: 'ICC Profile' },
171
+ XMP: { tag: 700 },
172
+ GDAL_METADATA: { tag: 42112 },
173
+ GDAL_NODATA: { tag: 42113, type: fieldTypes.ASCII },
174
+ Photoshop: { tag: 34377 },
175
+ ModelPixelScale: { tag: 33550, type: fieldTypes.DOUBLE, isArray: true, eager: true },
176
+ ModelTiepoint: { tag: 33922, type: fieldTypes.DOUBLE, isArray: true, eager: true },
177
+ ModelTransformation: { tag: 34264, type: fieldTypes.DOUBLE, isArray: true, eager: true },
178
+ GeoKeyDirectory: { tag: 34735, type: fieldTypes.SHORT, isArray: true, eager: true },
179
+ GeoDoubleParams: { tag: 34736, type: fieldTypes.DOUBLE, isArray: true, eager: true },
180
+ GeoAsciiParams: { tag: 34737, type: fieldTypes.ASCII, eager: true },
181
+ LercParameters: { tag: 50674, eager: true },
182
+ });
183
+ /** @typedef {keyof typeof tagDictionary} TagName */
184
+ /** @typedef {typeof tagDictionary[keyof typeof tagDictionary]['tag']} Tag */
185
+ /** @typedef {Extract<typeof tagDictionary[keyof typeof tagDictionary], {type: any}>['type']} TagType */
186
+ /**
187
+ * @template {number} T
188
+ * @typedef {T extends 2 ? string : number} GeoTiffPrimitive
189
+ */
190
+ /**
191
+ * @template {TagName} T
192
+ * @typedef {typeof tagDictionary[T]} TagDef
193
+ */
194
+ /**
195
+ * @typedef {{
196
+ * 1: number;
197
+ * 2: string;
198
+ * 3: number;
199
+ * 4: number;
200
+ * 5: number;
201
+ * 6: number;
202
+ * 7: ArrayBuffer;
203
+ * 8: number;
204
+ * 9: number;
205
+ * 10: number;
206
+ * 11: number;
207
+ * 12: number;
208
+ * 16: number;
209
+ * 17: number;
210
+ * 18: number;
211
+ * }} FieldTypeMap
212
+ */
213
+ /**
214
+ * @template {TagName} T
215
+ * @typedef {TagDef<T> extends { isArray: true }
216
+ * ? (TagDef<T> extends { type: typeof fieldTypes.DOUBLE } ? number[] :
217
+ * TagDef<T> extends { type: typeof fieldTypes.ASCII } ? string[] :
218
+ * TagDef<T> extends { type: typeof fieldTypes.BYTE | typeof fieldTypes.SBYTE | typeof fieldTypes.UNDEFINED }
219
+ * ? Uint8Array | Int8Array :
220
+ * (number[] | TypedArray))
221
+ * : (TagDef<T> extends { type: keyof FieldTypeMap } ? FieldTypeMap[TagDef<T>['type']] : any)} TagValue
222
+ */
256
223
  /**
257
224
  * Maps tag names to their numeric values
225
+ * @type {Record<string, number>}
258
226
  */
227
+ /** @type {Record<string, number>} */
259
228
  export const tags = {};
260
229
  /**
261
230
  * Maps tag numbers to their definitions
231
+ * @type {Record<number, { tag: number, name: string, type: string|number|undefined, isArray: boolean, eager: boolean }>}
262
232
  */
263
233
  export const tagDefinitions = {};
264
234
  /**
265
235
  * Registers a new field tag
266
236
  * @param {number} tag the numeric tiff tag
267
237
  * @param {string} name the name of the tag that will be reported in the IFD
268
- * @param {string|number|undefined} type the tags data type
238
+ * @param {keyof fieldTypes|number|undefined} type the tags data type
269
239
  * @param {Boolean} isArray whether the tag is an array
270
240
  * @param {boolean} [eager=false] whether to eagerly fetch deferred fields.
271
241
  * When false (default), tags are loaded lazily on-demand.
@@ -275,8 +245,9 @@ export function registerTag(tag, name, type, isArray = false, eager = false) {
275
245
  tags[name] = tag;
276
246
  tagDefinitions[tag] = { tag, name, type: typeof type === 'string' ? fieldTypes[type] : type, isArray, eager };
277
247
  }
278
- for (const entry of tagSource) {
279
- registerTag(entry.tag, entry.name, entry.type, entry.isArray, entry.eager);
248
+ for (const [key, value] of Object.entries(tagDictionary)) {
249
+ const entry = /** @type {TagDictionaryEntry} */ (value);
250
+ registerTag(entry.tag, entry.name || key, entry.type, entry.isArray, entry.eager);
280
251
  }
281
252
  /**
282
253
  * @param {number|string} tagIdentifier The field tag ID or name
@@ -288,6 +259,10 @@ export function resolveTag(tagIdentifier) {
288
259
  }
289
260
  return tags[tagIdentifier];
290
261
  }
262
+ /**
263
+ * @param {number|string} tagIdentifier The field tag ID or name
264
+ * @returns {{ tag: number, name: string, type: string|number|undefined, isArray: boolean, eager: boolean }} the tag definition
265
+ */
291
266
  export function getTag(tagIdentifier) {
292
267
  return tagDefinitions[resolveTag(tagIdentifier)];
293
268
  }
@@ -370,7 +345,7 @@ export const LercAddCompression = {
370
345
  Deflate: 1,
371
346
  Zstandard: 2,
372
347
  };
373
- export const geoKeyNames = Object.freeze({
348
+ export const geoKeyNames = /** @type {const} */ ({
374
349
  1024: 'GTModelTypeGeoKey',
375
350
  1025: 'GTRasterTypeGeoKey',
376
351
  1026: 'GTCitationGeoKey',
@@ -424,8 +399,7 @@ export const geoKeyNames = Object.freeze({
424
399
  * @type {Record<GeoKeyName, number>}
425
400
  */
426
401
  export const geoKeys = /** @type {Record<GeoKeyName, number>} */ ({});
427
- for (const key in geoKeyNames) {
428
- if (geoKeyNames.hasOwnProperty(key)) {
429
- geoKeys[geoKeyNames[key]] = parseInt(key, 10);
430
- }
402
+ for (const [key, name] of Object.entries(geoKeyNames)) {
403
+ geoKeys[ /** @type {GeoKeyName} */(name)] = parseInt(key, 10);
431
404
  }
405
+ //# sourceMappingURL=globals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.js","sourceRoot":"","sources":["../src/globals.js"],"names":[],"mappings":"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"}