exiftool-vendored 22.2.0 → 22.2.1

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
@@ -26,6 +26,10 @@ vendored versions of ExifTool match the version that they vendor.
26
26
 
27
27
  ## Version history
28
28
 
29
+ ### v22.2.1
30
+
31
+ - 🐞 `ExifTime` now properly rejects invalid `SubSecTime`, `SubSecTimeOriginal`, ... values of "0" or "00".
32
+
29
33
  ### v22.2.0
30
34
 
31
35
  - ✨ Add support for zone extraction from `ExifDateTime`, `ExifTime`, `number[]`, and `number` fields.
package/dist/ExifTime.js CHANGED
@@ -4,14 +4,18 @@ exports.ExifTime = void 0;
4
4
  const luxon_1 = require("luxon");
5
5
  const Maybe_1 = require("./Maybe");
6
6
  const String_1 = require("./String");
7
+ // Reject times whose raw value is "0" or "00". TODO: We may want to reject
8
+ // "00:00", but midnight is a valid time--we'd have to reject 00:00 only if we
9
+ // could be certain this photo wasn't taken exactly at midnight.
10
+ const onlyZerosRE = /^0+$/;
7
11
  /**
8
12
  * Encodes an ExifTime (which may not have a timezone offset)
9
13
  */
10
14
  class ExifTime {
11
15
  static fromEXIF(text) {
12
- if ((0, String_1.blank)(text))
13
- return;
14
16
  text = (0, String_1.toS)(text).trim();
17
+ if ((0, String_1.blank)(text) || onlyZerosRE.test(text))
18
+ return;
15
19
  return (0, Maybe_1.first)(["HH:mm:ss.uZZ", "HH:mm:ssZZ", "HH:mm:ss.u", "HH:mm:ss"], (fmt) => (0, Maybe_1.map)(luxon_1.DateTime.fromFormat(text, fmt), (dt) => this.fromDateTime(dt, text)));
16
20
  }
17
21
  static fromDateTime(dt, rawValue) {
@@ -1 +1 @@
1
- {"version":3,"file":"ExifTime.js","sourceRoot":"","sources":["../src/ExifTime.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAChC,mCAA2C;AAC3C,qCAAiD;AAEjD;;GAEG;AACH,MAAa,QAAQ;IACnB,MAAM,CAAC,QAAQ,CAAC,IAAY;QAC1B,IAAI,IAAA,cAAK,EAAC,IAAI,CAAC;YAAE,OAAM;QACvB,IAAI,GAAG,IAAA,YAAG,EAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QACvB,OAAO,IAAA,aAAK,EACV,CAAC,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC,EACxD,CAAC,GAAG,EAAE,EAAE,CACN,IAAA,WAAG,EAAC,gBAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAC3E,CAAA;IACH,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,EAAY,EAAE,QAAiB;QACjD,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO;YAC9B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,IAAI,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;IAC3E,CAAC;IAED,YACW,IAAY,EACZ,MAAc,EACd,MAAc,EACd,WAAoB,EACpB,QAAiB;QAJjB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAS;QACpB,aAAQ,GAAR,QAAQ,CAAS;IACzB,CAAC;IAEJ,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAEO,MAAM;QACZ,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC;YACvD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,GAAG,GAAG,IAAA,aAAI,EAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAClC,CAAC;IAED,QAAQ;QACN,OAAO,IAAA,aAAI,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IAC5E,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;IAED,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAoC;QAClD,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,CACd,CAAA;IACH,CAAC;CACF;AAnED,4BAmEC"}
1
+ {"version":3,"file":"ExifTime.js","sourceRoot":"","sources":["../src/ExifTime.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAChC,mCAA2C;AAC3C,qCAAiD;AAEjD,2EAA2E;AAC3E,8EAA8E;AAC9E,gEAAgE;AAChE,MAAM,WAAW,GAAG,MAAM,CAAA;AAE1B;;GAEG;AACH,MAAa,QAAQ;IACnB,MAAM,CAAC,QAAQ,CAAC,IAAY;QAC1B,IAAI,GAAG,IAAA,YAAG,EAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QACvB,IAAI,IAAA,cAAK,EAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAM;QACjD,OAAO,IAAA,aAAK,EACV,CAAC,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC,EACxD,CAAC,GAAG,EAAE,EAAE,CACN,IAAA,WAAG,EAAC,gBAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAC3E,CAAA;IACH,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,EAAY,EAAE,QAAiB;QACjD,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,OAAO;YAC9B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,IAAI,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;IAC3E,CAAC;IAED,YACW,IAAY,EACZ,MAAc,EACd,MAAc,EACd,WAAoB,EACpB,QAAiB;QAJjB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAS;QACpB,aAAQ,GAAR,QAAQ,CAAS;IACzB,CAAC;IAEJ,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAEO,MAAM;QACZ,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC;YACvD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,GAAG,GAAG,IAAA,aAAI,EAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAClC,CAAC;IAED,QAAQ;QACN,OAAO,IAAA,aAAI,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IAC5E,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;IAED,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAoC;QAClD,OAAO,IAAI,QAAQ,CACjB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,CACd,CAAA;IACH,CAAC;CACF;AAnED,4BAmEC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "exiftool-vendored",
3
- "version": "22.2.0",
3
+ "version": "22.2.1",
4
4
  "description": "Efficient, cross-platform access to ExifTool",
5
5
  "main": "./dist/ExifTool.js",
6
6
  "types": "./dist/ExifTool.d.ts",