exiftool-vendored 18.4.2 → 18.6.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.
- package/CHANGELOG.md +15 -0
- package/dist/AsyncRetry.js +1 -0
- package/dist/AsyncRetry.js.map +1 -1
- package/dist/ExifTool.d.ts +14 -2
- package/dist/ExifTool.js +15 -4
- package/dist/ExifTool.js.map +1 -1
- package/dist/ExifToolTask.d.ts +2 -0
- package/dist/ExifToolTask.js +9 -4
- package/dist/ExifToolTask.js.map +1 -1
- package/dist/IgnorableError.d.ts +10 -0
- package/dist/IgnorableError.js +18 -0
- package/dist/IgnorableError.js.map +1 -0
- package/dist/Tags.d.ts +20 -20
- package/dist/WriteTask.js +1 -1
- package/dist/WriteTask.js.map +1 -1
- package/package.json +12 -12
package/CHANGELOG.md
CHANGED
|
@@ -25,6 +25,21 @@ vendored versions of ExifTool match the version that they vendor.
|
|
|
25
25
|
|
|
26
26
|
## Version history
|
|
27
27
|
|
|
28
|
+
### v18.6.0
|
|
29
|
+
|
|
30
|
+
- 🌱 ExifTool upgraded to [v12.50](https://exiftool.org/history.html#v12.50)
|
|
31
|
+
|
|
32
|
+
- 📦 Updated dependencies, rebuild tags and docs
|
|
33
|
+
|
|
34
|
+
### v18.5.0
|
|
35
|
+
|
|
36
|
+
- ✨ `ExifToolOptions` now supports an `ignorableError` predicate, used for characterizing errors as "ignorable". Defaults to ignoring the following styles of warnings:
|
|
37
|
+
|
|
38
|
+
- `Warning: Duplicate MakerNoteUnknown tag in ExifIFD`
|
|
39
|
+
- `Warning: ICC_Profile deleted. Image colors may be affected`
|
|
40
|
+
|
|
41
|
+
- 🐞 Only read operations are now retried. See [#119](https://github.com/photostructure/exiftool-vendored.js/issues/119#issuecomment-1299423164)
|
|
42
|
+
|
|
28
43
|
### v18.4.2
|
|
29
44
|
|
|
30
45
|
- 🐞 Date-time tags with exactly Common Epoch (`1970-01-01T00:00:00Z`) are no longer filtered as invalid. See [#118](https://github.com/photostructure/exiftool-vendored.js/issues/118) for details.
|
package/dist/AsyncRetry.js
CHANGED
package/dist/AsyncRetry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncRetry.js","sourceRoot":"","sources":["../src/AsyncRetry.ts"],"names":[],"mappings":";;;AAAA,SAAgB,aAAa,CAC3B,CAAuB,EACvB,UAAkB;IAElB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,MAAM,CAAC,GAAqB,KAAK,IAAI,EAAE;QACrC,IAAI;YACF,OAAO,MAAM,CAAC,EAAE,CAAA;SACjB;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,OAAO,GAAG,UAAU,EAAE;gBACxB,OAAO,EAAE,CAAA;gBACT,OAAO,CAAC,EAAE,CAAA;aACX;iBAAM;gBACL,MAAM,GAAG,CAAA;aACV;SACF;IACH,CAAC,CAAA;IACD,OAAO,CAAC,EAAE,CAAA;AACZ,CAAC;
|
|
1
|
+
{"version":3,"file":"AsyncRetry.js","sourceRoot":"","sources":["../src/AsyncRetry.ts"],"names":[],"mappings":";;;AAAA,SAAgB,aAAa,CAC3B,CAAuB,EACvB,UAAkB;IAElB,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,MAAM,CAAC,GAAqB,KAAK,IAAI,EAAE;QACrC,IAAI;YACF,OAAO,MAAM,CAAC,EAAE,CAAA;SACjB;QAAC,OAAO,GAAG,EAAE;YACZ,0EAA0E;YAC1E,IAAI,OAAO,GAAG,UAAU,EAAE;gBACxB,OAAO,EAAE,CAAA;gBACT,OAAO,CAAC,EAAE,CAAA;aACX;iBAAM;gBACL,MAAM,GAAG,CAAA;aACV;SACF;IACH,CAAC,CAAA;IACD,OAAO,CAAC,EAAE,CAAA;AACZ,CAAC;AAnBD,sCAmBC"}
|
package/dist/ExifTool.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { ExifDateTime } from "./ExifDateTime";
|
|
|
7
7
|
import { ExifToolTask } from "./ExifToolTask";
|
|
8
8
|
import { geoTz } from "./GeoTz";
|
|
9
9
|
import { ICCProfileTags } from "./ICCProfileTags";
|
|
10
|
+
import { IgnorableError } from "./IgnorableError";
|
|
10
11
|
import { Maybe } from "./Maybe";
|
|
11
12
|
import { PreviewTag } from "./PreviewTag";
|
|
12
13
|
import { ResourceEvent } from "./ResourceEvent";
|
|
@@ -18,9 +19,10 @@ export { ExifDate } from "./ExifDate";
|
|
|
18
19
|
export { ExifDateTime } from "./ExifDateTime";
|
|
19
20
|
export { ExifTime } from "./ExifTime";
|
|
20
21
|
export { ExifToolTask } from "./ExifToolTask";
|
|
22
|
+
export { isIgnorableWarning } from "./IgnorableError";
|
|
21
23
|
export { parseJSON } from "./JSON";
|
|
22
24
|
export { defaultVideosToUTC, offsetMinutesToZoneName, UnsetZone, UnsetZoneName, UnsetZoneOffsetMinutes, } from "./Timezones";
|
|
23
|
-
export type { AdditionalWriteTags, APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, ApplicationRecordTags, CompositeTags, EXIFTags, ExifToolTags, ExpandedDateTags, FileTags, FlashPixTags, ICCProfileTags, IPTCTags, JFIFTags, MakerNotesTags, Maybe, MetaTags, MPFTags, Omit, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, ResourceEvent, RIFFTags, Struct, Tags, Version, XMPTags, };
|
|
25
|
+
export type { AdditionalWriteTags, APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, ApplicationRecordTags, CompositeTags, EXIFTags, ExifToolTags, ExpandedDateTags, FileTags, FlashPixTags, ICCProfileTags, IgnorableError, IPTCTags, JFIFTags, MakerNotesTags, Maybe, MetaTags, MPFTags, Omit, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, ResourceEvent, RIFFTags, Struct, Tags, Version, XMPTags, };
|
|
24
26
|
export declare const DefaultExifToolPath: string;
|
|
25
27
|
export declare const DefaultExiftoolArgs: string[];
|
|
26
28
|
/**
|
|
@@ -161,6 +163,16 @@ export interface ExifToolOptions extends bc.BatchClusterOptions, bc.BatchProcess
|
|
|
161
163
|
* @see https://github.com/evansiroky/node-geo-tz/
|
|
162
164
|
*/
|
|
163
165
|
geoTz: typeof geoTz;
|
|
166
|
+
/**
|
|
167
|
+
* Predicate for error handling.
|
|
168
|
+
*
|
|
169
|
+
* ExifTool will emit error and warning messages for a variety of reasons.
|
|
170
|
+
*
|
|
171
|
+
* The default implementation ignores all errors that begin with "Warning:"
|
|
172
|
+
*
|
|
173
|
+
* @return true if the error should be ignored
|
|
174
|
+
*/
|
|
175
|
+
isIgnorableError: IgnorableError;
|
|
164
176
|
}
|
|
165
177
|
declare type Omit<T, K> = Pick<T, Exclude<keyof T, K>>;
|
|
166
178
|
/**
|
|
@@ -336,7 +348,7 @@ export declare class ExifTool {
|
|
|
336
348
|
*
|
|
337
349
|
* @see BinaryExtractionTask for an example task implementation
|
|
338
350
|
*/
|
|
339
|
-
enqueueTask<T>(task: () => ExifToolTask<T> | Promise<ExifToolTask<T
|
|
351
|
+
enqueueTask<T>(task: () => ExifToolTask<T> | Promise<ExifToolTask<T>>, retriable?: boolean): Promise<T>;
|
|
340
352
|
/**
|
|
341
353
|
* @return the currently running ExifTool processes. Note that on Windows,
|
|
342
354
|
* these are only the process IDs of the directly-spawned ExifTool wrapper,
|
package/dist/ExifTool.js
CHANGED
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.exiftool = exports.ExifTool = exports.DefaultExifToolOptions = exports.DefaultMaxProcs = exports.DefaultExiftoolArgs = exports.DefaultExifToolPath = exports.UnsetZoneOffsetMinutes = exports.UnsetZoneName = exports.UnsetZone = exports.offsetMinutesToZoneName = exports.defaultVideosToUTC = exports.parseJSON = exports.ExifToolTask = exports.ExifTime = exports.ExifDateTime = exports.ExifDate = exports.BinaryField = void 0;
|
|
29
|
+
exports.exiftool = exports.ExifTool = exports.DefaultExifToolOptions = exports.DefaultMaxProcs = exports.DefaultExiftoolArgs = exports.DefaultExifToolPath = exports.UnsetZoneOffsetMinutes = exports.UnsetZoneName = exports.UnsetZone = exports.offsetMinutesToZoneName = exports.defaultVideosToUTC = exports.parseJSON = exports.isIgnorableWarning = exports.ExifToolTask = exports.ExifTime = exports.ExifDateTime = exports.ExifDate = exports.BinaryField = void 0;
|
|
30
30
|
const bc = __importStar(require("batch-cluster"));
|
|
31
31
|
const _cp = __importStar(require("child_process"));
|
|
32
32
|
const _fs = __importStar(require("fs"));
|
|
@@ -38,6 +38,7 @@ const BinaryExtractionTask_1 = require("./BinaryExtractionTask");
|
|
|
38
38
|
const BinaryToBufferTask_1 = require("./BinaryToBufferTask");
|
|
39
39
|
const DeleteAllTagsArgs_1 = require("./DeleteAllTagsArgs");
|
|
40
40
|
const GeoTz_1 = require("./GeoTz");
|
|
41
|
+
const IgnorableError_1 = require("./IgnorableError");
|
|
41
42
|
const Lazy_1 = require("./Lazy");
|
|
42
43
|
const ReadRawTask_1 = require("./ReadRawTask");
|
|
43
44
|
const ReadTask_1 = require("./ReadTask");
|
|
@@ -55,6 +56,8 @@ var ExifTime_1 = require("./ExifTime");
|
|
|
55
56
|
Object.defineProperty(exports, "ExifTime", { enumerable: true, get: function () { return ExifTime_1.ExifTime; } });
|
|
56
57
|
var ExifToolTask_1 = require("./ExifToolTask");
|
|
57
58
|
Object.defineProperty(exports, "ExifToolTask", { enumerable: true, get: function () { return ExifToolTask_1.ExifToolTask; } });
|
|
59
|
+
var IgnorableError_2 = require("./IgnorableError");
|
|
60
|
+
Object.defineProperty(exports, "isIgnorableWarning", { enumerable: true, get: function () { return IgnorableError_2.isIgnorableWarning; } });
|
|
58
61
|
var JSON_1 = require("./JSON");
|
|
59
62
|
Object.defineProperty(exports, "parseJSON", { enumerable: true, get: function () { return JSON_1.parseJSON; } });
|
|
60
63
|
var Timezones_1 = require("./Timezones");
|
|
@@ -123,6 +126,7 @@ exports.DefaultExifToolOptions = Object.freeze({
|
|
|
123
126
|
],
|
|
124
127
|
defaultVideosToUTC: true,
|
|
125
128
|
geoTz: GeoTz_1.geoTz,
|
|
129
|
+
isIgnorableError: IgnorableError_1.isIgnorableWarning,
|
|
126
130
|
});
|
|
127
131
|
/**
|
|
128
132
|
* Manages delegating calls to a vendored running instance of ExifTool.
|
|
@@ -240,7 +244,8 @@ class ExifTool {
|
|
|
240
244
|
* @memberof ExifTool
|
|
241
245
|
*/
|
|
242
246
|
write(file, tags, args) {
|
|
243
|
-
|
|
247
|
+
const retriable = false;
|
|
248
|
+
return this.enqueueTask(() => WriteTask_1.WriteTask.for(file, tags, args), retriable);
|
|
244
249
|
}
|
|
245
250
|
/**
|
|
246
251
|
* This will strip `file` of all metadata tags. The original file (with the
|
|
@@ -369,8 +374,14 @@ class ExifTool {
|
|
|
369
374
|
*
|
|
370
375
|
* @see BinaryExtractionTask for an example task implementation
|
|
371
376
|
*/
|
|
372
|
-
enqueueTask(task) {
|
|
373
|
-
|
|
377
|
+
enqueueTask(task, retriable = true) {
|
|
378
|
+
const f = async () => {
|
|
379
|
+
const t = await task();
|
|
380
|
+
// if we have to add more options for every task, rethink this approach:
|
|
381
|
+
t.isIgnorableError = this.options.isIgnorableError;
|
|
382
|
+
return this.batchCluster.enqueueTask(t);
|
|
383
|
+
};
|
|
384
|
+
return retriable ? (0, AsyncRetry_1.retryOnReject)(f, this.options.taskRetries) : f();
|
|
374
385
|
}
|
|
375
386
|
/**
|
|
376
387
|
* @return the currently running ExifTool processes. Note that on Windows,
|
package/dist/ExifTool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExifTool.js","sourceRoot":"","sources":["../src/ExifTool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmC;AACnC,mDAAoC;AACpC,wCAAyB;AACzB,wCAAyB;AACzB,4CAA6B;AAC7B,sDAA6B;AAE7B,6CAA4C;AAC5C,iEAA6D;AAC7D,6DAAyD;AACzD,2DAAuD;AAIvD,mCAA+B;AAE/B,iCAA6B;AAG7B,+CAA2C;AAC3C,yCAAqC;AAErC,6DAAyD;AACzD,qCAA0C;AA6B1C,+CAA2C;AAC3C,2CAAuC;AAEvC,6CAA2C;AAAlC,0GAAA,WAAW,OAAA;AACpB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,+BAAkC;AAAzB,iGAAA,SAAS,OAAA;AAClB,yCAMoB;AALlB,+GAAA,kBAAkB,OAAA;AAClB,oHAAA,uBAAuB,OAAA;AACvB,sGAAA,SAAS,OAAA;AACT,0GAAA,aAAa,OAAA;AACb,mHAAA,sBAAsB,OAAA;
|
|
1
|
+
{"version":3,"file":"ExifTool.js","sourceRoot":"","sources":["../src/ExifTool.ts"],"names":[],"mappings":"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"}
|
package/dist/ExifToolTask.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as bc from "batch-cluster";
|
|
2
|
+
import { isIgnorableWarning } from "./IgnorableError";
|
|
2
3
|
export declare abstract class ExifToolTask<T> extends bc.Task<T> {
|
|
3
4
|
readonly args: string[];
|
|
5
|
+
isIgnorableError: typeof isIgnorableWarning;
|
|
4
6
|
static renderCommand(args: string[]): string;
|
|
5
7
|
readonly errors: string[];
|
|
6
8
|
constructor(args: string[]);
|
package/dist/ExifToolTask.js
CHANGED
|
@@ -25,18 +25,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.ExifToolTask = void 0;
|
|
27
27
|
const bc = __importStar(require("batch-cluster"));
|
|
28
|
+
const IgnorableError_1 = require("./IgnorableError");
|
|
28
29
|
const String_1 = require("./String");
|
|
29
30
|
class ExifToolTask extends bc.Task {
|
|
30
31
|
constructor(args) {
|
|
31
32
|
super(ExifToolTask.renderCommand(args), (stdout, stderr, passed) => {
|
|
32
|
-
let
|
|
33
|
+
let error;
|
|
33
34
|
if ((0, String_1.notBlank)(stderr) || !passed) {
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
const errMsg = (stderr !== null && stderr !== void 0 ? stderr : stdout).trim().replace(/error(:\s*|\b)/i, "");
|
|
36
|
+
if (!this.isIgnorableError(errMsg)) {
|
|
37
|
+
this.errors.push(errMsg);
|
|
38
|
+
error = new Error(errMsg);
|
|
39
|
+
}
|
|
36
40
|
}
|
|
37
|
-
return this.parse(stdout,
|
|
41
|
+
return this.parse(stdout, error);
|
|
38
42
|
});
|
|
39
43
|
this.args = args;
|
|
44
|
+
this.isIgnorableError = IgnorableError_1.isIgnorableWarning;
|
|
40
45
|
this.errors = [];
|
|
41
46
|
}
|
|
42
47
|
static renderCommand(args) {
|
package/dist/ExifToolTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExifToolTask.js","sourceRoot":"","sources":["../src/ExifToolTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"ExifToolTask.js","sourceRoot":"","sources":["../src/ExifToolTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmC;AACnC,qDAAqD;AAErD,qCAAmC;AAEnC,MAAsB,YAAgB,SAAQ,EAAE,CAAC,IAAO;IAStD,YAAqB,IAAc;QACjC,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACjE,IAAI,KAAmB,CAAA;YACvB,IAAI,IAAA,iBAAQ,EAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE;gBAC/B,MAAM,MAAM,GAAG,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAA;gBACvE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE;oBAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACxB,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;iBAC1B;aACF;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;QAXiB,SAAI,GAAJ,IAAI,CAAU;QARnC,qBAAgB,GAAG,mCAAkB,CAAA;QAM5B,WAAM,GAAa,EAAE,CAAA;IAc9B,CAAC;IAlBD,MAAM,CAAC,aAAa,CAAC,IAAc;QACjC,OAAO,CAAC,GAAG,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnE,CAAC;IAoBD,QAAQ,CAAC,GAAW;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;CACF;AA5BD,oCA4BC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Maybe } from "./Maybe";
|
|
2
|
+
export interface IgnorableError {
|
|
3
|
+
(err: Maybe<Error | string>): boolean;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* This is the default implementation of IgnorableError, and ignores null,
|
|
7
|
+
* undefined, errors without a message, warnings about duplicate tags, and
|
|
8
|
+
* ICC_Profile deletions.
|
|
9
|
+
*/
|
|
10
|
+
export declare function isIgnorableWarning(err: Maybe<Error | string>): boolean;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isIgnorableWarning = void 0;
|
|
4
|
+
const String_1 = require("./String");
|
|
5
|
+
// Warning: Duplicate MakerNoteUnknown tag in ExifIFD
|
|
6
|
+
// Warning: ICC_Profile deleted. Image colors may be affected
|
|
7
|
+
const WarningRE = /^Warning: (?:Duplicate|ICC_Profile deleted)/i;
|
|
8
|
+
/**
|
|
9
|
+
* This is the default implementation of IgnorableError, and ignores null,
|
|
10
|
+
* undefined, errors without a message, warnings about duplicate tags, and
|
|
11
|
+
* ICC_Profile deletions.
|
|
12
|
+
*/
|
|
13
|
+
function isIgnorableWarning(err) {
|
|
14
|
+
const msg = (err instanceof Error ? err.message : (0, String_1.toS)(err)).trim();
|
|
15
|
+
return (0, String_1.blank)(msg) || null != WarningRE.exec(msg);
|
|
16
|
+
}
|
|
17
|
+
exports.isIgnorableWarning = isIgnorableWarning;
|
|
18
|
+
//# sourceMappingURL=IgnorableError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IgnorableError.js","sourceRoot":"","sources":["../src/IgnorableError.ts"],"names":[],"mappings":";;;AACA,qCAAqC;AAMrC,qDAAqD;AACrD,6DAA6D;AAE7D,MAAM,SAAS,GAAG,8CAA8C,CAAA;AAChE;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,GAA0B;IAC3D,MAAM,GAAG,GAAG,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,YAAG,EAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAClE,OAAO,IAAA,cAAK,EAAC,GAAG,CAAC,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAClD,CAAC;AAHD,gDAGC"}
|
package/dist/Tags.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import { Version } from "./Version";
|
|
|
10
10
|
export interface ExifToolTags {
|
|
11
11
|
/** ☆☆☆☆ ✔ Example: "File is empty" */
|
|
12
12
|
Error?: string;
|
|
13
|
-
/** ★★★★ ✔ Example: 12.
|
|
13
|
+
/** ★★★★ ✔ Example: 12.5 */
|
|
14
14
|
ExifToolVersion?: number;
|
|
15
15
|
/** ☆☆☆☆ ✔ Example: "Unrecognized IPTC record 0 (ignored)" */
|
|
16
16
|
Warning?: string;
|
|
@@ -28,9 +28,9 @@ export interface FileTags {
|
|
|
28
28
|
CurrentIPTCDigest?: string;
|
|
29
29
|
/** ★★★★ ✔ Example: "/home/username/pictures" */
|
|
30
30
|
Directory?: string;
|
|
31
|
-
/** ★★★★ ✔ Example: "2022:11:
|
|
31
|
+
/** ★★★★ ✔ Example: "2022:11:08 11:59:11-08:00" */
|
|
32
32
|
FileAccessDate?: ExifDateTime | string;
|
|
33
|
-
/** ★★★★ ✔ Example: "2022:11:
|
|
33
|
+
/** ★★★★ ✔ Example: "2022:11:08 11:17:59-08:00" */
|
|
34
34
|
FileInodeChangeDate?: ExifDateTime | string;
|
|
35
35
|
/** ★★★★ ✔ Example: "2022:10:13 13:19:48-07:00" */
|
|
36
36
|
FileModifyDate?: ExifDateTime | string;
|
|
@@ -812,7 +812,7 @@ export interface EXIFTags {
|
|
|
812
812
|
SubjectDistance?: string;
|
|
813
813
|
/** ★★★☆ ✔ Example: "Unknown (4400)" */
|
|
814
814
|
SubjectDistanceRange?: string;
|
|
815
|
-
/** ★★★★ ✔ Example: "(Binary data
|
|
815
|
+
/** ★★★★ ✔ Example: "(Binary data 10202 bytes, use -b option to extract)" */
|
|
816
816
|
ThumbnailImage?: BinaryField;
|
|
817
817
|
/** ☆☆☆☆ ✔ Example: "(Binary data 47952 bytes, use -b option to extract)" */
|
|
818
818
|
ThumbnailTIFF?: BinaryField;
|
|
@@ -820,7 +820,7 @@ export interface EXIFTags {
|
|
|
820
820
|
TileByteCounts?: BinaryField | string;
|
|
821
821
|
/** ☆☆☆☆ ✔ Example: 512 */
|
|
822
822
|
TileLength?: number;
|
|
823
|
-
/** ☆☆☆☆ ✔ Example: "(Binary data
|
|
823
|
+
/** ☆☆☆☆ ✔ Example: "(Binary data 507 bytes, use -b option to extract)" */
|
|
824
824
|
TileOffsets?: BinaryField | string;
|
|
825
825
|
/** ☆☆☆☆ ✔ Example: 512 */
|
|
826
826
|
TileWidth?: number;
|
|
@@ -962,7 +962,7 @@ export interface IPTCTags {
|
|
|
962
962
|
SpecialInstructions?: string;
|
|
963
963
|
/** ☆☆☆☆ ✔ Example: "" */
|
|
964
964
|
SupplementalCategories?: string;
|
|
965
|
-
/** ☆☆☆☆ ✔ Example: "
|
|
965
|
+
/** ☆☆☆☆ ✔ Example: "16:47:00+09:00" */
|
|
966
966
|
TimeCreated?: ExifTime | string;
|
|
967
967
|
/** ☆☆☆☆ ✔ Example: "" */
|
|
968
968
|
TimeSent?: string;
|
|
@@ -1052,7 +1052,7 @@ export interface PhotoshopTags {
|
|
|
1052
1052
|
PhotoshopFormat?: string;
|
|
1053
1053
|
/** ☆☆☆☆ ✔ Example: 9 */
|
|
1054
1054
|
PhotoshopQuality?: number;
|
|
1055
|
-
/** ☆☆☆☆ ✔ Example: "(Binary data
|
|
1055
|
+
/** ☆☆☆☆ ✔ Example: "(Binary data 4291 bytes, use -b option to extract)" */
|
|
1056
1056
|
PhotoshopThumbnail?: BinaryField | string;
|
|
1057
1057
|
/** ☆☆☆☆ ✔ Example: 1 */
|
|
1058
1058
|
PixelAspectRatio?: number;
|
|
@@ -1466,7 +1466,7 @@ export interface MakerNotesTags {
|
|
|
1466
1466
|
AFPointsInFocus5D?: string;
|
|
1467
1467
|
/** ☆☆☆☆ ✔ Example: 9 */
|
|
1468
1468
|
AFPointsSelected?: number;
|
|
1469
|
-
/** ☆☆☆☆ ✔ Example: "
|
|
1469
|
+
/** ☆☆☆☆ ✔ Example: "Top" */
|
|
1470
1470
|
AFPointsUsed?: string;
|
|
1471
1471
|
/** ☆☆☆☆ ✔ Example: 903 */
|
|
1472
1472
|
AFPredictor?: number;
|
|
@@ -2026,7 +2026,7 @@ export interface MakerNotesTags {
|
|
|
2026
2026
|
DSPFirmwareVersion?: string;
|
|
2027
2027
|
/** ☆☆☆☆ ✔ Example: "Yes" */
|
|
2028
2028
|
DarkFocusEnvironment?: string;
|
|
2029
|
-
/** ★★☆☆ ✔ Example: "(Binary data
|
|
2029
|
+
/** ★★☆☆ ✔ Example: "(Binary data 114 bytes, use -b option to extract)" */
|
|
2030
2030
|
DataDump?: BinaryField | string;
|
|
2031
2031
|
/** ☆☆☆☆ ✔ Example: 8289 */
|
|
2032
2032
|
DataScaling?: number;
|
|
@@ -2226,7 +2226,7 @@ export interface MakerNotesTags {
|
|
|
2226
2226
|
FEMicroadjustment?: string;
|
|
2227
2227
|
/** ☆☆☆☆ ✔ Example: "Unknown (II*)" */
|
|
2228
2228
|
FaceDetect?: string;
|
|
2229
|
-
/** ☆☆☆☆ ✔ Example: "(Binary data
|
|
2229
|
+
/** ☆☆☆☆ ✔ Example: "(Binary data 191 bytes, use -b option to extract)" */
|
|
2230
2230
|
FaceDetectArea?: BinaryField | string;
|
|
2231
2231
|
/** ☆☆☆☆ ✔ Example: "0 26 640 428 0 26 640 428 0 0 0 0" */
|
|
2232
2232
|
FaceDetectFrameCrop?: string;
|
|
@@ -2710,10 +2710,6 @@ export interface MakerNotesTags {
|
|
|
2710
2710
|
IntelligentResolution?: string;
|
|
2711
2711
|
/** ☆☆☆☆ ✔ Example: "TTL" */
|
|
2712
2712
|
InternalFlash?: string;
|
|
2713
|
-
/** ☆☆☆☆ ✔ Example: "Did not fire, Red-eye reduction" */
|
|
2714
|
-
InternalFlashMode?: string;
|
|
2715
|
-
/** ☆☆☆☆ ✔ Example: 63 */
|
|
2716
|
-
InternalFlashStrength?: number;
|
|
2717
2713
|
/** ☆☆☆☆ ✔ Example: 95 */
|
|
2718
2714
|
InternalFlashTable?: number;
|
|
2719
2715
|
/** ★★☆☆ ✔ Example: "fdfec409" */
|
|
@@ -3084,9 +3080,11 @@ export interface MakerNotesTags {
|
|
|
3084
3080
|
MultiExposureControl?: string;
|
|
3085
3081
|
/** ☆☆☆☆ ✔ Example: "Off" */
|
|
3086
3082
|
MultiExposureMode?: string;
|
|
3083
|
+
/** ☆☆☆☆ ✔ Example: "Add" */
|
|
3084
|
+
MultiExposureOverlayMode?: string;
|
|
3087
3085
|
/** ☆☆☆☆ ✔ Example: 1 */
|
|
3088
3086
|
MultiExposureShots?: number;
|
|
3089
|
-
/** ☆☆☆☆ ✔ Example: "
|
|
3087
|
+
/** ☆☆☆☆ ✔ Example: "0102" */
|
|
3090
3088
|
MultiExposureVersion?: string;
|
|
3091
3089
|
/** ☆☆☆☆ ✔ Example: "Normal" */
|
|
3092
3090
|
MultiFrameNREffect?: string;
|
|
@@ -3846,6 +3844,8 @@ export interface MakerNotesTags {
|
|
|
3846
3844
|
VRInfoVersion?: string;
|
|
3847
3845
|
/** ☆☆☆☆ ✔ Example: "Sport" */
|
|
3848
3846
|
VRMode?: string;
|
|
3847
|
+
/** ☆☆☆☆ ✔ Example: "Unknown (1)" */
|
|
3848
|
+
VRType?: string;
|
|
3849
3849
|
/** ☆☆☆☆ ✔ Example: "12 0" */
|
|
3850
3850
|
ValidBits?: string;
|
|
3851
3851
|
/** ☆☆☆☆ ✔ Example: "Scene Auto" */
|
|
@@ -4024,7 +4024,7 @@ export interface XMPTags {
|
|
|
4024
4024
|
CameraProfileDigest?: string;
|
|
4025
4025
|
/** ☆☆☆☆ Example: "Rear" */
|
|
4026
4026
|
CameraUnit?: string;
|
|
4027
|
-
/** ☆☆☆☆ ✔ Example: [{"DepthMap":{"ConfidenceURI":"android/
|
|
4027
|
+
/** ☆☆☆☆ ✔ Example: [{"Camera":{"DepthMap":{"ConfidenceURI":"android/confiden…cal"}}] */
|
|
4028
4028
|
Cameras?: Struct[];
|
|
4029
4029
|
/** ☆☆☆☆ ✔ Example: "Photo" */
|
|
4030
4030
|
CaptureMode?: string;
|
|
@@ -4060,7 +4060,7 @@ export interface XMPTags {
|
|
|
4060
4060
|
ColorSpace?: string;
|
|
4061
4061
|
/** ☆☆☆☆ ✔ Example: "" */
|
|
4062
4062
|
Colorlabels?: string;
|
|
4063
|
-
/** ☆☆☆☆ ✔ Example: {"Directory":[{"DataURI":"primary_image","Length"
|
|
4063
|
+
/** ☆☆☆☆ ✔ Example: {"Directory":[{"Item":{"DataURI":"primary_image","Length"…eg"}}]} */
|
|
4064
4064
|
Container?: Struct;
|
|
4065
4065
|
/** ☆☆☆☆ ✔ Example: false */
|
|
4066
4066
|
ConvertToGrayscale?: boolean;
|
|
@@ -4350,7 +4350,7 @@ export interface XMPTags {
|
|
|
4350
4350
|
PreservedFileName?: string;
|
|
4351
4351
|
/** ☆☆☆☆ ✔ Example: 11 */
|
|
4352
4352
|
ProcessVersion?: number;
|
|
4353
|
-
/** ☆☆☆☆ ✔ Example: [{"CameraIndices":[0],"Type":"DepthPhoto"}] */
|
|
4353
|
+
/** ☆☆☆☆ ✔ Example: [{"Profile":{"CameraIndices":[0],"Type":"DepthPhoto"}}] */
|
|
4354
4354
|
Profiles?: Struct[];
|
|
4355
4355
|
/** ☆☆☆☆ ✔ Example: "P2030414.jpg" */
|
|
4356
4356
|
RawFileName?: string;
|
|
@@ -4491,8 +4491,8 @@ export interface XMPTags {
|
|
|
4491
4491
|
* devices (like iPhones) An example value, JSON stringified, follows the
|
|
4492
4492
|
* popularity ratings.
|
|
4493
4493
|
*
|
|
4494
|
-
* Autogenerated by "yarn mktags" by ExifTool 12.
|
|
4495
|
-
*
|
|
4494
|
+
* Autogenerated by "yarn mktags" by ExifTool 12.50 on Tue Nov 08 2022.
|
|
4495
|
+
* 2979 unique tags were found in 10022 photo and video files.
|
|
4496
4496
|
*/
|
|
4497
4497
|
export interface Tags extends APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, ApplicationRecordTags, CompositeTags, EXIFTags, ExifToolTags, FileTags, FlashPixTags, ICCProfileTags, IPTCTags, JFIFTags, MPFTags, MakerNotesTags, MetaTags, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, RIFFTags, XMPTags {
|
|
4498
4498
|
errors?: string[];
|
package/dist/WriteTask.js
CHANGED
|
@@ -36,7 +36,7 @@ const Object_1 = require("./Object");
|
|
|
36
36
|
const String_1 = require("./String");
|
|
37
37
|
const Struct_1 = require("./Struct");
|
|
38
38
|
const VersionTask_1 = require("./VersionTask");
|
|
39
|
-
const successRE = /1 image files? (?:created|updated)
|
|
39
|
+
const successRE = /1 image files? (?:created|updated)/i;
|
|
40
40
|
const sep = String.fromCharCode(31); // unit separator
|
|
41
41
|
// See https://exiftool.org/faq.html#Q10
|
|
42
42
|
// (`-charset utf8` is set by default)
|
package/dist/WriteTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WriteTask.js","sourceRoot":"","sources":["../src/WriteTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2BAA2B;AAC3B,4CAA6B;AAC7B,mCAAyC;AACzC,yCAAuD;AACvD,2DAAuD;AAEvD,iDAA6C;AAC7C,iCAAoC;AAEpC,qCAAmC;AACnC,qCAA+B;AAC/B,qCAAmC;AACnC,qCAAmC;AACnC,+CAA2C;AAE3C,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"WriteTask.js","sourceRoot":"","sources":["../src/WriteTask.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "exiftool-vendored",
|
|
3
|
-
"version": "18.
|
|
3
|
+
"version": "18.6.0",
|
|
4
4
|
"description": "Efficient, cross-platform access to ExifTool",
|
|
5
5
|
"main": "./dist/ExifTool.js",
|
|
6
6
|
"types": "./dist/ExifTool.d.ts",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
]
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
|
-
"@types/chai": "^4.3.
|
|
63
|
+
"@types/chai": "^4.3.4",
|
|
64
64
|
"@types/chai-as-promised": "^7.1.5",
|
|
65
65
|
"@types/chai-subset": "^1.3.3",
|
|
66
66
|
"@types/fs-extra": "^9.0.13",
|
|
@@ -73,13 +73,13 @@
|
|
|
73
73
|
"@types/tar-fs": "^2.0.1",
|
|
74
74
|
"@types/tmp": "^0.2.3",
|
|
75
75
|
"@types/xmldom": "^0.1.31",
|
|
76
|
-
"@typescript-eslint/eslint-plugin": "^5.42.
|
|
77
|
-
"@typescript-eslint/parser": "^5.42.
|
|
78
|
-
"@xmldom/xmldom": "^0.8.
|
|
79
|
-
"chai": "^4.3.
|
|
76
|
+
"@typescript-eslint/eslint-plugin": "^5.42.1",
|
|
77
|
+
"@typescript-eslint/parser": "^5.42.1",
|
|
78
|
+
"@xmldom/xmldom": "^0.8.6",
|
|
79
|
+
"chai": "^4.3.7",
|
|
80
80
|
"chai-as-promised": "^7.1.1",
|
|
81
81
|
"chai-subset": "^1.6.0",
|
|
82
|
-
"eslint": "^8.
|
|
82
|
+
"eslint": "^8.27.0",
|
|
83
83
|
"eslint-plugin-import": "^2.26.0",
|
|
84
84
|
"eslint-plugin-node": "^11.1.0",
|
|
85
85
|
"extract-zip": "^2.0.1",
|
|
@@ -91,23 +91,23 @@
|
|
|
91
91
|
"prettier": "^2.7.1",
|
|
92
92
|
"progress": "^2.0.3",
|
|
93
93
|
"rimraf": "^3.0.2",
|
|
94
|
-
"serve": "^14.0
|
|
94
|
+
"serve": "^14.1.0",
|
|
95
95
|
"source-map-support": "^0.5.21",
|
|
96
96
|
"tmp": "^0.2.1",
|
|
97
|
-
"typedoc": "^0.23.
|
|
97
|
+
"typedoc": "^0.23.20",
|
|
98
98
|
"typescript": "~4.8.4",
|
|
99
99
|
"xpath": "^0.0.32"
|
|
100
100
|
},
|
|
101
101
|
"dependencies-note": "@types/luxon is not a devDependency, as our exported TypeScript typings reference luxon types. See <https://github.com/photostructure/exiftool-vendored.js/pull/108>",
|
|
102
102
|
"dependencies": {
|
|
103
103
|
"@photostructure/tz-lookup": "^7.0.0",
|
|
104
|
-
"@types/luxon": "^3.0
|
|
104
|
+
"@types/luxon": "^3.1.0",
|
|
105
105
|
"batch-cluster": "^11.0.0",
|
|
106
106
|
"he": "^1.2.0",
|
|
107
107
|
"luxon": "^3.1.0"
|
|
108
108
|
},
|
|
109
109
|
"optionalDependencies": {
|
|
110
|
-
"exiftool-vendored.exe": "12.
|
|
111
|
-
"exiftool-vendored.pl": "12.
|
|
110
|
+
"exiftool-vendored.exe": "12.50.0",
|
|
111
|
+
"exiftool-vendored.pl": "12.50.0"
|
|
112
112
|
}
|
|
113
113
|
}
|