ag-psd 17.0.4 → 17.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## v17.0.6
4
+ - Fixed broken file after saving with layer name longer than 255 characters
5
+
6
+ ## v17.0.5
7
+ - Fixed incorrect parsing of external linked files
8
+ - Fixed incorrect parsing of compositorUsed section when some fields are missing
9
+
3
10
  ## v17.0.4
4
11
  - Fixed saving smart layers without placedLayer.warp field present for newer versions of photoshop
5
12
 
@@ -1861,6 +1861,42 @@ else {
1861
1861
  }, function (_writer, _target) {
1862
1862
  });
1863
1863
  }
1864
+ /*
1865
+ interface CAIDesc {
1866
+ enab: boolean;
1867
+ generationalGuid: string;
1868
+ }
1869
+
1870
+ addHandler(
1871
+ 'CAI ', // content credentials ? something to do with generative tech
1872
+ () => false,
1873
+ (reader, _target, left) => {
1874
+ const version = readUint32(reader); // 3
1875
+ const desc = readVersionAndDescriptor(reader) as CAIDesc;
1876
+ console.log('CAI', require('util').inspect(desc, false, 99, true));
1877
+ console.log('CAI', { version });
1878
+ console.log('CAI left', readBytes(reader, left())); // 8 bytes left, all zeroes
1879
+ },
1880
+ (_writer, _target) => {
1881
+ },
1882
+ );
1883
+ */
1884
+ /*
1885
+ interface GenIDesc {
1886
+ isUsingGenTech: number;
1887
+ }
1888
+
1889
+ addHandler(
1890
+ 'GenI', // generative tech
1891
+ () => false,
1892
+ (reader, _target, left) => {
1893
+ const desc = readVersionAndDescriptor(reader) as GenIDesc;
1894
+ console.log('GenI', require('util').inspect(desc, false, 99, true));
1895
+ },
1896
+ (_writer, _target) => {
1897
+ },
1898
+ );
1899
+ */
1864
1900
  function readRect(reader) {
1865
1901
  var top = (0, psdReader_1.readInt32)(reader);
1866
1902
  var left = (0, psdReader_1.readInt32)(reader);
@@ -1977,6 +2013,9 @@ addHandler('lnk2', function (target) { return !!target.linkedFiles && target.lin
1977
2013
  var size = readLength64(reader); // size
1978
2014
  var startOffset = reader.offset;
1979
2015
  var type = (0, psdReader_1.readSignature)(reader);
2016
+ // liFD - linked file data
2017
+ // liFE - linked file external
2018
+ // liFA - linked file alias
1980
2019
  var version = (0, psdReader_1.readInt32)(reader);
1981
2020
  var id = (0, psdReader_1.readPascalString)(reader, 1);
1982
2021
  var name_3 = (0, psdReader_1.readUnicodeString)(reader);
@@ -1986,7 +2025,7 @@ addHandler('lnk2', function (target) { return !!target.linkedFiles && target.lin
1986
2025
  var hasFileOpenDescriptor = (0, psdReader_1.readUint8)(reader);
1987
2026
  var fileOpenDescriptor = hasFileOpenDescriptor ? (0, descriptor_1.readVersionAndDescriptor)(reader) : undefined;
1988
2027
  var linkedFileDescriptor = type === 'liFE' ? (0, descriptor_1.readVersionAndDescriptor)(reader) : undefined;
1989
- var file = { id: id, name: name_3, data: undefined };
2028
+ var file = { id: id, name: name_3 };
1990
2029
  if (fileType)
1991
2030
  file.type = fileType;
1992
2031
  if (fileCreator)
@@ -2014,14 +2053,14 @@ addHandler('lnk2', function (target) { return !!target.linkedFiles && target.lin
2014
2053
  if (type === 'liFA')
2015
2054
  (0, psdReader_1.skipBytes)(reader, 8);
2016
2055
  if (type === 'liFD')
2017
- file.data = (0, psdReader_1.readBytes)(reader, dataSize);
2056
+ file.data = (0, psdReader_1.readBytes)(reader, dataSize); // seems to be a typo in docs
2018
2057
  if (version >= 5)
2019
2058
  file.childDocumentID = (0, psdReader_1.readUnicodeString)(reader);
2020
2059
  if (version >= 6)
2021
2060
  file.assetModTime = (0, psdReader_1.readFloat64)(reader);
2022
2061
  if (version >= 7)
2023
2062
  file.assetLockedState = (0, psdReader_1.readUint8)(reader);
2024
- if (type === 'liFE')
2063
+ if (type === 'liFE' && version === 2)
2025
2064
  file.data = (0, psdReader_1.readBytes)(reader, fileSize);
2026
2065
  if (options.skipLinkedFilesData)
2027
2066
  file.data = undefined;
@@ -2962,11 +3001,15 @@ addHandler('cinf', hasKey('compositorUsed'), function (reader, target, left) {
2962
3001
  description: desc.description,
2963
3002
  reason: desc.reason,
2964
3003
  engine: enumValue(desc.Engn),
2965
- enableCompCore: enumValue(desc.enableCompCore),
2966
- enableCompCoreGPU: enumValue(desc.enableCompCoreGPU),
2967
- compCoreSupport: enumValue(desc.compCoreSupport),
2968
- compCoreGPUSupport: enumValue(desc.compCoreGPUSupport),
2969
3004
  };
3005
+ if (desc.enableCompCore)
3006
+ target.compositorUsed.enableCompCore = enumValue(desc.enableCompCore);
3007
+ if (desc.enableCompCoreGPU)
3008
+ target.compositorUsed.enableCompCoreGPU = enumValue(desc.enableCompCoreGPU);
3009
+ if (desc.compCoreSupport)
3010
+ target.compositorUsed.compCoreSupport = enumValue(desc.compCoreSupport);
3011
+ if (desc.compCoreGPUSupport)
3012
+ target.compositorUsed.compCoreGPUSupport = enumValue(desc.compCoreGPUSupport);
2970
3013
  (0, psdReader_1.skipBytes)(reader, left());
2971
3014
  }, function (writer, target) {
2972
3015
  var cinf = target.compositorUsed;
@@ -2976,12 +3019,16 @@ addHandler('cinf', hasKey('compositorUsed'), function (reader, target, left) {
2976
3019
  description: cinf.description,
2977
3020
  reason: cinf.reason,
2978
3021
  Engn: "Engn.".concat(cinf.engine),
2979
- enableCompCore: "enable.".concat(cinf.enableCompCore),
2980
- enableCompCoreGPU: "enable.".concat(cinf.enableCompCoreGPU),
2981
- // enableCompCoreThreads: `enable.feature`, // TESTING
2982
- compCoreSupport: "reason.".concat(cinf.compCoreSupport),
2983
- compCoreGPUSupport: "reason.".concat(cinf.compCoreGPUSupport),
2984
3022
  };
3023
+ if (cinf.enableCompCore)
3024
+ desc.enableCompCore = "enable.".concat(cinf.enableCompCore);
3025
+ if (cinf.enableCompCoreGPU)
3026
+ desc.enableCompCoreGPU = "enable.".concat(cinf.enableCompCoreGPU);
3027
+ // desc.enableCompCoreThreads = `enable.feature`; // TESTING
3028
+ if (cinf.compCoreSupport)
3029
+ desc.compCoreSupport = "reason.".concat(cinf.compCoreSupport);
3030
+ if (cinf.compCoreGPUSupport)
3031
+ desc.compCoreGPUSupport = "reason.".concat(cinf.compCoreGPUSupport);
2985
3032
  (0, descriptor_1.writeVersionAndDescriptor)(writer, '', 'null', desc);
2986
3033
  });
2987
3034
  // extension settings ?, ignore it