ag-psd 30.2.0 → 31.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.
Files changed (252) hide show
  1. package/.v8-cache/v24.13.1-x64-cf738c9d/01e5e61b +0 -0
  2. package/.v8-cache/v24.13.1-x64-cf738c9d/05135617 +0 -0
  3. package/.v8-cache/v24.13.1-x64-cf738c9d/06423db9 +0 -0
  4. package/.v8-cache/v24.13.1-x64-cf738c9d/06e765df +0 -0
  5. package/.v8-cache/v24.13.1-x64-cf738c9d/0930679d +0 -0
  6. package/.v8-cache/v24.13.1-x64-cf738c9d/09519a62 +0 -0
  7. package/.v8-cache/v24.13.1-x64-cf738c9d/0a6607b0 +0 -0
  8. package/.v8-cache/v24.13.1-x64-cf738c9d/0ad8fa6e +0 -0
  9. package/.v8-cache/v24.13.1-x64-cf738c9d/0d390e10 +0 -0
  10. package/.v8-cache/v24.13.1-x64-cf738c9d/0dfa7b16 +0 -0
  11. package/.v8-cache/v24.13.1-x64-cf738c9d/0e9e09db +0 -0
  12. package/.v8-cache/v24.13.1-x64-cf738c9d/1130885f +0 -0
  13. package/.v8-cache/v24.13.1-x64-cf738c9d/1222cb8c +0 -0
  14. package/.v8-cache/v24.13.1-x64-cf738c9d/15e2c039 +0 -0
  15. package/.v8-cache/v24.13.1-x64-cf738c9d/1a2d469d +0 -0
  16. package/.v8-cache/v24.13.1-x64-cf738c9d/1b300c82 +0 -0
  17. package/.v8-cache/v24.13.1-x64-cf738c9d/1bc3d370 +0 -0
  18. package/.v8-cache/v24.13.1-x64-cf738c9d/1e44e5af +0 -0
  19. package/.v8-cache/v24.13.1-x64-cf738c9d/1efa10a1 +0 -0
  20. package/.v8-cache/v24.13.1-x64-cf738c9d/1f6c8743 +0 -0
  21. package/.v8-cache/v24.13.1-x64-cf738c9d/20b27e40 +0 -0
  22. package/.v8-cache/v24.13.1-x64-cf738c9d/257c62ba +0 -0
  23. package/.v8-cache/v24.13.1-x64-cf738c9d/25d60154 +0 -0
  24. package/.v8-cache/v24.13.1-x64-cf738c9d/26f822f3 +0 -0
  25. package/.v8-cache/v24.13.1-x64-cf738c9d/2a1e2a8d +0 -0
  26. package/.v8-cache/v24.13.1-x64-cf738c9d/2b02fded +0 -0
  27. package/.v8-cache/v24.13.1-x64-cf738c9d/2c76dc0d +0 -0
  28. package/.v8-cache/v24.13.1-x64-cf738c9d/2deb286a +0 -0
  29. package/.v8-cache/v24.13.1-x64-cf738c9d/32018e44 +0 -0
  30. package/.v8-cache/v24.13.1-x64-cf738c9d/341402c3 +0 -0
  31. package/.v8-cache/v24.13.1-x64-cf738c9d/34e0fa2e +0 -0
  32. package/.v8-cache/v24.13.1-x64-cf738c9d/3bbf643e +0 -0
  33. package/.v8-cache/v24.13.1-x64-cf738c9d/3ceff89e +0 -0
  34. package/.v8-cache/v24.13.1-x64-cf738c9d/404f5cdc +0 -0
  35. package/.v8-cache/v24.13.1-x64-cf738c9d/4087aa2b +0 -0
  36. package/.v8-cache/v24.13.1-x64-cf738c9d/4376c1f9 +0 -0
  37. package/.v8-cache/v24.13.1-x64-cf738c9d/44903df4 +0 -0
  38. package/.v8-cache/v24.13.1-x64-cf738c9d/44d58dc8 +0 -0
  39. package/.v8-cache/v24.13.1-x64-cf738c9d/4511bacf +0 -0
  40. package/.v8-cache/v24.13.1-x64-cf738c9d/47da0ce8 +0 -0
  41. package/.v8-cache/v24.13.1-x64-cf738c9d/48cd54a9 +0 -0
  42. package/.v8-cache/v24.13.1-x64-cf738c9d/4d938476 +0 -0
  43. package/.v8-cache/v24.13.1-x64-cf738c9d/4ec6d390 +0 -0
  44. package/.v8-cache/v24.13.1-x64-cf738c9d/4f5702bd +0 -0
  45. package/.v8-cache/v24.13.1-x64-cf738c9d/514cc428 +0 -0
  46. package/.v8-cache/v24.13.1-x64-cf738c9d/557d3b42 +0 -0
  47. package/.v8-cache/v24.13.1-x64-cf738c9d/56abbff7 +0 -0
  48. package/.v8-cache/v24.13.1-x64-cf738c9d/57b540ee +0 -0
  49. package/.v8-cache/v24.13.1-x64-cf738c9d/5e20c081 +0 -0
  50. package/.v8-cache/v24.13.1-x64-cf738c9d/651c4ada +0 -0
  51. package/.v8-cache/v24.13.1-x64-cf738c9d/652a0d59 +0 -0
  52. package/.v8-cache/v24.13.1-x64-cf738c9d/6a0e89ee +0 -0
  53. package/.v8-cache/v24.13.1-x64-cf738c9d/6af33b91 +0 -0
  54. package/.v8-cache/v24.13.1-x64-cf738c9d/6c2562d2 +0 -0
  55. package/.v8-cache/v24.13.1-x64-cf738c9d/6dae0cfa +0 -0
  56. package/.v8-cache/v24.13.1-x64-cf738c9d/6e2529ce +0 -0
  57. package/.v8-cache/v24.13.1-x64-cf738c9d/71df9cb3 +0 -0
  58. package/.v8-cache/v24.13.1-x64-cf738c9d/72e1d543 +0 -0
  59. package/.v8-cache/v24.13.1-x64-cf738c9d/75519c80 +0 -0
  60. package/.v8-cache/v24.13.1-x64-cf738c9d/79bf115c +0 -0
  61. package/.v8-cache/v24.13.1-x64-cf738c9d/7a39347c +0 -0
  62. package/.v8-cache/v24.13.1-x64-cf738c9d/7b83e3d3 +0 -0
  63. package/.v8-cache/v24.13.1-x64-cf738c9d/7cd71bc5 +0 -0
  64. package/.v8-cache/v24.13.1-x64-cf738c9d/7da78512 +0 -0
  65. package/.v8-cache/v24.13.1-x64-cf738c9d/7ea06cea +0 -0
  66. package/.v8-cache/v24.13.1-x64-cf738c9d/82c3b573 +0 -0
  67. package/.v8-cache/v24.13.1-x64-cf738c9d/84c186e4 +0 -0
  68. package/.v8-cache/v24.13.1-x64-cf738c9d/8607bd36 +0 -0
  69. package/.v8-cache/v24.13.1-x64-cf738c9d/87372817 +0 -0
  70. package/.v8-cache/v24.13.1-x64-cf738c9d/87cf2209 +0 -0
  71. package/.v8-cache/v24.13.1-x64-cf738c9d/882aaa05 +0 -0
  72. package/.v8-cache/v24.13.1-x64-cf738c9d/8a4d3de8 +0 -0
  73. package/.v8-cache/v24.13.1-x64-cf738c9d/8e223473 +0 -0
  74. package/.v8-cache/v24.13.1-x64-cf738c9d/92b7aefd +0 -0
  75. package/.v8-cache/v24.13.1-x64-cf738c9d/932f0770 +0 -0
  76. package/.v8-cache/v24.13.1-x64-cf738c9d/937c03a1 +0 -0
  77. package/.v8-cache/v24.13.1-x64-cf738c9d/991e4758 +0 -0
  78. package/.v8-cache/v24.13.1-x64-cf738c9d/9af658fb +0 -0
  79. package/.v8-cache/v24.13.1-x64-cf738c9d/9ed80ba5 +0 -0
  80. package/.v8-cache/v24.13.1-x64-cf738c9d/9f0dc993 +0 -0
  81. package/.v8-cache/v24.13.1-x64-cf738c9d/a19c0c4f +0 -0
  82. package/.v8-cache/v24.13.1-x64-cf738c9d/a6409d95 +0 -0
  83. package/.v8-cache/v24.13.1-x64-cf738c9d/a7e80865 +0 -0
  84. package/.v8-cache/v24.13.1-x64-cf738c9d/ac9802c6 +0 -0
  85. package/.v8-cache/v24.13.1-x64-cf738c9d/acc36e66 +0 -0
  86. package/.v8-cache/v24.13.1-x64-cf738c9d/ad11e2dc +0 -0
  87. package/.v8-cache/v24.13.1-x64-cf738c9d/b0c8fcd8 +0 -0
  88. package/.v8-cache/v24.13.1-x64-cf738c9d/b1762958 +0 -0
  89. package/.v8-cache/v24.13.1-x64-cf738c9d/b3c2fab7 +0 -0
  90. package/.v8-cache/v24.13.1-x64-cf738c9d/b5b3329b +0 -0
  91. package/.v8-cache/v24.13.1-x64-cf738c9d/b806679e +0 -0
  92. package/.v8-cache/v24.13.1-x64-cf738c9d/bc1cdd48 +0 -0
  93. package/.v8-cache/v24.13.1-x64-cf738c9d/bc7ebd1d +0 -0
  94. package/.v8-cache/v24.13.1-x64-cf738c9d/c0b789d2 +0 -0
  95. package/.v8-cache/v24.13.1-x64-cf738c9d/c314aece +0 -0
  96. package/.v8-cache/v24.13.1-x64-cf738c9d/c399a5dc +0 -0
  97. package/.v8-cache/v24.13.1-x64-cf738c9d/c681cbc8 +0 -0
  98. package/.v8-cache/v24.13.1-x64-cf738c9d/c6834ffc +0 -0
  99. package/.v8-cache/v24.13.1-x64-cf738c9d/c6f12ed5 +0 -0
  100. package/.v8-cache/v24.13.1-x64-cf738c9d/cb0f0a3d +0 -0
  101. package/.v8-cache/v24.13.1-x64-cf738c9d/cbcb7c95 +0 -0
  102. package/.v8-cache/v24.13.1-x64-cf738c9d/cdd9107c +0 -0
  103. package/.v8-cache/v24.13.1-x64-cf738c9d/cdf2c4a3 +0 -0
  104. package/.v8-cache/v24.13.1-x64-cf738c9d/cfc49f4f +0 -0
  105. package/.v8-cache/v24.13.1-x64-cf738c9d/cff9434a +0 -0
  106. package/.v8-cache/v24.13.1-x64-cf738c9d/d02dd6f7 +0 -0
  107. package/.v8-cache/v24.13.1-x64-cf738c9d/d0507bf3 +0 -0
  108. package/.v8-cache/v24.13.1-x64-cf738c9d/d60fce19 +0 -0
  109. package/.v8-cache/v24.13.1-x64-cf738c9d/d733d619 +0 -0
  110. package/.v8-cache/v24.13.1-x64-cf738c9d/d75b7803 +0 -0
  111. package/.v8-cache/v24.13.1-x64-cf738c9d/dc86f000 +0 -0
  112. package/.v8-cache/v24.13.1-x64-cf738c9d/defa4f7f +0 -0
  113. package/.v8-cache/v24.13.1-x64-cf738c9d/e03e2acd +0 -0
  114. package/.v8-cache/v24.13.1-x64-cf738c9d/e0e3f52c +0 -0
  115. package/.v8-cache/v24.13.1-x64-cf738c9d/e158d332 +0 -0
  116. package/.v8-cache/v24.13.1-x64-cf738c9d/e6735171 +0 -0
  117. package/.v8-cache/v24.13.1-x64-cf738c9d/e6745c2b +0 -0
  118. package/.v8-cache/v24.13.1-x64-cf738c9d/e6b99945 +0 -0
  119. package/.v8-cache/v24.13.1-x64-cf738c9d/e6d8ceb8 +0 -0
  120. package/.v8-cache/v24.13.1-x64-cf738c9d/e7ffec37 +0 -0
  121. package/.v8-cache/v24.13.1-x64-cf738c9d/ea33b6de +0 -0
  122. package/.v8-cache/v24.13.1-x64-cf738c9d/eaafa3c4 +0 -0
  123. package/.v8-cache/v24.13.1-x64-cf738c9d/ebb50fca +0 -0
  124. package/.v8-cache/v24.13.1-x64-cf738c9d/ec805f2e +0 -0
  125. package/.v8-cache/v24.13.1-x64-cf738c9d/edaef8f1 +0 -0
  126. package/.v8-cache/v24.13.1-x64-cf738c9d/ee4401c8 +0 -0
  127. package/.v8-cache/v24.13.1-x64-cf738c9d/eeeebdfe +0 -0
  128. package/.v8-cache/v24.13.1-x64-cf738c9d/f3d51676 +0 -0
  129. package/.v8-cache/v24.13.1-x64-cf738c9d/f7b50a75 +0 -0
  130. package/.v8-cache/v24.13.1-x64-cf738c9d/fa58ca72 +0 -0
  131. package/.v8-cache/v24.13.1-x64-cf738c9d/fc97d72d +0 -0
  132. package/.v8-cache/v24.13.1-x64-cf738c9d/fd0a2987 +0 -0
  133. package/CHANGELOG.md +6 -0
  134. package/README.md +64 -0
  135. package/TODO.md +2 -0
  136. package/dist/abr.d.ts +196 -196
  137. package/dist/abr.js +364 -365
  138. package/dist/abr.js.map +1 -1
  139. package/dist/additionalInfo.d.ts +26 -26
  140. package/dist/additionalInfo.js +3478 -3478
  141. package/dist/additionalInfo.js.map +1 -1
  142. package/dist/ase.d.ts +32 -32
  143. package/dist/ase.js +81 -82
  144. package/dist/ase.js.map +1 -1
  145. package/dist/bundle.js +12380 -12259
  146. package/dist/csh.d.ts +10 -10
  147. package/dist/csh.js +35 -36
  148. package/dist/csh.js.map +1 -1
  149. package/dist/descriptor.d.ts +601 -601
  150. package/dist/descriptor.js +2003 -2003
  151. package/dist/descriptor.js.map +1 -1
  152. package/dist/effectsHelpers.d.ts +5 -5
  153. package/dist/effectsHelpers.js +286 -287
  154. package/dist/effectsHelpers.js.map +1 -1
  155. package/dist/engineData.d.ts +2 -2
  156. package/dist/engineData.js +334 -335
  157. package/dist/engineData.js.map +1 -1
  158. package/dist/engineData2.d.ts +2 -2
  159. package/dist/engineData2.js +409 -410
  160. package/dist/engineData2.js.map +1 -1
  161. package/dist/helpers.d.ts +74 -74
  162. package/dist/helpers.js +353 -342
  163. package/dist/helpers.js.map +1 -1
  164. package/dist/imageResources.d.ts +17 -17
  165. package/dist/imageResources.js +1040 -1040
  166. package/dist/imageResources.js.map +1 -1
  167. package/dist/index.d.ts +20 -22
  168. package/dist/index.js +61 -56
  169. package/dist/index.js.map +1 -1
  170. package/dist/initializeCanvas.d.ts +1 -1
  171. package/dist/initializeCanvas.js +9 -10
  172. package/dist/initializeCanvas.js.map +1 -1
  173. package/dist/jpeg.d.ts +1 -1
  174. package/dist/jpeg.js +1020 -1021
  175. package/dist/jpeg.js.map +1 -1
  176. package/dist/psd.d.ts +1877 -1873
  177. package/dist/psd.js +45 -45
  178. package/dist/psd.js.map +1 -1
  179. package/dist/psdReader.d.ts +52 -45
  180. package/dist/psdReader.js +1385 -1282
  181. package/dist/psdReader.js.map +1 -1
  182. package/dist/psdWriter.d.ts +34 -34
  183. package/dist/psdWriter.js +834 -824
  184. package/dist/psdWriter.js.map +1 -1
  185. package/dist/text.d.ts +179 -179
  186. package/dist/text.js +552 -553
  187. package/dist/text.js.map +1 -1
  188. package/dist/utf8.d.ts +4 -6
  189. package/dist/utf8.js +156 -157
  190. package/dist/utf8.js.map +1 -1
  191. package/dist-es/abr.d.ts +196 -196
  192. package/dist-es/abr.js +364 -361
  193. package/dist-es/abr.js.map +1 -1
  194. package/dist-es/additionalInfo.d.ts +26 -26
  195. package/dist-es/additionalInfo.js +3478 -3472
  196. package/dist-es/additionalInfo.js.map +1 -1
  197. package/dist-es/ase.d.ts +32 -32
  198. package/dist-es/ase.js +81 -78
  199. package/dist-es/ase.js.map +1 -1
  200. package/dist-es/csh.d.ts +10 -10
  201. package/dist-es/csh.js +35 -32
  202. package/dist-es/csh.js.map +1 -1
  203. package/dist-es/descriptor.d.ts +601 -601
  204. package/dist-es/descriptor.js +2003 -1970
  205. package/dist-es/descriptor.js.map +1 -1
  206. package/dist-es/effectsHelpers.d.ts +5 -5
  207. package/dist-es/effectsHelpers.js +286 -282
  208. package/dist-es/effectsHelpers.js.map +1 -1
  209. package/dist-es/engineData.d.ts +2 -2
  210. package/dist-es/engineData.js +334 -330
  211. package/dist-es/engineData.js.map +1 -1
  212. package/dist-es/engineData2.d.ts +2 -2
  213. package/dist-es/engineData2.js +409 -406
  214. package/dist-es/engineData2.js.map +1 -1
  215. package/dist-es/helpers.d.ts +74 -74
  216. package/dist-es/helpers.js +353 -324
  217. package/dist-es/helpers.js.map +1 -1
  218. package/dist-es/imageResources.d.ts +17 -17
  219. package/dist-es/imageResources.js +1040 -1037
  220. package/dist-es/imageResources.js.map +1 -1
  221. package/dist-es/index.d.ts +20 -22
  222. package/dist-es/index.js +61 -33
  223. package/dist-es/index.js.map +1 -1
  224. package/dist-es/initializeCanvas.d.ts +1 -1
  225. package/dist-es/initializeCanvas.js +9 -6
  226. package/dist-es/initializeCanvas.js.map +1 -1
  227. package/dist-es/jpeg.d.ts +1 -1
  228. package/dist-es/jpeg.js +1020 -1017
  229. package/dist-es/jpeg.js.map +1 -1
  230. package/dist-es/psd.d.ts +1877 -1873
  231. package/dist-es/psd.js +45 -42
  232. package/dist-es/psd.js.map +1 -1
  233. package/dist-es/psdReader.d.ts +52 -45
  234. package/dist-es/psdReader.js +1385 -1244
  235. package/dist-es/psdReader.js.map +1 -1
  236. package/dist-es/psdWriter.d.ts +34 -34
  237. package/dist-es/psdWriter.js +834 -794
  238. package/dist-es/psdWriter.js.map +1 -1
  239. package/dist-es/text.d.ts +179 -179
  240. package/dist-es/text.js +552 -548
  241. package/dist-es/text.js.map +1 -1
  242. package/dist-es/utf8.d.ts +4 -6
  243. package/dist-es/utf8.js +156 -150
  244. package/dist-es/utf8.js.map +1 -1
  245. package/package.json +4 -3
  246. package/src/helpers.ts +13 -3
  247. package/src/index.ts +4 -6
  248. package/src/psd.ts +4 -0
  249. package/src/psdReader.ts +136 -43
  250. package/src/psdWriter.ts +42 -23
  251. package/tsconfig-es6.json +2 -1
  252. package/tsconfig.json +1 -0
