New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

exifreader

Package Overview
Dependencies
Maintainers
1
Versions
97
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

exifreader - npm Package Compare versions

Comparing version 3.5.0 to 3.6.0

babel.config.json

2

dist/exif-reader.js

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.ExifReader=t():e.ExifReader=t()}("undefined"!=typeof self?self:this,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(module,__webpack_exports__,__webpack_require__){"use strict";function get(){if("undefined"!=typeof DOMParser)return DOMParser;try{return eval("require")("xmldom").DOMParser}catch(e){return}}__webpack_exports__.a={get:get}},function(e,t,n){"use strict";function r(e,t,n){for(var r=[],i=0;i<n&&t+i<e.byteLength;i++)r.push(e.getUint8(t+i,!1));return o(r).join("")}function i(e,t,n){for(var r=[],i=0;i<n&&t+i<e.byteLength;i+=2)r.push(e.getUint16(t+i));return o(r).join("")}function o(e){return e.map((function(e){return String.fromCharCode(e)}))}function a(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];for(var i=0,o=n;i<o.length;i++){var a=o[i];for(var u in a)e[u]=a[u]}return e}function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}n.r(t),n.d(t,"errors",(function(){return Ct})),n.d(t,"load",(function(){return It})),n.d(t,"loadView",(function(){return wt}));var f=function(){function e(t){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),function(e){return"object"!==u(e)||void 0===e.length||void 0===e.readUInt8||void 0===e.readUInt16LE||void 0===e.readUInt16BE||void 0===e.readUInt32LE||void 0===e.readUInt32BE||void 0===e.readInt32LE||void 0===e.readInt32BE}(t))throw new Error("DataView: Passed buffer type is unsupported.");this.buffer=t,this.byteLength=this.buffer.length}var t,n,r;return t=e,(n=[{key:"getUint8",value:function(e){return this.buffer.readUInt8(e)}},{key:"getUint16",value:function(e,t){return t?this.buffer.readUInt16LE(e):this.buffer.readUInt16BE(e)}},{key:"getUint32",value:function(e,t){return t?this.buffer.readUInt32LE(e):this.buffer.readUInt32BE(e)}},{key:"getInt32",value:function(e,t){return t?this.buffer.readInt32LE(e):this.buffer.readInt32BE(e)}}])&&c(t.prototype,n),r&&c(t,r),e}();var s={BIG_ENDIAN:19789,LITTLE_ENDIAN:18761,getByteOrder:function(e,t){if(18761===e.getUint16(t))return 18761;if(19789===e.getUint16(t))return 19789;throw new Error("Illegal byte order value. Faulty image.")}};var l={isHeicFile:function(e){var t=r(e,4+"ftyp".length,4);return"ftyp"===r(e,4,"ftyp".length)&&-1!==["heic","heix","hevc","hevx","heim","heis","hevm","hevs","mif1"].indexOf(t)},findHeicOffsets:function(e){var t=function(e){var t=0;for(;t+4+4<=e.byteLength;){var n=d(e,t);if(n>=8)if("meta"===r(e,t+4,4))return{offset:t,length:n};t+=n}return{offset:void 0,length:0}}(e),n=t.offset,i=t.length;if(void 0===n)return{hasAppMarkers:!1};var o=Math.min(n+i,e.byteLength),a=function(e,t,n){var i={exifItemOffset:void 0,ilocOffset:void 0};for(;t+4<=n&&(!i.exifItemOffset||!i.ilocOffset);)"Exif"===r(e,t,4)?i.exifItemOffset=t+-4:"iloc"===r(e,t,4)&&(i.ilocOffset=t),t++;return i}(e,n,o),u=a.exifItemOffset,c=a.ilocOffset;if(void 0===u||void 0===c)return{hasAppMarkers:!1};var f=function(e,t,n,r){if(t+2>r)return;var i=e.getUint16(t);n+=12;for(;n+16<=r;){if(e.getUint16(n)===i){var o=e.getUint32(n+8);if(o+4<=e.byteLength){var a=e.getUint32(o);return o+(a+4)}}n+=16}return}(e,u,c,o);return{hasAppMarkers:void 0!==f,tiffHeaderOffset:f}}};function d(e,t){var n=e.getUint32(t);return function(e){return 0===e}(n)?e.byteLength-t:function(e){return 1===e}(n)&&function(e,t){return 0===e.getUint32(t+8)}(e,t)?e.getUint32(t+12):n}var p=4+"ICC_PROFILE\0".length,m=p+1,g={parseAppMarkers:function(e){if(function(e){return e.byteLength>=4&&function(e){var t=e.getUint16(0)===s.LITTLE_ENDIAN;return 42===e.getUint16(2,t)}(e)}(e))return{hasAppMarkers:!0,tiffHeaderOffset:0};if(function(e){return e.byteLength>=2&&65496===e.getUint16(0,!1)}(e))return function(e){var t,n,r,i,o,a,u,c=2;for(;c+4+5<=e.byteLength;){if(h(e,c))n=c+2;else if(v(e,c))r=c+2;else if(S(e,c))t=e.getUint16(c+2,!1),i=c+10;else if(b(e,c))a||(a=[]),t=e.getUint16(c+2,!1),a.push(I(c,t));else if(C(e,c))a||(a=[]),t=e.getUint16(c+2,!1),a.push(A(c,t));else if(w(e,c))t=e.getUint16(c+2,!1),o=c+18;else if(y(e,c)){t=e.getUint16(c+2,!1);var f=c+18,s=t-16,l=e.getUint8(c+p,!1),d=e.getUint8(c+m,!1);u||(u=[]),u.push({offset:f,length:s,chunkNumber:l,chunksTotal:d})}else{if(!P(e,c))break;t=e.getUint16(c+2,!1)}c+=2+t}return{hasAppMarkers:c>2,fileDataOffset:n||r,tiffHeaderOffset:i,iptcDataOffset:o,xmpChunks:a,iccChunks:u}}(e);if(function(e){return"‰PNG\r\n\n"===r(e,0,"‰PNG\r\n\n".length)}(e))return function(e){var t={hasAppMarkers:!1},n="‰PNG\r\n\n".length;for(;n+4+4<=e.byteLength;)U(e,n)?(t.hasAppMarkers=!0,t.pngHeaderOffset=n+8):D(e,n)&&(t.hasAppMarkers=!0,t.xmpChunks=[{dataOffset:n+8+"XML:com.adobe.xmp".length,length:e.getUint32(n+0)-"XML:com.adobe.xmp".length}]),n+=e.getUint32(n+0)+4+4+4;return t}(e);if(l.isHeicFile(e))return l.findHeicOffsets(e);throw new Error("Invalid image format")}};function h(e,t){return 65472===e.getUint16(t,!1)}function v(e,t){return 65474===e.getUint16(t,!1)}function y(e,t){var n="ICC_PROFILE\0".length;return 65506===e.getUint16(t,!1)&&"ICC_PROFILE\0"===r(e,t+4,n)}function S(e,t){var n="Exif".length;return 65505===e.getUint16(t,!1)&&"Exif"===r(e,t+4,n)&&0===e.getUint8(t+4+n,!1)}function b(e,t){return 65505===e.getUint16(t,!1)&&function(e,t){return"http://ns.adobe.com/xap/1.0/\0"===r(e,t+4,"http://ns.adobe.com/xap/1.0/\0".length)}(e,t)}function C(e,t){return 65505===e.getUint16(t,!1)&&function(e,t){return"http://ns.adobe.com/xmp/extension/\0"===r(e,t+4,"http://ns.adobe.com/xmp/extension/\0".length)}(e,t)}function I(e,t){return{dataOffset:e+33,length:t-31}}function A(e,t){return{dataOffset:e+79,length:t-77}}function w(e,t){var n="Photoshop 3.0".length;return 65517===e.getUint16(t,!1)&&"Photoshop 3.0"===r(e,t+4,n)&&0===e.getUint8(t+4+n,!1)}function P(e,t){var n=e.getUint16(t,!1);return n>=65504&&n<=65519||65534===n||65472===n||65474===n||65476===n||65499===n||65501===n||65498===n}function U(e,t){return"IHDR"===r(e,t+4,4)}function D(e,t){return"iTXt"===r(e,t+4,4)&&"XML:com.adobe.xmp"===r(e,t+8,"XML:com.adobe.xmp".length)}var O={1:1,2:1,3:2,4:4,5:8,7:1,9:4,10:8,13:4},T={BYTE:1,ASCII:2,SHORT:3,LONG:4,RATIONAL:5,UNDEFINED:7,SLONG:9,SRATIONAL:10,IFD:13},M={getAsciiValue:function(e){return e.map((function(e){return String.fromCharCode(e)}))},getByteAt:x,getAsciiAt:function(e,t){return e.getUint8(t)},getShortAt:function(e,t,n){return e.getUint16(t,n===s.LITTLE_ENDIAN)},getLongAt:F,getRationalAt:function(e,t,n){return[F(e,t,n),F(e,t+4,n)]},getUndefinedAt:function(e,t){return x(e,t)},getSlongAt:L,getSrationalAt:function(e,t,n){return[L(e,t,n),L(e,t+4,n)]},getIfdPointerAt:function(e,t,n){return F(e,t,n)},typeSizes:O,tagTypes:T,getTypeSize:function(e){if(void 0===T[e])throw new Error("No such type found.");return O[T[e]]}};function x(e,t){return e.getUint8(t)}function F(e,t,n){return e.getUint32(t,n===s.LITTLE_ENDIAN)}function L(e,t,n){return e.getInt32(t,n===s.LITTLE_ENDIAN)}var R={LightSource:function(e){return 1===e?"Daylight":2===e?"Fluorescent":3===e?"Tungsten (incandescent light)":4===e?"Flash":9===e?"Fine weather":10===e?"Cloudy weather":11===e?"Shade":12===e?"Daylight fluorescent (D 5700 – 7100K)":13===e?"Day white fluorescent (N 4600 – 5400K)":14===e?"Cool white fluorescent (W 3900 – 4500K)":15===e?"White fluorescent (WW 3200 – 3700K)":17===e?"Standard light A":18===e?"Standard light B":19===e?"Standard light C":20===e?"D55":21===e?"D65":22===e?"D75":23===e?"D50":24===e?"ISO studio tungsten":255===e?"Other light source":"Unknown"}};function k(e){return e.map((function(e){return String.fromCharCode(e)})).join("")}function N(e){if(e.length>=8){var t=k(e.slice(0,8));if("ASCII\0\0\0"===t)return k(e.slice(8));if("JIS\0\0\0\0\0"===t)return"[JIS encoded text]";if("UNICODE\0"===t)return"[Unicode encoded text]";if("\0\0\0\0\0\0\0\0"===t)return"[Undefined encoding]"}return"Undefined"}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,i=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return j(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return j(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function G(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,i=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return B(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return B(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function B(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var z={0:{name:"GPSVersionID",description:function(e){return 2===e[0]&&2===e[1]&&0===e[2]&&0===e[3]?"Version 2.2":"Unknown"}},1:{name:"GPSLatitudeRef",description:function(e){var t=e.join("");return"N"===t?"North latitude":"S"===t?"South latitude":"Unknown"}},2:{name:"GPSLatitude",description:function(e){return e[0][0]/e[0][1]+e[1][0]/e[1][1]/60+e[2][0]/e[2][1]/3600}},3:{name:"GPSLongitudeRef",description:function(e){var t=e.join("");return"E"===t?"East longitude":"W"===t?"West longitude":"Unknown"}},4:{name:"GPSLongitude",description:function(e){return e[0][0]/e[0][1]+e[1][0]/e[1][1]/60+e[2][0]/e[2][1]/3600}},5:{name:"GPSAltitudeRef",description:function(e){return 0===e?"Sea level":1===e?"Sea level reference (negative value)":"Unknown"}},6:{name:"GPSAltitude",description:function(e){return e[0]/e[1]+" m"}},7:{name:"GPSTimeStamp",description:function(e){return e.map((function(e){var t=G(e,2),n=t[0]/t[1];return/^\d(\.|$)/.test("".concat(n))?"0".concat(n):n})).join(":")}},8:"GPSSatellites",9:{name:"GPSStatus",description:function(e){var t=e.join("");return"A"===t?"Measurement in progress":"V"===t?"Measurement Interoperability":"Unknown"}},10:{name:"GPSMeasureMode",description:function(e){var t=e.join("");return"2"===t?"2-dimensional measurement":"3"===t?"3-dimensional measurement":"Unknown"}},11:"GPSDOP",12:{name:"GPSSpeedRef",description:function(e){var t=e.join("");return"K"===t?"Kilometers per hour":"M"===t?"Miles per hour":"N"===t?"Knots":"Unknown"}},13:"GPSSpeed",14:{name:"GPSTrackRef",description:function(e){var t=e.join("");return"T"===t?"True direction":"M"===t?"Magnetic direction":"Unknown"}},15:"GPSTrack",16:{name:"GPSImgDirectionRef",description:function(e){var t=e.join("");return"T"===t?"True direction":"M"===t?"Magnetic direction":"Unknown"}},17:"GPSImgDirection",18:"GPSMapDatum",19:{name:"GPSDestLatitudeRef",description:function(e){var t=e.join("");return"N"===t?"North latitude":"S"===t?"South latitude":"Unknown"}},20:{name:"GPSDestLatitude",description:function(e){return e[0][0]/e[0][1]+e[1][0]/e[1][1]/60+e[2][0]/e[2][1]/3600}},21:{name:"GPSDestLongitudeRef",description:function(e){var t=e.join("");return"E"===t?"East longitude":"W"===t?"West longitude":"Unknown"}},22:{name:"GPSDestLongitude",description:function(e){return e[0][0]/e[0][1]+e[1][0]/e[1][1]/60+e[2][0]/e[2][1]/3600}},23:{name:"GPSDestBearingRef",description:function(e){var t=e.join("");return"T"===t?"True direction":"M"===t?"Magnetic direction":"Unknown"}},24:"GPSDestBearing",25:{name:"GPSDestDistanceRef",description:function(e){var t=e.join("");return"K"===t?"Kilometers":"M"===t?"Miles":"N"===t?"Knots":"Unknown"}},26:"GPSDestDistance",27:{name:"GPSProcessingMethod",description:N},28:{name:"GPSAreaInformation",description:N},29:"GPSDateStamp",30:{name:"GPSDifferential",description:function(e){return 0===e?"Measurement without differential correction":1===e?"Differential correction applied":"Unknown"}},31:"GPSHPositioningError"},H={1:"InteroperabilityIndex",2:{name:"InteroperabilityVersion",description:function(e){return k(e)}},4096:"RelatedImageFileFormat",4097:"RelatedImageWidth",4098:"RelatedImageHeight"},W=a({},{11:"ProcessingSoftware",254:{name:"SubfileType",description:function(e){return{0:"Full-resolution image",1:"Reduced-resolution image",2:"Single page of multi-page image",3:"Single page of multi-page reduced-resolution image",4:"Transparency mask",5:"Transparency mask of reduced-resolution image",6:"Transparency mask of multi-page image",7:"Transparency mask of reduced-resolution multi-page image",65537:"Alternate reduced-resolution image",4294967295:"Invalid"}[e]||"Unknown"}},255:{name:"OldSubfileType",description:function(e){return{0:"Full-resolution image",1:"Reduced-resolution image",2:"Single page of multi-page image"}[e]||"Unknown"}},256:"ImageWidth",257:"ImageLength",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",263:{name:"Thresholding",description:function(e){return{1:"No dithering or halftoning",2:"Ordered dither or halfton",3:"Randomized dither"}[e]||"Unknown"}},264:"CellWidth",265:"CellLength",266:{name:"FillOrder",description:function(e){return{1:"Normal",2:"Reversed"}[e]||"Unknown"}},269:"DocumentName",270:"ImageDescription",271:"Make",272:"Model",273:"StripOffsets",274:{name:"Orientation",description:function(e){return 1===e?"top-left":2===e?"top-right":3===e?"bottom-right":4===e?"bottom-left":5===e?"left-top":6===e?"right-top":7===e?"right-bottom":8===e?"left-bottom":"Undefined"}},277:"SamplesPerPixel",278:"RowsPerStrip",279:"StripByteCounts",280:"MinSampleValue",281:"MaxSampleValue",282:{name:"XResolution",description:function(e){return""+Math.round(e[0]/e[1])}},283:{name:"YResolution",description:function(e){return""+Math.round(e[0]/e[1])}},284:"PlanarConfiguration",285:"PageName",286:{name:"XPosition",description:function(e){return""+Math.round(e[0]/e[1])}},287:{name:"YPosition",description:function(e){return""+Math.round(e[0]/e[1])}},290:{name:"GrayResponseUnit",description:function(e){return{1:"0.1",2:"0.001",3:"0.0001",4:"1e-05",5:"1e-06"}[e]||"Unknown"}},296:{name:"ResolutionUnit",description:function(e){return 2===e?"inches":3===e?"centimeters":"Unknown"}},297:"PageNumber",301:"TransferFunction",305:"Software",306:"DateTime",315:"Artist",316:"HostComputer",317:"Predictor",318:{name:"WhitePoint",description:function(e){return e.map((function(e){return"".concat(e[0],"/").concat(e[1])})).join(", ")}},319:{name:"PrimaryChromaticities",description:function(e){return e.map((function(e){return"".concat(e[0],"/").concat(e[1])})).join(", ")}},321:"HalftoneHints",322:"TileWidth",323:"TileLength",330:"A100DataOffset",332:{name:"InkSet",description:function(e){return{1:"CMYK",2:"Not CMYK"}[e]||"Unknown"}},337:"TargetPrinter",338:{name:"ExtraSamples",description:function(e){return{0:"Unspecified",1:"Associated Alpha",2:"Unassociated Alpha"}[e]||"Unknown"}},339:{name:"SampleFormat",description:function(e){var t={1:"Unsigned",2:"Signed",3:"Float",4:"Undefined",5:"Complex int",6:"Complex float"};return Array.isArray(e)?e.map((function(e){return t[e]||"Unknown"})).join(", "):"Unknown"}},513:"JPEGInterchangeFormat",514:"JPEGInterchangeFormatLength",529:{name:"YCbCrCoefficients",description:function(e){return e.map((function(e){return""+e[0]/e[1]})).join("/")}},530:"YCbCrSubSampling",531:{name:"YCbCrPositioning",description:function(e){return 1===e?"centered":2===e?"co-sited":"undefined "+e}},532:{name:"ReferenceBlackWhite",description:function(e){return e.map((function(e){return""+e[0]/e[1]})).join(", ")}},700:"ApplicationNotes",18246:"Rating",18249:"RatingPercent",33432:{name:"Copyright",description:function(e){return e.join("; ")}},33550:"PixelScale",33723:"IPTC-NAA",33920:"IntergraphMatrix",33922:"ModelTiePoint",34118:"SEMInfo",34264:"ModelTransform",34377:"PhotoshopSettings",34665:"Exif IFD Pointer",34675:"ICC_Profile",34735:"GeoTiffDirectory",34736:"GeoTiffDoubleParams",34737:"GeoTiffAsciiParams",34853:"GPS Info IFD Pointer",40091:"XPTitle",40092:"XPComment",40093:"XPAuthor",40094:"XPKeywords",40095:"XPSubject",42112:"GDALMetadata",42113:"GDALNoData",50341:"PrintIM",50707:"DNGBackwardVersion",50708:"UniqueCameraModel",50709:"LocalizedCameraModel",50721:"ColorMatrix1",50722:"ColorMatrix2",50723:"CameraCalibration1",50724:"CameraCalibration2",50725:"ReductionMatrix1",50726:"ReductionMatrix2",50727:"AnalogBalance",50728:"AsShotNeutral",50729:"AsShotWhiteXY",50730:"BaselineExposure",50731:"BaselineNoise",50732:"BaselineSharpness",50734:"LinearResponseLimit",50735:"CameraSerialNumber",50736:"DNGLensInfo",50739:"ShadowScale",50741:{name:"MakerNoteSafety",description:function(e){return{0:"Unsafe",1:"Safe"}[e]||"Unknown"}},50778:{name:"CalibrationIlluminant1",description:R.LightSource},50779:{name:"CalibrationIlluminant2",description:R.LightSource},50781:"RawDataUniqueID",50827:"OriginalRawFileName",50828:"OriginalRawFileData",50831:"AsShotICCProfile",50832:"AsShotPreProfileMatrix",50833:"CurrentICCProfile",50834:"CurrentPreProfileMatrix",50879:"ColorimetricReference",50885:"SRawType",50898:"PanasonicTitle",50899:"PanasonicTitle2",50931:"CameraCalibrationSig",50932:"ProfileCalibrationSig",50933:"ProfileIFD",50934:"AsShotProfileName",50936:"ProfileName",50937:"ProfileHueSatMapDims",50938:"ProfileHueSatMapData1",50939:"ProfileHueSatMapData2",50940:"ProfileToneCurve",50941:{name:"ProfileEmbedPolicy",description:function(e){return{0:"Allow Copying",1:"Embed if Used",2:"Never Embed",3:"No Restrictions"}[e]||"Unknown"}},50942:"ProfileCopyright",50964:"ForwardMatrix1",50965:"ForwardMatrix2",50966:"PreviewApplicationName",50967:"PreviewApplicationVersion",50968:"PreviewSettingsName",50969:"PreviewSettingsDigest",50970:{name:"PreviewColorSpace",description:function(e){return{1:"Gray Gamma 2.2",2:"sRGB",3:"Adobe RGB",4:"ProPhoto RGB"}[e]||"Unknown"}},50971:"PreviewDateTime",50972:"RawImageDigest",50973:"OriginalRawFileDigest",50981:"ProfileLookTableDims",50982:"ProfileLookTableData",51043:"TimeCodes",51044:"FrameRate",51058:"TStop",51081:"ReelName",51089:"OriginalDefaultFinalSize",51090:"OriginalBestQualitySize",51091:"OriginalDefaultCropSize",51105:"CameraLabel",51107:{name:"ProfileHueSatMapEncoding",description:function(e){return{0:"Linear",1:"sRGB"}[e]||"Unknown"}},51108:{name:"ProfileLookTableEncoding",description:function(e){return{0:"Linear",1:"sRGB"}[e]||"Unknown"}},51109:"BaselineExposureOffset",51110:{name:"DefaultBlackRender",description:function(e){return{0:"Auto",1:"None"}[e]||"Unknown"}},51111:"NewRawImageDigest",51112:"RawToPreviewGain"},{33434:{name:"ExposureTime",description:function(e){return 0!==e[0]?"1/".concat(Math.round(e[1]/e[0])):"0/".concat(e[1])}},33437:{name:"FNumber",description:function(e){return"f/".concat(e[0]/e[1])}},34850:{name:"ExposureProgram",description:function(e){return 0===e?"Undefined":1===e?"Manual":2===e?"Normal program":3===e?"Aperture priority":4===e?"Shutter priority":5===e?"Creative program":6===e?"Action program":7===e?"Portrait mode":8===e?"Landscape mode":9===e?"Bulb":"Unknown"}},34852:"SpectralSensitivity",34855:"ISOSpeedRatings",34856:{name:"OECF",description:function(){return"[Raw OECF table data]"}},34858:"TimeZoneOffset",34859:"SelfTimerMode",34864:{name:"SensitivityType",description:function(e){return{1:"Standard Output Sensitivity",2:"Recommended Exposure Index",3:"ISO Speed",4:"Standard Output Sensitivity and Recommended Exposure Index",5:"Standard Output Sensitivity and ISO Speed",6:"Recommended Exposure Index and ISO Speed",7:"Standard Output Sensitivity, Recommended Exposure Index and ISO Speed"}[e]||"Unknown"}},34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",36864:{name:"ExifVersion",description:function(e){return k(e)}},36867:"DateTimeOriginal",36868:"DateTimeDigitized",36873:"GooglePlusUploadCode",36880:"OffsetTime",36881:"OffsetTimeOriginal",36882:"OffsetTimeDigitized",37121:{name:"ComponentsConfiguration",description:function(e){return e.map((function(e){return 49===e?"Y":50===e?"Cb":51===e?"Cr":52===e?"R":53===e?"G":54===e?"B":void 0})).join("")}},37122:"CompressedBitsPerPixel",37377:{name:"ShutterSpeedValue",description:function(e){return"1/".concat(Math.round(Math.pow(2,e[0]/e[1])))}},37378:{name:"ApertureValue",description:function(e){return Math.pow(Math.sqrt(2),e[0]/e[1]).toFixed(2)}},37379:"BrightnessValue",37380:"ExposureBiasValue",37381:{name:"MaxApertureValue",description:function(e){return Math.pow(Math.sqrt(2),e[0]/e[1]).toFixed(2)}},37382:{name:"SubjectDistance",description:function(e){return e[0]/e[1]+" m"}},37383:{name:"MeteringMode",description:function(e){return 1===e?"Average":2===e?"CenterWeightedAverage":3===e?"Spot":4===e?"MultiSpot":5===e?"Pattern":6===e?"Partial":255===e?"Other":"Unknown"}},37384:{name:"LightSource",description:R.LightSource},37385:{name:"Flash",description:function(e){return 0===e?"Flash did not fire":1===e?"Flash fired":5===e?"Strobe return light not detected":7===e?"Strobe return light detected":9===e?"Flash fired, compulsory flash mode":13===e?"Flash fired, compulsory flash mode, return light not detected":15===e?"Flash fired, compulsory flash mode, return light detected":16===e?"Flash did not fire, compulsory flash mode":24===e?"Flash did not fire, auto mode":25===e?"Flash fired, auto mode":29===e?"Flash fired, auto mode, return light not detected":31===e?"Flash fired, auto mode, return light detected":32===e?"No flash function":65===e?"Flash fired, red-eye reduction mode":69===e?"Flash fired, red-eye reduction mode, return light not detected":71===e?"Flash fired, red-eye reduction mode, return light detected":73===e?"Flash fired, compulsory flash mode, red-eye reduction mode":77===e?"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected":79===e?"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected":89===e?"Flash fired, auto mode, red-eye reduction mode":93===e?"Flash fired, auto mode, return light not detected, red-eye reduction mode":95===e?"Flash fired, auto mode, return light detected, red-eye reduction mode":"Unknown"}},37386:{name:"FocalLength",description:function(e){return e[0]/e[1]+" mm"}},37393:"ImageNumber",37394:{name:"SecurityClassification",description:function(e){return{C:"Confidential",R:"Restricted",S:"Secret",T:"Top Secret",U:"Unclassified"}[e]||"Unknown"}},37395:"ImageHistory",37396:{name:"SubjectArea",description:function(e){return 2===e.length?"Location; X: ".concat(e[0],", Y: ").concat(e[1]):3===e.length?"Circle; X: ".concat(e[0],", Y: ").concat(e[1],", diameter: ").concat(e[2]):4===e.length?"Rectangle; X: ".concat(e[0],", Y: ").concat(e[1],", width: ").concat(e[2],", height: ").concat(e[3]):"Unknown"}},37500:{name:"MakerNote",description:function(){return"[Raw maker note data]"}},37510:{name:"UserComment",description:N},37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",37888:{name:"AmbientTemperature",description:function(e){return e[0]/e[1]+" °C"}},37889:{name:"Humidity",description:function(e){return e[0]/e[1]+" %"}},37890:{name:"Pressure",description:function(e){return e[0]/e[1]+" hPa"}},37891:{name:"WaterDepth",description:function(e){return e[0]/e[1]+" m"}},37892:{name:"Acceleration",description:function(e){return e[0]/e[1]+" mGal"}},37893:{name:"CameraElevationAngle",description:function(e){return e[0]/e[1]+" °"}},40960:{name:"FlashpixVersion",description:function(e){return e.map((function(e){return String.fromCharCode(e)})).join("")}},40961:{name:"ColorSpace",description:function(e){return 1===e?"sRGB":65535===e?"Uncalibrated":"Unknown"}},40962:"PixelXDimension",40963:"PixelYDimension",40964:"RelatedSoundFile",40965:"Interoperability IFD Pointer",41483:"FlashEnergy",41484:{name:"SpatialFrequencyResponse",description:function(){return"[Raw SFR table data]"}},41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:{name:"FocalPlaneResolutionUnit",description:function(e){return 2===e?"inches":3===e?"centimeters":"Unknown"}},41492:{name:"SubjectLocation",description:function(e){var t=E(e,2),n=t[0],r=t[1];return"X: ".concat(n,", Y: ").concat(r)}},41493:"ExposureIndex",41495:{name:"SensingMethod",description:function(e){return 1===e?"Undefined":2===e?"One-chip color area sensor":3===e?"Two-chip color area sensor":4===e?"Three-chip color area sensor":5===e?"Color sequential area sensor":7===e?"Trilinear sensor":8===e?"Color sequential linear sensor":"Unknown"}},41728:{name:"FileSource",description:function(e){return 3===e?"DSC":"Unknown"}},41729:{name:"SceneType",description:function(e){return 1===e?"A directly photographed image":"Unknown"}},41730:{name:"CFAPattern",description:function(){return"[Raw CFA pattern table data]"}},41985:{name:"CustomRendered",description:function(e){return 0===e?"Normal process":1===e?"Custom process":"Unknown"}},41986:{name:"ExposureMode",description:function(e){return 0===e?"Auto exposure":1===e?"Manual exposure":2===e?"Auto bracket":"Unknown"}},41987:{name:"WhiteBalance",description:function(e){return 0===e?"Auto white balance":1===e?"Manual white balance":"Unknown"}},41988:{name:"DigitalZoomRatio",description:function(e){return 0===e[0]?"Digital zoom was not used":""+e[0]/e[1]}},41989:{name:"FocalLengthIn35mmFilm",description:function(e){return 0===e?"Unknown":e}},41990:{name:"SceneCaptureType",description:function(e){return 0===e?"Standard":1===e?"Landscape":2===e?"Portrait":3===e?"Night scene":"Unknown"}},41991:{name:"GainControl",description:function(e){return 0===e?"None":1===e?"Low gain up":2===e?"High gain up":3===e?"Low gain down":4===e?"High gain down":"Unknown"}},41992:{name:"Contrast",description:function(e){return 0===e?"Normal":1===e?"Soft":2===e?"Hard":"Unknown"}},41993:{name:"Saturation",description:function(e){return 0===e?"Normal":1===e?"Low saturation":2===e?"High saturation":"Unknown"}},41994:{name:"Sharpness",description:function(e){return 0===e?"Normal":1===e?"Soft":2===e?"Hard":"Unknown"}},41995:{name:"DeviceSettingDescription",description:function(){return"[Raw device settings table data]"}},41996:{name:"SubjectDistanceRange",description:function(e){return 1===e?"Macro":2===e?"Close view":3===e?"Distant view":"Unknown"}},42016:"ImageUniqueID",42032:"CameraOwnerName",42033:"BodySerialNumber",42034:{name:"LensSpecification",description:function(e){var t="".concat(e[0][0]/e[0][1],"-").concat(e[1][0]/e[1][1]," mm");return 0===e[3][1]?"".concat(t," f/?"):"".concat(t," f/").concat(1/(e[2][1]/e[2][1]/(e[3][0]/e[3][1])))}},42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",42080:{name:"CompositeImage",description:function(e){return{1:"Not a Composite Image",2:"General Composite Image",3:"Composite Image Captured While Shooting"}[e]||"Unknown"}},42081:"SourceImageNumberOfCompositeImage",42082:"SourceExposureTimesOfCompositeImage",42240:"Gamma",59932:"Padding",59933:"OffsetSchema",65e3:"OwnerName",65001:"SerialNumber",65002:"Lens",65100:"RawFile",65101:"Converter",65102:"WhiteBalance",65105:"Exposure",65106:"Shadows",65107:"Brightness",65108:"Contrast",65109:"Saturation",65110:"Sharpness",65111:"Smoothness",65112:"MoireFilter"}),V={"0th":W,exif:W,gps:z,interoperability:H};function _(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=function(e,t){if(!e)return;if("string"==typeof e)return X(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return X(e,t)}(e))){var t=0,n=function(){};return{s:n,n:function(){return t>=e.length?{done:!0}:{done:!1,value:e[t++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,i,o=!0,a=!1;return{s:function(){r=e[Symbol.iterator]()},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,i=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw i}}}}function X(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var K={1:M.getByteAt,2:M.getAsciiAt,3:M.getShortAt,4:M.getLongAt,5:M.getRationalAt,7:M.getUndefinedAt,9:M.getSlongAt,10:M.getSrationalAt,13:M.getIfdPointerAt},Y={read:function(e,t){var n=s.getByteOrder(e,t),r=function(e,t,n){return Z(e,"0th",t,function(e,t,n){return t+M.getLongAt(e,t+4,n)}(e,t,n),n)}(e,t,n);return r=$(r=J(r=q(r,e,t,n),e,t,n),e,t,n)}};function q(e,t,n,r){return void 0!==e["Exif IFD Pointer"]?a(e,Z(t,"exif",n,n+e["Exif IFD Pointer"].value,r)):e}function J(e,t,n,r){return void 0!==e["GPS Info IFD Pointer"]?a(e,Z(t,"gps",n,n+e["GPS Info IFD Pointer"].value,r)):e}function $(e,t,n,r){return void 0!==e["Interoperability IFD Pointer"]?a(e,Z(t,"interoperability",n,n+e["Interoperability IFD Pointer"].value,r)):e}function Z(e,t,n,r,i){var o=M.getTypeSize("SHORT"),a={},u=function(e,t,n){if(t+M.getTypeSize("SHORT")<=e.byteLength)return M.getShortAt(e,t,n);return 0}(e,r,i);r+=o;for(var c=0;c<u&&!(r+12>e.byteLength);c++){var f=Q(e,t,n,r,i);void 0!==f&&(a[f.name]={id:f.id,value:f.value,description:f.description}),r+=12}if(r<e.byteLength-M.getTypeSize("LONG")){var s=M.getLongAt(e,r,i);0!==s&&(a.Thumbnail=Z(e,t,n,n+s,i))}return a}function Q(e,t,n,r,i){var o,a=M.getTypeSize("SHORT"),u=a+M.getTypeSize("SHORT"),c=u+M.getTypeSize("LONG"),f=M.getShortAt(e,r,i),s=M.getShortAt(e,r+a,i),l=M.getLongAt(e,r+u,i);if(void 0!==M.typeSizes[s]){if(function(e,t){return M.typeSizes[e]*t<=M.getTypeSize("LONG")}(s,l))o=ee(e,r+c,s,l,i);else{var d=M.getLongAt(e,r+c,i);o=function(e,t,n,r,i){return t+n+M.typeSizes[r]*i<=e.byteLength}(e,n,d,s,l)?ee(e,n+d,s,l,i):"<faulty value>"}if(s===M.tagTypes.ASCII&&(o=function(e){try{return e.map((function(e){return decodeURIComponent(escape(e))}))}catch(t){return e}}(o=function(e){var t,n=[],r=0,i=_(e);try{for(i.s();!(t=i.n()).done;){var o=t.value;"\0"!==o?(void 0===n[r]&&(n[r]=""),n[r]+=o):r++}}catch(e){i.e(e)}finally{i.f()}return n}(o))),void 0!==V[t][f]){var p,m;if(void 0!==V[t][f].name&&void 0!==V[t][f].description){p=V[t][f].name;try{m=V[t][f].description(o)}catch(e){m=te(o)}}else s===M.tagTypes.RATIONAL||s===M.tagTypes.SRATIONAL?(p=V[t][f],m=""+o[0]/o[1]):(p=V[t][f],m=te(o));return{id:f,name:p,value:o,description:m}}return{id:f,name:"undefined-".concat(f),value:o,description:o}}}function ee(e,t,n,r,i){for(var o=[],a=0;a<r;a++)o.push(K[n](e,t,i)),t+=M.typeSizes[n];return n===M.tagTypes.ASCII?o=M.getAsciiValue(o):1===o.length&&(o=o[0]),o}function te(e){return e instanceof Array?e.join(", "):e}var ne={read:function(e,t){var n=function(e,t){return M.getShortAt(e,t)}(e,t),r=function(e,t,n){if(8>n)return;var r=M.getByteAt(e,t+7);return{value:r,description:""+r}}(e,t,n);return{"Bits Per Sample":re(e,t,n),"Image Height":ie(e,t,n),"Image Width":oe(e,t,n),"Color Components":r,Subsampling:r&&ae(e,t,r.value,n)}}};function re(e,t,n){if(!(3>n)){var r=M.getByteAt(e,t+2);return{value:r,description:""+r}}}function ie(e,t,n){if(!(5>n)){var r=M.getShortAt(e,t+3);return{value:r,description:"".concat(r,"px")}}}function oe(e,t,n){if(!(7>n)){var r=M.getShortAt(e,t+5);return{value:r,description:"".concat(r,"px")}}}function ae(e,t,n,r){if(!(8+3*n>r)){for(var i=[],o=0;o<n;o++){var a=t+8+3*o;i.push([M.getByteAt(e,a),M.getByteAt(e,a+1),M.getByteAt(e,a+2)])}return{value:i,description:i.length>1?ue(i)+ce(i):""}}}function ue(e){var t={1:"Y",2:"Cb",3:"Cr",4:"I",5:"Q"};return e.map((function(e){return t[e[0]]})).join("")}function ce(e){var t={17:"4:4:4 (1 1)",18:"4:4:0 (1 2)",20:"4:4:1 (1 4)",33:"4:2:2 (2 1)",34:"4:2:0 (2 2)",36:"4:2:1 (2 4)",65:"4:1:1 (4 1)",66:"4:1:0 (4 2)"};return 0===e.length||void 0===e[0][1]||void 0===t[e[0][1]]?"":t[e[0][1]]}var fe={iptc:{256:{name:"Model Version",description:function(e){return((e[0]<<8)+e[1]).toString()}},261:{name:"Destination",repeatable:!0},276:{name:"File Format",description:function(e){return((e[0]<<8)+e[1]).toString()}},278:{name:"File Format Version",description:function(e){return((e[0]<<8)+e[1]).toString()}},286:"Service Identifier",296:"Envelope Number",306:"Product ID",316:"Envelope Priority",326:{name:"Date Sent",description:se},336:{name:"Time Sent",description:le},346:{name:"Coded Character Set",description:de,encoding_name:de},356:"UNO",376:{name:"ARM Identifier",description:function(e){return((e[0]<<8)+e[1]).toString()}},378:{name:"ARM Version",description:function(e){return((e[0]<<8)+e[1]).toString()}},512:{name:"Record Version",description:function(e){return((e[0]<<8)+e[1]).toString()}},515:"Object Type Reference",516:"Object Attribute Reference",517:"Object Name",519:"Edit Status",520:{name:"Editorial Update",description:function(e){return"01"===k(e)?"Additional Language":"Unknown"}},522:"Urgency",524:{name:"Subject Reference",repeatable:!0,description:function(e){var t=k(e).split(":");return t[2]+(t[3]?"/"+t[3]:"")+(t[4]?"/"+t[4]:"")}},527:"Category",532:{name:"Supplemental Category",repeatable:!0},534:"Fixture Identifier",537:{name:"Keywords",repeatable:!0},538:{name:"Content Location Code",repeatable:!0},539:{name:"Content Location Name",repeatable:!0},542:"Release Date",547:"Release Time",549:"Expiration Date",550:"Expiration Time",552:"Special Instructions",554:{name:"Action Advised",description:function(e){var t=k(e);return"01"===t?"Object Kill":"02"===t?"Object Replace":"03"===t?"Object Append":"04"===t?"Object Reference":"Unknown"}},557:{name:"Reference Service",repeatable:!0},559:{name:"Reference Date",repeatable:!0},562:{name:"Reference Number",repeatable:!0},567:{name:"Date Created",description:se},572:{name:"Time Created",description:le},574:{name:"Digital Creation Date",description:se},575:{name:"Digital Creation Time",description:le},577:"Originating Program",582:"Program Version",587:{name:"Object Cycle",description:function(e){var t=k(e);return"a"===t?"morning":"p"===t?"evening":"b"===t?"both":"Unknown"}},592:{name:"By-line",repeatable:!0},597:{name:"By-line Title",repeatable:!0},602:"City",604:"Sub-location",607:"Province/State",612:"Country/Primary Location Code",613:"Country/Primary Location Name",615:"Original Transmission Reference",617:"Headline",622:"Credit",627:"Source",628:"Copyright Notice",630:{name:"Contact",repeatable:!0},632:"Caption/Abstract",634:{name:"Writer/Editor",repeatable:!0},637:{name:"Rasterized Caption",description:function(e){return e}},642:"Image Type",643:{name:"Image Orientation",description:function(e){var t=k(e);return"P"===t?"Portrait":"L"===t?"Landscape":"S"===t?"Square":"Unknown"}},647:"Language Identifier",662:{name:"Audio Type",description:function(e){var t=k(e),n=t.charAt(0),r=t.charAt(1),i="";return"1"===n?i+="Mono":"2"===n&&(i+="Stereo"),"A"===r?i+=", actuality":"C"===r?i+=", question and answer session":"M"===r?i+=", music, transmitted by itself":"Q"===r?i+=", response to a question":"R"===r?i+=", raw sound":"S"===r?i+=", scener":"V"===r?i+=", voicer":"W"===r&&(i+=", wrap"),""!==i?i:t}},663:{name:"Audio Sampling Rate",description:function(e){return parseInt(k(e),10)+" Hz"}},664:{name:"Audio Sampling Resolution",description:function(e){var t=parseInt(k(e),10);return t+(1===t?" bit":" bits")}},665:{name:"Audio Duration",description:function(e){var t=k(e);return t.length>=6?t.substr(0,2)+":"+t.substr(2,2)+":"+t.substr(4,2):t}},666:"Audio Outcue",698:"Short Document ID",699:"Unique Document ID",700:"Owner ID",712:{name:function(e){return 2===e.length?"ObjectData Preview File Format":"Record 2 destination"},description:function(e){if(2===e.length){var t=(e[0]<<8)+e[1];return 0===t?"No ObjectData":1===t?"IPTC-NAA Digital Newsphoto Parameter Record":2===t?"IPTC7901 Recommended Message Format":3===t?"Tagged Image File Format (Adobe/Aldus Image data)":4===t?"Illustrator (Adobe Graphics data)":5===t?"AppleSingle (Apple Computer Inc)":6===t?"NAA 89-3 (ANPA 1312)":7===t?"MacBinary II":8===t?"IPTC Unstructured Character Oriented File Format (UCOFF)":9===t?"United Press International ANPA 1312 variant":10===t?"United Press International Down-Load Message":11===t?"JPEG File Interchange (JFIF)":12===t?"Photo-CD Image-Pac (Eastman Kodak)":13===t?"Microsoft Bit Mapped Graphics File [*.BMP]":14===t?"Digital Audio File [*.WAV] (Microsoft & Creative Labs)":15===t?"Audio plus Moving Video [*.AVI] (Microsoft)":16===t?"PC DOS/Windows Executable Files [*.COM][*.EXE]":17===t?"Compressed Binary File [*.ZIP] (PKWare Inc)":18===t?"Audio Interchange File Format AIFF (Apple Computer Inc)":19===t?"RIFF Wave (Microsoft Corporation)":20===t?"Freehand (Macromedia/Aldus)":21===t?'Hypertext Markup Language "HTML" (The Internet Society)':22===t?"MPEG 2 Audio Layer 2 (Musicom), ISO/IEC":23===t?"MPEG 2 Audio Layer 3, ISO/IEC":24===t?"Portable Document File (*.PDF) Adobe":25===t?"News Industry Text Format (NITF)":26===t?"Tape Archive (*.TAR)":27===t?"Tidningarnas Telegrambyrå NITF version (TTNITF DTD)":28===t?"Ritzaus Bureau NITF version (RBNITF DTD)":29===t?"Corel Draw [*.CDR]":"Unknown format ".concat(t)}return k(e)}},713:{name:"ObjectData Preview File Format Version",description:function(e,t){var n={"00":{"00":"1"},"01":{"01":"1","02":"2","03":"3","04":"4"},"02":{"04":"4"},"03":{"01":"5.0","02":"6.0"},"04":{"01":"1.40"},"05":{"01":"2"},"06":{"01":"1"},11:{"01":"1.02"},20:{"01":"3.1","02":"4.0","03":"5.0","04":"5.5"},21:{"02":"2.0"}},r=k(e);if(t["ObjectData Preview File Format"]){var i=k(t["ObjectData Preview File Format"].value);if(n[i]&&n[i][r])return n[i][r]}return r}},714:"ObjectData Preview Data",1802:{name:"Size Mode",description:function(e){return e[0].toString()}},1812:{name:"Max Subfile Size",description:function(e){for(var t=0,n=0;n<e.length;n++)t=(t<<8)+e[n];return t.toString()}},1882:{name:"ObjectData Size Announced",description:function(e){for(var t=0,n=0;n<e.length;n++)t=(t<<8)+e[n];return t.toString()}},1887:{name:"Maximum ObjectData Size",description:function(e){for(var t=0,n=0;n<e.length;n++)t=(t<<8)+e[n];return t.toString()}}}};function se(e){var t=k(e);return t.length>=8?t.substr(0,4)+"-"+t.substr(4,2)+"-"+t.substr(6,2):t}function le(e){var t=k(e),n=t;return t.length>=6&&(n=t.substr(0,2)+":"+t.substr(2,2)+":"+t.substr(4,2),11===t.length&&(n+=t.substr(6,1)+t.substr(7,2)+":"+t.substr(9,2))),n}function de(e){var t=k(e);return"%G"===t?"UTF-8":"%5"===t?"Windows-1252":"%/G"===t?"UTF-8 Level 1":"%/H"===t?"UTF-8 Level 2":"%/I"===t?"UTF-8 Level 3":"/A"===t?"ISO-8859-1":"/B"===t?"ISO-8859-2":"/C"===t?"ISO-8859-3":"/D"===t?"ISO-8859-4":"/@"===t?"ISO-8859-5":"/G"===t?"ISO-8859-6":"/F"===t?"ISO-8859-7":"/H"===t?"ISO-8859-8":"Unknown"}var pe={get:function(){if("undefined"!=typeof TextDecoder)return TextDecoder;return}};var me={decode:function(e,t){var n=pe.get();if(void 0!==n&&void 0!==e)try{return new n(e).decode(Uint8Array.from(t))}catch(e){}return function(e){try{return decodeURIComponent(escape(e))}catch(t){return e}}(t.map((function(e){return String.fromCharCode(e)})).join(""))},TAG_HEADER_SIZE:5};var ge={read:function(e,t){try{var n=function(e,t){for(;t+12<=e.byteLength;){var n=he(e,t);if(ve(n))return{naaBlock:n,dataOffset:t};t+=12+n.size+ye(n)}throw new Error("No IPTC NAA resource block.")}(e,t),r=n.naaBlock,i=n.dataOffset;return function(e,t,n){var r={},i=void 0,o=(n+=12)+t.size;for(;n<o&&n<e.byteLength;){var a=Se(e,n,r,i),u=a.tag,c=a.tagSize;if(null===u)break;"encoding"in u&&(i=u.encoding),void 0===r[u.name]||void 0===u.repeatable?r[u.name]={id:u.id,value:u.value,description:u.description}:(r[u.name]instanceof Array||(r[u.name]=[{id:r[u.name].id,value:r[u.name].value,description:r[u.name].description}]),r[u.name].push({id:u.id,value:u.value,description:u.description})),n+=5+c}return r}(e,r,i)}catch(e){return{}}}};function he(e,t){if(943868237!==e.getUint32(t,!1))throw new Error("Not an IPTC resource block.");return{type:e.getUint16(t+4,!1),size:e.getUint16(t+10,!1)}}function ve(e){return 1028===e.type}function ye(e){return e.size%2!=0?1:0}function Se(e,t,n,r){if(function(e,t){return 28!==e.getUint8(t)}(e,t))return{tag:null,tagSize:0};var i=e.getUint16(t+1,!1),o=e.getUint16(t+3,!1),a=function(e,t,n){for(var r=[],i=0;i<n;i++)r.push(e.getUint8(t+i));return r}(e,t+5,o),u={id:i,name:be(fe.iptc[i],i,a),value:a,description:Ce(fe.iptc[i],a,n,r)};return function(e){return fe.iptc[e]&&fe.iptc[e].repeatable}(i)&&(u.repeatable=!0),function(e){return fe.iptc[e]&&void 0!==fe.iptc[e].encoding_name}(i)&&(u.encoding=fe.iptc[i].encoding_name(a)),{tag:u,tagSize:o}}function be(e,t,n){return e?function(e){return"string"==typeof e}(e)?e:function(e){return"function"==typeof e.name}(e)?e.name(n):e.name:"undefined-".concat(t)}function Ce(e,t,n,r){if(function(e){return e&&void 0!==e.description}(e))try{return e.description(t,n)}catch(e){}return function(e,t){return e&&t instanceof Array}(e,t)?me.decode(r,t):t}function Ie(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,i=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Ae(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ae(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ae(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var we={"tiff:Orientation":function(e){return"1"===e?"Horizontal (normal)":"2"===e?"Mirror horizontal":"3"===e?"Rotate 180":"4"===e?"Mirror vertical":"5"===e?"Mirror horizontal and rotate 270 CW":"6"===e?"Rotate 90 CW":"7"===e?"Mirror horizontal and rotate 90 CW":"8"===e?"Rotate 270 CW":e},"exif:GPSLatitude":Pe,"exif:GPSLongitude":Pe};function Pe(e){var t=Ie(e.split(","),2),n=t[0],r=t[1];if(void 0!==n&&void 0!==r){var i=parseFloat(n),o=parseFloat(r),a=r.charAt(r.length-1);if(!Number.isNaN(i)&&!Number.isNaN(o))return""+(i+o/60)+a}return e}var Ue=n(0);function De(e){return(De="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function Oe(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=function(e,t){if(!e)return;if("string"==typeof e)return Te(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Te(e,t)}(e))){var t=0,n=function(){};return{s:n,n:function(){return t>=e.length?{done:!0}:{done:!1,value:e[t++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,i,o=!0,a=!1;return{s:function(){r=e[Symbol.iterator]()},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,i=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw i}}}}function Te(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Me={read:function(e,t){return function(e,t){if(0===t.length)return[];var n=[xe(e,t.slice(0,1))];t.length>1&&n.push(xe(e,t.slice(1)));return n}(e,t).reduce(Fe,{})}};function xe(e,t){var n,r=t.reduce((function(e,t){return e+t.length}),0),i=new Uint8Array(r),o=0,a=Oe(t);try{for(a.s();!(n=a.n()).done;){var u=n.value,c=e.buffer.slice(u.dataOffset,u.dataOffset+u.length);i.set(new Uint8Array(c),o),o+=u.length}}catch(e){a.e(e)}finally{a.f()}return new DataView(i.buffer)}function Fe(e,t){try{return a(e,Ge(Le(function e(t){for(var n=0;n<t.childNodes.length;n++){if("x:xmpmeta"===t.childNodes[n].tagName)return e(t.childNodes[n]);if("rdf:RDF"===t.childNodes[n].tagName)return t.childNodes[n]}throw new Error}(function(e){var t=Ue.a.get();if(!t)throw console.warn("Warning: DOMParser is not available. It is needed to be able to parse XMP tags."),new Error;var n=new t,i=r(e,0,e.byteLength),o=n.parseFromString(i,"application/xml");if("parsererror"===o.documentElement.nodeName)throw new Error(o.documentElement.textContent);return o}(t)),!0)))}catch(t){return e}}function Le(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Re(e);return ke(n)?t?{}:Ne(n[0]):Ee(n)}function Re(e){for(var t=[],n=0;n<e.childNodes.length;n++)t.push(e.childNodes[n]);return t}function ke(e){return 1===e.length&&"#text"===e[0].nodeName}function Ne(e){return e.nodeValue}function Ee(e){var t={};return e.forEach((function(e){if(function(e){return e.nodeName&&"#text"!==e.nodeName}(e)){var n=function(e){return{attributes:je(e),value:Le(e)}}(e);void 0!==t[e.nodeName]?(Array.isArray(t[e.nodeName])||(t[e.nodeName]=[t[e.nodeName]]),t[e.nodeName].push(n)):t[e.nodeName]=n}})),t}function je(e){for(var t={},n=0;n<e.attributes.length;n++)t[e.attributes[n].nodeName]=decodeURIComponent(escape(e.attributes[n].value));return t}function Ge(e){var t={};if("string"==typeof e)return e;for(var n in e){var r=e[n];Array.isArray(r)||(r=[r]),r.forEach((function(e){a(t,Be(e.attributes)),"object"===De(e.value)&&a(t,Ye(e.value))}))}return t}function Be(e){var t={};for(var n in e)ze(n)&&(t[We(n)]={value:e[n],attributes:{},description:Ve(e[n],n)});return t}function ze(e){return"rdf:parseType"!==e&&!He(e)}function He(e){return"xmlns"===e.split(":")[0]}function We(e){return e.split(":")[1]}function Ve(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;if(Array.isArray(e))return _e(e);if("object"===De(e))return Xe(e);try{return t&&"function"==typeof we[t]?we[t](e):decodeURIComponent(escape(e))}catch(t){return e}}function _e(e){return e.map((function(e){return void 0!==e.value?Ve(e.value):Ve(e)})).join(", ")}function Xe(e){var t=[];for(var n in e)t.push("".concat(Ke(n),": ").concat(e[n].value));return t.join("; ")}function Ke(e){return"CiAdrCity"===e?"CreatorCity":"CiAdrCtry"===e?"CreatorCountry":"CiAdrExtadr"===e?"CreatorAddress":"CiAdrPcode"===e?"CreatorPostalCode":"CiAdrRegion"===e?"CreatorRegion":"CiEmailWork"===e?"CreatorWorkEmail":"CiTelWork"===e?"CreatorWorkPhone":"CiUrlWork"===e?"CreatorWorkUrl":e}function Ye(e){var t={};for(var n in e)He(n)||(t[We(n)]=qe(e[n],n));return t}function qe(e,t){return Je(e)?$e(e,t):function(e){return"Resource"===e.attributes["rdf:parseType"]||void 0!==e.value["rdf:Description"]&&void 0===e.value["rdf:Description"].value["rdf:value"]}(e)?function(e,t){var n={value:{},attributes:{}};void 0!==e.value["rdf:Description"]&&(a(n.value,Be(e.value["rdf:Description"].attributes)),a(n.attributes,Ze(e)),e=e.value["rdf:Description"]);return a(n.value,Ye(e.value)),n.description=Ve(n.value,t),n}(e,t):function(e){return 0===Object.keys(e.value).length&&void 0===e.attributes["rdf:resource"]}(e)?function(e,t){var n=Be(e.attributes);return{value:n,attributes:{},description:Ve(n,t)}}(e,t):function(e){return void 0!==Qe(e.value)}(e)?function(e,t){var n=Qe(e.value).value["rdf:li"],r=Ze(e),i=[];void 0===n?n=[]:Array.isArray(n)||(n=[n]);return n.forEach((function(e){i.push(function(e){if(Je(e))return $e(e);if(function(e){return"Resource"===e.attributes["rdf:parseType"]}(e))return Ye(e.value);return{value:e.value,attributes:Ze(e),description:Ve(e.value)}}(e))})),{value:i,attributes:r,description:Ve(i,t)}}(e,t):function(e,t){var n=et(e)||Ge(e.value);return{value:n,attributes:Ze(e),description:Ve(n,t)}}(e,t)}function Je(e){return"Resource"===e.attributes["rdf:parseType"]&&void 0!==e.value["rdf:value"]||void 0!==e.value["rdf:Description"]&&void 0!==e.value["rdf:Description"].value["rdf:value"]}function $e(e,t){var n=Ze(e);void 0!==e.value["rdf:Description"]&&(e=e.value["rdf:Description"]),a(n,Ze(e),function(e){var t={};for(var n in e.value)"rdf:value"===n||He(n)||(t[We(n)]=e.value[n].value);return t}(e));var r=function(e){return et(e.value["rdf:value"])||e.value["rdf:value"].value}(e);return{value:r,attributes:n,description:Ve(r,t)}}function Ze(e){var t={};for(var n in e.attributes)"rdf:parseType"===n||"rdf:resource"===n||He(n)||(t[We(n)]=e.attributes[n]);return t}function Qe(e){return e["rdf:Bag"]||e["rdf:Seq"]||e["rdf:Alt"]}function et(e){return e.attributes&&e.attributes["rdf:resource"]}var tt={desc:{name:"ICC Description"},cprt:{name:"ICC Copyright"},dmdd:{name:"ICC Device Model Description"},vued:{name:"ICC Viewing Conditions Description"},dmnd:{name:"ICC Device Manufacturer for Display"},tech:{name:"Technology"}},nt={4:{name:"Preferred CMM type",value:function(e,t){return r(e,t,4)},description:function(e){return null!==e?rt(e):""}},8:{name:"Profile Version",value:function(e,t){return e.getUint8(t).toString(10)+"."+(e.getUint8(t+1)>>4).toString(10)+"."+(e.getUint8(t+1)%16).toString(10)}},12:{name:"Profile/Device class",value:function(e,t){return r(e,t,4)},description:function(e){switch(e.toLowerCase()){case"scnr":return"Input Device profile";case"mntr":return"Display Device profile";case"prtr":return"Output Device profile";case"link":return"DeviceLink profile";case"abst":return"Abstract profile";case"spac":return"ColorSpace profile";case"nmcl":return"NamedColor profile";case"cenc":return"ColorEncodingSpace profile";case"mid ":return"MultiplexIdentification profile";case"mlnk":return"MultiplexLink profile";case"mvis":return"MultiplexVisualization profile";default:return e}}},16:{name:"Color Space",value:function(e,t){return r(e,t,4)}},20:{name:"Connection Space",value:function(e,t){return r(e,t,4)}},24:{name:"ICC Profile Date",value:function(e,t){return function(e,t){var n=e.getUint16(t),r=e.getUint16(t+2)-1,i=e.getUint16(t+4),o=e.getUint16(t+6),a=e.getUint16(t+8),u=e.getUint16(t+10);return new Date(Date.UTC(n,r,i,o,a,u))}(e,t).toISOString()}},36:{name:"ICC Signature",value:function(e,t){return n=e.buffer.slice(t,t+4),String.fromCharCode.apply(null,new Uint8Array(n));var n}},40:{name:"Primary Platform",value:function(e,t){return r(e,t,4)},description:function(e){return rt(e)}},48:{name:"Device Manufacturer",value:function(e,t){return r(e,t,4)},description:function(e){return rt(e)}},52:{name:"Device Model Number",value:function(e,t){return r(e,t,4)}},64:{name:"Rendering Intent",value:function(e,t){return e.getUint32(t)},description:function(e){switch(e){case 0:return"Perceptual";case 1:return"Relative Colorimetric";case 2:return"Saturation";case 3:return"Absolute Colorimetric";default:return e}}},80:{name:"Profile Creator",value:function(e,t){return r(e,t,4)}}};function rt(e){switch(e.toLowerCase()){case"appl":return"Apple";case"adbe":return"Adobe";case"msft":return"Microsoft";case"sunw":return"Sun Microsystems";case"sgi":return"Silicon Graphics";case"tgnt":return"Taligent";default:return e}}var it={read:function(e,t){try{for(var n=t.reduce((function(e,t){return e+t.length}),0),o=new Uint8Array(n),a=0,u=e.buffer,c=function(e){var n=t.find((function(t){return t.chunkNumber===e}));if(!n)throw new Error("ICC chunk ".concat(e," not found"));var r=u.slice(n.offset,n.offset+n.length),i=new Uint8Array(r);o.set(i,a),a+=i.length},f=1;f<=t.length;f++)c(f);return function(e){var t=e.buffer,n=e.getUint32();if(e.byteLength!==n)throw new Error("ICC profile length not matching");if(e.length<84)throw new Error("ICC profile too short");for(var o={},a=0,u=Object.keys(nt);a<u.length;a++){var c=u[a],f=nt[c],s=f.value(e,parseInt(c,10)),l=s;f.description&&(l=f.description(s)),o[f.name]={value:s,description:l}}if("acsp"!==at(t.slice(36,40)))throw new Error("ICC profile: missing signature");if(function(e){return e.length<132}(t))return o;for(var d=e.getUint32(128),p=132,m=0;m<d;m++){if(ot(t,p))return o;var g=r(e,p,4),h=e.getUint32(p+4),v=e.getUint32(p+8);if(h>t.length)return o;var y=r(e,h,4);if("desc"===y){var S=e.getUint32(h+8);if(S>v)return o;var b=at(t.slice(h+12,h+S+11));ut(o,g,b)}else if("mluc"===y){for(var C=e.getUint32(h+8),I=e.getUint32(h+12),A=h+16,w=[],P=0;P<C;P++){var U=r(e,A+0,2),D=r(e,A+2,2),O=e.getUint32(A+4),T=e.getUint32(A+8),M=i(e,h+T,O);w.push({languageCode:U,countryCode:D,text:M}),A+=I}if(1===C)ut(o,g,w[0].text);else{for(var x={},F=0;F<w.length;F++)x["".concat(w[F].languageCode,"-").concat(w[F].countryCode)]=w[F].text;ut(o,g,x)}}else if("text"===y){var L=at(t.slice(h+8,h+v-7));ut(o,g,L)}else if("sig "===y){var R=at(t.slice(h+8,h+12));ut(o,g,R)}p+=12}return o}(new DataView(o.buffer))}catch(e){return{}}}};function ot(e,t){return e.length<t+12}function at(e){return String.fromCharCode.apply(null,new Uint8Array(e))}function ut(e,t,n){tt[t]?e[tt[t].name]={value:n,description:n}:e[t]={value:n,description:n}}var ct={read:function(e,t){return{"Image Width":ft(e,t),"Image Height":st(e,t),"Bit Depth":lt(e,t),"Color Type":dt(e,t),Compression:pt(e,t),Filter:mt(e,t),Interlace:gt(e,t)}}};function ft(e,t){if(!(t+0+4>e.byteLength)){var n=M.getLongAt(e,t);return{value:n,description:"".concat(n,"px")}}}function st(e,t){if(!(t+4+4>e.byteLength)){var n=M.getLongAt(e,t+4);return{value:n,description:"".concat(n,"px")}}}function lt(e,t){if(!(t+8+1>e.byteLength)){var n=M.getByteAt(e,t+8);return{value:n,description:"".concat(n)}}}function dt(e,t){if(!(t+9+1>e.byteLength)){var n=M.getByteAt(e,t+9);return{value:n,description:{0:"Grayscale",2:"RGB",3:"Palette",4:"Grayscale with Alpha",6:"RGB with Alpha"}[n]||"Unknown"}}}function pt(e,t){if(!(t+10+1>e.byteLength)){var n=M.getByteAt(e,t+10);return{value:n,description:0===n?"Deflate/Inflate":"Unknown"}}}function mt(e,t){if(!(t+11+1>e.byteLength)){var n=M.getByteAt(e,t+11);return{value:n,description:0===n?"Adaptive":"Unknown"}}}function gt(e,t){if(!(t+12+1>e.byteLength)){var n=M.getByteAt(e,t+12);return{value:n,description:{0:"Noninterlaced",1:"Adam7 Interlace"}[n]||"Unknown"}}}function ht(e){return(ht="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var vt={get:function(e,t,n){if(c=t,c&&(void 0===c.Compression||6===c.Compression.value)&&c.JPEGInterchangeFormat&&c.JPEGInterchangeFormat.value&&c.JPEGInterchangeFormatLength&&c.JPEGInterchangeFormatLength.value){t.type="image/jpeg";var r=n+t.JPEGInterchangeFormat.value;t.image=e.buffer.slice(r,r+t.JPEGInterchangeFormatLength.value),i=t,o="base64",a=function(){return e=this.image,"undefined"!=typeof btoa?btoa(Array.prototype.reduce.call(new Uint8Array(e),(function(e,t){return e+String.fromCharCode(t)}),"")):"undefined"!=typeof Buffer?void 0!==ht(Buffer.from)?Buffer.from(e).toString("base64"):new Buffer(e).toString("base64"):void 0;var e},u=!1,Object.defineProperty(i,o,{get:function(){return u||(u=!0,Object.defineProperty(i,o,{configurable:!0,enumerable:!0,value:a.apply(i),writable:!0})),i[o]},configurable:!0,enumerable:!0})}var i,o,a,u;var c;return t}};function yt(e){this.name="MetadataMissingError",this.message=e||"No Exif data",this.stack=(new Error).stack}yt.prototype=new Error;var St={MetadataMissingError:yt};function bt(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}t.default={load:It,loadView:wt,errors:St};var Ct=St;function It(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{expanded:!1};return wt(At(e),t)}function At(e){try{return new DataView(e)}catch(t){return new f(e)}}function wt(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{expanded:!1},n=!1,r={},i=g.parseAppMarkers(e),o=i.fileDataOffset,u=i.tiffHeaderOffset,c=i.iptcDataOffset,f=i.xmpChunks,s=i.iccChunks,l=i.pngHeaderOffset;if(Pt(o)){n=!0;var d=ne.read(e,o);t.expanded?r.file=d:r=a({},r,d)}if(Ut(u)){n=!0;var p=Y.read(e,u),m=p.Thumbnail,h=bt(p,["Thumbnail"]);t.expanded?r.exif=h:r=a({},r,h),m&&(r.Thumbnail=m)}if(Dt(c)){n=!0;var v=ge.read(e,c);t.expanded?r.iptc=v:r=a({},r,v)}if(Ot(f)){n=!0;var y=Me.read(e,f);t.expanded?r.xmp=y:r=a({},r,y)}if(Tt(s)){n=!0;var S=it.read(e,s);t.expanded?r.icc=S:r=a({},r,S)}if(Mt(l)){n=!0;var b=ct.read(e,l);t.expanded?r.pngFile=b:r=a({},r,b)}var C=vt.get(e,r.Thumbnail,u);if(C&&(r.Thumbnail=C,n=!0),!n)throw new St.MetadataMissingError;return r}function Pt(e){return void 0!==e}function Ut(e){return void 0!==e}function Dt(e){return void 0!==e}function Ot(e){return Array.isArray(e)&&e.length>0}function Tt(e){return Array.isArray(e)&&e.length>0}function Mt(e){return void 0!==e}}])}));
!function(e,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.ExifReader=n():e.ExifReader=n()}("undefined"!=typeof self?self:this,(function(){return function(e){var n={};function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var i in e)t.d(r,i,function(n){return e[n]}.bind(null,i));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="",t(t.s=1)}([function(module,__webpack_exports__,__webpack_require__){"use strict";function get(){if("undefined"!=typeof DOMParser)return DOMParser;try{return eval("require")("xmldom").DOMParser}catch(e){return}}__webpack_exports__.a={get:get}},function(e,n,t){"use strict";function r(e,n,t){for(var r=[],i=0;i<t&&n+i<e.byteLength;i++)r.push(e.getUint8(n+i,!1));return o(r).join("")}function i(e,n,t){for(var r=[],i=0;i<t&&n+i<e.byteLength;i+=2)r.push(e.getUint16(n+i));return o(r).join("")}function o(e){return e.map((function(e){return String.fromCharCode(e)}))}function a(e){for(var n=arguments.length,t=new Array(n>1?n-1:0),r=1;r<n;r++)t[r-1]=arguments[r];for(var i=0,o=t;i<o.length;i++){var a=o[i];for(var u in a)e[u]=a[u]}return e}function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function c(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}t.r(n),t.d(n,"errors",(function(){return Rn})),t.d(n,"load",(function(){return Nn})),t.d(n,"loadView",(function(){return jn}));var f=function(){function e(n){if(function(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}(this,e),function(e){return"object"!==u(e)||void 0===e.length||void 0===e.readUInt8||void 0===e.readUInt16LE||void 0===e.readUInt16BE||void 0===e.readUInt32LE||void 0===e.readUInt32BE||void 0===e.readInt32LE||void 0===e.readInt32BE}(n))throw new Error("DataView: Passed buffer type is unsupported.");this.buffer=n,this.byteLength=this.buffer.length}var n,t,r;return n=e,(t=[{key:"getUint8",value:function(e){return this.buffer.readUInt8(e)}},{key:"getUint16",value:function(e,n){return n?this.buffer.readUInt16LE(e):this.buffer.readUInt16BE(e)}},{key:"getUint32",value:function(e,n){return n?this.buffer.readUInt32LE(e):this.buffer.readUInt32BE(e)}},{key:"getInt32",value:function(e,n){return n?this.buffer.readInt32LE(e):this.buffer.readInt32BE(e)}}])&&c(n.prototype,t),r&&c(n,r),e}();var s=!0,l=!0,d=!0,p=!0,m=!0,g=!0,h=!0,v=!0,y=!0,S=!0,b={BIG_ENDIAN:19789,LITTLE_ENDIAN:18761,getByteOrder:function(e,n){if(18761===e.getUint16(n))return 18761;if(19789===e.getUint16(n))return 19789;throw new Error("Illegal byte order value. Faulty image.")}};var C={isTiffFile:function(e){return e.byteLength>=4&&function(e){var n=e.getUint16(0)===b.LITTLE_ENDIAN;return 42===e.getUint16(2,n)}(e)},findTiffOffsets:function(){if(l)return{hasAppMarkers:!0,tiffHeaderOffset:0};return{}}};var I={isJpegFile:function(e){return e.byteLength>=2&&65496===e.getUint16(0,!1)},findJpegOffsets:function(e){var n,t,r,i,o,a,u,c=2;for(;c+4+5<=e.byteLength;){if(s&&P(e,c))t=c+2;else if(s&&U(e,c))r=c+2;else if(l&&D(e,c))n=e.getUint16(c+2,!1),i=c+10;else if(p&&T(e,c))a||(a=[]),n=e.getUint16(c+2,!1),a.push(F(c,n));else if(p&&M(e,c))a||(a=[]),n=e.getUint16(c+2,!1),a.push(x(c,n));else if(d&&L(e,c))n=e.getUint16(c+2,!1),o=c+18;else if(m&&O(e,c)){n=e.getUint16(c+2,!1);var f=c+18,g=n-16,h=e.getUint8(c+A,!1),v=e.getUint8(c+w,!1);u||(u=[]),u.push({offset:f,length:g,chunkNumber:h,chunksTotal:v})}else{if(!k(e,c))break;n=e.getUint16(c+2,!1)}c+=2+n}return{hasAppMarkers:c>2,fileDataOffset:t||r,tiffHeaderOffset:i,iptcDataOffset:o,xmpChunks:a,iccChunks:u}}},A=4+"ICC_PROFILE\0".length,w=A+1;function P(e,n){return 65472===e.getUint16(n,!1)}function U(e,n){return 65474===e.getUint16(n,!1)}function O(e,n){var t="ICC_PROFILE\0".length;return 65506===e.getUint16(n,!1)&&"ICC_PROFILE\0"===r(e,n+4,t)}function D(e,n){var t="Exif".length;return 65505===e.getUint16(n,!1)&&"Exif"===r(e,n+4,t)&&0===e.getUint8(n+4+t,!1)}function T(e,n){return 65505===e.getUint16(n,!1)&&function(e,n){return"http://ns.adobe.com/xap/1.0/\0"===r(e,n+4,"http://ns.adobe.com/xap/1.0/\0".length)}(e,n)}function M(e,n){return 65505===e.getUint16(n,!1)&&function(e,n){return"http://ns.adobe.com/xmp/extension/\0"===r(e,n+4,"http://ns.adobe.com/xmp/extension/\0".length)}(e,n)}function F(e,n){return{dataOffset:e+33,length:n-31}}function x(e,n){return{dataOffset:e+79,length:n-77}}function L(e,n){var t="Photoshop 3.0".length;return 65517===e.getUint16(n,!1)&&"Photoshop 3.0"===r(e,n+4,t)&&0===e.getUint8(n+4+t,!1)}function k(e,n){var t=e.getUint16(n,!1);return t>=65504&&t<=65519||65534===t||65472===t||65474===t||65476===t||65499===t||65501===t||65498===t}var R={isPngFile:function(e){return"‰PNG\r\n\n"===r(e,0,"‰PNG\r\n\n".length)},findPngOffsets:function(e){var n={hasAppMarkers:!1},t="‰PNG\r\n\n".length;for(;t+4+4<=e.byteLength;)N(e,t)?(n.hasAppMarkers=!0,n.pngHeaderOffset=t+8):p&&E(e,t)&&(n.hasAppMarkers=!0,n.xmpChunks=[{dataOffset:t+8+"XML:com.adobe.xmp".length,length:e.getUint32(t+0)-"XML:com.adobe.xmp".length}]),t+=e.getUint32(t+0)+4+4+4;return n}};function N(e,n){return"IHDR"===r(e,n+4,4)}function E(e,n){return"iTXt"===r(e,n+4,4)&&"XML:com.adobe.xmp"===r(e,n+8,"XML:com.adobe.xmp".length)}var j={isHeicFile:function(e){var n=r(e,4+"ftyp".length,4);return"ftyp"===r(e,4,"ftyp".length)&&-1!==["heic","heix","hevc","hevx","heim","heis","hevm","hevs","mif1"].indexOf(n)},findHeicOffsets:function(e){if(l){var n=function(e){var n=0;for(;n+4+4<=e.byteLength;){var t=G(e,n);if(t>=8)if("meta"===r(e,n+4,4))return{offset:n,length:t};n+=t}return{offset:void 0,length:0}}(e),t=n.offset,i=n.length;if(void 0===t)return{hasAppMarkers:!1};var o=Math.min(t+i,e.byteLength),a=function(e,n,t){var i={exifItemOffset:void 0,ilocOffset:void 0};for(;n+4<=t&&(!i.exifItemOffset||!i.ilocOffset);)"Exif"===r(e,n,4)?i.exifItemOffset=n+-4:"iloc"===r(e,n,4)&&(i.ilocOffset=n),n++;return i}(e,t,o),u=a.exifItemOffset,c=a.ilocOffset;if(void 0===u||void 0===c)return{hasAppMarkers:!1};var f=function(e,n,t,r){if(n+2>r)return;var i=e.getUint16(n);t+=12;for(;t+16<=r;){if(e.getUint16(t)===i){var o=e.getUint32(t+8);if(o+4<=e.byteLength){var a=e.getUint32(o);return o+(a+4)}}t+=16}return}(e,u,c,o);return{hasAppMarkers:void 0!==f,tiffHeaderOffset:f}}return{hasAppMarkers:!1}}};function G(e,n){var t=e.getUint32(n);return function(e){return 0===e}(t)?e.byteLength-n:function(e){return 1===e}(t)&&function(e,n){return 0===e.getUint32(n+8)}(e,n)?e.getUint32(n+12):t}var B={parseAppMarkers:function(e){if(h&&C.isTiffFile(e))return C.findTiffOffsets();if(v&&I.isJpegFile(e))return I.findJpegOffsets(e);if(y&&R.isPngFile(e))return R.findPngOffsets(e);if(S&&j.isHeicFile(e))return j.findHeicOffsets(e);throw new Error("Invalid image format")}};var z={1:1,2:1,3:2,4:4,5:8,7:1,9:4,10:8,13:4},H={BYTE:1,ASCII:2,SHORT:3,LONG:4,RATIONAL:5,UNDEFINED:7,SLONG:9,SRATIONAL:10,IFD:13},W={getAsciiValue:function(e){return e.map((function(e){return String.fromCharCode(e)}))},getByteAt:V,getAsciiAt:function(e,n){return e.getUint8(n)},getShortAt:function(e,n,t){return e.getUint16(n,t===b.LITTLE_ENDIAN)},getLongAt:_,getRationalAt:function(e,n,t){return[_(e,n,t),_(e,n+4,t)]},getUndefinedAt:function(e,n){return V(e,n)},getSlongAt:X,getSrationalAt:function(e,n,t){return[X(e,n,t),X(e,n+4,t)]},getIfdPointerAt:function(e,n,t){return _(e,n,t)},typeSizes:z,tagTypes:H,getTypeSize:function(e){if(void 0===H[e])throw new Error("No such type found.");return z[H[e]]}};function V(e,n){return e.getUint8(n)}function _(e,n,t){return e.getUint32(n,t===b.LITTLE_ENDIAN)}function X(e,n,t){return e.getInt32(n,t===b.LITTLE_ENDIAN)}var K={LightSource:function(e){return 1===e?"Daylight":2===e?"Fluorescent":3===e?"Tungsten (incandescent light)":4===e?"Flash":9===e?"Fine weather":10===e?"Cloudy weather":11===e?"Shade":12===e?"Daylight fluorescent (D 5700 – 7100K)":13===e?"Day white fluorescent (N 4600 – 5400K)":14===e?"Cool white fluorescent (W 3900 – 4500K)":15===e?"White fluorescent (WW 3200 – 3700K)":17===e?"Standard light A":18===e?"Standard light B":19===e?"Standard light C":20===e?"D55":21===e?"D65":22===e?"D75":23===e?"D50":24===e?"ISO studio tungsten":255===e?"Other light source":"Unknown"}};function Y(e){return e.map((function(e){return String.fromCharCode(e)})).join("")}function J(e){if(e.length>=8){var n=Y(e.slice(0,8));if("ASCII\0\0\0"===n)return Y(e.slice(8));if("JIS\0\0\0\0\0"===n)return"[JIS encoded text]";if("UNICODE\0"===n)return"[Unicode encoded text]";if("\0\0\0\0\0\0\0\0"===n)return"[Undefined encoding]"}return"Undefined"}function q(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var t=[],r=!0,i=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(t.push(a.value),!n||t.length!==n);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return t}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return $(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return $(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function Z(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var t=[],r=!0,i=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(t.push(a.value),!n||t.length!==n);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return t}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return Q(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Q(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Q(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var ee={0:{name:"GPSVersionID",description:function(e){return 2===e[0]&&2===e[1]&&0===e[2]&&0===e[3]?"Version 2.2":"Unknown"}},1:{name:"GPSLatitudeRef",description:function(e){var n=e.join("");return"N"===n?"North latitude":"S"===n?"South latitude":"Unknown"}},2:{name:"GPSLatitude",description:function(e){return e[0][0]/e[0][1]+e[1][0]/e[1][1]/60+e[2][0]/e[2][1]/3600}},3:{name:"GPSLongitudeRef",description:function(e){var n=e.join("");return"E"===n?"East longitude":"W"===n?"West longitude":"Unknown"}},4:{name:"GPSLongitude",description:function(e){return e[0][0]/e[0][1]+e[1][0]/e[1][1]/60+e[2][0]/e[2][1]/3600}},5:{name:"GPSAltitudeRef",description:function(e){return 0===e?"Sea level":1===e?"Sea level reference (negative value)":"Unknown"}},6:{name:"GPSAltitude",description:function(e){return e[0]/e[1]+" m"}},7:{name:"GPSTimeStamp",description:function(e){return e.map((function(e){var n=Z(e,2),t=n[0]/n[1];return/^\d(\.|$)/.test("".concat(t))?"0".concat(t):t})).join(":")}},8:"GPSSatellites",9:{name:"GPSStatus",description:function(e){var n=e.join("");return"A"===n?"Measurement in progress":"V"===n?"Measurement Interoperability":"Unknown"}},10:{name:"GPSMeasureMode",description:function(e){var n=e.join("");return"2"===n?"2-dimensional measurement":"3"===n?"3-dimensional measurement":"Unknown"}},11:"GPSDOP",12:{name:"GPSSpeedRef",description:function(e){var n=e.join("");return"K"===n?"Kilometers per hour":"M"===n?"Miles per hour":"N"===n?"Knots":"Unknown"}},13:"GPSSpeed",14:{name:"GPSTrackRef",description:function(e){var n=e.join("");return"T"===n?"True direction":"M"===n?"Magnetic direction":"Unknown"}},15:"GPSTrack",16:{name:"GPSImgDirectionRef",description:function(e){var n=e.join("");return"T"===n?"True direction":"M"===n?"Magnetic direction":"Unknown"}},17:"GPSImgDirection",18:"GPSMapDatum",19:{name:"GPSDestLatitudeRef",description:function(e){var n=e.join("");return"N"===n?"North latitude":"S"===n?"South latitude":"Unknown"}},20:{name:"GPSDestLatitude",description:function(e){return e[0][0]/e[0][1]+e[1][0]/e[1][1]/60+e[2][0]/e[2][1]/3600}},21:{name:"GPSDestLongitudeRef",description:function(e){var n=e.join("");return"E"===n?"East longitude":"W"===n?"West longitude":"Unknown"}},22:{name:"GPSDestLongitude",description:function(e){return e[0][0]/e[0][1]+e[1][0]/e[1][1]/60+e[2][0]/e[2][1]/3600}},23:{name:"GPSDestBearingRef",description:function(e){var n=e.join("");return"T"===n?"True direction":"M"===n?"Magnetic direction":"Unknown"}},24:"GPSDestBearing",25:{name:"GPSDestDistanceRef",description:function(e){var n=e.join("");return"K"===n?"Kilometers":"M"===n?"Miles":"N"===n?"Knots":"Unknown"}},26:"GPSDestDistance",27:{name:"GPSProcessingMethod",description:J},28:{name:"GPSAreaInformation",description:J},29:"GPSDateStamp",30:{name:"GPSDifferential",description:function(e){return 0===e?"Measurement without differential correction":1===e?"Differential correction applied":"Unknown"}},31:"GPSHPositioningError"},ne={1:"InteroperabilityIndex",2:{name:"InteroperabilityVersion",description:function(e){return Y(e)}},4096:"RelatedImageFileFormat",4097:"RelatedImageWidth",4098:"RelatedImageHeight"},te=a({},{11:"ProcessingSoftware",254:{name:"SubfileType",description:function(e){return{0:"Full-resolution image",1:"Reduced-resolution image",2:"Single page of multi-page image",3:"Single page of multi-page reduced-resolution image",4:"Transparency mask",5:"Transparency mask of reduced-resolution image",6:"Transparency mask of multi-page image",7:"Transparency mask of reduced-resolution multi-page image",65537:"Alternate reduced-resolution image",4294967295:"Invalid"}[e]||"Unknown"}},255:{name:"OldSubfileType",description:function(e){return{0:"Full-resolution image",1:"Reduced-resolution image",2:"Single page of multi-page image"}[e]||"Unknown"}},256:"ImageWidth",257:"ImageLength",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",263:{name:"Thresholding",description:function(e){return{1:"No dithering or halftoning",2:"Ordered dither or halfton",3:"Randomized dither"}[e]||"Unknown"}},264:"CellWidth",265:"CellLength",266:{name:"FillOrder",description:function(e){return{1:"Normal",2:"Reversed"}[e]||"Unknown"}},269:"DocumentName",270:"ImageDescription",271:"Make",272:"Model",273:"StripOffsets",274:{name:"Orientation",description:function(e){return 1===e?"top-left":2===e?"top-right":3===e?"bottom-right":4===e?"bottom-left":5===e?"left-top":6===e?"right-top":7===e?"right-bottom":8===e?"left-bottom":"Undefined"}},277:"SamplesPerPixel",278:"RowsPerStrip",279:"StripByteCounts",280:"MinSampleValue",281:"MaxSampleValue",282:{name:"XResolution",description:function(e){return""+Math.round(e[0]/e[1])}},283:{name:"YResolution",description:function(e){return""+Math.round(e[0]/e[1])}},284:"PlanarConfiguration",285:"PageName",286:{name:"XPosition",description:function(e){return""+Math.round(e[0]/e[1])}},287:{name:"YPosition",description:function(e){return""+Math.round(e[0]/e[1])}},290:{name:"GrayResponseUnit",description:function(e){return{1:"0.1",2:"0.001",3:"0.0001",4:"1e-05",5:"1e-06"}[e]||"Unknown"}},296:{name:"ResolutionUnit",description:function(e){return 2===e?"inches":3===e?"centimeters":"Unknown"}},297:"PageNumber",301:"TransferFunction",305:"Software",306:"DateTime",315:"Artist",316:"HostComputer",317:"Predictor",318:{name:"WhitePoint",description:function(e){return e.map((function(e){return"".concat(e[0],"/").concat(e[1])})).join(", ")}},319:{name:"PrimaryChromaticities",description:function(e){return e.map((function(e){return"".concat(e[0],"/").concat(e[1])})).join(", ")}},321:"HalftoneHints",322:"TileWidth",323:"TileLength",330:"A100DataOffset",332:{name:"InkSet",description:function(e){return{1:"CMYK",2:"Not CMYK"}[e]||"Unknown"}},337:"TargetPrinter",338:{name:"ExtraSamples",description:function(e){return{0:"Unspecified",1:"Associated Alpha",2:"Unassociated Alpha"}[e]||"Unknown"}},339:{name:"SampleFormat",description:function(e){var n={1:"Unsigned",2:"Signed",3:"Float",4:"Undefined",5:"Complex int",6:"Complex float"};return Array.isArray(e)?e.map((function(e){return n[e]||"Unknown"})).join(", "):"Unknown"}},513:"JPEGInterchangeFormat",514:"JPEGInterchangeFormatLength",529:{name:"YCbCrCoefficients",description:function(e){return e.map((function(e){return""+e[0]/e[1]})).join("/")}},530:"YCbCrSubSampling",531:{name:"YCbCrPositioning",description:function(e){return 1===e?"centered":2===e?"co-sited":"undefined "+e}},532:{name:"ReferenceBlackWhite",description:function(e){return e.map((function(e){return""+e[0]/e[1]})).join(", ")}},700:"ApplicationNotes",18246:"Rating",18249:"RatingPercent",33432:{name:"Copyright",description:function(e){return e.join("; ")}},33550:"PixelScale",33723:"IPTC-NAA",33920:"IntergraphMatrix",33922:"ModelTiePoint",34118:"SEMInfo",34264:"ModelTransform",34377:"PhotoshopSettings",34665:"Exif IFD Pointer",34675:"ICC_Profile",34735:"GeoTiffDirectory",34736:"GeoTiffDoubleParams",34737:"GeoTiffAsciiParams",34853:"GPS Info IFD Pointer",40091:"XPTitle",40092:"XPComment",40093:"XPAuthor",40094:"XPKeywords",40095:"XPSubject",42112:"GDALMetadata",42113:"GDALNoData",50341:"PrintIM",50707:"DNGBackwardVersion",50708:"UniqueCameraModel",50709:"LocalizedCameraModel",50721:"ColorMatrix1",50722:"ColorMatrix2",50723:"CameraCalibration1",50724:"CameraCalibration2",50725:"ReductionMatrix1",50726:"ReductionMatrix2",50727:"AnalogBalance",50728:"AsShotNeutral",50729:"AsShotWhiteXY",50730:"BaselineExposure",50731:"BaselineNoise",50732:"BaselineSharpness",50734:"LinearResponseLimit",50735:"CameraSerialNumber",50736:"DNGLensInfo",50739:"ShadowScale",50741:{name:"MakerNoteSafety",description:function(e){return{0:"Unsafe",1:"Safe"}[e]||"Unknown"}},50778:{name:"CalibrationIlluminant1",description:K.LightSource},50779:{name:"CalibrationIlluminant2",description:K.LightSource},50781:"RawDataUniqueID",50827:"OriginalRawFileName",50828:"OriginalRawFileData",50831:"AsShotICCProfile",50832:"AsShotPreProfileMatrix",50833:"CurrentICCProfile",50834:"CurrentPreProfileMatrix",50879:"ColorimetricReference",50885:"SRawType",50898:"PanasonicTitle",50899:"PanasonicTitle2",50931:"CameraCalibrationSig",50932:"ProfileCalibrationSig",50933:"ProfileIFD",50934:"AsShotProfileName",50936:"ProfileName",50937:"ProfileHueSatMapDims",50938:"ProfileHueSatMapData1",50939:"ProfileHueSatMapData2",50940:"ProfileToneCurve",50941:{name:"ProfileEmbedPolicy",description:function(e){return{0:"Allow Copying",1:"Embed if Used",2:"Never Embed",3:"No Restrictions"}[e]||"Unknown"}},50942:"ProfileCopyright",50964:"ForwardMatrix1",50965:"ForwardMatrix2",50966:"PreviewApplicationName",50967:"PreviewApplicationVersion",50968:"PreviewSettingsName",50969:"PreviewSettingsDigest",50970:{name:"PreviewColorSpace",description:function(e){return{1:"Gray Gamma 2.2",2:"sRGB",3:"Adobe RGB",4:"ProPhoto RGB"}[e]||"Unknown"}},50971:"PreviewDateTime",50972:"RawImageDigest",50973:"OriginalRawFileDigest",50981:"ProfileLookTableDims",50982:"ProfileLookTableData",51043:"TimeCodes",51044:"FrameRate",51058:"TStop",51081:"ReelName",51089:"OriginalDefaultFinalSize",51090:"OriginalBestQualitySize",51091:"OriginalDefaultCropSize",51105:"CameraLabel",51107:{name:"ProfileHueSatMapEncoding",description:function(e){return{0:"Linear",1:"sRGB"}[e]||"Unknown"}},51108:{name:"ProfileLookTableEncoding",description:function(e){return{0:"Linear",1:"sRGB"}[e]||"Unknown"}},51109:"BaselineExposureOffset",51110:{name:"DefaultBlackRender",description:function(e){return{0:"Auto",1:"None"}[e]||"Unknown"}},51111:"NewRawImageDigest",51112:"RawToPreviewGain"},{33434:{name:"ExposureTime",description:function(e){return 0!==e[0]?"1/".concat(Math.round(e[1]/e[0])):"0/".concat(e[1])}},33437:{name:"FNumber",description:function(e){return"f/".concat(e[0]/e[1])}},34850:{name:"ExposureProgram",description:function(e){return 0===e?"Undefined":1===e?"Manual":2===e?"Normal program":3===e?"Aperture priority":4===e?"Shutter priority":5===e?"Creative program":6===e?"Action program":7===e?"Portrait mode":8===e?"Landscape mode":9===e?"Bulb":"Unknown"}},34852:"SpectralSensitivity",34855:"ISOSpeedRatings",34856:{name:"OECF",description:function(){return"[Raw OECF table data]"}},34858:"TimeZoneOffset",34859:"SelfTimerMode",34864:{name:"SensitivityType",description:function(e){return{1:"Standard Output Sensitivity",2:"Recommended Exposure Index",3:"ISO Speed",4:"Standard Output Sensitivity and Recommended Exposure Index",5:"Standard Output Sensitivity and ISO Speed",6:"Recommended Exposure Index and ISO Speed",7:"Standard Output Sensitivity, Recommended Exposure Index and ISO Speed"}[e]||"Unknown"}},34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",36864:{name:"ExifVersion",description:function(e){return Y(e)}},36867:"DateTimeOriginal",36868:"DateTimeDigitized",36873:"GooglePlusUploadCode",36880:"OffsetTime",36881:"OffsetTimeOriginal",36882:"OffsetTimeDigitized",37121:{name:"ComponentsConfiguration",description:function(e){return e.map((function(e){return 49===e?"Y":50===e?"Cb":51===e?"Cr":52===e?"R":53===e?"G":54===e?"B":void 0})).join("")}},37122:"CompressedBitsPerPixel",37377:{name:"ShutterSpeedValue",description:function(e){return"1/".concat(Math.round(Math.pow(2,e[0]/e[1])))}},37378:{name:"ApertureValue",description:function(e){return Math.pow(Math.sqrt(2),e[0]/e[1]).toFixed(2)}},37379:"BrightnessValue",37380:"ExposureBiasValue",37381:{name:"MaxApertureValue",description:function(e){return Math.pow(Math.sqrt(2),e[0]/e[1]).toFixed(2)}},37382:{name:"SubjectDistance",description:function(e){return e[0]/e[1]+" m"}},37383:{name:"MeteringMode",description:function(e){return 1===e?"Average":2===e?"CenterWeightedAverage":3===e?"Spot":4===e?"MultiSpot":5===e?"Pattern":6===e?"Partial":255===e?"Other":"Unknown"}},37384:{name:"LightSource",description:K.LightSource},37385:{name:"Flash",description:function(e){return 0===e?"Flash did not fire":1===e?"Flash fired":5===e?"Strobe return light not detected":7===e?"Strobe return light detected":9===e?"Flash fired, compulsory flash mode":13===e?"Flash fired, compulsory flash mode, return light not detected":15===e?"Flash fired, compulsory flash mode, return light detected":16===e?"Flash did not fire, compulsory flash mode":24===e?"Flash did not fire, auto mode":25===e?"Flash fired, auto mode":29===e?"Flash fired, auto mode, return light not detected":31===e?"Flash fired, auto mode, return light detected":32===e?"No flash function":65===e?"Flash fired, red-eye reduction mode":69===e?"Flash fired, red-eye reduction mode, return light not detected":71===e?"Flash fired, red-eye reduction mode, return light detected":73===e?"Flash fired, compulsory flash mode, red-eye reduction mode":77===e?"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected":79===e?"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected":89===e?"Flash fired, auto mode, red-eye reduction mode":93===e?"Flash fired, auto mode, return light not detected, red-eye reduction mode":95===e?"Flash fired, auto mode, return light detected, red-eye reduction mode":"Unknown"}},37386:{name:"FocalLength",description:function(e){return e[0]/e[1]+" mm"}},37393:"ImageNumber",37394:{name:"SecurityClassification",description:function(e){return{C:"Confidential",R:"Restricted",S:"Secret",T:"Top Secret",U:"Unclassified"}[e]||"Unknown"}},37395:"ImageHistory",37396:{name:"SubjectArea",description:function(e){return 2===e.length?"Location; X: ".concat(e[0],", Y: ").concat(e[1]):3===e.length?"Circle; X: ".concat(e[0],", Y: ").concat(e[1],", diameter: ").concat(e[2]):4===e.length?"Rectangle; X: ".concat(e[0],", Y: ").concat(e[1],", width: ").concat(e[2],", height: ").concat(e[3]):"Unknown"}},37500:{name:"MakerNote",description:function(){return"[Raw maker note data]"}},37510:{name:"UserComment",description:J},37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",37888:{name:"AmbientTemperature",description:function(e){return e[0]/e[1]+" °C"}},37889:{name:"Humidity",description:function(e){return e[0]/e[1]+" %"}},37890:{name:"Pressure",description:function(e){return e[0]/e[1]+" hPa"}},37891:{name:"WaterDepth",description:function(e){return e[0]/e[1]+" m"}},37892:{name:"Acceleration",description:function(e){return e[0]/e[1]+" mGal"}},37893:{name:"CameraElevationAngle",description:function(e){return e[0]/e[1]+" °"}},40960:{name:"FlashpixVersion",description:function(e){return e.map((function(e){return String.fromCharCode(e)})).join("")}},40961:{name:"ColorSpace",description:function(e){return 1===e?"sRGB":65535===e?"Uncalibrated":"Unknown"}},40962:"PixelXDimension",40963:"PixelYDimension",40964:"RelatedSoundFile",40965:"Interoperability IFD Pointer",41483:"FlashEnergy",41484:{name:"SpatialFrequencyResponse",description:function(){return"[Raw SFR table data]"}},41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:{name:"FocalPlaneResolutionUnit",description:function(e){return 2===e?"inches":3===e?"centimeters":"Unknown"}},41492:{name:"SubjectLocation",description:function(e){var n=q(e,2),t=n[0],r=n[1];return"X: ".concat(t,", Y: ").concat(r)}},41493:"ExposureIndex",41495:{name:"SensingMethod",description:function(e){return 1===e?"Undefined":2===e?"One-chip color area sensor":3===e?"Two-chip color area sensor":4===e?"Three-chip color area sensor":5===e?"Color sequential area sensor":7===e?"Trilinear sensor":8===e?"Color sequential linear sensor":"Unknown"}},41728:{name:"FileSource",description:function(e){return 3===e?"DSC":"Unknown"}},41729:{name:"SceneType",description:function(e){return 1===e?"A directly photographed image":"Unknown"}},41730:{name:"CFAPattern",description:function(){return"[Raw CFA pattern table data]"}},41985:{name:"CustomRendered",description:function(e){return 0===e?"Normal process":1===e?"Custom process":"Unknown"}},41986:{name:"ExposureMode",description:function(e){return 0===e?"Auto exposure":1===e?"Manual exposure":2===e?"Auto bracket":"Unknown"}},41987:{name:"WhiteBalance",description:function(e){return 0===e?"Auto white balance":1===e?"Manual white balance":"Unknown"}},41988:{name:"DigitalZoomRatio",description:function(e){return 0===e[0]?"Digital zoom was not used":""+e[0]/e[1]}},41989:{name:"FocalLengthIn35mmFilm",description:function(e){return 0===e?"Unknown":e}},41990:{name:"SceneCaptureType",description:function(e){return 0===e?"Standard":1===e?"Landscape":2===e?"Portrait":3===e?"Night scene":"Unknown"}},41991:{name:"GainControl",description:function(e){return 0===e?"None":1===e?"Low gain up":2===e?"High gain up":3===e?"Low gain down":4===e?"High gain down":"Unknown"}},41992:{name:"Contrast",description:function(e){return 0===e?"Normal":1===e?"Soft":2===e?"Hard":"Unknown"}},41993:{name:"Saturation",description:function(e){return 0===e?"Normal":1===e?"Low saturation":2===e?"High saturation":"Unknown"}},41994:{name:"Sharpness",description:function(e){return 0===e?"Normal":1===e?"Soft":2===e?"Hard":"Unknown"}},41995:{name:"DeviceSettingDescription",description:function(){return"[Raw device settings table data]"}},41996:{name:"SubjectDistanceRange",description:function(e){return 1===e?"Macro":2===e?"Close view":3===e?"Distant view":"Unknown"}},42016:"ImageUniqueID",42032:"CameraOwnerName",42033:"BodySerialNumber",42034:{name:"LensSpecification",description:function(e){var n="".concat(e[0][0]/e[0][1],"-").concat(e[1][0]/e[1][1]," mm");return 0===e[3][1]?"".concat(n," f/?"):"".concat(n," f/").concat(1/(e[2][1]/e[2][1]/(e[3][0]/e[3][1])))}},42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",42080:{name:"CompositeImage",description:function(e){return{1:"Not a Composite Image",2:"General Composite Image",3:"Composite Image Captured While Shooting"}[e]||"Unknown"}},42081:"SourceImageNumberOfCompositeImage",42082:"SourceExposureTimesOfCompositeImage",42240:"Gamma",59932:"Padding",59933:"OffsetSchema",65e3:"OwnerName",65001:"SerialNumber",65002:"Lens",65100:"RawFile",65101:"Converter",65102:"WhiteBalance",65105:"Exposure",65106:"Shadows",65107:"Brightness",65108:"Contrast",65109:"Saturation",65110:"Sharpness",65111:"Smoothness",65112:"MoireFilter"}),re={"0th":te,exif:te,gps:ee,interoperability:ne};function ie(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=function(e,n){if(!e)return;if("string"==typeof e)return oe(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return oe(e,n)}(e))){var n=0,t=function(){};return{s:t,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:t}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,i,o=!0,a=!1;return{s:function(){r=e[Symbol.iterator]()},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,i=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw i}}}}function oe(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var ae={1:W.getByteAt,2:W.getAsciiAt,3:W.getShortAt,4:W.getLongAt,5:W.getRationalAt,7:W.getUndefinedAt,9:W.getSlongAt,10:W.getSrationalAt,13:W.getIfdPointerAt},ue={read:function(e,n){var t=b.getByteOrder(e,n),r=function(e,n,t){return le(e,"0th",n,function(e,n,t){return n+W.getLongAt(e,n+4,t)}(e,n,t),t)}(e,n,t);return r=se(r=fe(r=ce(r,e,n,t),e,n,t),e,n,t)}};function ce(e,n,t,r){return void 0!==e["Exif IFD Pointer"]?a(e,le(n,"exif",t,t+e["Exif IFD Pointer"].value,r)):e}function fe(e,n,t,r){return void 0!==e["GPS Info IFD Pointer"]?a(e,le(n,"gps",t,t+e["GPS Info IFD Pointer"].value,r)):e}function se(e,n,t,r){return void 0!==e["Interoperability IFD Pointer"]?a(e,le(n,"interoperability",t,t+e["Interoperability IFD Pointer"].value,r)):e}function le(e,n,t,r,i){var o=W.getTypeSize("SHORT"),a={},u=function(e,n,t){if(n+W.getTypeSize("SHORT")<=e.byteLength)return W.getShortAt(e,n,t);return 0}(e,r,i);r+=o;for(var c=0;c<u&&!(r+12>e.byteLength);c++){var f=de(e,n,t,r,i);void 0!==f&&(a[f.name]={id:f.id,value:f.value,description:f.description}),r+=12}if(r<e.byteLength-W.getTypeSize("LONG")){var s=W.getLongAt(e,r,i);0!==s&&(a.Thumbnail=le(e,n,t,t+s,i))}return a}function de(e,n,t,r,i){var o,a=W.getTypeSize("SHORT"),u=a+W.getTypeSize("SHORT"),c=u+W.getTypeSize("LONG"),f=W.getShortAt(e,r,i),s=W.getShortAt(e,r+a,i),l=W.getLongAt(e,r+u,i);if(void 0!==W.typeSizes[s]){if(function(e,n){return W.typeSizes[e]*n<=W.getTypeSize("LONG")}(s,l))o=pe(e,r+c,s,l,i);else{var d=W.getLongAt(e,r+c,i);o=function(e,n,t,r,i){return n+t+W.typeSizes[r]*i<=e.byteLength}(e,t,d,s,l)?pe(e,t+d,s,l,i):"<faulty value>"}if(s===W.tagTypes.ASCII&&(o=function(e){try{return e.map((function(e){return decodeURIComponent(escape(e))}))}catch(n){return e}}(o=function(e){var n,t=[],r=0,i=ie(e);try{for(i.s();!(n=i.n()).done;){var o=n.value;"\0"!==o?(void 0===t[r]&&(t[r]=""),t[r]+=o):r++}}catch(e){i.e(e)}finally{i.f()}return t}(o))),void 0!==re[n][f]){var p,m;if(void 0!==re[n][f].name&&void 0!==re[n][f].description){p=re[n][f].name;try{m=re[n][f].description(o)}catch(e){m=me(o)}}else s===W.tagTypes.RATIONAL||s===W.tagTypes.SRATIONAL?(p=re[n][f],m=""+o[0]/o[1]):(p=re[n][f],m=me(o));return{id:f,name:p,value:o,description:m}}return{id:f,name:"undefined-".concat(f),value:o,description:o}}}function pe(e,n,t,r,i){for(var o=[],a=0;a<r;a++)o.push(ae[t](e,n,i)),n+=W.typeSizes[t];return t===W.tagTypes.ASCII?o=W.getAsciiValue(o):1===o.length&&(o=o[0]),o}function me(e){return e instanceof Array?e.join(", "):e}var ge={read:function(e,n){var t=function(e,n){return W.getShortAt(e,n)}(e,n),r=function(e,n,t){if(8>t)return;var r=W.getByteAt(e,n+7);return{value:r,description:""+r}}(e,n,t);return{"Bits Per Sample":he(e,n,t),"Image Height":ve(e,n,t),"Image Width":ye(e,n,t),"Color Components":r,Subsampling:r&&Se(e,n,r.value,t)}}};function he(e,n,t){if(!(3>t)){var r=W.getByteAt(e,n+2);return{value:r,description:""+r}}}function ve(e,n,t){if(!(5>t)){var r=W.getShortAt(e,n+3);return{value:r,description:"".concat(r,"px")}}}function ye(e,n,t){if(!(7>t)){var r=W.getShortAt(e,n+5);return{value:r,description:"".concat(r,"px")}}}function Se(e,n,t,r){if(!(8+3*t>r)){for(var i=[],o=0;o<t;o++){var a=n+8+3*o;i.push([W.getByteAt(e,a),W.getByteAt(e,a+1),W.getByteAt(e,a+2)])}return{value:i,description:i.length>1?be(i)+Ce(i):""}}}function be(e){var n={1:"Y",2:"Cb",3:"Cr",4:"I",5:"Q"};return e.map((function(e){return n[e[0]]})).join("")}function Ce(e){var n={17:"4:4:4 (1 1)",18:"4:4:0 (1 2)",20:"4:4:1 (1 4)",33:"4:2:2 (2 1)",34:"4:2:0 (2 2)",36:"4:2:1 (2 4)",65:"4:1:1 (4 1)",66:"4:1:0 (4 2)"};return 0===e.length||void 0===e[0][1]||void 0===n[e[0][1]]?"":n[e[0][1]]}var Ie={iptc:{256:{name:"Model Version",description:function(e){return((e[0]<<8)+e[1]).toString()}},261:{name:"Destination",repeatable:!0},276:{name:"File Format",description:function(e){return((e[0]<<8)+e[1]).toString()}},278:{name:"File Format Version",description:function(e){return((e[0]<<8)+e[1]).toString()}},286:"Service Identifier",296:"Envelope Number",306:"Product ID",316:"Envelope Priority",326:{name:"Date Sent",description:Ae},336:{name:"Time Sent",description:we},346:{name:"Coded Character Set",description:Pe,encoding_name:Pe},356:"UNO",376:{name:"ARM Identifier",description:function(e){return((e[0]<<8)+e[1]).toString()}},378:{name:"ARM Version",description:function(e){return((e[0]<<8)+e[1]).toString()}},512:{name:"Record Version",description:function(e){return((e[0]<<8)+e[1]).toString()}},515:"Object Type Reference",516:"Object Attribute Reference",517:"Object Name",519:"Edit Status",520:{name:"Editorial Update",description:function(e){return"01"===Y(e)?"Additional Language":"Unknown"}},522:"Urgency",524:{name:"Subject Reference",repeatable:!0,description:function(e){var n=Y(e).split(":");return n[2]+(n[3]?"/"+n[3]:"")+(n[4]?"/"+n[4]:"")}},527:"Category",532:{name:"Supplemental Category",repeatable:!0},534:"Fixture Identifier",537:{name:"Keywords",repeatable:!0},538:{name:"Content Location Code",repeatable:!0},539:{name:"Content Location Name",repeatable:!0},542:"Release Date",547:"Release Time",549:"Expiration Date",550:"Expiration Time",552:"Special Instructions",554:{name:"Action Advised",description:function(e){var n=Y(e);return"01"===n?"Object Kill":"02"===n?"Object Replace":"03"===n?"Object Append":"04"===n?"Object Reference":"Unknown"}},557:{name:"Reference Service",repeatable:!0},559:{name:"Reference Date",repeatable:!0},562:{name:"Reference Number",repeatable:!0},567:{name:"Date Created",description:Ae},572:{name:"Time Created",description:we},574:{name:"Digital Creation Date",description:Ae},575:{name:"Digital Creation Time",description:we},577:"Originating Program",582:"Program Version",587:{name:"Object Cycle",description:function(e){var n=Y(e);return"a"===n?"morning":"p"===n?"evening":"b"===n?"both":"Unknown"}},592:{name:"By-line",repeatable:!0},597:{name:"By-line Title",repeatable:!0},602:"City",604:"Sub-location",607:"Province/State",612:"Country/Primary Location Code",613:"Country/Primary Location Name",615:"Original Transmission Reference",617:"Headline",622:"Credit",627:"Source",628:"Copyright Notice",630:{name:"Contact",repeatable:!0},632:"Caption/Abstract",634:{name:"Writer/Editor",repeatable:!0},637:{name:"Rasterized Caption",description:function(e){return e}},642:"Image Type",643:{name:"Image Orientation",description:function(e){var n=Y(e);return"P"===n?"Portrait":"L"===n?"Landscape":"S"===n?"Square":"Unknown"}},647:"Language Identifier",662:{name:"Audio Type",description:function(e){var n=Y(e),t=n.charAt(0),r=n.charAt(1),i="";return"1"===t?i+="Mono":"2"===t&&(i+="Stereo"),"A"===r?i+=", actuality":"C"===r?i+=", question and answer session":"M"===r?i+=", music, transmitted by itself":"Q"===r?i+=", response to a question":"R"===r?i+=", raw sound":"S"===r?i+=", scener":"V"===r?i+=", voicer":"W"===r&&(i+=", wrap"),""!==i?i:n}},663:{name:"Audio Sampling Rate",description:function(e){return parseInt(Y(e),10)+" Hz"}},664:{name:"Audio Sampling Resolution",description:function(e){var n=parseInt(Y(e),10);return n+(1===n?" bit":" bits")}},665:{name:"Audio Duration",description:function(e){var n=Y(e);return n.length>=6?n.substr(0,2)+":"+n.substr(2,2)+":"+n.substr(4,2):n}},666:"Audio Outcue",698:"Short Document ID",699:"Unique Document ID",700:"Owner ID",712:{name:function(e){return 2===e.length?"ObjectData Preview File Format":"Record 2 destination"},description:function(e){if(2===e.length){var n=(e[0]<<8)+e[1];return 0===n?"No ObjectData":1===n?"IPTC-NAA Digital Newsphoto Parameter Record":2===n?"IPTC7901 Recommended Message Format":3===n?"Tagged Image File Format (Adobe/Aldus Image data)":4===n?"Illustrator (Adobe Graphics data)":5===n?"AppleSingle (Apple Computer Inc)":6===n?"NAA 89-3 (ANPA 1312)":7===n?"MacBinary II":8===n?"IPTC Unstructured Character Oriented File Format (UCOFF)":9===n?"United Press International ANPA 1312 variant":10===n?"United Press International Down-Load Message":11===n?"JPEG File Interchange (JFIF)":12===n?"Photo-CD Image-Pac (Eastman Kodak)":13===n?"Microsoft Bit Mapped Graphics File [*.BMP]":14===n?"Digital Audio File [*.WAV] (Microsoft & Creative Labs)":15===n?"Audio plus Moving Video [*.AVI] (Microsoft)":16===n?"PC DOS/Windows Executable Files [*.COM][*.EXE]":17===n?"Compressed Binary File [*.ZIP] (PKWare Inc)":18===n?"Audio Interchange File Format AIFF (Apple Computer Inc)":19===n?"RIFF Wave (Microsoft Corporation)":20===n?"Freehand (Macromedia/Aldus)":21===n?'Hypertext Markup Language "HTML" (The Internet Society)':22===n?"MPEG 2 Audio Layer 2 (Musicom), ISO/IEC":23===n?"MPEG 2 Audio Layer 3, ISO/IEC":24===n?"Portable Document File (*.PDF) Adobe":25===n?"News Industry Text Format (NITF)":26===n?"Tape Archive (*.TAR)":27===n?"Tidningarnas Telegrambyrå NITF version (TTNITF DTD)":28===n?"Ritzaus Bureau NITF version (RBNITF DTD)":29===n?"Corel Draw [*.CDR]":"Unknown format ".concat(n)}return Y(e)}},713:{name:"ObjectData Preview File Format Version",description:function(e,n){var t={"00":{"00":"1"},"01":{"01":"1","02":"2","03":"3","04":"4"},"02":{"04":"4"},"03":{"01":"5.0","02":"6.0"},"04":{"01":"1.40"},"05":{"01":"2"},"06":{"01":"1"},11:{"01":"1.02"},20:{"01":"3.1","02":"4.0","03":"5.0","04":"5.5"},21:{"02":"2.0"}},r=Y(e);if(n["ObjectData Preview File Format"]){var i=Y(n["ObjectData Preview File Format"].value);if(t[i]&&t[i][r])return t[i][r]}return r}},714:"ObjectData Preview Data",1802:{name:"Size Mode",description:function(e){return e[0].toString()}},1812:{name:"Max Subfile Size",description:function(e){for(var n=0,t=0;t<e.length;t++)n=(n<<8)+e[t];return n.toString()}},1882:{name:"ObjectData Size Announced",description:function(e){for(var n=0,t=0;t<e.length;t++)n=(n<<8)+e[t];return n.toString()}},1887:{name:"Maximum ObjectData Size",description:function(e){for(var n=0,t=0;t<e.length;t++)n=(n<<8)+e[t];return n.toString()}}}};function Ae(e){var n=Y(e);return n.length>=8?n.substr(0,4)+"-"+n.substr(4,2)+"-"+n.substr(6,2):n}function we(e){var n=Y(e),t=n;return n.length>=6&&(t=n.substr(0,2)+":"+n.substr(2,2)+":"+n.substr(4,2),11===n.length&&(t+=n.substr(6,1)+n.substr(7,2)+":"+n.substr(9,2))),t}function Pe(e){var n=Y(e);return"%G"===n?"UTF-8":"%5"===n?"Windows-1252":"%/G"===n?"UTF-8 Level 1":"%/H"===n?"UTF-8 Level 2":"%/I"===n?"UTF-8 Level 3":"/A"===n?"ISO-8859-1":"/B"===n?"ISO-8859-2":"/C"===n?"ISO-8859-3":"/D"===n?"ISO-8859-4":"/@"===n?"ISO-8859-5":"/G"===n?"ISO-8859-6":"/F"===n?"ISO-8859-7":"/H"===n?"ISO-8859-8":"Unknown"}var Ue={get:function(){if("undefined"!=typeof TextDecoder)return TextDecoder;return}};var Oe={decode:function(e,n){var t=Ue.get();if(void 0!==t&&void 0!==e)try{return new t(e).decode(Uint8Array.from(n))}catch(e){}return function(e){try{return decodeURIComponent(escape(e))}catch(n){return e}}(n.map((function(e){return String.fromCharCode(e)})).join(""))},TAG_HEADER_SIZE:5};var De={read:function(e,n){try{var t=function(e,n){for(;n+12<=e.byteLength;){var t=Te(e,n);if(Me(t))return{naaBlock:t,dataOffset:n};n+=12+t.size+Fe(t)}throw new Error("No IPTC NAA resource block.")}(e,n),r=t.naaBlock,i=t.dataOffset;return function(e,n,t){var r={},i=void 0,o=(t+=12)+n.size;for(;t<o&&t<e.byteLength;){var a=xe(e,t,r,i),u=a.tag,c=a.tagSize;if(null===u)break;"encoding"in u&&(i=u.encoding),void 0===r[u.name]||void 0===u.repeatable?r[u.name]={id:u.id,value:u.value,description:u.description}:(r[u.name]instanceof Array||(r[u.name]=[{id:r[u.name].id,value:r[u.name].value,description:r[u.name].description}]),r[u.name].push({id:u.id,value:u.value,description:u.description})),t+=5+c}return r}(e,r,i)}catch(e){return{}}}};function Te(e,n){if(943868237!==e.getUint32(n,!1))throw new Error("Not an IPTC resource block.");return{type:e.getUint16(n+4,!1),size:e.getUint16(n+10,!1)}}function Me(e){return 1028===e.type}function Fe(e){return e.size%2!=0?1:0}function xe(e,n,t,r){if(function(e,n){return 28!==e.getUint8(n)}(e,n))return{tag:null,tagSize:0};var i=e.getUint16(n+1,!1),o=e.getUint16(n+3,!1),a=function(e,n,t){for(var r=[],i=0;i<t;i++)r.push(e.getUint8(n+i));return r}(e,n+5,o),u={id:i,name:Le(Ie.iptc[i],i,a),value:a,description:ke(Ie.iptc[i],a,t,r)};return function(e){return Ie.iptc[e]&&Ie.iptc[e].repeatable}(i)&&(u.repeatable=!0),function(e){return Ie.iptc[e]&&void 0!==Ie.iptc[e].encoding_name}(i)&&(u.encoding=Ie.iptc[i].encoding_name(a)),{tag:u,tagSize:o}}function Le(e,n,t){return e?function(e){return"string"==typeof e}(e)?e:function(e){return"function"==typeof e.name}(e)?e.name(t):e.name:"undefined-".concat(n)}function ke(e,n,t,r){if(function(e){return e&&void 0!==e.description}(e))try{return e.description(n,t)}catch(e){}return function(e,n){return e&&n instanceof Array}(e,n)?Oe.decode(r,n):n}function Re(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var t=[],r=!0,i=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(t.push(a.value),!n||t.length!==n);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==u.return||u.return()}finally{if(i)throw o}}return t}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return Ne(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Ne(e,n)}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ne(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var Ee={"tiff:Orientation":function(e){return"1"===e?"Horizontal (normal)":"2"===e?"Mirror horizontal":"3"===e?"Rotate 180":"4"===e?"Mirror vertical":"5"===e?"Mirror horizontal and rotate 270 CW":"6"===e?"Rotate 90 CW":"7"===e?"Mirror horizontal and rotate 90 CW":"8"===e?"Rotate 270 CW":e},"exif:GPSLatitude":je,"exif:GPSLongitude":je};function je(e){var n=Re(e.split(","),2),t=n[0],r=n[1];if(void 0!==t&&void 0!==r){var i=parseFloat(t),o=parseFloat(r),a=r.charAt(r.length-1);if(!Number.isNaN(i)&&!Number.isNaN(o))return""+(i+o/60)+a}return e}var Ge=t(0);function Be(e){return(Be="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ze(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=function(e,n){if(!e)return;if("string"==typeof e)return He(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return He(e,n)}(e))){var n=0,t=function(){};return{s:t,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:t}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,i,o=!0,a=!1;return{s:function(){r=e[Symbol.iterator]()},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,i=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw i}}}}function He(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var We={read:function(e,n){return function(e,n){if(0===n.length)return[];var t=[Ve(e,n.slice(0,1))];n.length>1&&t.push(Ve(e,n.slice(1)));return t}(e,n).reduce(_e,{})}};function Ve(e,n){var t,r=n.reduce((function(e,n){return e+n.length}),0),i=new Uint8Array(r),o=0,a=ze(n);try{for(a.s();!(t=a.n()).done;){var u=t.value,c=e.buffer.slice(u.dataOffset,u.dataOffset+u.length);i.set(new Uint8Array(c),o),o+=u.length}}catch(e){a.e(e)}finally{a.f()}return new DataView(i.buffer)}function _e(e,n){try{return a(e,Ze(Xe(function e(n){for(var t=0;t<n.childNodes.length;t++){if("x:xmpmeta"===n.childNodes[t].tagName)return e(n.childNodes[t]);if("rdf:RDF"===n.childNodes[t].tagName)return n.childNodes[t]}throw new Error}(function(e){var n=Ge.a.get();if(!n)throw console.warn("Warning: DOMParser is not available. It is needed to be able to parse XMP tags."),new Error;var t=new n,i=r(e,0,e.byteLength),o=t.parseFromString(i,"application/xml");if("parsererror"===o.documentElement.nodeName)throw new Error(o.documentElement.textContent);return o}(n)),!0)))}catch(n){return e}}function Xe(e){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],t=Ke(e);return Ye(t)?n?{}:Je(t[0]):qe(t)}function Ke(e){for(var n=[],t=0;t<e.childNodes.length;t++)n.push(e.childNodes[t]);return n}function Ye(e){return 1===e.length&&"#text"===e[0].nodeName}function Je(e){return e.nodeValue}function qe(e){var n={};return e.forEach((function(e){if(function(e){return e.nodeName&&"#text"!==e.nodeName}(e)){var t=function(e){return{attributes:$e(e),value:Xe(e)}}(e);void 0!==n[e.nodeName]?(Array.isArray(n[e.nodeName])||(n[e.nodeName]=[n[e.nodeName]]),n[e.nodeName].push(t)):n[e.nodeName]=t}})),n}function $e(e){for(var n={},t=0;t<e.attributes.length;t++)n[e.attributes[t].nodeName]=decodeURIComponent(escape(e.attributes[t].value));return n}function Ze(e){var n={};if("string"==typeof e)return e;for(var t in e){var r=e[t];Array.isArray(r)||(r=[r]),r.forEach((function(e){a(n,Qe(e.attributes)),"object"===Be(e.value)&&a(n,cn(e.value))}))}return n}function Qe(e){var n={};for(var t in e)en(t)&&(n[tn(t)]={value:e[t],attributes:{},description:rn(e[t],t)});return n}function en(e){return"rdf:parseType"!==e&&!nn(e)}function nn(e){return"xmlns"===e.split(":")[0]}function tn(e){return e.split(":")[1]}function rn(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;if(Array.isArray(e))return on(e);if("object"===Be(e))return an(e);try{return n&&"function"==typeof Ee[n]?Ee[n](e):decodeURIComponent(escape(e))}catch(n){return e}}function on(e){return e.map((function(e){return void 0!==e.value?rn(e.value):rn(e)})).join(", ")}function an(e){var n=[];for(var t in e)n.push("".concat(un(t),": ").concat(e[t].value));return n.join("; ")}function un(e){return"CiAdrCity"===e?"CreatorCity":"CiAdrCtry"===e?"CreatorCountry":"CiAdrExtadr"===e?"CreatorAddress":"CiAdrPcode"===e?"CreatorPostalCode":"CiAdrRegion"===e?"CreatorRegion":"CiEmailWork"===e?"CreatorWorkEmail":"CiTelWork"===e?"CreatorWorkPhone":"CiUrlWork"===e?"CreatorWorkUrl":e}function cn(e){var n={};for(var t in e)nn(t)||(n[tn(t)]=fn(e[t],t));return n}function fn(e,n){return sn(e)?ln(e,n):function(e){return"Resource"===e.attributes["rdf:parseType"]||void 0!==e.value["rdf:Description"]&&void 0===e.value["rdf:Description"].value["rdf:value"]}(e)?function(e,n){var t={value:{},attributes:{}};void 0!==e.value["rdf:Description"]&&(a(t.value,Qe(e.value["rdf:Description"].attributes)),a(t.attributes,dn(e)),e=e.value["rdf:Description"]);return a(t.value,cn(e.value)),t.description=rn(t.value,n),t}(e,n):function(e){return 0===Object.keys(e.value).length&&void 0===e.attributes["rdf:resource"]}(e)?function(e,n){var t=Qe(e.attributes);return{value:t,attributes:{},description:rn(t,n)}}(e,n):function(e){return void 0!==pn(e.value)}(e)?function(e,n){var t=pn(e.value).value["rdf:li"],r=dn(e),i=[];void 0===t?t=[]:Array.isArray(t)||(t=[t]);return t.forEach((function(e){i.push(function(e){if(sn(e))return ln(e);if(function(e){return"Resource"===e.attributes["rdf:parseType"]}(e))return cn(e.value);return{value:e.value,attributes:dn(e),description:rn(e.value)}}(e))})),{value:i,attributes:r,description:rn(i,n)}}(e,n):function(e,n){var t=mn(e)||Ze(e.value);return{value:t,attributes:dn(e),description:rn(t,n)}}(e,n)}function sn(e){return"Resource"===e.attributes["rdf:parseType"]&&void 0!==e.value["rdf:value"]||void 0!==e.value["rdf:Description"]&&void 0!==e.value["rdf:Description"].value["rdf:value"]}function ln(e,n){var t=dn(e);void 0!==e.value["rdf:Description"]&&(e=e.value["rdf:Description"]),a(t,dn(e),function(e){var n={};for(var t in e.value)"rdf:value"===t||nn(t)||(n[tn(t)]=e.value[t].value);return n}(e));var r=function(e){return mn(e.value["rdf:value"])||e.value["rdf:value"].value}(e);return{value:r,attributes:t,description:rn(r,n)}}function dn(e){var n={};for(var t in e.attributes)"rdf:parseType"===t||"rdf:resource"===t||nn(t)||(n[tn(t)]=e.attributes[t]);return n}function pn(e){return e["rdf:Bag"]||e["rdf:Seq"]||e["rdf:Alt"]}function mn(e){return e.attributes&&e.attributes["rdf:resource"]}var gn={desc:{name:"ICC Description"},cprt:{name:"ICC Copyright"},dmdd:{name:"ICC Device Model Description"},vued:{name:"ICC Viewing Conditions Description"},dmnd:{name:"ICC Device Manufacturer for Display"},tech:{name:"Technology"}},hn={4:{name:"Preferred CMM type",value:function(e,n){return r(e,n,4)},description:function(e){return null!==e?vn(e):""}},8:{name:"Profile Version",value:function(e,n){return e.getUint8(n).toString(10)+"."+(e.getUint8(n+1)>>4).toString(10)+"."+(e.getUint8(n+1)%16).toString(10)}},12:{name:"Profile/Device class",value:function(e,n){return r(e,n,4)},description:function(e){switch(e.toLowerCase()){case"scnr":return"Input Device profile";case"mntr":return"Display Device profile";case"prtr":return"Output Device profile";case"link":return"DeviceLink profile";case"abst":return"Abstract profile";case"spac":return"ColorSpace profile";case"nmcl":return"NamedColor profile";case"cenc":return"ColorEncodingSpace profile";case"mid ":return"MultiplexIdentification profile";case"mlnk":return"MultiplexLink profile";case"mvis":return"MultiplexVisualization profile";default:return e}}},16:{name:"Color Space",value:function(e,n){return r(e,n,4)}},20:{name:"Connection Space",value:function(e,n){return r(e,n,4)}},24:{name:"ICC Profile Date",value:function(e,n){return function(e,n){var t=e.getUint16(n),r=e.getUint16(n+2)-1,i=e.getUint16(n+4),o=e.getUint16(n+6),a=e.getUint16(n+8),u=e.getUint16(n+10);return new Date(Date.UTC(t,r,i,o,a,u))}(e,n).toISOString()}},36:{name:"ICC Signature",value:function(e,n){return t=e.buffer.slice(n,n+4),String.fromCharCode.apply(null,new Uint8Array(t));var t}},40:{name:"Primary Platform",value:function(e,n){return r(e,n,4)},description:function(e){return vn(e)}},48:{name:"Device Manufacturer",value:function(e,n){return r(e,n,4)},description:function(e){return vn(e)}},52:{name:"Device Model Number",value:function(e,n){return r(e,n,4)}},64:{name:"Rendering Intent",value:function(e,n){return e.getUint32(n)},description:function(e){switch(e){case 0:return"Perceptual";case 1:return"Relative Colorimetric";case 2:return"Saturation";case 3:return"Absolute Colorimetric";default:return e}}},80:{name:"Profile Creator",value:function(e,n){return r(e,n,4)}}};function vn(e){switch(e.toLowerCase()){case"appl":return"Apple";case"adbe":return"Adobe";case"msft":return"Microsoft";case"sunw":return"Sun Microsystems";case"sgi":return"Silicon Graphics";case"tgnt":return"Taligent";default:return e}}var yn={read:function(e,n){try{for(var t=n.reduce((function(e,n){return e+n.length}),0),o=new Uint8Array(t),a=0,u=e.buffer,c=function(e){var t=n.find((function(n){return n.chunkNumber===e}));if(!t)throw new Error("ICC chunk ".concat(e," not found"));var r=u.slice(t.offset,t.offset+t.length),i=new Uint8Array(r);o.set(i,a),a+=i.length},f=1;f<=n.length;f++)c(f);return function(e){var n=e.buffer,t=e.getUint32();if(e.byteLength!==t)throw new Error("ICC profile length not matching");if(e.length<84)throw new Error("ICC profile too short");for(var o={},a=0,u=Object.keys(hn);a<u.length;a++){var c=u[a],f=hn[c],s=f.value(e,parseInt(c,10)),l=s;f.description&&(l=f.description(s)),o[f.name]={value:s,description:l}}if("acsp"!==bn(n.slice(36,40)))throw new Error("ICC profile: missing signature");if(function(e){return e.length<132}(n))return o;for(var d=e.getUint32(128),p=132,m=0;m<d;m++){if(Sn(n,p))return o;var g=r(e,p,4),h=e.getUint32(p+4),v=e.getUint32(p+8);if(h>n.length)return o;var y=r(e,h,4);if("desc"===y){var S=e.getUint32(h+8);if(S>v)return o;var b=bn(n.slice(h+12,h+S+11));Cn(o,g,b)}else if("mluc"===y){for(var C=e.getUint32(h+8),I=e.getUint32(h+12),A=h+16,w=[],P=0;P<C;P++){var U=r(e,A+0,2),O=r(e,A+2,2),D=e.getUint32(A+4),T=e.getUint32(A+8),M=i(e,h+T,D);w.push({languageCode:U,countryCode:O,text:M}),A+=I}if(1===C)Cn(o,g,w[0].text);else{for(var F={},x=0;x<w.length;x++)F["".concat(w[x].languageCode,"-").concat(w[x].countryCode)]=w[x].text;Cn(o,g,F)}}else if("text"===y){var L=bn(n.slice(h+8,h+v-7));Cn(o,g,L)}else if("sig "===y){var k=bn(n.slice(h+8,h+12));Cn(o,g,k)}p+=12}return o}(new DataView(o.buffer))}catch(e){return{}}}};function Sn(e,n){return e.length<n+12}function bn(e){return String.fromCharCode.apply(null,new Uint8Array(e))}function Cn(e,n,t){gn[n]?e[gn[n].name]={value:t,description:t}:e[n]={value:t,description:t}}var In={read:function(e,n){return{"Image Width":An(e,n),"Image Height":wn(e,n),"Bit Depth":Pn(e,n),"Color Type":Un(e,n),Compression:On(e,n),Filter:Dn(e,n),Interlace:Tn(e,n)}}};function An(e,n){if(!(n+0+4>e.byteLength)){var t=W.getLongAt(e,n);return{value:t,description:"".concat(t,"px")}}}function wn(e,n){if(!(n+4+4>e.byteLength)){var t=W.getLongAt(e,n+4);return{value:t,description:"".concat(t,"px")}}}function Pn(e,n){if(!(n+8+1>e.byteLength)){var t=W.getByteAt(e,n+8);return{value:t,description:"".concat(t)}}}function Un(e,n){if(!(n+9+1>e.byteLength)){var t=W.getByteAt(e,n+9);return{value:t,description:{0:"Grayscale",2:"RGB",3:"Palette",4:"Grayscale with Alpha",6:"RGB with Alpha"}[t]||"Unknown"}}}function On(e,n){if(!(n+10+1>e.byteLength)){var t=W.getByteAt(e,n+10);return{value:t,description:0===t?"Deflate/Inflate":"Unknown"}}}function Dn(e,n){if(!(n+11+1>e.byteLength)){var t=W.getByteAt(e,n+11);return{value:t,description:0===t?"Adaptive":"Unknown"}}}function Tn(e,n){if(!(n+12+1>e.byteLength)){var t=W.getByteAt(e,n+12);return{value:t,description:{0:"Noninterlaced",1:"Adam7 Interlace"}[t]||"Unknown"}}}function Mn(e){return(Mn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var Fn={get:function(e,n,t){if(c=n,c&&(void 0===c.Compression||6===c.Compression.value)&&c.JPEGInterchangeFormat&&c.JPEGInterchangeFormat.value&&c.JPEGInterchangeFormatLength&&c.JPEGInterchangeFormatLength.value){n.type="image/jpeg";var r=t+n.JPEGInterchangeFormat.value;n.image=e.buffer.slice(r,r+n.JPEGInterchangeFormatLength.value),i=n,o="base64",a=function(){return e=this.image,"undefined"!=typeof btoa?btoa(Array.prototype.reduce.call(new Uint8Array(e),(function(e,n){return e+String.fromCharCode(n)}),"")):"undefined"!=typeof Buffer?void 0!==Mn(Buffer.from)?Buffer.from(e).toString("base64"):new Buffer(e).toString("base64"):void 0;var e},u=!1,Object.defineProperty(i,o,{get:function(){return u||(u=!0,Object.defineProperty(i,o,{configurable:!0,enumerable:!0,value:a.apply(i),writable:!0})),i[o]},configurable:!0,enumerable:!0})}var i,o,a,u;var c;return n}};function xn(e){this.name="MetadataMissingError",this.message=e||"No Exif data",this.stack=(new Error).stack}xn.prototype=new Error;var Ln={MetadataMissingError:xn};function kn(e,n){if(null==e)return{};var t,r,i=function(e,n){if(null==e)return{};var t,r,i={},o=Object.keys(e);for(r=0;r<o.length;r++)t=o[r],n.indexOf(t)>=0||(i[t]=e[t]);return i}(e,n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)t=o[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}n.default={load:Nn,loadView:jn,errors:Ln};var Rn=Ln;function Nn(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{expanded:!1};return jn(En(e),n)}function En(e){try{return new DataView(e)}catch(n){return new f(e)}}function jn(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{expanded:!1},t=!1,r={},i=B.parseAppMarkers(e),o=i.fileDataOffset,u=i.tiffHeaderOffset,c=i.iptcDataOffset,f=i.xmpChunks,h=i.iccChunks,S=i.pngHeaderOffset;if(v&&s&&Gn(o)){t=!0;var b=ge.read(e,o);n.expanded?r.file=b:r=a({},r,b)}if(l&&Bn(u)){t=!0;var C=ue.read(e,u),I=C.Thumbnail,A=kn(C,["Thumbnail"]);n.expanded?r.exif=A:r=a({},r,A),I&&(r.Thumbnail=I)}if(v&&d&&zn(c)){t=!0;var w=De.read(e,c);n.expanded?r.iptc=w:r=a({},r,w)}if(p&&Hn(f)){t=!0;var P=We.read(e,f);n.expanded?r.xmp=P:r=a({},r,P)}if(v&&m&&Wn(h)){t=!0;var U=yn.read(e,h);n.expanded?r.icc=U:r=a({},r,U)}if(y&&Vn(S)){t=!0;var O=In.read(e,S);n.expanded?r.pngFile=O:r=a({},r,O)}var D=v&&l&&g&&Fn.get(e,r.Thumbnail,u);if(D&&(r.Thumbnail=D,t=!0),!t)throw new Ln.MetadataMissingError;return r}function Gn(e){return void 0!==e}function Bn(e){return void 0!==e}function zn(e){return void 0!==e}function Hn(e){return Array.isArray(e)&&e.length>0}function Wn(e){return Array.isArray(e)&&e.length>0}function Vn(e){return void 0!==e}}])}));
//# sourceMappingURL=exif-reader.js.map
{
"name": "exifreader",
"version": "3.5.0",
"version": "3.6.0",
"description": "Library that parses Exif metadata in images.",

@@ -14,6 +14,10 @@ "author": "Mattias Wallander <mattias@wallander.eu>",

"module": "src/exif-reader.js",
"sideEffects": false,
"files": [
"bin/",
"dist/",
"src/",
"exif-reader.d.ts"
"babel.config.json",
"exif-reader.d.ts",
"webpack.config.js"
],

@@ -36,2 +40,3 @@ "dependencies": {},

"nyc": "^14.1.1",
"string-replace-loader": "^2.2.0",
"webpack": "^4.42.0",

@@ -41,7 +46,8 @@ "webpack-cli": "^3.3.6"

"scripts": {
"build": "webpack",
"build": "node bin/build.js",
"coverage": "nyc npm test",
"lint": "eslint .",
"precommit": "npm-run-all lint test",
"test": "cross-env BABEL_ENV=test mocha --require @babel/register"
"test": "cross-env BABEL_ENV=test mocha --require @babel/register",
"postinstall": "node bin/build.js --only-with-config"
},

@@ -48,0 +54,0 @@ "nyc": {

@@ -14,2 +14,6 @@ ExifReader

The included bundle has all functionality built in, but you can easily make a
custom build that suits your project's needs. See below for instructions. NOTE:
This functionality is in beta. Please file an issue if there are any problems.
**Notes for exif-js users**

@@ -143,2 +147,65 @@

### Configure a custom build
**NOTE:** This functionality is in beta but should work fine. Please file an
issue if you're having problems or ideas on how to make it better.
This is for npm users that use the built file. To specify what functionality you
want you can either use include pattern (start with an empty set and include) or
exclude pattern (start with full functionality and exclude). If an include
pattern is set, excludes will not be used.
The configuration is added to your project's `package.json` file.
**Example 1:** Only include JPEG files and Exif tags (this makes the bundle
almost half the size of the full one (non-gzipped)):
```javascript
"exifreader": {
"include": {
"jpeg": true,
"exif": true
}
}
```
**Example 2:** Exclude XMP tags:
```javascript
"exifreader": {
"exclude": {
"xmp": true
}
}
```
Then, if you didn't install ExifReader yet, just run `npm install exifreader`.
Otherwise you have to re-build the library:
```bash
npm rebuild exifreader
```
After that the new bundle is here: `node_modules/exifreader/dist/exif-reader.js`
If you're using the include pattern config, remember to include everything you
want to use. If you want `xmp` and don't specify any file types, you will get
"Invalid image format", and if you specify `jpeg` but don't mention any tag
types no tags will be found.
Possible modules to include or exclude:
| Module | Description |
| ----------- | -------------------------------------------------------------- |
| `jpeg` | JPEG images. |
| `tiff` | TIFF images. |
| `png` | PNG images. |
| `heic` | HEIC/HEIF images. |
| `file` | JPEG image width, height etc. |
| `exif` | Regular Exif tags. If excluded, will also exclude `thumbnail`. |
| `iptc` | IPTC tags. |
| `xmp` | XMP tags. |
| `icc` | ICC color profile tags. |
| `thumbnail` | JPEG thumbnail. Needs `exif`. |
Notes

@@ -222,2 +289,4 @@ -----

- For PNG files, only uncompressed XMP tags are currently supported.
- For HEIC files, only Exif tags are currently supported.
- The descriptions for UserComment, GPSProcessingMethod and GPSAreaInformation

@@ -252,4 +321,7 @@ are missing for other encodings than ASCII.

- **April 2020**:
- Add functionality to create a custom build to reduce bundle size.
- **March 2020**:
- Add support for PNG images.
- Add support for thumbnails in JPEGs.
- Major update to version 3.0. However, the actual change is quite small,

@@ -256,0 +328,0 @@ albeit a breaking one if you use that functionality (`.value` on

/**
* ExifReader
* http://github.com/mattiasw/exifreader
* Copyright (C) 2011-2018 Mattias Wallander <mattias@wallander.eu>
* Copyright (C) 2011-2020 Mattias Wallander <mattias@wallander.eu>
* This Source Code Form is subject to the terms of the Mozilla Public

@@ -12,2 +12,3 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this

import DataViewWrapper from './dataview';
import Constants from './constants';
import ImageHeader from './image-header';

@@ -49,3 +50,3 @@ import Tags from './tags';

if (hasFileData(fileDataOffset)) {
if (Constants.USE_JPEG && Constants.USE_FILE && hasFileData(fileDataOffset)) {
foundMetaData = true;

@@ -59,3 +60,3 @@ const readTags = FileTags.read(dataView, fileDataOffset);

}
if (hasExifData(tiffHeaderOffset)) {
if (Constants.USE_EXIF && hasExifData(tiffHeaderOffset)) {
foundMetaData = true;

@@ -72,3 +73,3 @@ const {Thumbnail: thumbnailTags, ...readTags} = Tags.read(dataView, tiffHeaderOffset);

}
if (hasIptcData(iptcDataOffset)) {
if (Constants.USE_JPEG && Constants.USE_IPTC && hasIptcData(iptcDataOffset)) {
foundMetaData = true;

@@ -82,3 +83,3 @@ const readTags = IptcTags.read(dataView, iptcDataOffset);

}
if (hasXmpData(xmpChunks)) {
if (Constants.USE_XMP && hasXmpData(xmpChunks)) {
foundMetaData = true;

@@ -92,3 +93,3 @@ const readTags = XmpTags.read(dataView, xmpChunks);

}
if (hasIccData(iccChunks)) {
if (Constants.USE_JPEG && Constants.USE_ICC && hasIccData(iccChunks)) {
foundMetaData = true;

@@ -102,3 +103,3 @@ const readTags = IccTags.read(dataView, iccChunks);

}
if (hasPngFileData(pngHeaderOffset)) {
if (Constants.USE_PNG && hasPngFileData(pngHeaderOffset)) {
foundMetaData = true;

@@ -113,3 +114,6 @@ const readTags = PngFileTags.read(dataView, pngHeaderOffset);

const thumbnail = Thumbnail.get(dataView, tags.Thumbnail, tiffHeaderOffset);
const thumbnail = Constants.USE_JPEG
&& Constants.USE_EXIF
&& Constants.USE_THUMBNAIL
&& Thumbnail.get(dataView, tags.Thumbnail, tiffHeaderOffset);
if (thumbnail) {

@@ -116,0 +120,0 @@ tags.Thumbnail = thumbnail;

@@ -6,2 +6,3 @@ /* This Source Code Form is subject to the terms of the Mozilla Public

import {getStringFromDataView} from './utils';
import Constants from './constants';

@@ -26,18 +27,22 @@ export default {

function findHeicOffsets(dataView) {
const {offset: metaOffset, length: metaLength} = findMetaAtom(dataView);
if (metaOffset === undefined) {
return {hasAppMarkers: false};
}
if (Constants.USE_EXIF) {
const {offset: metaOffset, length: metaLength} = findMetaAtom(dataView);
if (metaOffset === undefined) {
return {hasAppMarkers: false};
}
const metaEndOffset = Math.min(metaOffset + metaLength, dataView.byteLength);
const {exifItemOffset, ilocOffset} = findExifItemAndIloc(dataView, metaOffset, metaEndOffset);
if ((exifItemOffset === undefined) || (ilocOffset === undefined)) {
return {hasAppMarkers: false};
const metaEndOffset = Math.min(metaOffset + metaLength, dataView.byteLength);
const {exifItemOffset, ilocOffset} = findExifItemAndIloc(dataView, metaOffset, metaEndOffset);
if ((exifItemOffset === undefined) || (ilocOffset === undefined)) {
return {hasAppMarkers: false};
}
const exifOffset = findExifOffset(dataView, exifItemOffset, ilocOffset, metaEndOffset);
return {
hasAppMarkers: exifOffset !== undefined,
tiffHeaderOffset: exifOffset
};
}
const exifOffset = findExifOffset(dataView, exifItemOffset, ilocOffset, metaEndOffset);
return {
hasAppMarkers: exifOffset !== undefined,
tiffHeaderOffset: exifOffset
};
return {hasAppMarkers: false};
}

@@ -44,0 +49,0 @@

@@ -5,56 +5,8 @@ /* This Source Code Form is subject to the terms of the Mozilla Public

import {getStringFromDataView} from './utils';
import ByteOrder from './byte-order';
import Constants from './constants';
import Tiff from './image-header-tiff';
import Jpeg from './image-header-jpeg';
import Png from './image-header-png';
import Heic from './image-header-heic';
const MIN_TIFF_DATA_BUFFER_LENGTH = 4;
const MIN_JPEG_DATA_BUFFER_LENGTH = 2;
const TIFF_ID = 0x2a;
const TIFF_ID_OFFSET = 2;
const TIFF_FILE_HEADER_OFFSET = 0;
const PNG_ID = '\x89\x50\x4e\x47\x0d\x0a\x1a\x0a';
const PNG_CHUNK_LENGTH_SIZE = 4;
const PNG_CHUNK_TYPE_SIZE = 4;
const PNG_CRC_SIZE = 4;
const PNG_CHUNK_LENGTH_OFFSET = 0;
const PNG_CHUNK_TYPE_OFFSET = PNG_CHUNK_LENGTH_SIZE;
const PNG_CHUNK_DATA_OFFSET = PNG_CHUNK_LENGTH_SIZE + PNG_CHUNK_TYPE_SIZE;
const PNG_CHUNK_TYPE_IMAGE_HEADER = 'IHDR';
const PNG_CHUNK_TYPE_INTERNATIONAL_TEXT = 'iTXt';
const PNG_XMP_PREFIX = 'XML:com.adobe.xmp';
const JPEG_ID = 0xffd8;
const JPEG_ID_SIZE = 2;
const APP_ID_OFFSET = 4;
const APP_MARKER_SIZE = 2;
const TIFF_HEADER_OFFSET = 10; // From start of APP1 marker.
const IPTC_DATA_OFFSET = 18; // From start of APP13 marker.
const XMP_DATA_OFFSET = 33; // From start of APP1 marker.
const XMP_EXTENDED_DATA_OFFSET = 79; // From start of APP1 marker including GUID, total length, and offset.
const APP2_ICC_DATA_OFFSET = 18; // From start of APP2 marker including marker and chunk/chunk total numbers.
const APP2_ICC_IDENTIFIER = 'ICC_PROFILE\0';
const ICC_CHUNK_NUMBER_OFFSET = APP_ID_OFFSET + APP2_ICC_IDENTIFIER.length;
const ICC_TOTAL_CHUNKS_OFFSET = ICC_CHUNK_NUMBER_OFFSET + 1;
const SOF0_MARKER = 0xffc0;
const SOF2_MARKER = 0xffc2;
const DHT_MARKER = 0xffc4;
const DQT_MARKER = 0xffdb;
const DRI_MARKER = 0xffdd;
const SOS_MARKER = 0xffda;
const APP0_MARKER = 0xffe0;
const APP1_MARKER = 0xffe1;
const APP2_MARKER = 0xffe2;
const APP13_MARKER = 0xffed;
const APP15_MARKER = 0xffef;
const COMMENT_MARKER = 0xfffe;
const APP1_EXIF_IDENTIFIER = 'Exif';
const APP1_XMP_IDENTIFIER = 'http://ns.adobe.com/xap/1.0/\x00';
const APP1_XMP_EXTENDED_IDENTIFIER = 'http://ns.adobe.com/xmp/extension/\x00';
const APP13_IPTC_IDENTIFIER = 'Photoshop 3.0';
export default {

@@ -65,15 +17,15 @@ parseAppMarkers

function parseAppMarkers(dataView) {
if (isTiffFile(dataView)) {
return findTiffOffsets();
if (Constants.USE_TIFF && Tiff.isTiffFile(dataView)) {
return Tiff.findTiffOffsets();
}
if (isJpegFile(dataView)) {
return findJpegOffsets(dataView);
if (Constants.USE_JPEG && Jpeg.isJpegFile(dataView)) {
return Jpeg.findJpegOffsets(dataView);
}
if (isPngFile(dataView)) {
return findPngOffsets(dataView);
if (Constants.USE_PNG && Png.isPngFile(dataView)) {
return Png.findPngOffsets(dataView);
}
if (Heic.isHeicFile(dataView)) {
if (Constants.USE_HEIC && Heic.isHeicFile(dataView)) {
return Heic.findHeicOffsets(dataView);

@@ -84,200 +36,1 @@ }

}
function isTiffFile(dataView) {
return (dataView.byteLength >= MIN_TIFF_DATA_BUFFER_LENGTH) && hasTiffMarker(dataView);
}
function hasTiffMarker(dataView) {
const littleEndian = dataView.getUint16(0) === ByteOrder.LITTLE_ENDIAN;
return dataView.getUint16(TIFF_ID_OFFSET, littleEndian) === TIFF_ID;
}
function findTiffOffsets() {
return {
hasAppMarkers: true,
tiffHeaderOffset: TIFF_FILE_HEADER_OFFSET
};
}
function isJpegFile(dataView) {
return (dataView.byteLength >= MIN_JPEG_DATA_BUFFER_LENGTH) && (dataView.getUint16(0, false) === JPEG_ID);
}
function findJpegOffsets(dataView) {
let appMarkerPosition = JPEG_ID_SIZE;
let fieldLength;
let sof0DataOffset;
let sof2DataOffset;
let tiffHeaderOffset;
let iptcDataOffset;
let xmpChunks;
let iccChunks;
while (appMarkerPosition + APP_ID_OFFSET + 5 <= dataView.byteLength) {
if (isSOF0Marker(dataView, appMarkerPosition)) {
sof0DataOffset = appMarkerPosition + APP_MARKER_SIZE;
} else if (isSOF2Marker(dataView, appMarkerPosition)) {
sof2DataOffset = appMarkerPosition + APP_MARKER_SIZE;
} else if (isApp1ExifMarker(dataView, appMarkerPosition)) {
fieldLength = dataView.getUint16(appMarkerPosition + APP_MARKER_SIZE, false);
tiffHeaderOffset = appMarkerPosition + TIFF_HEADER_OFFSET;
} else if (isApp1XmpMarker(dataView, appMarkerPosition)) {
if (!xmpChunks) {
xmpChunks = [];
}
fieldLength = dataView.getUint16(appMarkerPosition + APP_MARKER_SIZE, false);
xmpChunks.push(getXmpChunkDetails(appMarkerPosition, fieldLength));
} else if (isApp1ExtendedXmpMarker(dataView, appMarkerPosition)) {
if (!xmpChunks) {
xmpChunks = [];
}
fieldLength = dataView.getUint16(appMarkerPosition + APP_MARKER_SIZE, false);
xmpChunks.push(getExtendedXmpChunkDetails(appMarkerPosition, fieldLength));
} else if (isApp13PhotoshopMarker(dataView, appMarkerPosition)) {
fieldLength = dataView.getUint16(appMarkerPosition + APP_MARKER_SIZE, false);
iptcDataOffset = appMarkerPosition + IPTC_DATA_OFFSET;
} else if (isApp2ICCMarker(dataView, appMarkerPosition)) {
fieldLength = dataView.getUint16(appMarkerPosition + APP_MARKER_SIZE, false);
const iccDataOffset = appMarkerPosition + APP2_ICC_DATA_OFFSET;
const iccDataLength = fieldLength - (APP2_ICC_DATA_OFFSET - APP_MARKER_SIZE);
const iccChunkNumber = dataView.getUint8(appMarkerPosition + ICC_CHUNK_NUMBER_OFFSET, false);
const iccChunksTotal = dataView.getUint8(appMarkerPosition + ICC_TOTAL_CHUNKS_OFFSET, false);
if (!iccChunks) {
iccChunks = [];
}
iccChunks.push({offset: iccDataOffset, length: iccDataLength, chunkNumber: iccChunkNumber, chunksTotal: iccChunksTotal});
} else if (isAppMarker(dataView, appMarkerPosition)) {
fieldLength = dataView.getUint16(appMarkerPosition + APP_MARKER_SIZE, false);
} else {
break;
}
appMarkerPosition += APP_MARKER_SIZE + fieldLength;
}
return {
hasAppMarkers: appMarkerPosition > JPEG_ID_SIZE,
fileDataOffset: sof0DataOffset || sof2DataOffset,
tiffHeaderOffset,
iptcDataOffset,
xmpChunks,
iccChunks
};
}
function isSOF0Marker(dataView, appMarkerPosition) {
return (dataView.getUint16(appMarkerPosition, false) === SOF0_MARKER);
}
function isSOF2Marker(dataView, appMarkerPosition) {
return (dataView.getUint16(appMarkerPosition, false) === SOF2_MARKER);
}
function isApp2ICCMarker(dataView, appMarkerPosition) {
const markerIdLength = APP2_ICC_IDENTIFIER.length;
return (dataView.getUint16(appMarkerPosition, false) === APP2_MARKER)
&& (getStringFromDataView(dataView, appMarkerPosition + APP_ID_OFFSET, markerIdLength) === APP2_ICC_IDENTIFIER);
}
function isApp1ExifMarker(dataView, appMarkerPosition) {
const markerIdLength = APP1_EXIF_IDENTIFIER.length;
return (dataView.getUint16(appMarkerPosition, false) === APP1_MARKER)
&& (getStringFromDataView(dataView, appMarkerPosition + APP_ID_OFFSET, markerIdLength) === APP1_EXIF_IDENTIFIER)
&& (dataView.getUint8(appMarkerPosition + APP_ID_OFFSET + markerIdLength, false) === 0x00);
}
function isApp1XmpMarker(dataView, appMarkerPosition) {
return (dataView.getUint16(appMarkerPosition, false) === APP1_MARKER)
&& isXmpIdentifier(dataView, appMarkerPosition);
}
function isXmpIdentifier(dataView, appMarkerPosition) {
const markerIdLength = APP1_XMP_IDENTIFIER.length;
return getStringFromDataView(dataView, appMarkerPosition + APP_ID_OFFSET, markerIdLength) === APP1_XMP_IDENTIFIER;
}
function isApp1ExtendedXmpMarker(dataView, appMarkerPosition) {
return (dataView.getUint16(appMarkerPosition, false) === APP1_MARKER)
&& isExtendedXmpIdentifier(dataView, appMarkerPosition);
}
function isExtendedXmpIdentifier(dataView, appMarkerPosition) {
const markerIdLength = APP1_XMP_EXTENDED_IDENTIFIER.length;
return getStringFromDataView(dataView, appMarkerPosition + APP_ID_OFFSET, markerIdLength) === APP1_XMP_EXTENDED_IDENTIFIER;
}
function getXmpChunkDetails(appMarkerPosition, fieldLength) {
return {
dataOffset: appMarkerPosition + XMP_DATA_OFFSET,
length: fieldLength - (XMP_DATA_OFFSET - APP_MARKER_SIZE)
};
}
function getExtendedXmpChunkDetails(appMarkerPosition, fieldLength) {
return {
dataOffset: appMarkerPosition + XMP_EXTENDED_DATA_OFFSET,
length: fieldLength - (XMP_EXTENDED_DATA_OFFSET - APP_MARKER_SIZE)
};
}
function isApp13PhotoshopMarker(dataView, appMarkerPosition) {
const markerIdLength = APP13_IPTC_IDENTIFIER.length;
return (dataView.getUint16(appMarkerPosition, false) === APP13_MARKER)
&& (getStringFromDataView(dataView, appMarkerPosition + APP_ID_OFFSET, markerIdLength) === APP13_IPTC_IDENTIFIER)
&& (dataView.getUint8(appMarkerPosition + APP_ID_OFFSET + markerIdLength, false) === 0x00);
}
function isAppMarker(dataView, appMarkerPosition) {
const appMarker = dataView.getUint16(appMarkerPosition, false);
return ((appMarker >= APP0_MARKER) && (appMarker <= APP15_MARKER))
|| (appMarker === COMMENT_MARKER)
|| (appMarker === SOF0_MARKER)
|| (appMarker === SOF2_MARKER)
|| (appMarker === DHT_MARKER)
|| (appMarker === DQT_MARKER)
|| (appMarker === DRI_MARKER)
|| (appMarker === SOS_MARKER);
}
function isPngFile(dataView) {
return getStringFromDataView(dataView, 0, PNG_ID.length) === PNG_ID;
}
function findPngOffsets(dataView) {
const offsets = {
hasAppMarkers: false
};
let offset = PNG_ID.length;
while (offset + PNG_CHUNK_LENGTH_SIZE + PNG_CHUNK_TYPE_SIZE <= dataView.byteLength) {
if (isPngImageHeaderChunk(dataView, offset)) {
offsets.hasAppMarkers = true;
offsets.pngHeaderOffset = offset + PNG_CHUNK_DATA_OFFSET;
} else if (isPngXmpChunk(dataView, offset)) {
offsets.hasAppMarkers = true;
offsets.xmpChunks = [{
dataOffset: offset + PNG_CHUNK_DATA_OFFSET + PNG_XMP_PREFIX.length,
length: dataView.getUint32(offset + PNG_CHUNK_LENGTH_OFFSET) - PNG_XMP_PREFIX.length
}];
}
offset += dataView.getUint32(offset + PNG_CHUNK_LENGTH_OFFSET)
+ PNG_CHUNK_LENGTH_SIZE
+ PNG_CHUNK_TYPE_SIZE
+ PNG_CRC_SIZE;
}
return offsets;
}
function isPngImageHeaderChunk(dataView, offset) {
return getStringFromDataView(dataView, offset + PNG_CHUNK_TYPE_OFFSET, PNG_CHUNK_TYPE_SIZE) === PNG_CHUNK_TYPE_IMAGE_HEADER;
}
function isPngXmpChunk(dataView, offset) {
return (getStringFromDataView(dataView, offset + PNG_CHUNK_TYPE_OFFSET, PNG_CHUNK_TYPE_SIZE) === PNG_CHUNK_TYPE_INTERNATIONAL_TEXT)
&& (getStringFromDataView(dataView, offset + PNG_CHUNK_DATA_OFFSET, PNG_XMP_PREFIX.length) === PNG_XMP_PREFIX);
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc