exiftool-vendored 25.0.0 → 25.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.
- package/CHANGELOG.md +11 -1
- package/dist/ErrorsAndWarnings.js.map +1 -1
- package/dist/ExifTool.d.ts +12 -4
- package/dist/ExifTool.js +15 -3
- package/dist/ExifTool.js.map +1 -1
- package/dist/ExifToolOptions.d.ts +3 -1
- package/dist/ExifToolOptions.js.map +1 -1
- package/dist/ExifToolTags.d.ts +7 -0
- package/dist/ExifToolTags.js +20 -0
- package/dist/ExifToolTags.js.map +1 -0
- package/dist/ExifToolVendoredTags.d.ts +23 -0
- package/dist/ExifToolVendoredTags.js +19 -0
- package/dist/ExifToolVendoredTags.js.map +1 -0
- package/dist/FileTags.d.ts +6 -0
- package/dist/FileTags.js +41 -0
- package/dist/FileTags.js.map +1 -0
- package/dist/GeolocationTags.d.ts +6 -0
- package/dist/GeolocationTags.js +23 -0
- package/dist/GeolocationTags.js.map +1 -1
- package/dist/Object.d.ts +10 -0
- package/dist/Object.js +14 -1
- package/dist/Object.js.map +1 -1
- package/dist/Tags.d.ts +121 -69
- package/package.json +5 -1
package/CHANGELOG.md
CHANGED
|
@@ -26,6 +26,16 @@ vendored versions of ExifTool match the version that they vendor.
|
|
|
26
26
|
|
|
27
27
|
## Version history
|
|
28
28
|
|
|
29
|
+
### v25.1.0
|
|
30
|
+
|
|
31
|
+
- ✨ Added `retain` field to [`ExifTool.deleteAllTags`](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#deleteAllTags) to address [#178](https://github.com/photostructure/exiftool-vendored.js/issues/178)
|
|
32
|
+
|
|
33
|
+
- 📦 Added jsdocs for many `Tag` interface types
|
|
34
|
+
|
|
35
|
+
- 📦 Expose `GeolocationTags` and `isGeolocationTag()`
|
|
36
|
+
|
|
37
|
+
- 📦 Add `FileTags.FileCreateDate` (only a thing on Windows)
|
|
38
|
+
|
|
29
39
|
### v25.0.0
|
|
30
40
|
|
|
31
41
|
- 🌱/✨ ExifTool upgraded to [v12.80](https://exiftool.org/history.html#v12.80), which **adds support for reverse-geo lookups** and [several other geolocation features](https://exiftool.org/geolocation.html
|
|
@@ -34,7 +44,7 @@ vendored versions of ExifTool match the version that they vendor.
|
|
|
34
44
|
|
|
35
45
|
- ✨ `ExifToolOptions.exiftoolPath` can now be an `async` function
|
|
36
46
|
|
|
37
|
-
- ✨ Added [Geolocation](https://photostructure.github.io/exiftool-vendored.js/interfaces/
|
|
47
|
+
- ✨ Added [Geolocation](https://photostructure.github.io/exiftool-vendored.js/interfaces/GeolocationTags.html) Tags. These will only be available if `{geolocation: true}` is passed to the [ExifTool constructor](https://photostructure.github.io/exiftool-vendored.js/classes/ExifTool.html#constructor).
|
|
38
48
|
|
|
39
49
|
- 📦 Added support for `electron-forge`: [see the docs for details](https://photostructure.github.io/exiftool-vendored.js/#md:electron-forge-support).
|
|
40
50
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorsAndWarnings.js","sourceRoot":"","sources":["../src/ErrorsAndWarnings.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAE9B,qCAAwC;
|
|
1
|
+
{"version":3,"file":"ErrorsAndWarnings.js","sourceRoot":"","sources":["../src/ErrorsAndWarnings.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAE9B,qCAAwC;AAkBxC,SAAgB,iBAAiB,CAC/B,IAAuB,EACvB,CAAwC;IAExC,OAAO;QACL,MAAM,EAAE,IAAA,YAAI,EAAC,IAAA,sBAAa,EAAC,CAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACvD,QAAQ,EAAE,IAAA,YAAI,EAAC,IAAA,sBAAa,EAAC,CAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;KAC9D,CAAA;AACH,CAAC;AARD,8CAQC"}
|
package/dist/ExifTool.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { Defined, DefinedOrNullValued } from "./Defined";
|
|
|
5
5
|
import { ErrorsAndWarnings } from "./ErrorsAndWarnings";
|
|
6
6
|
import { ExifToolOptions } from "./ExifToolOptions";
|
|
7
7
|
import { ExifToolTask } from "./ExifToolTask";
|
|
8
|
-
import {
|
|
8
|
+
import { ExifToolVendoredTags } from "./ExifToolVendoredTags";
|
|
9
9
|
import { ICCProfileTags } from "./ICCProfileTags";
|
|
10
10
|
import { CollectionInfo, KeywordInfoStruct, KeywordStruct, MWGCollectionsTags, MWGKeywordTags } from "./MWGTags";
|
|
11
11
|
import { Maybe } from "./Maybe";
|
|
@@ -16,7 +16,7 @@ import { ReadTaskOptions } from "./ReadTask";
|
|
|
16
16
|
import { ResourceEvent } from "./ResourceEvent";
|
|
17
17
|
import { ShortcutTags } from "./ShortcutTags";
|
|
18
18
|
import { Struct } from "./Struct";
|
|
19
|
-
import { APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, CompositeTags, EXIFTags, ExifToolTags, FileTags, FlashPixTags, IPTCTags, JFIFTags, MPFTags, MakerNotesTags, MetaTags, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, RIFFTags, Tags, XMPTags } from "./Tags";
|
|
19
|
+
import { APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, CompositeTags, EXIFTags, ExifToolTags, FileTags, FlashPixTags, GeolocationTags, IPTCTags, JFIFTags, MPFTags, MakerNotesTags, MetaTags, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, RIFFTags, Tags, XMPTags } from "./Tags";
|
|
20
20
|
import { Version } from "./Version";
|
|
21
21
|
import { AdditionalWriteTags, ExpandedDateTags, MutableTags, StructAppendTags, WriteTags } from "./WriteTags";
|
|
22
22
|
import { WriteTaskOptions, WriteTaskResult } from "./WriteTask";
|
|
@@ -29,11 +29,12 @@ export { ExifDate } from "./ExifDate";
|
|
|
29
29
|
export { ExifDateTime } from "./ExifDateTime";
|
|
30
30
|
export { ExifTime } from "./ExifTime";
|
|
31
31
|
export { ExifToolTask } from "./ExifToolTask";
|
|
32
|
+
export { isGeolocationTag } from "./GeolocationTags";
|
|
32
33
|
export { parseJSON } from "./JSON";
|
|
33
34
|
export { DefaultReadTaskOptions } from "./ReadTask";
|
|
34
35
|
export { UnsetZone, UnsetZoneName, UnsetZoneOffsetMinutes, defaultVideosToUTC, offsetMinutesToZoneName, } from "./Timezones";
|
|
35
36
|
export { DefaultWriteTaskOptions } from "./WriteTask";
|
|
36
|
-
export type { APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, AdditionalWriteTags, ApplicationRecordTags, CollectionInfo, CompositeTags, Defined, DefinedOrNullValued, EXIFTags, ErrorsAndWarnings, ExifToolOptions, ExifToolTags, ExpandedDateTags, FileTags, FlashPixTags, GeolocationTags, ICCProfileTags, IPTCTags, 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, };
|
|
37
|
+
export type { APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, AdditionalWriteTags, ApplicationRecordTags, CollectionInfo, CompositeTags, Defined, DefinedOrNullValued, EXIFTags, ErrorsAndWarnings, ExifToolOptions, ExifToolTags, ExifToolVendoredTags, ExpandedDateTags, FileTags, FlashPixTags, GeolocationTags, ICCProfileTags, IPTCTags, 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, };
|
|
37
38
|
/**
|
|
38
39
|
* Manages delegating calls to a cluster of ExifTool child processes.
|
|
39
40
|
*
|
|
@@ -120,8 +121,15 @@ export declare class ExifTool {
|
|
|
120
121
|
* name `${FILENAME}_original`) will be retained. Note that some tags, like
|
|
121
122
|
* stat information and image dimensions, are intrinsic to the file and will
|
|
122
123
|
* continue to exist if you re-`read` the file.
|
|
124
|
+
*
|
|
125
|
+
* @param {string} file the file to strip of metadata
|
|
126
|
+
*
|
|
127
|
+
* @param {(keyof Tags | string)[]} opts.retain optional. If provided, this is
|
|
128
|
+
* a list of metadata keys to **not** delete.
|
|
123
129
|
*/
|
|
124
|
-
deleteAllTags(file: string
|
|
130
|
+
deleteAllTags(file: string, opts?: {
|
|
131
|
+
retain?: (keyof Tags | string)[];
|
|
132
|
+
}): Promise<WriteTaskResult>;
|
|
125
133
|
/**
|
|
126
134
|
* Extract the low-resolution thumbnail in `path/to/image.jpg`
|
|
127
135
|
* and write it to `path/to/thumbnail.jpg`.
|
package/dist/ExifTool.js
CHANGED
|
@@ -32,7 +32,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
32
32
|
};
|
|
33
33
|
var _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.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.DefaultReadTaskOptions = exports.parseJSON = exports.isGeolocationTag = 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"));
|
|
@@ -72,6 +72,8 @@ var ExifTime_1 = require("./ExifTime");
|
|
|
72
72
|
Object.defineProperty(exports, "ExifTime", { enumerable: true, get: function () { return ExifTime_1.ExifTime; } });
|
|
73
73
|
var ExifToolTask_1 = require("./ExifToolTask");
|
|
74
74
|
Object.defineProperty(exports, "ExifToolTask", { enumerable: true, get: function () { return ExifToolTask_1.ExifToolTask; } });
|
|
75
|
+
var GeolocationTags_1 = require("./GeolocationTags");
|
|
76
|
+
Object.defineProperty(exports, "isGeolocationTag", { enumerable: true, get: function () { return GeolocationTags_1.isGeolocationTag; } });
|
|
75
77
|
var JSON_1 = require("./JSON");
|
|
76
78
|
Object.defineProperty(exports, "parseJSON", { enumerable: true, get: function () { return JSON_1.parseJSON; } });
|
|
77
79
|
var ReadTask_2 = require("./ReadTask");
|
|
@@ -234,9 +236,19 @@ class ExifTool {
|
|
|
234
236
|
* name `${FILENAME}_original`) will be retained. Note that some tags, like
|
|
235
237
|
* stat information and image dimensions, are intrinsic to the file and will
|
|
236
238
|
* continue to exist if you re-`read` the file.
|
|
239
|
+
*
|
|
240
|
+
* @param {string} file the file to strip of metadata
|
|
241
|
+
*
|
|
242
|
+
* @param {(keyof Tags | string)[]} opts.retain optional. If provided, this is
|
|
243
|
+
* a list of metadata keys to **not** delete.
|
|
237
244
|
*/
|
|
238
|
-
deleteAllTags(file) {
|
|
239
|
-
|
|
245
|
+
deleteAllTags(file, opts) {
|
|
246
|
+
var _a;
|
|
247
|
+
const args = [...DeleteAllTagsArgs_1.DeleteAllTagsArgs];
|
|
248
|
+
for (const ea of (_a = opts === null || opts === void 0 ? void 0 : opts.retain) !== null && _a !== void 0 ? _a : []) {
|
|
249
|
+
args.push(`-${ea}<${ea}`);
|
|
250
|
+
}
|
|
251
|
+
return this.write(file, {}, args);
|
|
240
252
|
}
|
|
241
253
|
/**
|
|
242
254
|
* Extract the low-resolution thumbnail in `path/to/image.jpg`
|
package/dist/ExifTool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExifTool.js","sourceRoot":"","sources":["../src/ExifTool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAmC;AACnC,wDAAyC;AACzC,6CAA8B;AAC9B,gEAAkC;AAElC,6CAA4C;AAC5C,iEAA6D;AAC7D,6DAAyD;AACzD,qEAAiE;AAEjE,2DAAuD;AAEvD,uDAA4E;AAI5E,uCAAmC;AACnC,iCAA6B;AAS7B,qCAAqC;AAErC,iCAA6B;AAG7B,+CAA2C;AAC3C,yCAA4E;AAE5E,6DAAyD;AAEzD,qCAA0C;
|
|
1
|
+
{"version":3,"file":"ExifTool.js","sourceRoot":"","sources":["../src/ExifTool.ts"],"names":[],"mappings":"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"}
|
|
@@ -167,7 +167,9 @@ export interface ExifToolOptions extends bc.BatchClusterOptions, bc.BatchProcess
|
|
|
167
167
|
*/
|
|
168
168
|
ignoreZeroZeroLatLon: boolean;
|
|
169
169
|
/**
|
|
170
|
-
* Override the default geo-to-timezone lookup service. Note that if
|
|
170
|
+
* Override the default geo-to-timezone lookup service. Note that if
|
|
171
|
+
{@link geolocation} is enabled, we'll use
|
|
172
|
+
{@link Tags.GeolocationTimeZone} if it's not blank.
|
|
171
173
|
*
|
|
172
174
|
* This defaults to `@photostructure/tz-lookup`, but if you have the
|
|
173
175
|
* resources, consider using `geo-tz` for more accurate results.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExifToolOptions.js","sourceRoot":"","sources":["../src/ExifToolOptions.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ExifToolOptions.js","sourceRoot":"","sources":["../src/ExifToolOptions.ts"],"names":[],"mappings":";;;AAkPA,SAAgB,uBAAuB,CAErC,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;AAPD,0DAOC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ExifToolTags } from "./Tags";
|
|
2
|
+
export declare const ExifToolTagNames: (keyof ExifToolTags)[];
|
|
3
|
+
/**
|
|
4
|
+
* Is the given tag name intrinsic to the content of a given file? In other
|
|
5
|
+
* words, is it not an artifact of a metadata field?
|
|
6
|
+
*/
|
|
7
|
+
export declare function isExifToolTag(name: string): name is keyof ExifToolTags;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.isExifToolTag = exports.ExifToolTagNames = void 0;
|
|
5
|
+
const Object_1 = require("./Object");
|
|
6
|
+
exports.ExifToolTagNames = (0, Object_1.keysOf)({
|
|
7
|
+
ExifToolVersion: true,
|
|
8
|
+
SourceFile: true,
|
|
9
|
+
Error: true,
|
|
10
|
+
Warning: true,
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* Is the given tag name intrinsic to the content of a given file? In other
|
|
14
|
+
* words, is it not an artifact of a metadata field?
|
|
15
|
+
*/
|
|
16
|
+
function isExifToolTag(name) {
|
|
17
|
+
return exports.ExifToolTagNames.includes(name);
|
|
18
|
+
}
|
|
19
|
+
exports.isExifToolTag = isExifToolTag;
|
|
20
|
+
//# sourceMappingURL=ExifToolTags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExifToolTags.js","sourceRoot":"","sources":["../src/ExifToolTags.ts"],"names":[],"mappings":";AAAA,uDAAuD;;;AAEvD,qCAAiC;AAGpB,QAAA,gBAAgB,GAAG,IAAA,eAAM,EAAe;IACnD,eAAe,EAAE,IAAI;IACrB,UAAU,EAAE,IAAI;IAChB,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;CACd,CAAC,CAAA;AAEF;;;GAGG;AACH,SAAgB,aAAa,CAAC,IAAY;IACxC,OAAO,wBAAgB,CAAC,QAAQ,CAAC,IAAW,CAAC,CAAA;AAC/C,CAAC;AAFD,sCAEC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ErrorsAndWarnings } from "./ErrorsAndWarnings";
|
|
2
|
+
/**
|
|
3
|
+
* This tags are added to {@link Tags} from this library.
|
|
4
|
+
*/
|
|
5
|
+
export interface ExifToolVendoredTags extends ErrorsAndWarnings {
|
|
6
|
+
/**
|
|
7
|
+
* Either an offset, like `UTC-7`, or an actual IANA timezone, like
|
|
8
|
+
* `America/Los_Angeles`.
|
|
9
|
+
*
|
|
10
|
+
* This will be missing if we can't intuit a timezone from the metadata.
|
|
11
|
+
*/
|
|
12
|
+
tz?: string;
|
|
13
|
+
/**
|
|
14
|
+
* Description of where and how `tz` was extracted
|
|
15
|
+
*/
|
|
16
|
+
tzSource?: string;
|
|
17
|
+
}
|
|
18
|
+
export declare const ExifToolVendoredTagNames: (keyof ExifToolVendoredTags)[];
|
|
19
|
+
/**
|
|
20
|
+
* Is the given tag name intrinsic to the content of a given file? In other
|
|
21
|
+
* words, is it not an artifact of a metadata field?
|
|
22
|
+
*/
|
|
23
|
+
export declare function isExifToolVendoredTag(name: string): name is keyof ExifToolVendoredTags;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isExifToolVendoredTag = exports.ExifToolVendoredTagNames = void 0;
|
|
4
|
+
const Object_1 = require("./Object");
|
|
5
|
+
exports.ExifToolVendoredTagNames = (0, Object_1.keysOf)({
|
|
6
|
+
tz: true,
|
|
7
|
+
tzSource: true,
|
|
8
|
+
errors: true,
|
|
9
|
+
warnings: true,
|
|
10
|
+
});
|
|
11
|
+
/**
|
|
12
|
+
* Is the given tag name intrinsic to the content of a given file? In other
|
|
13
|
+
* words, is it not an artifact of a metadata field?
|
|
14
|
+
*/
|
|
15
|
+
function isExifToolVendoredTag(name) {
|
|
16
|
+
return exports.ExifToolVendoredTagNames.includes(name);
|
|
17
|
+
}
|
|
18
|
+
exports.isExifToolVendoredTag = isExifToolVendoredTag;
|
|
19
|
+
//# sourceMappingURL=ExifToolVendoredTags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExifToolVendoredTags.js","sourceRoot":"","sources":["../src/ExifToolVendoredTags.ts"],"names":[],"mappings":";;;AACA,qCAAiC;AAoBpB,QAAA,wBAAwB,GAAG,IAAA,eAAM,EAAuB;IACnE,EAAE,EAAE,IAAI;IACR,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,IAAI;CACf,CAAC,CAAA;AAEF;;;GAGG;AACH,SAAgB,qBAAqB,CACnC,IAAY;IAEZ,OAAO,gCAAwB,CAAC,QAAQ,CAAC,IAAW,CAAC,CAAA;AACvD,CAAC;AAJD,sDAIC"}
|
package/dist/FileTags.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isFileTag = void 0;
|
|
4
|
+
const Object_1 = require("./Object");
|
|
5
|
+
const FileTagNames = (0, Object_1.keysOf)({
|
|
6
|
+
BMPVersion: true,
|
|
7
|
+
BitsPerSample: true,
|
|
8
|
+
ColorComponents: true,
|
|
9
|
+
CurrentIPTCDigest: true,
|
|
10
|
+
Directory: true,
|
|
11
|
+
EncodingProcess: true,
|
|
12
|
+
ExifByteOrder: true,
|
|
13
|
+
FileAccessDate: true,
|
|
14
|
+
FileCreateDate: true,
|
|
15
|
+
FileInodeChangeDate: true,
|
|
16
|
+
FileModifyDate: true,
|
|
17
|
+
FileName: true,
|
|
18
|
+
FilePermissions: true,
|
|
19
|
+
FileSize: true,
|
|
20
|
+
FileType: true,
|
|
21
|
+
FileTypeExtension: true,
|
|
22
|
+
ImageDataMD5: true,
|
|
23
|
+
ImageHeight: true,
|
|
24
|
+
ImageWidth: true,
|
|
25
|
+
MIMEType: true,
|
|
26
|
+
NumColors: true,
|
|
27
|
+
NumImportantColors: true,
|
|
28
|
+
PixelsPerMeterX: true,
|
|
29
|
+
PixelsPerMeterY: true,
|
|
30
|
+
Planes: true,
|
|
31
|
+
YCbCrSubSampling: true,
|
|
32
|
+
});
|
|
33
|
+
/**
|
|
34
|
+
* Is the given tag name intrinsic to the content of a given file? In other
|
|
35
|
+
* words, is it not an artifact of a metadata field?
|
|
36
|
+
*/
|
|
37
|
+
function isFileTag(name) {
|
|
38
|
+
return FileTagNames.includes(name);
|
|
39
|
+
}
|
|
40
|
+
exports.isFileTag = isFileTag;
|
|
41
|
+
//# sourceMappingURL=FileTags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileTags.js","sourceRoot":"","sources":["../src/FileTags.ts"],"names":[],"mappings":";;;AAAA,qCAAiC;AAGjC,MAAM,YAAY,GAAG,IAAA,eAAM,EAAW;IACpC,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,IAAI;IACnB,eAAe,EAAE,IAAI;IACrB,iBAAiB,EAAE,IAAI;IACvB,SAAS,EAAE,IAAI;IACf,eAAe,EAAE,IAAI;IACrB,aAAa,EAAE,IAAI;IACnB,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,IAAI;IACpB,mBAAmB,EAAE,IAAI;IACzB,cAAc,EAAE,IAAI;IACpB,QAAQ,EAAE,IAAI;IACd,eAAe,EAAE,IAAI;IACrB,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;IACd,iBAAiB,EAAE,IAAI;IACvB,YAAY,EAAE,IAAI;IAClB,WAAW,EAAE,IAAI;IACjB,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE,IAAI;IACd,SAAS,EAAE,IAAI;IACf,kBAAkB,EAAE,IAAI;IACxB,eAAe,EAAE,IAAI;IACrB,eAAe,EAAE,IAAI;IACrB,MAAM,EAAE,IAAI;IACZ,gBAAgB,EAAE,IAAI;CACvB,CAAC,CAAA;AAEF;;;GAGG;AACH,SAAgB,SAAS,CAAC,IAAY;IACpC,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAW,CAAC,CAAA;AAC3C,CAAC;AAFD,8BAEC"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
export declare const GeolocationTagNames: (keyof GeolocationTags)[];
|
|
2
|
+
/**
|
|
3
|
+
* Is the given tag name intrinsic to the content of a given file? In other
|
|
4
|
+
* words, is it not an artifact of a metadata field?
|
|
5
|
+
*/
|
|
6
|
+
export declare function isGeolocationTag(name: string): name is keyof GeolocationTags;
|
|
1
7
|
/**
|
|
2
8
|
* These tags are only available if {@link ExifToolOptions.geolocation} is true and the file
|
|
3
9
|
* has valid GPS location data.
|
package/dist/GeolocationTags.js
CHANGED
|
@@ -1,3 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isGeolocationTag = exports.GeolocationTagNames = void 0;
|
|
4
|
+
const Object_1 = require("./Object");
|
|
5
|
+
exports.GeolocationTagNames = (0, Object_1.keysOf)({
|
|
6
|
+
GeolocationBearing: true,
|
|
7
|
+
GeolocationCity: true,
|
|
8
|
+
GeolocationCountry: true,
|
|
9
|
+
GeolocationCountryCode: true,
|
|
10
|
+
GeolocationDistance: true,
|
|
11
|
+
GeolocationFeatureCode: true,
|
|
12
|
+
GeolocationPopulation: true,
|
|
13
|
+
GeolocationPosition: true,
|
|
14
|
+
GeolocationRegion: true,
|
|
15
|
+
GeolocationSubregion: true,
|
|
16
|
+
GeolocationTimeZone: true,
|
|
17
|
+
});
|
|
18
|
+
/**
|
|
19
|
+
* Is the given tag name intrinsic to the content of a given file? In other
|
|
20
|
+
* words, is it not an artifact of a metadata field?
|
|
21
|
+
*/
|
|
22
|
+
function isGeolocationTag(name) {
|
|
23
|
+
return exports.GeolocationTagNames.includes(name);
|
|
24
|
+
}
|
|
25
|
+
exports.isGeolocationTag = isGeolocationTag;
|
|
3
26
|
//# sourceMappingURL=GeolocationTags.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeolocationTags.js","sourceRoot":"","sources":["../src/GeolocationTags.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"GeolocationTags.js","sourceRoot":"","sources":["../src/GeolocationTags.ts"],"names":[],"mappings":";;;AAAA,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,qBAAqB,EAAE,IAAI;IAC3B,mBAAmB,EAAE,IAAI;IACzB,iBAAiB,EAAE,IAAI;IACvB,oBAAoB,EAAE,IAAI;IAC1B,mBAAmB,EAAE,IAAI;CAC1B,CAAC,CAAA;AAEF;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,OAAO,2BAAmB,CAAC,QAAQ,CAAC,IAAW,CAAC,CAAA;AAClD,CAAC;AAFD,4CAEC"}
|
package/dist/Object.d.ts
CHANGED
|
@@ -6,3 +6,13 @@ export type Unpick<T, U> = {
|
|
|
6
6
|
[P in keyof T]: P extends U ? never : T[P];
|
|
7
7
|
};
|
|
8
8
|
export declare function omit<T extends Record<string, any>, S extends string>(t: T, ...keysToOmit: S[]): Unpick<T, S>;
|
|
9
|
+
/**
|
|
10
|
+
* Provides a type-safe exhaustive array of keys for a given interface.
|
|
11
|
+
*
|
|
12
|
+
* Unfortunately, `satisfies (keyof T)[]` doesn't ensure all keys are present,
|
|
13
|
+
* and doesn't guard against duplicates. This function does.
|
|
14
|
+
*
|
|
15
|
+
* @param t - The interface to extract keys from. This is a Record of keys to
|
|
16
|
+
* `true`, which ensures the returned key array is unique.
|
|
17
|
+
*/
|
|
18
|
+
export declare function keysOf<T>(t: Required<Record<keyof T, true>>): (keyof T)[];
|
package/dist/Object.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.omit = exports.fromEntries = exports.isFunction = exports.keys = void 0;
|
|
3
|
+
exports.keysOf = exports.omit = exports.fromEntries = exports.isFunction = exports.keys = void 0;
|
|
4
4
|
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
5
5
|
function keys(o) {
|
|
6
6
|
return o == null
|
|
@@ -40,4 +40,17 @@ function omit(t, ...keysToOmit) {
|
|
|
40
40
|
return result;
|
|
41
41
|
}
|
|
42
42
|
exports.omit = omit;
|
|
43
|
+
/**
|
|
44
|
+
* Provides a type-safe exhaustive array of keys for a given interface.
|
|
45
|
+
*
|
|
46
|
+
* Unfortunately, `satisfies (keyof T)[]` doesn't ensure all keys are present,
|
|
47
|
+
* and doesn't guard against duplicates. This function does.
|
|
48
|
+
*
|
|
49
|
+
* @param t - The interface to extract keys from. This is a Record of keys to
|
|
50
|
+
* `true`, which ensures the returned key array is unique.
|
|
51
|
+
*/
|
|
52
|
+
function keysOf(t) {
|
|
53
|
+
return Object.keys(t);
|
|
54
|
+
}
|
|
55
|
+
exports.keysOf = keysOf;
|
|
43
56
|
//# sourceMappingURL=Object.js.map
|
package/dist/Object.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Object.js","sourceRoot":"","sources":["../src/Object.ts"],"names":[],"mappings":";;;AAEA,wDAAwD;AACxD,SAAgB,IAAI,CAA+C,CAAI;IACrE,OAAO,CAAC,IAAI,IAAI;QACd,CAAC,CAAC,EAAE;QACJ,CAAC,CAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAC5B,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAC9B,CAAA;AACf,CAAC;AAND,oBAMC;AAED,SAAgB,UAAU,CAAC,GAAQ;IACjC,OAAO,OAAO,GAAG,KAAK,UAAU,CAAA;AAClC,CAAC;AAFD,gCAEC;AAED,SAAgB,WAAW,CACzB,GAAkC,EAClC,GAAS;IAET,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAA;IAC/C,4DAA4D;IAC5D,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,EAAE,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;YACjB,qBAAqB;YACrB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACjC,IAAI,OAAO,GAAG,KAAK,QAAQ;oBAAE,GAAG,GAAG,EAAE,CAAA;gBACrC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACZ,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAjBD,kCAiBC;AAID,SAAgB,IAAI,CAClB,CAAI,EACJ,GAAG,UAAe;IAElB,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,EAAS,CAAA;IAC/B,MAAM,MAAM,GAAG,EAAE,GAAG,CAAC,EAAE,CAAA;IACvB,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,EAAE,CAAC,CAAA;IACnB,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAVD,oBAUC"}
|
|
1
|
+
{"version":3,"file":"Object.js","sourceRoot":"","sources":["../src/Object.ts"],"names":[],"mappings":";;;AAEA,wDAAwD;AACxD,SAAgB,IAAI,CAA+C,CAAI;IACrE,OAAO,CAAC,IAAI,IAAI;QACd,CAAC,CAAC,EAAE;QACJ,CAAC,CAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAC5B,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAC9B,CAAA;AACf,CAAC;AAND,oBAMC;AAED,SAAgB,UAAU,CAAC,GAAQ;IACjC,OAAO,OAAO,GAAG,KAAK,UAAU,CAAA;AAClC,CAAC;AAFD,gCAEC;AAED,SAAgB,WAAW,CACzB,GAAkC,EAClC,GAAS;IAET,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAA;IAC/C,4DAA4D;IAC5D,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,EAAE,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;YACjB,qBAAqB;YACrB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBACjC,IAAI,OAAO,GAAG,KAAK,QAAQ;oBAAE,GAAG,GAAG,EAAE,CAAA;gBACrC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACZ,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAjBD,kCAiBC;AAID,SAAgB,IAAI,CAClB,CAAI,EACJ,GAAG,UAAe;IAElB,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,EAAS,CAAA;IAC/B,MAAM,MAAM,GAAG,EAAE,GAAG,CAAC,EAAE,CAAA;IACvB,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC,EAAE,CAAC,CAAA;IACnB,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAVD,oBAUC;AAED;;;;;;;;GAQG;AACH,SAAgB,MAAM,CAAI,CAAkC;IAC1D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAQ,CAAA;AAC9B,CAAC;AAFD,wBAEC"}
|
package/dist/Tags.d.ts
CHANGED
|
@@ -1,24 +1,32 @@
|
|
|
1
1
|
import { ApplicationRecordTags } from "./ApplicationRecordTags";
|
|
2
2
|
import { BinaryField } from "./BinaryField";
|
|
3
|
-
import { ErrorsAndWarnings } from "./ErrorsAndWarnings";
|
|
4
3
|
import { ExifDate } from "./ExifDate";
|
|
5
4
|
import { ExifDateTime } from "./ExifDateTime";
|
|
6
5
|
import { ExifTime } from "./ExifTime";
|
|
7
|
-
import {
|
|
6
|
+
import { ExifToolVendoredTags } from "./ExifToolVendoredTags";
|
|
8
7
|
import { ICCProfileTags } from "./ICCProfileTags";
|
|
9
8
|
import { ImageDataHashTag } from "./ImageDataHashTag";
|
|
10
9
|
import { MWGCollectionsTags, MWGKeywordTags } from "./MWGTags";
|
|
11
10
|
import { ResourceEvent } from "./ResourceEvent";
|
|
12
11
|
import { Struct } from "./Struct";
|
|
13
12
|
import { Version } from "./Version";
|
|
13
|
+
/**
|
|
14
|
+
* These tags are added by `exiftool`.
|
|
15
|
+
*/
|
|
14
16
|
export interface ExifToolTags {
|
|
15
17
|
/** ☆☆☆☆ ✔ Example: "File is empty" */
|
|
16
18
|
Error?: string;
|
|
17
19
|
/** ★★★★ ✔ Example: 12.8 */
|
|
18
20
|
ExifToolVersion?: number;
|
|
21
|
+
/** ☆☆☆☆ Example: "path/to/file.jpg" */
|
|
22
|
+
SourceFile?: string;
|
|
19
23
|
/** ☆☆☆☆ ✔ Example: "Unrecognized IPTC record 0 (ignored)" */
|
|
20
24
|
Warning?: string;
|
|
21
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* These tags are not metadata fields, but are intrinsic to the content of a
|
|
28
|
+
* given file. ExifTool can't write to many of these tags.
|
|
29
|
+
*/
|
|
22
30
|
export interface FileTags {
|
|
23
31
|
/** ☆☆☆☆ ✔ Example: "Windows V3" */
|
|
24
32
|
BMPVersion?: string;
|
|
@@ -34,8 +42,10 @@ export interface FileTags {
|
|
|
34
42
|
EncodingProcess?: string;
|
|
35
43
|
/** ★★★★ ✔ Example: "Little-endian (Intel, II)" */
|
|
36
44
|
ExifByteOrder?: string;
|
|
37
|
-
/** ★★★★ ✔ Example: "2024:03:
|
|
45
|
+
/** ★★★★ ✔ Example: "2024:03:28 11:39:10-07:00" */
|
|
38
46
|
FileAccessDate?: ExifDateTime | string;
|
|
47
|
+
/** ☆☆☆☆ Example: */
|
|
48
|
+
FileCreateDate?: ExifDateTime | string;
|
|
39
49
|
/** ★★★★ ✔ Example: "2024:03:20 21:17:00-07:00" */
|
|
40
50
|
FileInodeChangeDate?: ExifDateTime | string;
|
|
41
51
|
/** ★★★★ ✔ Example: "2023:07:19 21:21:02-07:00" */
|
|
@@ -71,6 +81,11 @@ export interface FileTags {
|
|
|
71
81
|
/** ★★★★ ✔ Example: "YCbCr4:4:4 (1 1)" */
|
|
72
82
|
YCbCrSubSampling?: string;
|
|
73
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* These are tags are derived from the values of one or more other tags.
|
|
86
|
+
* Only a few are writable directly.
|
|
87
|
+
* @see https://exiftool.org/TagNames/Composite.html
|
|
88
|
+
*/
|
|
74
89
|
export interface CompositeTags {
|
|
75
90
|
/** ☆☆☆☆ ✔ Example: "Unknown (49 5)" */
|
|
76
91
|
AdvancedSceneMode?: string;
|
|
@@ -122,7 +137,7 @@ export interface CompositeTags {
|
|
|
122
137
|
OriginalDecisionData?: BinaryField | string;
|
|
123
138
|
/** ☆☆☆☆ Example: "9.9 um" */
|
|
124
139
|
PeakSpectralSensitivity?: string;
|
|
125
|
-
/** ★★★☆ ✔ Example: "(Binary data
|
|
140
|
+
/** ★★★☆ ✔ Example: "(Binary data 37244 bytes, use -b option to extract)" */
|
|
126
141
|
PreviewImage?: BinaryField;
|
|
127
142
|
/** ☆☆☆☆ ✔ Example: "On" */
|
|
128
143
|
RedEyeReduction?: string;
|
|
@@ -170,7 +185,7 @@ export interface APP1Tags {
|
|
|
170
185
|
CreatorSoftware?: string;
|
|
171
186
|
/** ☆☆☆☆ Example: "2013:03:12 16:31:26" */
|
|
172
187
|
DateTimeGenerated?: ExifDateTime | string;
|
|
173
|
-
/** ☆☆☆☆ Example: "(Binary data
|
|
188
|
+
/** ☆☆☆☆ Example: "(Binary data 1011393 bytes, use -b option to extract)" */
|
|
174
189
|
EmbeddedImage?: BinaryField | string;
|
|
175
190
|
/** ☆☆☆☆ Example: 960 */
|
|
176
191
|
EmbeddedImageHeight?: number;
|
|
@@ -240,7 +255,7 @@ export interface APP1Tags {
|
|
|
240
255
|
PaletteStretch?: number;
|
|
241
256
|
/** ☆☆☆☆ Example: ".basicImgData.objectParams.emissivity" */
|
|
242
257
|
Param0?: string;
|
|
243
|
-
/** ☆☆☆☆ Example: "(Binary data
|
|
258
|
+
/** ☆☆☆☆ Example: "(Binary data 614604 bytes, use -b option to extract)" */
|
|
244
259
|
RawThermalImage?: BinaryField | string;
|
|
245
260
|
/** ☆☆☆☆ Example: 90 */
|
|
246
261
|
RawThermalImageHeight?: number;
|
|
@@ -429,30 +444,9 @@ export interface APP5Tags {
|
|
|
429
444
|
/** ☆☆☆☆ Example: 45 */
|
|
430
445
|
Compass?: string;
|
|
431
446
|
}
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
/** ☆☆☆☆ ✔ Example: 3200 */
|
|
436
|
-
AutoISOMin?: number;
|
|
437
|
-
/** ☆☆☆☆ ✔ Example: "Up" */
|
|
438
|
-
AutoRotation?: string;
|
|
439
|
-
/** ☆☆☆☆ ✔ Example: "Photo Global Settings" */
|
|
440
|
-
DeviceName?: string;
|
|
441
|
-
/** ☆☆☆☆ ✔ Example: "On (Manual)" */
|
|
442
|
-
HDRSetting?: string;
|
|
443
|
-
/** ☆☆☆☆ ✔ Example: "AUTO" */
|
|
444
|
-
MaximumShutterAngle?: string;
|
|
445
|
-
/** ☆☆☆☆ ✔ Example: "859830e2f50cb3397a6216f09553fce800000000000000000000000000000000" */
|
|
446
|
-
MediaUniqueID?: string;
|
|
447
|
-
/** ☆☆☆☆ ✔ Example: "7.6.4" */
|
|
448
|
-
MetadataVersion?: string;
|
|
449
|
-
/** ☆☆☆☆ ✔ Example: "12MP_W" */
|
|
450
|
-
PhotoResolution?: string;
|
|
451
|
-
/** ☆☆☆☆ ✔ Example: "On" */
|
|
452
|
-
ProTune?: string;
|
|
453
|
-
/** ☆☆☆☆ ✔ Example: "4_1SEC" */
|
|
454
|
-
Rate?: string;
|
|
455
|
-
}
|
|
447
|
+
/**
|
|
448
|
+
* @see https://exiftool.org/TagNames/EXIF.html
|
|
449
|
+
*/
|
|
456
450
|
export interface EXIFTags {
|
|
457
451
|
/** ☆☆☆☆ ✔ Example: 988517 */
|
|
458
452
|
Acceleration?: number;
|
|
@@ -636,7 +630,7 @@ export interface EXIFTags {
|
|
|
636
630
|
InteropIndex?: string;
|
|
637
631
|
/** ★★★★ ✔ Example: "undef undef undef" */
|
|
638
632
|
InteropVersion?: string;
|
|
639
|
-
/** ☆☆☆☆ ✔ Example: "(Binary data
|
|
633
|
+
/** ☆☆☆☆ ✔ Example: "(Binary data 571392 bytes, use -b option to extract)" */
|
|
640
634
|
JpgFromRaw?: BinaryField;
|
|
641
635
|
/** ☆☆☆☆ ✔ Example: 845574 */
|
|
642
636
|
JpgFromRawLength?: number;
|
|
@@ -792,7 +786,7 @@ export interface EXIFTags {
|
|
|
792
786
|
SubjectDistanceRange?: string;
|
|
793
787
|
/** ☆☆☆☆ ✔ Example: 1 */
|
|
794
788
|
SubjectLocation?: number;
|
|
795
|
-
/** ★★★★ ✔ Example: "(Binary data
|
|
789
|
+
/** ★★★★ ✔ Example: "(Binary data 39781 bytes, use -b option to extract)" */
|
|
796
790
|
ThumbnailImage?: BinaryField;
|
|
797
791
|
/** ★★★★ ✔ Example: 9998 */
|
|
798
792
|
ThumbnailLength?: number;
|
|
@@ -804,7 +798,7 @@ export interface EXIFTags {
|
|
|
804
798
|
TileByteCounts?: BinaryField | string;
|
|
805
799
|
/** ☆☆☆☆ ✔ Example: 512 */
|
|
806
800
|
TileLength?: number;
|
|
807
|
-
/** ☆☆☆☆ ✔ Example: "(Binary data
|
|
801
|
+
/** ☆☆☆☆ ✔ Example: "(Binary data 507 bytes, use -b option to extract)" */
|
|
808
802
|
TileOffsets?: BinaryField | string;
|
|
809
803
|
/** ☆☆☆☆ ✔ Example: 512 */
|
|
810
804
|
TileWidth?: number;
|
|
@@ -845,8 +839,35 @@ export interface EXIFTags {
|
|
|
845
839
|
/** ★★★★ ✔ Example: 99 */
|
|
846
840
|
YResolution?: number;
|
|
847
841
|
}
|
|
842
|
+
export interface APP6Tags {
|
|
843
|
+
/** ☆☆☆☆ ✔ Example: 800 */
|
|
844
|
+
AutoISOMax?: number;
|
|
845
|
+
/** ☆☆☆☆ ✔ Example: 3200 */
|
|
846
|
+
AutoISOMin?: number;
|
|
847
|
+
/** ☆☆☆☆ ✔ Example: "Up" */
|
|
848
|
+
AutoRotation?: string;
|
|
849
|
+
/** ☆☆☆☆ ✔ Example: "Photo Global Settings" */
|
|
850
|
+
DeviceName?: string;
|
|
851
|
+
/** ☆☆☆☆ ✔ Example: "On (Manual)" */
|
|
852
|
+
HDRSetting?: string;
|
|
853
|
+
/** ☆☆☆☆ ✔ Example: "AUTO" */
|
|
854
|
+
MaximumShutterAngle?: string;
|
|
855
|
+
/** ☆☆☆☆ ✔ Example: "859830e2f50cb3397a6216f09553fce800000000000000000000000000000000" */
|
|
856
|
+
MediaUniqueID?: string;
|
|
857
|
+
/** ☆☆☆☆ ✔ Example: "7.6.4" */
|
|
858
|
+
MetadataVersion?: string;
|
|
859
|
+
/** ☆☆☆☆ ✔ Example: "12MP_W" */
|
|
860
|
+
PhotoResolution?: string;
|
|
861
|
+
/** ☆☆☆☆ ✔ Example: "On" */
|
|
862
|
+
ProTune?: string;
|
|
863
|
+
/** ☆☆☆☆ ✔ Example: "4_1SEC" */
|
|
864
|
+
Rate?: string;
|
|
865
|
+
}
|
|
866
|
+
/**
|
|
867
|
+
* @see https://exiftool.org/TagNames/FlashPix.html
|
|
868
|
+
*/
|
|
848
869
|
export interface FlashPixTags {
|
|
849
|
-
/** ☆☆☆☆ Example: "(Binary data
|
|
870
|
+
/** ☆☆☆☆ Example: "(Binary data 18 bytes, use -b option to extract)" */
|
|
850
871
|
AudioStream?: BinaryField | string;
|
|
851
872
|
/** ☆☆☆☆ ✔ Example: "Unicode UTF-16, little endian" */
|
|
852
873
|
CodePage?: string;
|
|
@@ -869,6 +890,34 @@ export interface FlashPixTags {
|
|
|
869
890
|
/** ☆☆☆☆ ✔ Example: 1 */
|
|
870
891
|
UsedExtensionNumbers?: number;
|
|
871
892
|
}
|
|
893
|
+
/**
|
|
894
|
+
* These tags are only available if {@link ExifToolOptions.geolocation} is true
|
|
895
|
+
* and the file has valid GPS location data.
|
|
896
|
+
*/
|
|
897
|
+
export interface GeolocationTags {
|
|
898
|
+
/** ☆☆☆☆ ✔ Example: 99 */
|
|
899
|
+
GeolocationBearing?: number;
|
|
900
|
+
/** ☆☆☆☆ ✔ Example: "Zürich" */
|
|
901
|
+
GeolocationCity?: string;
|
|
902
|
+
/** ☆☆☆☆ ✔ Example: "United States" */
|
|
903
|
+
GeolocationCountry?: string;
|
|
904
|
+
/** ☆☆☆☆ ✔ Example: "US" */
|
|
905
|
+
GeolocationCountryCode?: string;
|
|
906
|
+
/** ☆☆☆☆ ✔ Example: "9.60 km" */
|
|
907
|
+
GeolocationDistance?: string;
|
|
908
|
+
/** ☆☆☆☆ ✔ Example: "PPLL" */
|
|
909
|
+
GeolocationFeatureCode?: string;
|
|
910
|
+
/** ☆☆☆☆ ✔ Example: 95000 */
|
|
911
|
+
GeolocationPopulation?: number;
|
|
912
|
+
/** ☆☆☆☆ ✔ Example: "7.3397, 134.4733" */
|
|
913
|
+
GeolocationPosition?: string;
|
|
914
|
+
/** ☆☆☆☆ ✔ Example: "Île-de-France" */
|
|
915
|
+
GeolocationRegion?: string;
|
|
916
|
+
/** ☆☆☆☆ ✔ Example: "Yokohama Shi" */
|
|
917
|
+
GeolocationSubregion?: string;
|
|
918
|
+
/** ☆☆☆☆ ✔ Example: "Pacific/Saipan" */
|
|
919
|
+
GeolocationTimeZone?: string;
|
|
920
|
+
}
|
|
872
921
|
export interface JSONTags {
|
|
873
922
|
/** ☆☆☆☆ Example: 0 */
|
|
874
923
|
AIScene?: number;
|
|
@@ -883,30 +932,9 @@ export interface JSONTags {
|
|
|
883
932
|
/** ☆☆☆☆ Example: 1 */
|
|
884
933
|
ZoomMultiple?: number;
|
|
885
934
|
}
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
/** ★★☆☆ ✔ Example: 960 */
|
|
890
|
-
DependentImage2EntryNumber?: number;
|
|
891
|
-
/** ☆☆☆☆ ✔ Example: "(Binary data 66 bytes, use -b option to extract)" */
|
|
892
|
-
ImageUIDList?: BinaryField | string;
|
|
893
|
-
/** ★★☆☆ ✔ Example: "0100" */
|
|
894
|
-
MPFVersion?: string;
|
|
895
|
-
/** ★★☆☆ ✔ Example: "Representative image, Dependent parent image" */
|
|
896
|
-
MPImageFlags?: string;
|
|
897
|
-
/** ★★☆☆ ✔ Example: "Unknown (4)" */
|
|
898
|
-
MPImageFormat?: string;
|
|
899
|
-
/** ★★☆☆ ✔ Example: 999325 */
|
|
900
|
-
MPImageLength?: number;
|
|
901
|
-
/** ★★☆☆ ✔ Example: 9999872 */
|
|
902
|
-
MPImageStart?: number;
|
|
903
|
-
/** ★★☆☆ ✔ Example: "Undefined" */
|
|
904
|
-
MPImageType?: string;
|
|
905
|
-
/** ★★☆☆ ✔ Example: 3 */
|
|
906
|
-
NumberOfImages?: number;
|
|
907
|
-
/** ☆☆☆☆ ✔ Example: 1 */
|
|
908
|
-
TotalFrames?: number;
|
|
909
|
-
}
|
|
935
|
+
/**
|
|
936
|
+
* @see https://exiftool.org/TagNames/IPTC.html
|
|
937
|
+
*/
|
|
910
938
|
export interface IPTCTags {
|
|
911
939
|
/** ☆☆☆☆ ✔ Example: 4 */
|
|
912
940
|
ApplicationRecordVersion?: number;
|
|
@@ -973,6 +1001,30 @@ export interface IPTCTags {
|
|
|
973
1001
|
/** ☆☆☆☆ ✔ Example: "1 (most urgent)" */
|
|
974
1002
|
Urgency?: string;
|
|
975
1003
|
}
|
|
1004
|
+
export interface MPFTags {
|
|
1005
|
+
/** ★★☆☆ ✔ Example: 9697 */
|
|
1006
|
+
DependentImage1EntryNumber?: number;
|
|
1007
|
+
/** ★★☆☆ ✔ Example: 960 */
|
|
1008
|
+
DependentImage2EntryNumber?: number;
|
|
1009
|
+
/** ☆☆☆☆ ✔ Example: "(Binary data 66 bytes, use -b option to extract)" */
|
|
1010
|
+
ImageUIDList?: BinaryField | string;
|
|
1011
|
+
/** ★★☆☆ ✔ Example: "0100" */
|
|
1012
|
+
MPFVersion?: string;
|
|
1013
|
+
/** ★★☆☆ ✔ Example: "Representative image, Dependent parent image" */
|
|
1014
|
+
MPImageFlags?: string;
|
|
1015
|
+
/** ★★☆☆ ✔ Example: "Unknown (4)" */
|
|
1016
|
+
MPImageFormat?: string;
|
|
1017
|
+
/** ★★☆☆ ✔ Example: 999325 */
|
|
1018
|
+
MPImageLength?: number;
|
|
1019
|
+
/** ★★☆☆ ✔ Example: 9999872 */
|
|
1020
|
+
MPImageStart?: number;
|
|
1021
|
+
/** ★★☆☆ ✔ Example: "Undefined" */
|
|
1022
|
+
MPImageType?: string;
|
|
1023
|
+
/** ★★☆☆ ✔ Example: 3 */
|
|
1024
|
+
NumberOfImages?: number;
|
|
1025
|
+
/** ☆☆☆☆ ✔ Example: 1 */
|
|
1026
|
+
TotalFrames?: number;
|
|
1027
|
+
}
|
|
976
1028
|
export interface MetaTags {
|
|
977
1029
|
/** ☆☆☆☆ Example: 1 */
|
|
978
1030
|
BorderID?: number;
|
|
@@ -1017,6 +1069,9 @@ export interface PanasonicRawTags {
|
|
|
1017
1069
|
/** ☆☆☆☆ ✔ Example: 7 */
|
|
1018
1070
|
NumWBEntries?: number;
|
|
1019
1071
|
}
|
|
1072
|
+
/**
|
|
1073
|
+
* @see https://exiftool.org/TagNames/Photoshop.html
|
|
1074
|
+
*/
|
|
1020
1075
|
export interface PhotoshopTags {
|
|
1021
1076
|
/** ☆☆☆☆ ✔ Example: true */
|
|
1022
1077
|
CopyrightFlag?: boolean;
|
|
@@ -4260,7 +4315,7 @@ export interface MakerNotesTags {
|
|
|
4260
4315
|
ToneCurve?: string;
|
|
4261
4316
|
/** ☆☆☆☆ ✔ Example: "(Binary data 95 bytes, use -b option to extract)" */
|
|
4262
4317
|
ToneCurveMatching?: BinaryField | string;
|
|
4263
|
-
/** ☆☆☆☆ ✔ Example: "(Binary data
|
|
4318
|
+
/** ☆☆☆☆ ✔ Example: "(Binary data 1679 bytes, use -b option to extract)" */
|
|
4264
4319
|
ToneCurveTable?: BinaryField | string;
|
|
4265
4320
|
/** ☆☆☆☆ ✔ Example: "Highlights; 0; -7; 7; Shadows; 0; -7; 7; Midtones; 0; -7;…0; 0; 0" */
|
|
4266
4321
|
ToneLevel?: string;
|
|
@@ -4424,7 +4479,7 @@ export interface MakerNotesTags {
|
|
|
4424
4479
|
WhiteBalanceSetting?: string;
|
|
4425
4480
|
/** ☆☆☆☆ ✔ Example: "Auto" */
|
|
4426
4481
|
WhiteBalanceSetup?: string;
|
|
4427
|
-
/** ☆☆☆☆ ✔ Example: "(Binary data
|
|
4482
|
+
/** ☆☆☆☆ ✔ Example: "(Binary data 2217 bytes, use -b option to extract)" */
|
|
4428
4483
|
WhiteBalanceTable?: BinaryField | string;
|
|
4429
4484
|
/** ☆☆☆☆ ✔ Example: "Auto" */
|
|
4430
4485
|
WhiteBalanceTemperature?: string;
|
|
@@ -4471,6 +4526,9 @@ export interface MakerNotesTags {
|
|
|
4471
4526
|
/** ☆☆☆☆ ✔ Example: 4184638 */
|
|
4472
4527
|
ZoomedPreviewStart?: number;
|
|
4473
4528
|
}
|
|
4529
|
+
/**
|
|
4530
|
+
* @see https://exiftool.org/TagNames/XMP.html
|
|
4531
|
+
*/
|
|
4474
4532
|
export interface XMPTags {
|
|
4475
4533
|
/** ☆☆☆☆ ✔ Example: "uuid:faf5bdd5-ba3d-11da-ad31-d33d75182f1b" */
|
|
4476
4534
|
About?: string;
|
|
@@ -5035,14 +5093,8 @@ export interface XMPTags {
|
|
|
5035
5093
|
* devices (like iPhones) An example value, JSON stringified, follows the
|
|
5036
5094
|
* popularity ratings.
|
|
5037
5095
|
*
|
|
5038
|
-
* Autogenerated by "yarn mktags" by ExifTool 12.80 on
|
|
5039
|
-
*
|
|
5096
|
+
* Autogenerated by "yarn mktags" by ExifTool 12.80 on Thu Mar 28 2024.
|
|
5097
|
+
* 2736 unique tags were found in 10096 photo and video files.
|
|
5040
5098
|
*/
|
|
5041
|
-
export interface Tags extends APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, ApplicationRecordTags, CompositeTags, EXIFTags,
|
|
5042
|
-
/** Full, resolved native path to this file */
|
|
5043
|
-
SourceFile?: string;
|
|
5044
|
-
/** Either an offset, like `UTC-7`, or an actual timezone, like `America/Los_Angeles` */
|
|
5045
|
-
tz?: string;
|
|
5046
|
-
/** Description of where and how `tz` was extracted */
|
|
5047
|
-
tzSource?: string;
|
|
5099
|
+
export interface Tags extends APP12Tags, APP14Tags, APP1Tags, APP4Tags, APP5Tags, APP6Tags, ApplicationRecordTags, CompositeTags, EXIFTags, ExifToolTags, ExifToolVendoredTags, FileTags, FlashPixTags, GeolocationTags, ICCProfileTags, IPTCTags, ImageDataHashTag, JFIFTags, JSONTags, MPFTags, MWGCollectionsTags, MWGKeywordTags, MakerNotesTags, MetaTags, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, RIFFTags, XMPTags {
|
|
5048
5100
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "exiftool-vendored",
|
|
3
|
-
"version": "25.
|
|
3
|
+
"version": "25.1.0",
|
|
4
4
|
"description": "Efficient, cross-platform access to ExifTool",
|
|
5
5
|
"main": "./dist/ExifTool.js",
|
|
6
6
|
"types": "./dist/ExifTool.d.ts",
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
"compile:watch": "yarn precompile && tsc --watch",
|
|
18
18
|
"premktags": "yarn compile",
|
|
19
19
|
"mktags": "node dist/update/mktags.js",
|
|
20
|
+
"prelint": "yarn compile",
|
|
20
21
|
"lint": "yarn eslint src --ext .ts",
|
|
21
22
|
"prettier": "prettier --write src/*.ts src/**/*.ts",
|
|
22
23
|
"pretest": "run-p lint compile",
|
|
@@ -32,6 +33,9 @@
|
|
|
32
33
|
"url": "https://github.com/photostructure/exiftool-vendored.js.git"
|
|
33
34
|
},
|
|
34
35
|
"release-it": {
|
|
36
|
+
"hooks": {
|
|
37
|
+
"before:init": "yarn lint"
|
|
38
|
+
},
|
|
35
39
|
"src": {
|
|
36
40
|
"tagName": "v%s",
|
|
37
41
|
"commitArgs": "-S",
|