exiftool-vendored 36.0.0 → 36.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 +4 -0
- package/README.md +4 -0
- package/RELEASE.md +1 -1
- package/dist/DateTime.d.ts +2 -2
- package/dist/DateTime.js +1 -1
- package/dist/DateTime.js.map +1 -1
- package/dist/ExifTool.d.ts +30 -0
- package/dist/ExifTool.js +43 -1
- package/dist/ExifTool.js.map +1 -1
- package/dist/TagEdit.d.ts +62 -0
- package/dist/TagEdit.js +224 -0
- package/dist/TagEdit.js.map +1 -0
- package/dist/TagEdit.spec.d.ts +1 -0
- package/dist/TagEdit.spec.js +863 -0
- package/dist/TagEdit.spec.js.map +1 -0
- package/dist/Timezones.js.map +1 -1
- package/dist/WriteTask.d.ts +6 -0
- package/dist/WriteTask.js +58 -18
- package/dist/WriteTask.js.map +1 -1
- package/dist/WriteTask.spec.js +17 -0
- package/dist/WriteTask.spec.js.map +1 -1
- package/package.json +10 -39
package/CHANGELOG.md
CHANGED
|
@@ -35,6 +35,10 @@ vendored versions of ExifTool match the version that they vendor.
|
|
|
35
35
|
|
|
36
36
|
## History
|
|
37
37
|
|
|
38
|
+
### v36.1.0
|
|
39
|
+
|
|
40
|
+
- ✨ Added `ExifTool.editTags()` for validated exact list-value additions/removals, MWG Collection additions/predicate removals, and audited scalar or flattened person-name removals without replacing unrelated metadata. See the [usage examples](docs/USAGE-EXAMPLES.md#editing-individual-tag-values).
|
|
41
|
+
|
|
38
42
|
### v36.0.0
|
|
39
43
|
|
|
40
44
|
- 🏚️ **Dropped Node.js 20 from the supported engines and CI matrix.** Node.js 20 ("Iron") has reached [end-of-life](https://github.com/nodejs/release#release-schedule), so the minimum supported runtime is now Node.js 22 (`engines.node` is `>=22`). The CI test matrix is now Node.js 22, 24, and 26.
|
package/README.md
CHANGED
|
@@ -96,6 +96,10 @@ await exiftool.write("photo.jpg", {
|
|
|
96
96
|
});
|
|
97
97
|
```
|
|
98
98
|
|
|
99
|
+
For targeted list-value and supported structured edits, use `editTags()`. See
|
|
100
|
+
[Editing Individual Tag Values](docs/USAGE-EXAMPLES.md#editing-individual-tag-values)
|
|
101
|
+
for examples, supported tags, and safety constraints.
|
|
102
|
+
|
|
99
103
|
### Extracting Images
|
|
100
104
|
|
|
101
105
|
```javascript
|
package/RELEASE.md
CHANGED
|
@@ -47,7 +47,7 @@ For development and testing:
|
|
|
47
47
|
1. `git clone` this repo
|
|
48
48
|
2. `npm install`
|
|
49
49
|
3. `npm run mktags ../test-images` # < assumes `../test-images` has the full ExifTool sample image suite
|
|
50
|
-
4. `npm run
|
|
50
|
+
4. `npm run all` (look for lint or documentation generation issues)
|
|
51
51
|
5. `npm run test`
|
|
52
52
|
6. Verify diffs are reasonable, `git commit` and `git push`
|
|
53
53
|
7. Follow the Automatic Release steps above
|
package/dist/DateTime.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DateTime } from "luxon";
|
|
1
|
+
import { DateTime, DateTimeMaybeValid } from "luxon";
|
|
2
2
|
import { ExifDate } from "./ExifDate";
|
|
3
3
|
import { ExifDateTime } from "./ExifDateTime";
|
|
4
4
|
import { ExifTime } from "./ExifTime";
|
|
@@ -8,7 +8,7 @@ export declare const SecondMs = 1000;
|
|
|
8
8
|
export declare const MinuteMs: number;
|
|
9
9
|
export declare const HourMs: number;
|
|
10
10
|
export declare const DayMs: number;
|
|
11
|
-
export type DateOrTime = ExifDateTime | ExifDate | ExifTime |
|
|
11
|
+
export type DateOrTime = ExifDateTime | ExifDate | ExifTime | DateTimeMaybeValid;
|
|
12
12
|
export declare function isDateOrTime(o: unknown): o is DateOrTime;
|
|
13
13
|
export declare function dateTimeToExif(d: DateTime, opts?: {
|
|
14
14
|
includeOffset?: boolean;
|
package/dist/DateTime.js
CHANGED
package/dist/DateTime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTime.js","sourceRoot":"","sources":["../src/DateTime.ts"],"names":[],"mappings":";;;AAMA,sCAEC;
|
|
1
|
+
{"version":3,"file":"DateTime.js","sourceRoot":"","sources":["../src/DateTime.ts"],"names":[],"mappings":";;;AAMA,sCAEC;AAUD,oCAOC;AAED,wCASC;AAED,oCAMC;AAED,kBAOC;AArDD,iCAAqD;AACrD,yCAAsC;AACtC,iDAA8C;AAC9C,yCAAsC;AAGtC,SAAgB,aAAa,CAAC,EAAmB;IAC/C,OAAO,EAAE,EAAE,OAAO,KAAK,IAAI,CAAC;AAC9B,CAAC;AAEY,QAAA,QAAQ,GAAG,IAAI,CAAC;AAChB,QAAA,QAAQ,GAAG,EAAE,GAAG,gBAAQ,CAAC;AACzB,QAAA,MAAM,GAAG,EAAE,GAAG,gBAAQ,CAAC;AACvB,QAAA,KAAK,GAAG,EAAE,GAAG,cAAM,CAAC;AAKjC,SAAgB,YAAY,CAAC,CAAU;IACrC,OAAO,CACL,CAAC,YAAY,2BAAY;QACzB,CAAC,YAAY,mBAAQ;QACrB,CAAC,YAAY,mBAAQ;QACrB,gBAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CACvB,CAAC;AACJ,CAAC;AAED,SAAgB,cAAc,CAC5B,CAAW,EACX,IAAiE;IAEjE,OAAO,CAAC,CAAC,QAAQ,CACf,kBAAkB;QAChB,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,CAAC,IAAI,EAAE,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAC9C,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAAC,CAAa;IACxC,IAAI,gBAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,SAAgB,GAAG,CACjB,CAAW,EACX,IAAwC;IAExC,OAAO,CAAC,CAAC,QAAQ,CACf,UAAU,GAAG,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAChE,CAAC;AACJ,CAAC"}
|
package/dist/ExifTool.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { ExifToolTask, ExifToolTaskOptions } from "./ExifToolTask";
|
|
|
5
5
|
import { PreviewTag } from "./PreviewTag";
|
|
6
6
|
import { ReadRawTaskOptions } from "./ReadRawTask";
|
|
7
7
|
import { ReadTaskOptions } from "./ReadTask";
|
|
8
|
+
import { TagEdit } from "./TagEdit";
|
|
8
9
|
import { Tags } from "./Tags";
|
|
9
10
|
import { WriteTags } from "./WriteTags";
|
|
10
11
|
import { WriteTaskOptions, WriteTaskResult } from "./WriteTask";
|
|
@@ -56,6 +57,8 @@ export type { UnsubscribeFunction } from "./Settings";
|
|
|
56
57
|
export type { ShortcutTags } from "./ShortcutTags";
|
|
57
58
|
export type { Struct } from "./Struct";
|
|
58
59
|
export type { TagDescription, TagDescriptionsOptions } from "./TagDescriptions";
|
|
60
|
+
export { CollectionEditTagName, RegionNameEditTagName, TagEditAddTagNames, TagEditRemoveOnlyTagNames, TagEditTagNames, TagEditValueTagNames, } from "./TagEdit";
|
|
61
|
+
export type { AddCollectionEdit, AddTagEdit, CollectionPredicate, RemoveCollectionEdit, RemoveTagEdit, TagEdit, TagEditAddTagName, TagEditRemoveOnlyTagName, TagEditTagName, TagEditValueTagName, } from "./TagEdit";
|
|
59
62
|
export type { APPTags, CompositeTags, EXIFTags, ExifToolTags, FileTags, FlashPixTags, IPTCTags, JFIFTags, MakerNotesTags, MetaTags, MPFTags, PanasonicRawTags, PhotoshopTags, PrintIMTags, QuickTimeTags, RAFTags, RIFFTags, Tags, XMPTags, } from "./Tags";
|
|
60
63
|
export type { Version } from "./Version";
|
|
61
64
|
export type { AdditionalWriteTags, EXIFStrictDateTags, ExpandedDateTags, GroupPrefixedTags, MutableTags, StructAppendTags, WritableGPSRefs, WriteTags, XMPPartialDateTags, } from "./WriteTags";
|
|
@@ -210,6 +213,33 @@ export declare class ExifTool {
|
|
|
210
213
|
* instead: move `writeArgs` into your `options` hash.
|
|
211
214
|
*/
|
|
212
215
|
write(file: string, tags: WriteTags, writeArgs?: string[], options?: WriteTaskOptions): Promise<WriteTaskResult>;
|
|
216
|
+
/**
|
|
217
|
+
* Add or remove individual metadata values without replacing unrelated list
|
|
218
|
+
* items. Arguments are emitted in the provided order in one non-retriable
|
|
219
|
+
* ExifTool write command, but ExifTool applies removals before additions for
|
|
220
|
+
* the same tag.
|
|
221
|
+
*
|
|
222
|
+
* Tag names must be entries in {@link TagEditTagNames}. The primitive subset
|
|
223
|
+
* is {@link TagEditValueTagNames}; {@link TagEditAddTagNames} and
|
|
224
|
+
* {@link TagEditRemoveOnlyTagNames} distinguish add-capable lists from
|
|
225
|
+
* audited scalar and flattened structure fields. Structured values and
|
|
226
|
+
* predicates are supported only for the closed schemas explicitly typed by
|
|
227
|
+
* {@link TagEdit}. Each primitive operation accepts one non-empty, exactly
|
|
228
|
+
* preservable string value; repeat operations to preserve duplicate
|
|
229
|
+
* additions. A remove operation deletes every exact matching value. Values
|
|
230
|
+
* are literal text and HTML entity sequences are not decoded, unlike the
|
|
231
|
+
* legacy behavior of {@link ExifTool.write}.
|
|
232
|
+
*
|
|
233
|
+
* This API does not set, clear, or force-write empty tags. Continue using
|
|
234
|
+
* {@link ExifTool.write} for whole-tag writes and deletion with `null`.
|
|
235
|
+
*
|
|
236
|
+
* @param file an existing file or writable sidecar path
|
|
237
|
+
* @param edits one or more ordered add/remove operations
|
|
238
|
+
* @param options overrides to the configured write-task options. `-api` and
|
|
239
|
+
* `-sep`/`-separator` write arguments are rejected because they can alter
|
|
240
|
+
* edit semantics.
|
|
241
|
+
*/
|
|
242
|
+
editTags(file: string, edits: readonly TagEdit[], options?: WriteTaskOptions): Promise<WriteTaskResult>;
|
|
213
243
|
/**
|
|
214
244
|
* This will strip `file` of all metadata tags. The original file (with the
|
|
215
245
|
* name `${FILENAME}_original`) will be retained. Note that some tags, like
|
package/dist/ExifTool.js
CHANGED
|
@@ -36,7 +36,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
36
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.
|
|
39
|
+
exports.TagEditRemoveOnlyTagNames = exports.TagEditAddTagNames = exports.RegionNameEditTagName = exports.CollectionEditTagName = exports.ImageHashTypes = exports.WriteTaskOptionFields = exports.DefaultWriteTaskOptions = exports.zoneToShortOffset = exports.validTzOffsetMinutes = exports.ValidTimezoneOffsets = exports.UnsetZoneOffsetMinutes = exports.UnsetZoneName = exports.UnsetZone = exports.TimezoneOffsetTagnames = exports.TimezoneOffsetRE = exports.parseTimezoneOffsetToMinutes = exports.parseTimezoneOffsetMatch = exports.offsetMinutesToZoneName = exports.normalizeZone = exports.isZoneValid = exports.isZoneUnset = exports.isZone = exports.isUTC = exports.inferLikelyOffsetMinutes = exports.extractZone = exports.extractTzOffsetFromUTCOffset = exports.extractTzOffsetFromTags = exports.equivalentZones = exports.defaultVideosToUTC = exports.ArchaicTimezoneOffsets = exports.TagDescriptions = exports.strEnum = exports.Settings = exports.Setting = exports.DefaultReadTaskOptions = exports.DefaultReadRawTaskOptions = exports.parseJSON = exports.isGeolocationTag = exports.GeolocationTagNames = exports.exiftoolPath = exports.ExifToolTask = exports.ExifTime = exports.ExifDateTime = exports.ExifDate = exports.DefaultMaxProcs = exports.DefaultExiftoolArgs = exports.DefaultExifToolOptions = exports.CapturedAtTagNames = exports.BinaryField = exports.retryOnReject = void 0;
|
|
40
|
+
exports.exiftool = exports.ExifTool = exports.TagEditValueTagNames = exports.TagEditTagNames = void 0;
|
|
40
41
|
const bc = __importStar(require("batch-cluster"));
|
|
41
42
|
const _cp = __importStar(require("node:child_process"));
|
|
42
43
|
const _fs = __importStar(require("node:fs"));
|
|
@@ -129,6 +130,13 @@ Object.defineProperty(exports, "DefaultWriteTaskOptions", { enumerable: true, ge
|
|
|
129
130
|
Object.defineProperty(exports, "WriteTaskOptionFields", { enumerable: true, get: function () { return WriteTask_2.WriteTaskOptionFields; } });
|
|
130
131
|
var ExifToolOptions_2 = require("./ExifToolOptions");
|
|
131
132
|
Object.defineProperty(exports, "ImageHashTypes", { enumerable: true, get: function () { return ExifToolOptions_2.ImageHashTypes; } });
|
|
133
|
+
var TagEdit_1 = require("./TagEdit");
|
|
134
|
+
Object.defineProperty(exports, "CollectionEditTagName", { enumerable: true, get: function () { return TagEdit_1.CollectionEditTagName; } });
|
|
135
|
+
Object.defineProperty(exports, "RegionNameEditTagName", { enumerable: true, get: function () { return TagEdit_1.RegionNameEditTagName; } });
|
|
136
|
+
Object.defineProperty(exports, "TagEditAddTagNames", { enumerable: true, get: function () { return TagEdit_1.TagEditAddTagNames; } });
|
|
137
|
+
Object.defineProperty(exports, "TagEditRemoveOnlyTagNames", { enumerable: true, get: function () { return TagEdit_1.TagEditRemoveOnlyTagNames; } });
|
|
138
|
+
Object.defineProperty(exports, "TagEditTagNames", { enumerable: true, get: function () { return TagEdit_1.TagEditTagNames; } });
|
|
139
|
+
Object.defineProperty(exports, "TagEditValueTagNames", { enumerable: true, get: function () { return TagEdit_1.TagEditValueTagNames; } });
|
|
132
140
|
/**
|
|
133
141
|
* This is the hardcoded path in the exiftool shebang line (#!/usr/bin/perl).
|
|
134
142
|
*
|
|
@@ -298,6 +306,40 @@ class ExifTool {
|
|
|
298
306
|
const retriable = false;
|
|
299
307
|
return this.enqueueTask(() => WriteTask_1.WriteTask.for(file, tags, opts), retriable);
|
|
300
308
|
}
|
|
309
|
+
/**
|
|
310
|
+
* Add or remove individual metadata values without replacing unrelated list
|
|
311
|
+
* items. Arguments are emitted in the provided order in one non-retriable
|
|
312
|
+
* ExifTool write command, but ExifTool applies removals before additions for
|
|
313
|
+
* the same tag.
|
|
314
|
+
*
|
|
315
|
+
* Tag names must be entries in {@link TagEditTagNames}. The primitive subset
|
|
316
|
+
* is {@link TagEditValueTagNames}; {@link TagEditAddTagNames} and
|
|
317
|
+
* {@link TagEditRemoveOnlyTagNames} distinguish add-capable lists from
|
|
318
|
+
* audited scalar and flattened structure fields. Structured values and
|
|
319
|
+
* predicates are supported only for the closed schemas explicitly typed by
|
|
320
|
+
* {@link TagEdit}. Each primitive operation accepts one non-empty, exactly
|
|
321
|
+
* preservable string value; repeat operations to preserve duplicate
|
|
322
|
+
* additions. A remove operation deletes every exact matching value. Values
|
|
323
|
+
* are literal text and HTML entity sequences are not decoded, unlike the
|
|
324
|
+
* legacy behavior of {@link ExifTool.write}.
|
|
325
|
+
*
|
|
326
|
+
* This API does not set, clear, or force-write empty tags. Continue using
|
|
327
|
+
* {@link ExifTool.write} for whole-tag writes and deletion with `null`.
|
|
328
|
+
*
|
|
329
|
+
* @param file an existing file or writable sidecar path
|
|
330
|
+
* @param edits one or more ordered add/remove operations
|
|
331
|
+
* @param options overrides to the configured write-task options. `-api` and
|
|
332
|
+
* `-sep`/`-separator` write arguments are rejected because they can alter
|
|
333
|
+
* edit semantics.
|
|
334
|
+
*/
|
|
335
|
+
editTags(file, edits, options) {
|
|
336
|
+
const opts = {
|
|
337
|
+
...(0, Pick_1.pick)(this.options, ...WriteTask_1.WriteTaskOptionFields),
|
|
338
|
+
...options,
|
|
339
|
+
};
|
|
340
|
+
// Edits such as additions are not necessarily idempotent.
|
|
341
|
+
return this.enqueueTask(() => WriteTask_1.WriteTask.forTagEdits(file, edits, opts), false);
|
|
342
|
+
}
|
|
301
343
|
/**
|
|
302
344
|
* This will strip `file` of all metadata tags. The original file (with the
|
|
303
345
|
* name `${FILENAME}_original`) will be retained. Note that some tags, like
|
package/dist/ExifTool.js.map
CHANGED
|
@@ -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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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { CollectionInfo } from "./MWGTags";
|
|
2
|
+
import { StrEnumKeys } from "./StrEnum";
|
|
3
|
+
/**
|
|
4
|
+
* Canonical family-1 string-list tags whose `+=` and `-=` behavior has been
|
|
5
|
+
* audited for exact add and remove edits.
|
|
6
|
+
*/
|
|
7
|
+
export declare const TagEditAddTagNames: import("./StrEnum").StrEnum<"IPTC:CatalogSets" | "IPTC:Keywords" | "MIE-Doc:Keywords" | "XMP-acdsee:Keywords" | "XMP-dc:Subject" | "XMP-digiKam:TagsList" | "XMP-expressionmedia:CatalogSets" | "XMP-expressionmedia:People" | "XMP-iptcExt:PersonInImage" | "XMP-lr:HierarchicalSubject" | "XMP-mediapro:CatalogSets" | "XMP-mediapro:People" | "XMP-microsoft:LastKeywordXMP">;
|
|
8
|
+
/** A flattened MWG structure field supported only for removal. */
|
|
9
|
+
export declare const RegionNameEditTagName: "XMP-mwg-rs:RegionName";
|
|
10
|
+
/**
|
|
11
|
+
* Canonical primitive tags supported only for exact removal. Flattened region
|
|
12
|
+
* edits preserve remaining sibling fields, but ExifTool may prune structures
|
|
13
|
+
* left empty and callers must preflight format-specific collision risks
|
|
14
|
+
* described in the usage documentation.
|
|
15
|
+
*/
|
|
16
|
+
export declare const TagEditRemoveOnlyTagNames: import("./StrEnum").StrEnum<"XMP-mwg-rs:RegionName" | "XMP-MP:RegionPersonDisplayName" | "XMP-acdsee-rs:ACDSeeRegionName" | "XMP-xmpDM:Album">;
|
|
17
|
+
/** Every canonical primitive tag supported for removal. */
|
|
18
|
+
export declare const TagEditValueTagNames: import("./StrEnum").StrEnum<"IPTC:CatalogSets" | "IPTC:Keywords" | "MIE-Doc:Keywords" | "XMP-acdsee:Keywords" | "XMP-dc:Subject" | "XMP-digiKam:TagsList" | "XMP-expressionmedia:CatalogSets" | "XMP-expressionmedia:People" | "XMP-iptcExt:PersonInImage" | "XMP-lr:HierarchicalSubject" | "XMP-mediapro:CatalogSets" | "XMP-mediapro:People" | "XMP-microsoft:LastKeywordXMP" | "XMP-mwg-rs:RegionName" | "XMP-MP:RegionPersonDisplayName" | "XMP-acdsee-rs:ACDSeeRegionName" | "XMP-xmpDM:Album">;
|
|
19
|
+
/** The sole structured tag supported by {@link TagEdit}. */
|
|
20
|
+
export declare const CollectionEditTagName: "XMP-mwg-coll:Collections";
|
|
21
|
+
/** Every canonical tag accepted by {@link TagEdit}. */
|
|
22
|
+
export declare const TagEditTagNames: import("./StrEnum").StrEnum<"IPTC:CatalogSets" | "IPTC:Keywords" | "MIE-Doc:Keywords" | "XMP-acdsee:Keywords" | "XMP-dc:Subject" | "XMP-digiKam:TagsList" | "XMP-expressionmedia:CatalogSets" | "XMP-expressionmedia:People" | "XMP-iptcExt:PersonInImage" | "XMP-lr:HierarchicalSubject" | "XMP-mediapro:CatalogSets" | "XMP-mediapro:People" | "XMP-microsoft:LastKeywordXMP" | "XMP-mwg-rs:RegionName" | "XMP-MP:RegionPersonDisplayName" | "XMP-acdsee-rs:ACDSeeRegionName" | "XMP-xmpDM:Album" | "XMP-mwg-coll:Collections">;
|
|
23
|
+
export type TagEditTagName = StrEnumKeys<typeof TagEditTagNames>;
|
|
24
|
+
export type TagEditAddTagName = StrEnumKeys<typeof TagEditAddTagNames>;
|
|
25
|
+
export type TagEditRemoveOnlyTagName = StrEnumKeys<typeof TagEditRemoveOnlyTagNames>;
|
|
26
|
+
export type TagEditValueTagName = StrEnumKeys<typeof TagEditValueTagNames>;
|
|
27
|
+
export type CollectionPredicate = {
|
|
28
|
+
CollectionName: string;
|
|
29
|
+
CollectionURI?: string;
|
|
30
|
+
} | {
|
|
31
|
+
CollectionName?: string;
|
|
32
|
+
CollectionURI: string;
|
|
33
|
+
};
|
|
34
|
+
export interface AddTagEdit {
|
|
35
|
+
tag: TagEditAddTagName;
|
|
36
|
+
operation: "add";
|
|
37
|
+
value: string;
|
|
38
|
+
predicate?: never;
|
|
39
|
+
}
|
|
40
|
+
export interface RemoveTagEdit {
|
|
41
|
+
tag: TagEditValueTagName;
|
|
42
|
+
operation: "remove";
|
|
43
|
+
value: string;
|
|
44
|
+
predicate?: never;
|
|
45
|
+
}
|
|
46
|
+
export interface AddCollectionEdit {
|
|
47
|
+
tag: typeof CollectionEditTagName;
|
|
48
|
+
operation: "add";
|
|
49
|
+
value: CollectionInfo;
|
|
50
|
+
predicate?: never;
|
|
51
|
+
}
|
|
52
|
+
export interface RemoveCollectionEdit {
|
|
53
|
+
tag: typeof CollectionEditTagName;
|
|
54
|
+
operation: "remove";
|
|
55
|
+
predicate: CollectionPredicate;
|
|
56
|
+
value?: never;
|
|
57
|
+
}
|
|
58
|
+
export type TagEdit = AddTagEdit | RemoveTagEdit | AddCollectionEdit | RemoveCollectionEdit;
|
|
59
|
+
/**
|
|
60
|
+
* Validate and snapshot edits before any ExifTool task is enqueued.
|
|
61
|
+
*/
|
|
62
|
+
export declare function validateTagEdits(edits: readonly TagEdit[]): readonly TagEdit[];
|
package/dist/TagEdit.js
ADDED
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TagEditTagNames = exports.CollectionEditTagName = exports.TagEditValueTagNames = exports.TagEditRemoveOnlyTagNames = exports.RegionNameEditTagName = exports.TagEditAddTagNames = void 0;
|
|
4
|
+
exports.validateTagEdits = validateTagEdits;
|
|
5
|
+
const StrEnum_1 = require("./StrEnum");
|
|
6
|
+
const TagNameValidation_1 = require("./TagNameValidation");
|
|
7
|
+
/**
|
|
8
|
+
* Canonical family-1 string-list tags whose `+=` and `-=` behavior has been
|
|
9
|
+
* audited for exact add and remove edits.
|
|
10
|
+
*/
|
|
11
|
+
exports.TagEditAddTagNames = (0, StrEnum_1.strEnum)("IPTC:CatalogSets", "IPTC:Keywords", "MIE-Doc:Keywords", "XMP-acdsee:Keywords", "XMP-dc:Subject", "XMP-digiKam:TagsList", "XMP-expressionmedia:CatalogSets", "XMP-expressionmedia:People", "XMP-iptcExt:PersonInImage", "XMP-lr:HierarchicalSubject", "XMP-mediapro:CatalogSets", "XMP-mediapro:People", "XMP-microsoft:LastKeywordXMP");
|
|
12
|
+
/** A flattened MWG structure field supported only for removal. */
|
|
13
|
+
exports.RegionNameEditTagName = "XMP-mwg-rs:RegionName";
|
|
14
|
+
/**
|
|
15
|
+
* Canonical primitive tags supported only for exact removal. Flattened region
|
|
16
|
+
* edits preserve remaining sibling fields, but ExifTool may prune structures
|
|
17
|
+
* left empty and callers must preflight format-specific collision risks
|
|
18
|
+
* described in the usage documentation.
|
|
19
|
+
*/
|
|
20
|
+
exports.TagEditRemoveOnlyTagNames = (0, StrEnum_1.strEnum)("XMP-MP:RegionPersonDisplayName", "XMP-acdsee-rs:ACDSeeRegionName", exports.RegionNameEditTagName, "XMP-xmpDM:Album");
|
|
21
|
+
// XMP-iptcExt:PersonInImageName is intentionally absent: it is lang-alt, and
|
|
22
|
+
// removing its x-default value also deletes nonmatching translations.
|
|
23
|
+
/** Every canonical primitive tag supported for removal. */
|
|
24
|
+
exports.TagEditValueTagNames = (0, StrEnum_1.strEnum)(...exports.TagEditAddTagNames, ...exports.TagEditRemoveOnlyTagNames);
|
|
25
|
+
/** The sole structured tag supported by {@link TagEdit}. */
|
|
26
|
+
exports.CollectionEditTagName = "XMP-mwg-coll:Collections";
|
|
27
|
+
/** Every canonical tag accepted by {@link TagEdit}. */
|
|
28
|
+
exports.TagEditTagNames = (0, StrEnum_1.strEnum)(...exports.TagEditValueTagNames, exports.CollectionEditTagName);
|
|
29
|
+
const CollectionFields = ["CollectionName", "CollectionURI"];
|
|
30
|
+
const ListSeparator = String.fromCharCode(31);
|
|
31
|
+
const CanonicalTagNamesByLowercase = new Map(exports.TagEditTagNames.values.map((tag) => [tag.toLowerCase(), tag]));
|
|
32
|
+
function editContext(index) {
|
|
33
|
+
return `tag edit at index ${index}`;
|
|
34
|
+
}
|
|
35
|
+
function isPlainObject(value) {
|
|
36
|
+
if (value == null || typeof value !== "object")
|
|
37
|
+
return false;
|
|
38
|
+
const prototype = Object.getPrototypeOf(value);
|
|
39
|
+
return prototype === Object.prototype || prototype === null;
|
|
40
|
+
}
|
|
41
|
+
function validateSupportedTagName(tag, index) {
|
|
42
|
+
const context = editContext(index);
|
|
43
|
+
(0, TagNameValidation_1.validateTagName)(tag, `${context} tag name`);
|
|
44
|
+
const parts = tag.split(":");
|
|
45
|
+
if (parts.length < 2 || parts.some((part) => part.length === 0)) {
|
|
46
|
+
throw new Error(`${context} must use a group-qualified tag name: ${tag}`);
|
|
47
|
+
}
|
|
48
|
+
const canonical = CanonicalTagNamesByLowercase.get(tag.toLowerCase());
|
|
49
|
+
if (canonical == null) {
|
|
50
|
+
throw new Error(`${context} tag is not supported for exact edits: ${tag}`);
|
|
51
|
+
}
|
|
52
|
+
if (tag !== canonical) {
|
|
53
|
+
throw new Error(`${context} must use canonical tag casing ${canonical}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function validateUnicode(value, index) {
|
|
57
|
+
for (const character of value) {
|
|
58
|
+
const codePoint = character.codePointAt(0) ?? 0;
|
|
59
|
+
if (codePoint <= 0x8 ||
|
|
60
|
+
codePoint === 0xb ||
|
|
61
|
+
codePoint === 0xc ||
|
|
62
|
+
(codePoint >= 0xe && codePoint <= 0x1f)) {
|
|
63
|
+
throw new Error(`${editContext(index)} value contains an XML-invalid control character`);
|
|
64
|
+
}
|
|
65
|
+
// CR is XML-valid, but ExifTool emits a literal 0x0D byte rather than
|
|
66
|
+
// `
`, and XML 1.0 §2.11 requires parsers to normalize CR and CRLF to
|
|
67
|
+
// LF before reporting content. Only ExifTool's own non-normalizing reader
|
|
68
|
+
// returns the CR; every other consumer sees LF.
|
|
69
|
+
if (codePoint === 0xd) {
|
|
70
|
+
throw new Error(`${editContext(index)} value contains a carriage return, which XML parsers normalize to a line feed`);
|
|
71
|
+
}
|
|
72
|
+
if ((codePoint >= 0xd800 && codePoint <= 0xdfff) ||
|
|
73
|
+
(codePoint >= 0xfdd0 && codePoint <= 0xfdef) ||
|
|
74
|
+
(codePoint & 0xffff) === 0xfffe ||
|
|
75
|
+
(codePoint & 0xffff) === 0xffff) {
|
|
76
|
+
throw new Error(`${editContext(index)} value contains a non-round-tripping Unicode character`);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
function validateEditString(value, index, allowEmpty = false) {
|
|
81
|
+
if (typeof value !== "string") {
|
|
82
|
+
throw new Error(`${editContext(index)} requires one string value`);
|
|
83
|
+
}
|
|
84
|
+
if (!allowEmpty && value.length === 0) {
|
|
85
|
+
throw new Error(`${editContext(index)} requires a non-empty string value`);
|
|
86
|
+
}
|
|
87
|
+
if (value.includes(ListSeparator)) {
|
|
88
|
+
throw new Error(`${editContext(index)} value must not contain ExifTool's list separator`);
|
|
89
|
+
}
|
|
90
|
+
validateUnicode(value, index);
|
|
91
|
+
return value;
|
|
92
|
+
}
|
|
93
|
+
function validateCollectionFields(value, index, requireCompleteValue) {
|
|
94
|
+
const context = editContext(index);
|
|
95
|
+
if (!isPlainObject(value)) {
|
|
96
|
+
throw new Error(`${context} requires a Collection object`);
|
|
97
|
+
}
|
|
98
|
+
const descriptors = Object.getOwnPropertyDescriptors(value);
|
|
99
|
+
const fields = Reflect.ownKeys(descriptors);
|
|
100
|
+
if (fields.length === 0) {
|
|
101
|
+
throw new Error(`${context} requires a non-empty predicate`);
|
|
102
|
+
}
|
|
103
|
+
const normalized = {};
|
|
104
|
+
for (const field of fields) {
|
|
105
|
+
if (typeof field !== "string" ||
|
|
106
|
+
!CollectionFields.includes(field)) {
|
|
107
|
+
throw new Error(`${context} has unknown Collection predicate field ${String(field)}`);
|
|
108
|
+
}
|
|
109
|
+
const descriptor = descriptors[field];
|
|
110
|
+
if (descriptor == null || !("value" in descriptor)) {
|
|
111
|
+
throw new Error(`${context} Collection fields must be data properties`);
|
|
112
|
+
}
|
|
113
|
+
const fieldValue = descriptor.value;
|
|
114
|
+
if (typeof fieldValue !== "string") {
|
|
115
|
+
throw new Error(`${context} Collection ${field} must be a string`);
|
|
116
|
+
}
|
|
117
|
+
normalized[field] = validateEditString(fieldValue, index, true);
|
|
118
|
+
}
|
|
119
|
+
if (requireCompleteValue &&
|
|
120
|
+
CollectionFields.some((field) => !Object.hasOwn(normalized, field))) {
|
|
121
|
+
throw new Error(`${context} Collection value requires CollectionName and CollectionURI`);
|
|
122
|
+
}
|
|
123
|
+
return normalized;
|
|
124
|
+
}
|
|
125
|
+
function collectionMatches(value, predicate) {
|
|
126
|
+
return CollectionFields.every((field) => !Object.hasOwn(predicate, field) || value[field] === predicate[field]);
|
|
127
|
+
}
|
|
128
|
+
function rejectUnorderableConflicts(edits) {
|
|
129
|
+
for (const [index, edit] of edits.entries()) {
|
|
130
|
+
for (let otherIndex = index + 1; otherIndex < edits.length; otherIndex++) {
|
|
131
|
+
const other = edits[otherIndex];
|
|
132
|
+
if (other == null)
|
|
133
|
+
continue;
|
|
134
|
+
if (edit.operation !== "add" ||
|
|
135
|
+
other.operation !== "remove" ||
|
|
136
|
+
edit.tag.toLowerCase() !== other.tag.toLowerCase()) {
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
const addition = edit;
|
|
140
|
+
const removal = other;
|
|
141
|
+
const conflicts = addition.tag === exports.CollectionEditTagName &&
|
|
142
|
+
removal.tag === exports.CollectionEditTagName
|
|
143
|
+
? collectionMatches(addition.value, removal.predicate)
|
|
144
|
+
: "value" in addition &&
|
|
145
|
+
"value" in removal &&
|
|
146
|
+
addition.value === removal.value;
|
|
147
|
+
if (conflicts) {
|
|
148
|
+
throw new Error(`${editContext(index)} conflicts with tag edit at index ${otherIndex}: ` +
|
|
149
|
+
"ExifTool cannot preserve add-then-remove because it applies removals before additions for the same value in one write");
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Validate and snapshot edits before any ExifTool task is enqueued.
|
|
156
|
+
*/
|
|
157
|
+
function validateTagEdits(edits) {
|
|
158
|
+
if (!Array.isArray(edits) || edits.length === 0) {
|
|
159
|
+
throw new Error("editTags requires at least one tag edit");
|
|
160
|
+
}
|
|
161
|
+
const normalized = [];
|
|
162
|
+
for (const [index, edit] of edits.entries()) {
|
|
163
|
+
const context = editContext(index);
|
|
164
|
+
if (!isPlainObject(edit)) {
|
|
165
|
+
throw new Error(`${context} must be an object`);
|
|
166
|
+
}
|
|
167
|
+
if (!Object.hasOwn(edit, "tag") || !Object.hasOwn(edit, "operation")) {
|
|
168
|
+
throw new Error(`${context} requires a tag and operation`);
|
|
169
|
+
}
|
|
170
|
+
const tag = edit.tag;
|
|
171
|
+
const operation = edit.operation;
|
|
172
|
+
validateSupportedTagName(tag, index);
|
|
173
|
+
if (operation !== "add" && operation !== "remove") {
|
|
174
|
+
throw new Error(`${context} has invalid operation ${operation}`);
|
|
175
|
+
}
|
|
176
|
+
const hasValue = Object.hasOwn(edit, "value");
|
|
177
|
+
const hasPredicate = Object.hasOwn(edit, "predicate");
|
|
178
|
+
const value = hasValue ? edit.value : undefined;
|
|
179
|
+
const predicate = hasPredicate ? edit.predicate : undefined;
|
|
180
|
+
if (tag === exports.CollectionEditTagName) {
|
|
181
|
+
if (operation === "add") {
|
|
182
|
+
if (!hasValue || hasPredicate) {
|
|
183
|
+
throw new Error(`${context} Collection addition requires one value`);
|
|
184
|
+
}
|
|
185
|
+
normalized.push({
|
|
186
|
+
tag,
|
|
187
|
+
operation,
|
|
188
|
+
value: validateCollectionFields(value, index, true),
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
if (!hasPredicate || hasValue) {
|
|
193
|
+
throw new Error(`${context} Collection removal requires a non-empty predicate`);
|
|
194
|
+
}
|
|
195
|
+
normalized.push({
|
|
196
|
+
tag,
|
|
197
|
+
operation,
|
|
198
|
+
predicate: validateCollectionFields(predicate, index, false),
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
if (hasPredicate) {
|
|
204
|
+
throw new Error(`${context} uses an unsupported structured edit tag ${tag}`);
|
|
205
|
+
}
|
|
206
|
+
if (!hasValue) {
|
|
207
|
+
throw new Error(`${context} requires one value`);
|
|
208
|
+
}
|
|
209
|
+
const normalizedValue = validateEditString(value, index);
|
|
210
|
+
if (operation === "add") {
|
|
211
|
+
if (!exports.TagEditAddTagNames.includes(tag)) {
|
|
212
|
+
throw new Error(`${context} ${tag} is remove-only`);
|
|
213
|
+
}
|
|
214
|
+
normalized.push({ tag, operation, value: normalizedValue });
|
|
215
|
+
}
|
|
216
|
+
else {
|
|
217
|
+
normalized.push({ tag, operation, value: normalizedValue });
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
rejectUnorderableConflicts(normalized);
|
|
222
|
+
return normalized;
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=TagEdit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TagEdit.js","sourceRoot":"","sources":["../src/TagEdit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|