exiftool-vendored 28.8.0 → 29.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/CHANGELOG.md +40 -4
  2. package/README.md +22 -22
  3. package/SECURITY.md +1 -2
  4. package/dist/Array.d.ts +4 -4
  5. package/dist/Array.js +8 -10
  6. package/dist/Array.js.map +1 -1
  7. package/dist/AsyncRetry.js.map +1 -1
  8. package/dist/BinaryExtractionTask.d.ts +4 -2
  9. package/dist/BinaryExtractionTask.js +8 -5
  10. package/dist/BinaryExtractionTask.js.map +1 -1
  11. package/dist/BinaryField.js +2 -0
  12. package/dist/BinaryField.js.map +1 -1
  13. package/dist/BinaryToBufferTask.js +5 -5
  14. package/dist/BinaryToBufferTask.js.map +1 -1
  15. package/dist/Boolean.d.ts +1 -1
  16. package/dist/Boolean.js.map +1 -1
  17. package/dist/CapturedAtTagNames.js.map +1 -1
  18. package/dist/CoordinateParser.d.ts +59 -0
  19. package/dist/CoordinateParser.js +286 -0
  20. package/dist/CoordinateParser.js.map +1 -0
  21. package/dist/DateTime.d.ts +1 -1
  22. package/dist/DateTime.js +4 -5
  23. package/dist/DateTime.js.map +1 -1
  24. package/dist/DefaultCreateDateTagNames.js.map +1 -1
  25. package/dist/DefaultExifToolOptions.js +20 -7
  26. package/dist/DefaultExifToolOptions.js.map +1 -1
  27. package/dist/DefaultExiftoolArgs.js.map +1 -1
  28. package/dist/DefaultMaxProcs.js +17 -7
  29. package/dist/DefaultMaxProcs.js.map +1 -1
  30. package/dist/DeleteAllTagsArgs.js.map +1 -1
  31. package/dist/ErrorsAndWarnings.d.ts +5 -1
  32. package/dist/ErrorsAndWarnings.js +11 -2
  33. package/dist/ErrorsAndWarnings.js.map +1 -1
  34. package/dist/ExifDate.js +7 -2
  35. package/dist/ExifDate.js.map +1 -1
  36. package/dist/ExifDateTime.d.ts +2 -2
  37. package/dist/ExifDateTime.js +63 -67
  38. package/dist/ExifDateTime.js.map +1 -1
  39. package/dist/ExifTime.js +19 -26
  40. package/dist/ExifTime.js.map +1 -1
  41. package/dist/ExifTool.d.ts +28 -24
  42. package/dist/ExifTool.js +97 -81
  43. package/dist/ExifTool.js.map +1 -1
  44. package/dist/ExifToolOptions.d.ts +8 -0
  45. package/dist/ExifToolOptions.js.map +1 -1
  46. package/dist/ExifToolTags.js +0 -1
  47. package/dist/ExifToolTags.js.map +1 -1
  48. package/dist/ExifToolTask.js +38 -33
  49. package/dist/ExifToolTask.js.map +1 -1
  50. package/dist/ExifToolVendoredTags.js.map +1 -1
  51. package/dist/ExiftoolPath.js +27 -12
  52. package/dist/ExiftoolPath.js.map +1 -1
  53. package/dist/File.d.ts +2 -0
  54. package/dist/File.js +16 -1
  55. package/dist/File.js.map +1 -1
  56. package/dist/FileTags.d.ts +3 -2
  57. package/dist/FileTags.js +3 -2
  58. package/dist/FileTags.js.map +1 -1
  59. package/dist/FilenameCharsetArgs.js.map +1 -1
  60. package/dist/FirstDateTime.js +1 -1
  61. package/dist/FirstDateTime.js.map +1 -1
  62. package/dist/GPS.d.ts +18 -0
  63. package/dist/GPS.js +116 -0
  64. package/dist/GPS.js.map +1 -0
  65. package/dist/GeoTz.js.map +1 -1
  66. package/dist/GeolocationTags.d.ts +1 -1
  67. package/dist/GeolocationTags.js +16 -14
  68. package/dist/GeolocationTags.js.map +1 -1
  69. package/dist/IsWarning.js.map +1 -1
  70. package/dist/IsWin32.js +17 -7
  71. package/dist/IsWin32.js.map +1 -1
  72. package/dist/JSON.js +4 -1
  73. package/dist/JSON.js.map +1 -1
  74. package/dist/Lazy.js +2 -1
  75. package/dist/Lazy.js.map +1 -1
  76. package/dist/Maybe.js.map +1 -1
  77. package/dist/Number.d.ts +18 -3
  78. package/dist/Number.js +36 -1
  79. package/dist/Number.js.map +1 -1
  80. package/dist/Object.d.ts +4 -4
  81. package/dist/Object.js +8 -8
  82. package/dist/Object.js.map +1 -1
  83. package/dist/OnlyZerosRE.js.map +1 -1
  84. package/dist/Pick.js.map +1 -1
  85. package/dist/ReadRawTask.js +20 -8
  86. package/dist/ReadRawTask.js.map +1 -1
  87. package/dist/ReadTask.d.ts +1 -1
  88. package/dist/ReadTask.js +233 -264
  89. package/dist/ReadTask.js.map +1 -1
  90. package/dist/ResourceEvent.d.ts +1 -1
  91. package/dist/ResourceEvent.js +1 -1
  92. package/dist/ResourceEvent.js.map +1 -1
  93. package/dist/RewriteAllTagsTask.js +19 -9
  94. package/dist/RewriteAllTagsTask.js.map +1 -1
  95. package/dist/Sidecars.js.map +1 -1
  96. package/dist/String.d.ts +8 -4
  97. package/dist/String.js +7 -3
  98. package/dist/String.js.map +1 -1
  99. package/dist/Struct.d.ts +1 -1
  100. package/dist/Struct.js +1 -2
  101. package/dist/Struct.js.map +1 -1
  102. package/dist/Tags.d.ts +154 -152
  103. package/dist/TimeParsing.js +6 -8
  104. package/dist/TimeParsing.js.map +1 -1
  105. package/dist/Times.d.ts +6 -0
  106. package/dist/Times.js +7 -3
  107. package/dist/Times.js.map +1 -1
  108. package/dist/Timezones.d.ts +5 -4
  109. package/dist/Timezones.js +71 -41
  110. package/dist/Timezones.js.map +1 -1
  111. package/dist/Version.d.ts +1 -1
  112. package/dist/Version.js +1 -1
  113. package/dist/Version.js.map +1 -1
  114. package/dist/VersionTask.js +1 -1
  115. package/dist/VersionTask.js.map +1 -1
  116. package/dist/Which.js.map +1 -1
  117. package/dist/WriteTags.d.ts +6 -1
  118. package/dist/WriteTask.js +71 -25
  119. package/dist/WriteTask.js.map +1 -1
  120. package/eslint.config.mjs +34 -0
  121. package/package.json +21 -19
