ag-psd 30.1.1 → 30.2.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.
Files changed (134) hide show
  1. package/.v8-cache/v24.13.1-x64-cf738c9d/017325ac +0 -0
  2. package/.v8-cache/v24.13.1-x64-cf738c9d/043c7b90 +0 -0
  3. package/.v8-cache/v24.13.1-x64-cf738c9d/05135617 +0 -0
  4. package/.v8-cache/v24.13.1-x64-cf738c9d/059f8558 +0 -0
  5. package/.v8-cache/v24.13.1-x64-cf738c9d/0706ecb8 +0 -0
  6. package/.v8-cache/v24.13.1-x64-cf738c9d/0db754a7 +0 -0
  7. package/.v8-cache/v24.13.1-x64-cf738c9d/1130885f +0 -0
  8. package/.v8-cache/v24.13.1-x64-cf738c9d/15f0e479 +0 -0
  9. package/.v8-cache/v24.13.1-x64-cf738c9d/20477c23 +0 -0
  10. package/.v8-cache/v24.13.1-x64-cf738c9d/20dfa422 +0 -0
  11. package/.v8-cache/v24.13.1-x64-cf738c9d/2a19133e +0 -0
  12. package/.v8-cache/v24.13.1-x64-cf738c9d/2b069ee0 +0 -0
  13. package/.v8-cache/v24.13.1-x64-cf738c9d/2de09439 +0 -0
  14. package/.v8-cache/v24.13.1-x64-cf738c9d/2e44f5f0 +0 -0
  15. package/.v8-cache/v24.13.1-x64-cf738c9d/2fb229a9 +0 -0
  16. package/.v8-cache/v24.13.1-x64-cf738c9d/3144b401 +0 -0
  17. package/.v8-cache/v24.13.1-x64-cf738c9d/37481985 +0 -0
  18. package/.v8-cache/v24.13.1-x64-cf738c9d/4511bacf +0 -0
  19. package/.v8-cache/v24.13.1-x64-cf738c9d/49d22b79 +0 -0
  20. package/.v8-cache/v24.13.1-x64-cf738c9d/4f5702bd +0 -0
  21. package/.v8-cache/v24.13.1-x64-cf738c9d/514cc428 +0 -0
  22. package/.v8-cache/v24.13.1-x64-cf738c9d/57d3380b +0 -0
  23. package/.v8-cache/v24.13.1-x64-cf738c9d/6024ce3f +0 -0
  24. package/.v8-cache/v24.13.1-x64-cf738c9d/61735b23 +0 -0
  25. package/.v8-cache/v24.13.1-x64-cf738c9d/63dbdb75 +0 -0
  26. package/.v8-cache/v24.13.1-x64-cf738c9d/6cbfc0ec +0 -0
  27. package/.v8-cache/v24.13.1-x64-cf738c9d/6f08372c +0 -0
  28. package/.v8-cache/v24.13.1-x64-cf738c9d/7100ee08 +0 -0
  29. package/.v8-cache/v24.13.1-x64-cf738c9d/71df9cb3 +0 -0
  30. package/.v8-cache/v24.13.1-x64-cf738c9d/75e41e43 +0 -0
  31. package/.v8-cache/v24.13.1-x64-cf738c9d/7ea06cea +0 -0
  32. package/.v8-cache/v24.13.1-x64-cf738c9d/8568576b +0 -0
  33. package/.v8-cache/v24.13.1-x64-cf738c9d/87372817 +0 -0
  34. package/.v8-cache/v24.13.1-x64-cf738c9d/87cf2209 +0 -0
  35. package/.v8-cache/v24.13.1-x64-cf738c9d/932f0770 +0 -0
  36. package/.v8-cache/v24.13.1-x64-cf738c9d/a79a40bb +0 -0
  37. package/.v8-cache/v24.13.1-x64-cf738c9d/a7e80865 +0 -0
  38. package/.v8-cache/v24.13.1-x64-cf738c9d/acc36e66 +0 -0
  39. package/.v8-cache/v24.13.1-x64-cf738c9d/b3c2fab7 +0 -0
  40. package/.v8-cache/v24.13.1-x64-cf738c9d/b69ed3a3 +0 -0
  41. package/.v8-cache/v24.13.1-x64-cf738c9d/bdff1628 +0 -0
  42. package/.v8-cache/v24.13.1-x64-cf738c9d/c0b789d2 +0 -0
  43. package/.v8-cache/v24.13.1-x64-cf738c9d/c314aece +0 -0
  44. package/.v8-cache/v24.13.1-x64-cf738c9d/cfc49f4f +0 -0
  45. package/.v8-cache/v24.13.1-x64-cf738c9d/cff9434a +0 -0
  46. package/.v8-cache/v24.13.1-x64-cf738c9d/d02dd6f7 +0 -0
  47. package/.v8-cache/v24.13.1-x64-cf738c9d/dc86f000 +0 -0
  48. package/.v8-cache/v24.13.1-x64-cf738c9d/de74e659 +0 -0
  49. package/.v8-cache/v24.13.1-x64-cf738c9d/e03e2acd +0 -0
  50. package/.v8-cache/v24.13.1-x64-cf738c9d/e158d332 +0 -0
  51. package/.v8-cache/v24.13.1-x64-cf738c9d/e6735171 +0 -0
  52. package/.v8-cache/v24.13.1-x64-cf738c9d/e6745c2b +0 -0
  53. package/.v8-cache/v24.13.1-x64-cf738c9d/e6b99945 +0 -0
  54. package/.v8-cache/v24.13.1-x64-cf738c9d/eeeebdfe +0 -0
  55. package/.v8-cache/v24.13.1-x64-cf738c9d/fbca6276 +0 -0
  56. package/.v8-cache/v24.13.1-x64-cf738c9d/fc97d72d +0 -0
  57. package/.v8-cache/v24.13.1-x64-cf738c9d/fd0a2987 +0 -0
  58. package/CHANGELOG.md +3 -0
  59. package/README.md +1 -1
  60. package/README_PSD.md +1 -1
  61. package/dist/abr.js +43 -56
  62. package/dist/abr.js.map +1 -1
  63. package/dist/additionalInfo.js +770 -808
  64. package/dist/additionalInfo.js.map +1 -1
  65. package/dist/ase.js +21 -21
  66. package/dist/ase.js.map +1 -1
  67. package/dist/bundle.js +2592 -2778
  68. package/dist/csh.js +18 -29
  69. package/dist/csh.js.map +1 -1
  70. package/dist/descriptor.js +234 -269
  71. package/dist/descriptor.js.map +1 -1
  72. package/dist/effectsHelpers.js +91 -112
  73. package/dist/effectsHelpers.js.map +1 -1
  74. package/dist/engineData.js +45 -51
  75. package/dist/engineData.js.map +1 -1
  76. package/dist/engineData2.js +8 -9
  77. package/dist/engineData2.js.map +1 -1
  78. package/dist/helpers.js +75 -81
  79. package/dist/helpers.js.map +1 -1
  80. package/dist/imageResources.js +342 -381
  81. package/dist/imageResources.js.map +1 -1
  82. package/dist/index.js +6 -6
  83. package/dist/index.js.map +1 -1
  84. package/dist/initializeCanvas.js +2 -2
  85. package/dist/initializeCanvas.js.map +1 -1
  86. package/dist/jpeg.js +279 -279
  87. package/dist/jpeg.js.map +1 -1
  88. package/dist/psdReader.js +336 -347
  89. package/dist/psdReader.js.map +1 -1
  90. package/dist/psdWriter.d.ts +2 -1
  91. package/dist/psdWriter.js +225 -206
  92. package/dist/psdWriter.js.map +1 -1
  93. package/dist/text.js +98 -122
  94. package/dist/text.js.map +1 -1
  95. package/dist/utf8.js +22 -22
  96. package/dist/utf8.js.map +1 -1
  97. package/dist-es/abr.js +41 -54
  98. package/dist-es/abr.js.map +1 -1
  99. package/dist-es/additionalInfo.js +765 -803
  100. package/dist-es/additionalInfo.js.map +1 -1
  101. package/dist-es/ase.js +20 -20
  102. package/dist-es/ase.js.map +1 -1
  103. package/dist-es/csh.js +16 -27
  104. package/dist-es/csh.js.map +1 -1
  105. package/dist-es/descriptor.js +284 -319
  106. package/dist-es/descriptor.js.map +1 -1
  107. package/dist-es/effectsHelpers.js +88 -109
  108. package/dist-es/effectsHelpers.js.map +1 -1
  109. package/dist-es/engineData.js +45 -51
  110. package/dist-es/engineData.js.map +1 -1
  111. package/dist-es/engineData2.js +8 -9
  112. package/dist-es/engineData2.js.map +1 -1
  113. package/dist-es/helpers.js +79 -85
  114. package/dist-es/helpers.js.map +1 -1
  115. package/dist-es/imageResources.js +338 -377
  116. package/dist-es/imageResources.js.map +1 -1
  117. package/dist-es/index.js +4 -4
  118. package/dist-es/index.js.map +1 -1
  119. package/dist-es/jpeg.js +279 -279
  120. package/dist-es/jpeg.js.map +1 -1
  121. package/dist-es/psdReader.js +333 -344
  122. package/dist-es/psdReader.js.map +1 -1
  123. package/dist-es/psdWriter.d.ts +2 -1
  124. package/dist-es/psdWriter.js +220 -202
  125. package/dist-es/psdWriter.js.map +1 -1
  126. package/dist-es/text.js +98 -122
  127. package/dist-es/text.js.map +1 -1
  128. package/dist-es/utf8.js +22 -22
  129. package/dist-es/utf8.js.map +1 -1
  130. package/package.json +1 -1
  131. package/publish.js +24 -0
  132. package/src/additionalInfo.ts +15 -11
  133. package/src/psdWriter.ts +76 -1
  134. package/tsconfig.json +4 -3
@@ -1,31 +1,20 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
1
  import { toByteArray } from 'base64-js';
13
2
  import { readUnicodeString, readUint32, readUint16, readUint8, readFloat64, readBytes, skipBytes, readFloat32, readInt16, readFixedPoint32, readSignature, checkSignature, readSection, readColor, readInt32, readAsciiString } from './psdReader';
14
3
  import { writeUnicodeString, writeUint32, writeUint8, writeFloat64, writeUint16, writeBytes, writeInt16, writeFloat32, writeFixedPoint32, writeUnicodeStringWithPadding, writeColor, writeSignature, writeSection, writeInt32, writeAsciiString, } from './psdWriter';
15
4
  import { createCanvasFromData, createEnum, MOCK_HANDLERS } from './helpers';
16
5
  import { decodeString, encodeString } from './utf8';
17
6
  import { ESliceBGColorType, ESliceHorzAlign, ESliceOrigin, ESliceType, ESliceVertAlign, frac, parseTrackList, readVersionAndDescriptor, serializeTrackList, writeVersionAndDescriptor } from './descriptor';
18
- export var resourceHandlers = [];
19
- export var resourceHandlersMap = {};
7
+ export const resourceHandlers = [];
8
+ export const resourceHandlersMap = {};
20
9
  function addHandler(key, has, read, write) {
21
- var handler = { key: key, has: has, read: read, write: write };
10
+ const handler = { key, has, read, write };
22
11
  resourceHandlers.push(handler);
23
12
  resourceHandlersMap[handler.key] = handler;
24
13
  }
25
- var LOG_MOCK_HANDLERS = false;
26
- var RESOLUTION_UNITS = [undefined, 'PPI', 'PPCM'];
27
- var MEASUREMENT_UNITS = [undefined, 'Inches', 'Centimeters', 'Points', 'Picas', 'Columns'];
28
- var hex = '0123456789abcdef';
14
+ const LOG_MOCK_HANDLERS = false;
15
+ const RESOLUTION_UNITS = [undefined, 'PPI', 'PPCM'];
16
+ const MEASUREMENT_UNITS = [undefined, 'Inches', 'Centimeters', 'Points', 'Picas', 'Columns'];
17
+ const hex = '0123456789abcdef';
29
18
  function charToNibble(code) {
30
19
  return code <= 57 ? code - 48 : code - 87;
31
20
  }
@@ -33,25 +22,25 @@ function byteAt(value, index) {
33
22
  return (charToNibble(value.charCodeAt(index)) << 4) | charToNibble(value.charCodeAt(index + 1));
34
23
  }
35
24
  function readUtf8String(reader, length) {
36
- var buffer = readBytes(reader, length);
25
+ const buffer = readBytes(reader, length);
37
26
  return decodeString(buffer);
38
27
  }
39
28
  function writeUtf8String(writer, value) {
40
- var buffer = encodeString(value);
29
+ const buffer = encodeString(value);
41
30
  writeBytes(writer, buffer);
42
31
  }
43
32
  function readEncodedString(reader) {
44
- var length = readUint8(reader);
45
- var buffer = readBytes(reader, length);
46
- var notAscii = false;
47
- for (var i = 0; i < buffer.byteLength; i++) {
33
+ const length = readUint8(reader);
34
+ const buffer = readBytes(reader, length);
35
+ let notAscii = false;
36
+ for (let i = 0; i < buffer.byteLength; i++) {
48
37
  if (buffer[i] & 0x80) {
49
38
  notAscii = true;
50
39
  break;
51
40
  }
52
41
  }
53
42
  if (notAscii) {
54
- var decoder = new TextDecoder('gbk');
43
+ const decoder = new TextDecoder('gbk');
55
44
  return decoder.decode(buffer);
56
45
  }
57
46
  else {
@@ -59,61 +48,61 @@ function readEncodedString(reader) {
59
48
  }
60
49
  }
61
50
  function writeEncodedString(writer, value) {
62
- var ascii = '';
63
- for (var i = 0, code = value.codePointAt(i++); code !== undefined; code = value.codePointAt(i++)) {
51
+ let ascii = '';
52
+ for (let i = 0, code = value.codePointAt(i++); code !== undefined; code = value.codePointAt(i++)) {
64
53
  ascii += code > 0x7f ? '?' : String.fromCodePoint(code);
65
54
  }
66
- var buffer = encodeString(ascii);
55
+ const buffer = encodeString(ascii);
67
56
  writeUint8(writer, buffer.byteLength);
68
57
  writeBytes(writer, buffer);
69
58
  }
70
59
  MOCK_HANDLERS && addHandler(1028, // IPTC-NAA record
71
- function (// IPTC-NAA record
72
- target) { return target._ir1028 !== undefined; }, function (reader, target, left) {
60
+ // IPTC-NAA record
61
+ target => target._ir1028 !== undefined, (reader, target, left) => {
73
62
  LOG_MOCK_HANDLERS && console.log('image resource 1028', left());
74
63
  target._ir1028 = readBytes(reader, left());
75
- }, function (writer, target) {
64
+ }, (writer, target) => {
76
65
  writeBytes(writer, target._ir1028);
77
66
  });
78
- addHandler(1061, function (target) { return target.captionDigest !== undefined; }, function (reader, target) {
79
- var captionDigest = '';
80
- for (var i = 0; i < 16; i++) {
81
- var byte = readUint8(reader);
67
+ addHandler(1061, target => target.captionDigest !== undefined, (reader, target) => {
68
+ let captionDigest = '';
69
+ for (let i = 0; i < 16; i++) {
70
+ const byte = readUint8(reader);
82
71
  captionDigest += hex[byte >> 4];
83
72
  captionDigest += hex[byte & 0xf];
84
73
  }
85
74
  target.captionDigest = captionDigest;
86
- }, function (writer, target) {
87
- for (var i = 0; i < 16; i++) {
75
+ }, (writer, target) => {
76
+ for (let i = 0; i < 16; i++) {
88
77
  writeUint8(writer, byteAt(target.captionDigest, i * 2));
89
78
  }
90
79
  });
91
- addHandler(1060, function (target) { return target.xmpMetadata !== undefined; }, function (reader, target, left) {
80
+ addHandler(1060, target => target.xmpMetadata !== undefined, (reader, target, left) => {
92
81
  target.xmpMetadata = readUtf8String(reader, left());
93
- }, function (writer, target) {
82
+ }, (writer, target) => {
94
83
  writeUtf8String(writer, target.xmpMetadata);
95
84
  });
96
- var Inte = createEnum('Inte', 'perceptual', {
85
+ const Inte = createEnum('Inte', 'perceptual', {
97
86
  'perceptual': 'Img ',
98
87
  'saturation': 'Grp ',
99
88
  'relative colorimetric': 'Clrm',
100
89
  'absolute colorimetric': 'AClr',
101
90
  });
102
91
  MOCK_HANDLERS && addHandler(1085, // Windows DEVMODE. Variable OS specific info for Windows.
103
- function (// Windows DEVMODE. Variable OS specific info for Windows.
104
- target) { return target._ir1085 !== undefined; }, function (reader, target, left) {
92
+ // Windows DEVMODE. Variable OS specific info for Windows.
93
+ target => target._ir1085 !== undefined, (reader, target, left) => {
105
94
  target._ir1085 = readBytes(reader, left());
106
- }, function (writer, target) {
95
+ }, (writer, target) => {
107
96
  writeBytes(writer, target._ir1085);
108
97
  });
109
- addHandler(1082, function (target) { return target.printInformation !== undefined; }, function (reader, target) {
98
+ addHandler(1082, target => target.printInformation !== undefined, (reader, target) => {
110
99
  var _a, _b;
111
- var desc = readVersionAndDescriptor(reader);
100
+ const desc = readVersionAndDescriptor(reader);
112
101
  target.printInformation = {
113
102
  printerName: desc.printerName || '',
114
103
  renderingIntent: Inte.decode((_a = desc.Inte) !== null && _a !== void 0 ? _a : 'Inte.Img '),
115
104
  };
116
- var info = target.printInformation;
105
+ const info = target.printInformation;
117
106
  if (desc.PstS !== undefined)
118
107
  info.printerManagesColors = desc.PstS;
119
108
  if (desc['Nm '] !== undefined)
@@ -137,10 +126,10 @@ addHandler(1082, function (target) { return target.printInformation !== undefine
137
126
  };
138
127
  }
139
128
  }
140
- }, function (writer, target) {
129
+ }, (writer, target) => {
141
130
  var _a, _b;
142
- var info = target.printInformation;
143
- var desc = {};
131
+ const info = target.printInformation;
132
+ const desc = {};
144
133
  if (info.printerManagesColors) {
145
134
  desc.PstS = true;
146
135
  }
@@ -165,39 +154,39 @@ addHandler(1082, function (target) { return target.printInformation !== undefine
165
154
  }
166
155
  else {
167
156
  desc.printProofSetup = {
168
- Bltn: ((_b = info.proofSetup) === null || _b === void 0 ? void 0 : _b.builtin) ? "builtinProof.".concat(info.proofSetup.builtin) : 'builtinProof.proofCMYK',
157
+ Bltn: ((_b = info.proofSetup) === null || _b === void 0 ? void 0 : _b.builtin) ? `builtinProof.${info.proofSetup.builtin}` : 'builtinProof.proofCMYK',
169
158
  };
170
159
  }
171
160
  writeVersionAndDescriptor(writer, '', 'printOutput', desc);
172
161
  });
173
162
  MOCK_HANDLERS && addHandler(1083, // Print style
174
- function (// Print style
175
- target) { return target._ir1083 !== undefined; }, function (reader, target, left) {
163
+ // Print style
164
+ target => target._ir1083 !== undefined, (reader, target, left) => {
176
165
  LOG_MOCK_HANDLERS && console.log('image resource 1083', left());
177
166
  target._ir1083 = readBytes(reader, left());
178
167
  // TODO:
179
168
  // const desc = readVersionAndDescriptor(reader);
180
169
  // console.log('1083', require('util').inspect(desc, false, 99, true));
181
- }, function (writer, target) {
170
+ }, (writer, target) => {
182
171
  writeBytes(writer, target._ir1083);
183
172
  });
184
- addHandler(1005, function (target) { return target.resolutionInfo !== undefined; }, function (reader, target) {
185
- var horizontalResolution = readFixedPoint32(reader);
186
- var horizontalResolutionUnit = readUint16(reader);
187
- var widthUnit = readUint16(reader);
188
- var verticalResolution = readFixedPoint32(reader);
189
- var verticalResolutionUnit = readUint16(reader);
190
- var heightUnit = readUint16(reader);
173
+ addHandler(1005, target => target.resolutionInfo !== undefined, (reader, target) => {
174
+ const horizontalResolution = readFixedPoint32(reader);
175
+ const horizontalResolutionUnit = readUint16(reader);
176
+ const widthUnit = readUint16(reader);
177
+ const verticalResolution = readFixedPoint32(reader);
178
+ const verticalResolutionUnit = readUint16(reader);
179
+ const heightUnit = readUint16(reader);
191
180
  target.resolutionInfo = {
192
- horizontalResolution: horizontalResolution,
181
+ horizontalResolution,
193
182
  horizontalResolutionUnit: RESOLUTION_UNITS[horizontalResolutionUnit] || 'PPI',
194
183
  widthUnit: MEASUREMENT_UNITS[widthUnit] || 'Inches',
195
- verticalResolution: verticalResolution,
184
+ verticalResolution,
196
185
  verticalResolutionUnit: RESOLUTION_UNITS[verticalResolutionUnit] || 'PPI',
197
186
  heightUnit: MEASUREMENT_UNITS[heightUnit] || 'Inches',
198
187
  };
199
- }, function (writer, target) {
200
- var info = target.resolutionInfo;
188
+ }, (writer, target) => {
189
+ const info = target.resolutionInfo;
201
190
  writeFixedPoint32(writer, info.horizontalResolution || 0);
202
191
  writeUint16(writer, Math.max(1, RESOLUTION_UNITS.indexOf(info.horizontalResolutionUnit)));
203
192
  writeUint16(writer, Math.max(1, MEASUREMENT_UNITS.indexOf(info.widthUnit)));
@@ -205,26 +194,26 @@ addHandler(1005, function (target) { return target.resolutionInfo !== undefined;
205
194
  writeUint16(writer, Math.max(1, RESOLUTION_UNITS.indexOf(info.verticalResolutionUnit)));
206
195
  writeUint16(writer, Math.max(1, MEASUREMENT_UNITS.indexOf(info.heightUnit)));
207
196
  });
208
- var printScaleStyles = ['centered', 'size to fit', 'user defined'];
209
- addHandler(1062, function (target) { return target.printScale !== undefined; }, function (reader, target) {
197
+ const printScaleStyles = ['centered', 'size to fit', 'user defined'];
198
+ addHandler(1062, target => target.printScale !== undefined, (reader, target) => {
210
199
  target.printScale = {
211
200
  style: printScaleStyles[readInt16(reader)],
212
201
  x: readFloat32(reader),
213
202
  y: readFloat32(reader),
214
203
  scale: readFloat32(reader),
215
204
  };
216
- }, function (writer, target) {
217
- var _a = target.printScale, style = _a.style, x = _a.x, y = _a.y, scale = _a.scale;
205
+ }, (writer, target) => {
206
+ const { style, x, y, scale } = target.printScale;
218
207
  writeInt16(writer, Math.max(0, printScaleStyles.indexOf(style)));
219
208
  writeFloat32(writer, x || 0);
220
209
  writeFloat32(writer, y || 0);
221
210
  writeFloat32(writer, scale || 0);
222
211
  });
223
- addHandler(1006, function (target) { return target.alphaChannelNames !== undefined; }, function (reader, target, left) {
212
+ addHandler(1006, target => target.alphaChannelNames !== undefined, (reader, target, left) => {
224
213
  if (!target.alphaChannelNames) { // skip if the unicode versions are already read
225
214
  target.alphaChannelNames = [];
226
215
  while (left() > 0) {
227
- var value = readEncodedString(reader);
216
+ const value = readEncodedString(reader);
228
217
  // const value = readPascalString(reader, 1);
229
218
  target.alphaChannelNames.push(value);
230
219
  }
@@ -232,45 +221,42 @@ addHandler(1006, function (target) { return target.alphaChannelNames !== undefin
232
221
  else {
233
222
  skipBytes(reader, left());
234
223
  }
235
- }, function (writer, target) {
236
- for (var _i = 0, _a = target.alphaChannelNames; _i < _a.length; _i++) {
237
- var name_1 = _a[_i];
238
- writeEncodedString(writer, name_1);
224
+ }, (writer, target) => {
225
+ for (const name of target.alphaChannelNames) {
226
+ writeEncodedString(writer, name);
239
227
  // writePascalString(writer, name, 1);
240
228
  }
241
229
  });
242
- addHandler(1045, function (target) { return target.alphaChannelNames !== undefined; }, function (reader, target, left) {
230
+ addHandler(1045, target => target.alphaChannelNames !== undefined, (reader, target, left) => {
243
231
  target.alphaChannelNames = [];
244
232
  while (left() > 0) {
245
233
  target.alphaChannelNames.push(readUnicodeString(reader));
246
234
  }
247
- }, function (writer, target) {
248
- for (var _i = 0, _a = target.alphaChannelNames; _i < _a.length; _i++) {
249
- var name_2 = _a[_i];
250
- writeUnicodeStringWithPadding(writer, name_2);
235
+ }, (writer, target) => {
236
+ for (const name of target.alphaChannelNames) {
237
+ writeUnicodeStringWithPadding(writer, name);
251
238
  }
252
239
  });
253
- MOCK_HANDLERS && addHandler(1077, function (target) { return target._ir1077 !== undefined; }, function (reader, target, left) {
240
+ MOCK_HANDLERS && addHandler(1077, target => target._ir1077 !== undefined, (reader, target, left) => {
254
241
  LOG_MOCK_HANDLERS && console.log('image resource 1077', left());
255
242
  target._ir1077 = readBytes(reader, left());
256
- }, function (writer, target) {
243
+ }, (writer, target) => {
257
244
  writeBytes(writer, target._ir1077);
258
245
  });
259
- addHandler(1053, function (target) { return target.alphaIdentifiers !== undefined; }, function (reader, target, left) {
246
+ addHandler(1053, target => target.alphaIdentifiers !== undefined, (reader, target, left) => {
260
247
  target.alphaIdentifiers = [];
261
248
  while (left() >= 4) {
262
249
  target.alphaIdentifiers.push(readUint32(reader));
263
250
  }
264
- }, function (writer, target) {
265
- for (var _i = 0, _a = target.alphaIdentifiers; _i < _a.length; _i++) {
266
- var id = _a[_i];
251
+ }, (writer, target) => {
252
+ for (const id of target.alphaIdentifiers) {
267
253
  writeUint32(writer, id);
268
254
  }
269
255
  });
270
- addHandler(1010, function (target) { return target.backgroundColor !== undefined; }, function (reader, target) { return target.backgroundColor = readColor(reader); }, function (writer, target) { return writeColor(writer, target.backgroundColor); });
271
- addHandler(1037, function (target) { return target.globalAngle !== undefined; }, function (reader, target) { return target.globalAngle = readInt32(reader); }, function (writer, target) { return writeInt32(writer, target.globalAngle); });
272
- addHandler(1049, function (target) { return target.globalAltitude !== undefined; }, function (reader, target) { return target.globalAltitude = readUint32(reader); }, function (writer, target) { return writeUint32(writer, target.globalAltitude); });
273
- addHandler(1011, function (target) { return target.printFlags !== undefined; }, function (reader, target) {
256
+ addHandler(1010, target => target.backgroundColor !== undefined, (reader, target) => target.backgroundColor = readColor(reader), (writer, target) => writeColor(writer, target.backgroundColor));
257
+ addHandler(1037, target => target.globalAngle !== undefined, (reader, target) => target.globalAngle = readInt32(reader), (writer, target) => writeInt32(writer, target.globalAngle));
258
+ addHandler(1049, target => target.globalAltitude !== undefined, (reader, target) => target.globalAltitude = readUint32(reader), (writer, target) => writeUint32(writer, target.globalAltitude));
259
+ addHandler(1011, target => target.printFlags !== undefined, (reader, target) => {
274
260
  target.printFlags = {
275
261
  labels: !!readUint8(reader),
276
262
  cropMarks: !!readUint8(reader),
@@ -282,8 +268,8 @@ addHandler(1011, function (target) { return target.printFlags !== undefined; },
282
268
  caption: !!readUint8(reader),
283
269
  printFlags: !!readUint8(reader),
284
270
  };
285
- }, function (writer, target) {
286
- var flags = target.printFlags;
271
+ }, (writer, target) => {
272
+ const flags = target.printFlags;
287
273
  writeUint8(writer, flags.labels ? 1 : 0);
288
274
  writeUint8(writer, flags.cropMarks ? 1 : 0);
289
275
  writeUint8(writer, flags.colorBars ? 1 : 0);
@@ -295,59 +281,59 @@ addHandler(1011, function (target) { return target.printFlags !== undefined; },
295
281
  writeUint8(writer, flags.printFlags ? 1 : 0);
296
282
  });
297
283
  addHandler(1034, // Copyright flag
298
- function (// Copyright flag
299
- target) { return target.copyrighted !== undefined; }, function (reader, target) {
284
+ // Copyright flag
285
+ target => target.copyrighted !== undefined, (reader, target) => {
300
286
  target.copyrighted = !!readUint8(reader);
301
- }, function (writer, target) {
287
+ }, (writer, target) => {
302
288
  writeUint8(writer, target.copyrighted ? 1 : 0);
303
289
  });
304
290
  addHandler(1035, // URL
305
- function (// URL
306
- target) { return target.url !== undefined; }, function (reader, target, left) {
291
+ // URL
292
+ target => target.url !== undefined, (reader, target, left) => {
307
293
  target.url = readAsciiString(reader, left());
308
- }, function (writer, target) {
294
+ }, (writer, target) => {
309
295
  writeAsciiString(writer, target.url);
310
296
  });
311
297
  MOCK_HANDLERS && addHandler(10000, // Print flags
312
- function (// Print flags
313
- target) { return target._ir10000 !== undefined; }, function (reader, target, left) {
298
+ // Print flags
299
+ target => target._ir10000 !== undefined, (reader, target, left) => {
314
300
  LOG_MOCK_HANDLERS && console.log('image resource 10000', left());
315
301
  target._ir10000 = readBytes(reader, left());
316
- }, function (writer, target) {
302
+ }, (writer, target) => {
317
303
  writeBytes(writer, target._ir10000);
318
304
  });
319
305
  MOCK_HANDLERS && addHandler(1013, // Color halftoning
320
- function (// Color halftoning
321
- target) { return target._ir1013 !== undefined; }, function (reader, target, left) {
306
+ // Color halftoning
307
+ target => target._ir1013 !== undefined, (reader, target, left) => {
322
308
  LOG_MOCK_HANDLERS && console.log('image resource 1013', left());
323
309
  target._ir1013 = readBytes(reader, left());
324
- }, function (writer, target) {
310
+ }, (writer, target) => {
325
311
  writeBytes(writer, target._ir1013);
326
312
  });
327
313
  MOCK_HANDLERS && addHandler(1016, // Color transfer functions
328
- function (// Color transfer functions
329
- target) { return target._ir1016 !== undefined; }, function (reader, target, left) {
314
+ // Color transfer functions
315
+ target => target._ir1016 !== undefined, (reader, target, left) => {
330
316
  LOG_MOCK_HANDLERS && console.log('image resource 1016', left());
331
317
  target._ir1016 = readBytes(reader, left());
332
- }, function (writer, target) {
318
+ }, (writer, target) => {
333
319
  writeBytes(writer, target._ir1016);
334
320
  });
335
321
  addHandler(1080, // Count Information
336
- function (// Count Information
337
- target) { return target.countInformation !== undefined; }, function (reader, target) {
338
- var desc = readVersionAndDescriptor(reader);
339
- target.countInformation = desc.countGroupList.map(function (g) { return ({
322
+ // Count Information
323
+ target => target.countInformation !== undefined, (reader, target) => {
324
+ const desc = readVersionAndDescriptor(reader);
325
+ target.countInformation = desc.countGroupList.map(g => ({
340
326
  color: { r: g['Rd '], g: g['Grn '], b: g['Bl '] },
341
327
  name: g['Nm '],
342
328
  size: g['Rds '],
343
329
  fontSize: g.fontSize,
344
330
  visible: g.Vsbl,
345
- points: g.countObjectList.map(function (p) { return ({ x: p['X '], y: p['Y '] }); }),
346
- }); });
347
- }, function (writer, target) {
348
- var desc = {
331
+ points: g.countObjectList.map(p => ({ x: p['X '], y: p['Y '] })),
332
+ }));
333
+ }, (writer, target) => {
334
+ const desc = {
349
335
  Vrsn: 1,
350
- countGroupList: target.countInformation.map(function (g) { return ({
336
+ countGroupList: target.countInformation.map(g => ({
351
337
  'Rd ': g.color.r,
352
338
  'Grn ': g.color.g,
353
339
  'Bl ': g.color.b,
@@ -355,86 +341,81 @@ target) { return target.countInformation !== undefined; }, function (reader, tar
355
341
  'Rds ': g.size,
356
342
  fontSize: g.fontSize,
357
343
  Vsbl: g.visible,
358
- countObjectList: g.points.map(function (p) { return ({ 'X ': p.x, 'Y ': p.y }); }),
359
- }); }),
344
+ countObjectList: g.points.map(p => ({ 'X ': p.x, 'Y ': p.y })),
345
+ })),
360
346
  };
361
347
  writeVersionAndDescriptor(writer, '', 'Cnt ', desc);
362
348
  });
363
- addHandler(1024, function (target) { return target.layerState !== undefined; }, function (reader, target) { return target.layerState = readUint16(reader); }, function (writer, target) { return writeUint16(writer, target.layerState); });
364
- addHandler(1026, function (target) { return target.layersGroup !== undefined; }, function (reader, target, left) {
349
+ addHandler(1024, target => target.layerState !== undefined, (reader, target) => target.layerState = readUint16(reader), (writer, target) => writeUint16(writer, target.layerState));
350
+ addHandler(1026, target => target.layersGroup !== undefined, (reader, target, left) => {
365
351
  target.layersGroup = [];
366
352
  while (left() > 0) {
367
353
  target.layersGroup.push(readUint16(reader));
368
354
  }
369
- }, function (writer, target) {
370
- for (var _i = 0, _a = target.layersGroup; _i < _a.length; _i++) {
371
- var g = _a[_i];
355
+ }, (writer, target) => {
356
+ for (const g of target.layersGroup) {
372
357
  writeUint16(writer, g);
373
358
  }
374
359
  });
375
- addHandler(1072, function (target) { return target.layerGroupsEnabledId !== undefined; }, function (reader, target, left) {
360
+ addHandler(1072, target => target.layerGroupsEnabledId !== undefined, (reader, target, left) => {
376
361
  target.layerGroupsEnabledId = [];
377
362
  while (left() > 0) {
378
363
  target.layerGroupsEnabledId.push(readUint8(reader));
379
364
  }
380
- }, function (writer, target) {
381
- for (var _i = 0, _a = target.layerGroupsEnabledId; _i < _a.length; _i++) {
382
- var id = _a[_i];
365
+ }, (writer, target) => {
366
+ for (const id of target.layerGroupsEnabledId) {
383
367
  writeUint8(writer, id);
384
368
  }
385
369
  });
386
- addHandler(1069, function (target) { return target.layerSelectionIds !== undefined; }, function (reader, target) {
387
- var count = readUint16(reader);
370
+ addHandler(1069, target => target.layerSelectionIds !== undefined, (reader, target) => {
371
+ let count = readUint16(reader);
388
372
  target.layerSelectionIds = [];
389
373
  while (count--) {
390
374
  target.layerSelectionIds.push(readUint32(reader));
391
375
  }
392
- }, function (writer, target) {
376
+ }, (writer, target) => {
393
377
  writeUint16(writer, target.layerSelectionIds.length);
394
- for (var _i = 0, _a = target.layerSelectionIds; _i < _a.length; _i++) {
395
- var id = _a[_i];
378
+ for (const id of target.layerSelectionIds) {
396
379
  writeUint32(writer, id);
397
380
  }
398
381
  });
399
- addHandler(1032, function (target) { return target.gridAndGuidesInformation !== undefined; }, function (reader, target) {
400
- var version = readUint32(reader);
401
- var horizontal = readUint32(reader);
402
- var vertical = readUint32(reader);
403
- var count = readUint32(reader);
382
+ addHandler(1032, target => target.gridAndGuidesInformation !== undefined, (reader, target) => {
383
+ const version = readUint32(reader);
384
+ const horizontal = readUint32(reader);
385
+ const vertical = readUint32(reader);
386
+ const count = readUint32(reader);
404
387
  if (version !== 1)
405
- throw new Error("Invalid 1032 resource version: ".concat(version));
388
+ throw new Error(`Invalid 1032 resource version: ${version}`);
406
389
  target.gridAndGuidesInformation = {
407
- grid: { horizontal: horizontal, vertical: vertical },
390
+ grid: { horizontal, vertical },
408
391
  guides: [],
409
392
  };
410
- for (var i = 0; i < count; i++) {
393
+ for (let i = 0; i < count; i++) {
411
394
  target.gridAndGuidesInformation.guides.push({
412
395
  location: readUint32(reader) / 32,
413
396
  direction: readUint8(reader) ? 'horizontal' : 'vertical'
414
397
  });
415
398
  }
416
- }, function (writer, target) {
417
- var info = target.gridAndGuidesInformation;
418
- var grid = info.grid || { horizontal: 18 * 32, vertical: 18 * 32 };
419
- var guides = info.guides || [];
399
+ }, (writer, target) => {
400
+ const info = target.gridAndGuidesInformation;
401
+ const grid = info.grid || { horizontal: 18 * 32, vertical: 18 * 32 };
402
+ const guides = info.guides || [];
420
403
  writeUint32(writer, 1);
421
404
  writeUint32(writer, grid.horizontal);
422
405
  writeUint32(writer, grid.vertical);
423
406
  writeUint32(writer, guides.length);
424
- for (var _i = 0, guides_1 = guides; _i < guides_1.length; _i++) {
425
- var g = guides_1[_i];
407
+ for (const g of guides) {
426
408
  writeUint32(writer, g.location * 32);
427
409
  writeUint8(writer, g.direction === 'horizontal' ? 1 : 0);
428
410
  }
429
411
  });
430
412
  addHandler(1065, // Layer Comps
431
- function (// Layer Comps
432
- target) { return target.layerComps !== undefined; }, function (reader, target) {
433
- var desc = readVersionAndDescriptor(reader, true);
413
+ // Layer Comps
414
+ target => target.layerComps !== undefined, (reader, target) => {
415
+ const desc = readVersionAndDescriptor(reader, true);
434
416
  // console.log('CompList', require('util').inspect(desc, false, 99, true));
435
417
  target.layerComps = { list: [] };
436
- for (var _i = 0, _a = desc.list; _i < _a.length; _i++) {
437
- var item = _a[_i];
418
+ for (const item of desc.list) {
438
419
  target.layerComps.list.push({
439
420
  id: item.compID,
440
421
  name: item['Nm '],
@@ -445,12 +426,11 @@ target) { return target.layerComps !== undefined; }, function (reader, target) {
445
426
  }
446
427
  if ('lastAppliedComp' in desc)
447
428
  target.layerComps.lastApplied = desc.lastAppliedComp;
448
- }, function (writer, target) {
449
- var layerComps = target.layerComps;
450
- var desc = { list: [] };
451
- for (var _i = 0, _a = layerComps.list; _i < _a.length; _i++) {
452
- var item = _a[_i];
453
- var t = {};
429
+ }, (writer, target) => {
430
+ const layerComps = target.layerComps;
431
+ const desc = { list: [] };
432
+ for (const item of layerComps.list) {
433
+ const t = {};
454
434
  t._classID = 'Comp';
455
435
  t['Nm '] = item.name;
456
436
  if ('comment' in item)
@@ -465,24 +445,24 @@ target) { return target.layerComps !== undefined; }, function (reader, target) {
465
445
  writeVersionAndDescriptor(writer, '', 'CompList', desc);
466
446
  });
467
447
  MOCK_HANDLERS && addHandler(1092, // ???
468
- function (// ???
469
- target) { return target._ir1092 !== undefined; }, function (reader, target, left) {
448
+ // ???
449
+ target => target._ir1092 !== undefined, (reader, target, left) => {
470
450
  LOG_MOCK_HANDLERS && console.log('image resource 1092', left());
471
451
  // 16 bytes, seems to be 4 integers
472
452
  target._ir1092 = readBytes(reader, left());
473
- }, function (writer, target) {
453
+ }, (writer, target) => {
474
454
  writeBytes(writer, target._ir1092);
475
455
  });
476
456
  // 0 - normal, 7 - multiply, 8 - screen, 23 - difference
477
- var onionSkinsBlendModes = [
457
+ const onionSkinsBlendModes = [
478
458
  'normal', undefined, undefined, undefined, undefined, undefined, undefined, 'multiply',
479
459
  'screen', undefined, undefined, undefined, undefined, undefined, undefined, undefined,
480
460
  undefined, undefined, undefined, undefined, undefined, undefined, undefined, 'difference',
481
461
  ];
482
462
  addHandler(1078, // Onion Skins
483
- function (// Onion Skins
484
- target) { return target.onionSkins !== undefined; }, function (reader, target) {
485
- var desc = readVersionAndDescriptor(reader);
463
+ // Onion Skins
464
+ target => target.onionSkins !== undefined, (reader, target) => {
465
+ const desc = readVersionAndDescriptor(reader);
486
466
  // console.log('1078', require('util').inspect(desc, false, 99, true));
487
467
  target.onionSkins = {
488
468
  enabled: desc.enab,
@@ -493,9 +473,9 @@ target) { return target.onionSkins !== undefined; }, function (reader, target) {
493
473
  maxOpacity: desc.maxOpacity / 100,
494
474
  blendMode: onionSkinsBlendModes[desc.BlnM] || 'normal',
495
475
  };
496
- }, function (writer, target) {
497
- var onionSkins = target.onionSkins;
498
- var desc = {
476
+ }, (writer, target) => {
477
+ const onionSkins = target.onionSkins;
478
+ const desc = {
499
479
  Vrsn: 1,
500
480
  enab: onionSkins.enabled,
501
481
  numBefore: onionSkins.framesBefore,
@@ -508,10 +488,10 @@ target) { return target.onionSkins !== undefined; }, function (reader, target) {
508
488
  writeVersionAndDescriptor(writer, '', 'null', desc);
509
489
  });
510
490
  addHandler(1075, // Timeline Information
511
- function (// Timeline Information
512
- target) { return target.timelineInformation !== undefined; }, function (reader, target) {
491
+ // Timeline Information
492
+ target => target.timelineInformation !== undefined, (reader, target) => {
513
493
  var _a, _b;
514
- var desc = readVersionAndDescriptor(reader);
494
+ const desc = readVersionAndDescriptor(reader);
515
495
  target.timelineInformation = {
516
496
  enabled: desc.enab,
517
497
  frameStep: frac(desc.frameStep),
@@ -525,36 +505,33 @@ target) { return target.timelineInformation !== undefined; }, function (reader,
525
505
  globalTracks: parseTrackList(desc.globalTrackList, !!reader.logMissingFeatures),
526
506
  };
527
507
  if ((_b = (_a = desc.audioClipGroupList) === null || _a === void 0 ? void 0 : _a.audioClipGroupList) === null || _b === void 0 ? void 0 : _b.length) {
528
- target.timelineInformation.audioClipGroups = desc.audioClipGroupList.audioClipGroupList.map(function (g) { return ({
508
+ target.timelineInformation.audioClipGroups = desc.audioClipGroupList.audioClipGroupList.map(g => ({
529
509
  id: g.groupID,
530
510
  muted: g.muted,
531
- audioClips: g.audioClipList.map(function (_a) {
532
- var clipID = _a.clipID, timeScope = _a.timeScope, muted = _a.muted, audioLevel = _a.audioLevel, frameReader = _a.frameReader;
533
- return ({
534
- id: clipID,
535
- start: frac(timeScope.Strt),
536
- duration: frac(timeScope.duration),
537
- inTime: frac(timeScope.inTime),
538
- outTime: frac(timeScope.outTime),
539
- muted: muted,
540
- audioLevel: audioLevel,
541
- frameReader: {
542
- type: frameReader.frameReaderType,
543
- mediaDescriptor: frameReader.mediaDescriptor,
544
- link: {
545
- name: frameReader['Lnk ']['Nm '],
546
- fullPath: frameReader['Lnk '].fullPath,
547
- relativePath: frameReader['Lnk '].relPath,
548
- },
511
+ audioClips: g.audioClipList.map(({ clipID, timeScope, muted, audioLevel, frameReader }) => ({
512
+ id: clipID,
513
+ start: frac(timeScope.Strt),
514
+ duration: frac(timeScope.duration),
515
+ inTime: frac(timeScope.inTime),
516
+ outTime: frac(timeScope.outTime),
517
+ muted: muted,
518
+ audioLevel: audioLevel,
519
+ frameReader: {
520
+ type: frameReader.frameReaderType,
521
+ mediaDescriptor: frameReader.mediaDescriptor,
522
+ link: {
523
+ name: frameReader['Lnk ']['Nm '],
524
+ fullPath: frameReader['Lnk '].fullPath,
525
+ relativePath: frameReader['Lnk '].relPath,
549
526
  },
550
- });
551
- }),
552
- }); });
527
+ },
528
+ })),
529
+ }));
553
530
  }
554
- }, function (writer, target) {
531
+ }, (writer, target) => {
555
532
  var _a;
556
- var timeline = target.timelineInformation;
557
- var desc = {
533
+ const timeline = target.timelineInformation;
534
+ const desc = {
558
535
  Vrsn: 1,
559
536
  enab: timeline.enabled,
560
537
  frameStep: timeline.frameStep,
@@ -566,10 +543,10 @@ target) { return target.timelineInformation !== undefined; }, function (reader,
566
543
  LCnt: timeline.repeats,
567
544
  globalTrackList: serializeTrackList(timeline.globalTracks),
568
545
  audioClipGroupList: {
569
- audioClipGroupList: (_a = timeline.audioClipGroups) === null || _a === void 0 ? void 0 : _a.map(function (a) { return ({
546
+ audioClipGroupList: (_a = timeline.audioClipGroups) === null || _a === void 0 ? void 0 : _a.map(a => ({
570
547
  groupID: a.id,
571
548
  muted: a.muted,
572
- audioClipList: a.audioClips.map(function (c) { return ({
549
+ audioClipList: a.audioClips.map(c => ({
573
550
  clipID: c.id,
574
551
  timeScope: {
575
552
  Vrsn: 1,
@@ -591,59 +568,59 @@ target) { return target.timelineInformation !== undefined; }, function (reader,
591
568
  },
592
569
  muted: c.muted,
593
570
  audioLevel: c.audioLevel,
594
- }); }),
595
- }); }),
571
+ })),
572
+ })),
596
573
  },
597
574
  hasMotion: timeline.hasMotion,
598
575
  };
599
576
  writeVersionAndDescriptor(writer, '', 'null', desc, 'anim');
600
577
  });
601
578
  addHandler(1076, // Sheet Disclosure
602
- function (// Sheet Disclosure
603
- target) { return target.sheetDisclosure !== undefined; }, function (reader, target) {
604
- var desc = readVersionAndDescriptor(reader);
579
+ // Sheet Disclosure
580
+ target => target.sheetDisclosure !== undefined, (reader, target) => {
581
+ const desc = readVersionAndDescriptor(reader);
605
582
  target.sheetDisclosure = {};
606
583
  if (desc.sheetTimelineOptions) {
607
- target.sheetDisclosure.sheetTimelineOptions = desc.sheetTimelineOptions.map(function (o) { return ({
584
+ target.sheetDisclosure.sheetTimelineOptions = desc.sheetTimelineOptions.map(o => ({
608
585
  sheetID: o.sheetID,
609
586
  sheetDisclosed: o.sheetDisclosed,
610
587
  lightsDisclosed: o.lightsDisclosed,
611
588
  meshesDisclosed: o.meshesDisclosed,
612
589
  materialsDisclosed: o.materialsDisclosed,
613
- }); });
590
+ }));
614
591
  }
615
- }, function (writer, target) {
616
- var disclosure = target.sheetDisclosure;
617
- var desc = { Vrsn: 1 };
592
+ }, (writer, target) => {
593
+ const disclosure = target.sheetDisclosure;
594
+ const desc = { Vrsn: 1 };
618
595
  if (disclosure.sheetTimelineOptions) {
619
- desc.sheetTimelineOptions = disclosure.sheetTimelineOptions.map(function (d) { return ({
596
+ desc.sheetTimelineOptions = disclosure.sheetTimelineOptions.map(d => ({
620
597
  Vrsn: 2,
621
598
  sheetID: d.sheetID,
622
599
  sheetDisclosed: d.sheetDisclosed,
623
600
  lightsDisclosed: d.lightsDisclosed,
624
601
  meshesDisclosed: d.meshesDisclosed,
625
602
  materialsDisclosed: d.materialsDisclosed,
626
- }); });
603
+ }));
627
604
  }
628
605
  writeVersionAndDescriptor(writer, '', 'null', desc);
629
606
  });
630
607
  addHandler(1054, // URL List
631
- function (// URL List
632
- target) { return target.urlsList !== undefined; }, function (reader, target) {
633
- var count = readUint32(reader);
608
+ // URL List
609
+ target => target.urlsList !== undefined, (reader, target) => {
610
+ const count = readUint32(reader);
634
611
  target.urlsList = [];
635
- for (var i = 0; i < count; i++) {
636
- var long = readSignature(reader);
612
+ for (let i = 0; i < count; i++) {
613
+ const long = readSignature(reader);
637
614
  if (long !== 'slic' && reader.throwForMissingFeatures)
638
615
  throw new Error('Unknown long');
639
- var id = readUint32(reader);
640
- var url = readUnicodeString(reader);
641
- target.urlsList.push({ id: id, url: url, ref: 'slice' });
616
+ const id = readUint32(reader);
617
+ const url = readUnicodeString(reader);
618
+ target.urlsList.push({ id, url, ref: 'slice' });
642
619
  }
643
- }, function (writer, target) {
644
- var list = target.urlsList;
620
+ }, (writer, target) => {
621
+ const list = target.urlsList;
645
622
  writeUint32(writer, list.length);
646
- for (var i = 0; i < list.length; i++) {
623
+ for (let i = 0; i < list.length; i++) {
647
624
  writeSignature(writer, 'slic');
648
625
  writeUint32(writer, list[i].id);
649
626
  writeUnicodeString(writer, list[i].url);
@@ -658,71 +635,58 @@ function boundsFromBounds(bounds) {
658
635
  function clamped(array, index) {
659
636
  return array[Math.max(0, Math.min(array.length - 1, index))];
660
637
  }
661
- var sliceOrigins = ['autoGenerated', 'layer', 'userGenerated'];
662
- var sliceTypes = ['noImage', 'image'];
663
- var sliceAlignments = ['default'];
638
+ const sliceOrigins = ['autoGenerated', 'layer', 'userGenerated'];
639
+ const sliceTypes = ['noImage', 'image'];
640
+ const sliceAlignments = ['default'];
664
641
  addHandler(1050, // Slices
665
- function (// Slices
666
- target) { return target.slices ? target.slices.length : 0; }, function (reader, target) {
667
- var version = readUint32(reader);
642
+ // Slices
643
+ target => target.slices ? target.slices.length : 0, (reader, target) => {
644
+ const version = readUint32(reader);
668
645
  if (version === 6) {
669
646
  if (!target.slices)
670
647
  target.slices = [];
671
- var top_1 = readInt32(reader);
672
- var left = readInt32(reader);
673
- var bottom = readInt32(reader);
674
- var right = readInt32(reader);
675
- var groupName = readUnicodeString(reader);
676
- var count = readUint32(reader);
677
- target.slices.push({ bounds: { top: top_1, left: left, bottom: bottom, right: right }, groupName: groupName, slices: [] });
678
- var slices_1 = target.slices[target.slices.length - 1].slices;
679
- for (var i = 0; i < count; i++) {
680
- var id = readUint32(reader);
681
- var groupId = readUint32(reader);
682
- var origin_1 = clamped(sliceOrigins, readUint32(reader));
683
- var associatedLayerId = origin_1 == 'layer' ? readUint32(reader) : 0;
684
- var name_3 = readUnicodeString(reader);
685
- var type = clamped(sliceTypes, readUint32(reader));
686
- var left_1 = readInt32(reader);
687
- var top_2 = readInt32(reader);
688
- var right_1 = readInt32(reader);
689
- var bottom_1 = readInt32(reader);
690
- var url = readUnicodeString(reader);
691
- var target_1 = readUnicodeString(reader);
692
- var message = readUnicodeString(reader);
693
- var altTag = readUnicodeString(reader);
694
- var cellTextIsHTML = !!readUint8(reader);
695
- var cellText = readUnicodeString(reader);
696
- var horizontalAlignment = clamped(sliceAlignments, readUint32(reader));
697
- var verticalAlignment = clamped(sliceAlignments, readUint32(reader));
698
- var a = readUint8(reader);
699
- var r = readUint8(reader);
700
- var g = readUint8(reader);
701
- var b = readUint8(reader);
702
- var backgroundColorType = ((a + r + g + b) === 0) ? 'none' : (a === 0 ? 'matte' : 'color');
703
- slices_1.push({
704
- id: id,
705
- groupId: groupId,
706
- origin: origin_1,
707
- associatedLayerId: associatedLayerId,
708
- name: name_3,
709
- target: target_1,
710
- message: message,
711
- altTag: altTag,
712
- cellTextIsHTML: cellTextIsHTML,
713
- cellText: cellText,
714
- horizontalAlignment: horizontalAlignment,
715
- verticalAlignment: verticalAlignment,
716
- type: type,
717
- url: url,
718
- bounds: { top: top_2, left: left_1, bottom: bottom_1, right: right_1 },
719
- backgroundColorType: backgroundColorType,
720
- backgroundColor: { r: r, g: g, b: b, a: a },
648
+ const top = readInt32(reader);
649
+ const left = readInt32(reader);
650
+ const bottom = readInt32(reader);
651
+ const right = readInt32(reader);
652
+ const groupName = readUnicodeString(reader);
653
+ const count = readUint32(reader);
654
+ target.slices.push({ bounds: { top, left, bottom, right }, groupName, slices: [] });
655
+ const slices = target.slices[target.slices.length - 1].slices;
656
+ for (let i = 0; i < count; i++) {
657
+ const id = readUint32(reader);
658
+ const groupId = readUint32(reader);
659
+ const origin = clamped(sliceOrigins, readUint32(reader));
660
+ const associatedLayerId = origin == 'layer' ? readUint32(reader) : 0;
661
+ const name = readUnicodeString(reader);
662
+ const type = clamped(sliceTypes, readUint32(reader));
663
+ const left = readInt32(reader);
664
+ const top = readInt32(reader);
665
+ const right = readInt32(reader);
666
+ const bottom = readInt32(reader);
667
+ const url = readUnicodeString(reader);
668
+ const target = readUnicodeString(reader);
669
+ const message = readUnicodeString(reader);
670
+ const altTag = readUnicodeString(reader);
671
+ const cellTextIsHTML = !!readUint8(reader);
672
+ const cellText = readUnicodeString(reader);
673
+ const horizontalAlignment = clamped(sliceAlignments, readUint32(reader));
674
+ const verticalAlignment = clamped(sliceAlignments, readUint32(reader));
675
+ const a = readUint8(reader);
676
+ const r = readUint8(reader);
677
+ const g = readUint8(reader);
678
+ const b = readUint8(reader);
679
+ const backgroundColorType = ((a + r + g + b) === 0) ? 'none' : (a === 0 ? 'matte' : 'color');
680
+ slices.push({
681
+ id, groupId, origin, associatedLayerId, name, target, message, altTag, cellTextIsHTML, cellText,
682
+ horizontalAlignment, verticalAlignment, type, url,
683
+ bounds: { top, left, bottom, right },
684
+ backgroundColorType, backgroundColor: { r, g, b, a },
721
685
  });
722
686
  }
723
- var desc = readVersionAndDescriptor(reader);
724
- desc.slices.forEach(function (d) {
725
- var slice = slices_1.find(function (s) { return d.sliceID == s.id; });
687
+ const desc = readVersionAndDescriptor(reader);
688
+ desc.slices.forEach(d => {
689
+ const slice = slices.find(s => d.sliceID == s.id);
726
690
  if (slice) {
727
691
  slice.topOutset = d.topOutset;
728
692
  slice.leftOutset = d.leftOutset;
@@ -732,20 +696,20 @@ target) { return target.slices ? target.slices.length : 0; }, function (reader,
732
696
  });
733
697
  }
734
698
  else if (version === 7 || version === 8) {
735
- var desc = readVersionAndDescriptor(reader);
699
+ const desc = readVersionAndDescriptor(reader);
736
700
  if (!target.slices)
737
701
  target.slices = [];
738
702
  target.slices.push({
739
703
  groupName: desc.baseName,
740
704
  bounds: boundsFromBounds(desc.bounds),
741
- slices: desc.slices.map(function (s) { return (__assign(__assign({}, (s['Nm '] ? { name: s['Nm '] } : {})), { id: s.sliceID, groupId: s.groupID, associatedLayerId: 0, origin: ESliceOrigin.decode(s.origin), type: ESliceType.decode(s.Type), bounds: boundsFromBounds(s.bounds), url: s.url, target: s.null, message: s.Msge, altTag: s.altTag, cellTextIsHTML: s.cellTextIsHTML, cellText: s.cellText, horizontalAlignment: ESliceHorzAlign.decode(s.horzAlign), verticalAlignment: ESliceVertAlign.decode(s.vertAlign), backgroundColorType: ESliceBGColorType.decode(s.bgColorType), backgroundColor: s.bgColor ? { r: s.bgColor['Rd '], g: s.bgColor['Grn '], b: s.bgColor['Bl '], a: s.bgColor.alpha } : { r: 0, g: 0, b: 0, a: 0 }, topOutset: s.topOutset || 0, leftOutset: s.leftOutset || 0, bottomOutset: s.bottomOutset || 0, rightOutset: s.rightOutset || 0 })); }),
705
+ slices: desc.slices.map(s => (Object.assign(Object.assign({}, (s['Nm '] ? { name: s['Nm '] } : {})), { id: s.sliceID, groupId: s.groupID, associatedLayerId: 0, origin: ESliceOrigin.decode(s.origin), type: ESliceType.decode(s.Type), bounds: boundsFromBounds(s.bounds), url: s.url, target: s.null, message: s.Msge, altTag: s.altTag, cellTextIsHTML: s.cellTextIsHTML, cellText: s.cellText, horizontalAlignment: ESliceHorzAlign.decode(s.horzAlign), verticalAlignment: ESliceVertAlign.decode(s.vertAlign), backgroundColorType: ESliceBGColorType.decode(s.bgColorType), backgroundColor: s.bgColor ? { r: s.bgColor['Rd '], g: s.bgColor['Grn '], b: s.bgColor['Bl '], a: s.bgColor.alpha } : { r: 0, g: 0, b: 0, a: 0 }, topOutset: s.topOutset || 0, leftOutset: s.leftOutset || 0, bottomOutset: s.bottomOutset || 0, rightOutset: s.rightOutset || 0 }))),
742
706
  });
743
707
  }
744
708
  else {
745
- throw new Error("Invalid slices version (".concat(version, ")"));
709
+ throw new Error(`Invalid slices version (${version})`);
746
710
  }
747
- }, function (writer, target, index) {
748
- var _a = target.slices[index], bounds = _a.bounds, groupName = _a.groupName, slices = _a.slices;
711
+ }, (writer, target, index) => {
712
+ const { bounds, groupName, slices } = target.slices[index];
749
713
  writeUint32(writer, 6); // version
750
714
  writeInt32(writer, bounds.top);
751
715
  writeInt32(writer, bounds.left);
@@ -753,9 +717,9 @@ target) { return target.slices ? target.slices.length : 0; }, function (reader,
753
717
  writeInt32(writer, bounds.right);
754
718
  writeUnicodeString(writer, groupName);
755
719
  writeUint32(writer, slices.length);
756
- for (var i = 0; i < slices.length; i++) {
757
- var slice = slices[i];
758
- var _b = slice.backgroundColor, a = _b.a, r = _b.r, g = _b.g, b = _b.b;
720
+ for (let i = 0; i < slices.length; i++) {
721
+ const slice = slices[i];
722
+ let { a, r, g, b } = slice.backgroundColor;
759
723
  if (slice.backgroundColorType === 'none') {
760
724
  a = r = g = b = 0;
761
725
  }
@@ -787,14 +751,14 @@ target) { return target.slices ? target.slices.length : 0; }, function (reader,
787
751
  writeUint8(writer, g);
788
752
  writeUint8(writer, b);
789
753
  }
790
- var desc = {
754
+ const desc = {
791
755
  bounds: boundsToBounds(bounds),
792
756
  slices: [],
793
757
  };
794
- slices.forEach(function (s) {
795
- var slice = __assign(__assign({ sliceID: s.id, groupID: s.groupId, origin: ESliceOrigin.encode(s.origin), Type: ESliceType.encode(s.type), bounds: boundsToBounds(s.bounds) }, (s.name ? { 'Nm ': s.name } : {})), { url: s.url, null: s.target, Msge: s.message, altTag: s.altTag, cellTextIsHTML: s.cellTextIsHTML, cellText: s.cellText, horzAlign: ESliceHorzAlign.encode(s.horizontalAlignment), vertAlign: ESliceVertAlign.encode(s.verticalAlignment), bgColorType: ESliceBGColorType.encode(s.backgroundColorType) });
758
+ slices.forEach(s => {
759
+ const slice = Object.assign(Object.assign({ sliceID: s.id, groupID: s.groupId, origin: ESliceOrigin.encode(s.origin), Type: ESliceType.encode(s.type), bounds: boundsToBounds(s.bounds) }, (s.name ? { 'Nm ': s.name } : {})), { url: s.url, null: s.target, Msge: s.message, altTag: s.altTag, cellTextIsHTML: s.cellTextIsHTML, cellText: s.cellText, horzAlign: ESliceHorzAlign.encode(s.horizontalAlignment), vertAlign: ESliceVertAlign.encode(s.verticalAlignment), bgColorType: ESliceBGColorType.encode(s.backgroundColorType) });
796
760
  if (s.backgroundColorType === 'color') {
797
- var _a = s.backgroundColor, r = _a.r, g = _a.g, b = _a.b, a = _a.a;
761
+ const { r, g, b, a } = s.backgroundColor;
798
762
  slice.bgColor = { 'Rd ': r, 'Grn ': g, 'Bl ': b, alpha: a };
799
763
  }
800
764
  slice.topOutset = s.topOutset || 0;
@@ -805,56 +769,56 @@ target) { return target.slices ? target.slices.length : 0; }, function (reader,
805
769
  });
806
770
  writeVersionAndDescriptor(writer, '', 'null', desc, 'slices');
807
771
  });
808
- addHandler(1064, function (target) { return target.pixelAspectRatio !== undefined; }, function (reader, target) {
772
+ addHandler(1064, target => target.pixelAspectRatio !== undefined, (reader, target) => {
809
773
  if (readUint32(reader) > 2)
810
774
  throw new Error('Invalid pixelAspectRatio version');
811
775
  target.pixelAspectRatio = { aspect: readFloat64(reader) };
812
- }, function (writer, target) {
776
+ }, (writer, target) => {
813
777
  writeUint32(writer, 2); // version
814
778
  writeFloat64(writer, target.pixelAspectRatio.aspect);
815
779
  });
816
- addHandler(1041, function (target) { return target.iccUntaggedProfile !== undefined; }, function (reader, target) {
780
+ addHandler(1041, target => target.iccUntaggedProfile !== undefined, (reader, target) => {
817
781
  target.iccUntaggedProfile = !!readUint8(reader);
818
- }, function (writer, target) {
782
+ }, (writer, target) => {
819
783
  writeUint8(writer, target.iccUntaggedProfile ? 1 : 0);
820
784
  });
821
785
  MOCK_HANDLERS && addHandler(1039, // ICC Profile
822
- function (// ICC Profile
823
- target) { return target._ir1039 !== undefined; }, function (reader, target, left) {
786
+ // ICC Profile
787
+ target => target._ir1039 !== undefined, (reader, target, left) => {
824
788
  // TODO: this is raw bytes, just return as a byte array
825
789
  LOG_MOCK_HANDLERS && console.log('image resource 1039', left());
826
790
  target._ir1039 = readBytes(reader, left());
827
- }, function (writer, target) {
791
+ }, (writer, target) => {
828
792
  writeBytes(writer, target._ir1039);
829
793
  });
830
- addHandler(1044, function (target) { return target.idsSeedNumber !== undefined; }, function (reader, target) { return target.idsSeedNumber = readUint32(reader); }, function (writer, target) { return writeUint32(writer, target.idsSeedNumber); });
831
- addHandler(1036, function (target) { return target.thumbnail !== undefined || target.thumbnailRaw !== undefined; }, function (reader, target, left) {
832
- var format = readUint32(reader); // 1 = kJpegRGB, 0 = kRawRGB
833
- var width = readUint32(reader);
834
- var height = readUint32(reader);
794
+ addHandler(1044, target => target.idsSeedNumber !== undefined, (reader, target) => target.idsSeedNumber = readUint32(reader), (writer, target) => writeUint32(writer, target.idsSeedNumber));
795
+ addHandler(1036, target => target.thumbnail !== undefined || target.thumbnailRaw !== undefined, (reader, target, left) => {
796
+ const format = readUint32(reader); // 1 = kJpegRGB, 0 = kRawRGB
797
+ const width = readUint32(reader);
798
+ const height = readUint32(reader);
835
799
  readUint32(reader); // widthBytes = (width * bits_per_pixel + 31) / 32 * 4.
836
800
  readUint32(reader); // totalSize = widthBytes * height * planes
837
801
  readUint32(reader); // sizeAfterCompression
838
- var bitsPerPixel = readUint16(reader); // 24
839
- var planes = readUint16(reader); // 1
802
+ const bitsPerPixel = readUint16(reader); // 24
803
+ const planes = readUint16(reader); // 1
840
804
  if (format !== 1 || bitsPerPixel !== 24 || planes !== 1) {
841
- reader.logMissingFeatures && reader.log("Invalid thumbnail data (format: ".concat(format, ", bitsPerPixel: ").concat(bitsPerPixel, ", planes: ").concat(planes, ")"));
805
+ reader.logMissingFeatures && reader.log(`Invalid thumbnail data (format: ${format}, bitsPerPixel: ${bitsPerPixel}, planes: ${planes})`);
842
806
  skipBytes(reader, left());
843
807
  return;
844
808
  }
845
- var size = left();
846
- var data = readBytes(reader, size);
809
+ const size = left();
810
+ const data = readBytes(reader, size);
847
811
  if (reader.useRawThumbnail) {
848
- target.thumbnailRaw = { width: width, height: height, data: data };
812
+ target.thumbnailRaw = { width, height, data };
849
813
  }
850
814
  else if (data.byteLength) {
851
815
  target.thumbnail = createCanvasFromData(data);
852
816
  }
853
- }, function (writer, target) {
817
+ }, (writer, target) => {
854
818
  var _a;
855
- var width = 0;
856
- var height = 0;
857
- var data = new Uint8Array(0);
819
+ let width = 0;
820
+ let height = 0;
821
+ let data = new Uint8Array(0);
858
822
  if (target.thumbnailRaw) {
859
823
  width = target.thumbnailRaw.width;
860
824
  height = target.thumbnailRaw.height;
@@ -862,7 +826,7 @@ addHandler(1036, function (target) { return target.thumbnail !== undefined || ta
862
826
  }
863
827
  else {
864
828
  try {
865
- var dataUrl = (_a = target.thumbnail.toDataURL('image/jpeg', 1)) === null || _a === void 0 ? void 0 : _a.substring('data:image/jpeg;base64,'.length);
829
+ const dataUrl = (_a = target.thumbnail.toDataURL('image/jpeg', 1)) === null || _a === void 0 ? void 0 : _a.substring('data:image/jpeg;base64,'.length);
866
830
  if (dataUrl) {
867
831
  data = toByteArray(dataUrl); // this sometimes fails for some reason, maybe some browser bugs
868
832
  width = target.thumbnail.width;
@@ -871,11 +835,11 @@ addHandler(1036, function (target) { return target.thumbnail !== undefined || ta
871
835
  }
872
836
  catch (_b) { }
873
837
  }
874
- var bitsPerPixel = 24;
875
- var widthBytes = Math.floor((width * bitsPerPixel + 31) / 32) * 4;
876
- var planes = 1;
877
- var totalSize = widthBytes * height * planes;
878
- var sizeAfterCompression = data.length;
838
+ const bitsPerPixel = 24;
839
+ const widthBytes = Math.floor((width * bitsPerPixel + 31) / 32) * 4;
840
+ const planes = 1;
841
+ const totalSize = widthBytes * height * planes;
842
+ const sizeAfterCompression = data.length;
879
843
  writeUint32(writer, 1); // 1 = kJpegRGB
880
844
  writeUint32(writer, width);
881
845
  writeUint32(writer, height);
@@ -886,8 +850,8 @@ addHandler(1036, function (target) { return target.thumbnail !== undefined || ta
886
850
  writeUint16(writer, planes);
887
851
  writeBytes(writer, data);
888
852
  });
889
- addHandler(1057, function (target) { return target.versionInfo !== undefined; }, function (reader, target, left) {
890
- var version = readUint32(reader);
853
+ addHandler(1057, target => target.versionInfo !== undefined, (reader, target, left) => {
854
+ const version = readUint32(reader);
891
855
  if (version !== 1)
892
856
  throw new Error('Invalid versionInfo version');
893
857
  target.versionInfo = {
@@ -897,8 +861,8 @@ addHandler(1057, function (target) { return target.versionInfo !== undefined; },
897
861
  fileVersion: readUint32(reader),
898
862
  };
899
863
  skipBytes(reader, left());
900
- }, function (writer, target) {
901
- var versionInfo = target.versionInfo;
864
+ }, (writer, target) => {
865
+ const versionInfo = target.versionInfo;
902
866
  writeUint32(writer, 1); // version
903
867
  writeUint8(writer, versionInfo.hasRealMergedData ? 1 : 0);
904
868
  writeUnicodeString(writer, versionInfo.writerName);
@@ -906,109 +870,106 @@ addHandler(1057, function (target) { return target.versionInfo !== undefined; },
906
870
  writeUint32(writer, versionInfo.fileVersion);
907
871
  });
908
872
  MOCK_HANDLERS && addHandler(1058, // EXIF data 1.
909
- function (// EXIF data 1.
910
- target) { return target._ir1058 !== undefined; }, function (reader, target, left) {
873
+ // EXIF data 1.
874
+ target => target._ir1058 !== undefined, (reader, target, left) => {
911
875
  LOG_MOCK_HANDLERS && console.log('image resource 1058', left());
912
876
  target._ir1058 = readBytes(reader, left());
913
- }, function (writer, target) {
877
+ }, (writer, target) => {
914
878
  writeBytes(writer, target._ir1058);
915
879
  });
916
- addHandler(7000, function (target) { return target.imageReadyVariables !== undefined; }, function (reader, target, left) {
880
+ addHandler(7000, target => target.imageReadyVariables !== undefined, (reader, target, left) => {
917
881
  target.imageReadyVariables = readUtf8String(reader, left());
918
- }, function (writer, target) {
882
+ }, (writer, target) => {
919
883
  writeUtf8String(writer, target.imageReadyVariables);
920
884
  });
921
- addHandler(7001, function (target) { return target.imageReadyDataSets !== undefined; }, function (reader, target, left) {
885
+ addHandler(7001, target => target.imageReadyDataSets !== undefined, (reader, target, left) => {
922
886
  target.imageReadyDataSets = readUtf8String(reader, left());
923
- }, function (writer, target) {
887
+ }, (writer, target) => {
924
888
  writeUtf8String(writer, target.imageReadyDataSets);
925
889
  });
926
- addHandler(1088, function (target) { return target.pathSelectionState !== undefined; }, function (reader, target, _left) {
927
- var desc = readVersionAndDescriptor(reader);
890
+ addHandler(1088, target => target.pathSelectionState !== undefined, (reader, target, _left) => {
891
+ const desc = readVersionAndDescriptor(reader);
928
892
  target.pathSelectionState = desc['null'];
929
- }, function (writer, target) {
930
- var desc = { 'null': target.pathSelectionState };
893
+ }, (writer, target) => {
894
+ const desc = { 'null': target.pathSelectionState };
931
895
  writeVersionAndDescriptor(writer, '', 'null', desc);
932
896
  });
933
- MOCK_HANDLERS && addHandler(1025, function (target) { return target._ir1025 !== undefined; }, function (reader, target, left) {
897
+ MOCK_HANDLERS && addHandler(1025, target => target._ir1025 !== undefined, (reader, target, left) => {
934
898
  LOG_MOCK_HANDLERS && console.log('image resource 1025', left());
935
899
  target._ir1025 = readBytes(reader, left());
936
- }, function (writer, target) {
900
+ }, (writer, target) => {
937
901
  writeBytes(writer, target._ir1025);
938
902
  });
939
- var FrmD = createEnum('FrmD', '', {
903
+ const FrmD = createEnum('FrmD', '', {
940
904
  auto: 'Auto',
941
905
  none: 'None',
942
906
  dispose: 'Disp',
943
907
  });
944
908
  addHandler(4000, // Plug-In resource(s)
945
- function (// Plug-In resource(s)
946
- target) { return target.animations !== undefined; }, function (reader, target, left) {
947
- var key = readSignature(reader);
909
+ // Plug-In resource(s)
910
+ target => target.animations !== undefined, (reader, target, left) => {
911
+ const key = readSignature(reader);
948
912
  if (key === 'mani') {
949
913
  checkSignature(reader, 'IRFR');
950
- readSection(reader, 1, function (left) {
951
- var _loop_1 = function () {
914
+ readSection(reader, 1, left => {
915
+ while (left() > 0) {
952
916
  checkSignature(reader, '8BIM');
953
- var key_1 = readSignature(reader);
954
- readSection(reader, 1, function (left) {
955
- if (key_1 === 'AnDs') {
956
- var desc = readVersionAndDescriptor(reader);
917
+ const key = readSignature(reader);
918
+ readSection(reader, 1, left => {
919
+ if (key === 'AnDs') {
920
+ const desc = readVersionAndDescriptor(reader);
957
921
  target.animations = {
958
922
  // desc.AFSt ???
959
- frames: desc.FrIn.map(function (x) { return ({
923
+ frames: desc.FrIn.map(x => ({
960
924
  id: x.FrID,
961
925
  delay: (x.FrDl || 0) / 100,
962
926
  dispose: x.FrDs ? FrmD.decode(x.FrDs) : 'auto', // missing == auto
963
927
  // x.FrGA ???
964
- }); }),
965
- animations: desc.FSts.map(function (x) { return ({
928
+ })),
929
+ animations: desc.FSts.map(x => ({
966
930
  id: x.FsID,
967
931
  frames: x.FsFr,
968
932
  repeats: x.LCnt,
969
933
  activeFrame: x.AFrm || 0,
970
- }); }),
934
+ })),
971
935
  };
972
936
  // console.log('#4000 AnDs', require('util').inspect(desc, false, 99, true));
973
937
  // console.log('#4000 AnDs:result', require('util').inspect(target.animations, false, 99, true));
974
938
  }
975
- else if (key_1 === 'Roll') {
976
- var bytes = readBytes(reader, left());
939
+ else if (key === 'Roll') {
940
+ const bytes = readBytes(reader, left());
977
941
  reader.logDevFeatures && reader.log('#4000 Roll', bytes);
978
942
  }
979
943
  else {
980
- reader.logMissingFeatures && reader.log('Unhandled subsection in #4000', key_1);
944
+ reader.logMissingFeatures && reader.log('Unhandled subsection in #4000', key);
981
945
  }
982
946
  });
983
- };
984
- while (left() > 0) {
985
- _loop_1();
986
947
  }
987
948
  });
988
949
  }
989
950
  else if (key === 'mopt') {
990
- var bytes = readBytes(reader, left());
951
+ const bytes = readBytes(reader, left());
991
952
  reader.logDevFeatures && reader.log('#4000 mopt', bytes);
992
953
  }
993
954
  else {
994
955
  reader.logMissingFeatures && reader.log('Unhandled key in #4000:', key);
995
956
  }
996
- }, function (writer, target) {
957
+ }, (writer, target) => {
997
958
  if (target.animations) {
998
959
  writeSignature(writer, 'mani');
999
960
  writeSignature(writer, 'IRFR');
1000
- writeSection(writer, 1, function () {
961
+ writeSection(writer, 1, () => {
1001
962
  writeSignature(writer, '8BIM');
1002
963
  writeSignature(writer, 'AnDs');
1003
- writeSection(writer, 1, function () {
1004
- var desc = {
964
+ writeSection(writer, 1, () => {
965
+ const desc = {
1005
966
  // AFSt: 0, // ???
1006
967
  FrIn: [],
1007
968
  FSts: [],
1008
969
  };
1009
- for (var i = 0; i < target.animations.frames.length; i++) {
1010
- var f = target.animations.frames[i];
1011
- var frame = {
970
+ for (let i = 0; i < target.animations.frames.length; i++) {
971
+ const f = target.animations.frames[i];
972
+ const frame = {
1012
973
  FrID: f.id,
1013
974
  };
1014
975
  if (f.delay)
@@ -1017,9 +978,9 @@ target) { return target.animations !== undefined; }, function (reader, target, l
1017
978
  // if (i === 0) frame.FrGA = 30; // ???
1018
979
  desc.FrIn.push(frame);
1019
980
  }
1020
- for (var i = 0; i < target.animations.animations.length; i++) {
1021
- var a = target.animations.animations[i];
1022
- var anim = {
981
+ for (let i = 0; i < target.animations.animations.length; i++) {
982
+ const a = target.animations.animations[i];
983
+ const anim = {
1023
984
  FsID: a.id,
1024
985
  AFrm: a.activeFrame | 0,
1025
986
  FsFr: a.frames,
@@ -1039,39 +1000,39 @@ target) { return target.animations !== undefined; }, function (reader, target, l
1039
1000
  });
1040
1001
  // TODO: Unfinished
1041
1002
  MOCK_HANDLERS && addHandler(4001, // Plug-In resource(s)
1042
- function (// Plug-In resource(s)
1043
- target) { return target._ir4001 !== undefined; }, function (reader, target, left) {
1003
+ // Plug-In resource(s)
1004
+ target => target._ir4001 !== undefined, (reader, target, left) => {
1044
1005
  if (MOCK_HANDLERS) {
1045
1006
  LOG_MOCK_HANDLERS && console.log('image resource 4001', left());
1046
1007
  target._ir4001 = readBytes(reader, left());
1047
1008
  return;
1048
1009
  }
1049
- var key = readSignature(reader);
1010
+ const key = readSignature(reader);
1050
1011
  if (key === 'mfri') {
1051
- var version = readUint32(reader);
1012
+ const version = readUint32(reader);
1052
1013
  if (version !== 2)
1053
1014
  throw new Error('Invalid mfri version');
1054
- var length_1 = readUint32(reader);
1055
- var bytes = readBytes(reader, length_1);
1015
+ const length = readUint32(reader);
1016
+ const bytes = readBytes(reader, length);
1056
1017
  reader.logDevFeatures && reader.log('mfri', bytes);
1057
1018
  }
1058
1019
  else if (key === 'mset') {
1059
- var desc = readVersionAndDescriptor(reader);
1020
+ const desc = readVersionAndDescriptor(reader);
1060
1021
  reader.logDevFeatures && reader.log('mset', desc);
1061
1022
  }
1062
1023
  else {
1063
1024
  reader.logMissingFeatures && reader.log('Unhandled key in #4001', key);
1064
1025
  }
1065
- }, function (writer, target) {
1026
+ }, (writer, target) => {
1066
1027
  writeBytes(writer, target._ir4001);
1067
1028
  });
1068
1029
  // TODO: Unfinished
1069
1030
  MOCK_HANDLERS && addHandler(4002, // Plug-In resource(s)
1070
- function (// Plug-In resource(s)
1071
- target) { return target._ir4002 !== undefined; }, function (reader, target, left) {
1031
+ // Plug-In resource(s)
1032
+ target => target._ir4002 !== undefined, (reader, target, left) => {
1072
1033
  LOG_MOCK_HANDLERS && console.log('image resource 4002', left());
1073
1034
  target._ir4002 = readBytes(reader, left());
1074
- }, function (writer, target) {
1035
+ }, (writer, target) => {
1075
1036
  writeBytes(writer, target._ir4002);
1076
1037
  });
1077
1038
  //# sourceMappingURL=imageResources.js.map