@4bitlabs/sci0 5.0.1 → 6.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 (130) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +13 -0
  2. package/dist/index.d.ts +25 -26
  3. package/dist/index.js +11 -46
  4. package/dist/models/cel.d.ts +7 -4
  5. package/dist/models/cel.d.ts.map +1 -1
  6. package/dist/models/cursor.d.ts +6 -3
  7. package/dist/models/cursor.d.ts.map +1 -1
  8. package/dist/models/draw-codes.d.ts +4 -5
  9. package/dist/models/draw-codes.d.ts.map +1 -1
  10. package/dist/models/draw-command.d.ts +5 -2
  11. package/dist/models/draw-command.d.ts.map +1 -1
  12. package/dist/models/draw-commands.d.ts +16 -46
  13. package/dist/models/draw-commands.d.ts.map +1 -1
  14. package/dist/models/draw-mode.d.ts +21 -18
  15. package/dist/models/draw-mode.d.ts.map +1 -1
  16. package/dist/models/draw-mode.js +20 -25
  17. package/dist/models/draw-mode.js.map +1 -1
  18. package/dist/models/font-face.d.ts +7 -4
  19. package/dist/models/font-face.d.ts.map +1 -1
  20. package/dist/models/pattern-code.d.ts +4 -5
  21. package/dist/models/pattern-code.d.ts.map +1 -1
  22. package/dist/models/pic.d.ts +6 -3
  23. package/dist/models/pic.d.ts.map +1 -1
  24. package/dist/models/resource-header.d.ts +12 -9
  25. package/dist/models/resource-header.d.ts.map +1 -1
  26. package/dist/models/resource-id.d.ts +10 -5
  27. package/dist/models/resource-id.d.ts.map +1 -1
  28. package/dist/models/resource-id.js +28 -36
  29. package/dist/models/resource-id.js.map +1 -1
  30. package/dist/models/resource-map.d.ts +7 -4
  31. package/dist/models/resource-map.d.ts.map +1 -1
  32. package/dist/models/resource-type.d.ts +5 -2
  33. package/dist/models/resource-type.d.ts.map +1 -1
  34. package/dist/models/resource-types.d.ts +15 -10
  35. package/dist/models/resource-types.d.ts.map +1 -1
  36. package/dist/models/resource-types.js +17 -13
  37. package/dist/models/resource-types.js.map +1 -1
  38. package/dist/models/view.d.ts +16 -13
  39. package/dist/models/view.d.ts.map +1 -1
  40. package/dist/parsers/compression.d.ts +4 -1
  41. package/dist/parsers/compression.d.ts.map +1 -1
  42. package/dist/parsers/compression.js +36 -54
  43. package/dist/parsers/compression.js.map +1 -1
  44. package/dist/parsers/mapping.d.ts +5 -3
  45. package/dist/parsers/mapping.d.ts.map +1 -1
  46. package/dist/parsers/mapping.js +18 -23
  47. package/dist/parsers/mapping.js.map +1 -1
  48. package/dist/parsers/parse-cel.js +26 -29
  49. package/dist/parsers/parse-cel.js.map +1 -1
  50. package/dist/parsers/parse-cursor-options.d.ts +10 -7
  51. package/dist/parsers/parse-cursor-options.d.ts.map +1 -1
  52. package/dist/parsers/parse-cursor.d.ts +6 -3
  53. package/dist/parsers/parse-cursor.d.ts.map +1 -1
  54. package/dist/parsers/parse-cursor.js +34 -36
  55. package/dist/parsers/parse-cursor.js.map +1 -1
  56. package/dist/parsers/parse-font-options.d.ts +6 -3
  57. package/dist/parsers/parse-font-options.d.ts.map +1 -1
  58. package/dist/parsers/parse-font.d.ts +6 -3
  59. package/dist/parsers/parse-font.d.ts.map +1 -1
  60. package/dist/parsers/parse-font.js +27 -30
  61. package/dist/parsers/parse-font.js.map +1 -1
  62. package/dist/parsers/parse-pic.d.ts +8 -5
  63. package/dist/parsers/parse-pic.d.ts.map +1 -1
  64. package/dist/parsers/parse-pic.js +22 -28
  65. package/dist/parsers/parse-pic.js.map +1 -1
  66. package/dist/parsers/parse-view.d.ts +5 -2
  67. package/dist/parsers/parse-view.d.ts.map +1 -1
  68. package/dist/parsers/parse-view.js +45 -41
  69. package/dist/parsers/parse-view.js.map +1 -1
  70. package/dist/parsers/pic/handlers.js +272 -208
  71. package/dist/parsers/pic/handlers.js.map +1 -1
  72. package/dist/parsers/pic/op-codes.js +37 -45
  73. package/dist/parsers/pic/op-codes.js.map +1 -1
  74. package/dist/parsers/pic/pic-state.js +16 -8
  75. package/dist/parsers/pic/pic-state.js.map +1 -1
  76. package/dist/parsers/pic/points.js +19 -45
  77. package/dist/parsers/pic/points.js.map +1 -1
  78. package/dist/parsers/resource-header.d.ts +6 -3
  79. package/dist/parsers/resource-header.d.ts.map +1 -1
  80. package/dist/parsers/resource-header.js +15 -20
  81. package/dist/parsers/resource-header.js.map +1 -1
  82. package/dist/utils/exhaustive.js +5 -4
  83. package/dist/utils/exhaustive.js.map +1 -1
  84. package/dist/utils/repeat.js +5 -7
  85. package/dist/utils/repeat.js.map +1 -1
  86. package/package.json +17 -15
  87. package/dist/index.d.ts.map +0 -1
  88. package/dist/index.js.map +0 -1
  89. package/dist/models/cel.js +0 -3
  90. package/dist/models/cel.js.map +0 -1
  91. package/dist/models/cursor.js +0 -3
  92. package/dist/models/cursor.js.map +0 -1
  93. package/dist/models/draw-codes.js +0 -3
  94. package/dist/models/draw-codes.js.map +0 -1
  95. package/dist/models/draw-command.js +0 -3
  96. package/dist/models/draw-command.js.map +0 -1
  97. package/dist/models/draw-commands.js +0 -3
  98. package/dist/models/draw-commands.js.map +0 -1
  99. package/dist/models/font-face.js +0 -3
  100. package/dist/models/font-face.js.map +0 -1
  101. package/dist/models/pattern-code.js +0 -3
  102. package/dist/models/pattern-code.js.map +0 -1
  103. package/dist/models/pic.js +0 -3
  104. package/dist/models/pic.js.map +0 -1
  105. package/dist/models/resource-header.js +0 -3
  106. package/dist/models/resource-header.js.map +0 -1
  107. package/dist/models/resource-map.js +0 -3
  108. package/dist/models/resource-map.js.map +0 -1
  109. package/dist/models/resource-type.js +0 -3
  110. package/dist/models/resource-type.js.map +0 -1
  111. package/dist/models/view.js +0 -3
  112. package/dist/models/view.js.map +0 -1
  113. package/dist/parsers/parse-cel.d.ts +0 -3
  114. package/dist/parsers/parse-cel.d.ts.map +0 -1
  115. package/dist/parsers/parse-cursor-options.js +0 -3
  116. package/dist/parsers/parse-cursor-options.js.map +0 -1
  117. package/dist/parsers/parse-font-options.js +0 -3
  118. package/dist/parsers/parse-font-options.js.map +0 -1
  119. package/dist/parsers/pic/handlers.d.ts +0 -8
  120. package/dist/parsers/pic/handlers.d.ts.map +0 -1
  121. package/dist/parsers/pic/op-codes.d.ts +0 -32
  122. package/dist/parsers/pic/op-codes.d.ts.map +0 -1
  123. package/dist/parsers/pic/pic-state.d.ts +0 -10
  124. package/dist/parsers/pic/pic-state.d.ts.map +0 -1
  125. package/dist/parsers/pic/points.d.ts +0 -6
  126. package/dist/parsers/pic/points.d.ts.map +0 -1
  127. package/dist/utils/exhaustive.d.ts +0 -2
  128. package/dist/utils/exhaustive.d.ts.map +0 -1
  129. package/dist/utils/repeat.d.ts +0 -2
  130. package/dist/utils/repeat.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"op-codes.js","sourceRoot":"","sources":["../../../src/parsers/pic/op-codes.ts"],"names":[],"mappings":";;;AAAA,IAAY,MA0BX;AA1BD,WAAY,MAAM;IAChB,gBAAgB;IAChB,+CAAgB,CAAA;IAChB,mDAAkB,CAAA;IAClB,mDAAkB,CAAA;IAClB,uDAAoB,CAAA;IACpB,iDAAiB,CAAA;IACjB,qDAAmB,CAAA;IAEnB,QAAQ;IACR,iDAAiB,CAAA;IACjB,mDAAkB,CAAA;IAClB,+CAAgB,CAAA;IAEhB,WAAW;IACX,iDAAiB,CAAA;IACjB,qDAAmB,CAAA;IACnB,uDAAoB,CAAA;IACpB,mDAAkB,CAAA;IAElB,QAAQ;IACR,uCAAY,CAAA;IAEZ,aAAa;IACb,mCAAU,CAAA;IACV,qCAAW,CAAA;AACb,CAAC,EA1BW,MAAM,sBAAN,MAAM,QA0BjB;AAED,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAElC,MAAM,QAAQ,GAAG,CAAC,EAAW,EAAgB,EAAE,CACpD,OAAO,EAAE,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAD/D,QAAA,QAAQ,YACuD;AAE5E,IAAY,cAUX;AAVD,WAAY,cAAc;IACxB,qEAAoB,CAAA;IACpB,+DAAiB,CAAA;IACjB,iDAAU,CAAA;IACV,iDAAU,CAAA;IACV,iDAAU,CAAA;IACV,iDAAU,CAAA;IACV,iDAAU,CAAA;IACV,iDAAU,CAAA;IACV,iDAAU,CAAA;AACZ,CAAC,EAVW,cAAc,8BAAd,cAAc,QAUzB;AAED,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;AAElD,MAAM,gBAAgB,GAAG,CAAC,EAAW,EAAwB,EAAE,CACpE,OAAO,EAAE,KAAK,QAAQ;IACtB,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;IACpB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAHrB,QAAA,gBAAgB,oBAGK"}