package/dist/ase.d.ts CHANGED
@@ -1,32 +1,32 @@
1
- export type AseColorType = 'global' | 'spot' | 'normal';
2
- export interface AseColor {
3
- name: string;
4
- color: {
5
- r: number;
6
- g: number;
7
- b: number;
8
- type: AseColorType;
9
- } | {
10
- c: number;
11
- m: number;
12
- y: number;
13
- k: number;
14
- type: AseColorType;
15
- } | {
16
- k: number;
17
- type: AseColorType;
18
- } | {
19
- l: number;
20
- a: number;
21
- b: number;
22
- type: AseColorType;
23
- };
24
- }
25
- export interface AseGroup {
26
- name: string;
27
- colors: AseColor[];
28
- }
29
- export interface Ase {
30
- colors: (AseGroup | AseColor)[];
31
- }
32
- export declare function readAse(buffer: ArrayBufferView): Ase;
1
+ export type AseColorType = 'global' | 'spot' | 'normal';
2
+ export interface AseColor {
3
+ name: string;
4
+ color: {
5
+ r: number;
6
+ g: number;
7
+ b: number;
8
+ type: AseColorType;
9
+ } | {
10
+ c: number;
11
+ m: number;
12
+ y: number;
13
+ k: number;
14
+ type: AseColorType;
15
+ } | {
16
+ k: number;
17
+ type: AseColorType;
18
+ } | {
19
+ l: number;
20
+ a: number;
21
+ b: number;
22
+ type: AseColorType;
23
+ };
24
+ }
25
+ export interface AseGroup {
26
+ name: string;
27
+ colors: AseColor[];
28
+ }
29
+ export interface Ase {
30
+ colors: (AseGroup | AseColor)[];
31
+ }
32
+ export declare function readAse(buffer: ArrayBufferView): Ase;
package/dist/ase.js CHANGED
@@ -1,83 +1,82 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.readAse = void 0;
4
- const psdReader_1 = require("./psdReader");
5
- function readAse(buffer) {
6
- const reader = (0, psdReader_1.createReader)(buffer.buffer, buffer.byteOffset, buffer.byteLength);
7
- const signature = (0, psdReader_1.readSignature)(reader); // ASEF
8
- if (signature !== 'ASEF')
9
- throw new Error('Invalid signature');
10
- const versionMajor = (0, psdReader_1.readUint16)(reader); // 1
11
- const versionMinor = (0, psdReader_1.readUint16)(reader); // 0
12
- if (versionMajor !== 1 || versionMinor !== 0)
13
- throw new Error('Invalid version');
14
- const blocksCount = (0, psdReader_1.readUint32)(reader);
15
- const colorTypes = ['global', 'spot', 'normal'];
16
- const ase = { colors: [] };
17
- let group = ase;
18
- for (let i = 0; i < blocksCount; i++) {
19
- const type = (0, psdReader_1.readUint16)(reader);
20
- const length = (0, psdReader_1.readUint32)(reader);
21
- const end = reader.offset + length;
22
- switch (type) {
23
- case 0x0001: { // color
24
- const nameLength = (0, psdReader_1.readUint16)(reader);
25
- const name = (0, psdReader_1.readUnicodeStringWithLength)(reader, nameLength);
26
- const colorMode = (0, psdReader_1.readSignature)(reader);
27
- let color;
28
- switch (colorMode) {
29
- case 'RGB ':
30
- color = {
31
- r: (0, psdReader_1.readFloat32)(reader),
32
- g: (0, psdReader_1.readFloat32)(reader),
33
- b: (0, psdReader_1.readFloat32)(reader),
34
- type: colorTypes[(0, psdReader_1.readUint16)(reader)],
35
- };
36
- break;
37
- case 'CMYK':
38
- color = {
39
- c: (0, psdReader_1.readFloat32)(reader),
40
- m: (0, psdReader_1.readFloat32)(reader),
41
- y: (0, psdReader_1.readFloat32)(reader),
42
- k: (0, psdReader_1.readFloat32)(reader),
43
- type: colorTypes[(0, psdReader_1.readUint16)(reader)],
44
- };
45
- break;
46
- case 'Gray':
47
- color = {
48
- k: (0, psdReader_1.readFloat32)(reader),
49
- type: colorTypes[(0, psdReader_1.readUint16)(reader)],
50
- };
51
- break;
52
- case 'LAB ':
53
- color = {
54
- l: (0, psdReader_1.readFloat32)(reader),
55
- a: (0, psdReader_1.readFloat32)(reader),
56
- b: (0, psdReader_1.readFloat32)(reader),
57
- type: colorTypes[(0, psdReader_1.readUint16)(reader)],
58
- };
59
- break;
60
- default:
61
- throw new Error('Invalid color mode');
62
- }
63
- group.colors.push({ name, color });
64
- break;
65
- }
66
- case 0xC001: { // group start
67
- const nameLength = (0, psdReader_1.readUint16)(reader);
68
- const name = (0, psdReader_1.readUnicodeStringWithLength)(reader, nameLength);
69
- ase.colors.push(group = { name, colors: [] });
70
- break;
71
- }
72
- case 0xC002: // group end
73
- group = ase;
74
- break;
75
- default:
76
- throw new Error('Invalid block type');
77
- }
78
- reader.offset = end;
79
- }
80
- return ase;
81
- }
82
- exports.readAse = readAse;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readAse = readAse;
4
+ const psdReader_1 = require("./psdReader");
5
+ function readAse(buffer) {
6
+ const reader = (0, psdReader_1.createReader)(buffer.buffer, buffer.byteOffset, buffer.byteLength);
7
+ const signature = (0, psdReader_1.readSignature)(reader); // ASEF
8
+ if (signature !== 'ASEF')
9
+ throw new Error('Invalid signature');
10
+ const versionMajor = (0, psdReader_1.readUint16)(reader); // 1
11
+ const versionMinor = (0, psdReader_1.readUint16)(reader); // 0
12
+ if (versionMajor !== 1 || versionMinor !== 0)
13
+ throw new Error('Invalid version');
14
+ const blocksCount = (0, psdReader_1.readUint32)(reader);
15
+ const colorTypes = ['global', 'spot', 'normal'];
16
+ const ase = { colors: [] };
17
+ let group = ase;
18
+ for (let i = 0; i < blocksCount; i++) {
19
+ const type = (0, psdReader_1.readUint16)(reader);
20
+ const length = (0, psdReader_1.readUint32)(reader);
21
+ const end = reader.offset + length;
22
+ switch (type) {
23
+ case 0x0001: { // color
24
+ const nameLength = (0, psdReader_1.readUint16)(reader);
25
+ const name = (0, psdReader_1.readUnicodeStringWithLength)(reader, nameLength);
26
+ const colorMode = (0, psdReader_1.readSignature)(reader);
27
+ let color;
28
+ switch (colorMode) {
29
+ case 'RGB ':
30
+ color = {
31
+ r: (0, psdReader_1.readFloat32)(reader),
32
+ g: (0, psdReader_1.readFloat32)(reader),
33
+ b: (0, psdReader_1.readFloat32)(reader),
34
+ type: colorTypes[(0, psdReader_1.readUint16)(reader)],
35
+ };
36
+ break;
37
+ case 'CMYK':
38
+ color = {
39
+ c: (0, psdReader_1.readFloat32)(reader),
40
+ m: (0, psdReader_1.readFloat32)(reader),
41
+ y: (0, psdReader_1.readFloat32)(reader),
42
+ k: (0, psdReader_1.readFloat32)(reader),
43
+ type: colorTypes[(0, psdReader_1.readUint16)(reader)],
44
+ };
45
+ break;
46
+ case 'Gray':
47
+ color = {
48
+ k: (0, psdReader_1.readFloat32)(reader),
49
+ type: colorTypes[(0, psdReader_1.readUint16)(reader)],
50
+ };
51
+ break;
52
+ case 'LAB ':
53
+ color = {
54
+ l: (0, psdReader_1.readFloat32)(reader),
55
+ a: (0, psdReader_1.readFloat32)(reader),
56
+ b: (0, psdReader_1.readFloat32)(reader),
57
+ type: colorTypes[(0, psdReader_1.readUint16)(reader)],
58
+ };
59
+ break;
60
+ default:
61
+ throw new Error('Invalid color mode');
62
+ }
63
+ group.colors.push({ name, color });
64
+ break;
65
+ }
66
+ case 0xC001: { // group start
67
+ const nameLength = (0, psdReader_1.readUint16)(reader);
68
+ const name = (0, psdReader_1.readUnicodeStringWithLength)(reader, nameLength);
69
+ ase.colors.push(group = { name, colors: [] });
70
+ break;
71
+ }
72
+ case 0xC002: // group end
73
+ group = ase;
74
+ break;
75
+ default:
76
+ throw new Error('Invalid block type');
77
+ }
78
+ reader.offset = end;
79
+ }
80
+ return ase;
81
+ }
83
82
  //# sourceMappingURL=ase.js.map
package/dist/ase.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ase.js","sourceRoot":"../src/","sources":["ase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ase.js","sourceRoot":"../src/","sources":["ase.ts"],"names":[],"mappings":"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"}