@@ -18,8 +18,9 @@ export declare const UnsetZone: Zone<boolean>;
18
18
  * Zone instances with this name are a placeholder for being "unset".
19
19
  */
20
20
  export declare const UnsetZoneName: string;
21
- export declare function isUTC(zone: Maybe<Zone | string | number>): boolean;
21
+ export declare function isUTC(zone: unknown): boolean;
22
22
  export declare function isZoneValid(zone: Maybe<Zone>): zone is Zone;
23
+ export declare function isZone(zone: unknown): zone is Zone;
23
24
  /**
24
25
  * If `tzSource` matches this value, the tags are from a video, and we had to
25
26
  * resort to assuming time fields are in UTC.
@@ -30,7 +31,7 @@ export declare const defaultVideosToUTC = "defaultVideosToUTC";
30
31
  * @param input must be either a number, which is the offset in minutes, or a
31
32
  * string in the format "UTC+H" or "UTC+HH:mm"
32
33
  */
33
- export declare function normalizeZone(input: Maybe<string | number | Zone>): Maybe<Zone>;
34
+ export declare function normalizeZone(input: unknown): Maybe<Zone>;
34
35
  /**
35
36
  * @param ts must be provided if the zone is not a fixed offset
36
37
  * @return the zone offset (in "±HH:MM" format) for the given zone, or "" if
@@ -59,10 +60,10 @@ export interface TzSrc {
59
60
  *
60
61
  * @return undefined if the value cannot be parsed as a valid timezone offset
61
62
  */