1
+ {"version":3,"file":"op-codes.js","names":[],"sources":["../../../src/parsers/pic/op-codes.ts"],"sourcesContent":["export enum OpCode {\n // Layer Control\n SetVisual = 0xf0,\n ClearVisual = 0xf1,\n SetPriority = 0xf2,\n ClearPriority = 0xf3,\n SetControl = 0xfb,\n ClearControl = 0xfc,\n\n // Lines\n ShortLines = 0xf7,\n MediumLines = 0xf5,\n LongLines = 0xf6,\n\n // Patterns\n SetPattern = 0xf9,\n ShortBrushes = 0xf4,\n MediumBrushes = 0xfd,\n LongBrushes = 0xfa,\n\n // Fills\n Fills = 0xf8,\n\n // Extensions\n XOp = 0xfe,\n Done = 0xff,\n}\n\nconst allOpCodes = Object.values(OpCode);\n\nexport const isOpCode = (it: unknown): it is OpCode =>\n typeof it === 'number' && Number.isInteger(it) && allOpCodes.includes(it);\n\nexport enum ExtendedOpCode {\n UpdatePalette = 0x00,\n SetPalette = 0x01,\n x02 = 0x02,\n x03 = 0x03,\n x04 = 0x04,\n x05 = 0x05,\n x06 = 0x06,\n x07 = 0x07,\n x08 = 0x08,\n}\n\nconst allExtendedOpCodes = Object.values(ExtendedOpCode);\n\nexport const isExtendedOpCode = (it: unknown): it is ExtendedOpCode =>\n typeof it === 'number' &&\n Number.isInteger(it) &&\n allExtendedOpCodes.includes(it);\n"],"mappings":";AAAA,IAAY,SAAL,yBAAA,QAAA;CAEL,OAAA,OAAA,eAAA,OAAA;CACA,OAAA,OAAA,iBAAA,OAAA;CACA,OAAA,OAAA,iBAAA,OAAA;CACA,OAAA,OAAA,mBAAA,OAAA;CACA,OAAA,OAAA,gBAAA,OAAA;CACA,OAAA,OAAA,kBAAA,OAAA;CAGA,OAAA,OAAA,gBAAA,OAAA;CACA,OAAA,OAAA,iBAAA,OAAA;CACA,OAAA,OAAA,eAAA,OAAA;CAGA,OAAA,OAAA,gBAAA,OAAA;CACA,OAAA,OAAA,kBAAA,OAAA;CACA,OAAA,OAAA,mBAAA,OAAA;CACA,OAAA,OAAA,iBAAA,OAAA;CAGA,OAAA,OAAA,WAAA,OAAA;CAGA,OAAA,OAAA,SAAA,OAAA;CACA,OAAA,OAAA,UAAA,OAAA;;AACF,EAAA,CAAA,CAAA;AAEA,MAAM,aAAa,OAAO,OAAO,MAAM;AAEvC,MAAa,YAAY,OACvB,OAAO,OAAO,YAAY,OAAO,UAAU,EAAE,KAAK,WAAW,SAAS,EAAE;AAE1E,IAAY,iBAAL,yBAAA,gBAAA;CACL,eAAA,eAAA,mBAAA,KAAA;CACA,eAAA,eAAA,gBAAA,KAAA;CACA,eAAA,eAAA,SAAA,KAAA;CACA,eAAA,eAAA,SAAA,KAAA;CACA,eAAA,eAAA,SAAA,KAAA;CACA,eAAA,eAAA,SAAA,KAAA;CACA,eAAA,eAAA,SAAA,KAAA;CACA,eAAA,eAAA,SAAA,KAAA;CACA,eAAA,eAAA,SAAA,KAAA;;AACF,EAAA,CAAA,CAAA;AAEA,MAAM,qBAAqB,OAAO,OAAO,cAAc;AAEvD,MAAa,oBAAoB,OAC/B,OAAO,OAAO,YACd,OAAO,UAAU,EAAE,KACnB,mBAAmB,SAAS,EAAE"}
@@ -1,11 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createPicState = void 0;
4
- const draw_mode_1 = require("../../models/draw-mode");
1
+ import "../../models/draw-mode.js";
2
+ //#region src/parsers/pic/pic-state.ts
5
3
  const createPicState = () => ({
6
- drawMode: draw_mode_1.DrawMode.Visual | draw_mode_1.DrawMode.Priority,
7
- drawCodes: [0, 0, 0],
8
- patternCode: [0, false, false],
4
+ drawMode: 3,
5
+ drawCodes: [
6
+ 0,
7
+ 0,
8
+ 0
9
+ ],
10
+ patternCode: [
11
+ 0,
12
+ false,
13
+ false
14
+ ]
9
15
  });
