@swf2es/player-hosts 0.0.0-stage → 0.1.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 (405) hide show
  1. package/LICENSE +202 -0
  2. package/LICENSE.third-party +759 -0
  3. package/README.md +43 -2
  4. package/dist/indexeddb.d.ts +27 -0
  5. package/dist/indexeddb.d.ts.map +1 -0
  6. package/dist/indexeddb.js +170 -0
  7. package/dist/indexeddb.js.map +1 -0
  8. package/dist/node-worker.d.ts +2 -0
  9. package/dist/node-worker.d.ts.map +1 -0
  10. package/dist/node-worker.js +12 -0
  11. package/dist/node-worker.js.map +1 -0
  12. package/dist/node.d.ts +8 -0
  13. package/dist/node.d.ts.map +1 -0
  14. package/dist/node.js +43 -0
  15. package/dist/node.js.map +1 -0
  16. package/dist/precompiled.d.ts +31 -0
  17. package/dist/precompiled.d.ts.map +1 -0
  18. package/dist/precompiled.js +125 -0
  19. package/dist/precompiled.js.map +1 -0
  20. package/dist/stage3d.d.ts +13 -0
  21. package/dist/stage3d.d.ts.map +1 -0
  22. package/dist/stage3d.js +61 -0
  23. package/dist/stage3d.js.map +1 -0
  24. package/dist/thread/codegen/codegen.js +308 -0
  25. package/dist/thread/codegen/index.js +405 -0
  26. package/dist/thread/format/abc-names.js +126 -0
  27. package/dist/thread/format/actions.js +222 -0
  28. package/dist/thread/format/air-descriptor.js +63 -0
  29. package/dist/thread/format/api-versions.js +22 -0
  30. package/dist/thread/format/bitmap.js +199 -0
  31. package/dist/thread/format/button.js +60 -0
  32. package/dist/thread/format/compression.js +200 -0
  33. package/dist/thread/format/display.js +305 -0
  34. package/dist/thread/format/filters.js +136 -0
  35. package/dist/thread/format/font.js +168 -0
  36. package/dist/thread/format/index.js +26 -0
  37. package/dist/thread/format/pbj.js +484 -0
  38. package/dist/thread/format/shape.js +411 -0
  39. package/dist/thread/format/sound.js +91 -0
  40. package/dist/thread/format/swf.js +163 -0
  41. package/dist/thread/format/tags.js +58 -0
  42. package/dist/thread/format/text.js +135 -0
  43. package/dist/thread/format/zip.js +91 -0
  44. package/dist/thread/native/audio/binary.js +3 -0
  45. package/dist/thread/native/audio/index.js +72 -0
  46. package/dist/thread/native/base64.js +9 -0
  47. package/dist/thread/native/compress/binary.js +3 -0
  48. package/dist/thread/native/compress/index.js +145 -0
  49. package/dist/thread/native/instance.js +49 -0
  50. package/dist/thread/native/mp3/binary.js +3 -0
  51. package/dist/thread/native/mp3/index.js +48 -0
  52. package/dist/thread/native/render/binary.js +3 -0
  53. package/dist/thread/native/render/bitmap-kernel.js +591 -0
  54. package/dist/thread/native/render/draw-kernel.js +204 -0
  55. package/dist/thread/native/render/dxt-encoder.js +94 -0
  56. package/dist/thread/native/render/index.js +10 -0
  57. package/dist/thread/native/render/lines.js +122 -0
  58. package/dist/thread/native/render/module.js +26 -0
  59. package/dist/thread/native/render/pixel-ops.js +235 -0
  60. package/dist/thread/native/render/tessellator.js +250 -0
  61. package/dist/thread/player/avm1/amf.js +507 -0
  62. package/dist/thread/player/avm1/avm1.js +1304 -0
  63. package/dist/thread/player/avm1/bindings.js +214 -0
  64. package/dist/thread/player/avm1/classes.js +75 -0
  65. package/dist/thread/player/avm1/clips.js +229 -0
  66. package/dist/thread/player/avm1/compile.js +140 -0
  67. package/dist/thread/player/avm1/external.js +79 -0
  68. package/dist/thread/player/avm1/focus.js +278 -0
  69. package/dist/thread/player/avm1/globals/BitmapData.js +542 -0
  70. package/dist/thread/player/avm1/globals/Button.js +31 -0
  71. package/dist/thread/player/avm1/globals/Color.js +115 -0
  72. package/dist/thread/player/avm1/globals/ExternalInterface.js +310 -0
  73. package/dist/thread/player/avm1/globals/FileReference.js +217 -0
  74. package/dist/thread/player/avm1/globals/Key.js +60 -0
  75. package/dist/thread/player/avm1/globals/LoadVars.js +208 -0
  76. package/dist/thread/player/avm1/globals/LocalConnection.js +92 -0
  77. package/dist/thread/player/avm1/globals/MovieClip.js +1070 -0
  78. package/dist/thread/player/avm1/globals/MovieClipLoader.js +90 -0
  79. package/dist/thread/player/avm1/globals/NetConnection.js +261 -0
  80. package/dist/thread/player/avm1/globals/PrintJob.js +37 -0
  81. package/dist/thread/player/avm1/globals/Selection.js +62 -0
  82. package/dist/thread/player/avm1/globals/SharedObject.js +245 -0
  83. package/dist/thread/player/avm1/globals/Sound.js +238 -0
  84. package/dist/thread/player/avm1/globals/Stage.js +12 -0
  85. package/dist/thread/player/avm1/globals/StyleSheet.js +205 -0
  86. package/dist/thread/player/avm1/globals/TextField.js +396 -0
  87. package/dist/thread/player/avm1/globals/TextFormat.js +194 -0
  88. package/dist/thread/player/avm1/globals/TextSnapshot.js +88 -0
  89. package/dist/thread/player/avm1/globals/XML.js +396 -0
  90. package/dist/thread/player/avm1/globals/XMLNode.js +413 -0
  91. package/dist/thread/player/avm1/globals/XMLSocket.js +205 -0
  92. package/dist/thread/player/avm1/globals/drawing.js +202 -0
  93. package/dist/thread/player/avm1/globals/filters.js +635 -0
  94. package/dist/thread/player/avm1/globals/geom.js +600 -0
  95. package/dist/thread/player/avm1/input.js +483 -0
  96. package/dist/thread/player/avm1/keyboard.js +113 -0
  97. package/dist/thread/player/avm1/loads.js +352 -0
  98. package/dist/thread/player/avm1/net.js +219 -0
  99. package/dist/thread/player/avm1/paths.js +104 -0
  100. package/dist/thread/player/avm1/pointer.js +512 -0
  101. package/dist/thread/player/avm1/queue.js +303 -0
  102. package/dist/thread/player/avm1/sound.js +106 -0
  103. package/dist/thread/player/avm1/swf.js +141 -0
  104. package/dist/thread/player/avm1/timers.js +113 -0
  105. package/dist/thread/player/bitmap/bitmap.js +627 -0
  106. package/dist/thread/player/bitmap/draw.js +68 -0
  107. package/dist/thread/player/bitmap/dxt.js +11 -0
  108. package/dist/thread/player/bitmap/filters.js +656 -0
  109. package/dist/thread/player/bitmap/images.js +240 -0
  110. package/dist/thread/player/bitmap/kernel.js +65 -0
  111. package/dist/thread/player/bitmap/ops.js +1239 -0
  112. package/dist/thread/player/bitmap/pixel-bender.js +911 -0
  113. package/dist/thread/player/bitmap/png.js +139 -0
  114. package/dist/thread/player/bitmap/turbulence.js +89 -0
  115. package/dist/thread/player/clock.js +182 -0
  116. package/dist/thread/player/display/bitmapobject.js +25 -0
  117. package/dist/thread/player/display/bounds.js +520 -0
  118. package/dist/thread/player/display/buttonobject.js +305 -0
  119. package/dist/thread/player/display/color.js +40 -0
  120. package/dist/thread/player/display/container.js +150 -0
  121. package/dist/thread/player/display/display.js +14 -0
  122. package/dist/thread/player/display/displayobject.js +664 -0
  123. package/dist/thread/player/display/drawing.js +613 -0
  124. package/dist/thread/player/display/filters.js +285 -0
  125. package/dist/thread/player/display/geometry.js +189 -0
  126. package/dist/thread/player/display/gradients.js +117 -0
  127. package/dist/thread/player/display/graphicsdata.js +592 -0
  128. package/dist/thread/player/display/instantiate.js +71 -0
  129. package/dist/thread/player/display/matrix3d.js +373 -0
  130. package/dist/thread/player/display/morph.js +226 -0
  131. package/dist/thread/player/display/movieclip.js +680 -0
  132. package/dist/thread/player/display/perspective.js +193 -0
  133. package/dist/thread/player/display/scale9.js +236 -0
  134. package/dist/thread/player/display/shapeobject.js +131 -0
  135. package/dist/thread/player/display/shapes.js +407 -0
  136. package/dist/thread/player/display/textobjects.js +222 -0
  137. package/dist/thread/player/display/timeline.js +471 -0
  138. package/dist/thread/player/display/value-lists.js +40 -0
  139. package/dist/thread/player/display/videoobject.js +6 -0
  140. package/dist/thread/player/display/walk.js +127 -0
  141. package/dist/thread/player/files.js +334 -0
  142. package/dist/thread/player/hosts.js +207 -0
  143. package/dist/thread/player/input/avm1.js +82 -0
  144. package/dist/thread/player/input/context-menu.js +63 -0
  145. package/dist/thread/player/input/keyboard.js +458 -0
  146. package/dist/thread/player/input/pointer.js +863 -0
  147. package/dist/thread/player/input/text-editor.js +319 -0
  148. package/dist/thread/player/input/touch.js +209 -0
  149. package/dist/thread/player/localconnection.js +90 -0
  150. package/dist/thread/player/media/audio.js +376 -0
  151. package/dist/thread/player/media/dynamic-sound.js +90 -0
  152. package/dist/thread/player/media/extract.js +135 -0
  153. package/dist/thread/player/media/mp3.js +152 -0
  154. package/dist/thread/player/media/sounds.js +507 -0
  155. package/dist/thread/player/media/streaming-audio.js +133 -0
  156. package/dist/thread/player/player.js +616 -0
  157. package/dist/thread/player/playerglobal/air/net/WebSocket.js +250 -0
  158. package/dist/thread/player/playerglobal/air-library.js +8 -0
  159. package/dist/thread/player/playerglobal/flash/accessibility/Accessibility.js +21 -0
  160. package/dist/thread/player/playerglobal/flash/crypto/generateRandomBytes.js +32 -0
  161. package/dist/thread/player/playerglobal/flash/data/EncryptedLocalStore.js +61 -0
  162. package/dist/thread/player/playerglobal/flash/desktop/Clipboard.js +173 -0
  163. package/dist/thread/player/playerglobal/flash/desktop/NativeApplication.js +179 -0
  164. package/dist/thread/player/playerglobal/flash/display/AVM1Movie.js +19 -0
  165. package/dist/thread/player/playerglobal/flash/display/Bitmap.js +58 -0
  166. package/dist/thread/player/playerglobal/flash/display/BitmapData.js +633 -0
  167. package/dist/thread/player/playerglobal/flash/display/DisplayObject.js +614 -0
  168. package/dist/thread/player/playerglobal/flash/display/DisplayObjectContainer.js +224 -0
  169. package/dist/thread/player/playerglobal/flash/display/Graphics.js +345 -0
  170. package/dist/thread/player/playerglobal/flash/display/InteractiveObject.js +87 -0
  171. package/dist/thread/player/playerglobal/flash/display/Loader.js +79 -0
  172. package/dist/thread/player/playerglobal/flash/display/LoaderInfo.js +128 -0
  173. package/dist/thread/player/playerglobal/flash/display/MovieClip.js +194 -0
  174. package/dist/thread/player/playerglobal/flash/display/NativeWindow.js +245 -0
  175. package/dist/thread/player/playerglobal/flash/display/Shader.js +26 -0
  176. package/dist/thread/player/playerglobal/flash/display/ShaderData.js +85 -0
  177. package/dist/thread/player/playerglobal/flash/display/ShaderInput.js +64 -0
  178. package/dist/thread/player/playerglobal/flash/display/ShaderJob.js +181 -0
  179. package/dist/thread/player/playerglobal/flash/display/ShaderParameter.js +23 -0
  180. package/dist/thread/player/playerglobal/flash/display/Shape.js +13 -0
  181. package/dist/thread/player/playerglobal/flash/display/SimpleButton.js +103 -0
  182. package/dist/thread/player/playerglobal/flash/display/Sprite.js +84 -0
  183. package/dist/thread/player/playerglobal/flash/display/Stage.js +231 -0
  184. package/dist/thread/player/playerglobal/flash/display/Stage3D.js +54 -0
  185. package/dist/thread/player/playerglobal/flash/display/shaders.js +228 -0
  186. package/dist/thread/player/playerglobal/flash/events/Event.js +58 -0
  187. package/dist/thread/player/playerglobal/flash/events/EventDispatcher.js +103 -0
  188. package/dist/thread/player/playerglobal/flash/events/GestureEvent.js +34 -0
  189. package/dist/thread/player/playerglobal/flash/events/HTTPStatusEvent.js +8 -0
  190. package/dist/thread/player/playerglobal/flash/events/KeyboardEvent.js +51 -0
  191. package/dist/thread/player/playerglobal/flash/events/MouseEvent.js +59 -0
  192. package/dist/thread/player/playerglobal/flash/events/PressAndTapGestureEvent.js +30 -0
  193. package/dist/thread/player/playerglobal/flash/events/TimerEvent.js +16 -0
  194. package/dist/thread/player/playerglobal/flash/events/TouchEvent.js +45 -0
  195. package/dist/thread/player/playerglobal/flash/external/ExternalInterface.js +73 -0
  196. package/dist/thread/player/playerglobal/flash/filesystem/File.js +340 -0
  197. package/dist/thread/player/playerglobal/flash/filesystem/FileStream.js +453 -0
  198. package/dist/thread/player/playerglobal/flash/filesystem/paths.js +156 -0
  199. package/dist/thread/player/playerglobal/flash/filesystem/writes.js +143 -0
  200. package/dist/thread/player/playerglobal/flash/filters/BevelFilter.js +4 -0
  201. package/dist/thread/player/playerglobal/flash/filters/BitmapFilter.js +205 -0
  202. package/dist/thread/player/playerglobal/flash/filters/BlurFilter.js +4 -0
  203. package/dist/thread/player/playerglobal/flash/filters/ColorMatrixFilter.js +11 -0
  204. package/dist/thread/player/playerglobal/flash/filters/ConvolutionFilter.js +26 -0
  205. package/dist/thread/player/playerglobal/flash/filters/DisplacementMapFilter.js +51 -0
  206. package/dist/thread/player/playerglobal/flash/filters/DropShadowFilter.js +4 -0
  207. package/dist/thread/player/playerglobal/flash/filters/GlowFilter.js +4 -0
  208. package/dist/thread/player/playerglobal/flash/filters/GradientBevelFilter.js +4 -0
  209. package/dist/thread/player/playerglobal/flash/filters/GradientGlowFilter.js +4 -0
  210. package/dist/thread/player/playerglobal/flash/filters/ShaderFilter.js +53 -0
  211. package/dist/thread/player/playerglobal/flash/geom/Matrix3D.js +361 -0
  212. package/dist/thread/player/playerglobal/flash/geom/PerspectiveProjection.js +122 -0
  213. package/dist/thread/player/playerglobal/flash/geom/Transform.js +245 -0
  214. package/dist/thread/player/playerglobal/flash/geom/Utils3D.js +85 -0
  215. package/dist/thread/player/playerglobal/flash/globalization/Collator.js +149 -0
  216. package/dist/thread/player/playerglobal/flash/globalization/CurrencyFormatter.js +272 -0
  217. package/dist/thread/player/playerglobal/flash/globalization/CurrencyParseResult.js +21 -0
  218. package/dist/thread/player/playerglobal/flash/globalization/DateTimeFormatter.js +463 -0
  219. package/dist/thread/player/playerglobal/flash/globalization/LocaleID.js +144 -0
  220. package/dist/thread/player/playerglobal/flash/globalization/NumberFormatter.js +444 -0
  221. package/dist/thread/player/playerglobal/flash/globalization/NumberParseResult.js +22 -0
  222. package/dist/thread/player/playerglobal/flash/globalization/StringTools.js +59 -0
  223. package/dist/thread/player/playerglobal/flash/globalization/locale.js +190 -0
  224. package/dist/thread/player/playerglobal/flash/media/Camera.js +89 -0
  225. package/dist/thread/player/playerglobal/flash/media/Microphone.js +126 -0
  226. package/dist/thread/player/playerglobal/flash/media/Sound.js +543 -0
  227. package/dist/thread/player/playerglobal/flash/media/SoundMixer.js +74 -0
  228. package/dist/thread/player/playerglobal/flash/media/SoundTransform.js +40 -0
  229. package/dist/thread/player/playerglobal/flash/media/Video.js +43 -0
  230. package/dist/thread/player/playerglobal/flash/net/FileFilter.js +27 -0
  231. package/dist/thread/player/playerglobal/flash/net/FileReference.js +197 -0
  232. package/dist/thread/player/playerglobal/flash/net/LocalConnection.js +167 -0
  233. package/dist/thread/player/playerglobal/flash/net/NetConnection.js +155 -0
  234. package/dist/thread/player/playerglobal/flash/net/SharedObject.js +299 -0
  235. package/dist/thread/player/playerglobal/flash/net/Socket.js +282 -0
  236. package/dist/thread/player/playerglobal/flash/net/URLRequest.js +93 -0
  237. package/dist/thread/player/playerglobal/flash/net/URLStream.js +146 -0
  238. package/dist/thread/player/playerglobal/flash/net/XMLSocket.js +14 -0
  239. package/dist/thread/player/playerglobal/flash/net/local-modern.js +142 -0
  240. package/dist/thread/player/playerglobal/flash/net/local-values.js +217 -0
  241. package/dist/thread/player/playerglobal/flash/net/navigateToURL.js +29 -0
  242. package/dist/thread/player/playerglobal/flash/profiler/Telemetry.js +25 -0
  243. package/dist/thread/player/playerglobal/flash/sensors/Accelerometer.js +12 -0
  244. package/dist/thread/player/playerglobal/flash/system/ApplicationDomain.js +69 -0
  245. package/dist/thread/player/playerglobal/flash/system/Capabilities.js +163 -0
  246. package/dist/thread/player/playerglobal/flash/system/FSCommandHost.js +17 -0
  247. package/dist/thread/player/playerglobal/flash/system/Security.js +46 -0
  248. package/dist/thread/player/playerglobal/flash/system/SecurityDomain.js +21 -0
  249. package/dist/thread/player/playerglobal/flash/system/System.js +73 -0
  250. package/dist/thread/player/playerglobal/flash/system/Worker.js +112 -0
  251. package/dist/thread/player/playerglobal/flash/text/Font.js +95 -0
  252. package/dist/thread/player/playerglobal/flash/text/StaticText.js +16 -0
  253. package/dist/thread/player/playerglobal/flash/text/StyleSheet.js +65 -0
  254. package/dist/thread/player/playerglobal/flash/text/TextField.js +707 -0
  255. package/dist/thread/player/playerglobal/flash/text/TextRenderer.js +77 -0
  256. package/dist/thread/player/playerglobal/flash/text/engine/FontDescription.js +141 -0
  257. package/dist/thread/player/playerglobal/flash/text/engine/TabStop.js +46 -0
  258. package/dist/thread/player/playerglobal/flash/trace/Trace.js +17 -0
  259. package/dist/thread/player/playerglobal/flash/ui/ContextMenu.js +17 -0
  260. package/dist/thread/player/playerglobal/flash/ui/GameInput.js +19 -0
  261. package/dist/thread/player/playerglobal/flash/ui/Keyboard.js +27 -0
  262. package/dist/thread/player/playerglobal/flash/ui/Mouse.js +127 -0
  263. package/dist/thread/player/playerglobal/flash/ui/Multitouch.js +46 -0
  264. package/dist/thread/player/playerglobal/flash/utils/ByteArray.js +155 -0
  265. package/dist/thread/player/playerglobal/flash/utils/Timer.js +25 -0
  266. package/dist/thread/player/playerglobal/flash/xml/XMLDocument.js +74 -0
  267. package/dist/thread/player/playerglobal/index.js +224 -0
  268. package/dist/thread/player/playerglobal/libraries.js +10 -0
  269. package/dist/thread/player/playerglobal/playerglobal-library.js +22 -0
  270. package/dist/thread/player/playerglobal/toplevel.js +122 -0
  271. package/dist/thread/player/scripting/clipboard.js +146 -0
  272. package/dist/thread/player/scripting/code.js +900 -0
  273. package/dist/thread/player/scripting/evaluate.js +144 -0
  274. package/dist/thread/player/scripting/events.js +172 -0
  275. package/dist/thread/player/scripting/handover.js +182 -0
  276. package/dist/thread/player/scripting/lazy.js +38 -0
  277. package/dist/thread/player/scripting/lifecycle.js +272 -0
  278. package/dist/thread/player/scripting/loads.js +860 -0
  279. package/dist/thread/player/scripting/sha256.js +95 -0
  280. package/dist/thread/player/scripting/symbols.js +348 -0
  281. package/dist/thread/player/scripting/timers.js +434 -0
  282. package/dist/thread/player/scripting/workers.js +923 -0
  283. package/dist/thread/player/scripting.js +1018 -0
  284. package/dist/thread/player/stage.js +4 -0
  285. package/dist/thread/player/text/csm.js +113 -0
  286. package/dist/thread/player/text/css.js +167 -0
  287. package/dist/thread/player/text/fonts.js +97 -0
  288. package/dist/thread/player/text/layout.js +393 -0
  289. package/dist/thread/player/text/static.js +109 -0
  290. package/dist/thread/player/text/text.js +431 -0
  291. package/dist/thread/player/workers/thread.js +159 -0
  292. package/dist/thread/player/workers/wire.js +198 -0
  293. package/dist/thread/player-hosts/web-worker.js +19 -0
  294. package/dist/thread/runtime/avm1/activation.js +89 -0
  295. package/dist/thread/runtime/avm1/case.js +249 -0
  296. package/dist/thread/runtime/avm1/clips.js +334 -0
  297. package/dist/thread/runtime/avm1/control.js +280 -0
  298. package/dist/thread/runtime/avm1/errors.js +50 -0
  299. package/dist/thread/runtime/avm1/functions.js +249 -0
  300. package/dist/thread/runtime/avm1/globals/array.js +549 -0
  301. package/dist/thread/runtime/avm1/globals/broadcaster.js +131 -0
  302. package/dist/thread/runtime/avm1/globals/date.js +436 -0
  303. package/dist/thread/runtime/avm1/globals/global.js +344 -0
  304. package/dist/thread/runtime/avm1/globals/math.js +139 -0
  305. package/dist/thread/runtime/avm1/globals/number.js +93 -0
  306. package/dist/thread/runtime/avm1/globals/string.js +201 -0
  307. package/dist/thread/runtime/avm1/globals/timers.js +129 -0
  308. package/dist/thread/runtime/avm1/host.js +5 -0
  309. package/dist/thread/runtime/avm1/index.js +14 -0
  310. package/dist/thread/runtime/avm1/inheritance.js +132 -0
  311. package/dist/thread/runtime/avm1/numbers.js +298 -0
  312. package/dist/thread/runtime/avm1/objects.js +896 -0
  313. package/dist/thread/runtime/avm1/operators.js +170 -0
  314. package/dist/thread/runtime/avm1/realm.js +529 -0
  315. package/dist/thread/runtime/avm1/runtime.js +882 -0
  316. package/dist/thread/runtime/avm1/scope.js +385 -0
  317. package/dist/thread/runtime/avm1/urls.js +180 -0
  318. package/dist/thread/runtime/avm1/values.js +97 -0
  319. package/dist/thread/runtime/avm2/amf-classes.js +66 -0
  320. package/dist/thread/runtime/avm2/amf.js +801 -0
  321. package/dist/thread/runtime/avm2/array-conversion.js +100 -0
  322. package/dist/thread/runtime/avm2/builtin-library.js +21 -0
  323. package/dist/thread/runtime/avm2/cache-fill.js +86 -0
  324. package/dist/thread/runtime/avm2/classes.js +211 -0
  325. package/dist/thread/runtime/avm2/definitions.js +69 -0
  326. package/dist/thread/runtime/avm2/descriptors.js +5 -0
  327. package/dist/thread/runtime/avm2/dictionary-keys.js +295 -0
  328. package/dist/thread/runtime/avm2/domain-memory.js +75 -0
  329. package/dist/thread/runtime/avm2/domain.js +280 -0
  330. package/dist/thread/runtime/avm2/dynamic-properties.js +182 -0
  331. package/dist/thread/runtime/avm2/enumeration.js +393 -0
  332. package/dist/thread/runtime/avm2/errors.js +45 -0
  333. package/dist/thread/runtime/avm2/float-library.js +66 -0
  334. package/dist/thread/runtime/avm2/float.js +26 -0
  335. package/dist/thread/runtime/avm2/hooks.js +19 -0
  336. package/dist/thread/runtime/avm2/index.js +38 -0
  337. package/dist/thread/runtime/avm2/messages.js +177 -0
  338. package/dist/thread/runtime/avm2/method-factories.js +95 -0
  339. package/dist/thread/runtime/avm2/modules.js +105 -0
  340. package/dist/thread/runtime/avm2/names.js +248 -0
  341. package/dist/thread/runtime/avm2/natives/aliases.js +47 -0
  342. package/dist/thread/runtime/avm2/natives/array.js +390 -0
  343. package/dist/thread/runtime/avm2/natives/bytearray.js +1227 -0
  344. package/dist/thread/runtime/avm2/natives/case.js +88 -0
  345. package/dist/thread/runtime/avm2/natives/concurrent.js +199 -0
  346. package/dist/thread/runtime/avm2/natives/date.js +581 -0
  347. package/dist/thread/runtime/avm2/natives/define.js +130 -0
  348. package/dist/thread/runtime/avm2/natives/describe.js +351 -0
  349. package/dist/thread/runtime/avm2/natives/dictionary.js +12 -0
  350. package/dist/thread/runtime/avm2/natives/float-vector.js +81 -0
  351. package/dist/thread/runtime/avm2/natives/float.js +96 -0
  352. package/dist/thread/runtime/avm2/natives/index.js +64 -0
  353. package/dist/thread/runtime/avm2/natives/json.js +514 -0
  354. package/dist/thread/runtime/avm2/natives/number.js +162 -0
  355. package/dist/thread/runtime/avm2/natives/object.js +237 -0
  356. package/dist/thread/runtime/avm2/natives/proxy.js +75 -0
  357. package/dist/thread/runtime/avm2/natives/regexp.js +485 -0
  358. package/dist/thread/runtime/avm2/natives/shell-workers.js +404 -0
  359. package/dist/thread/runtime/avm2/natives/shell.js +557 -0
  360. package/dist/thread/runtime/avm2/natives/sort.js +377 -0
  361. package/dist/thread/runtime/avm2/natives/string.js +132 -0
  362. package/dist/thread/runtime/avm2/natives/sync.js +821 -0
  363. package/dist/thread/runtime/avm2/natives/toplevel.js +139 -0
  364. package/dist/thread/runtime/avm2/natives/vector-elements.js +46 -0
  365. package/dist/thread/runtime/avm2/natives/vector.js +406 -0
  366. package/dist/thread/runtime/avm2/natives/xml/access.js +633 -0
  367. package/dist/thread/runtime/avm2/natives/xml/build.js +291 -0
  368. package/dist/thread/runtime/avm2/natives/xml/chars.js +112 -0
  369. package/dist/thread/runtime/avm2/natives/xml/escape.js +38 -0
  370. package/dist/thread/runtime/avm2/natives/xml/names.js +204 -0
  371. package/dist/thread/runtime/avm2/natives/xml/node.js +272 -0
  372. package/dist/thread/runtime/avm2/natives/xml/operators.js +69 -0
  373. package/dist/thread/runtime/avm2/natives/xml/parser.js +356 -0
  374. package/dist/thread/runtime/avm2/natives/xml/strings.js +191 -0
  375. package/dist/thread/runtime/avm2/natives/xml/values.js +122 -0
  376. package/dist/thread/runtime/avm2/natives/xml/xml.js +645 -0
  377. package/dist/thread/runtime/avm2/number-strings.js +110 -0
  378. package/dist/thread/runtime/avm2/numbers.js +558 -0
  379. package/dist/thread/runtime/avm2/options.js +16 -0
  380. package/dist/thread/runtime/avm2/player-messages.js +550 -0
  381. package/dist/thread/runtime/avm2/property-cache.js +135 -0
  382. package/dist/thread/runtime/avm2/runtime.js +2644 -0
  383. package/dist/thread/runtime/avm2/traits.js +509 -0
  384. package/dist/thread/runtime/index.js +7 -0
  385. package/dist/web-worker.d.ts +2 -0
  386. package/dist/web-worker.d.ts.map +1 -0
  387. package/dist/web-worker.js +20 -0
  388. package/dist/web-worker.js.map +1 -0
  389. package/dist/websocket.d.ts +4 -0
  390. package/dist/websocket.d.ts.map +1 -0
  391. package/dist/websocket.js +27 -0
  392. package/dist/websocket.js.map +1 -0
  393. package/dist/workers.d.ts +35 -0
  394. package/dist/workers.d.ts.map +1 -0
  395. package/dist/workers.js +171 -0
  396. package/dist/workers.js.map +1 -0
  397. package/package.json +62 -3
  398. package/src/indexeddb.ts +227 -0
  399. package/src/node-worker.ts +13 -0
  400. package/src/node.ts +49 -0
  401. package/src/precompiled.ts +166 -0
  402. package/src/stage3d.ts +76 -0
  403. package/src/web-worker.ts +24 -0
  404. package/src/websocket.ts +32 -0
  405. package/src/workers.ts +255 -0
