@wasmedia/wimagemagick 0.2.0 → 0.4.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 (58) hide show
  1. package/CHANGELOG.md +88 -1
  2. package/README.md +16 -1
  3. package/dist/api.d.ts +4 -0
  4. package/dist/api.d.ts.map +1 -1
  5. package/dist/api.js +4 -0
  6. package/dist/api.js.map +1 -1
  7. package/dist/cli.d.ts +23 -6
  8. package/dist/cli.d.ts.map +1 -1
  9. package/dist/cli.js +16 -8
  10. package/dist/cli.js.map +1 -1
  11. package/dist/files.d.ts +80 -0
  12. package/dist/files.d.ts.map +1 -0
  13. package/dist/files.js +175 -0
  14. package/dist/files.js.map +1 -0
  15. package/dist/filesystem.d.ts.map +1 -1
  16. package/dist/filesystem.js +19 -0
  17. package/dist/filesystem.js.map +1 -1
  18. package/dist/image.d.ts +16 -8
  19. package/dist/image.d.ts.map +1 -1
  20. package/dist/image.js +38 -12
  21. package/dist/image.js.map +1 -1
  22. package/dist/index.d.ts +2 -0
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +2 -0
  25. package/dist/index.js.map +1 -1
  26. package/dist/licenses/README.txt +3 -3
  27. package/dist/licenses/aom-LICENSE.txt +1 -1
  28. package/dist/licenses/de265-LICENSE.txt +1 -1
  29. package/dist/licenses/ffi-LICENSE.txt +2 -2
  30. package/dist/licenses/heif-LICENSE.txt +1 -1
  31. package/dist/licenses/highway-LICENSE.txt +172 -2
  32. package/dist/licenses/jpeg-turbo-LICENSE.txt +46 -34
  33. package/dist/licenses/jpeg-xl-LICENSE.txt +1 -1
  34. package/dist/licenses/lcms-LICENSE.txt +1 -1
  35. package/dist/licenses/png-LICENSE.txt +1 -1
  36. package/dist/licenses/tiff-LICENSE.txt +1 -1
  37. package/dist/licenses/xml-LICENSE.txt +1 -1
  38. package/dist/licenses/zstd-LICENSE.txt +32 -0
  39. package/dist/loader.d.ts.map +1 -1
  40. package/dist/loader.js +2 -0
  41. package/dist/loader.js.map +1 -1
  42. package/dist/raw.d.ts +28 -6
  43. package/dist/raw.d.ts.map +1 -1
  44. package/dist/raw.js +37 -6
  45. package/dist/raw.js.map +1 -1
  46. package/dist/types.d.ts +2 -0
  47. package/dist/types.d.ts.map +1 -1
  48. package/dist/wimagemagick.js +2 -15
  49. package/dist/wimagemagick.wasm +0 -0
  50. package/dist/wopfs.d.ts +43 -0
  51. package/dist/wopfs.d.ts.map +1 -0
  52. package/dist/wopfs.js +40 -0
  53. package/dist/wopfs.js.map +1 -0
  54. package/dist/worker-handler.d.ts +1 -1
  55. package/dist/worker-handler.d.ts.map +1 -1
  56. package/dist/worker-handler.js +26 -0
  57. package/dist/worker-handler.js.map +1 -1
  58. package/package.json +7 -2
@@ -1,4 +1,4 @@
1
- [ jpeg-turbo 3.1.3 (2025-12-10) ]
1
+ [ jpeg-turbo 3.2.0 (2025-06-30) ]
2
2
 
3
3
  libjpeg-turbo Licenses
4
4
  ======================
@@ -10,18 +10,46 @@ libjpeg-turbo is covered by two compatible BSD-style open source licenses:
10
10
 
11
11
  This license applies to the libjpeg API library and associated programs,
12
12
  including any code inherited from libjpeg and any modifications to that