10
- exports.createPicState = createPicState;
16
+ //#endregion
17
+ export { createPicState };
18
+
11
19
  //# sourceMappingURL=pic-state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pic-state.js","sourceRoot":"","sources":["../../../src/parsers/pic/pic-state.ts"],"names":[],"mappings":";;;AAAA,sDAAkD;AAU3C,MAAM,cAAc,GAAG,GAAa,EAAE,CAAC,CAAC;IAC7C,QAAQ,EAAE,oBAAQ,CAAC,MAAM,GAAG,oBAAQ,CAAC,QAAQ;IAC7C,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACpB,WAAW,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC;CAC/B,CAAC,CAAC;AAJU,QAAA,cAAc,kBAIxB"}
1
+ {"version":3,"file":"pic-state.js","names":[],"sources":["../../../src/parsers/pic/pic-state.ts"],"sourcesContent":["import { DrawMode } from '../../models/draw-mode.js';\nimport type { DrawCodes } from '../../models/draw-codes.js';\nimport type { PatternCode } from '../../models/pattern-code.js';\n\nexport interface PicState {\n drawMode: DrawMode;\n drawCodes: DrawCodes;\n patternCode: PatternCode;\n}\n\nexport const createPicState = (): PicState => ({\n drawMode: DrawMode.Visual | DrawMode.Priority,\n drawCodes: [0, 0, 0],\n patternCode: [0, false, false],\n});\n"],"mappings":";;AAUA,MAAa,wBAAkC;CAC7C,UAAA;CACA,WAAW;EAAC;EAAG;EAAG;CAAC;CACnB,aAAa;EAAC;EAAG;EAAO;CAAK;AAC/B"}
@@ -1,52 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPoint24 = getPoint24;
4
- exports.getPoint16 = getPoint16;
5
- exports.getPoint8 = getPoint8;
6
- const vec2_1 = require("@4bitlabs/vec2");
7
- // getPoint24 gets reads an absolute position from the
8
- // bit-stream. The format is 24-bits long:
9
- //
10
- // bits |
11
- // 0-3 | high nybble of x-position
12
- // 4-7 | high nybble of y-position
13
- // 8-15 | low byte of x-position
14
- // 16-23 | low byte of y-position
15
- //
1
+ import { set } from "@4bitlabs/vec2";
2
+ //#region src/parsers/pic/points.ts
16
3
  function getPoint24(br, out) {
17
- const code = br.read32(24);
18
- const x = ((code & 0xf00000) >>> 12) | ((code & 0xff00) >>> 8);
19
- const y = ((code & 0x0f0000) >>> 8) | ((code & 0x00ff) >>> 0);
20
- return (0, vec2_1.set)(x, y, out);
4
+ const code = br.read32(24);
5
+ return set((code & 15728640) >>> 12 | (code & 65280) >>> 8, (code & 983040) >>> 8 | (code & 255) >>> 0, out);
21
6
  }
22
- // getPoint16 reads a medium length delta from the bit-stream.
23
- // The total PayloadBytes is 16-bits long:
24
- //
25
- // bits |
26
- // 0-7 | y-delta
27
- // 8-15 | x-delta
28
- //
29
7
  function getPoint16(br, out, ref) {
30
- const y = br.read32(8);
31
- const absY = y & 127;
32
- const dy = (y & 128) !== 0 ? -absY : absY;
33
- const x = br.read32(8);
34
- const dx = x > 127 ? x - 256 : x;
35
- return (0, vec2_1.set)(ref[0] + dx, ref[1] + dy, out);
8
+ const y = br.read32(8);
9
+ const absY = y & 127;
10
+ const dy = (y & 128) !== 0 ? -absY : absY;
11
+ const x = br.read32(8);
12
+ const dx = x > 127 ? x - 256 : x;
13
+ return set(ref[0] + dx, ref[1] + dy, out);
36
14
  }
37
- // getPoint8 reads a medium length delta from the bit-stream.
38
- // The total PayloadBytes is 8-bits long:
39
- //
40
- // bits |
41
- // 0-3 | y-delta
42
- // 4-7 | x-delta
43
- //
44
15
  function getPoint8(br, out, ref) {
45
- const code = br.read32(8);
46
- const xSign = ((code >>> 4) & 0b1000) !== 0;
47
- const ySign = ((code >>> 0) & 0b1000) !== 0;
48
- const dx = (code >>> 4) & 0b111;
49
- const dy = (code >>> 0) & 0b111;
50
- return (0, vec2_1.set)(ref[0] + (xSign ? -dx : dx), ref[1] + (ySign ? -dy : dy), out);
16
+ const code = br.read32(8);
17
+ const xSign = (code >>> 4 & 8) !== 0;
18
+ const ySign = (code >>> 0 & 8) !== 0;
19
+ const dx = code >>> 4 & 7;
20
+ const dy = code >>> 0 & 7;
21
+ return set(ref[0] + (xSign ? -dx : dx), ref[1] + (ySign ? -dy : dy), out);
51
22
  }
23
+ //#endregion
24
+ export { getPoint16, getPoint24, getPoint8 };
25
+
52
26
  //# sourceMappingURL=points.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"points.js","sourceRoot":"","sources":["../../../src/parsers/pic/points.ts"],"names":[],"mappings":";;AAYA,gCAKC;AASD,gCAaC;AASD,8BAaC;AA5DD,yCAAkE;AAElE,sDAAsD;AACtD,0CAA0C;AAC1C,EAAE;AACF,UAAU;AACV,oCAAoC;AACpC,oCAAoC;AACpC,iCAAiC;AACjC,iCAAiC;AACjC,EAAE;AACF,SAAgB,UAAU,CAAC,EAAa,EAAE,GAAgB;IACxD,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9D,OAAO,IAAA,UAAG,EAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,8DAA8D;AAC9D,0CAA0C;AAC1C,EAAE;AACF,SAAS;AACT,iBAAiB;AACjB,iBAAiB;AACjB,EAAE;AACF,SAAgB,UAAU,CACxB,EAAa,EACb,GAAgB,EAChB,GAAmB;IAEnB,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACvB,MAAM,IAAI,GAAG,CAAC,GAAG,GAAW,CAAC;IAC7B,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,GAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAElD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACvB,MAAM,EAAE,GAAG,CAAC,GAAG,GAAW,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzC,OAAO,IAAA,UAAG,EAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;AAC5C,CAAC;AAED,6DAA6D;AAC7D,yCAAyC;AACzC,EAAE;AACF,SAAS;AACT,iBAAiB;AACjB,iBAAiB;AACjB,EAAE;AACF,SAAgB,SAAS,CACvB,EAAa,EACb,GAAgB,EAChB,GAAmB;IAEnB,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE1B,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC;IAChC,MAAM,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC;IAEhC,OAAO,IAAA,UAAG,EAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;AAC5E,CAAC"}