@@ -0,0 +1,305 @@
1
+ // A SimpleButton, and the making of its four states from DefineButton's records.
2
+ import { BUTTON_DOWN, BUTTON_HIT_TEST, BUTTON_OVER, BUTTON_UP, } from "../../format/index.js";
3
+ import { Container } from "./container.js";
4
+ import { BUTTON, CHILDREN, NO_CHILDREN, pickWork, scriptWork, } from "./displayobject.js";
5
+ import { displayFor } from "./instantiate.js";
6
+ /**
7
+ * Which of DefineButtonSound's sounds a change of state plays, by the
8
+ * state before and after, as Ruffle's button events pick them; none is -1.
9
+ * A drag off while pressed, which shows over, and back on, down again,
10
+ * play none either, as Ruffle's DragOut and DragOver: the pointer asks
11
+ * those quietly. A release outside plays over to up's
12
+ * (ButtonObject.releasedOutside).
13
+ */
14
+ const BUTTON_SOUNDS = {
15
+ up: { up: -1, over: 1, down: -1 },
16
+ over: { up: 0, over: -1, down: 2 },
17
+ down: { up: -1, over: 3, down: -1 },
18
+ };
19
+ /**
20
+ * A button (SimpleButton): four states, each a display object, of which it
21
+ * shows the up, over or down one, as the pointer has it, and hit tests with
22
+ * the fourth. AS3 keeps all four states, showing one child while each state
23
+ * plays its frames (`frameChildren`). AVM1 keeps just the current state's
24
+ * records as its children. Not a container to a script.
25
+ */
26
+ export class ButtonObject extends Container {
27
+ up = null;
28
+ over = null;
29
+ down = null;
30
+ hitTest = null;
31
+ state = "up";
32
+ firstOrder = false;
33
+ avm1Made = null;
34
+ avm1Flag = BUTTON_UP;
35
+ enabled = true;
36
+ useHandCursor = true;
37
+ trackAsMenu = false;
38
+ constructor() {
39
+ super();
40
+ this.kind = BUTTON;
41
+ this.frameChildren = NO_CHILDREN;
42
+ }
43
+ get upState() {
44
+ return this.up;
45
+ }
46
+ set upState(d) {
47
+ this.up = d;
48
+ this.statesChanged();
49
+ }
50
+ get overState() {
51
+ return this.over;
52
+ }
53
+ set overState(d) {
54
+ this.over = d;
55
+ this.statesChanged();
56
+ }
57
+ get downState() {
58
+ return this.down;
59
+ }
60
+ set downState(d) {
61
+ this.down = d;
62
+ this.statesChanged();
63
+ }
64
+ get hitTestState() {
65
+ return this.hitTest;
66
+ }
67
+ set hitTestState(d) {
68
+ this.hitTest = d;
69
+ // Where it is hit, which no change in the display list tells the pointer.
70
+ pickWork.changes++;
71
+ this.statesChanged();
72
+ }
73
+ /**
74
+ * Its frame children made again from the states it has now, each once,
75
+ * as Ruffle orders them, the hit test state first, whichever it shows: a
76
+ * new list, so that none it let go of stays held.
77
+ */
78
+ statesChanged() {
79
+ if (this.avm1Made) {
80
+ this.frameChildren = this.children;
81
+ return;
82
+ }
83
+ // A state that holds the button plays as its parent's child, not as the button's.
84
+ const states = [this.hitTest, this.up, this.down, this.over].filter((o, i, all) => o !== null && all.indexOf(o) === i && !o.encloses(this));
85
+ this.frameChildren = states.length > 0 ? states : NO_CHILDREN;
86
+ scriptWork.changes++;
87
+ }
88
+ /**
89
+ * Its frame children but any that has since come to hold it, as a state
90
+ * off the list a script then put the button in: a walk down them would
91
+ * come back to it.
92
+ */
93
+ playingStates() {
94
+ const states = this.frameChildren;
95
+ for (let i = 0; i < states.length; i++) {
96
+ if (states[i].encloses(this)) {
97
+ return states.filter((o) => !o.encloses(this));
98
+ }
99
+ }
100
+ return states;
101
+ }
102
+ /** Its states' next frame scripts run up, over, down, hit: the first, in a SWF after 9 (Scripting.construct). */
103
+ get firstScripts() {
104
+ return this.firstOrder;
105
+ }
106
+ set firstScripts(first) {
107
+ if (first !== this.firstOrder) {
108
+ this.firstOrder = first;
109
+ scriptWork.changes++;
110
+ }
111
+ }
112
+ /** The display object of state `state`. */
113
+ stateObject(state) {
114
+ return state === "up" ? this.upState : state === "over" ? this.overState : this.downState;
115
+ }
116
+ /** Show state `state`, with the sound DefineButtonSound gives the change. */
117
+ setState(state, sound = true) {
118
+ if (sound) {
119
+ this.playSound(BUTTON_SOUNDS[this.state][state]);
120
+ }
121
+ this.state = state;
122
+ this.show();
123
+ }
124
+ /** A press on it released elsewhere: up, with over to up's sound, as Ruffle's ReleaseOutside plays. */
125
+ releasedOutside() {
126
+ this.playSound(0);
127
+ this.setState("up", false);
128
+ }
129
+ /** DefineButtonSound's sound `index`, if it has one. */
130
+ playSound(index) {
131
+ const sounds = this.character?.type === "button" ? this.character.sounds : null;
132
+ const sound = sounds?.[index];
133
+ const library = this.library;
134
+ if (sound && library) {
135
+ library.sounds?.start(this, library, sound.id, sound.info);
136
+ }
137
+ }
138
+ /**
139
+ * Have the state it is in be its one child, as it is now. The states it
140
+ * does not show are parented to nothing, as Flash has them once made.
141
+ */
142
+ show() {
143
+ if (this.avm1Made) {
144
+ this.showAvm1();
145
+ return;
146
+ }
147
+ const current = this.stateObject(this.state);
148
+ for (const child of [...this.children]) {
149
+ if (child !== current) {
150
+ this.removeChild(child);
151
+ }
152
+ }
153
+ for (const state of [this.upState, this.overState, this.downState, this.hitTestState]) {
154
+ if (state && state !== current && state.parent === this && !this.children.includes(state)) {
155
+ state.parent = null;
156
+ }
157
+ }
158
+ // One that holds the button cannot be its child, as Flash refuses it (#2150): the button
159
+ // shows nothing, and it stays where it is.
160
+ if (current && !this.children.includes(current) && !current.encloses(this)) {
161
+ if (current.parent !== this) {
162
+ current.parent?.removeChild(current);
163
+ }
164
+ this.children.splice(0, 0, current);
165
+ this.puts++;
166
+ current.parent = this;
167
+ this.relist(current);
168
+ this.invalidate(CHILDREN);
169
+ scriptWork.changes++;
170
+ }
171
+ }
172
+ /** AVM1 keeps only the current state's records alive, reusing records shared by both states. */
173
+ makeAvm1States(made) {
174
+ this.avm1Made = made;
175
+ this.frameChildren = this.children;
176
+ this.show();
177
+ }
178
+ showAvm1() {
179
+ const character = this.character;
180
+ const library = this.library;
181
+ if (character?.type !== "button" || !library) {
182
+ return;
183
+ }
184
+ const flag = this.state === "up" ? BUTTON_UP : this.state === "over" ? BUTTON_OVER : BUTTON_DOWN;
185
+ const records = character.records;
186
+ for (let i = this.children.length - 1; i >= 0; i--) {
187
+ const child = this.children[i];
188
+ let keep = false;
189
+ for (let j = 0; j < records.length; j++) {
190
+ const record = records[j];
191
+ if (record.states & flag &&
192
+ record.states & this.avm1Flag &&
193
+ record.depth === child.depth &&
194
+ record.character === child.character?.id) {
195
+ keep = true;
196
+ break;
197
+ }
198
+ }
199
+ if (!keep && child.depth !== null && child.depth >= 0) {
200
+ this.removeAtDepth(child.depth);
201
+ }
202
+ }
203
+ for (let i = 0; i < records.length; i++) {
204
+ const record = records[i];
205
+ const c = record.states & flag ? library.characters.get(record.character) : undefined;
206
+ if (!c ||
207
+ c.type === "binary" ||
208
+ c.type === "font" ||
209
+ c.type === "fontCff" ||
210
+ c.type === "sound") {
211
+ continue;
212
+ }
213
+ const previous = this.depths.get(record.depth);
214
+ const display = previous?.character?.id === c.id ? previous : displayFor(c, library);
215
+ display.applyPlace(recordPlace(record, true));
216
+ if (display !== previous) {
217
+ this.placeAtDepth(display, record.depth);
218
+ this.avm1Made?.(display, c);
219
+ }
220
+ }
221
+ if (this.hitTest?.parent === this) {
222
+ this.hitTest.parent = null;
223
+ }
224
+ this.avm1Flag = flag;
225
+ }
226
+ }
227
+ /**
228
+ * Make a button's states from its records. AVM1 builds only the state it
229
+ * shows; AS3 makes up, over, down, then hit test: each state the one character it
230
+ * shows, else a container of its characters by depth, one for none too. A
231
+ * character in several states is made once for each. `made` brings a
232
+ * character to life once placed, and `holderMade` each container, once all
233
+ * four states' characters are, as Flash names them after those; the hit
234
+ * test state takes only the records' transforms.
235
+ */
236
+ export function buttonStates(button, character, library, made, holderMade) {
237
+ const holders = [];
238
+ const state = (flag) => {
239
+ const parts = [];
240
+ for (const record of character.records) {
241
+ const c = record.states & flag ? library.characters.get(record.character) : undefined;
242
+ if (c &&
243
+ c.type !== "binary" &&
244
+ c.type !== "font" &&
245
+ c.type !== "fontCff" &&
246
+ c.type !== "sound") {
247
+ const display = displayFor(c, library);
248
+ display.applyPlace(recordPlace(record, flag !== BUTTON_HIT_TEST));
249
+ parts.push({ display, character: c, record });
250
+ }
251
+ }
252
+ // Made as the button's, under it, though in no container's list: a
253
+ // script sees the stage from them, and no parent above them.
254
+ if (parts.length === 1) {
255
+ parts[0].display.parent = button;
256
+ made(parts[0].display, parts[0].character);
257
+ return parts[0].display;
258
+ }
259
+ const holder = new Container();
260
+ holder.parent = button;
261
+ for (const part of parts) {
262
+ holder.placeAtDepth(part.display, part.record.depth);
263
+ made(part.display, part.character);
264
+ }
265
+ holders.push(holder);
266
+ return holder;
267
+ };
268
+ if (library.avm1) {
269
+ button.makeAvm1States(made);
270
+ button.hitTestState = state(BUTTON_HIT_TEST);
271
+ button.show();
272
+ return;
273
+ }
274
+ button.upState = state(BUTTON_UP);
275
+ button.overState = state(BUTTON_OVER);
276
+ button.downState = state(BUTTON_DOWN);
277
+ button.hitTestState = state(BUTTON_HIT_TEST);
278
+ for (const holder of holders) {
279
+ holderMade(holder);
280
+ }
281
+ button.show();
282
+ }
283
+ /** A button record as a place of its character: its transform, and, but in the hit test state, its look. */
284
+ function recordPlace(record, look) {
285
+ return {
286
+ depth: record.depth,
287
+ move: false,
288
+ character: record.character,
289
+ matrix: record.matrix,
290
+ colorTransform: look ? record.colorTransform : null,
291
+ ratio: null,
292
+ name: null,
293
+ clipDepth: null,
294
+ className: null,
295
+ hasImage: false,
296
+ blendMode: look ? record.blendMode : null,
297
+ cacheAsBitmap: null,
298
+ visible: null,
299
+ opaqueBackground: null,
300
+ filters: look ? record.filters : null,
301
+ metaData: null,
302
+ actions: null,
303
+ corrupt: 0,
304
+ };
305
+ }
@@ -0,0 +1,40 @@
1
+ /** The colour transform that changes nothing: an object without one draws as with this. */
2
+ export const IDENTITY_COLOR = {
3
+ rMul: 1,
4
+ gMul: 1,
5
+ bMul: 1,
6
+ aMul: 1,
7
+ rAdd: 0,
8
+ gAdd: 0,
9
+ bAdd: 0,
10
+ aAdd: 0,
11
+ };
12
+ /** What a child draws, seen through its parent: `child` first, then `parent`. */
13
+ export function concatColor(parent, child) {
14
+ return concatColorInto({ ...IDENTITY_COLOR }, parent, child);
15
+ }
16
+ /** `parent` and `child` concatenated, as concatColor does, into `out`, which is given back. */
17
+ export function concatColorInto(out, parent, child) {
18
+ out.rMul = child.rMul * parent.rMul;
19
+ out.gMul = child.gMul * parent.gMul;
20
+ out.bMul = child.bMul * parent.bMul;
21
+ out.aMul = child.aMul * parent.aMul;
22
+ out.rAdd = child.rAdd * parent.rMul + parent.rAdd;
23
+ out.gAdd = child.gAdd * parent.gMul + parent.gAdd;
24
+ out.bAdd = child.bAdd * parent.bMul + parent.bAdd;
25
+ out.aAdd = child.aAdd * parent.aMul + parent.aAdd;
26
+ return out;
27
+ }
28
+ export function sameColor(a, b) {
29
+ return (a === b ||
30
+ (a !== null &&
31
+ b !== null &&
32
+ a.rMul === b.rMul &&
33
+ a.gMul === b.gMul &&
34
+ a.bMul === b.bMul &&
35
+ a.aMul === b.aMul &&
36
+ a.rAdd === b.rAdd &&
37
+ a.gAdd === b.gAdd &&
38
+ a.bAdd === b.bAdd &&
39
+ a.aAdd === b.aAdd));
40
+ }
@@ -0,0 +1,150 @@
1
+ // A display object with children. It keeps them in render order, which
2
+ // is their index in AS3, and apart from it the children the timeline
3
+ // placed, by depth, which is how SWF tags address them; a child the
4
+ // timeline places goes before the first child of a greater depth.
5
+ import { CHILDREN, DisplayObject, OTHER, scriptWork } from "./displayobject.js";
6
+ export class Container extends DisplayObject {
7
+ /** The library whose timeline this is, for what it tells of children going; a script's container has none. */
8
+ library = null;
9
+ /** Its children in render order: index 0 is drawn first, below the rest. */
10
+ children = [];
11
+ /** The children the timeline placed, by depth. */
12
+ depths = new Map();
13
+ /** Whether a descendant changed since the renderer last synced. */
14
+ descendantsDirty = true;
15
+ /**
16
+ * The clips and buttons the frame's walks visit at and under it, in
17
+ * their order, kept while no clip or container comes or goes below it
18
+ * (walkList), and its arrays after, to be made again in; null where it
19
+ * has never been long enough to keep.
20
+ */
21
+ walk = null;
22
+ /** Counts the children put on the list, for removeAtDepth to see whether a listener put one back. */
23
+ puts = 0;
24
+ constructor() {
25
+ super();
26
+ this.frameChildren = this.children;
27
+ }
28
+ /**
29
+ * A child came, went or moved: the walks' lists that hold it are made
30
+ * again, those of this container and every one above it. Not for a
31
+ * leaf, a shape or a text, which no walk visits: a timeline's shapes
32
+ * swapped every frame leave the lists be.
33
+ */
34
+ relist(child) {
35
+ if (child.kind === OTHER && child.frameChildren.length === 0) {
36
+ return;
37
+ }
38
+ for (let p = this; p; p = p.parent) {
39
+ const walk = p.walk;
40
+ if (walk?.current) {
41
+ walk.current = false;
42
+ // Emptied, its room kept: one no walk makes again, off the list or now too short to
43
+ // keep, would hold what left it alive.
44
+ walk.items.fill(null);
45
+ }
46
+ }
47
+ }
48
+ /** Place `child` at timeline depth `depth`: before the first child of a greater depth. */
49
+ placeAtDepth(child, depth) {
50
+ this.removeAtDepth(depth);
51
+ let index = this.children.length;
52
+ for (let i = 0; i < this.children.length; i++) {
53
+ const d = this.children[i].depth;
54
+ if (d !== null && d > depth) {
55
+ index = i;
56
+ break;
57
+ }
58
+ }
59
+ child.depth = depth;
60
+ child.parent = this;
61
+ this.children.splice(index, 0, child);
62
+ this.puts++;
63
+ this.depths.set(depth, child);
64
+ this.relist(child);
65
+ this.invalidate(CHILDREN);
66
+ scriptWork.changes++;
67
+ }
68
+ removeAtDepth(depth) {
69
+ const child = this.depths.get(depth);
70
+ if (!child) {
71
+ return null;
72
+ }
73
+ // An AVM1 clip with an unload handler stays, drawn, at a depth below
74
+ // the timeline's until the next frame, as Flash keeps one (avm1/avm1.ts).
75
+ if (this.library?.avm1?.keeps(child)) {
76
+ const kept = -depth - 1;
77
+ this.depths.delete(depth);
78
+ this.depths.set(kept, child);
79
+ child.depth = kept;
80
+ return child;
81
+ }
82
+ // The timeline's removal: a script's goes through the natives, which tell of it themselves.
83
+ // Flash has the child out of the list while it tells of it, still its parent's: the
84
+ // siblings' indexes have closed up, and the parent no longer finds it there (#2025).
85
+ const index = this.children.indexOf(child);
86
+ if (index >= 0) {
87
+ this.takeOut(child, index);
88
+ }
89
+ const puts = this.puts;
90
+ this.library?.removing?.(child, true);
91
+ this.library?.sounds?.removed(child);
92
+ // A listener may have put it on this list again (which Flash does not survive). Where
93
+ // nothing was put on it meanwhile, the search, a whole list's on every removal, is spared.
94
+ if (child.parent === this && (this.puts === puts || !this.children.includes(child))) {
95
+ child.parent = null;
96
+ child.focusDrop?.(child);
97
+ }
98
+ return child;
99
+ }
100
+ /**
101
+ * Take `child` out, wherever it is in the list, and off the timeline's
102
+ * depths; nothing for one not in it, which a listener of its removal may
103
+ * have taken out already.
104
+ */
105
+ removeChild(child) {
106
+ const index = this.children.indexOf(child);
107
+ if (index < 0) {
108
+ return;
109
+ }
110
+ this.takeOut(child, index);
111
+ child.parent = null;
112
+ child.focusDrop?.(child);
113
+ }
114
+ /** `child`, at `index`, out of the list and off the depths; its parent is left to the caller. */
115
+ takeOut(child, index) {
116
+ if (child.depth !== null) {
117
+ this.depths.delete(child.depth);
118
+ child.depth = null;
119
+ }
120
+ this.children.splice(index, 1);
121
+ this.relist(child);
122
+ this.invalidate(CHILDREN);
123
+ scriptWork.changes++;
124
+ }
125
+ /**
126
+ * Put `child` at `index` in render order, as a script's addChildAt does:
127
+ * out of its parent first, and off the timeline's depths, which no
128
+ * longer place it.
129
+ */
130
+ addChildAt(child, index) {
131
+ const same = child.parent === this;
132
+ child.parent?.removeChild(child);
133
+ child.parent = this;
134
+ this.children.splice(same ? Math.min(index, this.children.length) : index, 0, child);
135
+ this.puts++;
136
+ this.relist(child);
137
+ this.invalidate(CHILDREN);
138
+ scriptWork.changes++;
139
+ }
140
+ swapChildren(a, b) {
141
+ const i = this.children.indexOf(a);
142
+ const j = this.children.indexOf(b);
143
+ this.children[i] = b;
144
+ this.children[j] = a;
145
+ this.relist(a);
146
+ this.relist(b);
147
+ this.invalidate(CHILDREN);
148
+ scriptWork.changes++;
149
+ }
150
+ }
@@ -0,0 +1,14 @@
1
+ // The display list the player owns: display objects, containers and
2
+ // movie clips, as Flash has them. The renderer walks it (see scene/view.ts) and
3
+ // never decides its order. Each kind of object has a module of its own; this
4
+ // one gathers them for the rest of the player, which imports them from here.
5
+ export { BitmapObject } from "./bitmapobject.js";
6
+ export { ButtonObject, buttonStates } from "./buttonobject.js";
7
+ export { Container } from "./container.js";
8
+ export { BUTTON, CLIP, CONTENT, DisplayObject, LEAST_SCALE_3D, normalizeDegrees, OTHER, pickWork, rootOf, scriptWork, TRANSFORM, unloads, } from "./displayobject.js";
9
+ export { construct, displayFor, instantiate } from "./instantiate.js";
10
+ export { EMPTY_TIMELINE, MovieClip } from "./movieclip.js";
11
+ export { ShapeObject } from "./shapeobject.js";
12
+ export { StaticTextObject, TextObject } from "./textobjects.js";
13
+ export { VideoObject } from "./videoobject.js";
14
+ export { Clips, scriptChildren, walkList } from "./walk.js";