exiftool-vendored 28.4.1 → 28.5.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 CHANGED
@@ -25,6 +25,16 @@ vendored versions of ExifTool match the version that they vendor.
25
25
 
26
26
  ## Version history
27
27
 
28
+ ### v28.6.0
29
+
30
+ - 🌱 ExifTool upgraded to version [12.97](https://exiftool.org/history.html#12.97)
31
+
32
+ ### v28.5.0
33
+
34
+ - 🐞/📦 Add new `ExifToolOptions.preferTimezoneInferenceFromGps` to prefer GPS timezones. See the jsdoc for details.
35
+
36
+ - 🐞 Support triple-deep IANA timezones, like `America/Indiana/Indianapolis`.
37
+
28
38
  ### v28.4.1
29
39
 
30
40
  - 📦 The warning "Invalid GPSLatitude or GPSLongitude. Deleting geolocation tags" will only be added if `GPSLatitude` or `GPSLongitude` is non-null.
package/README.md CHANGED
@@ -9,36 +9,38 @@
9
9
 
10
10
  ## Features
11
11
 
12
- 1. **Best-of-class cross-platform performance and reliability**.
12
+ 1. **Best-of-class cross-platform performance and reliability**.
13
13
 
14
- This is the module that [PhotoStructure](https://photostructure.com) (and [500+](https://github.com/photostructure/exiftool-vendored.js/network/dependents) other projects) use for photo and video metadata reading and writing.
14
+ This is the module that [PhotoStructure](https://photostructure.com) (and [500+](https://github.com/photostructure/exiftool-vendored.js/network/dependents) other projects) use for photo and video metadata reading and writing.
15
15
 
16
- Expect [an order of magnitude faster performance](#performance) than other Node.js ExifTool modules.
16
+ Expect [an order of magnitude faster performance](#performance) than other Node.js ExifTool modules.
17
17
 
18
- 1. Best-effort extraction of
18
+ 1. Best-effort extraction of
19
19
 
20
- - **dates** with [correct timezone offset encoding](#dates)
21
- - **latitudes & longitudes** as floats (where negative values indicate west or south of the meridian)
20
+ - **dates** with [correct timezone offset encoding](#dates)
21
+ - **latitudes & longitudes** as floats (where negative values indicate west or south of the meridian)
22
22
 
23
- 1. Support for
23
+ 1. Support for
24
24
 
25
- - [reading tags](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#read)
26
- - extracting embedded binaries, like [thumbnail](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#extractThumbnail) and [preview](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#extractPreview) images
27
- - [writing tags](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#write)
28
- - [rescuing metadata](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#rewriteAllTags)
25
+ - [reading tags](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#read)
26
+ - extracting embedded binaries, like [thumbnail](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#extractThumbnail) and [preview](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#extractPreview) images
27
+ - [writing tags](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#write)
28
+ - [rescuing metadata](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#rewriteAllTags)
29
29
 
30
- 1. **[Robust type definitions](#tags)** of the top 99.5% tags used by over 6,000
31
- different camera makes and models (see an [example](https://photostructure.github.io/exiftool-vendored.js/interfaces/EXIFTags.html#CreateDate))
30
+ 1. **[Robust type definitions](#tags)** of the top 99.5% tags used by over 6,000
31
+ different camera makes and models (see an [example](https://photostructure.github.io/exiftool-vendored.js/interfaces/EXIFTags.html#CreateDate))
32
32
 
33
- 1. **Automated updates** to ExifTool ([as new versions come out
34
- frequently](https://exiftool.org/history.html))
33
+ 1. **Automated updates** to ExifTool ([as new versions come out
34
+ frequently](https://exiftool.org/history.html))
35
35
 
36
- 1. **Robust test coverage**, performed with on [macOS, Linux, and
37
- Windows](https://github.com/photostructure/exiftool-vendored.js/actions?query=workflow%3A%22Node.js+CI%22)
36
+ 1. **Robust test coverage**, performed with on [macOS, Linux, and
37
+ Windows](https://github.com/photostructure/exiftool-vendored.js/actions?query=workflow%3A%22Node.js+CI%22)
38
38
 
39
39
  ## Installation
40
40
 
41
- npm install --save exiftool-vendored
41
+ ```sh
42
+ npm install --save exiftool-vendored
43
+ ```
42
44
 
43
45
  ### Debug logging
44
46
 
@@ -108,6 +108,7 @@ exports.DefaultExifToolOptions = Object.freeze({
108
108
  readArgs: ["-fast"],
109
109
  writeArgs: [],
110
110
  adjustTimeZoneIfDaylightSavings: defaultAdjustTimeZoneIfDaylightSavings,
111
+ preferTimezoneInferenceFromGps: false, // to retain prior behavior
111
112
  });
112
113
  /**
113
114
  * @see https://github.com/photostructure/exiftool-vendored.js/issues/215
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultExifToolOptions.js","sourceRoot":"","sources":["../src/DefaultExifToolOptions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAsGA,wFASC;AA/GD,kDAAmC;AACnC,yCAAoC;AACpC,uCAAqC;AACrC,6DAAyD;AACzD,+DAA2D;AAC3D,uDAAmD;AAEnD,iDAA6C;AAC7C,mCAA+B;AAC/B,uCAAmC;AAGnC,+CAA2C;AAE3C,MAAM,SAAS,GAAG,IAAA,oBAAQ,EAAC,mBAAmB,CAAC,CAAA;AAC/C,SAAS,IAAI,KAAI,CAAC;AAEL,QAAA,aAAa,GAAc;IACtC,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,KAAK,EAAE,OAAO,CAAC,KAAK;CACrB,CAAA;AAED,SAAS,MAAM;IACb,OAAO,IAAA,oBAAQ,EAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAa,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAA;AAC5E,CAAC;AAED;;;GAGG;AACU,QAAA,sBAAsB,GAG/B,MAAM,CAAC,MAAM,CAAC;IAChB,GAAG,IAAI,EAAE,CAAC,mBAAmB,EAAE;IAC/B,QAAQ,EAAE,iCAAe;IACzB,kBAAkB,EAAE,GAAG;IACvB,kBAAkB,EAAE,KAAK;IACzB,yEAAyE;IACzE,iBAAiB,EAAE,KAAK;IACxB,oBAAoB,EAAE,IAAI;IAC1B,WAAW,EAAE,CAAC;IACd,YAAY,EAAZ,2BAAY;IACZ,YAAY,EAAE,yCAAmB;IACjC,WAAW,EAAE,EAAE;IACf,SAAS,EAAE,CAAC,IAAA,iBAAO,GAAE;IACrB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,qBAAqB;IAClC,cAAc,EAAE,IAAI,yBAAW,EAAE,CAAC,OAAO;IACzC,yBAAyB,EAAE,KAAK;IAChC,kBAAkB,EAAE,kBAAkB;IAEtC,iBAAiB,EAAE,IAAI;IACvB,kBAAkB,EAAE,IAAI;IACxB,KAAK,EAAE,aAAK;IACZ,WAAW,EAAE,KAAK;IAClB,oBAAoB,EAAE,IAAI;IAC1B,iBAAiB,EAAE,IAAI;IACvB,aAAa,EAAE,KAAK;IACpB,mBAAmB,EAAE,SAAS;IAC9B,2BAA2B,EAAE,KAAK,EAAE,2BAA2B;IAC/D,8BAA8B,EAAE,CAAC,GAAG,uCAAkB,CAAC;IACvD,0BAA0B,EAAE,KAAK,EAAE,2BAA2B;IAC9D,MAAM;IACN,WAAW,EAAE;QACX,YAAY;QACZ,aAAa;QACb,aAAa;QACb,cAAc;QACd,aAAa;QACb,aAAa;QACb,2EAA2E;QAC3E,mFAAmF;QACnF,6CAA6C;QAE7C,qDAAqD;QACrD,KAAK;QACL,gCAAgC;QAChC,kCAAkC;QAClC,KAAK;QAEL,uDAAuD;QACvD,KAAK;QACL,yDAAyD;QACzD,mCAAmC;QACnC,KAAK;KACN;IACD,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,SAAS,EAAE,EAAE;IAEb,+BAA+B,EAAE,sCAAsC;CACxE,CAAC,CAAA;AAEF;;GAEG;AACH,SAAgB,sCAAsC,CACpD,CAAO;IAEP,4CAA4C;IAC5C,OAAO,IAAI,KAAK,IAAA,mBAAS,EAAC,CAAC,CAAC,eAAe,CAAC;QAC1C,2EAA2E;QAC3E,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,SAAS,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"DefaultExifToolOptions.js","sourceRoot":"","sources":["../src/DefaultExifToolOptions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAwGA,wFASC;AAjHD,kDAAmC;AACnC,yCAAoC;AACpC,uCAAqC;AACrC,6DAAyD;AACzD,+DAA2D;AAC3D,uDAAmD;AAEnD,iDAA6C;AAC7C,mCAA+B;AAC/B,uCAAmC;AAGnC,+CAA2C;AAE3C,MAAM,SAAS,GAAG,IAAA,oBAAQ,EAAC,mBAAmB,CAAC,CAAA;AAC/C,SAAS,IAAI,KAAI,CAAC;AAEL,QAAA,aAAa,GAAc;IACtC,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,OAAO,CAAC,IAAI;IAClB,KAAK,EAAE,OAAO,CAAC,KAAK;CACrB,CAAA;AAED,SAAS,MAAM;IACb,OAAO,IAAA,oBAAQ,EAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAa,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAA;AAC5E,CAAC;AAED;;;GAGG;AACU,QAAA,sBAAsB,GAG/B,MAAM,CAAC,MAAM,CAAC;IAChB,GAAG,IAAI,EAAE,CAAC,mBAAmB,EAAE;IAC/B,QAAQ,EAAE,iCAAe;IACzB,kBAAkB,EAAE,GAAG;IACvB,kBAAkB,EAAE,KAAK;IACzB,yEAAyE;IACzE,iBAAiB,EAAE,KAAK;IACxB,oBAAoB,EAAE,IAAI;IAC1B,WAAW,EAAE,CAAC;IACd,YAAY,EAAZ,2BAAY;IACZ,YAAY,EAAE,yCAAmB;IACjC,WAAW,EAAE,EAAE;IACf,SAAS,EAAE,CAAC,IAAA,iBAAO,GAAE;IACrB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,qBAAqB;IAClC,cAAc,EAAE,IAAI,yBAAW,EAAE,CAAC,OAAO;IACzC,yBAAyB,EAAE,KAAK;IAChC,kBAAkB,EAAE,kBAAkB;IAEtC,iBAAiB,EAAE,IAAI;IACvB,kBAAkB,EAAE,IAAI;IACxB,KAAK,EAAE,aAAK;IACZ,WAAW,EAAE,KAAK;IAClB,oBAAoB,EAAE,IAAI;IAC1B,iBAAiB,EAAE,IAAI;IACvB,aAAa,EAAE,KAAK;IACpB,mBAAmB,EAAE,SAAS;IAC9B,2BAA2B,EAAE,KAAK,EAAE,2BAA2B;IAC/D,8BAA8B,EAAE,CAAC,GAAG,uCAAkB,CAAC;IACvD,0BAA0B,EAAE,KAAK,EAAE,2BAA2B;IAC9D,MAAM;IACN,WAAW,EAAE;QACX,YAAY;QACZ,aAAa;QACb,aAAa;QACb,cAAc;QACd,aAAa;QACb,aAAa;QACb,2EAA2E;QAC3E,mFAAmF;QACnF,6CAA6C;QAE7C,qDAAqD;QACrD,KAAK;QACL,gCAAgC;QAChC,kCAAkC;QAClC,KAAK;QAEL,uDAAuD;QACvD,KAAK;QACL,yDAAyD;QACzD,mCAAmC;QACnC,KAAK;KACN;IACD,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,SAAS,EAAE,EAAE;IAEb,+BAA+B,EAAE,sCAAsC;IAEvE,8BAA8B,EAAE,KAAK,EAAE,2BAA2B;CACnE,CAAC,CAAA;AAEF;;GAEG;AACH,SAAgB,sCAAsC,CACpD,CAAO;IAEP,4CAA4C;IAC5C,OAAO,IAAI,KAAK,IAAA,mBAAS,EAAC,CAAC,CAAC,eAAe,CAAC;QAC1C,2EAA2E;QAC3E,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,SAAS,CAAA;AACf,CAAC"}
@@ -5,6 +5,7 @@ import { ErrorsAndWarnings } from "./ErrorsAndWarnings";
5
5
  import { ExifToolOptions } from "./ExifToolOptions";
6
6
  import { ExifToolTask, ExifToolTaskOptions } from "./ExifToolTask";
7
7
  import { ExifToolVendoredTags } from "./ExifToolVendoredTags";
8
+ import { GeolocationTags } from "./GeolocationTags";
8
9
  import { ICCProfileTags } from "./ICCProfileTags";
9
10
  import { IPTCApplicationRecordTags } from "./IPTCApplicationRecordTags";
10
11
  import { ImageDataHashTag } from "./ImageDataHashTag";
@@ -17,7 +18,7 @@ import { ReadTaskOptions } from "./ReadTask";
17
18
  import { ResourceEvent } from "./ResourceEvent";
18
19
  import { ShortcutTags } from "./ShortcutTags";
19
20
  import { Struct } from "./Struct";
20
- import { APPTags, CompositeTags, EXIFTags, ExifToolTags, FileTags, FlashPixTags, GeolocationTags, IPTCTags, JFIFTags, MPFTags, MakerNotesTags, MetaTags, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, RIFFTags, Tags, XMPTags } from "./Tags";
21
+ import { APPTags, CompositeTags, EXIFTags, ExifToolTags, FileTags, FlashPixTags, IPTCTags, JFIFTags, MPFTags, MakerNotesTags, MetaTags, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, RIFFTags, Tags, XMPTags } from "./Tags";
21
22
  import { Version } from "./Version";
22
23
  import { AdditionalWriteTags, ExpandedDateTags, MutableTags, StructAppendTags, WriteTags } from "./WriteTags";
23
24
  import { WriteTaskOptions, WriteTaskResult } from "./WriteTask";
@@ -34,7 +35,7 @@ export { exiftoolPath } from "./ExiftoolPath";
34
35
  export { isGeolocationTag } from "./GeolocationTags";
35
36
  export { parseJSON } from "./JSON";
36
37
  export { DefaultReadTaskOptions } from "./ReadTask";
37
- export { UnsetZone, UnsetZoneName, UnsetZoneOffsetMinutes, defaultVideosToUTC, offsetMinutesToZoneName, } from "./Timezones";
38
+ export { TimezoneOffsetTagnames, UnsetZone, UnsetZoneName, UnsetZoneOffsetMinutes, defaultVideosToUTC, offsetMinutesToZoneName, } from "./Timezones";
38
39
  export { DefaultWriteTaskOptions } from "./WriteTask";
39
40
  export type { APPTags, AdditionalWriteTags, IPTCApplicationRecordTags as ApplicationRecordTags, CollectionInfo, CompositeTags, ContainerDirectoryItem, Defined, DefinedOrNullValued, EXIFTags, ErrorsAndWarnings, ExifToolOptions, ExifToolTags, ExifToolTaskOptions, ExifToolVendoredTags, ExpandedDateTags, FileTags, FlashPixTags, GeolocationTags, ICCProfileTags, IPTCApplicationRecordTags, IPTCTags, ImageDataHashTag, JFIFTags, Json, KeywordInfoStruct, KeywordStruct, Literal, MPFTags, MWGCollectionsTags, MWGKeywordTags, MakerNotesTags, Maybe, MetaTags, MutableTags, Omit, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, RIFFTags, RawTags, ReadTaskOptions, ResourceEvent, ShortcutTags, Struct, StructAppendTags, Tags, Version, WriteTags, WriteTaskOptions, WriteTaskResult, XMPTags, };
40
41
  /**
package/dist/ExifTool.js CHANGED
@@ -32,7 +32,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
32
32
  };
33
33
  var _ExifTool_taskOptions, _ExifTool_checkForPerl;
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.exiftool = exports.ExifTool = exports.DefaultWriteTaskOptions = exports.offsetMinutesToZoneName = exports.defaultVideosToUTC = exports.UnsetZoneOffsetMinutes = exports.UnsetZoneName = exports.UnsetZone = exports.DefaultReadTaskOptions = exports.parseJSON = exports.isGeolocationTag = exports.exiftoolPath = exports.ExifToolTask = exports.ExifTime = exports.ExifDateTime = exports.ExifDate = exports.DefaultMaxProcs = exports.DefaultExiftoolArgs = exports.DefaultExifToolOptions = exports.CapturedAtTagNames = exports.BinaryField = void 0;
35
+ exports.exiftool = exports.ExifTool = exports.DefaultWriteTaskOptions = exports.offsetMinutesToZoneName = exports.defaultVideosToUTC = exports.UnsetZoneOffsetMinutes = exports.UnsetZoneName = exports.UnsetZone = exports.TimezoneOffsetTagnames = exports.DefaultReadTaskOptions = exports.parseJSON = exports.isGeolocationTag = exports.exiftoolPath = exports.ExifToolTask = exports.ExifTime = exports.ExifDateTime = exports.ExifDate = exports.DefaultMaxProcs = exports.DefaultExiftoolArgs = exports.DefaultExifToolOptions = exports.CapturedAtTagNames = exports.BinaryField = void 0;
36
36
  const bc = __importStar(require("batch-cluster"));
37
37
  const _cp = __importStar(require("node:child_process"));
38
38
  const _fs = __importStar(require("node:fs"));
@@ -83,6 +83,7 @@ Object.defineProperty(exports, "parseJSON", { enumerable: true, get: function ()
83
83
  var ReadTask_2 = require("./ReadTask");
84
84
  Object.defineProperty(exports, "DefaultReadTaskOptions", { enumerable: true, get: function () { return ReadTask_2.DefaultReadTaskOptions; } });
85
85
  var Timezones_1 = require("./Timezones");
86
+ Object.defineProperty(exports, "TimezoneOffsetTagnames", { enumerable: true, get: function () { return Timezones_1.TimezoneOffsetTagnames; } });
86
87
  Object.defineProperty(exports, "UnsetZone", { enumerable: true, get: function () { return Timezones_1.UnsetZone; } });
87
88
  Object.defineProperty(exports, "UnsetZoneName", { enumerable: true, get: function () { return Timezones_1.UnsetZoneName; } });
88
89
  Object.defineProperty(exports, "UnsetZoneOffsetMinutes", { enumerable: true, get: function () { return Timezones_1.UnsetZoneOffsetMinutes; } });
@@ -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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"}
@@ -278,5 +278,16 @@ export interface ExifToolOptions extends bc.BatchClusterOptions, bc.BatchProcess
278
278
  * @see https://github.com/photostructure/exiftool-vendored.js/issues/215
279
279
  */
280
280
  adjustTimeZoneIfDaylightSavings: (tags: Tags, tz: string) => Maybe<number>;
281
+ /**
282
+ * Timezone parsing requires a bunch of heuristics due to hardware and
283
+ * software companies not following metadata specifications similarly.
284
+ *
285
+ * If GPS metadata is trustworthy, set this to `true` to override explicit
286
+ * values assigned to {@link TimezoneOffsetTagnames}.
287
+ *
288
+ * Note that there **are** regions that have had their IANA timezone change
289
+ * over time--this will result incorrect timezones.
290
+ */
291
+ preferTimezoneInferenceFromGps: boolean;
281
292
  }
282
293
  export declare function handleDeprecatedOptions<T extends Partial<Pick<ExifToolOptions, "includeImageDataMD5" | "imageHashType">>>(options: T): T;
@@ -1 +1 @@
1
- {"version":3,"file":"ExifToolOptions.js","sourceRoot":"","sources":["../src/ExifToolOptions.ts"],"names":[],"mappings":";;AA4TA,0DASC;AATD,SAAgB,uBAAuB,CAIrC,OAAU;IACV,IAAI,OAAO,CAAC,aAAa,IAAI,IAAI,IAAI,OAAO,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;QACzE,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;IACrE,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
1
+ {"version":3,"file":"ExifToolOptions.js","sourceRoot":"","sources":["../src/ExifToolOptions.ts"],"names":[],"mappings":";;AAwUA,0DASC;AATD,SAAgB,uBAAuB,CAIrC,OAAU;IACV,IAAI,OAAO,CAAC,aAAa,IAAI,IAAI,IAAI,OAAO,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;QACzE,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;IACrE,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
@@ -1,4 +1,4 @@
1
- export declare const GeolocationTagNames: (keyof GeolocationTags)[];
1
+ export declare const GeolocationTagNames: ("GeolocationBearing" | "GeolocationCity" | "GeolocationCountry" | "GeolocationCountryCode" | "GeolocationDistance" | "GeolocationFeatureCode" | "GeolocationFeatureType" | "GeolocationPopulation" | "GeolocationPosition" | "GeolocationRegion" | "GeolocationSubregion" | "GeolocationTimeZone")[];
2
2
  /**
3
3
  * Is the given tag name intrinsic to the content of a given file? In other
4
4
  * words, is it not an artifact of a metadata field?
@@ -2,22 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GeolocationTagNames = void 0;
4
4
  exports.isGeolocationTag = isGeolocationTag;
5
- const Object_1 = require("./Object");
6
- exports.GeolocationTagNames = (0, Object_1.keysOf)({
7
- GeolocationBearing: true,
8
- GeolocationCity: true,
9
- GeolocationCountry: true,
10
- GeolocationCountryCode: true,
11
- GeolocationDistance: true,
12
- GeolocationFeatureCode: true,
13
- GeolocationFeatureType: true,
14
- GeolocationPopulation: true,
15
- GeolocationPosition: true,
16
- GeolocationRegion: true,
17
- GeolocationSubregion: true,
18
- GeolocationTimeZone: true,
19
- GeolocationWarning: true,
20
- });
5
+ exports.GeolocationTagNames = [
6
+ "GeolocationBearing",
7
+ "GeolocationCity",
8
+ "GeolocationCountry",
9
+ "GeolocationCountryCode",
10
+ "GeolocationDistance",
11
+ "GeolocationFeatureCode",
12
+ "GeolocationFeatureType",
13
+ "GeolocationPopulation",
14
+ "GeolocationPosition",
15
+ "GeolocationRegion",
16
+ "GeolocationSubregion",
17
+ "GeolocationTimeZone",
18
+ ];
21
19
  /**
22
20
  * Is the given tag name intrinsic to the content of a given file? In other
23
21
  * words, is it not an artifact of a metadata field?
@@ -1 +1 @@
1
- {"version":3,"file":"GeolocationTags.js","sourceRoot":"","sources":["../src/GeolocationTags.ts"],"names":[],"mappings":";;;AAsBA,4CAEC;AAxBD,qCAAiC;AAEpB,QAAA,mBAAmB,GAAG,IAAA,eAAM,EAAkB;IACzD,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,IAAI;IACrB,kBAAkB,EAAE,IAAI;IACxB,sBAAsB,EAAE,IAAI;IAC5B,mBAAmB,EAAE,IAAI;IACzB,sBAAsB,EAAE,IAAI;IAC5B,sBAAsB,EAAE,IAAI;IAC5B,qBAAqB,EAAE,IAAI;IAC3B,mBAAmB,EAAE,IAAI;IACzB,iBAAiB,EAAE,IAAI;IACvB,oBAAoB,EAAE,IAAI;IAC1B,mBAAmB,EAAE,IAAI;IACzB,kBAAkB,EAAE,IAAI;CACzB,CAAC,CAAA;AAEF;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,OAAO,2BAAmB,CAAC,QAAQ,CAAC,IAAW,CAAC,CAAA;AAClD,CAAC"}
1
+ {"version":3,"file":"GeolocationTags.js","sourceRoot":"","sources":["../src/GeolocationTags.ts"],"names":[],"mappings":";;;AAmBA,4CAEC;AArBY,QAAA,mBAAmB,GAAG;IACjC,oBAAoB;IACpB,iBAAiB;IACjB,oBAAoB;IACpB,wBAAwB;IACxB,qBAAqB;IACrB,wBAAwB;IACxB,wBAAwB;IACxB,uBAAuB;IACvB,qBAAqB;IACrB,mBAAmB;IACnB,sBAAsB;IACtB,qBAAqB;CACc,CAAA;AAErC;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,OAAO,2BAAmB,CAAC,QAAQ,CAAC,IAAW,CAAC,CAAA;AAClD,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { ExifToolTask } from "./ExifToolTask";
2
2
  import { Maybe } from "./Maybe";
3
3
  import { Tags } from "./Tags";
4
- export declare const ReadTaskOptionFields: ["backfillTimezones", "defaultVideosToUTC", "geolocation", "geoTz", "ignoreMinorErrors", "ignoreZeroZeroLatLon", "imageHashType", "includeImageDataMD5", "inferTimezoneFromDatestamps", "inferTimezoneFromDatestampTags", "inferTimezoneFromTimeStamp", "numericTags", "useMWG", "struct", "readArgs", "adjustTimeZoneIfDaylightSavings"];
4
+ export declare const ReadTaskOptionFields: ["backfillTimezones", "defaultVideosToUTC", "geolocation", "geoTz", "ignoreMinorErrors", "ignoreZeroZeroLatLon", "imageHashType", "includeImageDataMD5", "inferTimezoneFromDatestamps", "inferTimezoneFromDatestampTags", "inferTimezoneFromTimeStamp", "numericTags", "useMWG", "struct", "readArgs", "adjustTimeZoneIfDaylightSavings", "preferTimezoneInferenceFromGps"];
5
5
  export declare function nullish(s: string | undefined): s is undefined;
6
6
  export declare const DefaultReadTaskOptions: {
7
7
  readonly includeImageDataMD5: boolean | undefined;
@@ -20,6 +20,7 @@ export declare const DefaultReadTaskOptions: {
20
20
  readonly struct: "undef" | 0 | 1 | 2;
21
21
  readonly readArgs: string[];
22
22
  readonly adjustTimeZoneIfDaylightSavings: (tags: Tags, tz: string) => Maybe<number>;
23
+ readonly preferTimezoneInferenceFromGps: boolean;
23
24
  };
24
25
  export type ReadTaskOptions = Partial<typeof DefaultReadTaskOptions>;
25
26
  export declare class ReadTask extends ExifToolTask<Tags> {
package/dist/ReadTask.js CHANGED
@@ -33,7 +33,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
33
33
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
34
34
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
35
35
  };
36
- var _ReadTask_instances, _ReadTask_raw, _ReadTask_rawDegrouped, _ReadTask_tags, _ReadTask_isVideo, _ReadTask_defaultToUTC, _ReadTask_tagName, _ReadTask_parseTags, _ReadTask_lat, _ReadTask_lon, _ReadTask_tzFromGps, _ReadTask_extractGpsMetadata, _ReadTask_parseLocation, _ReadTask_tz, _ReadTask_extractTzOffset, _ReadTask_parseTag;
36
+ var _ReadTask_instances, _ReadTask_raw, _ReadTask_rawDegrouped, _ReadTask_tags, _ReadTask_isVideo, _ReadTask_defaultToUTC, _ReadTask_tagName, _ReadTask_parseTags, _ReadTask_lat, _ReadTask_lon, _ReadTask_extractTzOffsetFromGps, _ReadTask_extractGpsMetadata, _ReadTask_parseLocation, _ReadTask_tz, _ReadTask_extractTzOffset, _ReadTask_parseTag;
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
38
  exports.ReadTask = exports.DefaultReadTaskOptions = exports.ReadTaskOptionFields = void 0;
39
39
  exports.nullish = nullish;
@@ -49,8 +49,8 @@ const ExifTime_1 = require("./ExifTime");
49
49
  const ExifToolOptions_1 = require("./ExifToolOptions");
50
50
  const ExifToolTask_1 = require("./ExifToolTask");
51
51
  const FilenameCharsetArgs_1 = require("./FilenameCharsetArgs");
52
+ const GeolocationTags_1 = require("./GeolocationTags");
52
53
  const Lazy_1 = require("./Lazy");
53
- const Maybe_1 = require("./Maybe");
54
54
  const Number_1 = require("./Number");
55
55
  const OnlyZerosRE_1 = require("./OnlyZerosRE");
56
56
  const Pick_1 = require("./Pick");
@@ -84,6 +84,7 @@ exports.ReadTaskOptionFields = [
84
84
  "struct",
85
85
  "readArgs",
86
86
  "adjustTimeZoneIfDaylightSavings",
87
+ "preferTimezoneInferenceFromGps",
87
88
  ];
88
89
  const NullIsh = ["undef", "null", "undefined"];
89
90
  function nullish(s) {
@@ -116,62 +117,86 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
116
117
  );
117
118
  _ReadTask_lat.set(this, (0, Lazy_1.lazy)(() => { var _a; return (_a = __classPrivateFieldGet(this, _ReadTask_extractGpsMetadata, "f").call(this)) === null || _a === void 0 ? void 0 : _a.lat; }));
118
119
  _ReadTask_lon.set(this, (0, Lazy_1.lazy)(() => { var _a; return (_a = __classPrivateFieldGet(this, _ReadTask_extractGpsMetadata, "f").call(this)) === null || _a === void 0 ? void 0 : _a.lon; }));
119
- _ReadTask_tzFromGps.set(this, (0, Lazy_1.lazy)(() => { var _a; return (_a = __classPrivateFieldGet(this, _ReadTask_extractGpsMetadata, "f").call(this)) === null || _a === void 0 ? void 0 : _a.tzFromGps; }));
120
+ _ReadTask_extractTzOffsetFromGps.set(this, (0, Lazy_1.lazy)(() => { var _a; return (_a = __classPrivateFieldGet(this, _ReadTask_extractGpsMetadata, "f").call(this)) === null || _a === void 0 ? void 0 : _a.tz; }));
120
121
  _ReadTask_extractGpsMetadata.set(this, (0, Lazy_1.lazy)(() => {
121
- const lat = __classPrivateFieldGet(this, _ReadTask_instances, "m", _ReadTask_parseLocation).call(this, {
122
+ let lat = __classPrivateFieldGet(this, _ReadTask_instances, "m", _ReadTask_parseLocation).call(this, {
122
123
  tagName: "GPSLatitude",
123
124
  positiveRef: "N",
124
125
  negativeRef: "S",
125
126
  maxValid: 90,
126
127
  });
127
- const lon = __classPrivateFieldGet(this, _ReadTask_instances, "m", _ReadTask_parseLocation).call(this, {
128
+ let lon = __classPrivateFieldGet(this, _ReadTask_instances, "m", _ReadTask_parseLocation).call(this, {
128
129
  tagName: "GPSLongitude",
129
130
  positiveRef: "E",
130
131
  negativeRef: "W",
131
132
  maxValid: 180,
132
133
  });
133
- let invalid = lat == null ||
134
- lon == null ||
135
- (this.options.ignoreZeroZeroLatLon && lat === 0 && lon === 0);
136
- if (this.options.geolocation && invalid) {
137
- if (__classPrivateFieldGet(this, _ReadTask_tags, "f").GPSLatitude != null || __classPrivateFieldGet(this, _ReadTask_tags, "f").GPSLongitude != null) {
138
- // don't complain unless there was a GPS value:
139
- this.warnings.push("Invalid GPSLatitude or GPSLongitude. Deleting geolocation tags.");
134
+ let invalid = false;
135
+ if (this.options.ignoreZeroZeroLatLon && lat === 0 && lon === 0) {
136
+ lat = undefined;
137
+ lon = undefined;
138
+ invalid = true;
139
+ }
140
+ let tz;
141
+ if (!invalid && !(0, String_1.blank)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f").GeolocationTimeZone)) {
142
+ const geolocTz = (0, Timezones_1.normalizeZone)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f").GeolocationTimeZone);
143
+ if (geolocTz != null) {
144
+ tz = {
145
+ tz: geolocTz.name,
146
+ src: "GeolocationTimeZone",
147
+ };
140
148
  }
141
- for (const key of Object.keys(__classPrivateFieldGet(this, _ReadTask_raw, "f"))) {
142
- const k = __classPrivateFieldGet(this, _ReadTask_instances, "m", _ReadTask_tagName).call(this, key);
143
- if (k.startsWith("Geolocation")) {
144
- delete __classPrivateFieldGet(this, _ReadTask_raw, "f")[key];
145
- delete __classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f")[k];
146
- }
149
+ else {
150
+ this.warnings.push("Failed to determine timezone from GeolocationTimeZone value: " +
151
+ __classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f").GeolocationTimeZone);
147
152
  }
148
153
  }
149
- let tzFromGps;
150
- if (!invalid && lat != null && lon != null) {
154
+ if (tz == null && !invalid && lat != null && lon != null) {
151
155
  try {
152
156
  const geoTz = this.options.geoTz(lat, lon);
153
- tzFromGps = (0, Timezones_1.normalizeZone)(geoTz);
157
+ const zone = (0, Timezones_1.normalizeZone)(geoTz);
158
+ if (zone != null) {
159
+ tz = {
160
+ tz: zone.name,
161
+ src: "GPSLatitude/GPSLongitude",
162
+ };
163
+ }
154
164
  }
155
- catch {
165
+ catch (error) {
166
+ this.warnings.push("Failed to determine timezone from GPS coordinates: " + error);
156
167
  invalid = true;
168
+ lat = undefined;
169
+ lon = undefined;
170
+ }
171
+ }
172
+ if (this.options.geolocation && invalid) {
173
+ if (__classPrivateFieldGet(this, _ReadTask_tags, "f").GPSLatitude != null || __classPrivateFieldGet(this, _ReadTask_tags, "f").GPSLongitude != null) {
174
+ // don't complain unless there was a GPS value:
175
+ this.warnings.push("Invalid GPSLatitude or GPSLongitude. Deleting geolocation tags.");
176
+ }
177
+ for (const key of GeolocationTags_1.GeolocationTagNames) {
178
+ delete __classPrivateFieldGet(this, _ReadTask_tags, "f")[key];
179
+ delete __classPrivateFieldGet(this, _ReadTask_raw, "f")[key];
180
+ delete __classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f")[key];
157
181
  }
158
182
  }
159
183
  return {
160
- lat: invalid ? undefined : lat,
161
- lon: invalid ? undefined : lon,
184
+ lat,
185
+ lon,
162
186
  invalid,
163
- tzFromGps,
187
+ tz,
164
188
  };
165
189
  }));
166
190
  _ReadTask_tz.set(this, (0, Lazy_1.lazy)(() => { var _a; return (_a = __classPrivateFieldGet(this, _ReadTask_extractTzOffset, "f").call(this)) === null || _a === void 0 ? void 0 : _a.tz; }));
167
191
  _ReadTask_extractTzOffset.set(this, (0, Lazy_1.lazy)(() => {
168
192
  var _a, _b, _c, _d, _e;
169
- // If there is an explicit TimeZone tag (which is rare), defer to that
170
- // before defaulting to UTC for videos:
171
- return (_e = (_d = (_c = (_b = (_a = (0, Timezones_1.extractTzOffsetFromTags)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f"), this.options)) !== null && _a !== void 0 ? _a : (0, Maybe_1.map)(__classPrivateFieldGet(this, _ReadTask_tzFromGps, "f").call(this), (ea) => ({
172
- tz: ea.name,
173
- src: "GPSLatitude/GPSLongitude",
174
- }))) !== null && _b !== void 0 ? _b : (0, Timezones_1.extractTzOffsetFromDatestamps)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f"), this.options)) !== null && _c !== void 0 ? _c :
193
+ if (true === this.options.preferTimezoneInferenceFromGps) {
194
+ const fromGps = __classPrivateFieldGet(this, _ReadTask_extractTzOffsetFromGps, "f").call(this);
195
+ if (fromGps != null) {
196
+ return fromGps;
197
+ }
198
+ }
199
+ return ((_e = (_d = (_c = (_b = (_a = (0, Timezones_1.extractTzOffsetFromTags)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f"), this.options)) !== null && _a !== void 0 ? _a : __classPrivateFieldGet(this, _ReadTask_extractTzOffsetFromGps, "f").call(this)) !== null && _b !== void 0 ? _b : (0, Timezones_1.extractTzOffsetFromDatestamps)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f"), this.options)) !== null && _c !== void 0 ? _c :
175
200
  // See https://github.com/photostructure/exiftool-vendored.js/issues/113
176
201
  // and https://github.com/photostructure/exiftool-vendored.js/issues/156
177
202
  // Videos are frequently encoded in UTC, but don't include the
@@ -186,7 +211,7 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
186
211
  // This is a last-ditch estimation heuristic:
187
212
  (0, Timezones_1.extractTzOffsetFromUTCOffset)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f"))) !== null && _e !== void 0 ? _e :
188
213
  // No, really, this is the even worse than UTC offset heuristics:
189
- (0, Timezones_1.extractTzOffsetFromTimeStamp)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f"), this.options);
214
+ (0, Timezones_1.extractTzOffsetFromTimeStamp)(__classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f"), this.options));
190
215
  }));
191
216
  // See https://github.com/photostructure/exiftool-vendored.js/issues/147#issuecomment-1642580118
192
217
  this.degroup = this.args.includes("-G");
@@ -194,7 +219,6 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
194
219
  __classPrivateFieldGet(this, _ReadTask_tags, "f").errors = this.errors;
195
220
  }
196
221
  static for(filename, options) {
197
- var _a;
198
222
  const opts = (0, ExifToolOptions_1.handleDeprecatedOptions)({
199
223
  ...exports.DefaultReadTaskOptions,
200
224
  ...options,
@@ -211,7 +235,7 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
211
235
  args.push("-api", "requesttags=imagedatahash");
212
236
  args.push("-api", "imagehashtype=" + opts.imageHashType);
213
237
  }
214
- if ((_a = opts.geolocation) !== null && _a !== void 0 ? _a : false) {
238
+ if (true === opts.geolocation) {
215
239
  args.push("-api", "geolocation");
216
240
  }
217
241
  // IMPORTANT: "-all" must be after numeric tag references, as the first
@@ -250,7 +274,7 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
250
274
  }
251
275
  }
252
276
  exports.ReadTask = ReadTask;
253
- _ReadTask_raw = new WeakMap(), _ReadTask_rawDegrouped = new WeakMap(), _ReadTask_tags = new WeakMap(), _ReadTask_lat = new WeakMap(), _ReadTask_lon = new WeakMap(), _ReadTask_tzFromGps = new WeakMap(), _ReadTask_extractGpsMetadata = new WeakMap(), _ReadTask_tz = new WeakMap(), _ReadTask_extractTzOffset = new WeakMap(), _ReadTask_instances = new WeakSet(), _ReadTask_isVideo = function _ReadTask_isVideo() {
277
+ _ReadTask_raw = new WeakMap(), _ReadTask_rawDegrouped = new WeakMap(), _ReadTask_tags = new WeakMap(), _ReadTask_lat = new WeakMap(), _ReadTask_lon = new WeakMap(), _ReadTask_extractTzOffsetFromGps = new WeakMap(), _ReadTask_extractGpsMetadata = new WeakMap(), _ReadTask_tz = new WeakMap(), _ReadTask_extractTzOffset = new WeakMap(), _ReadTask_instances = new WeakSet(), _ReadTask_isVideo = function _ReadTask_isVideo() {
254
278
  var _a;
255
279
  return String((_a = __classPrivateFieldGet(this, _ReadTask_rawDegrouped, "f")) === null || _a === void 0 ? void 0 : _a.MIMEType).startsWith("video/");
256
280
  }, _ReadTask_defaultToUTC = function _ReadTask_defaultToUTC() {
@@ -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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"}