1
+ {"version":3,"file":"points.js","names":[],"sources":["../../../src/parsers/pic/points.ts"],"sourcesContent":["import type { BitReader } from '@4bitlabs/readers';\nimport { type Vec2, type MutableVec2, set } from '@4bitlabs/vec2';\n\n// getPoint24 gets reads an absolute position from the\n// bit-stream. The format is 24-bits long:\n//\n// bits |\n// 0-3 | high nybble of x-position\n// 4-7 | high nybble of y-position\n// 8-15 | low byte of x-position\n// 16-23 | low byte of y-position\n//\nexport function getPoint24(br: BitReader, out: MutableVec2): MutableVec2 {\n const code = br.read32(24);\n const x = ((code & 0xf00000) >>> 12) | ((code & 0xff00) >>> 8);\n const y = ((code & 0x0f0000) >>> 8) | ((code & 0x00ff) >>> 0);\n return set(x, y, out);\n}\n\n// getPoint16 reads a medium length delta from the bit-stream.\n// The total PayloadBytes is 16-bits long:\n//\n// bits |\n// 0-7 | y-delta\n// 8-15 | x-delta\n//\nexport function getPoint16(\n br: BitReader,\n out: MutableVec2,\n ref: Readonly<Vec2>,\n): MutableVec2 {\n const y = br.read32(8);\n const absY = y & 0b0111_1111;\n const dy = (y & 0b1000_0000) !== 0 ? -absY : absY;\n\n const x = br.read32(8);\n const dx = x > 0b0111_1111 ? x - 256 : x;\n\n return set(ref[0] + dx, ref[1] + dy, out);\n}\n\n// getPoint8 reads a medium length delta from the bit-stream.\n// The total PayloadBytes is 8-bits long:\n//\n// bits |\n// 0-3 | y-delta\n// 4-7 | x-delta\n//\nexport function getPoint8(\n br: BitReader,\n out: MutableVec2,\n ref: Readonly<Vec2>,\n): MutableVec2 {\n const code = br.read32(8);\n\n const xSign = ((code >>> 4) & 0b1000) !== 0;\n const ySign = ((code >>> 0) & 0b1000) !== 0;\n const dx = (code >>> 4) & 0b111;\n const dy = (code >>> 0) & 0b111;\n\n return set(ref[0] + (xSign ? -dx : dx), ref[1] + (ySign ? -dy : dy), out);\n}\n"],"mappings":";;AAYA,SAAgB,WAAW,IAAe,KAA+B;CACvE,MAAM,OAAO,GAAG,OAAO,EAAE;CAGzB,OAAO,KAFK,OAAO,cAAc,MAAQ,OAAO,WAAY,IAChD,OAAO,YAAc,KAAO,OAAO,SAAY,GAC1C,GAAG;AACtB;AASA,SAAgB,WACd,IACA,KACA,KACa;CACb,MAAM,IAAI,GAAG,OAAO,CAAC;CACrB,MAAM,OAAO,IAAI;CACjB,MAAM,MAAM,IAAI,SAAiB,IAAI,CAAC,OAAO;CAE7C,MAAM,IAAI,GAAG,OAAO,CAAC;CACrB,MAAM,KAAK,IAAI,MAAc,IAAI,MAAM;CAEvC,OAAO,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,IAAI,GAAG;AAC1C;AASA,SAAgB,UACd,IACA,KACA,KACa;CACb,MAAM,OAAO,GAAG,OAAO,CAAC;CAExB,MAAM,SAAU,SAAS,IAAK,OAAY;CAC1C,MAAM,SAAU,SAAS,IAAK,OAAY;CAC1C,MAAM,KAAM,SAAS,IAAK;CAC1B,MAAM,KAAM,SAAS,IAAK;CAE1B,OAAO,IAAI,IAAI,MAAM,QAAQ,CAAC,KAAK,KAAK,IAAI,MAAM,QAAQ,CAAC,KAAK,KAAK,GAAG;AAC1E"}
@@ -1,4 +1,7 @@
1
- import { ResourceHeader } from '../models/resource-header';
2
- export declare const parseHeaderFrom: (bytes: Uint8Array, offset?: number) => ResourceHeader;
3
- export declare const parseHeaderWithPayload: (bytes: Uint8Array, offset?: number) => [ResourceHeader, Uint8Array];
1
+ import { ResourceHeader } from "../models/resource-header.js";
2
+ //#region src/parsers/resource-header.d.ts
3
+ declare const parseHeaderFrom: (bytes: Uint8Array, offset?: number) => ResourceHeader;
4
+ declare const parseHeaderWithPayload: (bytes: Uint8Array, offset?: number) => [ResourceHeader, Uint8Array];
5
+ //#endregion
6
+ export { parseHeaderFrom, parseHeaderWithPayload };
4
7
  //# sourceMappingURL=resource-header.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-header.d.ts","sourceRoot":"","sources":["../../src/parsers/resource-header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,eAAO,MAAM,eAAe,UACnB,UAAU,WACT,MAAM,KACb,cAkBF,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAC1B,UAAU,WACT,MAAM,KACb,CAAC,cAAc,EAAE,UAAU,CAK7B,CAAC"}
1
+ {"version":3,"file":"resource-header.d.ts","names":[],"sources":["../../src/parsers/resource-header.ts"],"mappings":";;cAEa,kBACX,OAAO,YACP,oBACC;cAoBU,yBACX,OAAO,YACP,qBACE,gBAAgB"}
@@ -1,25 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseHeaderWithPayload = exports.parseHeaderFrom = void 0;
1
+ //#region src/parsers/resource-header.ts
4
2
  const parseHeaderFrom = (bytes, offset = 0) => {
5
- const view = new DataView(bytes.buffer, bytes.byteOffset + offset, bytes.byteLength - offset);
6
- const id = view.getUint16(0, true);
7
- const packedSize = view.getUint16(2, true);
8
- const actualSize = view.getUint16(4, true);
9
- const compression = view.getUint16(6, true);
10
- return {
11
- id,
12
- packedSize,
13
- actualSize,
14
- compression,
15
- };
3
+ const view = new DataView(bytes.buffer, bytes.byteOffset + offset, bytes.byteLength - offset);
4
+ return {
5
+ id: view.getUint16(0, true),
6
+ packedSize: view.getUint16(2, true),
7
+ actualSize: view.getUint16(4, true),
8
+ compression: view.getUint16(6, true)
9
+ };
16
10
  };
