@swf2es/player 0.1.0 → 0.1.1

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 (277) hide show
  1. package/package.json +7 -7
  2. package/dist/audio.d.ts +0 -22
  3. package/dist/audio.d.ts.map +0 -1
  4. package/dist/audio.js +0 -106
  5. package/dist/audio.js.map +0 -1
  6. package/dist/bitmap-filters.d.ts +0 -29
  7. package/dist/bitmap-filters.d.ts.map +0 -1
  8. package/dist/bitmap-filters.js +0 -906
  9. package/dist/bitmap-filters.js.map +0 -1
  10. package/dist/bitmap-ops.d.ts +0 -113
  11. package/dist/bitmap-ops.d.ts.map +0 -1
  12. package/dist/bitmap-ops.js +0 -725
  13. package/dist/bitmap-ops.js.map +0 -1
  14. package/dist/bitmap.d.ts +0 -98
  15. package/dist/bitmap.d.ts.map +0 -1
  16. package/dist/bitmap.js +0 -314
  17. package/dist/bitmap.js.map +0 -1
  18. package/dist/bounds.d.ts +0 -26
  19. package/dist/bounds.d.ts.map +0 -1
  20. package/dist/bounds.js +0 -300
  21. package/dist/bounds.js.map +0 -1
  22. package/dist/color.d.ts +0 -7
  23. package/dist/color.d.ts.map +0 -1
  24. package/dist/color.js +0 -42
  25. package/dist/color.js.map +0 -1
  26. package/dist/display.d.ts +0 -425
  27. package/dist/display.d.ts.map +0 -1
  28. package/dist/display.js +0 -1274
  29. package/dist/display.js.map +0 -1
  30. package/dist/drawing.d.ts +0 -52
  31. package/dist/drawing.d.ts.map +0 -1
  32. package/dist/drawing.js +0 -204
  33. package/dist/drawing.js.map +0 -1
  34. package/dist/filters.d.ts +0 -54
  35. package/dist/filters.d.ts.map +0 -1
  36. package/dist/filters.js +0 -155
  37. package/dist/filters.js.map +0 -1
  38. package/dist/fonts.d.ts +0 -23
  39. package/dist/fonts.d.ts.map +0 -1
  40. package/dist/fonts.js +0 -91
  41. package/dist/fonts.js.map +0 -1
  42. package/dist/geometry.d.ts +0 -21
  43. package/dist/geometry.d.ts.map +0 -1
  44. package/dist/geometry.js +0 -76
  45. package/dist/geometry.js.map +0 -1
  46. package/dist/gradients.d.ts +0 -29
  47. package/dist/gradients.d.ts.map +0 -1
  48. package/dist/gradients.js +0 -116
  49. package/dist/gradients.js.map +0 -1
  50. package/dist/images.d.ts +0 -22
  51. package/dist/images.d.ts.map +0 -1
  52. package/dist/images.js +0 -147
  53. package/dist/images.js.map +0 -1
  54. package/dist/input.d.ts +0 -79
  55. package/dist/input.d.ts.map +0 -1
  56. package/dist/input.js +0 -366
  57. package/dist/input.js.map +0 -1
  58. package/dist/keyboard.d.ts +0 -97
  59. package/dist/keyboard.d.ts.map +0 -1
  60. package/dist/keyboard.js +0 -583
  61. package/dist/keyboard.js.map +0 -1
  62. package/dist/morph.d.ts +0 -17
  63. package/dist/morph.d.ts.map +0 -1
  64. package/dist/morph.js +0 -218
  65. package/dist/morph.js.map +0 -1
  66. package/dist/pixi-blend.d.ts +0 -7
  67. package/dist/pixi-blend.d.ts.map +0 -1
  68. package/dist/pixi-blend.js +0 -253
  69. package/dist/pixi-blend.js.map +0 -1
  70. package/dist/pixi-color.d.ts +0 -54
  71. package/dist/pixi-color.d.ts.map +0 -1
  72. package/dist/pixi-color.js +0 -336
  73. package/dist/pixi-color.js.map +0 -1
  74. package/dist/pixi-filters.d.ts +0 -40
  75. package/dist/pixi-filters.d.ts.map +0 -1
  76. package/dist/pixi-filters.js +0 -953
  77. package/dist/pixi-filters.js.map +0 -1
  78. package/dist/pixi-resolve.d.ts +0 -4
  79. package/dist/pixi-resolve.d.ts.map +0 -1
  80. package/dist/pixi-resolve.js +0 -76
  81. package/dist/pixi-resolve.js.map +0 -1
  82. package/dist/pixi.d.ts +0 -219
  83. package/dist/pixi.d.ts.map +0 -1
  84. package/dist/pixi.js +0 -2169
  85. package/dist/pixi.js.map +0 -1
  86. package/dist/playerglobal/flash/filters/filters.d.ts +0 -26
  87. package/dist/playerglobal/flash/filters/filters.d.ts.map +0 -1
  88. package/dist/playerglobal/flash/filters/filters.js +0 -287
  89. package/dist/playerglobal/flash/filters/filters.js.map +0 -1
  90. package/dist/playerglobal/flash/system/FSCommand.d.ts +0 -4
  91. package/dist/playerglobal/flash/system/FSCommand.d.ts.map +0 -1
  92. package/dist/playerglobal/flash/system/FSCommand.js +0 -18
  93. package/dist/playerglobal/flash/system/FSCommand.js.map +0 -1
  94. package/dist/playerglobal/natives.d.ts +0 -10
  95. package/dist/playerglobal/natives.d.ts.map +0 -1
  96. package/dist/playerglobal/natives.js +0 -53
  97. package/dist/playerglobal/natives.js.map +0 -1
  98. package/dist/png.d.ts +0 -4
  99. package/dist/png.d.ts.map +0 -1
  100. package/dist/png.js +0 -140
  101. package/dist/png.js.map +0 -1
  102. package/dist/render/art.d.ts +0 -148
  103. package/dist/render/art.d.ts.map +0 -1
  104. package/dist/render/art.js +0 -575
  105. package/dist/render/art.js.map +0 -1
  106. package/dist/render/batchers.d.ts +0 -23
  107. package/dist/render/batchers.d.ts.map +0 -1
  108. package/dist/render/batchers.js +0 -52
  109. package/dist/render/batchers.js.map +0 -1
  110. package/dist/render/bitmaps.d.ts +0 -117
  111. package/dist/render/bitmaps.d.ts.map +0 -1
  112. package/dist/render/bitmaps.js +0 -422
  113. package/dist/render/bitmaps.js.map +0 -1
  114. package/dist/render/blend.d.ts +0 -37
  115. package/dist/render/blend.d.ts.map +0 -1
  116. package/dist/render/blend.js +0 -195
  117. package/dist/render/blend.js.map +0 -1
  118. package/dist/render/color.d.ts +0 -111
  119. package/dist/render/color.d.ts.map +0 -1
  120. package/dist/render/color.js +0 -533
  121. package/dist/render/color.js.map +0 -1
  122. package/dist/render/compositing.d.ts +0 -77
  123. package/dist/render/compositing.d.ts.map +0 -1
  124. package/dist/render/compositing.js +0 -188
  125. package/dist/render/compositing.js.map +0 -1
  126. package/dist/render/filters.d.ts +0 -98
  127. package/dist/render/filters.d.ts.map +0 -1
  128. package/dist/render/filters.js +0 -1326
  129. package/dist/render/filters.js.map +0 -1
  130. package/dist/render/hooks.d.ts +0 -4
  131. package/dist/render/hooks.d.ts.map +0 -1
  132. package/dist/render/hooks.js +0 -48
  133. package/dist/render/hooks.js.map +0 -1
  134. package/dist/render/node.d.ts +0 -139
  135. package/dist/render/node.d.ts.map +0 -1
  136. package/dist/render/node.js +0 -59
  137. package/dist/render/node.js.map +0 -1
  138. package/dist/render/patches.d.ts +0 -54
  139. package/dist/render/patches.d.ts.map +0 -1
  140. package/dist/render/patches.js +0 -154
  141. package/dist/render/patches.js.map +0 -1
  142. package/dist/render/planes.d.ts +0 -74
  143. package/dist/render/planes.d.ts.map +0 -1
  144. package/dist/render/planes.js +0 -267
  145. package/dist/render/planes.js.map +0 -1
  146. package/dist/render/pointer.d.ts +0 -5
  147. package/dist/render/pointer.d.ts.map +0 -1
  148. package/dist/render/pointer.js +0 -279
  149. package/dist/render/pointer.js.map +0 -1
  150. package/dist/render/pools.d.ts +0 -122
  151. package/dist/render/pools.d.ts.map +0 -1
  152. package/dist/render/pools.js +0 -238
  153. package/dist/render/pools.js.map +0 -1
  154. package/dist/render/resolve.d.ts +0 -4
  155. package/dist/render/resolve.d.ts.map +0 -1
  156. package/dist/render/resolve.js +0 -76
  157. package/dist/render/resolve.js.map +0 -1
  158. package/dist/render/saffron.d.ts +0 -135
  159. package/dist/render/saffron.d.ts.map +0 -1
  160. package/dist/render/saffron.js +0 -725
  161. package/dist/render/saffron.js.map +0 -1
  162. package/dist/render/settle.d.ts +0 -60
  163. package/dist/render/settle.d.ts.map +0 -1
  164. package/dist/render/settle.js +0 -128
  165. package/dist/render/settle.js.map +0 -1
  166. package/dist/render/shared.d.ts +0 -25
  167. package/dist/render/shared.d.ts.map +0 -1
  168. package/dist/render/shared.js +0 -33
  169. package/dist/render/shared.js.map +0 -1
  170. package/dist/render/snapshot.d.ts +0 -21
  171. package/dist/render/snapshot.d.ts.map +0 -1
  172. package/dist/render/snapshot.js +0 -91
  173. package/dist/render/snapshot.js.map +0 -1
  174. package/dist/render/spares.d.ts +0 -56
  175. package/dist/render/spares.d.ts.map +0 -1
  176. package/dist/render/spares.js +0 -160
  177. package/dist/render/spares.js.map +0 -1
  178. package/dist/render/strokes.d.ts +0 -107
  179. package/dist/render/strokes.d.ts.map +0 -1
  180. package/dist/render/strokes.js +0 -448
  181. package/dist/render/strokes.js.map +0 -1
  182. package/dist/render/table.d.ts +0 -213
  183. package/dist/render/table.d.ts.map +0 -1
  184. package/dist/render/table.js +0 -795
  185. package/dist/render/table.js.map +0 -1
  186. package/dist/render/tessellate.d.ts +0 -89
  187. package/dist/render/tessellate.d.ts.map +0 -1
  188. package/dist/render/tessellate.js +0 -386
  189. package/dist/render/tessellate.js.map +0 -1
  190. package/dist/render/text.d.ts +0 -40
  191. package/dist/render/text.d.ts.map +0 -1
  192. package/dist/render/text.js +0 -309
  193. package/dist/render/text.js.map +0 -1
  194. package/dist/render/three.d.ts +0 -83
  195. package/dist/render/three.d.ts.map +0 -1
  196. package/dist/render/three.js +0 -511
  197. package/dist/render/three.js.map +0 -1
  198. package/dist/render/triangles.d.ts +0 -28
  199. package/dist/render/triangles.d.ts.map +0 -1
  200. package/dist/render/triangles.js +0 -189
  201. package/dist/render/triangles.js.map +0 -1
  202. package/dist/render/view.d.ts +0 -238
  203. package/dist/render/view.d.ts.map +0 -1
  204. package/dist/render/view.js +0 -1173
  205. package/dist/render/view.js.map +0 -1
  206. package/dist/render/worker/bitmaps.d.ts +0 -43
  207. package/dist/render/worker/bitmaps.d.ts.map +0 -1
  208. package/dist/render/worker/bitmaps.js +0 -151
  209. package/dist/render/worker/bitmaps.js.map +0 -1
  210. package/dist/render/worker/drawing.d.ts +0 -21
  211. package/dist/render/worker/drawing.d.ts.map +0 -1
  212. package/dist/render/worker/drawing.js +0 -356
  213. package/dist/render/worker/drawing.js.map +0 -1
  214. package/dist/render/worker/filters.d.ts +0 -7
  215. package/dist/render/worker/filters.d.ts.map +0 -1
  216. package/dist/render/worker/filters.js +0 -125
  217. package/dist/render/worker/filters.js.map +0 -1
  218. package/dist/render/worker/frames.d.ts +0 -32
  219. package/dist/render/worker/frames.d.ts.map +0 -1
  220. package/dist/render/worker/frames.js +0 -124
  221. package/dist/render/worker/frames.js.map +0 -1
  222. package/dist/render/worker/host.d.ts +0 -60
  223. package/dist/render/worker/host.d.ts.map +0 -1
  224. package/dist/render/worker/host.js +0 -297
  225. package/dist/render/worker/host.js.map +0 -1
  226. package/dist/render/worker/libraries.d.ts +0 -36
  227. package/dist/render/worker/libraries.d.ts.map +0 -1
  228. package/dist/render/worker/libraries.js +0 -153
  229. package/dist/render/worker/libraries.js.map +0 -1
  230. package/dist/render/worker/presentation.d.ts +0 -18
  231. package/dist/render/worker/presentation.d.ts.map +0 -1
  232. package/dist/render/worker/presentation.js +0 -47
  233. package/dist/render/worker/presentation.js.map +0 -1
  234. package/dist/render/worker/renderer.d.ts +0 -4
  235. package/dist/render/worker/renderer.d.ts.map +0 -1
  236. package/dist/render/worker/renderer.js +0 -21
  237. package/dist/render/worker/renderer.js.map +0 -1
  238. package/dist/render/worker/scene.d.ts +0 -32
  239. package/dist/render/worker/scene.d.ts.map +0 -1
  240. package/dist/render/worker/scene.js +0 -611
  241. package/dist/render/worker/scene.js.map +0 -1
  242. package/dist/render/worker/text.d.ts +0 -47
  243. package/dist/render/worker/text.d.ts.map +0 -1
  244. package/dist/render/worker/text.js +0 -261
  245. package/dist/render/worker/text.js.map +0 -1
  246. package/dist/render/worker/thread.d.ts +0 -23
  247. package/dist/render/worker/thread.d.ts.map +0 -1
  248. package/dist/render/worker/thread.js +0 -107
  249. package/dist/render/worker/thread.js.map +0 -1
  250. package/dist/render/worker/values.d.ts +0 -18
  251. package/dist/render/worker/values.d.ts.map +0 -1
  252. package/dist/render/worker/values.js +0 -64
  253. package/dist/render/worker/values.js.map +0 -1
  254. package/dist/sha256.d.ts +0 -5
  255. package/dist/sha256.d.ts.map +0 -1
  256. package/dist/sha256.js +0 -96
  257. package/dist/sha256.js.map +0 -1
  258. package/dist/shapes.d.ts +0 -71
  259. package/dist/shapes.d.ts.map +0 -1
  260. package/dist/shapes.js +0 -340
  261. package/dist/shapes.js.map +0 -1
  262. package/dist/static-text.d.ts +0 -33
  263. package/dist/static-text.d.ts.map +0 -1
  264. package/dist/static-text.js +0 -105
  265. package/dist/static-text.js.map +0 -1
  266. package/dist/text-layout.d.ts +0 -66
  267. package/dist/text-layout.d.ts.map +0 -1
  268. package/dist/text-layout.js +0 -315
  269. package/dist/text-layout.js.map +0 -1
  270. package/dist/text.d.ts +0 -67
  271. package/dist/text.d.ts.map +0 -1
  272. package/dist/text.js +0 -383
  273. package/dist/text.js.map +0 -1
  274. package/dist/timeline.d.ts +0 -150
  275. package/dist/timeline.d.ts.map +0 -1
  276. package/dist/timeline.js +0 -266
  277. package/dist/timeline.js.map +0 -1
