@cogeotiff/core 6.0.2 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/cog.tiff.js CHANGED
@@ -26,23 +26,23 @@ export class CogTiff {
26
26
  *
27
27
  * @param loadGeoKeys Whether to also initialize the GeoKeyDirectory
28
28
  */
29
- init(loadGeoKeys = false, logger) {
29
+ init(loadGeoKeys = false) {
30
30
  if (this._initPromise)
31
31
  return this._initPromise;
32
- this._initPromise = this.doInit(loadGeoKeys, logger);
32
+ this._initPromise = this.doInit(loadGeoKeys);
33
33
  return this._initPromise;
34
34
  }
35
- async doInit(loadGeoKeys = false, logger) {
35
+ async doInit(loadGeoKeys = false) {
36
36
  if (this.isInitialized)
37
37
  return this;
38
38
  // Load the first few KB in, more loads will run as more data is required
39
- await this.source.loadBytes(0, this.source.chunkSize, logger);
40
- await this.fetchIfd(logger);
41
- await Promise.all(this.images.map((c) => c.init(loadGeoKeys, logger)));
39
+ await this.source.loadBytes(0, this.source.chunkSize);
40
+ await this.fetchIfd();
41
+ await Promise.all(this.images.map((c) => c.init(loadGeoKeys)));
42
42
  this.isInitialized = true;
43
43
  return this;
44
44
  }
45
- async fetchIfd(logger) {
45
+ async fetchIfd() {
46
46
  const view = this.cursor.seekTo(0);
47
47
  const endian = view.uint16();
48
48
  this.source.isLittleEndian = endian === TiffEndian.Little;
@@ -69,10 +69,13 @@ export class CogTiff {
69
69
  const ghostSize = nextOffsetIfd - this.cursor.currentOffset;
70
70
  // GDAL now stores metadata between the IFD inside a ghost storage area
71
71
  if (ghostSize > 0 && ghostSize < 16 * 1024) {
72
- logger === null || logger === void 0 ? void 0 : logger.debug({ offset: toHexString(this.cursor.currentOffset), length: toHexString(ghostSize) }, 'GhostOptions');
72
+ // logger?.debug(
73
+ // { offset: toHexString(this.cursor.currentOffset), length: toHexString(ghostSize) },
74
+ // 'GhostOptions',
75
+ // );
73
76
  // this.options.process(this.source, view.currentOffset, ghostSize);
74
77
  }
75
- return this.processIfd(nextOffsetIfd, logger);
78
+ return this.processIfd(nextOffsetIfd);
76
79
  }
77
80
  getImage(z) {
78
81
  return this.images[z];
@@ -116,58 +119,27 @@ export class CogTiff {
116
119
  throw new Error('Tif is not tiled');
117
120
  return image.getTile(x, y);
118
121
  }
119
- async processIfd(offset, logger) {
120
- logger === null || logger === void 0 ? void 0 : logger.trace({ offset: toHexString(offset) }, 'NextImageOffset');
121
- if (!this.source.hasBytes(offset, 4096)) {
122
- await this.source.loadBytes(offset, 4096, logger);
123
- }
124
- const { image, nextOffset } = await this.readIfd(offset, logger);
122
+ async processIfd(offset) {
123
+ if (!this.source.hasBytes(offset, 4096))
124
+ await this.source.loadBytes(offset, 4096);
125
+ const { image, nextOffset } = await this.readIfd(offset);
125
126
  this.images.push(image);
126
- const size = image.size;
127
- if (image.isTiled()) {
128
- const tile = image.tileSize;
129
- logger === null || logger === void 0 ? void 0 : logger.debug({
130
- ...size,
131
- tileWidth: tile.width,
132
- tileHeight: tile.height,
133
- tileCount: Math.ceil(size.width / tile.width),
134
- }, 'GotImage');
135
- }
136
127
  if (nextOffset)
137
- await this.processIfd(nextOffset, logger);
128
+ await this.processIfd(nextOffset);
138
129
  }
139
- async readIfd(offset, log) {
130
+ async readIfd(offset) {
140
131
  if (!this.source.hasBytes(offset, 1024))
141
- await this.source.loadBytes(offset, this.source.chunkSize, log);
132
+ await this.source.loadBytes(offset, this.source.chunkSize);
142
133
  const view = this.cursor.seekTo(offset);
143
134
  const tagCount = view.offset();
144
135
  const byteStart = offset + this.ifdConfig.offset;
145
- const logger = log === null || log === void 0 ? void 0 : log.child({ imageId: this.images.length });
146
136
  const tags = new Map();
147
137
  let pos = byteStart;
148
138
  for (let i = 0; i < tagCount; i++) {
149
139
  const tag = CogTiffTag.create(this, pos);
150
140
  pos += tag.size;
151
- if (tag.name == null) {
152
- logger === null || logger === void 0 ? void 0 : logger.error({ code: toHexString(tag.id) }, `IFDUnknown`);
153
- continue;
154
- }
155
- if (!tag.isReady) {
156
- logger === null || logger === void 0 ? void 0 : logger.trace({
157
- offset: toHexString(pos - offset),
158
- code: toHexString(tag.id),
159
- tagName: tag.name,
160
- ptr: toHexString(tag.valuePointer),
161
- }, 'PartialReadIFD');
162
- }
163
- else {
164
- logger === null || logger === void 0 ? void 0 : logger.trace({
165
- offset: toHexString(pos - offset),
166
- code: toHexString(tag.id),
167
- tagName: tag.name,
168
- value: Array.isArray(tag.value) ? `[${tag.value.length}]` : tag.value,
169
- }, 'ReadIFD');
170
- }
141
+ if (tag.name == null)
142
+ throw new Error('Unknown IFD Tag: ' + toHexString(tag.id));
171
143
  tags.set(tag.id, tag);
172
144
  }
173
145
  const image = new CogTiffImage(this, this.images.length, tags);
@@ -180,4 +152,4 @@ export class CogTiff {
180
152
  await ((_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.close) === null || _b === void 0 ? void 0 : _b.call(_a));
181
153
  }
182
154
  }
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29nLnRpZmYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29nLnRpZmYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBaUIsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxNQUFNLE9BQU8sT0FBTztJQVNoQixZQUFZLE1BQW1CO1FBUC9CLFlBQU8sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzNCLFdBQU0sR0FBbUIsRUFBRSxDQUFDO1FBQzVCLFlBQU8sR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFHbkMsY0FBUyxHQUFrQixhQUFhLENBQUM7UUFZekMsNkJBQTZCO1FBQzdCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBVmxCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELHNDQUFzQztJQUN0QyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQW1CO1FBQzdCLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQU1EOzs7O09BSUc7SUFD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QUNaLENBQUM7YUFDTDtZQUVELElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUVELE1BQU0sS0FBSyxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMvRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxnREFBZ0Q7SUFDaEQsS0FBSyxDQUFDLEtBQUs7O1FBQ1AsTUFBTSxDQUFBLE1BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxLQUFLLGtEQUFJLENBQUEsQ0FBQztJQUNqQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaHVua1NvdXJjZSwgTG9nVHlwZSB9IGZyb20gJ0BjaHVua2QvY29yZSc7XG5pbXBvcnQgeyBDb2dUaWZmSW1hZ2UgfSBmcm9tICcuL2NvZy50aWZmLmltYWdlLmpzJztcbmltcG9ydCB7IFRpZmZFbmRpYW4gfSBmcm9tICcuL2NvbnN0L3RpZmYuZW5kaWFuLmpzJztcbmltcG9ydCB7IFRpZmZUYWcgfSBmcm9tICcuL2NvbnN0L3RpZmYudGFnLmlkLmpzJztcbmltcG9ydCB7IFRpZmZWZXJzaW9uIH0gZnJvbSAnLi9jb25zdC90aWZmLnZlcnNpb24uanMnO1xuaW1wb3J0IHsgQ29nVGlmZlRhZ0Jhc2UgfSBmcm9tICcuL3JlYWQvdGFnL3RpZmYudGFnLmJhc2UuanMnO1xuaW1wb3J0IHsgQ29nVGlmR2hvc3RPcHRpb25zIH0gZnJvbSAnLi9yZWFkL3RpZmYuZ2RhbC5qcyc7XG5pbXBvcnQgeyBUYWdUaWZmQmlnQ29uZmlnLCBUYWdUaWZmQ29uZmlnLCBUaWZmSWZkQ29uZmlnIH0gZnJvbSAnLi9yZWFkL3RpZmYuaWZkLmNvbmZpZy5qcyc7XG5pbXBvcnQgeyBDb2dUaWZmVGFnIH0gZnJvbSAnLi9yZWFkL3RpZmYudGFnLmpzJztcbmltcG9ydCB7IENvZ1NvdXJjZUN1cnNvciB9IGZyb20gJy4vc291cmNlL2NvZy5zb3VyY2Uudmlldy5qcyc7XG5pbXBvcnQgeyB0b0hleFN0cmluZyB9IGZyb20gJy4vdXRpbC91dGlsLmhleC5qcyc7XG5cbmV4cG9ydCBjbGFzcyBDb2dUaWZmIHtcbiAgICBzb3VyY2U6IENodW5rU291cmNlO1xuICAgIHZlcnNpb24gPSBUaWZmVmVyc2lvbi5UaWZmO1xuICAgIGltYWdlczogQ29nVGlmZkltYWdlW10gPSBbXTtcbiAgICBvcHRpb25zID0gbmV3IENvZ1RpZkdob3N0T3B0aW9ucygpO1xuXG4gICAgcHJpdmF0ZSBjdXJzb3I6IENvZ1NvdXJjZUN1cnNvcjtcbiAgICBpZmRDb25maWc6IFRpZmZJZmRDb25maWcgPSBUYWdUaWZmQ29uZmlnO1xuXG4gICAgY29uc3RydWN0b3Ioc291cmNlOiBDaHVua1NvdXJjZSkge1xuICAgICAgICB0aGlzLnNvdXJjZSA9IHNvdXJjZTtcbiAgICAgICAgdGhpcy5jdXJzb3IgPSBuZXcgQ29nU291cmNlQ3Vyc29yKHRoaXMpO1xuICAgIH1cblxuICAgIC8qKiBDcmVhdGUgYW5kIGluaXRpYWxpemUgYSBDb2dUaWZmICovXG4gICAgc3RhdGljIGNyZWF0ZShzb3VyY2U6IENodW5rU291cmNlKTogUHJvbWlzZTxDb2dUaWZmPiB7XG4gICAgICAgIHJldHVybiBuZXcgQ29nVGlmZihzb3VyY2UpLmluaXQoKTtcbiAgICB9XG5cbiAgICAvKiogSGFzIGluaXQoKSBiZWVuIGNhbGxlZCAqL1xuICAgIGlzSW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICAgIF9pbml0UHJvbWlzZT86IFByb21pc2U8Q29nVGlmZj47XG4gICAgLyoqXG4gICAgICogSW5pdGlhbGl6ZSB0aGUgQ09HIGxvYWRpbmcgaW4gdGhlIGhlYWRlciBhbmQgYWxsIGltYWdlIGhlYWRlcnNcbiAgICAgKlxuICAgICAqIEBwYXJhbSBsb2FkR2VvS2V5cyBXaGV0aGVyIHRvIGFsc28gaW5pdGlhbGl6ZSB0aGUgR2VvS2V5RGlyZWN0b3J5XG4gICAgICovXG4gICAgaW5pdChsb2FkR2VvS2V5cyA9IGZhbHNlLCBsb2dnZXI/OiBMb2dUeXBlKTogUHJvbWlzZTxDb2dUaWZmPiB7XG4gICAgICAgIGlmICh0aGlzLl9pbml0UHJvbWlzZSkgcmV0dXJuIHRoaXMuX2luaXRQcm9taXNlO1xuICAgICAgICB0aGlzLl9pbml0UHJvbWlzZSA9IHRoaXMuZG9Jbml0KGxvYWRHZW9LZXlzLCBsb2dnZXIpO1xuICAgICAgICByZXR1cm4gdGhpcy5faW5pdFByb21pc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBkb0luaXQobG9hZEdlb0tleXMgPSBmYWxzZSwgbG9nZ2VyPzogTG9nVHlwZSk6IFByb21pc2U8Q29nVGlmZj4ge1xuICAgICAgICBpZiAodGhpcy5pc0luaXRpYWxpemVkKSByZXR1cm4gdGhpcztcbiAgICAgICAgLy8gTG9hZCB0aGUgZmlyc3QgZmV3IEtCIGluLCBtb3JlIGxvYWRzIHdpbGwgcnVuIGFzIG1vcmUgZGF0YSBpcyByZXF1aXJlZFxuICAgICAgICBhd2FpdCB0aGlzLnNvdXJjZS5sb2FkQnl0ZXMoMCwgdGhpcy5zb3VyY2UuY2h1bmtTaXplLCBsb2dnZXIpO1xuICAgICAgICBhd2FpdCB0aGlzLmZldGNoSWZkKGxvZ2dlcik7XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKHRoaXMuaW1hZ2VzLm1hcCgoYykgPT4gYy5pbml0KGxvYWRHZW9LZXlzLCBsb2dnZXIpKSk7XG5cbiAgICAgICAgdGhpcy5pc0luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBmZXRjaElmZChsb2dnZXI/OiBMb2dUeXBlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHZpZXcgPSB0aGlzLmN1cnNvci5zZWVrVG8oMCk7XG4gICAgICAgIGNvbnN0IGVuZGlhbiA9IHZpZXcudWludDE2KCk7XG4gICAgICAgIHRoaXMuc291cmNlLmlzTGl0dGxlRW5kaWFuID0gZW5kaWFuID09PSBUaWZmRW5kaWFuLkxpdHRsZTtcbiAgICAgICAgaWYgKCF0aGlzLnNvdXJjZS5pc0xpdHRsZUVuZGlhbikgdGhyb3cgbmV3IEVycm9yKCdPbmx5IGxpdHRsZSBlbmRpYW4gaXMgc3VwcG9ydGVkJyk7XG4gICAgICAgIHRoaXMudmVyc2lvbiA9IHZpZXcudWludDE2KCk7XG5cbiAgICAgICAgbGV0IG5leHRPZmZzZXRJZmQ6IG51bWJlcjtcbiAgICAgICAgaWYgKHRoaXMudmVyc2lvbiA9PT0gVGlmZlZlcnNpb24uQmlnVGlmZikge1xuICAgICAgICAgICAgdGhpcy5pZmRDb25maWcgPSBUYWdUaWZmQmlnQ29uZmlnO1xuICAgICAgICAgICAgY29uc3QgcG9pbnRlclNpemUgPSB2aWV3LnVpbnQxNigpO1xuICAgICAgICAgICAgaWYgKHBvaW50ZXJTaXplICE9PSA4KSB0aHJvdyBuZXcgRXJyb3IoJ09ubHkgOGJ5dGUgcG9pbnRlcnMgYXJlIHN1cHBvcnRlZCcpO1xuICAgICAgICAgICAgY29uc3QgemVyb3MgPSB2aWV3LnVpbnQxNigpO1xuICAgICAgICAgICAgaWYgKHplcm9zICE9PSAwKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYmlnIHRpZmYgaGVhZGVyJyk7XG4gICAgICAgICAgICBuZXh0T2Zmc2V0SWZkID0gdmlldy5wb2ludGVyKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy52ZXJzaW9uID09PSBUaWZmVmVyc2lvbi5UaWZmKSB7XG4gICAgICAgICAgICBuZXh0T2Zmc2V0SWZkID0gdmlldy5wb2ludGVyKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE9ubHkgdGlmZiBzdXBwb3J0ZWQgdmVyc2lvbjoke3RoaXMudmVyc2lvbn1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGdob3N0U2l6ZSA9IG5leHRPZmZzZXRJZmQgLSB0aGlzLmN1cnNvci5jdXJyZW50T2Zmc2V0O1xuICAgICAgICAvLyBHREFMIG5vdyBzdG9yZXMgbWV0YWRhdGEgYmV0d2VlbiB0aGUgSUZEIGluc2lkZSBhIGdob3N0IHN0b3JhZ2UgYXJlYVxuICAgICAgICBpZiAoZ2hvc3RTaXplID4gMCAmJiBnaG9zdFNpemUgPCAxNiAqIDEwMjQpIHtcbiAgICAgICAgICAgIGxvZ2dlcj8uZGVidWcoXG4gICAgICAgICAgICAgICAgeyBvZmZzZXQ6IHRvSGV4U3RyaW5nKHRoaXMuY3Vyc29yLmN1cnJlbnRPZmZzZXQpLCBsZW5ndGg6IHRvSGV4U3RyaW5nKGdob3N0U2l6ZSkgfSxcbiAgICAgICAgICAgICAgICAnR2hvc3RPcHRpb25zJyxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICAvLyB0aGlzLm9wdGlvbnMucHJvY2Vzcyh0aGlzLnNvdXJjZSwgdmlldy5jdXJyZW50T2Zmc2V0LCBnaG9zdFNpemUpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0lmZChuZXh0T2Zmc2V0SWZkLCBsb2dnZXIpO1xuICAgIH1cblxuICAgIGdldEltYWdlKHo6IG51bWJlcik6IENvZ1RpZmZJbWFnZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmltYWdlc1t6XTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kIGEgaW1hZ2Ugd2hpY2ggaGFzIGEgcmVzb2x1dGlvbiBzaW1pbGFyIHRvIHRoZSBwcm92aWRlZCByZXNvbHV0aW9uXG4gICAgICpcbiAgICAgKiBAcGFyYW0gcmVzb2x1dGlvbiByZXNvbHV0aW9uIHRvIGZpbmRcbiAgICAgKi9cbiAgICBnZXRJbWFnZUJ5UmVzb2x1dGlvbihyZXNvbHV0aW9uOiBudW1iZXIpOiBDb2dUaWZmSW1hZ2Uge1xuICAgICAgICBjb25zdCBmaXJzdEltYWdlID0gdGhpcy5pbWFnZXNbMF07XG4gICAgICAgIGNvbnN0IGZpcnN0SW1hZ2VTaXplID0gZmlyc3RJbWFnZS5zaXplO1xuICAgICAgICBjb25zdCBbcmVmWF0gPSBmaXJzdEltYWdlLnJlc29sdXRpb247XG5cbiAgICAgICAgY29uc3QgcmVzb2x1dGlvbkJhc2VYID0gcmVmWCAqIGZpcnN0SW1hZ2VTaXplLndpZHRoO1xuICAgICAgICAvLyBjb25zdCByZXNvbHV0aW9uQmFzZVkgPSByZWZZICogZmlyc3RJbWFnZVNpemUuaGVpZ2h0O1xuICAgICAgICBmb3IgKGxldCBpID0gdGhpcy5pbWFnZXMubGVuZ3RoIC0gMTsgaSA+IDA7IGktLSkge1xuICAgICAgICAgICAgY29uc3QgaW1nID0gdGhpcy5pbWFnZXNbaV07XG4gICAgICAgICAgICBjb25zdCBpbWdTaXplID0gaW1nLnNpemU7XG5cbiAgICAgICAgICAgIGNvbnN0IGltZ1Jlc29sdXRpb25YID0gcmVzb2x1dGlvbkJhc2VYIC8gaW1nU2l6ZS53aWR0aDtcbiAgICAgICAgICAgIC8vIFRPRE8gZG8gd2UgY2FyZSBhYm91dCB5IHJlc29sdXRpb25cbiAgICAgICAgICAgIC8vIGNvbnN0IGltZ1Jlc29sdXRpb25ZID0gcmVzb2x1dGlvbkJhc2VZIC8gaW1nU2l6ZS5oZWlnaHQ7XG5cbiAgICAgICAgICAgIGlmIChpbWdSZXNvbHV0aW9uWCAtIHJlc29sdXRpb24gPD0gMC4wMSkgcmV0dXJuIGltZztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmlyc3RJbWFnZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHJhdyBieXRlcyBmb3IgYSB0aWxlIGF0IGEgZ2l2ZW4geCx5LCBpbmRleC5cbiAgICAgKlxuICAgICAqIFRoaXMgbWF5IHJldHVybiBudWxsIGlmIHRoZSB0aWxlIGRvZXMgbm90IGV4aXN0IGVnIFNwYXJzZSBjb2dzLFxuICAgICAqXG4gICAgICogQHBhcmFtIHggdGlsZSB4IGluZGV4XG4gICAgICogQHBhcmFtIHkgdGlsZSB5IGluZGV4XG4gICAgICogQHBhcmFtIGluZGV4IGltYWdlIGluZGV4XG4gICAgICovXG4gICAgYXN5bmMgZ2V0VGlsZSh4OiBudW1iZXIsIHk6IG51bWJlciwgaW5kZXg6IG51bWJlcik6IFByb21pc2U8eyBtaW1lVHlwZTogc3RyaW5nOyBieXRlczogVWludDhBcnJheSB9IHwgbnVsbD4ge1xuICAgICAgICBjb25zdCBpbWFnZSA9IHRoaXMuZ2V0SW1hZ2UoaW5kZXgpO1xuICAgICAgICBpZiAoaW1hZ2UgPT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKGBNaXNzaW5nIHo6ICR7aW5kZXh9YCk7XG4gICAgICAgIGlmICghaW1hZ2UuaXNUaWxlZCgpKSB0aHJvdyBuZXcgRXJyb3IoJ1RpZiBpcyBub3QgdGlsZWQnKTtcblxuICAgICAgICByZXR1cm4gaW1hZ2UuZ2V0VGlsZSh4LCB5KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIHByb2Nlc3NJZmQob2Zmc2V0OiBudW1iZXIsIGxvZ2dlcj86IExvZ1R5cGUpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgbG9nZ2VyPy50cmFjZSh7IG9mZnNldDogdG9IZXhTdHJpbmcob2Zmc2V0KSB9LCAnTmV4dEltYWdlT2Zmc2V0Jyk7XG5cbiAgICAgICAgaWYgKCF0aGlzLnNvdXJjZS5oYXNCeXRlcyhvZmZzZXQsIDQwOTYpKSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLnNvdXJjZS5sb2FkQnl0ZXMob2Zmc2V0LCA0MDk2LCBsb2dnZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBpbWFnZSwgbmV4dE9mZnNldCB9ID0gYXdhaXQgdGhpcy5yZWFkSWZkKG9mZnNldCwgbG9nZ2VyKTtcbiAgICAgICAgdGhpcy5pbWFnZXMucHVzaChpbWFnZSk7XG4gICAgICAgIGNvbnN0IHNpemUgPSBpbWFnZS5zaXplO1xuICAgICAgICBpZiAoaW1hZ2UuaXNUaWxlZCgpKSB7XG4gICAgICAgICAgICBjb25zdCB0aWxlID0gaW1hZ2UudGlsZVNpemU7XG4gICAgICAgICAgICBsb2dnZXI/LmRlYnVnKFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgLi4uc2l6ZSxcbiAgICAgICAgICAgICAgICAgICAgdGlsZVdpZHRoOiB0aWxlLndpZHRoLFxuICAgICAgICAgICAgICAgICAgICB0aWxlSGVpZ2h0OiB0aWxlLmhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgdGlsZUNvdW50OiBNYXRoLmNlaWwoc2l6ZS53aWR0aCAvIHRpbGUud2lkdGgpLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgJ0dvdEltYWdlJyxcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobmV4dE9mZnNldCkgYXdhaXQgdGhpcy5wcm9jZXNzSWZkKG5leHRPZmZzZXQsIGxvZ2dlcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyByZWFkSWZkKG9mZnNldDogbnVtYmVyLCBsb2c/OiBMb2dUeXBlKTogUHJvbWlzZTx7IG5leHRPZmZzZXQ6IG51bWJlcjsgaW1hZ2U6IENvZ1RpZmZJbWFnZSB9PiB7XG4gICAgICAgIGlmICghdGhpcy5zb3VyY2UuaGFzQnl0ZXMob2Zmc2V0LCAxMDI0KSkgYXdhaXQgdGhpcy5zb3VyY2UubG9hZEJ5dGVzKG9mZnNldCwgdGhpcy5zb3VyY2UuY2h1bmtTaXplLCBsb2cpO1xuICAgICAgICBjb25zdCB2aWV3ID0gdGhpcy5jdXJzb3Iuc2Vla1RvKG9mZnNldCk7XG4gICAgICAgIGNvbnN0IHRhZ0NvdW50ID0gdmlldy5vZmZzZXQoKTtcbiAgICAgICAgY29uc3QgYnl0ZVN0YXJ0ID0gb2Zmc2V0ICsgdGhpcy5pZmRDb25maWcub2Zmc2V0O1xuICAgICAgICBjb25zdCBsb2dnZXIgPSBsb2c/LmNoaWxkKHsgaW1hZ2VJZDogdGhpcy5pbWFnZXMubGVuZ3RoIH0pO1xuICAgICAgICBjb25zdCB0YWdzOiBNYXA8VGlmZlRhZywgQ29nVGlmZlRhZ0Jhc2U+ID0gbmV3IE1hcCgpO1xuXG4gICAgICAgIGxldCBwb3MgPSBieXRlU3RhcnQ7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGFnQ291bnQ7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgdGFnID0gQ29nVGlmZlRhZy5jcmVhdGUodGhpcywgcG9zKTtcbiAgICAgICAgICAgIHBvcyArPSB0YWcuc2l6ZTtcblxuICAgICAgICAgICAgaWYgKHRhZy5uYW1lID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBsb2dnZXI/LmVycm9yKHsgY29kZTogdG9IZXhTdHJpbmcodGFnLmlkKSB9LCBgSUZEVW5rbm93bmApO1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIXRhZy5pc1JlYWR5KSB7XG4gICAgICAgICAgICAgICAgbG9nZ2VyPy50cmFjZShcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0OiB0b0hleFN0cmluZyhwb3MgLSBvZmZzZXQpLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29kZTogdG9IZXhTdHJpbmcodGFnLmlkKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhZ05hbWU6IHRhZy5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgcHRyOiB0b0hleFN0cmluZyh0YWcudmFsdWVQb2ludGVyKSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgJ1BhcnRpYWxSZWFkSUZEJyxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBsb2dnZXI/LnRyYWNlKFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IHRvSGV4U3RyaW5nKHBvcyAtIG9mZnNldCksXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2RlOiB0b0hleFN0cmluZyh0YWcuaWQpLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFnTmFtZTogdGFnLm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogQXJyYXkuaXNBcnJheSh0YWcudmFsdWUpID8gYFske3RhZy52YWx1ZS5sZW5ndGh9XWAgOiB0YWcudmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICdSZWFkSUZEJyxcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0YWdzLnNldCh0YWcuaWQsIHRhZyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpbWFnZSA9IG5ldyBDb2dUaWZmSW1hZ2UodGhpcywgdGhpcy5pbWFnZXMubGVuZ3RoLCB0YWdzKTtcbiAgICAgICAgY29uc3QgbmV4dE9mZnNldCA9IHRoaXMuc291cmNlLmdldFVpbnQocG9zLCB0aGlzLmlmZENvbmZpZy5wb2ludGVyKTtcbiAgICAgICAgcmV0dXJuIHsgbmV4dE9mZnNldCwgaW1hZ2UgfTtcbiAgICB9XG5cbiAgICAvKiogQ2xvc2UgdGhlIGZpbGUgc291cmNlIGlmIGl0IG5lZWRzIGNsb3NpbmcgKi9cbiAgICBhc3luYyBjbG9zZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy5zb3VyY2U/LmNsb3NlPy4oKTtcbiAgICB9XG59XG4iXX0=
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29nLnRpZmYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29nLnRpZmYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBaUIsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRCxNQUFNLE9BQU8sT0FBTztJQVNoQixZQUFZLE1BQW1CO1FBUC9CLFlBQU8sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzNCLFdBQU0sR0FBbUIsRUFBRSxDQUFDO1FBQzVCLFlBQU8sR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFHbkMsY0FBUyxHQUFrQixhQUFhLENBQUM7UUFZekMsNkJBQTZCO1FBQzdCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBVmxCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELHNDQUFzQztJQUN0QyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQW1CO1FBQzdCLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQU1EOzs7O09BSUc7SUFD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QUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDL0IsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDekMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFFaEIsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUk7Z0JBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDakYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ3pCO1FBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQy9ELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3BFLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELGdEQUFnRDtJQUNoRCxLQUFLLENBQUMsS0FBSzs7UUFDUCxNQUFNLENBQUEsTUFBQSxNQUFBLElBQUksQ0FBQyxNQUFNLDBDQUFFLEtBQUssa0RBQUksQ0FBQSxDQUFDO0lBQ2pDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENodW5rU291cmNlIH0gZnJvbSAnQGNodW5rZC9jb3JlJztcbmltcG9ydCB7IENvZ1RpZmZJbWFnZSB9IGZyb20gJy4vY29nLnRpZmYuaW1hZ2UuanMnO1xuaW1wb3J0IHsgVGlmZkVuZGlhbiB9IGZyb20gJy4vY29uc3QvdGlmZi5lbmRpYW4uanMnO1xuaW1wb3J0IHsgVGlmZlRhZyB9IGZyb20gJy4vY29uc3QvdGlmZi50YWcuaWQuanMnO1xuaW1wb3J0IHsgVGlmZlZlcnNpb24gfSBmcm9tICcuL2NvbnN0L3RpZmYudmVyc2lvbi5qcyc7XG5pbXBvcnQgeyBDb2dUaWZmVGFnQmFzZSB9IGZyb20gJy4vcmVhZC90YWcvdGlmZi50YWcuYmFzZS5qcyc7XG5pbXBvcnQgeyBDb2dUaWZHaG9zdE9wdGlvbnMgfSBmcm9tICcuL3JlYWQvdGlmZi5nZGFsLmpzJztcbmltcG9ydCB7IFRhZ1RpZmZCaWdDb25maWcsIFRhZ1RpZmZDb25maWcsIFRpZmZJZmRDb25maWcgfSBmcm9tICcuL3JlYWQvdGlmZi5pZmQuY29uZmlnLmpzJztcbmltcG9ydCB7IENvZ1RpZmZUYWcgfSBmcm9tICcuL3JlYWQvdGlmZi50YWcuanMnO1xuaW1wb3J0IHsgQ29nU291cmNlQ3Vyc29yIH0gZnJvbSAnLi9zb3VyY2UvY29nLnNvdXJjZS52aWV3LmpzJztcbmltcG9ydCB7IHRvSGV4U3RyaW5nIH0gZnJvbSAnLi91dGlsL3V0aWwuaGV4LmpzJztcblxuZXhwb3J0IGNsYXNzIENvZ1RpZmYge1xuICAgIHNvdXJjZTogQ2h1bmtTb3VyY2U7XG4gICAgdmVyc2lvbiA9IFRpZmZWZXJzaW9uLlRpZmY7XG4gICAgaW1hZ2VzOiBDb2dUaWZmSW1hZ2VbXSA9IFtdO1xuICAgIG9wdGlvbnMgPSBuZXcgQ29nVGlmR2hvc3RPcHRpb25zKCk7XG5cbiAgICBwcml2YXRlIGN1cnNvcjogQ29nU291cmNlQ3Vyc29yO1xuICAgIGlmZENvbmZpZzogVGlmZklmZENvbmZpZyA9IFRhZ1RpZmZDb25maWc7XG5cbiAgICBjb25zdHJ1Y3Rvcihzb3VyY2U6IENodW5rU291cmNlKSB7XG4gICAgICAgIHRoaXMuc291cmNlID0gc291cmNlO1xuICAgICAgICB0aGlzLmN1cnNvciA9IG5ldyBDb2dTb3VyY2VDdXJzb3IodGhpcyk7XG4gICAgfVxuXG4gICAgLyoqIENyZWF0ZSBhbmQgaW5pdGlhbGl6ZSBhIENvZ1RpZmYgKi9cbiAgICBzdGF0aWMgY3JlYXRlKHNvdXJjZTogQ2h1bmtTb3VyY2UpOiBQcm9taXNlPENvZ1RpZmY+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBDb2dUaWZmKHNvdXJjZSkuaW5pdCgpO1xuICAgIH1cblxuICAgIC8qKiBIYXMgaW5pdCgpIGJlZW4gY2FsbGVkICovXG4gICAgaXNJbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gICAgX2luaXRQcm9taXNlPzogUHJvbWlzZTxDb2dUaWZmPjtcbiAgICAvKipcbiAgICAgKiBJbml0aWFsaXplIHRoZSBDT0cgbG9hZGluZyBpbiB0aGUgaGVhZGVyIGFuZCBhbGwgaW1hZ2UgaGVhZGVyc1xuICAgICAqXG4gICAgICogQHBhcmFtIGxvYWRHZW9LZXlzIFdoZXRoZXIgdG8gYWxzbyBpbml0aWFsaXplIHRoZSBHZW9LZXlEaXJlY3RvcnlcbiAgICAgKi9cbiAgICBpbml0KGxvYWRHZW9LZXlzID0gZmFsc2UpOiBQcm9taXNlPENvZ1RpZmY+IHtcbiAgICAgICAgaWYgKHRoaXMuX2luaXRQcm9taXNlKSByZXR1cm4gdGhpcy5faW5pdFByb21pc2U7XG4gICAgICAgIHRoaXMuX2luaXRQcm9taXNlID0gdGhpcy5kb0luaXQobG9hZEdlb0tleXMpO1xuICAgICAgICByZXR1cm4gdGhpcy5faW5pdFByb21pc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBkb0luaXQobG9hZEdlb0tleXMgPSBmYWxzZSk6IFByb21pc2U8Q29nVGlmZj4ge1xuICAgICAgICBpZiAodGhpcy5pc0luaXRpYWxpemVkKSByZXR1cm4gdGhpcztcbiAgICAgICAgLy8gTG9hZCB0aGUgZmlyc3QgZmV3IEtCIGluLCBtb3JlIGxvYWRzIHdpbGwgcnVuIGFzIG1vcmUgZGF0YSBpcyByZXF1aXJlZFxuICAgICAgICBhd2FpdCB0aGlzLnNvdXJjZS5sb2FkQnl0ZXMoMCwgdGhpcy5zb3VyY2UuY2h1bmtTaXplKTtcbiAgICAgICAgYXdhaXQgdGhpcy5mZXRjaElmZCgpO1xuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbCh0aGlzLmltYWdlcy5tYXAoKGMpID0+IGMuaW5pdChsb2FkR2VvS2V5cykpKTtcblxuICAgICAgICB0aGlzLmlzSW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIGZldGNoSWZkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB2aWV3ID0gdGhpcy5jdXJzb3Iuc2Vla1RvKDApO1xuICAgICAgICBjb25zdCBlbmRpYW4gPSB2aWV3LnVpbnQxNigpO1xuICAgICAgICB0aGlzLnNvdXJjZS5pc0xpdHRsZUVuZGlhbiA9IGVuZGlhbiA9PT0gVGlmZkVuZGlhbi5MaXR0bGU7XG4gICAgICAgIGlmICghdGhpcy5zb3VyY2UuaXNMaXR0bGVFbmRpYW4pIHRocm93IG5ldyBFcnJvcignT25seSBsaXR0bGUgZW5kaWFuIGlzIHN1cHBvcnRlZCcpO1xuICAgICAgICB0aGlzLnZlcnNpb24gPSB2aWV3LnVpbnQxNigpO1xuXG4gICAgICAgIGxldCBuZXh0T2Zmc2V0SWZkOiBudW1iZXI7XG4gICAgICAgIGlmICh0aGlzLnZlcnNpb24gPT09IFRpZmZWZXJzaW9uLkJpZ1RpZmYpIHtcbiAgICAgICAgICAgIHRoaXMuaWZkQ29uZmlnID0gVGFnVGlmZkJpZ0NvbmZpZztcbiAgICAgICAgICAgIGNvbnN0IHBvaW50ZXJTaXplID0gdmlldy51aW50MTYoKTtcbiAgICAgICAgICAgIGlmIChwb2ludGVyU2l6ZSAhPT0gOCkgdGhyb3cgbmV3IEVycm9yKCdPbmx5IDhieXRlIHBvaW50ZXJzIGFyZSBzdXBwb3J0ZWQnKTtcbiAgICAgICAgICAgIGNvbnN0IHplcm9zID0gdmlldy51aW50MTYoKTtcbiAgICAgICAgICAgIGlmICh6ZXJvcyAhPT0gMCkgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGJpZyB0aWZmIGhlYWRlcicpO1xuICAgICAgICAgICAgbmV4dE9mZnNldElmZCA9IHZpZXcucG9pbnRlcigpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMudmVyc2lvbiA9PT0gVGlmZlZlcnNpb24uVGlmZikge1xuICAgICAgICAgICAgbmV4dE9mZnNldElmZCA9IHZpZXcucG9pbnRlcigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBPbmx5IHRpZmYgc3VwcG9ydGVkIHZlcnNpb246JHt0aGlzLnZlcnNpb259YCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBnaG9zdFNpemUgPSBuZXh0T2Zmc2V0SWZkIC0gdGhpcy5jdXJzb3IuY3VycmVudE9mZnNldDtcbiAgICAgICAgLy8gR0RBTCBub3cgc3RvcmVzIG1ldGFkYXRhIGJldHdlZW4gdGhlIElGRCBpbnNpZGUgYSBnaG9zdCBzdG9yYWdlIGFyZWFcbiAgICAgICAgaWYgKGdob3N0U2l6ZSA+IDAgJiYgZ2hvc3RTaXplIDwgMTYgKiAxMDI0KSB7XG4gICAgICAgICAgICAvLyBsb2dnZXI/LmRlYnVnKFxuICAgICAgICAgICAgLy8gICAgIHsgb2Zmc2V0OiB0b0hleFN0cmluZyh0aGlzLmN1cnNvci5jdXJyZW50T2Zmc2V0KSwgbGVuZ3RoOiB0b0hleFN0cmluZyhnaG9zdFNpemUpIH0sXG4gICAgICAgICAgICAvLyAgICAgJ0dob3N0T3B0aW9ucycsXG4gICAgICAgICAgICAvLyApO1xuICAgICAgICAgICAgLy8gdGhpcy5vcHRpb25zLnByb2Nlc3ModGhpcy5zb3VyY2UsIHZpZXcuY3VycmVudE9mZnNldCwgZ2hvc3RTaXplKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnByb2Nlc3NJZmQobmV4dE9mZnNldElmZCk7XG4gICAgfVxuXG4gICAgZ2V0SW1hZ2UoejogbnVtYmVyKTogQ29nVGlmZkltYWdlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW1hZ2VzW3pdO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZpbmQgYSBpbWFnZSB3aGljaCBoYXMgYSByZXNvbHV0aW9uIHNpbWlsYXIgdG8gdGhlIHByb3ZpZGVkIHJlc29sdXRpb25cbiAgICAgKlxuICAgICAqIEBwYXJhbSByZXNvbHV0aW9uIHJlc29sdXRpb24gdG8gZmluZFxuICAgICAqL1xuICAgIGdldEltYWdlQnlSZXNvbHV0aW9uKHJlc29sdXRpb246IG51bWJlcik6IENvZ1RpZmZJbWFnZSB7XG4gICAgICAgIGNvbnN0IGZpcnN0SW1hZ2UgPSB0aGlzLmltYWdlc1swXTtcbiAgICAgICAgY29uc3QgZmlyc3RJbWFnZVNpemUgPSBmaXJzdEltYWdlLnNpemU7XG4gICAgICAgIGNvbnN0IFtyZWZYXSA9IGZpcnN0SW1hZ2UucmVzb2x1dGlvbjtcblxuICAgICAgICBjb25zdCByZXNvbHV0aW9uQmFzZVggPSByZWZYICogZmlyc3RJbWFnZVNpemUud2lkdGg7XG4gICAgICAgIC8vIGNvbnN0IHJlc29sdXRpb25CYXNlWSA9IHJlZlkgKiBmaXJzdEltYWdlU2l6ZS5oZWlnaHQ7XG4gICAgICAgIGZvciAobGV0IGkgPSB0aGlzLmltYWdlcy5sZW5ndGggLSAxOyBpID4gMDsgaS0tKSB7XG4gICAgICAgICAgICBjb25zdCBpbWcgPSB0aGlzLmltYWdlc1tpXTtcbiAgICAgICAgICAgIGNvbnN0IGltZ1NpemUgPSBpbWcuc2l6ZTtcblxuICAgICAgICAgICAgY29uc3QgaW1nUmVzb2x1dGlvblggPSByZXNvbHV0aW9uQmFzZVggLyBpbWdTaXplLndpZHRoO1xuICAgICAgICAgICAgLy8gVE9ETyBkbyB3ZSBjYXJlIGFib3V0IHkgcmVzb2x1dGlvblxuICAgICAgICAgICAgLy8gY29uc3QgaW1nUmVzb2x1dGlvblkgPSByZXNvbHV0aW9uQmFzZVkgLyBpbWdTaXplLmhlaWdodDtcblxuICAgICAgICAgICAgaWYgKGltZ1Jlc29sdXRpb25YIC0gcmVzb2x1dGlvbiA8PSAwLjAxKSByZXR1cm4gaW1nO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaXJzdEltYWdlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgcmF3IGJ5dGVzIGZvciBhIHRpbGUgYXQgYSBnaXZlbiB4LHksIGluZGV4LlxuICAgICAqXG4gICAgICogVGhpcyBtYXkgcmV0dXJuIG51bGwgaWYgdGhlIHRpbGUgZG9lcyBub3QgZXhpc3QgZWcgU3BhcnNlIGNvZ3MsXG4gICAgICpcbiAgICAgKiBAcGFyYW0geCB0aWxlIHggaW5kZXhcbiAgICAgKiBAcGFyYW0geSB0aWxlIHkgaW5kZXhcbiAgICAgKiBAcGFyYW0gaW5kZXggaW1hZ2UgaW5kZXhcbiAgICAgKi9cbiAgICBhc3luYyBnZXRUaWxlKHg6IG51bWJlciwgeTogbnVtYmVyLCBpbmRleDogbnVtYmVyKTogUHJvbWlzZTx7IG1pbWVUeXBlOiBzdHJpbmc7IGJ5dGVzOiBVaW50OEFycmF5IH0gfCBudWxsPiB7XG4gICAgICAgIGNvbnN0IGltYWdlID0gdGhpcy5nZXRJbWFnZShpbmRleCk7XG4gICAgICAgIGlmIChpbWFnZSA9PSBudWxsKSB0aHJvdyBuZXcgRXJyb3IoYE1pc3NpbmcgejogJHtpbmRleH1gKTtcbiAgICAgICAgaWYgKCFpbWFnZS5pc1RpbGVkKCkpIHRocm93IG5ldyBFcnJvcignVGlmIGlzIG5vdCB0aWxlZCcpO1xuXG4gICAgICAgIHJldHVybiBpbWFnZS5nZXRUaWxlKHgsIHkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgcHJvY2Vzc0lmZChvZmZzZXQ6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBpZiAoIXRoaXMuc291cmNlLmhhc0J5dGVzKG9mZnNldCwgNDA5NikpIGF3YWl0IHRoaXMuc291cmNlLmxvYWRCeXRlcyhvZmZzZXQsIDQwOTYpO1xuXG4gICAgICAgIGNvbnN0IHsgaW1hZ2UsIG5leHRPZmZzZXQgfSA9IGF3YWl0IHRoaXMucmVhZElmZChvZmZzZXQpO1xuICAgICAgICB0aGlzLmltYWdlcy5wdXNoKGltYWdlKTtcblxuICAgICAgICBpZiAobmV4dE9mZnNldCkgYXdhaXQgdGhpcy5wcm9jZXNzSWZkKG5leHRPZmZzZXQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgcmVhZElmZChvZmZzZXQ6IG51bWJlcik6IFByb21pc2U8eyBuZXh0T2Zmc2V0OiBudW1iZXI7IGltYWdlOiBDb2dUaWZmSW1hZ2UgfT4ge1xuICAgICAgICBpZiAoIXRoaXMuc291cmNlLmhhc0J5dGVzKG9mZnNldCwgMTAyNCkpIGF3YWl0IHRoaXMuc291cmNlLmxvYWRCeXRlcyhvZmZzZXQsIHRoaXMuc291cmNlLmNodW5rU2l6ZSk7XG4gICAgICAgIGNvbnN0IHZpZXcgPSB0aGlzLmN1cnNvci5zZWVrVG8ob2Zmc2V0KTtcbiAgICAgICAgY29uc3QgdGFnQ291bnQgPSB2aWV3Lm9mZnNldCgpO1xuICAgICAgICBjb25zdCBieXRlU3RhcnQgPSBvZmZzZXQgKyB0aGlzLmlmZENvbmZpZy5vZmZzZXQ7XG4gICAgICAgIGNvbnN0IHRhZ3M6IE1hcDxUaWZmVGFnLCBDb2dUaWZmVGFnQmFzZT4gPSBuZXcgTWFwKCk7XG5cbiAgICAgICAgbGV0IHBvcyA9IGJ5dGVTdGFydDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0YWdDb3VudDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB0YWcgPSBDb2dUaWZmVGFnLmNyZWF0ZSh0aGlzLCBwb3MpO1xuICAgICAgICAgICAgcG9zICs9IHRhZy5zaXplO1xuXG4gICAgICAgICAgICBpZiAodGFnLm5hbWUgPT0gbnVsbCkgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIElGRCBUYWc6ICcgKyB0b0hleFN0cmluZyh0YWcuaWQpKTtcbiAgICAgICAgICAgIHRhZ3Muc2V0KHRhZy5pZCwgdGFnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGltYWdlID0gbmV3IENvZ1RpZmZJbWFnZSh0aGlzLCB0aGlzLmltYWdlcy5sZW5ndGgsIHRhZ3MpO1xuICAgICAgICBjb25zdCBuZXh0T2Zmc2V0ID0gdGhpcy5zb3VyY2UuZ2V0VWludChwb3MsIHRoaXMuaWZkQ29uZmlnLnBvaW50ZXIpO1xuICAgICAgICByZXR1cm4geyBuZXh0T2Zmc2V0LCBpbWFnZSB9O1xuICAgIH1cblxuICAgIC8qKiBDbG9zZSB0aGUgZmlsZSBzb3VyY2UgaWYgaXQgbmVlZHMgY2xvc2luZyAqL1xuICAgIGFzeW5jIGNsb3NlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLnNvdXJjZT8uY2xvc2U/LigpO1xuICAgIH1cbn1cbiJdfQ==
@@ -2,6 +2,7 @@
2
2
  * MimeType conversion for common tif image types
3
3
  */
4
4
  export declare enum TiffMimeType {
5
+ NONE = "application/octet-stream",
5
6
  JPEG = "image/jpeg",
6
7
  JP2 = "image/jp2",
7
8
  WEBP = "image/webp",
@@ -1 +1 @@
1
- {"version":3,"file":"tiff.mime.d.ts","sourceRoot":"","sources":["../../src/const/tiff.mime.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,YAAY;IACpB,IAAI,eAAe;IACnB,GAAG,cAAc;IACjB,IAAI,eAAe;IACnB,GAAG,oBAAoB;IACvB,OAAO,wBAAwB;CAClC;AAED,eAAO,MAAM,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;CAO1D,CAAC"}
1
+ {"version":3,"file":"tiff.mime.d.ts","sourceRoot":"","sources":["../../src/const/tiff.mime.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,YAAY;IACpB,IAAI,6BAA6B;IACjC,IAAI,eAAe;IACnB,GAAG,cAAc;IACjB,IAAI,eAAe;IACnB,GAAG,oBAAoB;IACvB,OAAO,wBAAwB;CAClC;AAED,eAAO,MAAM,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;CAQ1D,CAAC"}
@@ -3,6 +3,7 @@
3
3
  */
4
4
  export var TiffMimeType;
5
5
  (function (TiffMimeType) {
6
+ TiffMimeType["NONE"] = "application/octet-stream";
6
7
  TiffMimeType["JPEG"] = "image/jpeg";
7
8
  TiffMimeType["JP2"] = "image/jp2";
8
9
  TiffMimeType["WEBP"] = "image/webp";
@@ -10,6 +11,7 @@ export var TiffMimeType;
10
11
  TiffMimeType["DEFLATE"] = "application/deflate";
11
12
  })(TiffMimeType || (TiffMimeType = {}));
12
13
  export const TiffCompression = {
14
+ 1: TiffMimeType.NONE,
13
15
  5: TiffMimeType.LZW,
14
16
  6: TiffMimeType.JPEG,
15
17
  7: TiffMimeType.JPEG,
@@ -17,4 +19,4 @@ export const TiffCompression = {
17
19
  34712: TiffMimeType.JP2,
18
20
  50001: TiffMimeType.WEBP,
19
21
  };
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi5taW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnN0L3RpZmYubWltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLFlBTVg7QUFORCxXQUFZLFlBQVk7SUFDcEIsbUNBQW1CLENBQUE7SUFDbkIsaUNBQWlCLENBQUE7SUFDakIsbUNBQW1CLENBQUE7SUFDbkIsdUNBQXVCLENBQUE7SUFDdkIsK0NBQStCLENBQUE7QUFDbkMsQ0FBQyxFQU5XLFlBQVksS0FBWixZQUFZLFFBTXZCO0FBRUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFvQztJQUM1RCxDQUFDLEVBQUUsWUFBWSxDQUFDLEdBQUc7SUFDbkIsQ0FBQyxFQUFFLFlBQVksQ0FBQyxJQUFJO0lBQ3BCLENBQUMsRUFBRSxZQUFZLENBQUMsSUFBSTtJQUNwQixDQUFDLEVBQUUsWUFBWSxDQUFDLE9BQU87SUFDdkIsS0FBSyxFQUFFLFlBQVksQ0FBQyxHQUFHO0lBQ3ZCLEtBQUssRUFBRSxZQUFZLENBQUMsSUFBSTtDQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBNaW1lVHlwZSBjb252ZXJzaW9uIGZvciBjb21tb24gdGlmIGltYWdlIHR5cGVzXG4gKi9cbmV4cG9ydCBlbnVtIFRpZmZNaW1lVHlwZSB7XG4gICAgSlBFRyA9ICdpbWFnZS9qcGVnJyxcbiAgICBKUDIgPSAnaW1hZ2UvanAyJyxcbiAgICBXRUJQID0gJ2ltYWdlL3dlYnAnLFxuICAgIExaVyA9ICdhcHBsaWNhdGlvbi9sencnLFxuICAgIERFRkxBVEUgPSAnYXBwbGljYXRpb24vZGVmbGF0ZScsXG59XG5cbmV4cG9ydCBjb25zdCBUaWZmQ29tcHJlc3Npb246IHsgW2tleTogbnVtYmVyXTogVGlmZk1pbWVUeXBlIH0gPSB7XG4gICAgNTogVGlmZk1pbWVUeXBlLkxaVyxcbiAgICA2OiBUaWZmTWltZVR5cGUuSlBFRyxcbiAgICA3OiBUaWZmTWltZVR5cGUuSlBFRyxcbiAgICA4OiBUaWZmTWltZVR5cGUuREVGTEFURSxcbiAgICAzNDcxMjogVGlmZk1pbWVUeXBlLkpQMixcbiAgICA1MDAwMTogVGlmZk1pbWVUeXBlLldFQlAsXG59O1xuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi5taW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbnN0L3RpZmYubWltZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBTixJQUFZLFlBT1g7QUFQRCxXQUFZLFlBQVk7SUFDcEIsaURBQWlDLENBQUE7SUFDakMsbUNBQW1CLENBQUE7SUFDbkIsaUNBQWlCLENBQUE7SUFDakIsbUNBQW1CLENBQUE7SUFDbkIsdUNBQXVCLENBQUE7SUFDdkIsK0NBQStCLENBQUE7QUFDbkMsQ0FBQyxFQVBXLFlBQVksS0FBWixZQUFZLFFBT3ZCO0FBRUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFvQztJQUM1RCxDQUFDLEVBQUUsWUFBWSxDQUFDLElBQUk7SUFDcEIsQ0FBQyxFQUFFLFlBQVksQ0FBQyxHQUFHO0lBQ25CLENBQUMsRUFBRSxZQUFZLENBQUMsSUFBSTtJQUNwQixDQUFDLEVBQUUsWUFBWSxDQUFDLElBQUk7SUFDcEIsQ0FBQyxFQUFFLFlBQVksQ0FBQyxPQUFPO0lBQ3ZCLEtBQUssRUFBRSxZQUFZLENBQUMsR0FBRztJQUN2QixLQUFLLEVBQUUsWUFBWSxDQUFDLElBQUk7Q0FDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTWltZVR5cGUgY29udmVyc2lvbiBmb3IgY29tbW9uIHRpZiBpbWFnZSB0eXBlc1xuICovXG5leHBvcnQgZW51bSBUaWZmTWltZVR5cGUge1xuICAgIE5PTkUgPSAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyxcbiAgICBKUEVHID0gJ2ltYWdlL2pwZWcnLFxuICAgIEpQMiA9ICdpbWFnZS9qcDInLFxuICAgIFdFQlAgPSAnaW1hZ2Uvd2VicCcsXG4gICAgTFpXID0gJ2FwcGxpY2F0aW9uL2x6dycsXG4gICAgREVGTEFURSA9ICdhcHBsaWNhdGlvbi9kZWZsYXRlJyxcbn1cblxuZXhwb3J0IGNvbnN0IFRpZmZDb21wcmVzc2lvbjogeyBba2V5OiBudW1iZXJdOiBUaWZmTWltZVR5cGUgfSA9IHtcbiAgICAxOiBUaWZmTWltZVR5cGUuTk9ORSxcbiAgICA1OiBUaWZmTWltZVR5cGUuTFpXLFxuICAgIDY6IFRpZmZNaW1lVHlwZS5KUEVHLFxuICAgIDc6IFRpZmZNaW1lVHlwZS5KUEVHLFxuICAgIDg6IFRpZmZNaW1lVHlwZS5ERUZMQVRFLFxuICAgIDM0NzEyOiBUaWZmTWltZVR5cGUuSlAyLFxuICAgIDUwMDAxOiBUaWZmTWltZVR5cGUuV0VCUCxcbn07XG4iXX0=
@@ -20,4 +20,4 @@ o.spec('TiffTag', () => {
20
20
  o(lazy.value).deepEquals(res);
21
21
  });
22
22
  });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmVhZC90YWcvX190ZXN0X18vdGFnLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdkYsT0FBTyxDQUFDLE1BQU0sT0FBTyxDQUFDO0FBQ3RCLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUU7SUFDbkIsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0MsTUFBTSxhQUFhLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDLENBQUM7SUFFMUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBRUgsQ0FBQyxDQUFDLHVCQUF1QixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUksT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXhDLE1BQU0sYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkMsTUFBTSxJQUFJLEdBQUcsSUFBSSxjQUFjLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzQixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMvQixDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsQyxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVzdEZpbGVDaHVua1NvdXJjZSB9IGZyb20gJ0BjaHVua2QvY29yZS9idWlsZC9fX3Rlc3RfXy9jaHVuay5zb3VyY2UuZmFrZS5qcyc7XG5pbXBvcnQgbyBmcm9tICdvc3BlYyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gJ3VybCc7XG5pbXBvcnQgeyBDb2dUaWZmIH0gZnJvbSAnLi4vLi4vLi4vY29nLnRpZmYuanMnO1xuaW1wb3J0IHsgQ29nVGlmZlRhZ0xhenkgfSBmcm9tICcuLi90aWZmLnRhZy5sYXp5LmpzJztcblxuby5zcGVjKCdUaWZmVGFnJywgKCkgPT4ge1xuICAgIGNvbnN0IGRpck5hbWUgPSBmaWxlVVJMVG9QYXRoKGltcG9ydC5tZXRhLnVybCk7XG4gICAgY29uc3QgY29nU291cmNlRmlsZSA9IG5ldyBUZXN0RmlsZUNodW5rU291cmNlKHBhdGguam9pbihkaXJOYW1lLCAnLi4vLi4vLi4vLi4vLi4vZGF0YS9yZ2JhOF90aWxlZC50aWZmJykpO1xuXG4gICAgby5iZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgICAgY29nU291cmNlRmlsZS5jaHVua3MuY2xlYXIoKTtcbiAgICB9KTtcblxuICAgIG8oJ3Nob3VsZCBsb2FkIGxhenkgdGFncycsIGFzeW5jICgpID0+IHtcbiAgICAgICAgY29uc3QgdGlmZiA9IG5ldyBDb2dUaWZmKGNvZ1NvdXJjZUZpbGUpO1xuXG4gICAgICAgIGF3YWl0IGNvZ1NvdXJjZUZpbGUubG9hZEJ5dGVzKDM2ODAsIDgpO1xuICAgICAgICBjb25zdCBsYXp5ID0gbmV3IENvZ1RpZmZUYWdMYXp5KDMzOSwgdGlmZiwgMzY4MCk7XG4gICAgICAgIG8obGF6eS52YWx1ZSkuZXF1YWxzKG51bGwpO1xuXG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGxhenkuZmV0Y2goKTtcbiAgICAgICAgbyhyZXMpLmRlZXBFcXVhbHMoWzE4NzYxLCA0MywgOCwgMF0pO1xuICAgICAgICBvKGxhenkudmFsdWUpLmRlZXBFcXVhbHMocmVzKTtcbiAgICB9KTtcbn0pO1xuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcmVhZC90YWcvX190ZXN0X18vdGFnLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdkYsT0FBTyxDQUFDLE1BQU0sT0FBTyxDQUFDO0FBQ3RCLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUU7SUFDbkIsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDL0MsTUFBTSxhQUFhLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDLENBQUM7SUFFMUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDYixhQUFhLENBQUMsTUFBZ0MsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM1RCxDQUFDLENBQUMsQ0FBQztJQUVILENBQUMsQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNsQyxNQUFNLElBQUksR0FBRyxJQUFJLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV4QyxNQUFNLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sSUFBSSxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDakQsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFM0IsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDL0IsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlc3RGaWxlQ2h1bmtTb3VyY2UgfSBmcm9tICdAY2h1bmtkL2NvcmUvYnVpbGQvX190ZXN0X18vY2h1bmsuc291cmNlLmZha2UuanMnO1xuaW1wb3J0IG8gZnJvbSAnb3NwZWMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IGZpbGVVUkxUb1BhdGggfSBmcm9tICd1cmwnO1xuaW1wb3J0IHsgQ29nVGlmZiB9IGZyb20gJy4uLy4uLy4uL2NvZy50aWZmLmpzJztcbmltcG9ydCB7IENvZ1RpZmZUYWdMYXp5IH0gZnJvbSAnLi4vdGlmZi50YWcubGF6eS5qcyc7XG5cbm8uc3BlYygnVGlmZlRhZycsICgpID0+IHtcbiAgICBjb25zdCBkaXJOYW1lID0gZmlsZVVSTFRvUGF0aChpbXBvcnQubWV0YS51cmwpO1xuICAgIGNvbnN0IGNvZ1NvdXJjZUZpbGUgPSBuZXcgVGVzdEZpbGVDaHVua1NvdXJjZShwYXRoLmpvaW4oZGlyTmFtZSwgJy4uLy4uLy4uLy4uLy4uL2RhdGEvcmdiYThfdGlsZWQudGlmZicpKTtcblxuICAgIG8uYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgICAgIChjb2dTb3VyY2VGaWxlLmNodW5rcyBhcyBNYXA8dW5rbm93biwgdW5rbm93bj4pLmNsZWFyKCk7XG4gICAgfSk7XG5cbiAgICBvKCdzaG91bGQgbG9hZCBsYXp5IHRhZ3MnLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHRpZmYgPSBuZXcgQ29nVGlmZihjb2dTb3VyY2VGaWxlKTtcblxuICAgICAgICBhd2FpdCBjb2dTb3VyY2VGaWxlLmxvYWRCeXRlcygzNjgwLCA4KTtcbiAgICAgICAgY29uc3QgbGF6eSA9IG5ldyBDb2dUaWZmVGFnTGF6eSgzMzksIHRpZmYsIDM2ODApO1xuICAgICAgICBvKGxhenkudmFsdWUpLmVxdWFscyhudWxsKTtcblxuICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBsYXp5LmZldGNoKCk7XG4gICAgICAgIG8ocmVzKS5kZWVwRXF1YWxzKFsxODc2MSwgNDMsIDgsIDBdKTtcbiAgICAgICAgbyhsYXp5LnZhbHVlKS5kZWVwRXF1YWxzKHJlcyk7XG4gICAgfSk7XG59KTtcbiJdfQ==
@@ -8,7 +8,7 @@ export class CogTiffTagBase {
8
8
  this.id = id;
9
9
  this.name = TiffTag[this.id];
10
10
  this.dataType = this.tiff.source.getUint16(offset + 2);
11
- this.dataCount = this.tiff.source.getUint(offset + 4, this.tiff.ifdConfig.offset);
11
+ this.dataCount = this.tiff.source.getUint(offset + 4, this.tiff.ifdConfig.pointer);
12
12
  this.dataTypeSize = getTiffTagSize(this.dataType);
13
13
  this.dataLength = this.dataTypeSize * this.dataCount;
14
14
  }
@@ -76,4 +76,4 @@ export class CogTiffTagBase {
76
76
  };
77
77
  }
78
78
  }
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi50YWcuYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWFkL3RhZy90aWZmLnRhZy5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEYsTUFBTSxPQUFnQixjQUFjO0lBdUJoQyxZQUFZLEVBQVUsRUFBRSxJQUFhLEVBQUUsTUFBYztRQUNqRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztRQUV6QixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUU3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsWUFBWSxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDekQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQVdEOzs7T0FHRztJQUNILElBQUksWUFBWTtRQUNaLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFPRCx1Q0FBdUM7SUFDdkMsSUFBSSxZQUFZO1FBQ1osTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7UUFDNUQsSUFBSSxJQUFJLENBQUMsYUFBYTtZQUFFLE9BQU8sSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUM7UUFDN0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELDhCQUE4QjtJQUM5QixJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQztJQUNuQyxDQUFDO0lBRUQsNEVBQTRFO0lBQzVFLElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7SUFDMUQsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxTQUFTO1FBQ0wsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUNqQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3ZDLE1BQU0sT0FBTyxHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzdCLE1BQU0sVUFBVSxHQUFHLEtBQUssR0FBRyxZQUFZLENBQUM7UUFFeEMsSUFBSSxLQUFLLEtBQUssQ0FBQztZQUFFLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBaUIsQ0FBQztRQUUxRSxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFDLElBQUksWUFBWSxFQUFFO1lBQy9DLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3REO1FBRUQsK0JBQStCO1FBQy9CLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLO1lBQUUsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBa0IsQ0FBQztRQUU1RixPQUFPLE1BQXNCLENBQUM7SUFDbEMsQ0FBQztJQUVELG9EQUFvRDtJQUNwRCxNQUFNO1FBQ0YsT0FBTztZQUNILEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVTtZQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQ3ZCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNwQixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29nVGlmZiB9IGZyb20gJy4uLy4uL2NvZy50aWZmLmpzJztcbmltcG9ydCB7IFRpZmZUYWcgfSBmcm9tICcuLi8uLi9jb25zdC90aWZmLnRhZy5pZC5qcyc7XG5pbXBvcnQgeyBUaWZmVGFnVmFsdWVUeXBlIH0gZnJvbSAnLi4vLi4vY29uc3QvdGlmZi50YWcudmFsdWUuanMnO1xuaW1wb3J0IHsgZ2V0VGlmZlRhZ1NpemUsIGdldFRpZmZUYWdWYWx1ZVJlYWRlciB9IGZyb20gJy4uL3RpZmYudmFsdWUucmVhZGVyLmpzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvZ1RpZmZUYWdCYXNlPFQgPSB1bmtub3duPiB7XG4gICAgLyoqXG4gICAgICogVmFsdWUgb2YgdGhlIHRpZmYgdGFnLCBtYXkgYmUgbnVsbCBpZiB0aGUgdmFsdWUgaGFzIG5vdCBiZWVuIHJlYWRcbiAgICAgKi9cbiAgICBhYnN0cmFjdCB2YWx1ZTogVCB8IG51bGw7XG5cbiAgICAvKiogUmF3IG9mZnNldCBmb3Igd2hlcmUgaW4gdGhlIHRpZiB0aGlzIHRhZyBzdGFydHMgKi9cbiAgICBwcml2YXRlIGJ5dGVPZmZzZXQ6IG51bWJlcjtcblxuICAgIC8qKiBOYW1lIG9mIHRoZSB0YWcgKi9cbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICAvKiogVGlmVGFnSWQgQHNlZSBUaWZmVGFnICovXG4gICAgaWQ6IG51bWJlcjtcblxuICAgIC8qKiBUeXBlIG9mIGRhdGEgaW5zaWRlIHRoZSByZWNvcmQgQHNlZSB0aGlzLmRhdGFUeXBlTmFtZSAqL1xuICAgIGRhdGFUeXBlOiBudW1iZXI7XG5cbiAgICAvKiogTnVtYmVyIG9mIHJlY29yZHMgaW5zaWRlIHRoZSB0YWcgKi9cbiAgICBkYXRhQ291bnQ6IG51bWJlcjtcblxuICAgIHRpZmY6IENvZ1RpZmY7XG5cbiAgICBjb25zdHJ1Y3RvcihpZDogbnVtYmVyLCB0aWZmOiBDb2dUaWZmLCBvZmZzZXQ6IG51bWJlcikge1xuICAgICAgICB0aGlzLnRpZmYgPSB0aWZmO1xuICAgICAgICB0aGlzLmJ5dGVPZmZzZXQgPSBvZmZzZXQ7XG5cbiAgICAgICAgdGhpcy5pZCA9IGlkO1xuICAgICAgICB0aGlzLm5hbWUgPSBUaWZmVGFnW3RoaXMuaWRdO1xuXG4gICAgICAgIHRoaXMuZGF0YVR5cGUgPSB0aGlzLnRpZmYuc291cmNlLmdldFVpbnQxNihvZmZzZXQgKyAyKTtcbiAgICAgICAgdGhpcy5kYXRhQ291bnQgPSB0aGlzLnRpZmYuc291cmNlLmdldFVpbnQob2Zmc2V0ICsgNCwgdGhpcy50aWZmLmlmZENvbmZpZy5vZmZzZXQpO1xuICAgICAgICB0aGlzLmRhdGFUeXBlU2l6ZSA9IGdldFRpZmZUYWdTaXplKHRoaXMuZGF0YVR5cGUpO1xuICAgICAgICB0aGlzLmRhdGFMZW5ndGggPSB0aGlzLmRhdGFUeXBlU2l6ZSAqIHRoaXMuZGF0YUNvdW50O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhdmUgdGhlIGJ5dGVzIGZvciB0aGUgdGFnIGJlZW4gbG9hZGVkLCBvciBpcyBhIGZldGNoIHJlcXVpcmVkIHRvIHJlYWQgdGhlIHRhZ1xuICAgICAqL1xuICAgIGdldCBoYXNCeXRlcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGlmZi5zb3VyY2UuaGFzQnl0ZXModGhpcy52YWx1ZVBvaW50ZXIsIHRoaXMuZGF0YUxlbmd0aCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogaXMgdGhlIHRhZyByZWFkeSB0byBiZSByZWFkXG4gICAgICovXG4gICAgZ2V0IGlzUmVhZHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgc2l6ZSBvZiB0aGUgZGF0YSB0eXBlXG4gICAgICpcbiAgICAgKiBAcmVtYXJrc1xuICAgICAqIFRoaXMgaXMgb25seSB0aGUgc2l6ZSBvZiBvbmUgaW5zdGFuY2Ugb2YgdGhlIGRhdGEgQHNlZSB0aGlzLmRhdGFMZW5ndGggZm9yIHRvdGFsIGJ5dGUgc2l6ZVxuICAgICAqXG4gICAgICovXG4gICAgZGF0YVR5cGVTaXplOiBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiBHZXQgYSBodW1hbiByZWFkYWJsZSBuYW1lIGZvciBhIGRhdGF0eXBlXG4gICAgICpcbiAgICAgKi9cbiAgICBnZXQgZGF0YVR5cGVOYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBUaWZmVGFnVmFsdWVUeXBlW3RoaXMuZGF0YVR5cGVdO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCB0aGUgbnVtYmVyIG9mIGJ5dGVzIHVzZWQgZm9yIHRoZSBhbGwgb2YgdGhlIGRhdGFcbiAgICAgKi9cbiAgICBkYXRhTGVuZ3RoOiBudW1iZXI7XG5cbiAgICAvKiogYWJzb2x1dGUgb2Zmc2V0IG9mIHRoZSBUYWcgdmFsdWUgKi9cbiAgICBnZXQgdmFsdWVQb2ludGVyKCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHZhbHVlT2Zmc2V0ID0gdGhpcy5zaXplIC0gdGhpcy50aWZmLmlmZENvbmZpZy5wb2ludGVyO1xuICAgICAgICBpZiAodGhpcy5pc1ZhbHVlSW5saW5lKSByZXR1cm4gdGhpcy5ieXRlT2Zmc2V0ICsgdmFsdWVPZmZzZXQ7XG4gICAgICAgIHJldHVybiB0aGlzLnRpZmYuc291cmNlLmdldFVpbnQodGhpcy5ieXRlT2Zmc2V0ICsgdmFsdWVPZmZzZXQsIHRoaXMudGlmZi5pZmRDb25maWcucG9pbnRlcik7XG4gICAgfVxuXG4gICAgLyoqIFNpemUgb2YgdGhlIElGRCAoYnl0ZXMpICovXG4gICAgZ2V0IHNpemUoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGlmZi5pZmRDb25maWcuaWZkO1xuICAgIH1cblxuICAgIC8qKiBJcyB0aGUgdmFsdWUgb2YgdGhpcyB0YWcgaW5saW5lLCBvciBpcyBpdCBhIHBvaW50ZXIgdG8gdGhlIHJlYWwgdmFsdWUgKi9cbiAgICBnZXQgaXNWYWx1ZUlubGluZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YUxlbmd0aCA8PSB0aGlzLnRpZmYuaWZkQ29uZmlnLnBvaW50ZXI7XG4gICAgfVxuXG4gICAgLyoqIFJlYWQgdGhlIHZhbHVlIGluIGZyb20gdGhlIGJ5dGUgYXJyYXkgKi9cbiAgICByZWFkVmFsdWUoKTogVCB7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHRoaXMudmFsdWVQb2ludGVyO1xuICAgICAgICBjb25zdCBkYXRhVHlwZVNpemUgPSB0aGlzLmRhdGFUeXBlU2l6ZTtcbiAgICAgICAgY29uc3QgY29udmVydCA9IGdldFRpZmZUYWdWYWx1ZVJlYWRlcih0aGlzLmRhdGFUeXBlKTtcbiAgICAgICAgY29uc3QgY291bnQgPSB0aGlzLmRhdGFDb3VudDtcbiAgICAgICAgY29uc3QgZGF0YUxlbmd0aCA9IGNvdW50ICogZGF0YVR5cGVTaXplO1xuXG4gICAgICAgIGlmIChjb3VudCA9PT0gMSkgcmV0dXJuIGNvbnZlcnQodGhpcy50aWZmLnNvdXJjZSwgb2Zmc2V0KSBhcyB1bmtub3duIGFzIFQ7XG5cbiAgICAgICAgY29uc3Qgb3V0cHV0ID0gW107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YUxlbmd0aDsgaSArPSBkYXRhVHlwZVNpemUpIHtcbiAgICAgICAgICAgIG91dHB1dC5wdXNoKGNvbnZlcnQodGhpcy50aWZmLnNvdXJjZSwgb2Zmc2V0ICsgaSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ29udmVydCB0byBhIHN0cmluZyBpZiBhc2NpaVxuICAgICAgICBpZiAodGhpcy5kYXRhVHlwZSA9PT0gVGlmZlRhZ1ZhbHVlVHlwZS5BU0NJSSkgcmV0dXJuIG91dHB1dC5qb2luKCcnKS50cmltKCkgYXMgdW5rbm93biBhcyBUO1xuXG4gICAgICAgIHJldHVybiBvdXRwdXQgYXMgdW5rbm93biBhcyBUO1xuICAgIH1cblxuICAgIC8qKiBHZXQgYSBodW1hbihpc2gpIGZyaWVuZGx5IG91dHB1dCBmb3IgdGhlIHRhZ3MgKi9cbiAgICB0b0pTT04oKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUsXG4gICAgICAgICAgICBvZmZzZXQ6IHRoaXMuYnl0ZU9mZnNldCxcbiAgICAgICAgICAgIGlzUmVhZHk6IHRoaXMuaXNSZWFkeSxcbiAgICAgICAgICAgIHR5cGU6IHRoaXMuZGF0YVR5cGVOYW1lLFxuICAgICAgICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi50YWcuYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWFkL3RhZy90aWZmLnRhZy5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEYsTUFBTSxPQUFnQixjQUFjO0lBdUJoQyxZQUFZLEVBQVUsRUFBRSxJQUFhLEVBQUUsTUFBYztRQUNqRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztRQUV6QixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUU3QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRixJQUFJLENBQUMsWUFBWSxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDekQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQVdEOzs7T0FHRztJQUNILElBQUksWUFBWTtRQUNaLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFPRCx1Q0FBdUM7SUFDdkMsSUFBSSxZQUFZO1FBQ1osTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7UUFDNUQsSUFBSSxJQUFJLENBQUMsYUFBYTtZQUFFLE9BQU8sSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUM7UUFDN0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELDhCQUE4QjtJQUM5QixJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQztJQUNuQyxDQUFDO0lBRUQsNEVBQTRFO0lBQzVFLElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7SUFDMUQsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxTQUFTO1FBQ0wsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUNqQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3ZDLE1BQU0sT0FBTyxHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzdCLE1BQU0sVUFBVSxHQUFHLEtBQUssR0FBRyxZQUFZLENBQUM7UUFFeEMsSUFBSSxLQUFLLEtBQUssQ0FBQztZQUFFLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBaUIsQ0FBQztRQUUxRSxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFDLElBQUksWUFBWSxFQUFFO1lBQy9DLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3REO1FBRUQsK0JBQStCO1FBQy9CLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxnQkFBZ0IsQ0FBQyxLQUFLO1lBQUUsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBa0IsQ0FBQztRQUU1RixPQUFPLE1BQXNCLENBQUM7SUFDbEMsQ0FBQztJQUVELG9EQUFvRDtJQUNwRCxNQUFNO1FBQ0YsT0FBTztZQUNILEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVTtZQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQ3ZCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNwQixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29nVGlmZiB9IGZyb20gJy4uLy4uL2NvZy50aWZmLmpzJztcbmltcG9ydCB7IFRpZmZUYWcgfSBmcm9tICcuLi8uLi9jb25zdC90aWZmLnRhZy5pZC5qcyc7XG5pbXBvcnQgeyBUaWZmVGFnVmFsdWVUeXBlIH0gZnJvbSAnLi4vLi4vY29uc3QvdGlmZi50YWcudmFsdWUuanMnO1xuaW1wb3J0IHsgZ2V0VGlmZlRhZ1NpemUsIGdldFRpZmZUYWdWYWx1ZVJlYWRlciB9IGZyb20gJy4uL3RpZmYudmFsdWUucmVhZGVyLmpzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvZ1RpZmZUYWdCYXNlPFQgPSB1bmtub3duPiB7XG4gICAgLyoqXG4gICAgICogVmFsdWUgb2YgdGhlIHRpZmYgdGFnLCBtYXkgYmUgbnVsbCBpZiB0aGUgdmFsdWUgaGFzIG5vdCBiZWVuIHJlYWRcbiAgICAgKi9cbiAgICBhYnN0cmFjdCB2YWx1ZTogVCB8IG51bGw7XG5cbiAgICAvKiogUmF3IG9mZnNldCBmb3Igd2hlcmUgaW4gdGhlIHRpZiB0aGlzIHRhZyBzdGFydHMgKi9cbiAgICBwcml2YXRlIGJ5dGVPZmZzZXQ6IG51bWJlcjtcblxuICAgIC8qKiBOYW1lIG9mIHRoZSB0YWcgKi9cbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICAvKiogVGlmVGFnSWQgQHNlZSBUaWZmVGFnICovXG4gICAgaWQ6IG51bWJlcjtcblxuICAgIC8qKiBUeXBlIG9mIGRhdGEgaW5zaWRlIHRoZSByZWNvcmQgQHNlZSB0aGlzLmRhdGFUeXBlTmFtZSAqL1xuICAgIGRhdGFUeXBlOiBudW1iZXI7XG5cbiAgICAvKiogTnVtYmVyIG9mIHJlY29yZHMgaW5zaWRlIHRoZSB0YWcgKi9cbiAgICBkYXRhQ291bnQ6IG51bWJlcjtcblxuICAgIHRpZmY6IENvZ1RpZmY7XG5cbiAgICBjb25zdHJ1Y3RvcihpZDogbnVtYmVyLCB0aWZmOiBDb2dUaWZmLCBvZmZzZXQ6IG51bWJlcikge1xuICAgICAgICB0aGlzLnRpZmYgPSB0aWZmO1xuICAgICAgICB0aGlzLmJ5dGVPZmZzZXQgPSBvZmZzZXQ7XG5cbiAgICAgICAgdGhpcy5pZCA9IGlkO1xuICAgICAgICB0aGlzLm5hbWUgPSBUaWZmVGFnW3RoaXMuaWRdO1xuXG4gICAgICAgIHRoaXMuZGF0YVR5cGUgPSB0aGlzLnRpZmYuc291cmNlLmdldFVpbnQxNihvZmZzZXQgKyAyKTtcbiAgICAgICAgdGhpcy5kYXRhQ291bnQgPSB0aGlzLnRpZmYuc291cmNlLmdldFVpbnQob2Zmc2V0ICsgNCwgdGhpcy50aWZmLmlmZENvbmZpZy5wb2ludGVyKTtcbiAgICAgICAgdGhpcy5kYXRhVHlwZVNpemUgPSBnZXRUaWZmVGFnU2l6ZSh0aGlzLmRhdGFUeXBlKTtcbiAgICAgICAgdGhpcy5kYXRhTGVuZ3RoID0gdGhpcy5kYXRhVHlwZVNpemUgKiB0aGlzLmRhdGFDb3VudDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIYXZlIHRoZSBieXRlcyBmb3IgdGhlIHRhZyBiZWVuIGxvYWRlZCwgb3IgaXMgYSBmZXRjaCByZXF1aXJlZCB0byByZWFkIHRoZSB0YWdcbiAgICAgKi9cbiAgICBnZXQgaGFzQnl0ZXMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRpZmYuc291cmNlLmhhc0J5dGVzKHRoaXMudmFsdWVQb2ludGVyLCB0aGlzLmRhdGFMZW5ndGgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGlzIHRoZSB0YWcgcmVhZHkgdG8gYmUgcmVhZFxuICAgICAqL1xuICAgIGdldCBpc1JlYWR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHNpemUgb2YgdGhlIGRhdGEgdHlwZVxuICAgICAqXG4gICAgICogQHJlbWFya3NcbiAgICAgKiBUaGlzIGlzIG9ubHkgdGhlIHNpemUgb2Ygb25lIGluc3RhbmNlIG9mIHRoZSBkYXRhIEBzZWUgdGhpcy5kYXRhTGVuZ3RoIGZvciB0b3RhbCBieXRlIHNpemVcbiAgICAgKlxuICAgICAqL1xuICAgIGRhdGFUeXBlU2l6ZTogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogR2V0IGEgaHVtYW4gcmVhZGFibGUgbmFtZSBmb3IgYSBkYXRhdHlwZVxuICAgICAqXG4gICAgICovXG4gICAgZ2V0IGRhdGFUeXBlTmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gVGlmZlRhZ1ZhbHVlVHlwZVt0aGlzLmRhdGFUeXBlXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIG51bWJlciBvZiBieXRlcyB1c2VkIGZvciB0aGUgYWxsIG9mIHRoZSBkYXRhXG4gICAgICovXG4gICAgZGF0YUxlbmd0aDogbnVtYmVyO1xuXG4gICAgLyoqIGFic29sdXRlIG9mZnNldCBvZiB0aGUgVGFnIHZhbHVlICovXG4gICAgZ2V0IHZhbHVlUG9pbnRlcigpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWx1ZU9mZnNldCA9IHRoaXMuc2l6ZSAtIHRoaXMudGlmZi5pZmRDb25maWcucG9pbnRlcjtcbiAgICAgICAgaWYgKHRoaXMuaXNWYWx1ZUlubGluZSkgcmV0dXJuIHRoaXMuYnl0ZU9mZnNldCArIHZhbHVlT2Zmc2V0O1xuICAgICAgICByZXR1cm4gdGhpcy50aWZmLnNvdXJjZS5nZXRVaW50KHRoaXMuYnl0ZU9mZnNldCArIHZhbHVlT2Zmc2V0LCB0aGlzLnRpZmYuaWZkQ29uZmlnLnBvaW50ZXIpO1xuICAgIH1cblxuICAgIC8qKiBTaXplIG9mIHRoZSBJRkQgKGJ5dGVzKSAqL1xuICAgIGdldCBzaXplKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnRpZmYuaWZkQ29uZmlnLmlmZDtcbiAgICB9XG5cbiAgICAvKiogSXMgdGhlIHZhbHVlIG9mIHRoaXMgdGFnIGlubGluZSwgb3IgaXMgaXQgYSBwb2ludGVyIHRvIHRoZSByZWFsIHZhbHVlICovXG4gICAgZ2V0IGlzVmFsdWVJbmxpbmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFMZW5ndGggPD0gdGhpcy50aWZmLmlmZENvbmZpZy5wb2ludGVyO1xuICAgIH1cblxuICAgIC8qKiBSZWFkIHRoZSB2YWx1ZSBpbiBmcm9tIHRoZSBieXRlIGFycmF5ICovXG4gICAgcmVhZFZhbHVlKCk6IFQge1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB0aGlzLnZhbHVlUG9pbnRlcjtcbiAgICAgICAgY29uc3QgZGF0YVR5cGVTaXplID0gdGhpcy5kYXRhVHlwZVNpemU7XG4gICAgICAgIGNvbnN0IGNvbnZlcnQgPSBnZXRUaWZmVGFnVmFsdWVSZWFkZXIodGhpcy5kYXRhVHlwZSk7XG4gICAgICAgIGNvbnN0IGNvdW50ID0gdGhpcy5kYXRhQ291bnQ7XG4gICAgICAgIGNvbnN0IGRhdGFMZW5ndGggPSBjb3VudCAqIGRhdGFUeXBlU2l6ZTtcblxuICAgICAgICBpZiAoY291bnQgPT09IDEpIHJldHVybiBjb252ZXJ0KHRoaXMudGlmZi5zb3VyY2UsIG9mZnNldCkgYXMgdW5rbm93biBhcyBUO1xuXG4gICAgICAgIGNvbnN0IG91dHB1dCA9IFtdO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFMZW5ndGg7IGkgKz0gZGF0YVR5cGVTaXplKSB7XG4gICAgICAgICAgICBvdXRwdXQucHVzaChjb252ZXJ0KHRoaXMudGlmZi5zb3VyY2UsIG9mZnNldCArIGkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENvbnZlcnQgdG8gYSBzdHJpbmcgaWYgYXNjaWlcbiAgICAgICAgaWYgKHRoaXMuZGF0YVR5cGUgPT09IFRpZmZUYWdWYWx1ZVR5cGUuQVNDSUkpIHJldHVybiBvdXRwdXQuam9pbignJykudHJpbSgpIGFzIHVua25vd24gYXMgVDtcblxuICAgICAgICByZXR1cm4gb3V0cHV0IGFzIHVua25vd24gYXMgVDtcbiAgICB9XG5cbiAgICAvKiogR2V0IGEgaHVtYW4oaXNoKSBmcmllbmRseSBvdXRwdXQgZm9yIHRoZSB0YWdzICovXG4gICAgdG9KU09OKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiB0aGlzLmlkLFxuICAgICAgICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLmJ5dGVPZmZzZXQsXG4gICAgICAgICAgICBpc1JlYWR5OiB0aGlzLmlzUmVhZHksXG4gICAgICAgICAgICB0eXBlOiB0aGlzLmRhdGFUeXBlTmFtZSxcbiAgICAgICAgICAgIHZhbHVlOiB0aGlzLnZhbHVlLFxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -1,8 +1,7 @@
1
- import { LogType } from '@chunkd/core';
2
1
  import { CogTiffTagBase } from './tiff.tag.base.js';
3
2
  export declare class CogTiffTagLazy<T> extends CogTiffTagBase<T> {
4
3
  value: T | null;
5
4
  get isReady(): boolean;
6
- fetch(l?: LogType): Promise<T>;
5
+ fetch(): Promise<T>;
7
6
  }
8
7
  //# sourceMappingURL=tiff.tag.lazy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tiff.tag.lazy.d.ts","sourceRoot":"","sources":["../../../src/read/tag/tiff.tag.lazy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,qBAAa,cAAc,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IACpD,KAAK,EAAE,CAAC,GAAG,IAAI,CAAQ;IAEvB,IAAI,OAAO,IAAI,OAAO,CAErB;IAEK,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;CAOvC"}
1
+ {"version":3,"file":"tiff.tag.lazy.d.ts","sourceRoot":"","sources":["../../../src/read/tag/tiff.tag.lazy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,qBAAa,cAAc,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IACpD,KAAK,EAAE,CAAC,GAAG,IAAI,CAAQ;IAEvB,IAAI,OAAO,IAAI,OAAO,CAErB;IAEK,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC;CAO5B"}
@@ -7,12 +7,12 @@ export class CogTiffTagLazy extends CogTiffTagBase {
7
7
  get isReady() {
8
8
  return this.value != null;
9
9
  }
10
- async fetch(l) {
10
+ async fetch() {
11
11
  if (this.tiff.source.hasBytes(this.valuePointer, this.dataLength) === false) {
12
- await this.tiff.source.loadBytes(this.valuePointer, this.dataLength, l);
12
+ await this.tiff.source.loadBytes(this.valuePointer, this.dataLength);
13
13
  }
14
14
  this.value = this.readValue();
15
15
  return this.value;
16
16
  }
17
17
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi50YWcubGF6eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWFkL3RhZy90aWZmLnRhZy5sYXp5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxNQUFNLE9BQU8sY0FBa0IsU0FBUSxjQUFpQjtJQUF4RDs7UUFDSSxVQUFLLEdBQWEsSUFBSSxDQUFDO0lBYTNCLENBQUM7SUFYRyxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDO0lBQzlCLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSyxDQUFDLENBQVc7UUFDbkIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssS0FBSyxFQUFFO1lBQ3pFLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMzRTtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzlCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dUeXBlIH0gZnJvbSAnQGNodW5rZC9jb3JlJztcbmltcG9ydCB7IENvZ1RpZmZUYWdCYXNlIH0gZnJvbSAnLi90aWZmLnRhZy5iYXNlLmpzJztcblxuZXhwb3J0IGNsYXNzIENvZ1RpZmZUYWdMYXp5PFQ+IGV4dGVuZHMgQ29nVGlmZlRhZ0Jhc2U8VD4ge1xuICAgIHZhbHVlOiBUIHwgbnVsbCA9IG51bGw7XG5cbiAgICBnZXQgaXNSZWFkeSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUgIT0gbnVsbDtcbiAgICB9XG5cbiAgICBhc3luYyBmZXRjaChsPzogTG9nVHlwZSk6IFByb21pc2U8VD4ge1xuICAgICAgICBpZiAodGhpcy50aWZmLnNvdXJjZS5oYXNCeXRlcyh0aGlzLnZhbHVlUG9pbnRlciwgdGhpcy5kYXRhTGVuZ3RoKSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMudGlmZi5zb3VyY2UubG9hZEJ5dGVzKHRoaXMudmFsdWVQb2ludGVyLCB0aGlzLmRhdGFMZW5ndGgsIGwpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLnJlYWRWYWx1ZSgpO1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZTtcbiAgICB9XG59XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi50YWcubGF6eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWFkL3RhZy90aWZmLnRhZy5sYXp5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxNQUFNLE9BQU8sY0FBa0IsU0FBUSxjQUFpQjtJQUF4RDs7UUFDSSxVQUFLLEdBQWEsSUFBSSxDQUFDO0lBYTNCLENBQUM7SUFYRyxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDO0lBQzlCLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSztRQUNQLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEtBQUssRUFBRTtZQUN6RSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN4RTtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzlCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2dUaWZmVGFnQmFzZSB9IGZyb20gJy4vdGlmZi50YWcuYmFzZS5qcyc7XG5cbmV4cG9ydCBjbGFzcyBDb2dUaWZmVGFnTGF6eTxUPiBleHRlbmRzIENvZ1RpZmZUYWdCYXNlPFQ+IHtcbiAgICB2YWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gICAgZ2V0IGlzUmVhZHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlICE9IG51bGw7XG4gICAgfVxuXG4gICAgYXN5bmMgZmV0Y2goKTogUHJvbWlzZTxUPiB7XG4gICAgICAgIGlmICh0aGlzLnRpZmYuc291cmNlLmhhc0J5dGVzKHRoaXMudmFsdWVQb2ludGVyLCB0aGlzLmRhdGFMZW5ndGgpID09PSBmYWxzZSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy50aWZmLnNvdXJjZS5sb2FkQnl0ZXModGhpcy52YWx1ZVBvaW50ZXIsIHRoaXMuZGF0YUxlbmd0aCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy52YWx1ZSA9IHRoaXMucmVhZFZhbHVlKCk7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,4 +1,3 @@
1
- import { LogType } from '@chunkd/core';
2
1
  import { CogTiff } from '../../cog.tiff.js';
3
2
  import { CogTiffTagBase } from './tiff.tag.base.js';
4
3
  /**
@@ -11,12 +10,12 @@ export declare class CogTiffTagOffset extends CogTiffTagBase<number[]> {
11
10
  constructor(tagId: number, tiff: CogTiff, offset: number);
12
11
  get value(): number[] | null;
13
12
  /** Load the entire index into memory */
14
- load(l: LogType): Promise<void>;
13
+ load(): Promise<void>;
15
14
  readValue(): number[];
16
15
  /**
17
16
  * Read a specific value from the offset array
18
17
  * @param index index to read at
19
18
  */
20
- getValueAt(index: number, l?: LogType): Promise<number>;
19
+ getValueAt(index: number): Promise<number>;
21
20
  }
22
21
  //# sourceMappingURL=tiff.tag.offset.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tiff.tag.offset.d.ts","sourceRoot":"","sources":["../../../src/read/tag/tiff.tag.offset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,cAAc,CAAC,MAAM,EAAE,CAAC;IAC1D,OAAO,CAAC,YAAY,CAAyB;gBAEjC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;IAIxD,IAAI,KAAK,IAAI,MAAM,EAAE,GAAG,IAAI,CAS3B;IAED,wCAAwC;IAClC,IAAI,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrC,SAAS,IAAI,MAAM,EAAE;IAWrB;;;OAGG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAYhE"}
1
+ {"version":3,"file":"tiff.tag.offset.d.ts","sourceRoot":"","sources":["../../../src/read/tag/tiff.tag.offset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,cAAc,CAAC,MAAM,EAAE,CAAC;IAC1D,OAAO,CAAC,YAAY,CAAyB;gBAEjC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;IAIxD,IAAI,KAAK,IAAI,MAAM,EAAE,GAAG,IAAI,CAS3B;IAED,wCAAwC;IAClC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,SAAS,IAAI,MAAM,EAAE;IAWrB;;;OAGG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAYnD"}
@@ -20,8 +20,8 @@ export class CogTiffTagOffset extends CogTiffTagBase {
20
20
  return null;
21
21
  }
22
22
  /** Load the entire index into memory */
23
- async load(l) {
24
- await this.tiff.source.loadBytes(this.valuePointer, this.dataLength, l);
23
+ async load() {
24
+ await this.tiff.source.loadBytes(this.valuePointer, this.dataLength);
25
25
  this.readValue();
26
26
  }
27
27
  readValue() {
@@ -39,16 +39,16 @@ export class CogTiffTagOffset extends CogTiffTagBase {
39
39
  * Read a specific value from the offset array
40
40
  * @param index index to read at
41
41
  */
42
- async getValueAt(index, l) {
42
+ async getValueAt(index) {
43
43
  if (this.loadedValues)
44
44
  return this.loadedValues[index];
45
45
  const dataSize = this.dataTypeSize;
46
46
  const valueOffset = this.valuePointer + dataSize * index;
47
47
  const convert = getTiffTagValueReader(this.dataType);
48
48
  if (!this.tiff.source.hasBytes(valueOffset, dataSize)) {
49
- await this.tiff.source.loadBytes(valueOffset, dataSize, l);
49
+ await this.tiff.source.loadBytes(valueOffset, dataSize);
50
50
  }
51
51
  return convert(this.tiff.source, valueOffset);
52
52
  }
53
53
  }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi50YWcub2Zmc2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JlYWQvdGFnL3RpZmYudGFnLm9mZnNldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxjQUF3QjtJQUcxRCxZQUFZLEtBQWEsRUFBRSxJQUFhLEVBQUUsTUFBYztRQUNwRCxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUh2QixpQkFBWSxHQUFvQixJQUFJLENBQUM7SUFJN0MsQ0FBQztJQUVELElBQUksS0FBSztRQUNMLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJO1lBQUUsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBRXhELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDNUI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBVTtRQUNqQixNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzlCLG1FQUFtRTtRQUNuRSxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtZQUN6QixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDN0I7YUFBTTtZQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDO1NBQzNCO1FBQ0QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQWEsRUFBRSxDQUFXO1FBQ3ZDLElBQUksSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdkQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUNuQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDekQsTUFBTSxPQUFPLEdBQUcscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXJELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxFQUFFO1lBQ25ELE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDOUQ7UUFDRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQVcsQ0FBQztJQUM1RCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dUeXBlIH0gZnJvbSAnQGNodW5rZC9jb3JlJztcbmltcG9ydCB7IENvZ1RpZmYgfSBmcm9tICcuLi8uLi9jb2cudGlmZi5qcyc7XG5pbXBvcnQgeyBnZXRUaWZmVGFnVmFsdWVSZWFkZXIgfSBmcm9tICcuLi90aWZmLnZhbHVlLnJlYWRlci5qcyc7XG5pbXBvcnQgeyBDb2dUaWZmVGFnQmFzZSB9IGZyb20gJy4vdGlmZi50YWcuYmFzZS5qcyc7XG5cbi8qKlxuICogVGlmZlRhZyBmb3Igb2Zmc2V0IGFycmF5c1xuICpcbiAqIEFsbG93cyBpbmRpdmlkdWFsIGFjY2VzcyB0byBzcGVjaWZpYyByZWNvcmRzIHdpdGhvdXQgaGF2aW5nIHRvIHJlYWQgdGhlIGVudGlyZSB0YWcgaW4uXG4gKi9cbmV4cG9ydCBjbGFzcyBDb2dUaWZmVGFnT2Zmc2V0IGV4dGVuZHMgQ29nVGlmZlRhZ0Jhc2U8bnVtYmVyW10+IHtcbiAgICBwcml2YXRlIGxvYWRlZFZhbHVlczogbnVtYmVyW10gfCBudWxsID0gbnVsbDtcblxuICAgIGNvbnN0cnVjdG9yKHRhZ0lkOiBudW1iZXIsIHRpZmY6IENvZ1RpZmYsIG9mZnNldDogbnVtYmVyKSB7XG4gICAgICAgIHN1cGVyKHRhZ0lkLCB0aWZmLCBvZmZzZXQpO1xuICAgIH1cblxuICAgIGdldCB2YWx1ZSgpOiBudW1iZXJbXSB8IG51bGwge1xuICAgICAgICBpZiAodGhpcy5sb2FkZWRWYWx1ZXMgIT0gbnVsbCkgcmV0dXJuIHRoaXMubG9hZGVkVmFsdWVzO1xuXG4gICAgICAgIGlmICh0aGlzLmhhc0J5dGVzKSB7XG4gICAgICAgICAgICB0aGlzLnJlYWRWYWx1ZSgpO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9hZGVkVmFsdWVzO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLyoqIExvYWQgdGhlIGVudGlyZSBpbmRleCBpbnRvIG1lbW9yeSAqL1xuICAgIGFzeW5jIGxvYWQobDogTG9nVHlwZSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBhd2FpdCB0aGlzLnRpZmYuc291cmNlLmxvYWRCeXRlcyh0aGlzLnZhbHVlUG9pbnRlciwgdGhpcy5kYXRhTGVuZ3RoLCBsKTtcbiAgICAgICAgdGhpcy5yZWFkVmFsdWUoKTtcbiAgICB9XG5cbiAgICByZWFkVmFsdWUoKTogbnVtYmVyW10ge1xuICAgICAgICBjb25zdCB2YWwgPSBzdXBlci5yZWFkVmFsdWUoKTtcbiAgICAgICAgLy8gaWYgb25seSBvbmUgdmFsdWUgaXMgcmVhZCBpbiwgaXQgd2lsbCBub3QgYmUgcmV0dXJuZWQgYXMgYSBhcnJheVxuICAgICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGVkVmFsdWVzID0gW3ZhbF07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZFZhbHVlcyA9IHZhbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5sb2FkZWRWYWx1ZXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVhZCBhIHNwZWNpZmljIHZhbHVlIGZyb20gdGhlIG9mZnNldCBhcnJheVxuICAgICAqIEBwYXJhbSBpbmRleCBpbmRleCB0byByZWFkIGF0XG4gICAgICovXG4gICAgYXN5bmMgZ2V0VmFsdWVBdChpbmRleDogbnVtYmVyLCBsPzogTG9nVHlwZSk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgICAgIGlmICh0aGlzLmxvYWRlZFZhbHVlcykgcmV0dXJuIHRoaXMubG9hZGVkVmFsdWVzW2luZGV4XTtcblxuICAgICAgICBjb25zdCBkYXRhU2l6ZSA9IHRoaXMuZGF0YVR5cGVTaXplO1xuICAgICAgICBjb25zdCB2YWx1ZU9mZnNldCA9IHRoaXMudmFsdWVQb2ludGVyICsgZGF0YVNpemUgKiBpbmRleDtcbiAgICAgICAgY29uc3QgY29udmVydCA9IGdldFRpZmZUYWdWYWx1ZVJlYWRlcih0aGlzLmRhdGFUeXBlKTtcblxuICAgICAgICBpZiAoIXRoaXMudGlmZi5zb3VyY2UuaGFzQnl0ZXModmFsdWVPZmZzZXQsIGRhdGFTaXplKSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy50aWZmLnNvdXJjZS5sb2FkQnl0ZXModmFsdWVPZmZzZXQsIGRhdGFTaXplLCBsKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udmVydCh0aGlzLnRpZmYuc291cmNlLCB2YWx1ZU9mZnNldCkgYXMgbnVtYmVyO1xuICAgIH1cbn1cbiJdfQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi50YWcub2Zmc2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JlYWQvdGFnL3RpZmYudGFnLm9mZnNldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxjQUF3QjtJQUcxRCxZQUFZLEtBQWEsRUFBRSxJQUFhLEVBQUUsTUFBYztRQUNwRCxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztRQUh2QixpQkFBWSxHQUFvQixJQUFJLENBQUM7SUFJN0MsQ0FBQztJQUVELElBQUksS0FBSztRQUNMLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJO1lBQUUsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBRXhELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDNUI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLEtBQUssQ0FBQyxJQUFJO1FBQ04sTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzlCLG1FQUFtRTtRQUNuRSxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRTtZQUN6QixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDN0I7YUFBTTtZQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDO1NBQzNCO1FBQ0QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQWE7UUFDMUIsSUFBSSxJQUFJLENBQUMsWUFBWTtZQUFFLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ25DLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN6RCxNQUFNLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLEVBQUU7WUFDbkQsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQzNEO1FBQ0QsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFXLENBQUM7SUFDNUQsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29nVGlmZiB9IGZyb20gJy4uLy4uL2NvZy50aWZmLmpzJztcbmltcG9ydCB7IGdldFRpZmZUYWdWYWx1ZVJlYWRlciB9IGZyb20gJy4uL3RpZmYudmFsdWUucmVhZGVyLmpzJztcbmltcG9ydCB7IENvZ1RpZmZUYWdCYXNlIH0gZnJvbSAnLi90aWZmLnRhZy5iYXNlLmpzJztcblxuLyoqXG4gKiBUaWZmVGFnIGZvciBvZmZzZXQgYXJyYXlzXG4gKlxuICogQWxsb3dzIGluZGl2aWR1YWwgYWNjZXNzIHRvIHNwZWNpZmljIHJlY29yZHMgd2l0aG91dCBoYXZpbmcgdG8gcmVhZCB0aGUgZW50aXJlIHRhZyBpbi5cbiAqL1xuZXhwb3J0IGNsYXNzIENvZ1RpZmZUYWdPZmZzZXQgZXh0ZW5kcyBDb2dUaWZmVGFnQmFzZTxudW1iZXJbXT4ge1xuICAgIHByaXZhdGUgbG9hZGVkVmFsdWVzOiBudW1iZXJbXSB8IG51bGwgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IodGFnSWQ6IG51bWJlciwgdGlmZjogQ29nVGlmZiwgb2Zmc2V0OiBudW1iZXIpIHtcbiAgICAgICAgc3VwZXIodGFnSWQsIHRpZmYsIG9mZnNldCk7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IG51bWJlcltdIHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLmxvYWRlZFZhbHVlcyAhPSBudWxsKSByZXR1cm4gdGhpcy5sb2FkZWRWYWx1ZXM7XG5cbiAgICAgICAgaWYgKHRoaXMuaGFzQnl0ZXMpIHtcbiAgICAgICAgICAgIHRoaXMucmVhZFZhbHVlKCk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5sb2FkZWRWYWx1ZXM7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvKiogTG9hZCB0aGUgZW50aXJlIGluZGV4IGludG8gbWVtb3J5ICovXG4gICAgYXN5bmMgbG9hZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgYXdhaXQgdGhpcy50aWZmLnNvdXJjZS5sb2FkQnl0ZXModGhpcy52YWx1ZVBvaW50ZXIsIHRoaXMuZGF0YUxlbmd0aCk7XG4gICAgICAgIHRoaXMucmVhZFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcmVhZFZhbHVlKCk6IG51bWJlcltdIHtcbiAgICAgICAgY29uc3QgdmFsID0gc3VwZXIucmVhZFZhbHVlKCk7XG4gICAgICAgIC8vIGlmIG9ubHkgb25lIHZhbHVlIGlzIHJlYWQgaW4sIGl0IHdpbGwgbm90IGJlIHJldHVybmVkIGFzIGEgYXJyYXlcbiAgICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZFZhbHVlcyA9IFt2YWxdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5sb2FkZWRWYWx1ZXMgPSB2YWw7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMubG9hZGVkVmFsdWVzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlYWQgYSBzcGVjaWZpYyB2YWx1ZSBmcm9tIHRoZSBvZmZzZXQgYXJyYXlcbiAgICAgKiBAcGFyYW0gaW5kZXggaW5kZXggdG8gcmVhZCBhdFxuICAgICAqL1xuICAgIGFzeW5jIGdldFZhbHVlQXQoaW5kZXg6IG51bWJlcik6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgICAgIGlmICh0aGlzLmxvYWRlZFZhbHVlcykgcmV0dXJuIHRoaXMubG9hZGVkVmFsdWVzW2luZGV4XTtcblxuICAgICAgICBjb25zdCBkYXRhU2l6ZSA9IHRoaXMuZGF0YVR5cGVTaXplO1xuICAgICAgICBjb25zdCB2YWx1ZU9mZnNldCA9IHRoaXMudmFsdWVQb2ludGVyICsgZGF0YVNpemUgKiBpbmRleDtcbiAgICAgICAgY29uc3QgY29udmVydCA9IGdldFRpZmZUYWdWYWx1ZVJlYWRlcih0aGlzLmRhdGFUeXBlKTtcblxuICAgICAgICBpZiAoIXRoaXMudGlmZi5zb3VyY2UuaGFzQnl0ZXModmFsdWVPZmZzZXQsIGRhdGFTaXplKSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy50aWZmLnNvdXJjZS5sb2FkQnl0ZXModmFsdWVPZmZzZXQsIGRhdGFTaXplKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udmVydCh0aGlzLnRpZmYuc291cmNlLCB2YWx1ZU9mZnNldCkgYXMgbnVtYmVyO1xuICAgIH1cbn1cbiJdfQ==
@@ -14,4 +14,4 @@ export class CogTifTagStatic extends CogTiffTagBase {
14
14
  return this._value;
15
15
  }
16
16
  }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi50YWcuc3RhdGljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JlYWQvdGFnL3RpZmYudGFnLnN0YXRpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxPQUFPLGVBQW1CLFNBQVEsY0FBaUI7SUFBekQ7O1FBQ0ksWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixXQUFNLEdBQWEsSUFBSSxDQUFDO0lBVTVCLENBQUM7SUFSRyxxQ0FBcUM7SUFDckMsSUFBSSxLQUFLO1FBQ0wsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssRUFBRTtZQUN4QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztTQUN2QjtRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU8sQ0FBQztJQUN4QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2dUaWZmVGFnQmFzZSB9IGZyb20gJy4vdGlmZi50YWcuYmFzZS5qcyc7XG5cbmV4cG9ydCBjbGFzcyBDb2dUaWZUYWdTdGF0aWM8VD4gZXh0ZW5kcyBDb2dUaWZmVGFnQmFzZTxUPiB7XG4gICAgX2lzUmVhZCA9IGZhbHNlO1xuICAgIF92YWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqIExhenkgcmVhZCB0aGUgaW5saW5lIHRpZmYgdGFncyAqL1xuICAgIGdldCB2YWx1ZSgpOiBUIHtcbiAgICAgICAgaWYgKHRoaXMuX2lzUmVhZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5yZWFkVmFsdWUoKTtcbiAgICAgICAgICAgIHRoaXMuX2lzUmVhZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlITtcbiAgICB9XG59XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlmZi50YWcuc3RhdGljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JlYWQvdGFnL3RpZmYudGFnLnN0YXRpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxPQUFPLGVBQW1CLFNBQVEsY0FBaUI7SUFBekQ7O1FBQ0ksWUFBTyxHQUFHLEtBQUssQ0FBQztRQUNoQixXQUFNLEdBQWEsSUFBSSxDQUFDO0lBVTVCLENBQUM7SUFSRyxxQ0FBcUM7SUFDckMsSUFBSSxLQUFLO1FBQ0wsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssRUFBRTtZQUN4QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztTQUN2QjtRQUNELE9BQU8sSUFBSSxDQUFDLE1BQVcsQ0FBQztJQUM1QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2dUaWZmVGFnQmFzZSB9IGZyb20gJy4vdGlmZi50YWcuYmFzZS5qcyc7XG5cbmV4cG9ydCBjbGFzcyBDb2dUaWZUYWdTdGF0aWM8VD4gZXh0ZW5kcyBDb2dUaWZmVGFnQmFzZTxUPiB7XG4gICAgX2lzUmVhZCA9IGZhbHNlO1xuICAgIF92YWx1ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqIExhenkgcmVhZCB0aGUgaW5saW5lIHRpZmYgdGFncyAqL1xuICAgIGdldCB2YWx1ZSgpOiBUIHtcbiAgICAgICAgaWYgKHRoaXMuX2lzUmVhZCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5yZWFkVmFsdWUoKTtcbiAgICAgICAgICAgIHRoaXMuX2lzUmVhZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlIGFzIFQ7XG4gICAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cogeotiff/core",
3
- "version": "6.0.2",
3
+ "version": "7.0.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/blacha/cogeotiff.git",
@@ -18,16 +18,15 @@
18
18
  "test": "ospec --globs 'build/**/*.test.js'"
19
19
  },
20
20
  "dependencies": {
21
- "@chunkd/core": "^7.2.2",
21
+ "@chunkd/core": "^8.1.0",
22
22
  "ieee754": "^1.1.13"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/node": "^14.14.22",
26
- "@types/ospec": "^4.0.0",
27
- "ospec": "^4.0.0"
26
+ "@types/ospec": "^4.0.3"
28
27
  },
29
28
  "publishConfig": {
30
29
  "access": "public"
31
30
  },
32
- "gitHead": "c2abab63abb6b570f670138fa4e451a46fb1fed3"
31
+ "gitHead": "a2352ec8df0f0eb5f5dddacc0f3cdea855dceda3"
33
32
  }