17
- exports.parseHeaderFrom = parseHeaderFrom;
18
11
  const parseHeaderWithPayload = (bytes, offset = 0) => {
19
- const header = (0, exports.parseHeaderFrom)(bytes, offset);
20
- const start = offset + 8;
21
- const end = start + header.packedSize - 4;
22
- return [header, bytes.subarray(start, end)];
12
+ const header = parseHeaderFrom(bytes, offset);
13
+ const start = offset + 8;
14
+ const end = start + header.packedSize - 4;
15
+ return [header, bytes.subarray(start, end)];
23
16
  };
24
- exports.parseHeaderWithPayload = parseHeaderWithPayload;
17
+ //#endregion
18
+ export { parseHeaderFrom, parseHeaderWithPayload };
19
+
25
20
  //# sourceMappingURL=resource-header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-header.js","sourceRoot":"","sources":["../../src/parsers/resource-header.ts"],"names":[],"mappings":";;;AAEO,MAAM,eAAe,GAAG,CAC7B,KAAiB,EACjB,SAAiB,CAAC,EACF,EAAE;IAClB,MAAM,IAAI,GAAG,IAAI,QAAQ,CACvB,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,UAAU,GAAG,MAAM,EACzB,KAAK,CAAC,UAAU,GAAG,MAAM,CAC1B,CAAC;IAEF,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAE5C,OAAO;QACL,EAAE;QACF,UAAU;QACV,UAAU;QACV,WAAW;KACZ,CAAC;AACJ,CAAC,CAAC;AArBW,QAAA,eAAe,mBAqB1B;AAEK,MAAM,sBAAsB,GAAG,CACpC,KAAiB,EACjB,SAAiB,CAAC,EACY,EAAE;IAChC,MAAM,MAAM,GAAG,IAAA,uBAAe,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC;IACzB,MAAM,GAAG,GAAG,KAAK,GAAG,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;IAC1C,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC;AARW,QAAA,sBAAsB,0BAQjC"}
1
+ {"version":3,"file":"resource-header.js","names":[],"sources":["../../src/parsers/resource-header.ts"],"sourcesContent":["import type { ResourceHeader } from '../models/resource-header.js';\n\nexport const parseHeaderFrom = (\n bytes: Uint8Array,\n offset: number = 0,\n): ResourceHeader => {\n const view = new DataView(\n bytes.buffer,\n bytes.byteOffset + offset,\n bytes.byteLength - offset,\n );\n\n const id = view.getUint16(0, true);\n const packedSize = view.getUint16(2, true);\n const actualSize = view.getUint16(4, true);\n const compression = view.getUint16(6, true);\n\n return {\n id,\n packedSize,\n actualSize,\n compression,\n };\n};\n\nexport const parseHeaderWithPayload = (\n bytes: Uint8Array,\n offset: number = 0,\n): [ResourceHeader, Uint8Array] => {\n const header = parseHeaderFrom(bytes, offset);\n const start = offset + 8;\n const end = start + header.packedSize - 4;\n return [header, bytes.subarray(start, end)];\n};\n"],"mappings":";AAEA,MAAa,mBACX,OACA,SAAiB,MACE;CACnB,MAAM,OAAO,IAAI,SACf,MAAM,QACN,MAAM,aAAa,QACnB,MAAM,aAAa,MACrB;CAOA,OAAO;EACL,IANS,KAAK,UAAU,GAAG,IAM1B;EACD,YANiB,KAAK,UAAU,GAAG,IAM1B;EACT,YANiB,KAAK,UAAU,GAAG,IAM1B;EACT,aANkB,KAAK,UAAU,GAAG,IAM1B;CACZ;AACF;AAEA,MAAa,0BACX,OACA,SAAiB,MACgB;CACjC,MAAM,SAAS,gBAAgB,OAAO,MAAM;CAC5C,MAAM,QAAQ,SAAS;CACvB,MAAM,MAAM,QAAQ,OAAO,aAAa;CACxC,OAAO,CAAC,QAAQ,MAAM,SAAS,OAAO,GAAG,CAAC;AAC5C"}
@@ -1,7 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.exhaustive = exhaustive;
1
+ //#region src/utils/exhaustive.ts
4
2
  function exhaustive(msg, _) {
5
- throw new Error(`${msg}: ${JSON.stringify(_)}`);
3
+ throw new Error(`${msg}: ${JSON.stringify(_)}`);
6
4
  }
5
+ //#endregion
6
+ export { exhaustive };
7
+
7
8
  //# sourceMappingURL=exhaustive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exhaustive.js","sourceRoot":"","sources":["../../src/utils/exhaustive.ts"],"names":[],"mappings":";;AAAA,gCAEC;AAFD,SAAgB,UAAU,CAAC,GAAW,EAAE,CAAQ;IAC9C,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"exhaustive.js","names":[],"sources":["../../src/utils/exhaustive.ts"],"sourcesContent":["export function exhaustive(msg: string, _: never): never {\n throw new Error(`${msg}: ${JSON.stringify(_)}`);\n}\n"],"mappings":";AAAA,SAAgB,WAAW,KAAa,GAAiB;CACvD,MAAM,IAAI,MAAM,GAAG,IAAI,IAAI,KAAK,UAAU,CAAC,GAAG;AAChD"}
@@ -1,8 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.repeat = void 0;
4
- const repeat = (n, fn) => Array(n)
5
- .fill(null)
6
- .map((_, i) => fn(i));
7
- exports.repeat = repeat;
1
+ //#region src/utils/repeat.ts
2
+ const repeat = (n, fn) => Array(n).fill(null).map((_, i) => fn(i));
3
+ //#endregion
4
+ export { repeat };
5
+
8
6
  //# sourceMappingURL=repeat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"repeat.js","sourceRoot":"","sources":["../../src/utils/repeat.ts"],"names":[],"mappings":";;;AAAO,MAAM,MAAM,GAAG,CAAI,CAAS,EAAE,EAAoB,EAAO,EAAE,CAChE,KAAK,CAAC,CAAC,CAAC;KACL,IAAI,CAAC,IAAI,CAAC;KACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAHb,QAAA,MAAM,UAGO"}
