exiftool-vendored 15.7.0 → 15.8.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 +8 -0
- package/README.md +1 -4
- package/dist/ExifTool.js +8 -1
- package/dist/ExifTool.js.map +1 -1
- package/dist/ReadTask.d.ts +2 -2
- package/dist/ReadTask.js +34 -30
- package/dist/ReadTask.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -25,6 +25,14 @@ vendored versions of ExifTool match the version they vendor.
|
|
|
25
25
|
|
|
26
26
|
## Version history
|
|
27
27
|
|
|
28
|
+
### v15.8.0
|
|
29
|
+
|
|
30
|
+
- 🐞 `GPSDateTime` in prior versions could be incorrectly parsed, resulting in an incorrectly inferred current-date and encoded-time.
|
|
31
|
+
|
|
32
|
+
- 🐞 GPS latitude and longitude parsing could result in the incorrect hemisphere, depending on the version of ExifTool.
|
|
33
|
+
|
|
34
|
+
- 📦 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".
|
|
35
|
+
|
|
28
36
|
### v15.7.0
|
|
29
37
|
|
|
30
38
|
- 🌱 ExifTool upgraded to [v12.38](https://exiftool.org/history.html#v12.38).
|
package/README.md
CHANGED
|
@@ -396,15 +396,12 @@ are [PascalCased](https://en.wikipedia.org/wiki/PascalCase), like
|
|
|
396
396
|
`AFPointSelected` and `ISO`. ("Fixing" the field names to be camelCase, would
|
|
397
397
|
result in ungainly `aFPointSelected` and `iSO` atrocities).
|
|
398
398
|
|
|
399
|
-
The [Tags](https://photostructure.github.io/exiftool-vendored.js/interfaces/
|
|
399
|
+
The [Tags](https://photostructure.github.io/exiftool-vendored.js/interfaces/Tags.html) interface is
|
|
400
400
|
auto-generated by the `mktags` script, which parses through over 6,000 unique
|
|
401
401
|
camera make and model images, in large part sourced from the ExifTool site.
|
|
402
402
|
`mktags` groups tags, extracts their type, popularity, and example values such
|
|
403
403
|
that your IDE can autocomplete.
|
|
404
404
|
|
|
405
|
-
For an example of a group of tags, see the [EXIFTags
|
|
406
|
-
interface](interfaces/exiftags.html).
|
|
407
|
-
|
|
408
405
|
Tags marked with "★★★★", like
|
|
409
406
|
[MIMEType](https://photostructure.github.io/exiftool-vendored.js/interfaces/tags.html#mimetype),
|
|
410
407
|
should be found in most files. Of the several thousand metadata tags, realize
|
package/dist/ExifTool.js
CHANGED
|
@@ -97,7 +97,14 @@ exports.DefaultExifToolOptions = Object.freeze({
|
|
|
97
97
|
fail: "{ready}",
|
|
98
98
|
exitCommand: "-stay_open\nFalse\n",
|
|
99
99
|
versionCommand: new VersionTask_1.VersionTask().command,
|
|
100
|
-
numericTags: [
|
|
100
|
+
numericTags: [
|
|
101
|
+
"*Duration*",
|
|
102
|
+
"GPSAltitude",
|
|
103
|
+
"GPSLatitude",
|
|
104
|
+
"GPSLongitude",
|
|
105
|
+
"GPSPosition",
|
|
106
|
+
"Orientation",
|
|
107
|
+
],
|
|
101
108
|
});
|
|
102
109
|
/**
|
|
103
110
|
* Manages delegating calls to a vendored running instance of ExifTool.
|
package/dist/ExifTool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExifTool.js","sourceRoot":"","sources":["../src/ExifTool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmC;AACnC,mDAAoC;AACpC,wCAAyB;AACzB,wCAAyB;AACzB,4CAA6B;AAC7B,4CAA6B;AAC7B,6CAA4C;AAC5C,iEAA6D;AAC7D,6DAAyD;AACzD,2DAAuD;AAIvD,iCAA6B;AAE7B,+CAA2C;AAC3C,yCAAqC;AACrC,6DAAyD;AACzD,qCAA0C;AAE1C,+CAA2C;AAC3C,2CAAuC;AAEvC,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+CAA6C;AAApC,4GAAA,YAAY,OAAA;AACrB,+BAAkC;AAAzB,iGAAA,SAAS,OAAA;AAClB,yCAAqD;AAA5C,oHAAA,uBAAuB,OAAA;AAGhC,MAAM,OAAO,GAAG,IAAA,WAAI,EAAC,GAAG,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,CAAA;AAEtD,SAAS,YAAY;IACnB,MAAM,IAAI,GAAW,OAAO,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAC7E,2EAA2E;IAC3E,6BAA6B;IAE7B,yEAAyE;IACzE,6EAA6E;IAC7E,2EAA2E;IAC3E,SAAS;IACT,MAAM,SAAS,GAAG,IAAI;SACnB,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;SAChB,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAC3D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAElB,4EAA4E;IAC5E,yEAAyE;IACzE,aAAa;IACb,IAAI,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC7B,OAAO,SAAS,CAAA;KACjB;IACD,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACxB,OAAO,IAAI,CAAA;KACZ;IACD,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,EAAE,CAAC,CAAA;AAChE,CAAC;AAEY,QAAA,mBAAmB,GAAG,YAAY,EAAE,CAAA;AAEpC,QAAA,mBAAmB,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;AAEpE,MAAM,cAAc,GAAG,IAAA,WAAI,EACzB,GAAG,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,CACrD,CAAA;AA4CY,QAAA,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAA;AAkG7E;;;GAGG;AACU,QAAA,sBAAsB,GAG/B,MAAM,CAAC,MAAM,CAAC;IAChB,GAAG,IAAI,EAAE,CAAC,mBAAmB,EAAE;IAC/B,QAAQ,EAAE,uBAAe;IACzB,kBAAkB,EAAE,GAAG;IACvB,kBAAkB,EAAE,KAAK;IACzB,yEAAyE;IACzE,iBAAiB,EAAE,KAAK;IACxB,oBAAoB,EAAE,IAAI;IAC1B,WAAW,EAAE,CAAC;IACd,YAAY,EAAE,2BAAmB;IACjC,YAAY,EAAE,2BAAmB;IACjC,WAAW,EAAE,EAAE;IACf,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,qBAAqB;IAClC,cAAc,EAAE,IAAI,yBAAW,EAAE,CAAC,OAAO;IACzC,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"ExifTool.js","sourceRoot":"","sources":["../src/ExifTool.ts"],"names":[],"mappings":"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"}
|
package/dist/ReadTask.d.ts
CHANGED
|
@@ -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
|
-
|
|
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)
|
|
@@ -123,30 +121,37 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
|
|
|
123
121
|
this.tags.errors = this.errors;
|
|
124
122
|
return this.tags;
|
|
125
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
|
+
}
|
|
126
132
|
latlon(tagName, negateRef, maxValid) {
|
|
127
133
|
const tagValue = this._tags[tagName];
|
|
128
|
-
const
|
|
129
|
-
|
|
134
|
+
const ref = this._tags[tagName + "Ref"];
|
|
135
|
+
const result = (0, Number_1.toF)(tagValue);
|
|
136
|
+
if (result == null) {
|
|
130
137
|
return;
|
|
131
|
-
|
|
132
|
-
|
|
138
|
+
}
|
|
139
|
+
else if (Math.abs(result) > maxValid) {
|
|
140
|
+
this.errors.push(`Invalid ${tagName}: ${JSON.stringify(tagValue)}`);
|
|
133
141
|
this.invalidLatLon = true;
|
|
134
142
|
return;
|
|
135
143
|
}
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
return
|
|
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;
|
|
139
147
|
}
|
|
140
148
|
else {
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
}
|
|
148
|
-
if (!this.invalidLatLon && this.lon == null) {
|
|
149
|
-
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);
|
|
150
155
|
}
|
|
151
156
|
}
|
|
152
157
|
extractTzOffset() {
|
|
@@ -170,6 +175,7 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
|
|
|
170
175
|
]), (ea) => ({ tz: this.tz, src: this.tzSource } = ea));
|
|
171
176
|
}
|
|
172
177
|
parseTag(tagNameWithGroup, value) {
|
|
178
|
+
var _a, _b, _c, _d, _e, _f;
|
|
173
179
|
if (nullish(value))
|
|
174
180
|
return undefined;
|
|
175
181
|
const tagName = this.tagName(tagNameWithGroup);
|
|
@@ -183,19 +189,17 @@ class ReadTask extends ExifToolTask_1.ExifToolTask {
|
|
|
183
189
|
if (tagName === "GPSLongitude") {
|
|
184
190
|
return this.lon;
|
|
185
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
|
+
}
|
|
186
199
|
if (typeof value === "string" && tagName.includes("Date")) {
|
|
187
|
-
const
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
? "UTC"
|
|
191
|
-
: this.tz),
|
|
192
|
-
() => ExifDate_1.ExifDate.fromISO(value),
|
|
193
|
-
() => ExifDateTime_1.ExifDateTime.fromISO(value, this.tz),
|
|
194
|
-
() => ExifDate_1.ExifDate.fromExifLoose(value),
|
|
195
|
-
() => ExifDateTime_1.ExifDateTime.fromExifLoose(value, this.tz),
|
|
196
|
-
]);
|
|
197
|
-
if (dt != null) {
|
|
198
|
-
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;
|
|
199
203
|
}
|
|
200
204
|
}
|
|
201
205
|
if (typeof value === "string" && tagName.includes("Time")) {
|
package/dist/ReadTask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadTask.js","sourceRoot":"","sources":["../src/ReadTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAsC;AACtC,4CAA6B;AAC7B,yCAAqC;AACrC,iDAA6C;AAC7C,yCAAqC;AACrC,iDAA6C;AAC7C,mCAAgD;AAChD,qCAA8B;AAC9B,
|
|
1
|
+
{"version":3,"file":"ReadTask.js","sourceRoot":"","sources":["../src/ReadTask.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.
|
|
3
|
+
"version": "15.8.0",
|
|
4
4
|
"description": "Efficient, cross-platform access to ExifTool",
|
|
5
5
|
"main": "./dist/ExifTool.js",
|
|
6
6
|
"types": "./dist/ExifTool.d.ts",
|
|
@@ -104,7 +104,7 @@
|
|
|
104
104
|
"tmp": "^0.2.1",
|
|
105
105
|
"typedoc": "^0.22.10",
|
|
106
106
|
"typescript": "^4.5.4",
|
|
107
|
-
"@xmldom/xmldom": "^0.
|
|
107
|
+
"@xmldom/xmldom": "^0.8.0",
|
|
108
108
|
"xpath": "^0.0.32"
|
|
109
109
|
},
|
|
110
110
|
"dependencies": {
|