62
- export declare function extractZone(value: any, opts?: {
63
+ export declare function extractZone(value: unknown, opts?: {
63
64
  stripTZA?: boolean;
64
65
  }): Maybe<TzSrc>;
65
- export declare const TimezoneOffsetTagnames: readonly ["TimeZone", "OffsetTime", "OffsetTimeOriginal", "OffsetTimeDigitized", "TimeZoneOffset", "GeolocationTimeZone"];
66
+ export declare const TimezoneOffsetTagnames: readonly ["TimeZone", "OffsetTimeOriginal", "OffsetTimeDigitized", "TimeZoneOffset"];
66
67
  export declare function incrementZone(z: string | Zone | number, minutes: number): Maybe<Zone>;
67
68
  export declare function extractTzOffsetFromTags(t: Tags, opts?: Pick<ExifToolOptions, "adjustTimeZoneIfDaylightSavings">): Maybe<TzSrc>;
68
69
  export declare function extractTzOffsetFromDatestamps(t: Tags, opts: Partial<Pick<ExifToolOptions, "inferTimezoneFromDatestamps" | "inferTimezoneFromDatestampTags">>): Maybe<TzSrc>;
package/dist/Timezones.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TimezoneOffsetTagnames = exports.defaultVideosToUTC = exports.UnsetZoneName = exports.UnsetZone = exports.UnsetZoneOffsetMinutes = void 0;
4
4
  exports.isUTC = isUTC;
5
5
  exports.isZoneValid = isZoneValid;
6
+ exports.isZone = isZone;
6
7
  exports.normalizeZone = normalizeZone;
7
8
  exports.zoneToShortOffset = zoneToShortOffset;
8
9
  exports.validTzOffsetMinutes = validTzOffsetMinutes;
@@ -27,6 +28,7 @@ const ExifTime_1 = require("./ExifTime");
27
28
  const Lazy_1 = require("./Lazy");
28
29
  const Maybe_1 = require("./Maybe");
29
30
  const Number_1 = require("./Number");
31
+ const Object_1 = require("./Object");
30
32
  const Pick_1 = require("./Pick");
31
33
  const String_1 = require("./String");
32
34
  // Unique values from
@@ -123,53 +125,79 @@ const Zulus = [
123
125
  "UTC+0",
124
126
  "GMT+0",
125
127
  "UTC+00:00",
126
- // ...sigh, so much for "normalizeZone"...
128
+ "GMT+00:00",
127
129
  ];
128
130
  function isUTC(zone) {
129
- var _a;
130
- const z = zone;
131
- return (zone != null && (Zulus.includes(z) || Zulus.includes((_a = z.zoneName) !== null && _a !== void 0 ? _a : z.fixed)));
131
+ if (zone == null) {
132
+ return false;
133
+ }
134
+ if (typeof zone === "string" || typeof zone === "number") {
135
+ return Zulus.includes(zone);
136
+ }
137
+ if (zone instanceof luxon_1.Zone) {
138
+ return zone.isUniversal && zone.offset(Date.now()) === 0;
139
+ }
140
+ return false;
132
141
  }
133
142
  function isZoneValid(zone) {
134
143
  return (zone != null && zone.isValid && Math.abs(zone.offset(Date.now())) < 14 * 60);
135
144
  }
145
+ function isZone(zone) {
146
+ return (0, Object_1.isObject)(zone) && zone instanceof luxon_1.Zone;
147
+ }
136
148
  /**
137
149
  * If `tzSource` matches this value, the tags are from a video, and we had to
138
150
  * resort to assuming time fields are in UTC.
139
151
  * @see https://github.com/photostructure/exiftool-vendored.js/issues/113
140
152
  */
141
153
  exports.defaultVideosToUTC = "defaultVideosToUTC";
142
- // https://en.wikipedia.org/wiki/List_of_tz_database_time_zones -- not that
154
+ // https://en.wikipedia.org/wiki/List_of_tz_database_time_zones -- note that
143
155
  // "WET" and "W-SU" are full TZs (!!!), and "America/Indiana/Indianapolis" is
144
156
  // also a thing.
145
157
  const IanaFormatRE = /^\w{2,15}(?:\/\w{3,15}){0,2}$/;
146
158
  // Luxon requires fixed-offset zones to look like "UTC+H", "UTC-H",
147
159
  // "UTC+H:mm", "UTC-H:mm":
148
- const FixedFormatRE = /^UTC[+-]\d{1,2}(?::\d\d)?$/;
160
+ const FixedFormatRE = /^UTC(?<sign>[+-])(?<hours>\d+)(?::(?<minutes>\d{2}))?$/;
161
+ function parseFixedOffset(str) {
162
+ const match = FixedFormatRE.exec(str)?.groups;
163
+ if (match == null)
164
+ return;
165
+ const h = (0, Number_1.toInt)(match.hours);
166
+ const m = (0, Number_1.toInt)(match.minutes) ?? 0;
167
+ if (h == null || h < 0 || h > 14 || m < 0 || m >= 60)
168
+ return;
169
+ const result = (match.sign === "-" ? -1 : 1) * (h * 60 + m);
170
+ return (ValidOffsetMinutes().has(result) ? result : undefined) ?? undefined;
171
+ }
149
172
  /**
150
173
  * @param input must be either a number, which is the offset in minutes, or a
151
174
  * string in the format "UTC+H" or "UTC+HH:mm"
152
175
  */
153
176
  function normalizeZone(input) {
177
+ if (input == null ||
178
+ (0, String_1.blank)(input) ||
179
+ (!(0, Number_1.isNumber)(input) && !(0, String_1.isString)(input) && !isZone(input))) {
180
+ return;
181
+ }
154
182
  // wrapped in a try/catch as Luxon.settings.throwOnInvalid may be true:
155
183
  try {
156
- // Info.normalizeZone returns the system zone if the input is null or
157
- // blank (!!!), but we want to return undefined instead:
158
- if ((0, String_1.blank)(input))
159
- return undefined;
160
- if (input instanceof luxon_1.Zone) {
161
- return isZoneValid(input) ? input : undefined;
162
- }
163
184
  // This test and short-circuit may not be necessary, but it's cheap and
164
185
  // explicit:
165
186
  if (isUTC(input))
166
187
  return luxon_1.FixedOffsetZone.utcInstance;
167
188
  let z = input;
168
- if (typeof z === "string") {
169
- z = z.replace(/^(?:Zulu|Z|GMT)(?:\b|$)/, "UTC");
189
+ if ((0, String_1.isString)(z)) {
190
+ let s = z;
191
+ z = s = s.replace(/^(?:Zulu|Z|GMT)(?:\b|$)/i, "UTC");
170
192
  // We also don't need to tease Info.normalizeZone with obviously
171
193
  // non-offset inputs:
172
- if ((0, String_1.blank)(z) || (!IanaFormatRE.test(z) && !FixedFormatRE.test(z))) {
194
+ if ((0, String_1.blank)(s))
195
+ return;
196
+ const fixed = parseFixedOffset(s);
197
+ if (fixed != null) {
198
+ return luxon_1.Info.normalizeZone(fixed);
199
+ }
200
+ if (!IanaFormatRE.test(s)) {
173
201
  return;
174
202
  }
175
203
  }
@@ -188,8 +216,7 @@ function normalizeZone(input) {
188
216
  * the zone is invalid
189
217
  */
190
218
  function zoneToShortOffset(zone, ts) {
191
- var _a, _b;
192
- return (_b = (_a = normalizeZone(zone)) === null || _a === void 0 ? void 0 : _a.formatOffset(ts !== null && ts !== void 0 ? ts : Date.now(), "short")) !== null && _b !== void 0 ? _b : "";
219
+ return normalizeZone(zone)?.formatOffset(ts ?? Date.now(), "short") ?? "";
193
220
  }
194
221
  function validTzOffsetMinutes(tzOffsetMinutes) {
195
222
  return (tzOffsetMinutes != null &&
@@ -241,7 +268,6 @@ function extractOffsetFromHours(hourOffset) {
241
268
  * @return undefined if the value cannot be parsed as a valid timezone offset
242
269
  */
243
270
  function extractZone(value, opts) {
244
- var _a, _b;
245
271
  if (value == null ||
246
272
  typeof value === "boolean" ||
247
273
  value instanceof BinaryField_1.BinaryField ||
@@ -276,7 +302,7 @@ function extractZone(value, opts) {
276
302
  // Some EXIF datetime will "over-specify" and include both the utc offset
277
303
  // *and* the "time zone abbreviation"/TZA, like "PST" or "PDT". TZAs are
278
304
  // between 2 (AT) and 5 (WEST) characters.
279
- if ((opts === null || opts === void 0 ? void 0 : opts.stripTZA) !== false &&
305
+ if (opts?.stripTZA !== false &&
280
306
  // We only want to strip off the TZA if the input _doesn't_ end with "UTC"
281
307
  // or "Z"
282
308
  !/[.\d\s](?:UTC|Z)$/.test(str)) {
@@ -291,7 +317,7 @@ function extractZone(value, opts) {
291
317
  }
292
318
  }
293
319
  const match = tzRe.exec(str);
294
- const capturedGroups = match === null || match === void 0 ? void 0 : match.groups;
320
+ const capturedGroups = match?.groups;
295
321
  if (match != null && capturedGroups != null) {
296
322
  const leftovers = str.slice(0, match.index);
297
323
  if (capturedGroups.Z === "Z")
@@ -301,8 +327,8 @@ function extractZone(value, opts) {
301
327
  leftovers,
302
328
  };
303
329
  const offsetMinutes = (capturedGroups.sign === "-" ? -1 : 1) *
304
- (parseInt((_a = capturedGroups.hours) !== null && _a !== void 0 ? _a : "0") * 60 +
305
- parseInt((_b = capturedGroups.minutes) !== null && _b !== void 0 ? _b : "0"));
330
+ (parseInt(capturedGroups.hours ?? "0") * 60 +
331
+ parseInt(capturedGroups.minutes ?? "0"));
306
332
  const tz = offsetMinutesToZoneName(offsetMinutes);
307
333
  if (tz != null) {
308
334
  return { tz, src: "offsetMinutesToZoneName", leftovers };
@@ -312,7 +338,8 @@ function extractZone(value, opts) {
312
338
  }
313
339
  exports.TimezoneOffsetTagnames = [
314
340
  "TimeZone",
315
- "OffsetTime",
341
+ // We **don't** look at "OffsetTime", as that is the offset for `ModifyDate`,
342
+ // which is the _file_ modification time.
316
343
  // time zone for DateTimeOriginal, "-08:00"
317
344
  "OffsetTimeOriginal",
318
345
  // time zone for CreateDate, "-08:00"
@@ -323,18 +350,21 @@ exports.TimezoneOffsetTagnames = [
323
350
  // hours, 2. If present, the time zone offset of ModifyDate (which we
324
351
  // ignore) @see https://www.exiftool.org/TagNames/EXIF.html
325
352
  "TimeZoneOffset", // number | number[] | string
326
- "GeolocationTimeZone",
353
+ // We DON'T use "GeolocationTimezone" here, as at this layer in the glue
354
+ // factory we don't have access to the ExifTool option "ignoreZeroZeroLatLon"
327
355
  ];
328
356
  function incrementZone(z, minutes) {
329
357
  const norm = normalizeZone(z);
330
358
  if (norm == null || true !== norm.isUniversal)
331
359
  return;
332
360
  const fixed = norm.offset(Date.now()); // < arg doesn't matter, it's universal
333
- return (0, Number_1.isNumber)(fixed) ? luxon_1.FixedOffsetZone.instance(fixed + minutes) : undefined;
361
+ return (0, Number_1.isNumber)(fixed)
362
+ ? luxon_1.FixedOffsetZone.instance(fixed + minutes)
363
+ : undefined;
334
364
  }
335
365
  function extractTzOffsetFromTags(t, opts) {
336
- var _a;
337
- const adjustFn = (_a = opts === null || opts === void 0 ? void 0 : opts.adjustTimeZoneIfDaylightSavings) !== null && _a !== void 0 ? _a : DefaultExifToolOptions_1.defaultAdjustTimeZoneIfDaylightSavings;
366
+ const adjustFn = opts?.adjustTimeZoneIfDaylightSavings ??
367
+ DefaultExifToolOptions_1.defaultAdjustTimeZoneIfDaylightSavings;
338
368
  for (const tagName of exports.TimezoneOffsetTagnames) {
339
369
  const offset = extractZone(t[tagName]);
340
370
  if (offset == null)
@@ -355,9 +385,8 @@ function extractTzOffsetFromTags(t, opts) {
355
385
  return;
356
386
  }
357
387
  function extractTzOffsetFromDatestamps(t, opts) {
358
- var _a;
359
- if ((opts === null || opts === void 0 ? void 0 : opts.inferTimezoneFromDatestamps) === true) {
360
- for (const tagName of (_a = opts.inferTimezoneFromDatestampTags) !== null && _a !== void 0 ? _a : []) {
388
+ if (opts?.inferTimezoneFromDatestamps === true) {
389
+ for (const tagName of opts.inferTimezoneFromDatestampTags ?? []) {
361
390
  if (t[tagName] != null) {
362
391
  const offset = extractZone(t[tagName]);
363
392
  // Some applications (looking at you, Google Takeout) will add a
@@ -372,14 +401,16 @@ function extractTzOffsetFromDatestamps(t, opts) {
372
401
  return;
373
402
  }
374
403
  function extractTzOffsetFromTimeStamp(t, opts) {
375
- var _a;
376
- if ((opts === null || opts === void 0 ? void 0 : opts.inferTimezoneFromTimeStamp) !== true)
404
+ if (opts?.inferTimezoneFromTimeStamp !== true)
377
405
  return;
378
406
  const ts = ExifDateTime_1.ExifDateTime.from(t.TimeStamp);
379
407
  if (ts == null)
380
408
  return;
381
- for (const tagName of (_a = opts.inferTimezoneFromDatestampTags) !== null && _a !== void 0 ? _a : []) {
382
- const ea = ExifDateTime_1.ExifDateTime.from(t[tagName]);
409
+ for (const tagName of opts.inferTimezoneFromDatestampTags ?? []) {
410
+ const v = t[tagName];
411
+ if (!(0, String_1.isString)(v) && !(v instanceof ExifDateTime_1.ExifDateTime))
412
+ continue;
413
+ const ea = ExifDateTime_1.ExifDateTime.from(v);
383
414
  if (ea == null)
384
415
  continue;
385
416
  if (ea.zone != null) {
@@ -424,11 +455,10 @@ function extractTzOffsetFromUTCOffset(t) {
424
455
  "GPSDateTimeStamp",
425
456
  "SonyDateTime2",
426
457
  ], (tagName) => {
427
- var _a;
428
458
  const v = utcSources[tagName];
429
459
  const edt = v instanceof ExifDateTime_1.ExifDateTime ? v : ExifDateTime_1.ExifDateTime.fromExifStrict(v);
430
460
  const s = edt != null && (edt.zone == null || isUTC(edt.zone))
431
- ? (_a = edt.setZone("UTC", { keepLocalTime: true })) === null || _a === void 0 ? void 0 : _a.toEpochSeconds()
461
+ ? edt.setZone("UTC", { keepLocalTime: true })?.toEpochSeconds()
432
462
  : undefined;
433
463
  return s != null
434
464
  ? {
@@ -442,10 +472,9 @@ function extractTzOffsetFromUTCOffset(t) {
442
472
  // If we can find any of these without a zone, the timezone should be the
443
473
  // offset between this time and the GPS time.
444
474
  const dt = (0, Maybe_1.first)(CapturedAtTagNames_1.CapturedAtTagNames, (tagName) => {
445
- var _a;
446
475
  const edt = ExifDateTime_1.ExifDateTime.fromExifStrict(t[tagName]);
447
476
  const s = edt != null && edt.zone == null
448
- ? (_a = edt.setZone("UTC", { keepLocalTime: true })) === null || _a === void 0 ? void 0 : _a.toEpochSeconds()
477
+ ? edt.setZone("UTC", { keepLocalTime: true })?.toEpochSeconds()
449
478
  : undefined;
450
479
  return s != null
451
480
  ? {
@@ -471,8 +500,9 @@ function equivalentZones(a, b) {
471
500
  (az.equals(bz) || az.offset(Date.now()) === bz.offset(Date.now())));
472
501
  }
473
502
  function getZoneName(args = {}) {
474
- var _a, _b, _c, _d;
475
- const result = (_d = (_b = (_a = normalizeZone(args.zone)) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : (_c = normalizeZone(args.zoneName)) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : offsetMinutesToZoneName(args.tzoffsetMinutes);
503
+ const result = normalizeZone(args.zone)?.name ??
504
+ normalizeZone(args.zoneName)?.name ??
505
+ offsetMinutesToZoneName(args.tzoffsetMinutes);
476
506
  return (0, String_1.blank)(result) || result === exports.UnsetZoneName ? undefined : result;
477
507
  }
478
508
  //# sourceMappingURL=Timezones.js.map
@@ -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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"}
package/dist/Version.d.ts CHANGED
@@ -11,4 +11,4 @@ export interface Version {
11
11
  ModifyDate?: ExifDateTime | ExifDate | string;
12
12
  Version?: string;
13
13
  }
14
- export declare function isVersion(obj: any): obj is Version;
14
+ export declare function isVersion(obj: unknown): obj is Version;
package/dist/Version.js CHANGED
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isVersion = isVersion;
4
4
  const fields = ["Comments", "Event", "Modifier", "ModifyDate", "Version"];
5
5
  function isVersion(obj) {
6
- return obj != null && typeof obj === "object" && fields.every((f) => f in obj);
6
+ return (obj != null && typeof obj === "object" && fields.every((f) => f in obj));
7
7
  }
8
8
  //# sourceMappingURL=Version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Version.js","sourceRoot":"","sources":["../src/Version.ts"],"names":[],"mappings":";;AAiBA,8BAEC;AAJD,MAAM,MAAM,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAA;AAEzE,SAAgB,SAAS,CAAC,GAAQ;IAChC,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAA;AAChF,CAAC"}
1
+ {"version":3,"file":"Version.js","sourceRoot":"","sources":["../src/Version.ts"],"names":[],"mappings":";;AAiBA,8BAIC;AAND,MAAM,MAAM,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;AAE1E,SAAgB,SAAS,CAAC,GAAY;IACpC,OAAO,CACL,GAAG,IAAI,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CACxE,CAAC;AACJ,CAAC"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VersionTask = void 0;
4
4
  const ExifToolTask_1 = require("./ExifToolTask");
5
5
  class VersionTask extends ExifToolTask_1.ExifToolTask {
6
+ static versionRegex = /^\d{1,3}\.\d{1,3}(?:\.\d{1,3})?$/;
6
7
  constructor(options) {
7
8
  super(["-ver"], options);
8
9
  }
@@ -17,5 +18,4 @@ class VersionTask extends ExifToolTask_1.ExifToolTask {
17
18
  }
18
19
  }
19
20
  exports.VersionTask = VersionTask;
20
- VersionTask.versionRegex = /^\d{1,3}\.\d{1,3}(?:\.\d{1,3})?$/;
21
21
  //# sourceMappingURL=VersionTask.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VersionTask.js","sourceRoot":"","sources":["../src/VersionTask.ts"],"names":[],"mappings":";;;AAAA,iDAAkE;AAElE,MAAa,WAAY,SAAQ,2BAAoB;IAGnD,YAAY,OAA6B;QACvC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAA;IAC1B,CAAC;IAES,KAAK,CAAC,KAAa;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QAC1B,IAAI,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,OAAO,KAAK,CAAA;QACd,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;;AAdH,kCAeC;AAdyB,wBAAY,GAAG,kCAAkC,CAAA"}
1
+ {"version":3,"file":"VersionTask.js","sourceRoot":"","sources":["../src/VersionTask.ts"],"names":[],"mappings":";;;AAAA,iDAAmE;AAEnE,MAAa,WAAY,SAAQ,2BAAoB;IAC3C,MAAM,CAAU,YAAY,GAAG,kCAAkC,CAAC;IAE1E,YAAY,OAA6B;QACvC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3B,CAAC;IAES,KAAK,CAAC,KAAa;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC3B,IAAI,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;;AAdH,kCAeC"}
package/dist/Which.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Which.js","sourceRoot":"","sources":["../src/Which.ts"],"names":[],"mappings":";;AAQA,sBAYC;AApBD,qCAA+C;AAC/C,+CAAyC;AACzC,yCAAiE;AACjE,+CAAkC;AAClC,uCAAmC;AAEnC,qCAA8B;AAEvB,KAAK,UAAU,KAAK,CAAC,YAAoB;IAC9C,IAAI,IAAA,sBAAU,EAAC,YAAY,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,YAAY,CAAA;IACrB,CAAC;IACD,MAAM,IAAI,GAAG,IAAA,oBAAQ,EAAC,YAAY,CAAC,CAAA;IACnC,KAAK,MAAM,GAAG,IAAI,IAAA,YAAG,EAAC,kBAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,qBAAS,CAAC,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,IAAA,gBAAI,EAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAChC,IAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,OAAO,QAAQ,CAAA;QACjB,CAAC;IACH,CAAC;IACD,OAAM;AACR,CAAC;AAED,KAAK,UAAU,KAAK,CAAC,QAAgB;IACnC,IAAI,IAAA,iBAAO,GAAE;QAAE,OAAO,IAAA,oBAAU,EAAC,QAAQ,CAAC,CAAA;IAC1C,IAAI,CAAC;QACH,MAAM,IAAA,iBAAM,EAAC,QAAQ,EAAE,mBAAS,CAAC,IAAI,GAAG,mBAAS,CAAC,IAAI,CAAC,CAAA;QACvD,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"Which.js","sourceRoot":"","sources":["../src/Which.ts"],"names":[],"mappings":";;AAQA,sBAYC;AApBD,qCAAgD;AAChD,+CAA0C;AAC1C,yCAAkE;AAClE,+CAAmC;AACnC,uCAAoC;AAEpC,qCAA+B;AAExB,KAAK,UAAU,KAAK,CAAC,YAAoB;IAC9C,IAAI,IAAA,sBAAU,EAAC,YAAY,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,MAAM,IAAI,GAAG,IAAA,oBAAQ,EAAC,YAAY,CAAC,CAAC;IACpC,KAAK,MAAM,GAAG,IAAI,IAAA,YAAG,EAAC,kBAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,qBAAS,CAAC,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,IAAA,gBAAI,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO;AACT,CAAC;AAED,KAAK,UAAU,KAAK,CAAC,QAAgB;IACnC,IAAI,IAAA,iBAAO,GAAE;QAAE,OAAO,IAAA,oBAAU,EAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,IAAA,iBAAM,EAAC,QAAQ,EAAE,mBAAS,CAAC,IAAI,GAAG,mBAAS,CAAC,IAAI,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -31,4 +31,9 @@ export type MutableTags = Omit<Tags, keyof (ExifToolTags & FileTags & ErrorsAndW
31
31
  export type ExpandedDateTags = {
32
32
  [K in keyof MutableTags]: (MutableTags[K] extends ExifDateTime ? ExifDate | ExifDateTime : MutableTags[K]) | string;
33
33
  };
34
- export type WriteTags = DefinedOrNullValued<ShortcutTags & AdditionalWriteTags & ExpandedDateTags & StructAppendTags>;
34
+ export type WritableGPSRefs = {
35
+ GPSAltitudeRef?: string | number | null;
36
+ GPSLatitudeRef?: string | number | null;
37
+ GPSLongitudeRef?: string | number | null;
38
+ };
39
+ export type WriteTags = Omit<DefinedOrNullValued<ShortcutTags & AdditionalWriteTags & ExpandedDateTags & StructAppendTags>, keyof WritableGPSRefs> & WritableGPSRefs;
package/dist/WriteTask.js CHANGED
@@ -15,18 +15,29 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  Object.defineProperty(exports, "__esModule", { value: true });
26
36
  exports.WriteTask = exports.DefaultWriteTaskOptions = exports.WriteTaskOptionFields = void 0;
27
37
  exports.htmlEncode = htmlEncode;
28
38
  const he_1 = require("he");
29
39
  const _path = __importStar(require("node:path"));
40
+ const Array_1 = require("./Array");
30
41
  const DateTime_1 = require("./DateTime");
31
42
  const DefaultExifToolOptions_1 = require("./DefaultExifToolOptions");
32
43
  const ErrorsAndWarnings_1 = require("./ErrorsAndWarnings");
@@ -89,6 +100,9 @@ exports.DefaultWriteTaskOptions = {
89
100
  ...(0, Pick_1.pick)(DefaultExifToolOptions_1.DefaultExifToolOptions, ...exports.WriteTaskOptionFields),
90
101
  };
91
102
  class WriteTask extends ExifToolTask_1.ExifToolTask {
103
+ sourceFile;
104
+ args;
105
+ options;
92
106
  constructor(sourceFile, args, options) {
93
107
  super(args, options);
94
108
  this.sourceFile = sourceFile;
@@ -96,36 +110,69 @@ class WriteTask extends ExifToolTask_1.ExifToolTask {
96
110
  this.options = options;
97
111
  }
98
112
  static for(filename, tags, options) {
99
- var _a, _b, _c;
100
113
  const sourceFile = _path.resolve(filename);
101
114
  const args = [
115
+ // ensure exiftool thinks this is a write command:
102
116
  ...FilenameCharsetArgs_1.Utf8FilenameCharsetArgs,
103
117
  `-sep`,
104
118
  `${sep}`,
105
119
  "-E", // < html encoding https://exiftool.org/faq.html#Q10
106
120
  ];
107
121
  // "undef" doesn't work: but undef works the same as 2
108
- args.push("-api", "struct=" + ((0, Number_1.isNumber)(options === null || options === void 0 ? void 0 : options.struct) ? options.struct : "2"));
109
- if ((_a = options === null || options === void 0 ? void 0 : options.useMWG) !== null && _a !== void 0 ? _a : exports.DefaultWriteTaskOptions.useMWG) {
122
+ args.push("-api", "struct=" + ((0, Number_1.isNumber)(options?.struct) ? options.struct : "2"));
123
+ if (options?.useMWG ?? exports.DefaultWriteTaskOptions.useMWG) {
110
124
  args.push("-use", "MWG");
111
125
  }
112
126
  // Special handling for GPSLatitude and GPSLongitude (due to differences
113
127
  // in EXIF, XMP, and MIE encodings). See
114
128
  // https://exiftool.org/forum/index.php?topic=14488.0 and
115
129
  // https://github.com/photostructure/exiftool-vendored.js/issues/131
130
+ // See https://exiftool.org/TagNames/GPS.html
116
131
  if ((0, Number_1.isNumber)(tags.GPSLatitude)) {
117
- (_b = tags.GPSLatitudeRef) !== null && _b !== void 0 ? _b : (tags.GPSLatitudeRef = tags.GPSLatitude >= 0 ? "N" : "S");
132
+ // ExifTool will also accept a number when writing GPSLatitudeRef,
133
+ // positive for north latitudes or negative for south, or a string
134
+ // containing N, North, S or South)
135
+ tags.GPSLatitudeRef ??= tags.GPSLatitude;
136
+ }
137
+ else if (tags.GPSLatitude === null) {
138
+ tags.GPSLatitudeRef ??= null;
118
139
  }
119
140
  if ((0, Number_1.isNumber)(tags.GPSLongitude)) {
120
- (_c = tags.GPSLongitudeRef) !== null && _c !== void 0 ? _c : (tags.GPSLongitudeRef = tags.GPSLongitude >= 0 ? "E" : "W");
141
+ // ExifTool will also accept a number when writing this tag, positive
142
+ // for east longitudes or negative for west, or a string containing E,
143
+ // East, W or West
144
+ tags.GPSLongitudeRef ??= tags.GPSLongitude;
145
+ }
146
+ else if (tags.GPSLongitude === null) {
147
+ tags.GPSLongitudeRef ??= null;
121
148
  }
149
+ if ((0, Number_1.isNumber)(tags.GPSLatitude) && (0, Number_1.isNumber)(tags.GPSLongitude)) {
150
+ // Also set GPSPosition if both GPSLatitude and GPSLongitude are set to
151
+ // give ExifTool a hint that we're happy with it figuring out the correct
152
+ // group for this metadata
153
+ tags.GPSPosition = tags.GPSLatitude + "," + tags.GPSLongitude;
154
+ }
155
+ if ((0, Number_1.isNumber)(tags.GPSAltitude)) {
156
+ // ExifTool will also accept number when writing this tag, with negative
157
+ // numbers indicating below sea level
158
+ tags.GPSAltitudeRef ??= tags.GPSAltitude;
159
+ }
160
+ else if (tags.GPSAltitude === null) {
161
+ tags.GPSAltitudeRef ??= null;
162
+ }
163
+ const fieldsToSet = [];
122
164
  for (const key of (0, Object_1.keys)(tags)) {
123
165
  const val = tags[key];
124
- args.push(`-${key}=${enc(val)}`);
166
+ fieldsToSet.push(`-${key}=${enc(val)}`);
167
+ }
168
+ if (fieldsToSet.length === 0) {
169
+ // This is a hack to prevent ExifTool from thinking it should be in "read"
170
+ // mode, and not "write" mode. It _should_ be a no-op, but there are some
171
+ // cases that this can cause ExifTool to behave oddly, so we only apply it
172
+ // if we have no other fields to set.
173
+ fieldsToSet.push("-FileName<FileName");
125
174
  }
126
- if (options.writeArgs != null)
127
- args.push(...options.writeArgs);
128
- args.push(sourceFile);
175
+ args.push(...fieldsToSet, ...(0, Array_1.toArray)(options.writeArgs), sourceFile);
129
176
  return new WriteTask(sourceFile, args, options);
130
177
  }
131
178
  toString() {
@@ -134,34 +181,33 @@ class WriteTask extends ExifToolTask_1.ExifToolTask {
134
181
  // we're handling the stderr output ourselves, so we tell ExifToolTask that
135
182
  // all stderr output is not ignorable so we can capture the warnings
136
183
  parse(data, error) {
137
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
138
184
  if (error != null)
139
185
  throw error;
140
186
  let created = 0;
141
187
  let updated = 0;
142
188
  let unchanged = 0;
143
189
  for (const line of (0, String_1.splitLines)(data)) {
144
- const m_created = (_b = (_a = CreatedRE.exec(line)) === null || _a === void 0 ? void 0 : _a.groups) === null || _b === void 0 ? void 0 : _b.count;
190
+ const m_created = CreatedRE.exec(line)?.groups?.count;
145
191
  if (m_created != null) {
146
- created += (_c = (0, Number_1.toInt)(m_created)) !== null && _c !== void 0 ? _c : 0;
192
+ created += (0, Number_1.toInt)(m_created) ?? 0;
147
193
  continue;
148
194
  }
149
195
  // careful! we need to apply UnchangedRE before UpdateRE, as both match
150
196
  // "updated"
151
- const m_unchanged = (_e = (_d = UnchangedRE.exec(line)) === null || _d === void 0 ? void 0 : _d.groups) === null || _e === void 0 ? void 0 : _e.count;
197
+ const m_unchanged = UnchangedRE.exec(line)?.groups?.count;
152
198
  if (m_unchanged != null) {
153
- unchanged += (_f = (0, Number_1.toInt)(m_unchanged)) !== null && _f !== void 0 ? _f : 0;
199
+ unchanged += (0, Number_1.toInt)(m_unchanged) ?? 0;
154
200
  continue;
155
201
  }
156
- const m_updated = (_h = (_g = UpdatedRE.exec(line)) === null || _g === void 0 ? void 0 : _g.groups) === null || _h === void 0 ? void 0 : _h.count;
202
+ const m_updated = UpdatedRE.exec(line)?.groups?.count;
157
203
  if (m_updated != null) {
158
- updated += (_j = (0, Number_1.toInt)(m_updated)) !== null && _j !== void 0 ? _j : 0;
204
+ updated += (0, Number_1.toInt)(m_updated) ?? 0;
159
205
  continue;
160
206
  }
161
207
  // if we get here, we didn't match any of the expected patterns.
162
208
  this.warnings.push("Unexpected output from ExifTool: " + JSON.stringify(line));
163
209
  }
164
- const w = (_k = (0, ErrorsAndWarnings_1.errorsAndWarnings)(this).warnings) !== null && _k !== void 0 ? _k : [];
210
+ const w = (0, ErrorsAndWarnings_1.errorsAndWarnings)(this).warnings ?? [];
165
211
  return {
166
212
  created,
167
213
  updated,
@@ -171,7 +217,7 @@ class WriteTask extends ExifToolTask_1.ExifToolTask {
171
217
  }
172
218
  }
173
219
  exports.WriteTask = WriteTask;
174
- // "0 files created" | "0 file created" | "1 image files created"
220
+ // "0 files created" | "0 file created" | " 1 image files created"
175
221
  const CreatedRE = /(?<count>\d{1,5}) [\w ]{1,12}\bcreated$/i;
176
222
  const UnchangedRE = /(?<count>\d{1,5}) [\w ]{1,12}\b(?:weren't updated|unchanged)$/i;
177
223
  // "1 image files updated"