exiftool-vendored 15.6.0 → 15.9.1

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 CHANGED
@@ -25,6 +25,36 @@ vendored versions of ExifTool match the version they vendor.
25
25
 
26
26
  ## Version history
27
27
 
28
+ ### v15.9.1
29
+
30
+ - 📦 Exposed `UnsetZoneOffsetMinutes` from `Timezones`
31
+
32
+ ### v15.9.0
33
+
34
+ - 📦 Exposed `UnsetZone` and `UnsetZoneName` from `Timezones`
35
+
36
+ ### v15.8.0
37
+
38
+ - 🐞 `GPSDateTime` in prior versions could be incorrectly parsed, resulting in an incorrectly inferred current-date and encoded-time.
39
+
40
+ - 🐞 GPS latitude and longitude parsing could result in the incorrect hemisphere, depending on the version of ExifTool.
41
+
42
+ - 📦 The prior default of making all `GPS*` tags numeric has been reduced to only `GPSLatitude` and `GPSLongitude`, which means tags like `GPSImgDirectionRef` will now be something like "Magnetic North" instead of the more cryptic "M", and `GPSAltitudeRef` will now be "Below Sea Level" instead of "1".
43
+
44
+ ### v15.7.0
45
+
46
+ - 🌱 ExifTool upgraded to [v12.38](https://exiftool.org/history.html#v12.38).
47
+
48
+ - ✨ Add specific support for [deleting values associated to existing tags](https://github.com/photostructure/exiftool-vendored.js/issues/104)
49
+
50
+ - 🐞 No-op `.write()` calls to sidecars are now gracefully no-op'ed.
51
+
52
+ - 📦 Added tests with and without retries (to validate stdout/stderr bugfixes in v8.0 of `batch-cluster`)
53
+
54
+ - 📦 Replace `orElse` calls with `??`
55
+
56
+ - 📦 Updated dependencies
57
+
28
58
  ### v15.6.0
29
59
 
30
60
  - ✨ Added [serialization support](https://github.com/photostructure/exiftool-vendored.js/issues/102)
@@ -35,7 +65,7 @@ vendored versions of ExifTool match the version they vendor.
35
65
 
36
66
  - 🌱 ExifTool upgraded to [v12.33](https://exiftool.org/history.html#v12.33).
37
67
 
38
- - 📦 Updated dependencies
68
+ - 📦 Updated dependencies
39
69
 
40
70
  - 📦 Now ignoring `yarn.lock`
41
71
 
package/README.md CHANGED
@@ -262,6 +262,14 @@ exiftool.write("path/to/file.jpg", {
262
262
  })
263
263
  ```
264
264
 
265
+ To delete a tag, use `null` as the value.
266
+
267
+ ```js
268
+ exiftool.write("path/to/file.jpg", { UserComment: null })
269
+ ```
270
+
271
+ The above example removes any value associated to the `UserComment` tag.
272
+
265
273
  ### Always Beware: Timezones
266
274
 
267
275
  If you edit a timestamp tag, realize that the difference between the
@@ -303,6 +311,15 @@ ExifTool has an [extensive user configuration system](http://owl.phy.queensu.ca/
303
311
  new ExifTool({ exiftoolEnv: { EXIFTOOL_HOME: resolve("path", "to", "config", "dir") }
304
312
  ```
305
313
 
314
+ ## This package requires `procps`.
315
+
316
+ The default `BatchClusterOptions.cleanupChildProcs` value of `true` means that BatchCluster, which is used to manage child `exiftool` processes, will try to use `ps` to ensure Node's view of process state are correct, and that errant
317
+ processes are cleaned up.
318
+
319
+ If you run this in a docker image based off Alpine or Debian Slim, **this won't work properly unless you install the `procps` package.**
320
+
321
+ [See `batch-cluster` for details.](https://github.com/photostructure/batch-cluster.js/issues/13)
322
+
306
323
  ## Resource hygiene
307
324
 
308
325
  **Always remember to call `.end()`.**
@@ -379,15 +396,12 @@ are [PascalCased](https://en.wikipedia.org/wiki/PascalCase), like
379
396
  `AFPointSelected` and `ISO`. ("Fixing" the field names to be camelCase, would
380
397
  result in ungainly `aFPointSelected` and `iSO` atrocities).
381
398
 
382
- The [Tags](https://photostructure.github.io/exiftool-vendored.js/interfaces/tags.html) interface is
399
+ The [Tags](https://photostructure.github.io/exiftool-vendored.js/interfaces/Tags.html) interface is
383
400
  auto-generated by the `mktags` script, which parses through over 6,000 unique
384
401
  camera make and model images, in large part sourced from the ExifTool site.
385
402
  `mktags` groups tags, extracts their type, popularity, and example values such
386
403
  that your IDE can autocomplete.
387
404
 
388
- For an example of a group of tags, see the [EXIFTags
389
- interface](interfaces/exiftags.html).
390
-
391
405
  Tags marked with "★★★★", like
392
406
  [MIMEType](https://photostructure.github.io/exiftool-vendored.js/interfaces/tags.html#mimetype),
393
407
  should be found in most files. Of the several thousand metadata tags, realize
@@ -413,8 +427,7 @@ const str: string = JSON.stringify(tags)
413
427
  // parseJSON doesn't validate the input, so we don't assert that it's a Tags
414
428
  // instance, but you can cast it (unsafely...)
415
429
 
416
- const tags2: Tags = parseJSON(str) as Tags
417
-
430
+ const tags2: Tags = parseJSON(str) as Tags
418
431
  ```
419
432
 
420
433
  ## Performance
package/dist/Array.d.ts CHANGED
@@ -7,3 +7,4 @@ export declare function times<T>(n: number, f: (idx: number) => T): T[];
7
7
  */
8
8
  export declare function filterInPlace<T>(arr: T[], filter: (t: T) => boolean): T[];
9
9
  export declare function uniq<T>(arr: T[]): T[];
10
+ export declare function shallowArrayEql(a: any[], b: any[]): boolean;
package/dist/Array.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.uniq = exports.filterInPlace = exports.times = exports.compact = void 0;
3
+ exports.shallowArrayEql = exports.uniq = exports.filterInPlace = exports.times = exports.compact = void 0;
4
4
  function compact(array) {
5
5
  return array.filter((elem) => elem != null);
6
6
  }
@@ -36,4 +36,12 @@ function uniq(arr) {
36
36
  }, []);
37
37
  }
38
38
  exports.uniq = uniq;
39
+ // terrible implementation only for internal use
40
+ function shallowArrayEql(a, b) {
41
+ return (a != null &&
42
+ b != null &&
43
+ a.length === b.length &&
44
+ a.every((ea, idx) => ea === b[idx]));
45
+ }
46
+ exports.shallowArrayEql = shallowArrayEql;
39
47
  //# sourceMappingURL=Array.js.map
package/dist/Array.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Array.js","sourceRoot":"","sources":["../src/Array.ts"],"names":[],"mappings":";;;AAEA,SAAgB,OAAO,CAAI,KAAqB;IAC9C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,CAAQ,CAAA;AACpD,CAAC;AAFD,0BAEC;AAED,SAAgB,KAAK,CAAI,CAAS,EAAE,CAAqB;IACvD,OAAO,KAAK,CAAC,CAAC,CAAC;SACZ,IAAI,CAAC,SAAS,CAAC;SACf,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACxB,CAAC;AAJD,sBAIC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAAI,GAAQ,EAAE,MAAyB;IAClE,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;QACpB,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE;YACd,IAAI,CAAC,KAAK,CAAC;gBAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;YACxB,CAAC,EAAE,CAAA;SACJ;IACH,CAAC,CAAC,CAAA;IACF,GAAG,CAAC,MAAM,GAAG,CAAC,CAAA;IACd,OAAO,GAAG,CAAA;AACZ,CAAC;AAVD,sCAUC;AAED,SAAgB,IAAI,CAAI,GAAQ;IAC9B,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;QAC5B,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACxC,OAAO,GAAG,CAAA;IACZ,CAAC,EAAE,EAAS,CAAC,CAAA;AACf,CAAC;AALD,oBAKC"}
1
+ {"version":3,"file":"Array.js","sourceRoot":"","sources":["../src/Array.ts"],"names":[],"mappings":";;;AAEA,SAAgB,OAAO,CAAI,KAAqB;IAC9C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,CAAQ,CAAA;AACpD,CAAC;AAFD,0BAEC;AAED,SAAgB,KAAK,CAAI,CAAS,EAAE,CAAqB;IACvD,OAAO,KAAK,CAAC,CAAC,CAAC;SACZ,IAAI,CAAC,SAAS,CAAC;SACf,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACxB,CAAC;AAJD,sBAIC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAAI,GAAQ,EAAE,MAAyB;IAClE,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;QACpB,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE;YACd,IAAI,CAAC,KAAK,CAAC;gBAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;YACxB,CAAC,EAAE,CAAA;SACJ;IACH,CAAC,CAAC,CAAA;IACF,GAAG,CAAC,MAAM,GAAG,CAAC,CAAA;IACd,OAAO,GAAG,CAAA;AACZ,CAAC;AAVD,sCAUC;AAED,SAAgB,IAAI,CAAI,GAAQ;IAC9B,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;QAC5B,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACxC,OAAO,GAAG,CAAA;IACZ,CAAC,EAAE,EAAS,CAAC,CAAA;AACf,CAAC;AALD,oBAKC;AAED,gDAAgD;AAChD,SAAgB,eAAe,CAAC,CAAQ,EAAE,CAAQ;IAChD,OAAO,CACL,CAAC,IAAI,IAAI;QACT,CAAC,IAAI,IAAI;QACT,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QACrB,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CACpC,CAAA;AACH,CAAC;AAPD,0CAOC"}
@@ -0,0 +1 @@
1
+ export declare const DeleteAllTagsArgs: string[];
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeleteAllTagsArgs = void 0;
4
+ exports.DeleteAllTagsArgs = ["-all="];
5
+ //# sourceMappingURL=DeleteAllTagsArgs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteAllTagsArgs.js","sourceRoot":"","sources":["../src/DeleteAllTagsArgs.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,CAAC,OAAO,CAAC,CAAA"}
@@ -28,7 +28,7 @@ class ExifDateTime {
28
28
  return this.fromDateTime(luxon_1.DateTime.fromISO(iso, {
29
29
  setZone: true,
30
30
  zone: zone !== null && zone !== void 0 ? zone : Timezones_1.UnsetZone,
31
- }), (0, Maybe_1.orElse)(rawValue, iso));
31
+ }), rawValue !== null && rawValue !== void 0 ? rawValue : iso);
32
32
  }
33
33
  /**
34
34
  * Try to parse a date-time string from EXIF. If there is not both a date and
@@ -107,6 +107,7 @@ class ExifDateTime {
107
107
  ]);
108
108
  }
109
109
  static fromDateTime(dt, rawValue) {
110
+ var _a;
110
111
  if (dt == null ||
111
112
  !dt.isValid ||
112
113
  dt.toMillis() === 0 ||
@@ -114,7 +115,7 @@ class ExifDateTime {
114
115
  dt.year === 1) {
115
116
  return undefined;
116
117
  }
117
- return new ExifDateTime(dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second, dt.millisecond, dt.offset === Timezones_1.UnsetZoneOffsetMinutes ? undefined : dt.offset, rawValue, dt.zone.name === Timezones_1.UnsetZone.name ? undefined : dt.zoneName);
118
+ return new ExifDateTime(dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second, dt.millisecond, dt.offset === Timezones_1.UnsetZoneOffsetMinutes ? undefined : dt.offset, rawValue, ((_a = dt.zone) === null || _a === void 0 ? void 0 : _a.name) === Timezones_1.UnsetZone.name ? undefined : dt.zoneName);
118
119
  }
119
120
  get millis() {
120
121
  return this.millisecond;
@@ -143,8 +144,9 @@ class ExifDateTime {
143
144
  return this.toDateTime().toJSDate();
144
145
  }
145
146
  toISOString(options = {}) {
147
+ var _a;
146
148
  return (0, Maybe_1.denull)(this.toDateTime().toISO({
147
- suppressMilliseconds: (0, Maybe_1.orElse)(options.suppressMilliseconds, () => this.millisecond == null),
149
+ suppressMilliseconds: (_a = options.suppressMilliseconds) !== null && _a !== void 0 ? _a : this.millisecond == null,
148
150
  includeOffset: this.hasZone && options.includeOffset !== false,
149
151
  }));
150
152
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ExifDateTime.js","sourceRoot":"","sources":["../src/ExifDateTime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExifDateTime.js","sourceRoot":"","sources":["../src/ExifDateTime.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export { ExifDateTime } from "./ExifDateTime";
10
10
  export { ExifTime } from "./ExifTime";
11
11
  export { ExifToolTask } from "./ExifToolTask";
12
12
  export { parseJSON } from "./JSON";
13
- export { offsetMinutesToZoneName } from "./Timezones";
13
+ export { offsetMinutesToZoneName, UnsetZone, UnsetZoneName, UnsetZoneOffsetMinutes, } from "./Timezones";
14
14
  export type { Tags };
15
15
  export declare const DefaultExifToolPath: string;
16
16
  export declare const DefaultExiftoolArgs: string[];
@@ -36,7 +36,11 @@ declare type AdditionalWriteTags = {
36
36
  declare type ExpandedDateTags = {
37
37
  [K in keyof Tags]: (Tags[K] extends number ? number : Tags[K] extends ExifDateTime ? ExifDate | ExifDateTime : Tags[K]) | string;
38
38
  };
39
- export declare type WriteTags = ShortcutTags & AdditionalWriteTags & ExpandedDateTags;
39
+ declare type NotUndefined<T> = T extends undefined ? never : T;
40
+ export declare type DefinedOrNullValued<T> = {
41
+ [P in keyof T]: NotUndefined<T[P]> | null;
42
+ };
43
+ export declare type WriteTags = DefinedOrNullValued<ShortcutTags & AdditionalWriteTags & ExpandedDateTags>;
40
44
  export declare const DefaultMaxProcs: number;
41
45
  export interface ExifToolOptions extends bc.BatchClusterOptions, bc.BatchProcessOptions, bc.ChildProcessFactory {
42
46
  /**
@@ -292,7 +296,7 @@ export declare class ExifTool {
292
296
  *
293
297
  * @see BinaryExtractionTask for an example task implementation
294
298
  */
295
- enqueueTask<T>(task: () => ExifToolTask<T>): Promise<T>;
299
+ enqueueTask<T>(task: () => ExifToolTask<T> | Promise<ExifToolTask<T>>): Promise<T>;
296
300
  /**
297
301
  * @return the currently running ExifTool processes. Note that on Windows,
298
302
  * these are only the process IDs of the directly-spawned ExifTool wrapper,
package/dist/ExifTool.js CHANGED
@@ -19,7 +19,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
19
19
  return result;
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.exiftool = exports.ExifTool = exports.DefaultExifToolOptions = exports.DefaultMaxProcs = exports.DefaultExiftoolArgs = exports.DefaultExifToolPath = exports.offsetMinutesToZoneName = exports.parseJSON = exports.ExifToolTask = exports.ExifTime = exports.ExifDateTime = exports.ExifDate = void 0;
22
+ exports.exiftool = exports.ExifTool = exports.DefaultExifToolOptions = exports.DefaultMaxProcs = exports.DefaultExiftoolArgs = exports.DefaultExifToolPath = exports.UnsetZoneOffsetMinutes = exports.UnsetZoneName = exports.UnsetZone = exports.offsetMinutesToZoneName = exports.parseJSON = exports.ExifToolTask = exports.ExifTime = exports.ExifDateTime = exports.ExifDate = void 0;
23
23
  const bc = __importStar(require("batch-cluster"));
24
24
  const _cp = __importStar(require("child_process"));
25
25
  const _fs = __importStar(require("fs"));
@@ -29,8 +29,8 @@ const _p = __importStar(require("process"));
29
29
  const AsyncRetry_1 = require("./AsyncRetry");
30
30
  const BinaryExtractionTask_1 = require("./BinaryExtractionTask");
31
31
  const BinaryToBufferTask_1 = require("./BinaryToBufferTask");
32
+ const DeleteAllTagsArgs_1 = require("./DeleteAllTagsArgs");
32
33
  const Lazy_1 = require("./Lazy");
33
- const Maybe_1 = require("./Maybe");
34
34
  const ReadRawTask_1 = require("./ReadRawTask");
35
35
  const ReadTask_1 = require("./ReadTask");
36
36
  const RewriteAllTagsTask_1 = require("./RewriteAllTagsTask");
@@ -49,6 +49,9 @@ var JSON_1 = require("./JSON");
49
49
  Object.defineProperty(exports, "parseJSON", { enumerable: true, get: function () { return JSON_1.parseJSON; } });
50
50
  var Timezones_1 = require("./Timezones");
51
51
  Object.defineProperty(exports, "offsetMinutesToZoneName", { enumerable: true, get: function () { return Timezones_1.offsetMinutesToZoneName; } });
52
+ Object.defineProperty(exports, "UnsetZone", { enumerable: true, get: function () { return Timezones_1.UnsetZone; } });
53
+ Object.defineProperty(exports, "UnsetZoneName", { enumerable: true, get: function () { return Timezones_1.UnsetZoneName; } });
54
+ Object.defineProperty(exports, "UnsetZoneOffsetMinutes", { enumerable: true, get: function () { return Timezones_1.UnsetZoneOffsetMinutes; } });
52
55
  const isWin32 = (0, Lazy_1.lazy)(() => _os.platform() === "win32");
53
56
  function findExiftool() {
54
57
  const path = require(`exiftool-vendored.${isWin32() ? "exe" : "pl"}`);
@@ -89,9 +92,6 @@ exports.DefaultExifToolOptions = Object.freeze({
89
92
  // see https://github.com/photostructure/exiftool-vendored.js/issues/34 :
90
93
  taskTimeoutMillis: 20000,
91
94
  onIdleIntervalMillis: 2000,
92
- // 1 ms seems to work on linux, but stderr and stdout may be buffered
93
- // differently on different OSes:
94
- streamFlushMillis: 7,
95
95
  taskRetries: 1,
96
96
  exiftoolPath: exports.DefaultExifToolPath,
97
97
  exiftoolArgs: exports.DefaultExiftoolArgs,
@@ -100,7 +100,14 @@ exports.DefaultExifToolOptions = Object.freeze({
100
100
  fail: "{ready}",
101
101
  exitCommand: "-stay_open\nFalse\n",
102
102
  versionCommand: new VersionTask_1.VersionTask().command,
103
- numericTags: ["*Duration*", "GPS*", "Orientation"],
103
+ numericTags: [
104
+ "*Duration*",
105
+ "GPSAltitude",
106
+ "GPSLatitude",
107
+ "GPSLongitude",
108
+ "GPSPosition",
109
+ "Orientation",
110
+ ],
104
111
  });
105
112
  /**
106
113
  * Manages delegating calls to a vendored running instance of ExifTool.
@@ -110,6 +117,7 @@ exports.DefaultExifToolOptions = Object.freeze({
110
117
  */
111
118
  class ExifTool {
112
119
  constructor(options = {}) {
120
+ var _a;
113
121
  /**
114
122
  * Register life cycle event listeners. Delegates to BatchProcess.
115
123
  */
@@ -122,7 +130,7 @@ class ExifTool {
122
130
  ...exports.DefaultExifToolOptions,
123
131
  ...options,
124
132
  };
125
- const ignoreShebang = (0, Maybe_1.orElse)(o.ignoreShebang, () => _ignoreShebang());
133
+ const ignoreShebang = (_a = o.ignoreShebang) !== null && _a !== void 0 ? _a : _ignoreShebang();
126
134
  const env = { ...o.exiftoolEnv, LANG: "C" };
127
135
  if ((0, String_1.notBlank)(_p.env.EXIFTOOL_HOME) && (0, String_1.blank)(env.EXIFTOOL_HOME)) {
128
136
  env.EXIFTOOL_HOME = _p.env.EXIFTOOL_HOME;
@@ -221,7 +229,7 @@ class ExifTool {
221
229
  * continue to exist if you re-`read` the file.
222
230
  */
223
231
  deleteAllTags(file) {
224
- return this.write(file, {}, ["-all="]);
232
+ return this.write(file, {}, DeleteAllTagsArgs_1.DeleteAllTagsArgs);
225
233
  }
226
234
  /**
227
235
  * Extract the low-resolution thumbnail in `path/to/image.jpg`
@@ -342,7 +350,7 @@ class ExifTool {
342
350
  * @see BinaryExtractionTask for an example task implementation
343
351
  */
344
352
  enqueueTask(task) {
345
- return (0, AsyncRetry_1.retryOnReject)(() => this.batchCluster.enqueueTask(task()), this.options.taskRetries);
353
+ return (0, AsyncRetry_1.retryOnReject)(async () => this.batchCluster.enqueueTask(await task()), this.options.taskRetries);
346
354
  }
347
355
  /**
348
356
  * @return the currently running ExifTool processes. Note that on Windows,
@@ -1 +1 @@
1
- {"version":3,"file":"ExifTool.js","sourceRoot":"","sources":["../src/ExifTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExifTool.js","sourceRoot":"","sources":["../src/ExifTool.ts"],"names":[],"mappings":"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"}
@@ -21,15 +21,14 @@ var __importStar = (this && this.__importStar) || function (mod) {
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.ExifToolTask = void 0;
23
23
  const bc = __importStar(require("batch-cluster"));
24
- const Maybe_1 = require("./Maybe");
25
24
  const String_1 = require("./String");
26
25
  class ExifToolTask extends bc.Task {
27
26
  constructor(args) {
28
27
  super(ExifToolTask.renderCommand(args), (stdout, stderr, passed) => {
29
28
  let err;
30
29
  if ((0, String_1.notBlank)(stderr) || !passed) {
31
- this.errors.push((0, Maybe_1.orElse)(stderr, "failed"));
32
- err = new Error((0, String_1.stripPrefix)((0, Maybe_1.orElse)(stderr, stdout).trim(), "error: "));
30
+ this.errors.push(stderr !== null && stderr !== void 0 ? stderr : "failed");
31
+ err = new Error((0, String_1.stripPrefix)((stderr !== null && stderr !== void 0 ? stderr : stdout).trim(), "error: "));
33
32
  }
34
33
  return this.parse(stdout, err);
35
34
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ExifToolTask.js","sourceRoot":"","sources":["../src/ExifToolTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmC;AAEnC,mCAAgC;AAChC,qCAAgD;AAEhD,MAAsB,YAAgB,SAAQ,EAAE,CAAC,IAAO;IAOtD,YAAqB,IAAc;QACjC,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACjE,IAAI,GAAG,CAAA;YACP,IAAI,IAAA,iBAAQ,EAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE;gBAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,cAAM,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;gBAC1C,GAAG,GAAG,IAAI,KAAK,CAAC,IAAA,oBAAW,EAAC,IAAA,cAAM,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC,CAAA;aACvE;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;QARiB,SAAI,GAAJ,IAAI,CAAU;QAF1B,WAAM,GAAa,EAAE,CAAA;IAW9B,CAAC;IAfD,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;IAiBD,QAAQ,CAAC,GAAW;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;CACF;AAvBD,oCAuBC"}
1
+ {"version":3,"file":"ExifToolTask.js","sourceRoot":"","sources":["../src/ExifToolTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmC;AACnC,qCAAgD;AAEhD,MAAsB,YAAgB,SAAQ,EAAE,CAAC,IAAO;IAOtD,YAAqB,IAAc;QACjC,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACjE,IAAI,GAAG,CAAA;YACP,IAAI,IAAA,iBAAQ,EAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE;gBAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,QAAQ,CAAC,CAAA;gBACpC,GAAG,GAAG,IAAI,KAAK,CAAC,IAAA,oBAAW,EAAC,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC,CAAA;aACnE;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;QARiB,SAAI,GAAJ,IAAI,CAAU;QAF1B,WAAM,GAAa,EAAE,CAAA;IAW9B,CAAC;IAfD,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;IAiBD,QAAQ,CAAC,GAAW;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;CACF;AAvBD,oCAuBC"}
package/dist/File.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare function isFileEmpty(path: string): Promise<boolean>;
package/dist/File.js ADDED
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isFileEmpty = void 0;
4
+ const fs_1 = require("fs");
5
+ const String_1 = require("./String");
6
+ async function isFileEmpty(path) {
7
+ if ((0, String_1.blank)(path)) {
8
+ throw new Error("isFileEmpty(): blank path");
9
+ }
10
+ // TODO: convert this to using fs/promises once node 12 is EOL (2022-04-30)
11
+ try {
12
+ const s = await new Promise((res, rej) => {
13
+ try {
14
+ (0, fs_1.stat)(path, (err, val) => (err == null ? res(val) : rej(err)));
15
+ }
16
+ catch (err) {
17
+ rej(err);
18
+ }
19
+ });
20
+ return s == null || s.size === 0;
21
+ }
22
+ catch (err) {
23
+ if (err.code === "ENOENT")
24
+ return true;
25
+ else
26
+ throw err;
27
+ }
28
+ }
29
+ exports.isFileEmpty = isFileEmpty;
30
+ //# sourceMappingURL=File.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"File.js","sourceRoot":"","sources":["../src/File.ts"],"names":[],"mappings":";;;AAAA,2BAAgC;AAChC,qCAAgC;AAEzB,KAAK,UAAU,WAAW,CAAC,IAAY;IAC5C,IAAI,IAAA,cAAK,EAAC,IAAI,CAAC,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;KAC7C;IAED,2EAA2E;IAC3E,IAAI;QACF,MAAM,CAAC,GAAG,MAAM,IAAI,OAAO,CAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC9C,IAAI;gBACF,IAAA,SAAI,EAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;aAC9D;YAAC,OAAO,GAAG,EAAE;gBACZ,GAAG,CAAC,GAAG,CAAC,CAAA;aACT;QACH,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAA;KACjC;IAAC,OAAO,GAAQ,EAAE;QACjB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAA;;YACjC,MAAM,GAAG,CAAA;KACf;AACH,CAAC;AAnBD,kCAmBC"}
package/dist/JSON.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"JSON.js","sourceRoot":"","sources":["../src/JSON.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AACrC,iDAA6C;AAC7C,yCAAqC;AAErC,MAAM,QAAQ,GAAQ;IACpB,YAAY,EAAE,CAAC,EAAO,EAAE,EAAE,CAAC,2BAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;IACpD,QAAQ,EAAE,CAAC,EAAO,EAAE,EAAE,CAAC,mBAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5C,QAAQ,EAAE,CAAC,EAAO,EAAE,EAAE,CAAC,mBAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;CAC7C,CAAA;AAED,SAAgB,SAAS,CAAC,CAAS;IACjC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,eAAC,OAAA,MAAA,MAAA,QAAQ,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,+CAAtB,QAAQ,EAAiB,KAAK,CAAC,mCAAI,KAAK,CAAA,EAAA,CAAC,CAAA;AACjF,CAAC;AAFD,8BAEC"}
1
+ {"version":3,"file":"JSON.js","sourceRoot":"","sources":["../src/JSON.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AACrC,iDAA6C;AAC7C,yCAAqC;AAErC,MAAM,QAAQ,GAAQ;IACpB,YAAY,EAAE,CAAC,EAAO,EAAE,EAAE,CAAC,2BAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;IACpD,QAAQ,EAAE,CAAC,EAAO,EAAE,EAAE,CAAC,mBAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5C,QAAQ,EAAE,CAAC,EAAO,EAAE,EAAE,CAAC,mBAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;CAC7C,CAAA;AAED,SAAgB,SAAS,CAAC,CAAS;IACjC,OAAO,IAAI,CAAC,KAAK,CACf,CAAC,EACD,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,eAAC,OAAA,MAAA,MAAA,QAAQ,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,+CAAtB,QAAQ,EAAiB,KAAK,CAAC,mCAAI,KAAK,CAAA,EAAA,CAC1D,CAAA;AACH,CAAC;AALD,8BAKC"}
package/dist/Maybe.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  export declare type Maybe<T> = T | undefined;
2
2
  export declare type MaybeNull<T> = Maybe<T> | null;
3
3
  export declare function map<T, U>(maybeT: MaybeNull<T>, f: (t: T) => U): Maybe<U>;
4
- export declare function orElse<T>(obj: MaybeNull<T>, defaultValue: T | (() => T)): T;
5
4
  export declare function first<T, U>(iter: Iterable<Maybe<T>>, f: (t: T) => Maybe<U>): Maybe<U>;
6
5
  export declare function firstDefinedThunk<T>(iter: Iterable<() => Maybe<T>>): Maybe<T>;
7
6
  /**
package/dist/Maybe.js CHANGED
@@ -1,19 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.denull = exports.firstDefinedThunk = exports.first = exports.orElse = exports.map = void 0;
4
- const Object_1 = require("./Object");
3
+ exports.denull = exports.firstDefinedThunk = exports.first = exports.map = void 0;
5
4
  function map(maybeT, f) {
6
5
  return maybeT == null ? undefined : f(maybeT);
7
6
  }
8
7
  exports.map = map;
9
- function orElse(obj, defaultValue) {
10
- return obj != null
11
- ? obj
12
- : (0, Object_1.isFunction)(defaultValue)
13
- ? defaultValue()
14
- : defaultValue;
15
- }
16
- exports.orElse = orElse;
17
8
  function first(iter, f) {
18
9
  for (const t of iter) {
19
10
  if (t != null) {
package/dist/Maybe.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Maybe.js","sourceRoot":"","sources":["../src/Maybe.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAKrC,SAAgB,GAAG,CAAO,MAAoB,EAAE,CAAc;IAC5D,OAAO,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAC/C,CAAC;AAFD,kBAEC;AAED,SAAgB,MAAM,CAAI,GAAiB,EAAE,YAA2B;IACtE,OAAO,GAAG,IAAI,IAAI;QAChB,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,IAAA,mBAAU,EAAC,YAAY,CAAC;YAC1B,CAAC,CAAC,YAAY,EAAE;YAChB,CAAC,CAAC,YAAY,CAAA;AAClB,CAAC;AAND,wBAMC;AAED,SAAgB,KAAK,CACnB,IAAwB,EACxB,CAAqB;IAErB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QACpB,IAAI,CAAC,IAAI,IAAI,EAAE;YACb,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACd,IAAI,CAAC,IAAI,IAAI;gBAAE,OAAO,CAAC,CAAA;SACxB;KACF;IACD,OAAM;AACR,CAAC;AAXD,sBAWC;AAED,SAAgB,iBAAiB,CAAI,IAA8B;IACjE,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QACpB,MAAM,MAAM,GAAG,CAAC,EAAE,CAAA;QAClB,IAAI,MAAM,IAAI,IAAI;YAAE,OAAO,MAAM,CAAA;KAClC;IACD,OAAM;AACR,CAAC;AAND,8CAMC;AAED;;GAEG;AACH,SAAgB,MAAM,CAAI,CAAW;IACnC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;AAClC,CAAC;AAFD,wBAEC"}
1
+ {"version":3,"file":"Maybe.js","sourceRoot":"","sources":["../src/Maybe.ts"],"names":[],"mappings":";;;AAGA,SAAgB,GAAG,CAAO,MAAoB,EAAE,CAAc;IAC5D,OAAO,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAC/C,CAAC;AAFD,kBAEC;AAED,SAAgB,KAAK,CACnB,IAAwB,EACxB,CAAqB;IAErB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QACpB,IAAI,CAAC,IAAI,IAAI,EAAE;YACb,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACd,IAAI,CAAC,IAAI,IAAI;gBAAE,OAAO,CAAC,CAAA;SACxB;KACF;IACD,OAAM;AACR,CAAC;AAXD,sBAWC;AAED,SAAgB,iBAAiB,CAAI,IAA8B;IACjE,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QACpB,MAAM,MAAM,GAAG,CAAC,EAAE,CAAA;QAClB,IAAI,MAAM,IAAI,IAAI;YAAE,OAAO,MAAM,CAAA;KAClC;IACD,OAAM;AACR,CAAC;AAND,8CAMC;AAED;;GAEG;AACH,SAAgB,MAAM,CAAI,CAAW;IACnC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;AAClC,CAAC;AAFD,wBAEC"}
@@ -23,7 +23,6 @@ exports.ReadRawTask = void 0;
23
23
  const batch_cluster_1 = require("batch-cluster");
24
24
  const _path = __importStar(require("path"));
25
25
  const ExifToolTask_1 = require("./ExifToolTask");
26
- const Maybe_1 = require("./Maybe");
27
26
  class ReadRawTask extends ExifToolTask_1.ExifToolTask {
28
27
  constructor(sourceFile, args) {
29
28
  super(args);
@@ -47,7 +46,7 @@ class ReadRawTask extends ExifToolTask_1.ExifToolTask {
47
46
  }
48
47
  catch (jsonError) {
49
48
  (0, batch_cluster_1.logger)().error("ExifTool.ReadRawTask(): Invalid JSON", { data });
50
- throw (0, Maybe_1.orElse)(err, jsonError);
49
+ throw err !== null && err !== void 0 ? err : jsonError;
51
50
  }
52
51
  }
53
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReadRawTask.js","sourceRoot":"","sources":["../src/ReadRawTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAsC;AACtC,4CAA6B;AAE7B,iDAA6C;AAC7C,mCAAgC;AAGhC,MAAa,WAAY,SAAQ,2BAAkB;IASjD,YACW,UAAkB,EACT,IAAc;QAEhC,KAAK,CAAC,IAAI,CAAC,CAAA;QAHF,eAAU,GAAV,UAAU,CAAQ;QACT,SAAI,GAAJ,IAAI,CAAU;IAGlC,CAAC;IAbD,MAAM,CAAC,GAAG,CAAC,QAAgB,EAAE,eAAyB,EAAE;QACtD,MAAM,IAAI,GAAG,CAAC,GAAG,YAAY,CAAC,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACrB,OAAO,IAAI,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAC1C,CAAC;IASQ,QAAQ;QACf,OAAO,aAAa,GAAG,IAAI,CAAC,UAAU,GAAG,GAAG,CAAA;IAC9C,CAAC;IAES,KAAK,CAAC,IAAY,EAAE,GAAW;QACvC,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;SAC3B;QAAC,OAAO,SAAS,EAAE;YAClB,IAAA,sBAAM,GAAE,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YAChE,MAAM,IAAA,cAAM,EAAC,GAAG,EAAE,SAAS,CAAC,CAAA;SAC7B;IACH,CAAC;CACF;AA5BD,kCA4BC"}
1
+ {"version":3,"file":"ReadRawTask.js","sourceRoot":"","sources":["../src/ReadRawTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAsC;AACtC,4CAA6B;AAC7B,iDAA6C;AAG7C,MAAa,WAAY,SAAQ,2BAAkB;IASjD,YACW,UAAkB,EACT,IAAc;QAEhC,KAAK,CAAC,IAAI,CAAC,CAAA;QAHF,eAAU,GAAV,UAAU,CAAQ;QACT,SAAI,GAAJ,IAAI,CAAU;IAGlC,CAAC;IAbD,MAAM,CAAC,GAAG,CAAC,QAAgB,EAAE,eAAyB,EAAE;QACtD,MAAM,IAAI,GAAG,CAAC,GAAG,YAAY,CAAC,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACrB,OAAO,IAAI,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAC1C,CAAC;IASQ,QAAQ;QACf,OAAO,aAAa,GAAG,IAAI,CAAC,UAAU,GAAG,GAAG,CAAA;IAC9C,CAAC;IAES,KAAK,CAAC,IAAY,EAAE,GAAW;QACvC,IAAI;YACF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;SAC3B;QAAC,OAAO,SAAS,EAAE;YAClB,IAAA,sBAAM,GAAE,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;YAChE,MAAM,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,SAAS,CAAA;SACvB;IACH,CAAC;CACF;AA5BD,kCA4BC"}
@@ -18,11 +18,11 @@ export declare class ReadTask extends ExifToolTask<Tags> {
18
18
  private constructor();
19
19
  static for(filename: string, numericTags: string[], optionalArgs?: string[]): ReadTask;
20
20
  toString(): string;
21
- protected parse(data: string, err?: Error): Tags;
21
+ parse(data: string, err?: Error): Tags;
22
22
  private tagName;
23
23
  private parseTags;
24
- private latlon;
25
24
  private extractLatLon;
25
+ private latlon;
26
26
  private extractTzOffset;
27
27
  private parseTag;
28
28
  }
package/dist/ReadTask.js CHANGED
@@ -66,8 +66,6 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
66
66
  "-json",
67
67
  "-struct",
68
68
  ...optionalArgs,
69
- "-coordFormat",
70
- "%.8f", // Just a float, please, not the default of "22 deg 20' 7.58\" N"
71
69
  ];
72
70
  // IMPORTANT: "-all" must be after numeric tag references (first reference
73
71
  // in wins)
@@ -90,7 +88,7 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
90
88
  err,
91
89
  jsonError,
92
90
  });
93
- throw (0, Maybe_1.orElse)(err, jsonError);
91
+ throw err !== null && err !== void 0 ? err : jsonError;
94
92
  }
95
93
  // ExifTool does "humorous" things to paths, like flip path separators. resolve() undoes that.
96
94
  const SourceFile = _path.resolve(this._raw.SourceFile);
@@ -110,7 +108,8 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
110
108
  return this.parseTags();
111
109
  }
112
110
  tagName(k) {
113
- return this.degroup ? (0, Maybe_1.orElse)(k.split(":")[1], k) : k;
111
+ var _a;
112
+ return this.degroup ? (_a = k.split(":")[1]) !== null && _a !== void 0 ? _a : k : k;
114
113
  }
115
114
  parseTags() {
116
115
  this.extractLatLon();
@@ -122,30 +121,37 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
122
121
  this.tags.errors = this.errors;
123
122
  return this.tags;
124
123
  }
124
+ extractLatLon() {
125
+ var _a, _b;
126
+ (_a = this.lat) !== null && _a !== void 0 ? _a : (this.lat = this.latlon("GPSLatitude", "S", 90));
127
+ (_b = this.lon) !== null && _b !== void 0 ? _b : (this.lon = this.latlon("GPSLongitude", "W", 180));
128
+ if (this.invalidLatLon) {
129
+ this.lat = this.lon = undefined;
130
+ }
131
+ }
125
132
  latlon(tagName, negateRef, maxValid) {
126
133
  const tagValue = this._tags[tagName];
127
- const r = (0, Number_1.toF)(tagValue);
128
- if (r == null)
134
+ const ref = this._tags[tagName + "Ref"];
135
+ const result = (0, Number_1.toF)(tagValue);
136
+ if (result == null) {
129
137
  return;
130
- if (Math.abs(r) > maxValid) {
131
- this.errors.push(`Invalid ${tagName}, ${JSON.stringify(tagValue)}`);
138
+ }
139
+ else if (Math.abs(result) > maxValid) {
140
+ this.errors.push(`Invalid ${tagName}: ${JSON.stringify(tagValue)}`);
132
141
  this.invalidLatLon = true;
133
142
  return;
134
143
  }
135
- const ref = (0, String_1.toS)(this._tags[tagName + "Ref"]).toUpperCase();
136
- if (ref.startsWith(negateRef)) {
137
- return Math.abs(r) * -1;
144
+ else if ((0, String_1.blank)(ref)) {
145
+ // Videos may not have a GPSLatitudeRef or GPSLongitudeRef: if this is the case, assume the given sign is correct.
146
+ return result;
138
147
  }
139
148
  else {
140
- return r;
141
- }
142
- }
143
- extractLatLon() {
144
- if (!this.invalidLatLon && this.lat == null) {
145
- this.lat = this.latlon("GPSLatitude", "S", 90);
146
- }
147
- if (!this.invalidLatLon && this.lon == null) {
148
- this.lon = this.latlon("GPSLongitude", "W", 180);
149
+ // Versions of ExifTool pre-12 returned properly-negated lat/lon. ExifTool
150
+ // 12+ always returns positive values (!!). Also: if '-GPS*#' is set,
151
+ // we'll see "S" instead of "South", hence the .startsWith() instead of
152
+ // ===:
153
+ const negative = (0, String_1.toS)(ref).toUpperCase().startsWith(negateRef);
154
+ return (negative ? -1 : 1) * Math.abs(result);
149
155
  }
150
156
  }
151
157
  extractTzOffset() {
@@ -169,6 +175,7 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
169
175
  ]), (ea) => ({ tz: this.tz, src: this.tzSource } = ea));
170
176
  }
171
177
  parseTag(tagNameWithGroup, value) {
178
+ var _a, _b, _c, _d, _e, _f;
172
179
  if (nullish(value))
173
180
  return undefined;
174
181
  const tagName = this.tagName(tagNameWithGroup);
@@ -182,19 +189,17 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
182
189
  if (tagName === "GPSLongitude") {
183
190
  return this.lon;
184
191
  }
192
+ const tz = tagName.includes("UTC") || tagName.startsWith("GPS") ? "UTC" : this.tz;
193
+ if (typeof value === "string" && tagName.includes("DateTime")) {
194
+ const d = (_a = ExifDateTime_1.ExifDateTime.fromExifStrict(value, tz)) !== null && _a !== void 0 ? _a : ExifDateTime_1.ExifDateTime.fromISO(value, tz);
195
+ if (d != null) {
196
+ return d;
197
+ }
198
+ }
185
199
  if (typeof value === "string" && tagName.includes("Date")) {
186
- const dt = (0, Maybe_1.firstDefinedThunk)([
187
- () => ExifDate_1.ExifDate.fromExifStrict(value),
188
- () => ExifDateTime_1.ExifDateTime.fromExifStrict(value, tagName.includes("UTC") || tagName === "GPSDateTime"
189
- ? "UTC"
190
- : this.tz),
191
- () => ExifDate_1.ExifDate.fromISO(value),
192
- () => ExifDateTime_1.ExifDateTime.fromISO(value, this.tz),
193
- () => ExifDate_1.ExifDate.fromExifLoose(value),
194
- () => ExifDateTime_1.ExifDateTime.fromExifLoose(value, this.tz),
195
- ]);
196
- if (dt != null) {
197
- return dt;
200
+ const d = (_f = (_e = (_d = (_c = (_b = ExifDateTime_1.ExifDateTime.fromExifStrict(value, tz)) !== null && _b !== void 0 ? _b : ExifDateTime_1.ExifDateTime.fromISO(value, tz)) !== null && _c !== void 0 ? _c : ExifDateTime_1.ExifDateTime.fromExifLoose(value, tz)) !== null && _d !== void 0 ? _d : ExifDate_1.ExifDate.fromExifStrict(value)) !== null && _e !== void 0 ? _e : ExifDate_1.ExifDate.fromISO(value)) !== null && _f !== void 0 ? _f : ExifDate_1.ExifDate.fromExifLoose(value);
201
+ if (d != null) {
202
+ return d;
198
203
  }
199
204
  }
200
205
  if (typeof value === "string" && tagName.includes("Time")) {
@@ -1 +1 @@
1
- {"version":3,"file":"ReadTask.js","sourceRoot":"","sources":["../src/ReadTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReadTask.js","sourceRoot":"","sources":["../src/ReadTask.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,6 @@ exports.RewriteAllTagsTask = void 0;
23
23
  const _path = __importStar(require("path"));
24
24
  const Array_1 = require("./Array");
25
25
  const ExifToolTask_1 = require("./ExifToolTask");
26
- const Maybe_1 = require("./Maybe");
27
26
  class RewriteAllTagsTask extends ExifToolTask_1.ExifToolTask {
28
27
  constructor(args) {
29
28
  super(args);
@@ -45,11 +44,16 @@ class RewriteAllTagsTask extends ExifToolTask_1.ExifToolTask {
45
44
  return new RewriteAllTagsTask(args);
46
45
  }
47
46
  parse(data, error) {
48
- if (error != null && String(error).startsWith("Warning: ")) {
49
- throw error;
47
+ var _a;
48
+ if (error != null) {
49
+ const str = String(error);
50
+ // Ignore warnings:
51
+ if (str.match(/\berror\b/i) != null && !str.match(/\bwarning\b/i)) {
52
+ throw error;
53
+ }
50
54
  }
51
- if (data.trim() !== "1 image files created") {
52
- throw (0, Maybe_1.orElse)(error, () => new Error((0, Maybe_1.orElse)(data.trim().split("\n")[0], "Missing expected status message")));
55
+ if (null == data.match(/^\s*1 image files creat/i)) {
56
+ throw (error !== null && error !== void 0 ? error : new Error((_a = data.trim().split("\n")[0]) !== null && _a !== void 0 ? _a : "Missing expected status message"));
53
57
  }
54
58
  }
55
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RewriteAllTagsTask.js","sourceRoot":"","sources":["../src/RewriteAllTagsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA6B;AAE7B,mCAAiC;AACjC,iDAA6C;AAC7C,mCAAgC;AAEhC,MAAa,kBAAmB,SAAQ,2BAAkB;IACxD,YAAoB,IAAc;QAChC,KAAK,CAAC,IAAI,CAAC,CAAA;IACb,CAAC;IAED,MAAM,CAAC,GAAG,CACR,MAAc,EACd,OAAe,EACf,oBAA6B;QAE7B,8DAA8D;QAE9D,MAAM,IAAI,GAAG,IAAA,eAAO,EAAC;YACnB,OAAO;YACP,eAAe;YACf,GAAG;YACH,UAAU;YACV,SAAS;YACT,cAAc;YACd,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YACvC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACrB,MAAM;YACN,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;SACvB,CAAC,CAAA;QACF,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,KAAK,CAAC,IAAY,EAAE,KAAa;QAC/B,IAAI,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;YAC1D,MAAM,KAAK,CAAA;SACZ;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,uBAAuB,EAAE;YAC3C,MAAM,IAAA,cAAM,EACV,KAAK,EACL,GAAG,EAAE,CACH,IAAI,KAAK,CACP,IAAA,cAAM,EACJ,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAC1B,iCAAiC,CAClC,CACF,CACJ,CAAA;SACF;IACH,CAAC;CACF;AA5CD,gDA4CC"}
1
+ {"version":3,"file":"RewriteAllTagsTask.js","sourceRoot":"","sources":["../src/RewriteAllTagsTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA6B;AAC7B,mCAAiC;AACjC,iDAA6C;AAE7C,MAAa,kBAAmB,SAAQ,2BAAkB;IACxD,YAAoB,IAAc;QAChC,KAAK,CAAC,IAAI,CAAC,CAAA;IACb,CAAC;IAED,MAAM,CAAC,GAAG,CACR,MAAc,EACd,OAAe,EACf,oBAA6B;QAE7B,8DAA8D;QAE9D,MAAM,IAAI,GAAG,IAAA,eAAO,EAAC;YACnB,OAAO;YACP,eAAe;YACf,GAAG;YACH,UAAU;YACV,SAAS;YACT,cAAc;YACd,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YACvC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACrB,MAAM;YACN,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;SACvB,CAAC,CAAA;QACF,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,KAAK,CAAC,IAAY,EAAE,KAAa;;QAC/B,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YACzB,mBAAmB;YACnB,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;gBACjE,MAAM,KAAK,CAAA;aACZ;SACF;QACD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAE;YAClD,MAAM,CACJ,KAAK,aAAL,KAAK,cAAL,KAAK,GACL,IAAI,KAAK,CACP,MAAA,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,mCAAI,iCAAiC,CAChE,CACF,CAAA;SACF;IACH,CAAC;CACF;AA5CD,gDA4CC"}
@@ -0,0 +1,2 @@
1
+ export declare const SidecarExts: string[];
2
+ export declare function isSidecarExt(filename: string): boolean;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isSidecarExt = exports.SidecarExts = void 0;
4
+ const path_1 = require("path");
5
+ exports.SidecarExts = [".exif", ".exv", ".mie", ".xmp"];
6
+ function isSidecarExt(filename) {
7
+ const p = (0, path_1.parse)(filename);
8
+ return exports.SidecarExts.includes(String(p.ext).toLowerCase());
9
+ }
10
+ exports.isSidecarExt = isSidecarExt;
11
+ //# sourceMappingURL=Sidecars.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sidecars.js","sourceRoot":"","sources":["../src/Sidecars.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAEf,QAAA,WAAW,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAE5D,SAAgB,YAAY,CAAC,QAAgB;IAC3C,MAAM,CAAC,GAAG,IAAA,YAAK,EAAC,QAAQ,CAAC,CAAA;IACzB,OAAO,mBAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;AAC1D,CAAC;AAHD,oCAGC"}
package/dist/Tags.d.ts CHANGED
@@ -7,7 +7,7 @@ import { Struct } from "./Struct";
7
7
  export interface ExifToolTags {
8
8
  /** ☆☆☆☆ ✔ Example: "File is empty" */
9
9
  Error?: string;
10
- /** ★★★★ ✔ Example: 12.31 */
10
+ /** ★★★★ ✔ Example: 12.38 */
11
11
  ExifToolVersion?: number;
12
12
  /** ☆☆☆☆ ✔ Example: "Unrecognized IPTC record 0 (ignored)" */
13
13
  Warning?: string;
@@ -33,9 +33,9 @@ export interface FileTags {
33
33
  EncodingProcess?: string;
34
34
  /** ★★★★ ✔ Example: "Little-endian (Intel, II)" */
35
35
  ExifByteOrder?: string;
36
- /** ★★★★ ✔ Example: 2021-09-23T16:12:38.000-07:00 */
36
+ /** ★★★★ ✔ Example: 2021-12-20T17:04:11.000-08:00 */
37
37
  FileAccessDate?: ExifDateTime | string;
38
- /** ★★★★ ✔ Example: 2021-09-23T14:01:12.000-07:00 */
38
+ /** ★★★★ ✔ Example: 2021-12-18T15:34:05.000-08:00 */
39
39
  FileInodeChangeDate?: ExifDateTime | string;
40
40
  /** ★★★★ ✔ Example: 2021-06-08T12:53:12.000-07:00 */
41
41
  FileModifyDate?: ExifDateTime | string;
@@ -995,7 +995,7 @@ export interface IPTCTags {
995
995
  SpecialInstructions?: string;
996
996
  /** ☆☆☆☆ ✔ Example: "" */
997
997
  SupplementalCategories?: string;
998
- /** ☆☆☆☆ ✔ Example: 23:46:26 */
998
+ /** ☆☆☆☆ ✔ Example: 23:47:00 */
999
999
  TimeCreated?: ExifTime | string;
1000
1000
  /** ☆☆☆☆ ✔ Example: "" */
1001
1001
  TimeSent?: string;
@@ -1527,7 +1527,7 @@ export interface MakerNotesTags {
1527
1527
  AFPointPosition?: string;
1528
1528
  /** ☆☆☆☆ ✔ Example: "Center" */
1529
1529
  AFPointRegistration?: string;
1530
- /** ☆☆☆☆ ✔ Example: "Use All" */
1530
+ /** ☆☆☆☆ ✔ Example: "Use Half" */
1531
1531
  AFPointSel?: string;
1532
1532
  /** ☆☆☆☆ ✔ Example: "n/a" */
1533
1533
  AFPointSelected?: string;
@@ -1653,7 +1653,7 @@ export interface MakerNotesTags {
1653
1653
  AssignMovieFunc2Button?: string;
1654
1654
  /** ☆☆☆☆ ✔ Example: "None" */
1655
1655
  AssignMoviePreviewButtonPlusDials?: string;
1656
- /** ☆☆☆☆ ✔ Example: "None" */
1656
+ /** ☆☆☆☆ ✔ Example: "Shutter/Aperture Lock" */
1657
1657
  AssignMovieRecordButton?: string;
1658
1658
  /** ☆☆☆☆ ✔ Example: "None" */
1659
1659
  AssignMovieRecordButtonPlusDials?: string;
@@ -2359,6 +2359,8 @@ export interface MakerNotesTags {
2359
2359
  EffectiveMaxAperture?: number;
2360
2360
  /** ☆☆☆☆ ✔ Example: "On" */
2361
2361
  ElectronicFrontCurtainShutter?: string;
2362
+ /** ☆☆☆☆ ✔ Example: "On" */
2363
+ EnergySavingMode?: string;
2362
2364
  /** ☆☆☆☆ Example: "Off" */
2363
2365
  Enhancement?: string;
2364
2366
  /** ☆☆☆☆ ✔ Example: 960 */
@@ -2835,7 +2837,7 @@ export interface MakerNotesTags {
2835
2837
  FullImageSize?: string;
2836
2838
  /** ☆☆☆☆ Example: "Off" */
2837
2839
  FullPressSnap?: string;
2838
- /** ☆☆☆☆ ✔ Example: "White Balance" */
2840
+ /** ☆☆☆☆ ✔ Example: "Zoom (High)" */
2839
2841
  Func1Button?: string;
2840
2842
  /** ☆☆☆☆ ✔ Example: "Choose Image Area (DX/1.3x)" */
2841
2843
  Func1ButtonPlusDials?: string;
@@ -2873,6 +2875,14 @@ export interface MakerNotesTags {
2873
2875
  GripBatteryState?: string;
2874
2876
  /** ☆☆☆☆ ✔ Example: "Squares" */
2875
2877
  GroupAreaAFIllumination?: string;
2878
+ /** ☆☆☆☆ ✔ Example: "Unknown (5)" */
2879
+ HDMIBitDepth?: string;
2880
+ /** ☆☆☆☆ ✔ Example: "Off" */
2881
+ HDMIExternalRecorder?: string;
2882
+ /** ☆☆☆☆ ✔ Example: "Auto" */
2883
+ HDMIOutputRange?: string;
2884
+ /** ☆☆☆☆ ✔ Example: "Auto" */
2885
+ HDMIOutputResolution?: string;
2876
2886
  /** ★☆☆☆ ✔ Example: "On" */
2877
2887
  HDR?: string;
2878
2888
  /** ☆☆☆☆ ✔ Example: "Natural" */
@@ -2929,9 +2939,9 @@ export interface MakerNotesTags {
2929
2939
  ISO2?: number;
2930
2940
  /** ☆☆☆☆ Example: "On" */
2931
2941
  ISOAuto?: string;
2932
- /** ☆☆☆☆ ✔ Example: "Same As Without Flash" */
2942
+ /** ☆☆☆☆ ✔ Example: "ISO 1600" */
2933
2943
  ISOAutoFlashLimit?: string;
2934
- /** ☆☆☆☆ ✔ Example: "Unknown (37)" */
2944
+ /** ☆☆☆☆ ✔ Example: "Unknown (0x6)" */
2935
2945
  ISOAutoHiLimit?: string;
2936
2946
  /** ☆☆☆☆ ✔ Example: 6400 */
2937
2947
  ISOAutoMax?: number;
@@ -3407,6 +3417,8 @@ export interface MakerNotesTags {
3407
3417
  ModifiedWhiteBalanceBlue?: number;
3408
3418
  /** ☆☆☆☆ ✔ Example: 0 */
3409
3419
  ModifiedWhiteBalanceRed?: number;
3420
+ /** ☆☆☆☆ ✔ Example: 0 */
3421
+ MonitorBrightness?: number;
3410
3422
  /** ☆☆☆☆ ✔ Example: "Automatic" */
3411
3423
  MonitorDisplayOff?: string;
3412
3424
  /** ☆☆☆☆ ✔ Example: "8 s" */
@@ -3431,9 +3443,11 @@ export interface MakerNotesTags {
3431
3443
  MotionSensitivity?: number;
3432
3444
  /** ☆☆☆☆ ✔ Example: "AE/AF Lock" */
3433
3445
  MovieAELockButtonAssignment?: string;
3446
+ /** ☆☆☆☆ ✔ Example: "Auto (People)" */
3447
+ MovieAFAreaMode?: string;
3434
3448
  /** ☆☆☆☆ ✔ Example: "4 (Normal)" */
3435
3449
  MovieAFTrackingSensitivity?: string;
3436
- /** ☆☆☆☆ ✔ Example: "White Balance" */
3450
+ /** ☆☆☆☆ ✔ Example: "Zoom (Low)" */
3437
3451
  MovieFunc1Button?: string;
3438
3452
  /** ☆☆☆☆ ✔ Example: "Zoom (1:1)" */
3439
3453
  MovieFunc2Button?: string;
@@ -3447,7 +3461,7 @@ export interface MakerNotesTags {
3447
3461
  MovieHighlightDisplayThreshold?: number;
3448
3462
  /** ☆☆☆☆ ✔ Example: "On" */
3449
3463
  MovieISOAutoControlManualMode?: string;
3450
- /** ☆☆☆☆ ✔ Example: "Unknown (33)" */
3464
+ /** ☆☆☆☆ ✔ Example: "ISO 6400" */
3451
3465
  MovieISOAutoHiLimit?: string;
3452
3466
  /** ☆☆☆☆ ✔ Example: "Center Focus Point" */
3453
3467
  MovieMultiSelector?: string;
@@ -3461,6 +3475,8 @@ export interface MakerNotesTags {
3461
3475
  MovieSubSelectorAssignment?: string;
3462
3476
  /** ☆☆☆☆ ✔ Example: "None" */
3463
3477
  MovieSubSelectorAssignmentPlusDials?: string;
3478
+ /** ☆☆☆☆ ✔ Example: "Yes" */
3479
+ MovieWhiteBalanceSameAsPhoto?: string;
3464
3480
  /** ☆☆☆☆ ✔ Example: "Off" */
3465
3481
  MultiControllerWhileMetering?: string;
3466
3482
  /** ☆☆☆☆ ✔ Example: "n/a" */
@@ -3990,6 +4006,8 @@ export interface MakerNotesTags {
3990
4006
  /** ☆☆☆☆ ✔ Example: 3 */
3991
4007
  SaturationUserDef3?: number;
3992
4008
  /** ☆☆☆☆ ✔ Example: "Off" */
4009
+ SaveFocus?: string;
4010
+ /** ☆☆☆☆ ✔ Example: "Off" */
3993
4011
  ScanImageEnhancer?: string;
3994
4012
  /** ☆☆☆☆ ✔ Example: "Two-Shot" */
3995
4013
  SceneAssist?: string;
@@ -4173,7 +4191,7 @@ export interface MakerNotesTags {
4173
4191
  ShutterSpeedSetting?: string;
4174
4192
  /** ☆☆☆☆ ✔ Example: "Normal" */
4175
4193
  ShutterType?: string;
4176
- /** ☆☆☆☆ ✔ Example: "Off" */
4194
+ /** ☆☆☆☆ ✔ Example: "On" */
4177
4195
  SilentPhotography?: string;
4178
4196
  /** ☆☆☆☆ ✔ Example: "Low" */
4179
4197
  SingleFrameBracketing?: string;
package/dist/Timezones.js CHANGED
@@ -62,9 +62,12 @@ function extractOffset(tz) {
62
62
  if ((0, String_1.isString)(tz) && luxon_1.Info.isValidIANAZone(tz)) {
63
63
  return { tz, src: "validIANAZone" };
64
64
  }
65
- return (0, Maybe_1.map)(tzRe.exec(tz), (m) => (0, Maybe_1.map)(offsetMinutesToZoneName((m[1] === "-" ? -1 : 1) *
66
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
67
- (parseInt(m[2]) * 60 + parseInt((0, Maybe_1.orElse)(m[3], "0")))), (ea) => ({ tz: ea, src: "offsetMinutesToZoneName" })));
65
+ return (0, Maybe_1.map)(tzRe.exec(tz), (m) => {
66
+ var _a;
67
+ return (0, Maybe_1.map)(offsetMinutesToZoneName((m[1] === "-" ? -1 : 1) *
68
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
69
+ (parseInt(m[2]) * 60 + parseInt((_a = m[3]) !== null && _a !== void 0 ? _a : "0"))), (ea) => ({ tz: ea, src: "offsetMinutesToZoneName" }));
70
+ });
68
71
  }
69
72
  exports.extractOffset = extractOffset;
70
73
  function extractTzOffsetFromTags(t) {
@@ -1 +1 @@
1
- {"version":3,"file":"Timezones.js","sourceRoot":"","sources":["../src/Timezones.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Timezones.js","sourceRoot":"","sources":["../src/Timezones.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ export declare class WriteTask extends ExifToolTask<void> {
4
4
  readonly sourceFile: string;
5
5
  readonly args: string[];
6
6
  private constructor();
7
- static for(filename: string, tags: WriteTags, optionalArgs?: string[]): WriteTask;
7
+ static for(filename: string, tags: WriteTags, optionalArgs?: string[]): Promise<WriteTask | ExifToolTask<void>>;
8
8
  toString(): string;
9
- protected parse(data: string, err: Error): void;
9
+ protected parse(data: string, error: Error): void;
10
10
  }
package/dist/WriteTask.js CHANGED
@@ -21,12 +21,16 @@ var __importStar = (this && this.__importStar) || function (mod) {
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.WriteTask = void 0;
23
23
  const _path = __importStar(require("path"));
24
+ const Array_1 = require("./Array");
24
25
  const DateTime_1 = require("./DateTime");
26
+ const DeleteAllTagsArgs_1 = require("./DeleteAllTagsArgs");
25
27
  const ExifToolTask_1 = require("./ExifToolTask");
28
+ const File_1 = require("./File");
26
29
  const Number_1 = require("./Number");
27
30
  const Object_1 = require("./Object");
28
31
  const String_1 = require("./String");
29
32
  const Struct_1 = require("./Struct");
33
+ const VersionTask_1 = require("./VersionTask");
30
34
  const successRE = /1 image files? (?:created|updated)/;
31
35
  const sep = String.fromCharCode(31); // unit separator
32
36
  // See https://exiftool.org/faq.html#Q10
@@ -73,9 +77,18 @@ class WriteTask extends ExifToolTask_1.ExifToolTask {
73
77
  this.sourceFile = sourceFile;
74
78
  this.args = args;
75
79
  }
76
- static for(filename, tags, optionalArgs = []) {
80
+ static async for(filename, tags, optionalArgs = []) {
77
81
  const sourceFile = _path.resolve(filename);
78
82
  const args = [...utfCharsetArgs];
83
+ // ExifTool complains "Nothing to write" if the task will only remove values
84
+ // and the file is missing.
85
+ if ((optionalArgs.length === 0 ||
86
+ (0, Array_1.shallowArrayEql)(optionalArgs, DeleteAllTagsArgs_1.DeleteAllTagsArgs)) &&
87
+ Object.values(tags).every((ea) => ea == null) &&
88
+ (await (0, File_1.isFileEmpty)(filename))) {
89
+ // no-op!
90
+ return new VersionTask_1.VersionTask();
91
+ }
79
92
  for (const key of (0, Object_1.keys)(tags)) {
80
93
  const val = tags[key];
81
94
  args.push(`-${key}=${enc(val)}`);
@@ -88,9 +101,10 @@ class WriteTask extends ExifToolTask_1.ExifToolTask {
88
101
  toString() {
89
102
  return "WriteTask(" + this.sourceFile + ")";
90
103
  }
91
- parse(data, err) {
92
- if (err != null)
93
- throw err;
104
+ parse(data, error) {
105
+ // console.log(this.toString() + ".parse()", { data, error })
106
+ if (error != null)
107
+ throw error;
94
108
  if (this.errors.length > 0)
95
109
  throw new Error(this.errors.join(";"));
96
110
  data = data.trim();
@@ -1 +1 @@
1
- {"version":3,"file":"WriteTask.js","sourceRoot":"","sources":["../src/WriteTask.ts"],"names":[],"mappings":"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"}
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": "15.6.0",
3
+ "version": "15.9.1",
4
4
  "description": "Efficient, cross-platform access to ExifTool",
5
5
  "main": "./dist/ExifTool.js",
6
6
  "types": "./dist/ExifTool.d.ts",
@@ -68,53 +68,53 @@
68
68
  ]
69
69
  },
70
70
  "devDependencies": {
71
- "@types/chai": "^4.2.22",
71
+ "@types/chai": "^4.3.0",
72
72
  "@types/chai-as-promised": "^7.1.4",
73
73
  "@types/chai-subset": "^1.3.3",
74
74
  "@types/fs-extra": "^9.0.13",
75
75
  "@types/globule": "^1.1.4",
76
76
  "@types/he": "^1.1.2",
77
- "@types/luxon": "^2.0.5",
77
+ "@types/luxon": "^2.0.8",
78
78
  "@types/mocha": "^9.0.0",
79
- "@types/node": "^16.11.6",
79
+ "@types/node": "^17.0.2",
80
80
  "@types/progress": "^2.0.5",
81
81
  "@types/rimraf": "^3.0.2",
82
82
  "@types/tar-fs": "^2.0.1",
83
- "@types/tmp": "^0.2.2",
83
+ "@types/tmp": "^0.2.3",
84
84
  "@types/xmldom": "^0.1.31",
85
- "@typescript-eslint/eslint-plugin": "^5.2.0",
86
- "@typescript-eslint/parser": "^5.2.0",
85
+ "@typescript-eslint/eslint-plugin": "^5.8.0",
86
+ "@typescript-eslint/parser": "^5.8.0",
87
87
  "chai": "^4.3.4",
88
88
  "chai-as-promised": "^7.1.1",
89
89
  "chai-subset": "^1.6.0",
90
- "eslint": "^8.1.0",
91
- "eslint-plugin-import": "^2.25.2",
90
+ "eslint": "^8.5.0",
91
+ "eslint-plugin-import": "^2.25.3",
92
92
  "eslint-plugin-node": "^11.1.0",
93
93
  "extract-zip": "^2.0.1",
94
94
  "fs-extra": "^10.0.0",
95
95
  "globule": "^1.3.3",
96
96
  "mocha": "^9.1.3",
97
97
  "npm-run-all": "^4.1.5",
98
- "prettier": "^2.4.1",
98
+ "prettier": "^2.5.1",
99
99
  "progress": "^2.0.3",
100
100
  "rimraf": "^3.0.2",
101
- "serve": "^12.0.1",
102
- "source-map-support": "^0.5.20",
101
+ "serve": "^13.0.2",
102
+ "source-map-support": "^0.5.21",
103
103
  "tar-fs": "^2.1.1",
104
104
  "tmp": "^0.2.1",
105
- "typedoc": "^0.22.7",
106
- "typescript": "^4.4.4",
107
- "@xmldom/xmldom": "^0.7.5",
105
+ "typedoc": "^0.22.10",
106
+ "typescript": "^4.5.4",
107
+ "@xmldom/xmldom": "^0.8.0",
108
108
  "xpath": "^0.0.32"
109
109
  },
110
110
  "dependencies": {
111
- "batch-cluster": "^7.2.1",
111
+ "batch-cluster": "^8.0.1",
112
112
  "he": "^1.2.0",
113
- "luxon": "^2.0.2",
113
+ "luxon": "^2.2.0",
114
114
  "tz-lookup": "^6.1.25"
115
115
  },
116
116
  "optionalDependencies": {
117
- "exiftool-vendored.exe": "12.34.0",
118
- "exiftool-vendored.pl": "12.34.0"
117
+ "exiftool-vendored.exe": "12.38.0",
118
+ "exiftool-vendored.pl": "12.38.0"
119
119
  }
120
120
  }