1
+ {"version":3,"file":"repeat.js","names":[],"sources":["../../src/utils/repeat.ts"],"sourcesContent":["export const repeat = <T>(n: number, fn: (i: number) => T): T[] =>\n Array(n)\n .fill(null)\n .map((_, i) => fn(i));\n"],"mappings":";AAAA,MAAa,UAAa,GAAW,OACnC,MAAM,CAAC,CAAC,CACL,KAAK,IAAI,CAAC,CACV,KAAK,GAAG,MAAM,GAAG,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,33 +1,35 @@
1
1
  {
2
2
  "name": "@4bitlabs/sci0",
3
- "version": "5.0.1",
3
+ "version": "6.0.0",
4
4
  "description": "Library for decoding and parsing assets from Sierra On-line's SCI-engine.",
5
- "main": "./dist/index.js",
6
- "types": "./dist/index.d.ts",
7
5
  "homepage": "https://github.com/32bitkid/sci.js/tree/main/libs/sci0#readme",
6
+ "bugs": {
7
+ "url": "https://github.com/32bitkid/sci.js/issues"
8
+ },
8
9
  "repository": {
9
10
  "type": "git",
10
11
  "url": "git+https://github.com/32bitkid/sci.js.git"
11
12
  },
12
- "bugs": {
13
- "url": "https://github.com/32bitkid/sci.js/issues"
14
- },
13
+ "license": "ISC",
14
+ "author": "J. Holmes <j@holmes.codes>",
15
+ "type": "module",
16
+ "exports": "./dist/index.js",
17
+ "types": "./dist/index.d.ts",
15
18
  "files": [
16
19
  "./dist/**/*"
17
20
  ],
18
21
  "scripts": {
22
+ "build": "tsdown",
19
23
  "clean": "tsc --build --clean",
20
24
  "clean:wipe": "rimraf ./dist",
21
- "build": "tsc --build",
22
- "test": "jest src/"
25
+ "test": "vitest run",
26
+ "test:dev": "vitest dev"
23
27
  },
24
- "author": "J. Holmes <j@holmes.codes>",
25
- "license": "ISC",
26
28
  "dependencies": {
27
- "@4bitlabs/codecs": "^2.0.3",
28
- "@4bitlabs/image": "^4.0.0",
29
- "@4bitlabs/readers": "^2.0.6",
30
- "@4bitlabs/vec2": "^2.0.0"
29
+ "@4bitlabs/codecs": "^3.0.0",
30
+ "@4bitlabs/image": "^5.0.0",
31
+ "@4bitlabs/readers": "^3.0.0",
32
+ "@4bitlabs/vec2": "^3.0.0"
31
33
  },
32
- "gitHead": "022fb2701890f39c8f5dffa2029afc33f109c856"
34
+ "gitHead": "e8b4502e1f5fd42407c8857829e66eb5713a9f84"
33
35
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,KAAK,YAAY,MAAM,wBAAwB,CAAC;AAC5D,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,aAAa,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,YAAY,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,gDAA8C;AAArC,qGAAA,QAAQ,OAAA;AAEjB,iEAAiD;AACjD,yEAAyD;AAEzD,6CAAqD;AAA5C,2GAAA,gBAAgB,OAAA;AACzB,6DAGmC;AAFjC,kHAAA,eAAe,OAAA;AACf,yHAAA,sBAAsB,OAAA;AAExB,qDAAmD;AAA1C,yGAAA,UAAU,OAAA;AAInB,uDAAqD;AAA5C,2GAAA,WAAW,OAAA;AACpB,mDAAiD;AAAxC,uGAAA,SAAS,OAAA;AAClB,mDAAiD;AAAxC,uGAAA,SAAS,OAAA;AAClB,iDAA+C;AAAtC,qGAAA,QAAQ,OAAA"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=cel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cel.js","sourceRoot":"","sources":["../../src/models/cel.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=cursor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/models/cursor.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=draw-codes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"draw-codes.js","sourceRoot":"","sources":["../../src/models/draw-codes.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=draw-command.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"draw-command.js","sourceRoot":"","sources":["../../src/models/draw-command.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=draw-commands.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"draw-commands.js","sourceRoot":"","sources":["../../src/models/draw-commands.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=font-face.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"font-face.js","sourceRoot":"","sources":["../../src/models/font-face.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=pattern-code.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pattern-code.js","sourceRoot":"","sources":["../../src/models/pattern-code.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=pic.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pic.js","sourceRoot":"","sources":["../../src/models/pic.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=resource-header.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resource-header.js","sourceRoot":"","sources":["../../src/models/resource-header.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=resource-map.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resource-map.js","sourceRoot":"","sources":["../../src/models/resource-map.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=resource-type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resource-type.js","sourceRoot":"","sources":["../../src/models/resource-type.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=view.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/models/view.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- import { Cel } from '../models/cel';
2
- export declare const parseCel: (frameView: DataView) => Cel;
3
- //# sourceMappingURL=parse-cel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-cel.d.ts","sourceRoot":"","sources":["../../src/parsers/parse-cel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,eAAO,MAAM,QAAQ,cAAe,QAAQ,KAAG,GA4B9C,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=parse-cursor-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-cursor-options.js","sourceRoot":"","sources":["../../src/parsers/parse-cursor-options.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=parse-font-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-font-options.js","sourceRoot":"","sources":["../../src/parsers/parse-font-options.ts"],"names":[],"mappings":""}
@@ -1,8 +0,0 @@
1
- import { BitReader } from '@4bitlabs/readers';
2
- import { OpCode } from './op-codes';
3
- import { PicState } from './pic-state';
4
- import { DrawCommand } from '../../models/draw-command';
5
- type CodeHandler = (r: BitReader, state: PicState) => Iterable<DrawCommand>;
6
- export declare const CodeHandlers: Record<Exclude<OpCode, OpCode.Done>, CodeHandler>;
7
- export {};
8
- //# sourceMappingURL=handlers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/parsers/pic/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAKxD,KAAK,WAAW,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,KAAK,QAAQ,CAAC,WAAW,CAAC,CAAC;AAE5E,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,CAoJ1E,CAAC"}
@@ -1,32 +0,0 @@
1
- export declare enum OpCode {
2
- SetVisual = 240,
3
- ClearVisual = 241,
4
- SetPriority = 242,
5
- ClearPriority = 243,
6
- SetControl = 251,
7
- ClearControl = 252,
8
- ShortLines = 247,
9
- MediumLines = 245,
10
- LongLines = 246,
11
- SetPattern = 249,
12
- ShortBrushes = 244,
13
- MediumBrushes = 253,
14
- LongBrushes = 250,
15
- Fills = 248,
16
- XOp = 254,
17
- Done = 255
18
- }
19
- export declare const isOpCode: (it: unknown) => it is OpCode;
20
- export declare enum ExtendedOpCode {
21
- UpdatePalette = 0,
22
- SetPalette = 1,
23
- x02 = 2,
24
- x03 = 3,
25
- x04 = 4,
26
- x05 = 5,
27
- x06 = 6,
28
- x07 = 7,
29
- x08 = 8
30
- }
31
- export declare const isExtendedOpCode: (it: unknown) => it is ExtendedOpCode;
32
- //# sourceMappingURL=op-codes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"op-codes.d.ts","sourceRoot":"","sources":["../../../src/parsers/pic/op-codes.ts"],"names":[],"mappings":"AAAA,oBAAY,MAAM;IAEhB,SAAS,MAAO;IAChB,WAAW,MAAO;IAClB,WAAW,MAAO;IAClB,aAAa,MAAO;IACpB,UAAU,MAAO;IACjB,YAAY,MAAO;IAGnB,UAAU,MAAO;IACjB,WAAW,MAAO;IAClB,SAAS,MAAO;IAGhB,UAAU,MAAO;IACjB,YAAY,MAAO;IACnB,aAAa,MAAO;IACpB,WAAW,MAAO;IAGlB,KAAK,MAAO;IAGZ,GAAG,MAAO;IACV,IAAI,MAAO;CACZ;AAID,eAAO,MAAM,QAAQ,OAAQ,OAAO,KAAG,EAAE,IAAI,MAC8B,CAAC;AAE5E,oBAAY,cAAc;IACxB,aAAa,IAAO;IACpB,UAAU,IAAO;IACjB,GAAG,IAAO;IACV,GAAG,IAAO;IACV,GAAG,IAAO;IACV,GAAG,IAAO;IACV,GAAG,IAAO;IACV,GAAG,IAAO;IACV,GAAG,IAAO;CACX;AAID,eAAO,MAAM,gBAAgB,OAAQ,OAAO,KAAG,EAAE,IAAI,cAGpB,CAAC"}
@@ -1,10 +0,0 @@
1
- import { DrawMode } from '../../models/draw-mode';
2
- import { DrawCodes } from '../../models/draw-codes';
3
- import { PatternCode } from '../../models/pattern-code';
4
- export interface PicState {
5
- drawMode: DrawMode;
6
- drawCodes: DrawCodes;
7
- patternCode: PatternCode;
8
- }
9
- export declare const createPicState: () => PicState;
10
- //# sourceMappingURL=pic-state.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pic-state.d.ts","sourceRoot":"","sources":["../../../src/parsers/pic/pic-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,eAAO,MAAM,cAAc,QAAO,QAIhC,CAAC"}
@@ -1,6 +0,0 @@
1
- import { BitReader } from '@4bitlabs/readers';
2
- import { type Vec2, type MutableVec2 } from '@4bitlabs/vec2';
3
- export declare function getPoint24(br: BitReader, out: MutableVec2): MutableVec2;
4
- export declare function getPoint16(br: BitReader, out: MutableVec2, ref: Readonly<Vec2>): MutableVec2;
5
- export declare function getPoint8(br: BitReader, out: MutableVec2, ref: Readonly<Vec2>): MutableVec2;
6
- //# sourceMappingURL=points.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"points.d.ts","sourceRoot":"","sources":["../../../src/parsers/pic/points.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,EAAO,MAAM,gBAAgB,CAAC;AAWlE,wBAAgB,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,GAAG,WAAW,CAKvE;AASD,wBAAgB,UAAU,CACxB,EAAE,EAAE,SAAS,EACb,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,GAClB,WAAW,CASb;AASD,wBAAgB,SAAS,CACvB,EAAE,EAAE,SAAS,EACb,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,GAClB,WAAW,CASb"}
@@ -1,2 +0,0 @@
1
- export declare function exhaustive(msg: string, _: never): never;
2
- //# sourceMappingURL=exhaustive.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"exhaustive.d.ts","sourceRoot":"","sources":["../../src/utils/exhaustive.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK,CAEvD"}
@@ -1,2 +0,0 @@
1
- export declare const repeat: <T>(n: number, fn: (i: number) => T) => T[];
2
- //# sourceMappingURL=repeat.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repeat.d.ts","sourceRoot":"","sources":["../../src/utils/repeat.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,GAAI,CAAC,KAAK,MAAM,MAAM,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC,KAAG,CAAC,EAGpC,CAAC"}