@@ -1,356 +0,0 @@
1
- import { BitmapStore } from "../../bitmap/bitmap.js";
2
- import { Drawing } from "../../display/drawing.js";
3
- import { ValuesReader, ValuesWriter } from "./values.js";
4
- const TYPES = ["solid", "linear", "radial", "focal", "bitmap", "gradient", "image"];
5
- const MATRIX = ["a", "b", "c", "d", "tx", "ty"];
6
- const LINE_NUMBERS = ["width", "color", "startCap", "endCap", "join", "miterLimit"];
7
- const LINE_BOOLEANS = ["noHScale", "noVScale", "pixelHinting", "noClose"];
8
- class DrawingWriter extends ValuesWriter {
9
- assets;
10
- bitmaps;
11
- constructor(data, at, assets, bitmaps) {
12
- super(data, at);
13
- this.assets = assets;
14
- this.bitmaps = bitmaps;
15
- }
16
- matrix(m) {
17
- for (let i = 0; i < MATRIX.length; i++) {
18
- this.number(m[MATRIX[i]]);
19
- }
20
- }
21
- numbers(values) {
22
- this.number(values.length);
23
- for (let i = 0; i < values.length; i++) {
24
- this.number(values[i]);
25
- }
26
- }
27
- paths(paths) {
28
- this.number(paths.length);
29
- for (let i = 0; i < paths.length; i++) {
30
- this.numbers(paths[i]);
31
- }
32
- }
33
- paint(fill) {
34
- const kind = TYPES.indexOf(fill.type);
35
- if (kind < 0) {
36
- throw new Error("unsupported worker drawing fill");
37
- }
38
- this.number(kind);
39
- switch (fill.type) {
40
- case "solid":
41
- this.number(fill.color);
42
- break;
43
- case "image":
44
- this.number(Number(fill.image instanceof BitmapStore));
45
- if (fill.image instanceof BitmapStore) {
46
- this.at = this.bitmaps.writeStore(fill.image, this.data, this.at);
47
- }
48
- else {
49
- if (!fill.image.pixels || fill.image.store?.version || fill.image.store?.disposed) {
50
- throw new Error("worker drawing needs immutable library bitmap fills");
51
- }
52
- const ref = this.assets.ref(fill.image);
53
- this.number(ref.library);
54
- this.number(ref.character);
55
- }
56
- this.matrix(fill.matrix);
57
- this.number(Number(fill.repeat));
58
- this.number(Number(fill.smooth));
59
- break;
60
- case "bitmap":
61
- this.number(fill.bitmap);
62
- this.matrix(fill.matrix);
63
- this.number(Number(fill.repeat));
64
- this.number(Number(fill.smooth));
65
- break;
66
- case "linear":
67
- case "radial":
68
- case "focal":
69
- case "gradient": {
70
- const g = fill.type === "gradient" ? fill : fill.gradient;
71
- this.matrix(g.matrix);
72
- this.number(g.spread);
73
- this.number(fill.type === "gradient" ? Number(fill.linearRgb) : fill.gradient.interpolation);
74
- this.number(g.focal);
75
- this.number(fill.type === "gradient" ? Number(fill.radial) : 0);
76
- this.number(g.stops.length);
77
- for (let i = 0; i < g.stops.length; i++) {
78
- this.number(g.stops[i].ratio);
79
- this.number(g.stops[i].color);
80
- }
81
- break;
82
- }
83
- }
84
- }
85
- layer(layer, mirrored = false) {
86
- this.number(layer.fills.length);
87
- for (let i = 0; i < layer.fills.length; i++) {
88
- const f = layer.fills[i];
89
- this.paint(f.fill);
90
- this.number(f.winding === "evenOdd" ? 0 : 1);
91
- this.paths(f.contours);
92
- }
93
- this.number(layer.strokes.length);
94
- for (let i = 0; i < layer.strokes.length; i++) {
95
- const s = layer.strokes[i];
96
- for (let k = 0; k < LINE_NUMBERS.length; k++) {
97
- this.number(s.line[LINE_NUMBERS[k]]);
98
- }
99
- for (let k = 0; k < LINE_BOOLEANS.length; k++) {
100
- this.number(Number(s.line[LINE_BOOLEANS[k]]));
101
- }
102
- this.number(Number(s.line.fill !== null));
103
- if (s.line.fill) {
104
- this.paint(s.line.fill);
105
- }
106
- this.paths(s.paths);
107
- this.number(Number(s.triangles === true));
108
- const closes = s.closes ?? [];
109
- this.number(closes.length);
110
- for (let k = 0; k < closes.length; k++) {
111
- this.number(closes[k].at);
112
- this.number(closes[k].x);
113
- this.number(closes[k].y);
114
- }
115
- }
116
- const meshes = layer.meshes ?? [];
117
- this.number(meshes.length);
118
- for (let i = 0; i < meshes.length; i++) {
119
- const m = meshes[i];
120
- this.at = this.bitmaps.writeStore(m.image, this.data, this.at);
121
- this.number(Number(m.repeat));
122
- this.number(Number(m.smooth));
123
- this.numbers(m.positions);
124
- this.numbers(m.uvt);
125
- }
126
- this.number(Number(layer.extent !== undefined));
127
- if (layer.extent) {
128
- for (let i = 0; i < 5; i++) {
129
- this.number(layer.extent[i]);
130
- }
131
- }
132
- const parts = layer.mirrored;
133
- if (mirrored && parts) {
134
- throw new Error("recursive worker triangle layers");
135
- }
136
- this.number(Number(parts !== undefined));
137
- if (parts) {
138
- this.layer({ fills: parts.fills, strokes: parts.stroke ? [parts.stroke] : [], meshes: parts.meshes }, true);
139
- }
140
- }
141
- }
142
- class DrawingReader extends ValuesReader {
143
- assets;
144
- bitmaps;
145
- images = [];
146
- constructor(data, at, assets, bitmaps) {
147
- super(data, at);
148
- this.assets = assets;
149
- this.bitmaps = bitmaps;
150
- }
151
- matrix() {
152
- return {
153
- a: this.number(),
154
- b: this.number(),
155
- c: this.number(),
156
- d: this.number(),
157
- tx: this.number(),
158
- ty: this.number(),
159
- };
160
- }
161
- numbers() {
162
- const length = this.count();
163
- const values = [];
164
- for (let i = 0; i < length; i++) {
165
- values.push(this.number());
166
- }
167
- return values;
168
- }
169
- paths() {
170
- const count = this.count();
171
- const paths = [];
172
- for (let i = 0; i < count; i++) {
173
- const path = this.numbers();
174
- for (let k = 0; k < path.length;) {
175
- const op = path[k];
176
- if (!Number.isInteger(op) || op < 1 || op > 4) {
177
- throw new Error("invalid scene snapshot path command");
178
- }
179
- k += op === 4 ? 7 : op === 3 ? 5 : 3;
180
- if (k > path.length) {
181
- throw new Error("truncated scene snapshot path command");
182
- }
183
- }
184
- paths.push(path);
185
- }
186
- return paths;
187
- }
188
- paint() {
189
- const type = TYPES[this.integer(0, TYPES.length - 1)];
190
- switch (type) {
191
- case "solid":
192
- return { type, color: this.number() };
193
- case "image": {
194
- const dynamic = this.boolean();
195
- let pixels = null;
196
- let image;
197
- if (dynamic) {
198
- const decoded = this.bitmaps.readStore(this.data, this.at);
199
- this.at = decoded.end;
200
- pixels = decoded.pixels;
201
- // Bound after the entire frame validates; no store is allocated here.
202
- image = empty;
203
- }
204
- else {
205
- const asset = this.assets.character(this.integer(1, Number.MAX_SAFE_INTEGER), this.integer(1, 65535));
206
- if (asset?.type !== "bitmap" || !asset.pixels) {
207
- throw new Error("missing scene snapshot drawing bitmap");
208
- }
209
- image = asset;
210
- }
211
- const fill = {
212
- type,
213
- image,
214
- matrix: this.matrix(),
215
- repeat: this.boolean(),
216
- smooth: this.boolean(),
217
- };
218
- if (dynamic) {
219
- this.images.push({ target: fill, pixels });
220
- }
221
- return fill;
222
- }
223
- case "bitmap":
224
- return {
225
- type,
226
- bitmap: this.integer(0, 65535),
227
- matrix: this.matrix(),
228
- repeat: this.boolean(),
229
- smooth: this.boolean(),
230
- };
231
- default: {
232
- const matrix = this.matrix();
233
- const spread = this.integer(0, 2);
234
- const interpolation = this.integer(0, 1);
235
- const focal = this.number();
236
- const radial = this.boolean();
237
- const count = this.count();
238
- const stops = [];
239
- for (let i = 0; i < count; i++) {
240
- stops.push({ ratio: this.number(), color: this.number() });
241
- }
242
- return type === "gradient"
243
- ? { type, matrix, spread, linearRgb: !!interpolation, focal, radial, stops }
244
- : { type, gradient: { matrix, spread, interpolation, focal, stops } };
245
- }
246
- }
247
- }
248
- layer(mirrored = false) {
249
- const layer = { fills: [], strokes: [] };
250
- const fills = this.count();
251
- for (let i = 0; i < fills; i++) {
252
- layer.fills.push({
253
- fill: this.paint(),
254
- winding: this.boolean() ? "nonZero" : "evenOdd",
255
- contours: this.paths(),
256
- });
257
- }
258
- const strokes = this.count();
259
- for (let i = 0; i < strokes; i++) {
260
- const line = {};
261
- for (let k = 0; k < LINE_NUMBERS.length; k++) {
262
- line[LINE_NUMBERS[k]] = this.number();
263
- }
264
- for (let k = 0; k < LINE_BOOLEANS.length; k++) {
265
- line[LINE_BOOLEANS[k]] = this.boolean();
266
- }
267
- const fill = this.boolean() ? this.paint() : null;
268
- if (fill?.type === "image" || fill?.type === "gradient") {
269
- throw new Error("invalid scene snapshot stroke fill");
270
- }
271
- line.fill = fill;
272
- const paths = this.paths();
273
- const triangles = this.boolean();
274
- const count = this.count();
275
- const closes = [];
276
- for (let k = 0; k < count; k++) {
277
- closes.push({
278
- at: this.integer(0, Number.MAX_SAFE_INTEGER),
279
- x: this.number(),
280
- y: this.number(),
281
- });
282
- }
283
- layer.strokes.push({ line, paths, triangles, closes });
284
- }
285
- const meshes = this.count();
286
- if (meshes) {
287
- layer.meshes = [];
288
- }
289
- for (let i = 0; i < meshes; i++) {
290
- const decoded = this.bitmaps.readStore(this.data, this.at);
291
- this.at = decoded.end;
292
- const repeat = this.boolean();
293
- const smooth = this.boolean();
294
- const positions = new Float32Array(this.numbers());
295
- const uvt = new Float32Array(this.numbers());
296
- if (positions.length % 6 || uvt.length !== (positions.length / 2) * 3) {
297
- throw new Error("invalid scene snapshot triangle vertices");
298
- }
299
- const mesh = {
300
- image: empty,
301
- repeat,
302
- smooth,
303
- positions,
304
- uvt,
305
- };
306
- this.images.push({ target: mesh, pixels: decoded.pixels });
307
- layer.meshes?.push(mesh);
308
- }
309
- if (this.boolean()) {
310
- layer.extent = [this.number(), this.number(), this.number(), this.number(), this.number()];
311
- }
312
- if (this.boolean()) {
313
- if (mirrored) {
314
- throw new Error("recursive scene snapshot triangle layers");
315
- }
316
- const parts = this.layer(true);
317
- if (parts.strokes.length > 1) {
318
- throw new Error("invalid scene snapshot mirrored stroke");
319
- }
320
- layer.mirrored = { fills: parts.fills, meshes: parts.meshes, stroke: parts.strokes[0] };
321
- }
322
- return layer;
323
- }
324
- }
325
- export function writeDrawing(drawing, data, at, assets, bitmaps) {
326
- const w = new DrawingWriter(data, at, assets, bitmaps);
327
- w.number(Number(drawing.culled));
328
- w.number(drawing.layers.length);
329
- for (let i = 0; i < drawing.layers.length; i++) {
330
- w.layer(drawing.layers[i]);
331
- }
332
- return w.at;
333
- }
334
- export function readDrawing(data, at, assets, bitmaps) {
335
- const r = new DrawingReader(data, at, assets, bitmaps);
336
- const drawing = new Drawing();
337
- drawing.culled = r.boolean();
338
- const count = r.count();
339
- for (let i = 0; i < count; i++) {
340
- drawing.layers.push(r.layer());
341
- }
342
- return { record: { drawing, images: r.images }, end: r.at };
343
- }
344
- const empty = new BitmapStore(0, 0, true, 0);
345
- export function bindDrawing(record, bitmaps, owner) {
346
- for (let i = 0; i < record.images.length; i++) {
347
- const image = record.images[i];
348
- const store = bitmaps.store(image.pixels) ?? empty;
349
- if (store !== empty) {
350
- store.views.add(owner.ref);
351
- }
352
- image.target.image = store;
353
- }
354
- return record.drawing;
355
- }
356
- //# sourceMappingURL=drawing.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"drawing.js","sourceRoot":"","sources":["../../../src/render/worker/drawing.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { type Filter } from "../../display/filters.js";
2
- export declare function writeFilters(filters: readonly Filter[], data: Float64Array, start: number): number;
3
- export declare function readFilters(data: Float64Array, start: number): {
4
- filters: Filter[];
5
- end: number;
6
- };
7
- //# sourceMappingURL=filters.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../../src/render/worker/filters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAmC,MAAM,0BAA0B,CAAC;AAgBxF,wBAAgB,YAAY,CAC1B,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,MAAM,GACZ,MAAM,CA4DR;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CA2DjG"}
@@ -1,125 +0,0 @@
1
- // The numeric tail of a scene snapshot. Displacement maps need a separate
2
- // pixel asset protocol before their frozen bitmap snapshots can cross threads.
3
- import { filterDefaults } from "../../display/filters.js";
4
- const KINDS = [
5
- "blur",
6
- "glow",
7
- "dropShadow",
8
- "bevel",
9
- "gradientGlow",
10
- "gradientBevel",
11
- "colorMatrix",
12
- "convolution",
13
- ];
14
- const TYPES = ["inner", "outer", "full"];
15
- // Versioned with scene.ts: a kind's default record fixes its field order and types.
16
- const SCHEMAS = KINDS.map((kind) => Object.entries(filterDefaults(kind)).slice(1));
17
- export function writeFilters(filters, data, start) {
18
- let at = start;
19
- const put = (value) => {
20
- if (at >= data.length) {
21
- throw new RangeError("vector snapshot exceeds its slot capacity");
22
- }
23
- data[at++] = value;
24
- };
25
- put(filters.length);
26
- for (const filter of filters) {
27
- const kind = KINDS.indexOf(filter.kind);
28
- if (kind < 0) {
29
- throw new Error("experimental worker snapshot cannot share displacement map pixels yet");
30
- }
31
- const fields = SCHEMAS[kind];
32
- if (Object.keys(filter).length !== fields.length + 1) {
33
- throw new Error("invalid vector snapshot filter fields");
34
- }
35
- put(kind);
36
- for (const [key, sample] of fields) {
37
- const value = filter[key];
38
- if (Array.isArray(sample)) {
39
- if (!Array.isArray(value) || value.some((v) => typeof v !== "number")) {
40
- throw new Error("invalid vector snapshot filter array");
41
- }
42
- put(value.length);
43
- for (const v of value) {
44
- put(v);
45
- }
46
- }
47
- else {
48
- if (typeof value !== typeof sample) {
49
- throw new Error("invalid vector snapshot filter value");
50
- }
51
- switch (typeof value) {
52
- case "number":
53
- put(value);
54
- break;
55
- case "boolean":
56
- put(Number(value));
57
- break;
58
- case "string": {
59
- const type = TYPES.indexOf(value);
60
- if (type < 0) {
61
- throw new Error("invalid vector snapshot filter type");
62
- }
63
- put(type);
64
- break;
65
- }
66
- }
67
- }
68
- }
69
- }
70
- return at;
71
- }
72
- export function readFilters(data, start) {
73
- let at = start;
74
- const take = () => {
75
- if (at >= data.length) {
76
- throw new Error("truncated vector snapshot filter");
77
- }
78
- return data[at++];
79
- };
80
- const count = take();
81
- if (!Number.isInteger(count) || count < 1 || count > data.length - at) {
82
- throw new Error("invalid vector snapshot filter count");
83
- }
84
- const filters = [];
85
- for (let i = 0; i < count; i++) {
86
- const kind = take();
87
- if (!Number.isInteger(kind) || kind < 0 || kind >= KINDS.length) {
88
- throw new Error("invalid vector snapshot filter kind");
89
- }
90
- const filter = filterDefaults(KINDS[kind]);
91
- const record = filter;
92
- for (const [key, sample] of SCHEMAS[kind]) {
93
- const value = take();
94
- if (Array.isArray(sample)) {
95
- if (!Number.isInteger(value) || value < 0 || value > data.length - at) {
96
- throw new Error("invalid vector snapshot filter array");
97
- }
98
- record[key] = Array.from(data.subarray(at, at + value));
99
- at += value;
100
- }
101
- else {
102
- switch (typeof sample) {
103
- case "number":
104
- record[key] = value;
105
- break;
106
- case "boolean":
107
- if (value !== 0 && value !== 1) {
108
- throw new Error("invalid vector snapshot filter boolean");
109
- }
110
- record[key] = !!value;
111
- break;
112
- case "string":
113
- if (!Number.isInteger(value) || value < 0 || value >= TYPES.length) {
114
- throw new Error("invalid vector snapshot filter type");
115
- }
116
- record[key] = TYPES[value];
117
- break;
118
- }
119
- }
120
- }
121
- filters.push(filter);
122
- }
123
- return { filters, end: at };
124
- }
125
- //# sourceMappingURL=filters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../src/render/worker/filters.ts"],"names":[],"mappings":"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"}
@@ -1,32 +0,0 @@
1
- export interface SharedFrames {
2
- control: SharedArrayBuffer;
3
- payload: SharedArrayBuffer;
4
- capacity: number;
5
- slots: number;
6
- }
7
- export declare function sharedFrames(capacity: number, slots?: number): SharedFrames;
8
- declare class Frames {
9
- protected readonly control: Int32Array<SharedArrayBuffer>;
10
- protected readonly payloads: Uint8Array<SharedArrayBuffer>[];
11
- constructor(frames: SharedFrames);
12
- }
13
- export declare class FrameWriter extends Frames {
14
- /**
15
- * Encode a complete snapshot synchronously. Null means all slots are occupied:
16
- * retain the source state and try its latest snapshot later, without waiting.
17
- */
18
- write(encode: (bytes: Uint8Array<SharedArrayBuffer>) => number): number | null;
19
- }
20
- export interface ReadFrame {
21
- readonly bytes: Uint8Array<SharedArrayBuffer>;
22
- readonly sequence: number;
23
- /** Release only after all payload reads, including asynchronous work, are done. */
24
- release(): void;
25
- }
26
- export declare class FrameReader extends Frames {
27
- private reading;
28
- /** Take the newest complete snapshot; older unconsumed presentations can be discarded. */
29
- take(): ReadFrame | null;
30
- }
31
- export {};
32
- //# sourceMappingURL=frames.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frames.d.ts","sourceRoot":"","sources":["../../../src/render/worker/frames.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,YAAY,CAWtE;AAED,cAAM,MAAM;IACV,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC1D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;IAE7D,YAAY,MAAM,EAAE,YAAY,EAoB/B;CACF;AAED,qBAAa,WAAY,SAAQ,MAAM;IACrC;;;OAGG;IACH,KAAK,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,iBAAiB,CAAC,KAAK,MAAM,GAAG,MAAM,GAAG,IAAI,CAgC7E;CACF;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,mFAAmF;IACnF,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,qBAAa,WAAY,SAAQ,MAAM;IACrC,OAAO,CAAC,OAAO,CAAS;IAExB,0FAA0F;IAC1F,IAAI,IAAI,SAAS,GAAG,IAAI,CAsDvB;CACF"}