13
- code. Note that the libjpeg-turbo SIMD source code bears the
14
- [zlib License](https://opensource.org/licenses/Zlib), but in the context of
15
- the overall libjpeg API library, the terms of the zlib License are subsumed
16
- by the terms of the IJG License.
13
+ code.
17
14
 
18
15
  - The Modified (3-clause) BSD License, which is listed below
19
16
 
20
- This license applies to the TurboJPEG API library and associated programs, as
21
- well as the build system. Note that the TurboJPEG API library wraps the
22
- libjpeg API library, so in the context of the overall TurboJPEG API library,
23
- both the terms of the IJG License and the terms of the Modified (3-clause)
24
- BSD License apply.
17
+ This license applies to the TurboJPEG API library and associated programs,
18
+ [libspng](https://libspng.org) (which is used by cjpeg and djpeg), and the
19
+ build/test system.
20
+
21
+ * The TurboJPEG API library wraps the libjpeg API library, so in the context
22
+ of the overall TurboJPEG API library, both the terms of the IJG License and
23
+ the terms of the Modified (3-clause) BSD License apply.
24
+ * cjpeg and djpeg use libspng, so in the context of those programs, both the
25
+ terms of the IJG License and the terms of the Modified (3-clause) BSD
26
+ License apply.
27
+
28
+
29
+ Component Licenses
30
+ ==================
31
+
32
+ Some of libjpeg-turbo's modules and internal dependencies are covered by less
33
+ restrictive licenses, but in the context of libjpeg-turbo as a whole, the terms
34
+ of the less restrictive licenses are subsumed by either the IJG License or the
35
+ Modified BSD License. (In other words, the terms of the less restrictive
36
+ licenses are satisfied if the terms of the IJG and Modified BSD Licenses are
37
+ satisfied.)
38
+
39
+ - The libjpeg-turbo SIMD source code and zlib are covered by the
40
+ [zlib License](https://spdx.org/licenses/Zlib.html), which is subsumed by the
41
+ IJG License in the context of the cjpeg and djpeg programs and the libjpeg
42
+ API library.
43
+
44
+ - Some of the libspng source code is covered by the
45
+ [PNG Reference Library License v2](https://spdx.org/licenses/libpng-2.0.html),
46
+ which is subsumed by the IJG License in the context of the cjpeg and djpeg
47
+ programs and the TurboJPEG API library.
48
+
49
+ - Most of the libspng source code is covered by the
50
+ [Simplified (2-clause) BSD License](https://spdx.org/licenses/BSD-2-Clause.html),
51
+ which is subsumed by the Modified BSD License in the context of the cjpeg and
52
+ djpeg programs and the TurboJPEG API library.
25
53
 
26
54
 
27
55
  Complying with the libjpeg-turbo Licenses
@@ -40,7 +68,6 @@ intended solely for clarification.
40
68
  **Origin**
41
69
  - Clause 1 of the IJG License
42
70
  - Clause 1 of the Modified BSD License
43
- - Clauses 1 and 3 of the zlib License
44
71
 
45
72
  2. You must add your own copyright notice to the header of each source
46
73
  file you modified, so others can tell that you modified that file. (If
@@ -49,7 +76,6 @@ intended solely for clarification.
49
76
 
50
77
  **Origin**
51
78
  - Clause 1 of the IJG License
52
- - Clause 2 of the zlib License
53
79
 
54
80
  3. You must include the IJG README file, and you must not alter any of the
55
81
  copyright or license text in that file.
@@ -69,9 +95,9 @@ intended solely for clarification.
69
95
  **Origin**
70
96
  - Clause 2 of the IJG license
71
97
 
72
- 2. If your binary distribution includes or uses the TurboJPEG API, then
73
- your product documentation must include the text of the Modified BSD
74
- License (see below.)
98
+ 2. If your binary distribution includes or uses the TurboJPEG API or
99
+ associated programs, cjpeg, or djpeg, then your product documentation
100
+ must include the text of the Modified BSD License (see below.)
75
101
 
76
102
  **Origin**
77
103
  - Clause 2 of the Modified BSD License
@@ -83,21 +109,20 @@ intended solely for clarification.
83
109
  - IJG License
84
110
  - Clause 3 of the Modified BSD License
85
111
 
86
- 4. The IJG and The libjpeg-turbo Project do not warrant libjpeg-turbo to be
87
- free of defects, nor do we accept any liability for undesirable
88
- consequences resulting from your use of the software.
112
+ 4. The authors and distributors do not warrant libjpeg-turbo to be free of
113
+ defects, nor do we accept any liability for undesirable consequences
114
+ resulting from your use of the software.
89
115
 
90
116
  **Origin**
91
117
  - IJG License
92
118
  - Modified BSD License
93
- - zlib License
94
119
 
95
120
 
96
121
  The Modified (3-clause) BSD License
97
122
  ===================================
98
123
 
99
- Copyright (C)2009-2025 D. R. Commander. All Rights Reserved.<br>
100
- Copyright (C)2015 Viktor Szathmáry. All Rights Reserved.
124
+ Copyright (C) 2009-2026 D. R. Commander<br>
125
+ Copyright (C) 2018-2023 Randy <randy408@protonmail.com>
101
126
 
102
127
  Redistribution and use in source and binary forms, with or without
103
128
  modification, are permitted provided that the following conditions are met:
@@ -122,16 +147,3 @@ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
122
147
  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
123
148
  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
124
149
  POSSIBILITY OF SUCH DAMAGE.
125
-
126
-
127
- Why Two Licenses?
128
- =================
129
-
130
- The zlib License could have been used instead of the Modified (3-clause) BSD
131
- License, and since the IJG License effectively subsumes the distribution
132
- conditions of the zlib License, this would have effectively placed
133
- libjpeg-turbo binary distributions under the IJG License. However, the IJG
134
- License specifically refers to the Independent JPEG Group and does not extend
135
- attribution and endorsement protections to other entities. Thus, it was
136
- desirable to choose a license that granted us the same protections for new code
137
- that were granted to the IJG for code derived from their software.
@@ -1,4 +1,4 @@
1
- [ jpeg-xl 0.11.2 (2026-02-10) ]
1
+ [ jpeg-xl 0.12.0 (2026-07-01) ]
2
2
 
3
3
  Copyright (c) the JPEG XL Project Authors.
4
4
  All rights reserved.
@@ -1,4 +1,4 @@
1
- [ lcms 2.18.0 (2026-01-09) ]
1
+ [ lcms 2.19.1 (2026-05-06) ]
2
2
 
3
3
  MIT License
4
4
 
@@ -1,4 +1,4 @@
1
- [ png 1.6.56 (2026-03-25) ]
1
+ [ png 1.6.58 (2026-04-15) ]
2
2
 
3
3
  COPYRIGHT NOTICE, DISCLAIMER, and LICENSE
4
4
  =========================================
@@ -1,4 +1,4 @@
1
- [ tiff 4.7.1 (2025-09-12) ]
1
+ [ tiff 4.7.2 (2026-06-26) ]
2
2
 
3
3
  # LibTIFF license
4
4
 
@@ -1,4 +1,4 @@
1
- [ xml 2.15.2 (2026-03-03) ]
1
+ [ xml 2.15.4 (2026-09-01) ]
2
2
 
3
3
  Except where otherwise noted in the source code (e.g. the files dict.c and
4
4
  list.c, which are covered by a similar licence but with different Copyright
@@ -0,0 +1,32 @@
1
+ [ zstd 1.5.7 (2025-02-19) ]
2
+
3
+ BSD License
4
+
5
+ For Zstandard software
6
+
7
+ Copyright (c) Meta Platforms, Inc. and affiliates. All rights reserved.
8
+
9
+ Redistribution and use in source and binary forms, with or without modification,
10
+ are permitted provided that the following conditions are met:
11
+
12
+ * Redistributions of source code must retain the above copyright notice, this
13
+ list of conditions and the following disclaimer.
14
+
15
+ * Redistributions in binary form must reproduce the above copyright notice,
16
+ this list of conditions and the following disclaimer in the documentation
17
+ and/or other materials provided with the distribution.
18
+
19
+ * Neither the name Facebook, nor Meta, nor the names of its contributors may
20
+ be used to endorse or promote products derived from this software without
21
+ specific prior written permission.
22
+
23
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
24
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
25
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
27
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
30
+ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAEV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAcpB;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,oBAAoB,CAAC,CAyB/B"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAEV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAepB;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,oBAAoB,CAAC,CA2B/B"}
package/dist/loader.js CHANGED
@@ -4,6 +4,7 @@
4
4
  import { createBindings } from "./api.js";
5
5
  import { WMagickImage, setSharedModule } from "./image.js";
6
6
  import { execute, createOutputHooks } from "./cli.js";
7
+ import { executeFiles } from "./files.js";
7
8
  async function loadModule(modulePath) {
8
9
  const factory = await import(/* webpackIgnore: true */ modulePath);
9
10
  const init = factory.default ?? factory;
@@ -43,6 +44,7 @@ export async function initWImageMagick(options) {
43
44
  return {
44
45
  Image: WMagickImage,
45
46
  execute: boundExecute,
47
+ executeFiles: (command, inputs, options) => executeFiles(module, command, inputs, options),
46
48
  api: createBindings(module),
47
49
  module,
48
50
  };
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAEtD,KAAK,UAAU,UAAU,CAAC,UAAkB;IAC1C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;IACnE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC;IACxC,mEAAmE;IACnE,0EAA0E;IAC1E,MAAM,MAAM,GAAe,MAAM,IAAI,CAAC,EAAE,GAAG,iBAAiB,EAAE,EAAE,CAAC,CAAC;IAClE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAA6B;IAE7B,OAAO,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC;IAEjC,MAAM,UAAU,GAAG,OAAO,EAAE,QAAQ;WAC/B,IAAI,GAAG,CAAC,yBAAyB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAE9D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;IAE5C,OAAO,EAAE,UAAU,EAAE,CAAC,cAAc,CAAC,CAAC;IAEtC,eAAe,CAAC,MAAM,CAAC,CAAC;IAExB,OAAO,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC;IAE/B,MAAM,YAAY,GAAG,CACnB,OAA0B,EAC1B,UAAkD,EAClD,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAE1C,OAAO;QACL,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,YAAY;QACrB,GAAG,EAAE,cAAc,CAAC,MAAM,CAAC;QAC3B,MAAM;KACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,KAAK,UAAU,UAAU,CAAC,UAAkB;IAC1C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;IACnE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC;IACxC,mEAAmE;IACnE,0EAA0E;IAC1E,MAAM,MAAM,GAAe,MAAM,IAAI,CAAC,EAAE,GAAG,iBAAiB,EAAE,EAAE,CAAC,CAAC;IAClE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAA6B;IAE7B,OAAO,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC;IAEjC,MAAM,UAAU,GAAG,OAAO,EAAE,QAAQ;WAC/B,IAAI,GAAG,CAAC,yBAAyB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAE9D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;IAE5C,OAAO,EAAE,UAAU,EAAE,CAAC,cAAc,CAAC,CAAC;IAEtC,eAAe,CAAC,MAAM,CAAC,CAAC;IAExB,OAAO,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC;IAE/B,MAAM,YAAY,GAAG,CACnB,OAA0B,EAC1B,UAAkD,EAClD,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAE1C,OAAO;QACL,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,YAAY;QACrB,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CACzC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;QAChD,GAAG,EAAE,cAAc,CAAC,MAAM,CAAC;QAC3B,MAAM;KACP,CAAC;AACJ,CAAC"}
package/dist/raw.d.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * Recognise camera raw files from their first bytes.
3
3
  *
4
- * ImageMagick registers its raw coders with `ExplicitFormatType`, so it never
5
- * picks LibRaw from a file's contents. Most raws are TIFF containers, and
6
- * without a hint the TIFF coder claims them: a DNG comes back as the
7
- * undemosaiced sensor mosaic, a NEF as its 160x120 embedded preview, and a CR2
8
- * fails outright. Detecting the raw here lets the buffer entry points supply
9
- * the hint themselves.
4
+ * ImageMagick registers its raw coders with `ExplicitFormatType`, so it picks
5
+ * LibRaw from a file's contents only for the fixed headers in its magic table
6
+ * (CR3, RAF, …) and for DNG, which its TIFF coder hands over. Other raws are
7
+ * TIFF containers the TIFF coder claims: a NEF comes back as its 160x120
8
+ * embedded preview and a CR2 fails outright. Detecting the raw here lets the
9
+ * buffer entry points supply the hint themselves.
10
10
  *
11
11
  * Only signatures that have been checked against real camera files are
12
12
  * matched, and the TIFF-based ones require the raw file's structure, not just
@@ -36,4 +36,26 @@
36
36
  * depend on which formats ImageMagick happens to sniff.
37
37
  */
38
38
  export declare function detectRawFormat(data: Uint8Array | ArrayBuffer): string | undefined;
39
+ /**
40
+ * The formats ImageMagick's raw coder (`coders/dng.c`) registers, all decoded
41
+ * by LibRaw. A filename with one of these extensions already reaches LibRaw.
42
+ */
43
+ export declare const RAW_FORMATS: ReadonlySet<string>;
44
+ /** How many leading bytes {@link inputFormatHint} needs to see. */
45
+ export declare const HINT_HEADER_BYTES: number;
46
+ /**
47
+ * The format prefix to read a command's input with, or `undefined` to leave
48
+ * it to ImageMagick.
49
+ *
50
+ * Only DNG is hinted. ImageMagick's TIFF coder hands a DNG to LibRaw by
51
+ * itself, but by re-entering ReadImage after mapping the whole file: the
52
+ * post-read steps (`-extract`, `%` escapes in `-comment`/`-label`, the
53
+ * `-verbose` report) run twice, and the file is copied into the heap first.
54
+ * `dng:` goes straight to LibRaw. Other raws are left alone, because a hint
55
+ * would change which decoder runs, and `execute()` goes by filename for those.
56
+ *
57
+ * @param name - The input's name in the command
58
+ * @param header - Its first {@link HINT_HEADER_BYTES} bytes (or all of it)
59
+ */
60
+ export declare function inputFormatHint(name: string, header: Uint8Array): string | undefined;
39
61
  //# sourceMappingURL=raw.d.ts.map
package/dist/raw.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"raw.d.ts","sourceRoot":"","sources":["../src/raw.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAgGH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CA2BlF"}
1
+ {"version":3,"file":"raw.d.ts","sourceRoot":"","sources":["../src/raw.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAgGH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CA2BlF;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,CAI1C,CAAC;AAEH,mEAAmE;AACnE,eAAO,MAAM,iBAAiB,QAAY,CAAC;AAE3C;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAIpF"}
package/dist/raw.js CHANGED
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * Recognise camera raw files from their first bytes.
3
3
  *
4
- * ImageMagick registers its raw coders with `ExplicitFormatType`, so it never
5
- * picks LibRaw from a file's contents. Most raws are TIFF containers, and
6
- * without a hint the TIFF coder claims them: a DNG comes back as the
7
- * undemosaiced sensor mosaic, a NEF as its 160x120 embedded preview, and a CR2
8
- * fails outright. Detecting the raw here lets the buffer entry points supply
9
- * the hint themselves.
4
+ * ImageMagick registers its raw coders with `ExplicitFormatType`, so it picks
5
+ * LibRaw from a file's contents only for the fixed headers in its magic table
6
+ * (CR3, RAF, …) and for DNG, which its TIFF coder hands over. Other raws are
7
+ * TIFF containers the TIFF coder claims: a NEF comes back as its 160x120
8
+ * embedded preview and a CR2 fails outright. Detecting the raw here lets the
9
+ * buffer entry points supply the hint themselves.
10
10
  *
11
11
  * Only signatures that have been checked against real camera files are
12
12
  * matched, and the TIFF-based ones require the raw file's structure, not just
@@ -148,4 +148,35 @@ export function detectRawFormat(data) {
148
148
  }
149
149
  return undefined;
150
150
  }
151
+ /**
152
+ * The formats ImageMagick's raw coder (`coders/dng.c`) registers, all decoded
153
+ * by LibRaw. A filename with one of these extensions already reaches LibRaw.
154
+ */
155
+ export const RAW_FORMATS = new Set([
156
+ "3FR", "ARW", "CR2", "CR3", "CRW", "DCR", "DCRAW", "DNG", "ERF", "FFF", "IIQ",
157
+ "K25", "KDC", "MDC", "MEF", "MOS", "MRW", "NEF", "NRW", "ORF", "PEF", "RAF",
158
+ "RAW", "RMF", "RW2", "RWL", "SR2", "SRF", "SRW", "STI", "X3F",
159
+ ]);
160
+ /** How many leading bytes {@link inputFormatHint} needs to see. */
161
+ export const HINT_HEADER_BYTES = 64 * 1024;
162
+ /**
163
+ * The format prefix to read a command's input with, or `undefined` to leave
164
+ * it to ImageMagick.
165
+ *
166
+ * Only DNG is hinted. ImageMagick's TIFF coder hands a DNG to LibRaw by
167
+ * itself, but by re-entering ReadImage after mapping the whole file: the
168
+ * post-read steps (`-extract`, `%` escapes in `-comment`/`-label`, the
169
+ * `-verbose` report) run twice, and the file is copied into the heap first.
170
+ * `dng:` goes straight to LibRaw. Other raws are left alone, because a hint
171
+ * would change which decoder runs, and `execute()` goes by filename for those.
172
+ *
173
+ * @param name - The input's name in the command
174
+ * @param header - Its first {@link HINT_HEADER_BYTES} bytes (or all of it)
175
+ */
176
+ export function inputFormatHint(name, header) {
177
+ const ext = /\.([A-Za-z0-9]+)$/.exec(name)?.[1].toUpperCase();
178
+ if (ext !== undefined && RAW_FORMATS.has(ext))
179
+ return undefined;
180
+ return detectRawFormat(header) === "DNG" ? "DNG" : undefined;
181
+ }
151
182
  //# sourceMappingURL=raw.js.map
package/dist/raw.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"raw.js","sourceRoot":"","sources":["../src/raw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"raw.js","sourceRoot":"","sources":["../src/raw.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -156,6 +156,8 @@ export interface WImageMagickInstance {
156
156
  Image: typeof import("./image.js").WMagickImage;
157
157
  /** CLI-style command execution. */
158
158
  execute: BoundExecuteFn;
159
+ /** CLI-style execution over files, mounted through wopfs instead of copied. */
160
+ executeFiles: (command: string | string[], inputs: import("./files.js").FileInput[], options: import("./files.js").ExecuteFilesOptions) => Promise<import("./files.js").CLIFileResult>;
159
161
  /** Low-level MagickWand C API bindings. */
160
162
  api: ReturnType<typeof import("./api.js").createBindings>;
161
163
  /** Direct access to the Emscripten module. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}