@swf2es/runtime 0.0.0-stage → 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 (459) hide show
  1. package/LICENSE +202 -0
  2. package/LICENSE.third-party +422 -0
  3. package/README.md +29 -2
  4. package/dist/avm1/activation.d.ts +108 -0
  5. package/dist/avm1/activation.d.ts.map +1 -0
  6. package/dist/avm1/activation.js +90 -0
  7. package/dist/avm1/activation.js.map +1 -0
  8. package/dist/avm1/case.d.ts +3 -0
  9. package/dist/avm1/case.d.ts.map +1 -0
  10. package/dist/avm1/case.js +250 -0
  11. package/dist/avm1/case.js.map +1 -0
  12. package/dist/avm1/clips.d.ts +68 -0
  13. package/dist/avm1/clips.d.ts.map +1 -0
  14. package/dist/avm1/clips.js +335 -0
  15. package/dist/avm1/clips.js.map +1 -0
  16. package/dist/avm1/control.d.ts +54 -0
  17. package/dist/avm1/control.d.ts.map +1 -0
  18. package/dist/avm1/control.js +281 -0
  19. package/dist/avm1/control.js.map +1 -0
  20. package/dist/avm1/errors.d.ts +49 -0
  21. package/dist/avm1/errors.d.ts.map +1 -0
  22. package/dist/avm1/errors.js +51 -0
  23. package/dist/avm1/errors.js.map +1 -0
  24. package/dist/avm1/functions.d.ts +94 -0
  25. package/dist/avm1/functions.d.ts.map +1 -0
  26. package/dist/avm1/functions.js +250 -0
  27. package/dist/avm1/functions.js.map +1 -0
  28. package/dist/avm1/globals/array.d.ts +8 -0
  29. package/dist/avm1/globals/array.d.ts.map +1 -0
  30. package/dist/avm1/globals/array.js +550 -0
  31. package/dist/avm1/globals/array.js.map +1 -0
  32. package/dist/avm1/globals/broadcaster.d.ts +22 -0
  33. package/dist/avm1/globals/broadcaster.d.ts.map +1 -0
  34. package/dist/avm1/globals/broadcaster.js +132 -0
  35. package/dist/avm1/globals/broadcaster.js.map +1 -0
  36. package/dist/avm1/globals/date.d.ts +10 -0
  37. package/dist/avm1/globals/date.d.ts.map +1 -0
  38. package/dist/avm1/globals/date.js +437 -0
  39. package/dist/avm1/globals/date.js.map +1 -0
  40. package/dist/avm1/globals/global.d.ts +23 -0
  41. package/dist/avm1/globals/global.d.ts.map +1 -0
  42. package/dist/avm1/globals/global.js +345 -0
  43. package/dist/avm1/globals/global.js.map +1 -0
  44. package/dist/avm1/globals/math.d.ts +7 -0
  45. package/dist/avm1/globals/math.d.ts.map +1 -0
  46. package/dist/avm1/globals/math.js +140 -0
  47. package/dist/avm1/globals/math.js.map +1 -0
  48. package/dist/avm1/globals/number.d.ts +11 -0
  49. package/dist/avm1/globals/number.d.ts.map +1 -0
  50. package/dist/avm1/globals/number.js +94 -0
  51. package/dist/avm1/globals/number.js.map +1 -0
  52. package/dist/avm1/globals/string.d.ts +8 -0
  53. package/dist/avm1/globals/string.d.ts.map +1 -0
  54. package/dist/avm1/globals/string.js +202 -0
  55. package/dist/avm1/globals/string.js.map +1 -0
  56. package/dist/avm1/globals/timers.d.ts +49 -0
  57. package/dist/avm1/globals/timers.d.ts.map +1 -0
  58. package/dist/avm1/globals/timers.js +130 -0
  59. package/dist/avm1/globals/timers.js.map +1 -0
  60. package/dist/avm1/host.d.ts +146 -0
  61. package/dist/avm1/host.d.ts.map +1 -0
  62. package/dist/avm1/host.js +6 -0
  63. package/dist/avm1/host.js.map +1 -0
  64. package/dist/avm1/index.d.ts +15 -0
  65. package/dist/avm1/index.d.ts.map +1 -0
  66. package/dist/avm1/index.js +15 -0
  67. package/dist/avm1/index.js.map +1 -0
  68. package/dist/avm1/inheritance.d.ts +25 -0
  69. package/dist/avm1/inheritance.d.ts.map +1 -0
  70. package/dist/avm1/inheritance.js +133 -0
  71. package/dist/avm1/inheritance.js.map +1 -0
  72. package/dist/avm1/numbers.d.ts +21 -0
  73. package/dist/avm1/numbers.d.ts.map +1 -0
  74. package/dist/avm1/numbers.js +299 -0
  75. package/dist/avm1/numbers.js.map +1 -0
  76. package/dist/avm1/objects.d.ts +245 -0
  77. package/dist/avm1/objects.d.ts.map +1 -0
  78. package/dist/avm1/objects.js +897 -0
  79. package/dist/avm1/objects.js.map +1 -0
  80. package/dist/avm1/operators.d.ts +45 -0
  81. package/dist/avm1/operators.d.ts.map +1 -0
  82. package/dist/avm1/operators.js +171 -0
  83. package/dist/avm1/operators.js.map +1 -0
  84. package/dist/avm1/realm.d.ts +126 -0
  85. package/dist/avm1/realm.d.ts.map +1 -0
  86. package/dist/avm1/realm.js +530 -0
  87. package/dist/avm1/realm.js.map +1 -0
  88. package/dist/avm1/runtime.d.ts +294 -0
  89. package/dist/avm1/runtime.d.ts.map +1 -0
  90. package/dist/avm1/runtime.js +883 -0
  91. package/dist/avm1/runtime.js.map +1 -0
  92. package/dist/avm1/scope.d.ts +77 -0
  93. package/dist/avm1/scope.d.ts.map +1 -0
  94. package/dist/avm1/scope.js +386 -0
  95. package/dist/avm1/scope.js.map +1 -0
  96. package/dist/avm1/urls.d.ts +25 -0
  97. package/dist/avm1/urls.d.ts.map +1 -0
  98. package/dist/avm1/urls.js +181 -0
  99. package/dist/avm1/urls.js.map +1 -0
  100. package/dist/avm1/values.d.ts +52 -0
  101. package/dist/avm1/values.d.ts.map +1 -0
  102. package/dist/avm1/values.js +98 -0
  103. package/dist/avm1/values.js.map +1 -0
  104. package/dist/avm2/amf-classes.d.ts +28 -0
  105. package/dist/avm2/amf-classes.d.ts.map +1 -0
  106. package/dist/avm2/amf-classes.js +67 -0
  107. package/dist/avm2/amf-classes.js.map +1 -0
  108. package/dist/avm2/amf.d.ts +96 -0
  109. package/dist/avm2/amf.d.ts.map +1 -0
  110. package/dist/avm2/amf.js +802 -0
  111. package/dist/avm2/amf.js.map +1 -0
  112. package/dist/avm2/array-conversion.d.ts +31 -0
  113. package/dist/avm2/array-conversion.d.ts.map +1 -0
  114. package/dist/avm2/array-conversion.js +101 -0
  115. package/dist/avm2/array-conversion.js.map +1 -0
  116. package/dist/avm2/builtin-library.d.ts +2 -0
  117. package/dist/avm2/builtin-library.d.ts.map +1 -0
  118. package/dist/avm2/builtin-library.js +22 -0
  119. package/dist/avm2/builtin-library.js.map +1 -0
  120. package/dist/avm2/cache-fill.d.ts +14 -0
  121. package/dist/avm2/cache-fill.d.ts.map +1 -0
  122. package/dist/avm2/cache-fill.js +87 -0
  123. package/dist/avm2/cache-fill.js.map +1 -0
  124. package/dist/avm2/classes.d.ts +17 -0
  125. package/dist/avm2/classes.d.ts.map +1 -0
  126. package/dist/avm2/classes.js +212 -0
  127. package/dist/avm2/classes.js.map +1 -0
  128. package/dist/avm2/definitions.d.ts +28 -0
  129. package/dist/avm2/definitions.d.ts.map +1 -0
  130. package/dist/avm2/definitions.js +70 -0
  131. package/dist/avm2/definitions.js.map +1 -0
  132. package/dist/avm2/descriptors.d.ts +118 -0
  133. package/dist/avm2/descriptors.d.ts.map +1 -0
  134. package/dist/avm2/descriptors.js +6 -0
  135. package/dist/avm2/descriptors.js.map +1 -0
  136. package/dist/avm2/dictionary-keys.d.ts +73 -0
  137. package/dist/avm2/dictionary-keys.d.ts.map +1 -0
  138. package/dist/avm2/dictionary-keys.js +296 -0
  139. package/dist/avm2/dictionary-keys.js.map +1 -0
  140. package/dist/avm2/domain-memory.d.ts +23 -0
  141. package/dist/avm2/domain-memory.d.ts.map +1 -0
  142. package/dist/avm2/domain-memory.js +76 -0
  143. package/dist/avm2/domain-memory.js.map +1 -0
  144. package/dist/avm2/domain.d.ts +108 -0
  145. package/dist/avm2/domain.d.ts.map +1 -0
  146. package/dist/avm2/domain.js +281 -0
  147. package/dist/avm2/domain.js.map +1 -0
  148. package/dist/avm2/dynamic-properties.d.ts +62 -0
  149. package/dist/avm2/dynamic-properties.d.ts.map +1 -0
  150. package/dist/avm2/dynamic-properties.js +183 -0
  151. package/dist/avm2/dynamic-properties.js.map +1 -0
  152. package/dist/avm2/enumeration.d.ts +75 -0
  153. package/dist/avm2/enumeration.d.ts.map +1 -0
  154. package/dist/avm2/enumeration.js +394 -0
  155. package/dist/avm2/enumeration.js.map +1 -0
  156. package/dist/avm2/errors.d.ts +20 -0
  157. package/dist/avm2/errors.d.ts.map +1 -0
  158. package/dist/avm2/errors.js +46 -0
  159. package/dist/avm2/errors.js.map +1 -0
  160. package/dist/avm2/float-library.d.ts +2 -0
  161. package/dist/avm2/float-library.d.ts.map +1 -0
  162. package/dist/avm2/float-library.js +67 -0
  163. package/dist/avm2/float-library.js.map +1 -0
  164. package/dist/avm2/float.d.ts +9 -0
  165. package/dist/avm2/float.d.ts.map +1 -0
  166. package/dist/avm2/float.js +27 -0
  167. package/dist/avm2/float.js.map +1 -0
  168. package/dist/avm2/hooks.d.ts +77 -0
  169. package/dist/avm2/hooks.d.ts.map +1 -0
  170. package/dist/avm2/hooks.js +20 -0
  171. package/dist/avm2/hooks.js.map +1 -0
  172. package/dist/avm2/index.d.ts +32 -0
  173. package/dist/avm2/index.d.ts.map +1 -0
  174. package/dist/avm2/index.js +39 -0
  175. package/dist/avm2/index.js.map +1 -0
  176. package/dist/avm2/messages.d.ts +2 -0
  177. package/dist/avm2/messages.d.ts.map +1 -0
  178. package/dist/avm2/messages.js +178 -0
  179. package/dist/avm2/messages.js.map +1 -0
  180. package/dist/avm2/method-factories.d.ts +35 -0
  181. package/dist/avm2/method-factories.d.ts.map +1 -0
  182. package/dist/avm2/method-factories.js +96 -0
  183. package/dist/avm2/method-factories.js.map +1 -0
  184. package/dist/avm2/modules.d.ts +40 -0
  185. package/dist/avm2/modules.d.ts.map +1 -0
  186. package/dist/avm2/modules.js +106 -0
  187. package/dist/avm2/modules.js.map +1 -0
  188. package/dist/avm2/names.d.ts +143 -0
  189. package/dist/avm2/names.d.ts.map +1 -0
  190. package/dist/avm2/names.js +249 -0
  191. package/dist/avm2/names.js.map +1 -0
  192. package/dist/avm2/natives/aliases.d.ts +3 -0
  193. package/dist/avm2/natives/aliases.d.ts.map +1 -0
  194. package/dist/avm2/natives/aliases.js +48 -0
  195. package/dist/avm2/natives/aliases.js.map +1 -0
  196. package/dist/avm2/natives/array.d.ts +5 -0
  197. package/dist/avm2/natives/array.d.ts.map +1 -0
  198. package/dist/avm2/natives/array.js +391 -0
  199. package/dist/avm2/natives/array.js.map +1 -0
  200. package/dist/avm2/natives/bytearray.d.ts +180 -0
  201. package/dist/avm2/natives/bytearray.d.ts.map +1 -0
  202. package/dist/avm2/natives/bytearray.js +1228 -0
  203. package/dist/avm2/natives/bytearray.js.map +1 -0
  204. package/dist/avm2/natives/case.d.ts +5 -0
  205. package/dist/avm2/natives/case.d.ts.map +1 -0
  206. package/dist/avm2/natives/case.js +89 -0
  207. package/dist/avm2/natives/case.js.map +1 -0
  208. package/dist/avm2/natives/concurrent.d.ts +24 -0
  209. package/dist/avm2/natives/concurrent.d.ts.map +1 -0
  210. package/dist/avm2/natives/concurrent.js +200 -0
  211. package/dist/avm2/natives/concurrent.js.map +1 -0
  212. package/dist/avm2/natives/date.d.ts +5 -0
  213. package/dist/avm2/natives/date.d.ts.map +1 -0
  214. package/dist/avm2/natives/date.js +582 -0
  215. package/dist/avm2/natives/date.js.map +1 -0
  216. package/dist/avm2/natives/define.d.ts +58 -0
  217. package/dist/avm2/natives/define.d.ts.map +1 -0
  218. package/dist/avm2/natives/define.js +131 -0
  219. package/dist/avm2/natives/define.js.map +1 -0
  220. package/dist/avm2/natives/describe.d.ts +3 -0
  221. package/dist/avm2/natives/describe.d.ts.map +1 -0
  222. package/dist/avm2/natives/describe.js +352 -0
  223. package/dist/avm2/natives/describe.js.map +1 -0
  224. package/dist/avm2/natives/dictionary.d.ts +3 -0
  225. package/dist/avm2/natives/dictionary.d.ts.map +1 -0
  226. package/dist/avm2/natives/dictionary.js +13 -0
  227. package/dist/avm2/natives/dictionary.js.map +1 -0
  228. package/dist/avm2/natives/float-vector.d.ts +20 -0
  229. package/dist/avm2/natives/float-vector.d.ts.map +1 -0
  230. package/dist/avm2/natives/float-vector.js +82 -0
  231. package/dist/avm2/natives/float-vector.js.map +1 -0
  232. package/dist/avm2/natives/float.d.ts +5 -0
  233. package/dist/avm2/natives/float.d.ts.map +1 -0
  234. package/dist/avm2/natives/float.js +97 -0
  235. package/dist/avm2/natives/float.js.map +1 -0
  236. package/dist/avm2/natives/index.d.ts +7 -0
  237. package/dist/avm2/natives/index.d.ts.map +1 -0
  238. package/dist/avm2/natives/index.js +65 -0
  239. package/dist/avm2/natives/index.js.map +1 -0
  240. package/dist/avm2/natives/json.d.ts +3 -0
  241. package/dist/avm2/natives/json.d.ts.map +1 -0
  242. package/dist/avm2/natives/json.js +515 -0
  243. package/dist/avm2/natives/json.js.map +1 -0
  244. package/dist/avm2/natives/number.d.ts +15 -0
  245. package/dist/avm2/natives/number.d.ts.map +1 -0
  246. package/dist/avm2/natives/number.js +163 -0
  247. package/dist/avm2/natives/number.js.map +1 -0
  248. package/dist/avm2/natives/object.d.ts +8 -0
  249. package/dist/avm2/natives/object.d.ts.map +1 -0
  250. package/dist/avm2/natives/object.js +238 -0
  251. package/dist/avm2/natives/object.js.map +1 -0
  252. package/dist/avm2/natives/proxy.d.ts +5 -0
  253. package/dist/avm2/natives/proxy.d.ts.map +1 -0
  254. package/dist/avm2/natives/proxy.js +76 -0
  255. package/dist/avm2/natives/proxy.js.map +1 -0
  256. package/dist/avm2/natives/regexp.d.ts +21 -0
  257. package/dist/avm2/natives/regexp.d.ts.map +1 -0
  258. package/dist/avm2/natives/regexp.js +486 -0
  259. package/dist/avm2/natives/regexp.js.map +1 -0
  260. package/dist/avm2/natives/shell-workers.d.ts +140 -0
  261. package/dist/avm2/natives/shell-workers.d.ts.map +1 -0
  262. package/dist/avm2/natives/shell-workers.js +405 -0
  263. package/dist/avm2/natives/shell-workers.js.map +1 -0
  264. package/dist/avm2/natives/shell.d.ts +12 -0
  265. package/dist/avm2/natives/shell.d.ts.map +1 -0
  266. package/dist/avm2/natives/shell.js +558 -0
  267. package/dist/avm2/natives/shell.js.map +1 -0
  268. package/dist/avm2/natives/sort.d.ts +7 -0
  269. package/dist/avm2/natives/sort.d.ts.map +1 -0
  270. package/dist/avm2/natives/sort.js +378 -0
  271. package/dist/avm2/natives/sort.js.map +1 -0
  272. package/dist/avm2/natives/string.d.ts +5 -0
  273. package/dist/avm2/natives/string.d.ts.map +1 -0
  274. package/dist/avm2/natives/string.js +133 -0
  275. package/dist/avm2/natives/string.js.map +1 -0
  276. package/dist/avm2/natives/sync.d.ts +215 -0
  277. package/dist/avm2/natives/sync.d.ts.map +1 -0
  278. package/dist/avm2/natives/sync.js +822 -0
  279. package/dist/avm2/natives/sync.js.map +1 -0
  280. package/dist/avm2/natives/toplevel.d.ts +5 -0
  281. package/dist/avm2/natives/toplevel.d.ts.map +1 -0
  282. package/dist/avm2/natives/toplevel.js +140 -0
  283. package/dist/avm2/natives/toplevel.js.map +1 -0
  284. package/dist/avm2/natives/vector-elements.d.ts +10 -0
  285. package/dist/avm2/natives/vector-elements.d.ts.map +1 -0
  286. package/dist/avm2/natives/vector-elements.js +47 -0
  287. package/dist/avm2/natives/vector-elements.js.map +1 -0
  288. package/dist/avm2/natives/vector.d.ts +5 -0
  289. package/dist/avm2/natives/vector.d.ts.map +1 -0
  290. package/dist/avm2/natives/vector.js +407 -0
  291. package/dist/avm2/natives/vector.js.map +1 -0
  292. package/dist/avm2/natives/xml/access.d.ts +34 -0
  293. package/dist/avm2/natives/xml/access.d.ts.map +1 -0
  294. package/dist/avm2/natives/xml/access.js +634 -0
  295. package/dist/avm2/natives/xml/access.js.map +1 -0
  296. package/dist/avm2/natives/xml/build.d.ts +11 -0
  297. package/dist/avm2/natives/xml/build.d.ts.map +1 -0
  298. package/dist/avm2/natives/xml/build.js +292 -0
  299. package/dist/avm2/natives/xml/build.js.map +1 -0
  300. package/dist/avm2/natives/xml/chars.d.ts +9 -0
  301. package/dist/avm2/natives/xml/chars.d.ts.map +1 -0
  302. package/dist/avm2/natives/xml/chars.js +113 -0
  303. package/dist/avm2/natives/xml/chars.js.map +1 -0
  304. package/dist/avm2/natives/xml/escape.d.ts +5 -0
  305. package/dist/avm2/natives/xml/escape.d.ts.map +1 -0
  306. package/dist/avm2/natives/xml/escape.js +39 -0
  307. package/dist/avm2/natives/xml/escape.js.map +1 -0
  308. package/dist/avm2/natives/xml/names.d.ts +46 -0
  309. package/dist/avm2/natives/xml/names.d.ts.map +1 -0
  310. package/dist/avm2/natives/xml/names.js +205 -0
  311. package/dist/avm2/natives/xml/names.js.map +1 -0
  312. package/dist/avm2/natives/xml/node.d.ts +94 -0
  313. package/dist/avm2/natives/xml/node.d.ts.map +1 -0
  314. package/dist/avm2/natives/xml/node.js +273 -0
  315. package/dist/avm2/natives/xml/node.js.map +1 -0
  316. package/dist/avm2/natives/xml/operators.d.ts +7 -0
  317. package/dist/avm2/natives/xml/operators.d.ts.map +1 -0
  318. package/dist/avm2/natives/xml/operators.js +70 -0
  319. package/dist/avm2/natives/xml/operators.js.map +1 -0
  320. package/dist/avm2/natives/xml/parser.d.ts +51 -0
  321. package/dist/avm2/natives/xml/parser.d.ts.map +1 -0
  322. package/dist/avm2/natives/xml/parser.js +357 -0
  323. package/dist/avm2/natives/xml/parser.js.map +1 -0
  324. package/dist/avm2/natives/xml/strings.d.ts +10 -0
  325. package/dist/avm2/natives/xml/strings.d.ts.map +1 -0
  326. package/dist/avm2/natives/xml/strings.js +192 -0
  327. package/dist/avm2/natives/xml/strings.js.map +1 -0
  328. package/dist/avm2/natives/xml/values.d.ts +48 -0
  329. package/dist/avm2/natives/xml/values.d.ts.map +1 -0
  330. package/dist/avm2/natives/xml/values.js +123 -0
  331. package/dist/avm2/natives/xml/values.js.map +1 -0
  332. package/dist/avm2/natives/xml/xml.d.ts +5 -0
  333. package/dist/avm2/natives/xml/xml.d.ts.map +1 -0
  334. package/dist/avm2/natives/xml/xml.js +646 -0
  335. package/dist/avm2/natives/xml/xml.js.map +1 -0
  336. package/dist/avm2/number-strings.d.ts +28 -0
  337. package/dist/avm2/number-strings.d.ts.map +1 -0
  338. package/dist/avm2/number-strings.js +111 -0
  339. package/dist/avm2/number-strings.js.map +1 -0
  340. package/dist/avm2/numbers.d.ts +12 -0
  341. package/dist/avm2/numbers.d.ts.map +1 -0
  342. package/dist/avm2/numbers.js +559 -0
  343. package/dist/avm2/numbers.js.map +1 -0
  344. package/dist/avm2/options.d.ts +105 -0
  345. package/dist/avm2/options.d.ts.map +1 -0
  346. package/dist/avm2/options.js +17 -0
  347. package/dist/avm2/options.js.map +1 -0
  348. package/dist/avm2/player-messages.d.ts +3 -0
  349. package/dist/avm2/player-messages.d.ts.map +1 -0
  350. package/dist/avm2/player-messages.js +551 -0
  351. package/dist/avm2/player-messages.js.map +1 -0
  352. package/dist/avm2/property-cache.d.ts +61 -0
  353. package/dist/avm2/property-cache.d.ts.map +1 -0
  354. package/dist/avm2/property-cache.js +136 -0
  355. package/dist/avm2/property-cache.js.map +1 -0
  356. package/dist/avm2/runtime.d.ts +588 -0
  357. package/dist/avm2/runtime.d.ts.map +1 -0
  358. package/dist/avm2/runtime.js +2645 -0
  359. package/dist/avm2/runtime.js.map +1 -0
  360. package/dist/avm2/traits.d.ts +233 -0
  361. package/dist/avm2/traits.d.ts.map +1 -0
  362. package/dist/avm2/traits.js +510 -0
  363. package/dist/avm2/traits.js.map +1 -0
  364. package/dist/index.d.ts +8 -0
  365. package/dist/index.d.ts.map +1 -0
  366. package/dist/index.js +8 -0
  367. package/dist/index.js.map +1 -0
  368. package/package.json +43 -3
  369. package/src/avm1/activation.ts +114 -0
  370. package/src/avm1/case.ts +257 -0
  371. package/src/avm1/clips.ts +440 -0
  372. package/src/avm1/control.ts +339 -0
  373. package/src/avm1/errors.ts +60 -0
  374. package/src/avm1/functions.ts +271 -0
  375. package/src/avm1/globals/array.ts +676 -0
  376. package/src/avm1/globals/broadcaster.ts +185 -0
  377. package/src/avm1/globals/date.ts +548 -0
  378. package/src/avm1/globals/global.ts +420 -0
  379. package/src/avm1/globals/math.ts +152 -0
  380. package/src/avm1/globals/number.ts +122 -0
  381. package/src/avm1/globals/string.ts +254 -0
  382. package/src/avm1/globals/timers.ts +144 -0
  383. package/src/avm1/host.ts +155 -0
  384. package/src/avm1/index.ts +69 -0
  385. package/src/avm1/inheritance.ts +159 -0
  386. package/src/avm1/numbers.ts +348 -0
  387. package/src/avm1/objects.ts +1080 -0
  388. package/src/avm1/operators.ts +229 -0
  389. package/src/avm1/realm.ts +704 -0
  390. package/src/avm1/runtime.ts +1291 -0
  391. package/src/avm1/scope.ts +482 -0
  392. package/src/avm1/urls.ts +226 -0
  393. package/src/avm1/values.ts +145 -0
  394. package/src/avm2/amf-classes.ts +80 -0
  395. package/src/avm2/amf.ts +913 -0
  396. package/src/avm2/array-conversion.ts +117 -0
  397. package/src/avm2/builtin-library.ts +28 -0
  398. package/src/avm2/cache-fill.ts +124 -0
  399. package/src/avm2/classes.ts +235 -0
  400. package/src/avm2/definitions.ts +93 -0
  401. package/src/avm2/descriptors.ts +137 -0
  402. package/src/avm2/dictionary-keys.ts +345 -0
  403. package/src/avm2/domain-memory.ts +95 -0
  404. package/src/avm2/domain.ts +335 -0
  405. package/src/avm2/dynamic-properties.ts +209 -0
  406. package/src/avm2/enumeration.ts +506 -0
  407. package/src/avm2/errors.ts +54 -0
  408. package/src/avm2/float-library.ts +66 -0
  409. package/src/avm2/float.ts +31 -0
  410. package/src/avm2/hooks.ts +97 -0
  411. package/src/avm2/index.ts +84 -0
  412. package/src/avm2/messages.ts +178 -0
  413. package/src/avm2/method-factories.ts +130 -0
  414. package/src/avm2/modules.ts +120 -0
  415. package/src/avm2/names.ts +292 -0
  416. package/src/avm2/natives/aliases.ts +59 -0
  417. package/src/avm2/natives/array.ts +482 -0
  418. package/src/avm2/natives/bytearray.ts +1474 -0
  419. package/src/avm2/natives/case.ts +98 -0
  420. package/src/avm2/natives/concurrent.ts +268 -0
  421. package/src/avm2/natives/date.ts +678 -0
  422. package/src/avm2/natives/define.ts +176 -0
  423. package/src/avm2/natives/describe.ts +426 -0
  424. package/src/avm2/natives/dictionary.ts +18 -0
  425. package/src/avm2/natives/float-vector.ts +99 -0
  426. package/src/avm2/natives/float.ts +116 -0
  427. package/src/avm2/natives/index.ts +70 -0
  428. package/src/avm2/natives/json.ts +600 -0
  429. package/src/avm2/natives/number.ts +194 -0
  430. package/src/avm2/natives/object.ts +272 -0
  431. package/src/avm2/natives/proxy.ts +98 -0
  432. package/src/avm2/natives/regexp.ts +580 -0
  433. package/src/avm2/natives/shell-workers.ts +474 -0
  434. package/src/avm2/natives/shell.ts +707 -0
  435. package/src/avm2/natives/sort.ts +438 -0
  436. package/src/avm2/natives/string.ts +158 -0
  437. package/src/avm2/natives/sync.ts +964 -0
  438. package/src/avm2/natives/toplevel.ts +163 -0
  439. package/src/avm2/natives/vector-elements.ts +61 -0
  440. package/src/avm2/natives/vector.ts +511 -0
  441. package/src/avm2/natives/xml/access.ts +767 -0
  442. package/src/avm2/natives/xml/build.ts +381 -0
  443. package/src/avm2/natives/xml/chars.ts +127 -0
  444. package/src/avm2/natives/xml/escape.ts +46 -0
  445. package/src/avm2/natives/xml/names.ts +256 -0
  446. package/src/avm2/natives/xml/node.ts +339 -0
  447. package/src/avm2/natives/xml/operators.ts +90 -0
  448. package/src/avm2/natives/xml/parser.ts +414 -0
  449. package/src/avm2/natives/xml/strings.ts +241 -0
  450. package/src/avm2/natives/xml/values.ts +162 -0
  451. package/src/avm2/natives/xml/xml.ts +829 -0
  452. package/src/avm2/number-strings.ts +127 -0
  453. package/src/avm2/numbers.ts +605 -0
  454. package/src/avm2/options.ts +125 -0
  455. package/src/avm2/player-messages.ts +552 -0
  456. package/src/avm2/property-cache.ts +160 -0
  457. package/src/avm2/runtime.ts +3274 -0
  458. package/src/avm2/traits.ts +584 -0
  459. package/src/index.ts +8 -0
@@ -0,0 +1,108 @@
1
+ import type { Held } from "./control.js";
2
+ import type { Host, Target } from "./host.js";
3
+ import type { Avm1Function, Avm1Object, LazyLocals, Property } from "./objects.js";
4
+ import type { Realm } from "./realm.js";
5
+ import type { Scope } from "./scope.js";
6
+ import type { Value } from "./values.js";
7
+ /** A region of a block, the block's own code or a function's body, which gives what it returns. */
8
+ export type Region = (cx: Activation, self?: Value, args?: Value[]) => Value;
9
+ /** What the factory of a SWF's module gives: by block, its regions, its own code first. */
10
+ export type Blocks = Region[][];
11
+ /**
12
+ * A SWF's units (docs/avm1.md, "Units"): where its code goes on outside the
13
+ * home it was compiled within, as V.far asks for them.
14
+ */
15
+ export interface Units {
16
+ /** The SWF's blocks, whose code the units are of too. */
17
+ readonly blocks: Blocks;
18
+ /**
19
+ * The regions of the unit for control at `at` in the SWF, in a region
20
+ * that ends at `end` whose actions' bytes end at `bound`, run as a SWF
21
+ * 5's function if `five`: its own code first, which returns where
22
+ * control goes on, an offset in the SWF, -1 where the region ends, -2
23
+ * where it returns `cx.ret`.
24
+ */
25
+ unit(at: number, end: number, bound: number, five: boolean): Region[];
26
+ }
27
+ /** A function's `arguments`, made as its activation object is first asked for it. */
28
+ export declare const PENDING_Arguments = 1;
29
+ /** A function's `super`, likewise. */
30
+ export declare const PENDING_Super = 2;
31
+ /**
32
+ * What a region runs in: the operand stack, the constant pool, the target
33
+ * and the host. Flash has one operand stack, not one an activation: every
34
+ * activation of a frame's actions shares the frame's, which the player
35
+ * empties between frames, and a function's shares its caller's.
36
+ */
37
+ export declare class Activation implements LazyLocals {
38
+ /** The operand stack, the frame's. */
39
+ st: Value[];
40
+ /** The constant pool the region reads where the compiler cannot tell which: see V.constantPool. */
41
+ pool: Value[];
42
+ /** The clip whose code runs, the target a SetTarget of "" gives back. */
43
+ readonly base: Target;
44
+ host: Host;
45
+ readonly realm: Realm;
46
+ /** The scope chain, searched from here down to `_global`. */
47
+ scope: Scope;
48
+ /** `this`. */
49
+ self: Value;
50
+ /**
51
+ * The target's AVM1 object, the root's where SetTarget found none: a
52
+ * function called by name without an object takes it as `this`.
53
+ */
54
+ clip: Avm1Object;
55
+ /** The block's regions, which DefineFunction makes functions of. */
56
+ code: Region[];
57
+ /** The function running, null in a block: `arguments.callee`, and its callees' caller. */
58
+ callee: Avm1Function | null;
59
+ /** The function that called it, null from a block: `arguments.caller`. */
60
+ caller: Avm1Function | null;
61
+ /** The arguments it was called with. */
62
+ args: Value[];
63
+ /** How far up `this`'s prototypes the function was found, which `super` starts from. */
64
+ depth: number;
65
+ /** The `this` it was called with, which `super` is made of. */
66
+ receiver: Value;
67
+ /** What of `arguments` and `super` its activation object has yet to make (PENDING_ bits). */
68
+ pending: number;
69
+ /** The movie's four global registers. */
70
+ readonly g: Value[];
71
+ /** What its Withs and Trys hold while control stays in their bodies (control.ts), the latest last. */
72
+ held: Held[] | null;
73
+ /** What the region returns where control goes to its exit through a Try (control.ts). */
74
+ ret: Value;
75
+ /**
76
+ * The realm's count of removals as this last looked at its clip, which a
77
+ * call may have removed only where the count moved on; none at first.
78
+ */
79
+ removals: number;
80
+ /** The register a catch just took a value into, -1 for none, and the value, which the region sets. */
81
+ into: number;
82
+ thrown: Value;
83
+ /**
84
+ * The clip timeline actions act on, which SetTarget changes; null where
85
+ * a SetTarget found none, where they do nothing.
86
+ */
87
+ target: Target | null;
88
+ constructor(
89
+ /** The operand stack, the frame's. */
90
+ st: Value[],
91
+ /** The constant pool the region reads where the compiler cannot tell which: see V.constantPool. */
92
+ pool: Value[],
93
+ /** The clip whose code runs, the target a SetTarget of "" gives back. */
94
+ base: Target, host: Host, realm: Realm,
95
+ /** The scope chain, searched from here down to `_global`. */
96
+ scope: Scope,
97
+ /** `this`. */
98
+ self: Value,
99
+ /**
100
+ * The target's AVM1 object, the root's where SetTarget found none: a
101
+ * function called by name without an object takes it as `this`.
102
+ */
103
+ clip: Avm1Object);
104
+ get global(): Avm1Object;
105
+ /** `arguments` or `super`, made on the activation object `o` as it is first asked for. */
106
+ local(o: Avm1Object, name: string, version: number): Property | undefined;
107
+ }
108
+ //# sourceMappingURL=activation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activation.d.ts","sourceRoot":"","sources":["../../src/avm1/activation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ /** A function's `arguments`, made as its activation object is first asked for it. */
2
+ export const PENDING_Arguments = 1;
3
+ /** A function's `super`, likewise. */
4
+ export const PENDING_Super = 2;
5
+ /**
6
+ * What a region runs in: the operand stack, the constant pool, the target
7
+ * and the host. Flash has one operand stack, not one an activation: every
8
+ * activation of a frame's actions shares the frame's, which the player
9
+ * empties between frames, and a function's shares its caller's.
10
+ */
11
+ export class Activation {
12
+ st;
13
+ pool;
14
+ base;
15
+ host;
16
+ realm;
17
+ scope;
18
+ self;
19
+ clip;
20
+ /** The block's regions, which DefineFunction makes functions of. */
21
+ code = [];
22
+ /** The function running, null in a block: `arguments.callee`, and its callees' caller. */
23
+ callee = null;
24
+ /** The function that called it, null from a block: `arguments.caller`. */
25
+ caller = null;
26
+ /** The arguments it was called with. */
27
+ args = NO_ARGS;
28
+ /** How far up `this`'s prototypes the function was found, which `super` starts from. */
29
+ depth = 0;
30
+ /** The `this` it was called with, which `super` is made of. */
31
+ receiver = undefined;
32
+ /** What of `arguments` and `super` its activation object has yet to make (PENDING_ bits). */
33
+ pending = 0;
34
+ /** The movie's four global registers. */
35
+ g;
36
+ /** What its Withs and Trys hold while control stays in their bodies (control.ts), the latest last. */
37
+ held = null;
38
+ /** What the region returns where control goes to its exit through a Try (control.ts). */
39
+ ret = undefined;
40
+ /**
41
+ * The realm's count of removals as this last looked at its clip, which a
42
+ * call may have removed only where the count moved on; none at first.
43
+ */
44
+ removals;
45
+ /** The register a catch just took a value into, -1 for none, and the value, which the region sets. */
46
+ into = -1;
47
+ thrown = undefined;
48
+ /**
49
+ * The clip timeline actions act on, which SetTarget changes; null where
50
+ * a SetTarget found none, where they do nothing.
51
+ */
52
+ target;
53
+ constructor(
54
+ /** The operand stack, the frame's. */
55
+ st,
56
+ /** The constant pool the region reads where the compiler cannot tell which: see V.constantPool. */
57
+ pool,
58
+ /** The clip whose code runs, the target a SetTarget of "" gives back. */
59
+ base, host, realm,
60
+ /** The scope chain, searched from here down to `_global`. */
61
+ scope,
62
+ /** `this`. */
63
+ self,
64
+ /**
65
+ * The target's AVM1 object, the root's where SetTarget found none: a
66
+ * function called by name without an object takes it as `this`.
67
+ */
68
+ clip) {
69
+ this.st = st;
70
+ this.pool = pool;
71
+ this.base = base;
72
+ this.host = host;
73
+ this.realm = realm;
74
+ this.scope = scope;
75
+ this.self = self;
76
+ this.clip = clip;
77
+ this.target = base;
78
+ this.g = realm.registers;
79
+ this.removals = -1;
80
+ }
81
+ get global() {
82
+ return this.realm.global;
83
+ }
84
+ /** `arguments` or `super`, made on the activation object `o` as it is first asked for. */
85
+ local(o, name, version) {
86
+ return this.realm.pendingLocal(this, o, name, version);
87
+ }
88
+ }
89
+ const NO_ARGS = [];
90
+ //# sourceMappingURL=activation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activation.js","sourceRoot":"","sources":["../../src/avm1/activation.ts"],"names":[],"mappings":"AAgCA,qFAAqF;AACrF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AACnC,sCAAsC;AACtC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC;AAE/B;;;;;GAKG;AACH,MAAM,OAAO,UAAU;IAsCZ,EAAE;IAEF,IAAI;IAEF,IAAI;IACN,IAAI;IACF,KAAK;IAEP,KAAK;IAEL,IAAI;IAKJ,IAAI;IApDb,oEAAoE;IACpE,IAAI,GAAa,EAAE,CAAC;IACpB,0FAA0F;IAC1F,MAAM,GAAwB,IAAI,CAAC;IACnC,0EAA0E;IAC1E,MAAM,GAAwB,IAAI,CAAC;IACnC,wCAAwC;IACxC,IAAI,GAAY,OAAO,CAAC;IACxB,wFAAwF;IACxF,KAAK,GAAG,CAAC,CAAC;IACV,+DAA+D;IAC/D,QAAQ,GAAU,SAAS,CAAC;IAC5B,6FAA6F;IAC7F,OAAO,GAAG,CAAC,CAAC;IACZ,yCAAyC;IAChC,CAAC,CAAU;IACpB,sGAAsG;IACtG,IAAI,GAAkB,IAAI,CAAC;IAC3B,yFAAyF;IACzF,GAAG,GAAU,SAAS,CAAC;IACvB;;;OAGG;IACH,QAAQ,CAAS;IACjB,sGAAsG;IACtG,IAAI,GAAG,CAAC,CAAC,CAAC;IACV,MAAM,GAAU,SAAS,CAAC;IAE1B;;;OAGG;IACH,MAAM,CAAgB;IAEtB;IACE,sCAAsC;IAC/B,EAAW;IAClB,mGAAmG;IAC5F,IAAa;IACpB,yEAAyE;IAChE,IAAY,EACd,IAAU,EACR,KAAY;IACrB,6DAA6D;IACtD,KAAY;IACnB,cAAc;IACP,IAAW;IAClB;;;OAGG;IACI,IAAgB;kBAfhB,EAAE;oBAEF,IAAI;oBAEF,IAAI;oBACN,IAAI;qBACF,KAAK;qBAEP,KAAK;oBAEL,IAAI;oBAKJ,IAAI;QAEX,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,0FAA0F;IAC1F,KAAK,CAAC,CAAa,EAAE,IAAY,EAAE,OAAe;QAChD,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;CACF;AAED,MAAM,OAAO,GAAY,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function lowerCase(c: number): number;
2
+ export declare function upperCase(c: number): number;
3
+ //# sourceMappingURL=case.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case.d.ts","sourceRoot":"","sources":["../../src/avm1/case.ts"],"names":[],"mappings":"AAwPA,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAG3C;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAG3C"}
@@ -0,0 +1,250 @@
1
+ // Flash's lower and upper case of a UTF-16 code unit: the lower case AVM1
2
+ // folds names by up to SWF 6, and String's toLowerCase and toUpperCase.
3
+ // An old Unicode's simple mappings, one code unit to one, without
4
+ // JavaScript's later letters (Cherokee, Glagolitic, Coptic, Latin
5
+ // Extended-C and -D...), with İ to i, Georgian capitals to Mkhedruli and
6
+ // U+03A2 to ς, and back, ß and ʼn left as they are. Measured in adl: every
7
+ // code unit through String's toLowerCase and toUpperCase, and each lower
8
+ // case mapping through names.
9
+ /** Runs of mappings: their first code unit, how many, what each adds, and the step between them. */
10
+ const LOWER = [
11
+ [0x0041, 26, 32, 1],
12
+ [0x00c0, 23, 32, 1],
13
+ [0x00d8, 7, 32, 1],
14
+ [0x0100, 24, 1, 2],
15
+ [0x0130, 1, -199, 1],
16
+ [0x0132, 3, 1, 2],
17
+ [0x0139, 8, 1, 2],
18
+ [0x014a, 23, 1, 2],
19
+ [0x0178, 1, -121, 1],
20
+ [0x0179, 3, 1, 2],
21
+ [0x0181, 1, 210, 1],
22
+ [0x0182, 2, 1, 2],
23
+ [0x0186, 1, 206, 1],
24
+ [0x0187, 1, 1, 1],
25
+ [0x0189, 2, 205, 1],
26
+ [0x018b, 1, 1, 1],
27
+ [0x018e, 1, 79, 1],
28
+ [0x018f, 1, 202, 1],
29
+ [0x0190, 1, 203, 1],
30
+ [0x0191, 1, 1, 1],
31
+ [0x0193, 1, 205, 1],
32
+ [0x0194, 1, 207, 1],
33
+ [0x0196, 1, 211, 1],
34
+ [0x0197, 1, 209, 1],
35
+ [0x0198, 1, 1, 1],
36
+ [0x019c, 1, 211, 1],
37
+ [0x019d, 1, 213, 1],
38
+ [0x019f, 1, 214, 1],
39
+ [0x01a0, 3, 1, 2],
40
+ [0x01a6, 1, 218, 1],
41
+ [0x01a7, 1, 1, 1],
42
+ [0x01a9, 1, 218, 1],
43
+ [0x01ac, 1, 1, 1],
44
+ [0x01ae, 1, 218, 1],
45
+ [0x01af, 1, 1, 1],
46
+ [0x01b1, 2, 217, 1],
47
+ [0x01b3, 2, 1, 2],
48
+ [0x01b7, 1, 219, 1],
49
+ [0x01b8, 1, 1, 1],
50
+ [0x01bc, 1, 1, 1],
51
+ [0x01c4, 1, 2, 1],
52
+ [0x01c5, 1, 1, 1],
53
+ [0x01c7, 1, 2, 1],
54
+ [0x01c8, 1, 1, 1],
55
+ [0x01ca, 1, 2, 1],
56
+ [0x01cb, 9, 1, 2],
57
+ [0x01de, 9, 1, 2],
58
+ [0x01f1, 1, 2, 1],
59
+ [0x01f2, 2, 1, 2],
60
+ [0x01f6, 1, -97, 1],
61
+ [0x01f7, 1, -56, 1],
62
+ [0x01f8, 20, 1, 2],
63
+ [0x0222, 9, 1, 2],
64
+ [0x0386, 1, 38, 1],
65
+ [0x0388, 3, 37, 1],
66
+ [0x038c, 1, 64, 1],
67
+ [0x038e, 2, 63, 1],
68
+ [0x0391, 27, 32, 1],
69
+ [0x03d8, 12, 1, 2],
70
+ [0x03f4, 1, -60, 1],
71
+ [0x0400, 16, 80, 1],
72
+ [0x0410, 32, 32, 1],
73
+ [0x0460, 17, 1, 2],
74
+ [0x048a, 27, 1, 2],
75
+ [0x04c1, 2, 1, 2],
76
+ [0x04c7, 1, 1, 1],
77
+ [0x04cb, 1, 1, 1],
78
+ [0x04d0, 21, 1, 2],
79
+ [0x0531, 38, 48, 1],
80
+ [0x10a0, 38, 48, 1],
81
+ [0x1e00, 75, 1, 2],
82
+ [0x1ea0, 45, 1, 2],
83
+ [0x1f08, 8, -8, 1],
84
+ [0x1f18, 6, -8, 1],
85
+ [0x1f28, 8, -8, 1],
86
+ [0x1f38, 8, -8, 1],
87
+ [0x1f48, 6, -8, 1],
88
+ [0x1f59, 4, -8, 2],
89
+ [0x1f68, 8, -8, 1],
90
+ [0x1f88, 8, -8, 1],
91
+ [0x1f98, 8, -8, 1],
92
+ [0x1fa8, 8, -8, 1],
93
+ [0x1fb8, 2, -8, 1],
94
+ [0x1fba, 2, -74, 1],
95
+ [0x1fbc, 1, -9, 1],
96
+ [0x1fc8, 4, -86, 1],
97
+ [0x1fcc, 1, -9, 1],
98
+ [0x1fd8, 2, -8, 1],
99
+ [0x1fda, 2, -100, 1],
100
+ [0x1fe8, 2, -8, 1],
101
+ [0x1fea, 2, -112, 1],
102
+ [0x1fec, 1, -7, 1],
103
+ [0x1ff8, 2, -128, 1],
104
+ [0x1ffa, 2, -126, 1],
105
+ [0x1ffc, 1, -9, 1],
106
+ [0x2126, 1, -7517, 1],
107
+ [0x212a, 1, -8383, 1],
108
+ [0x212b, 1, -8262, 1],
109
+ [0x2160, 16, 16, 1],
110
+ [0x24b6, 26, 26, 1],
111
+ [0xff21, 26, 32, 1],
112
+ ];
113
+ /** The upper case's runs, as the lower case's. */
114
+ const UPPER = [
115
+ [0x0061, 26, -32, 1],
116
+ [0x00e0, 23, -32, 1],
117
+ [0x00f8, 7, -32, 1],
118
+ [0x00ff, 1, 121, 1],
119
+ [0x0101, 24, -1, 2],
120
+ [0x0131, 1, -232, 1],
121
+ [0x0133, 3, -1, 2],
122
+ [0x013a, 8, -1, 2],
123
+ [0x014b, 23, -1, 2],
124
+ [0x017a, 3, -1, 2],
125
+ [0x017f, 1, -300, 1],
126
+ [0x0183, 2, -1, 2],
127
+ [0x0188, 1, -1, 1],
128
+ [0x018c, 1, -1, 1],
129
+ [0x0192, 1, -1, 1],
130
+ [0x0195, 1, 97, 1],
131
+ [0x0199, 1, -1, 1],
132
+ [0x01a1, 3, -1, 2],
133
+ [0x01a8, 1, -1, 1],
134
+ [0x01ad, 1, -1, 1],
135
+ [0x01b0, 1, -1, 1],
136
+ [0x01b4, 2, -1, 2],
137
+ [0x01b9, 1, -1, 1],
138
+ [0x01bd, 1, -1, 1],
139
+ [0x01bf, 1, 56, 1],
140
+ [0x01c5, 1, -1, 1],
141
+ [0x01c6, 1, -2, 1],
142
+ [0x01c8, 1, -1, 1],
143
+ [0x01c9, 1, -2, 1],
144
+ [0x01cb, 1, -1, 1],
145
+ [0x01cc, 1, -2, 1],
146
+ [0x01ce, 8, -1, 2],
147
+ [0x01dd, 1, -79, 1],
148
+ [0x01df, 9, -1, 2],
149
+ [0x01f2, 1, -1, 1],
150
+ [0x01f3, 1, -2, 1],
151
+ [0x01f5, 1, -1, 1],
152
+ [0x01f9, 20, -1, 2],
153
+ [0x0223, 9, -1, 2],
154
+ [0x0253, 1, -210, 1],
155
+ [0x0254, 1, -206, 1],
156
+ [0x0256, 2, -205, 1],
157
+ [0x0259, 1, -202, 1],
158
+ [0x025b, 1, -203, 1],
159
+ [0x0260, 1, -205, 1],
160
+ [0x0263, 1, -207, 1],
161
+ [0x0268, 1, -209, 1],
162
+ [0x0269, 1, -211, 1],
163
+ [0x026f, 1, -211, 1],
164
+ [0x0272, 1, -213, 1],
165
+ [0x0275, 1, -214, 1],
166
+ [0x0280, 1, -218, 1],
167
+ [0x0283, 1, -218, 1],
168
+ [0x0288, 1, -218, 1],
169
+ [0x028a, 2, -217, 1],
170
+ [0x0292, 1, -219, 1],
171
+ [0x0345, 1, 84, 1],
172
+ [0x03ac, 1, -38, 1],
173
+ [0x03ad, 3, -37, 1],
174
+ [0x03b1, 27, -32, 1],
175
+ [0x03cc, 1, -64, 1],
176
+ [0x03cd, 2, -63, 1],
177
+ [0x03d0, 1, -62, 1],
178
+ [0x03d1, 1, -57, 1],
179
+ [0x03d5, 1, -47, 1],
180
+ [0x03d6, 1, -54, 1],
181
+ [0x03d9, 12, -1, 2],
182
+ [0x03f0, 1, -86, 1],
183
+ [0x03f1, 1, -80, 1],
184
+ [0x03f2, 1, -79, 1],
185
+ [0x03f5, 1, -96, 1],
186
+ [0x0430, 32, -32, 1],
187
+ [0x0450, 16, -80, 1],
188
+ [0x0461, 17, -1, 2],
189
+ [0x048b, 27, -1, 2],
190
+ [0x04c2, 2, -1, 2],
191
+ [0x04c8, 1, -1, 1],
192
+ [0x04cc, 1, -1, 1],
193
+ [0x04d1, 21, -1, 2],
194
+ [0x0561, 38, -48, 1],
195
+ [0x1e01, 75, -1, 2],
196
+ [0x1e9b, 1, -59, 1],
197
+ [0x1ea1, 45, -1, 2],
198
+ [0x1f00, 8, 8, 1],
199
+ [0x1f10, 6, 8, 1],
200
+ [0x1f20, 8, 8, 1],
201
+ [0x1f30, 8, 8, 1],
202
+ [0x1f40, 6, 8, 1],
203
+ [0x1f51, 4, 8, 2],
204
+ [0x1f60, 8, 8, 1],
205
+ [0x1f70, 2, 74, 1],
206
+ [0x1f72, 4, 86, 1],
207
+ [0x1f76, 2, 100, 1],
208
+ [0x1f78, 2, 128, 1],
209
+ [0x1f7a, 2, 112, 1],
210
+ [0x1f7c, 2, 126, 1],
211
+ [0x1f80, 8, 8, 1],
212
+ [0x1f90, 8, 8, 1],
213
+ [0x1fa0, 8, 8, 1],
214
+ [0x1fb0, 2, 8, 1],
215
+ [0x1fb3, 1, 9, 1],
216
+ [0x1fbe, 1, -7205, 1],
217
+ [0x1fc3, 1, 9, 1],
218
+ [0x1fd0, 2, 8, 1],
219
+ [0x1fe0, 2, 8, 1],
220
+ [0x1fe5, 1, 7, 1],
221
+ [0x1ff3, 1, 9, 1],
222
+ [0x2170, 16, -16, 1],
223
+ [0x24d0, 26, -26, 1],
224
+ [0xff41, 26, -32, 1],
225
+ ];
226
+ /** A table of every code unit's mapping, made as it is first needed. */
227
+ function table(runs) {
228
+ const t = new Uint16Array(0x10000);
229
+ for (let i = 0; i < t.length; i++) {
230
+ t[i] = i;
231
+ }
232
+ for (const [start, count, delta, step] of runs) {
233
+ for (let i = 0; i < count; i++) {
234
+ const u = start + i * step;
235
+ t[u] = u + delta;
236
+ }
237
+ }
238
+ return t;
239
+ }
240
+ let lower = null;
241
+ let upper = null;
242
+ export function lowerCase(c) {
243
+ lower ??= table(LOWER);
244
+ return lower[c];
245
+ }
246
+ export function upperCase(c) {
247
+ upper ??= table(UPPER);
248
+ return upper[c];
249
+ }
250
+ //# sourceMappingURL=case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"case.js","sourceRoot":"","sources":["../../src/avm1/case.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,wEAAwE;AACxE,kEAAkE;AAClE,kEAAkE;AAClE,yEAAyE;AACzE,0EAA0E;AAC1E,yEAAyE;AACzE,8BAA8B;AAE9B,oGAAoG;AACpG,MAAM,KAAK,GAAuC;IAChD,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACrB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACrB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACrB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;CACpB,CAAC;AAEF,kDAAkD;AAClD,MAAM,KAAK,GAAuC;IAChD,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IACnB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IACrB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;CACrB,CAAC;AAEF,wEAAwE;AACxE,SAAS,KAAK,CAAC,IAAwC;IACrD,MAAM,CAAC,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACX,CAAC;IAED,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;YAC3B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAED,IAAI,KAAK,GAAuB,IAAI,CAAC;AACrC,IAAI,KAAK,GAAuB,IAAI,CAAC;AAErC,MAAM,UAAU,SAAS,CAAC,CAAS;IACjC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;IACvB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,CAAS;IACjC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;IACvB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
@@ -0,0 +1,68 @@
1
+ import type { Activation } from "./activation.js";
2
+ import type { Target } from "./host.js";
3
+ import { type Value } from "./values.js";
4
+ /** The target, or where SetTarget found none, the root: where GotoFrame2 and a function's `this` go. */
5
+ export declare function targetOrRoot(cx: Activation): Target;
6
+ /** The display object a path from `start`'s AVM1 object names, null for none or no display object. */
7
+ export declare function pathTarget(cx: Activation, start: Target, path: string, version: number): Target | null;
8
+ /**
9
+ * SetTarget: the clip `path` names from the code's own clip, that clip
10
+ * for "", none where it names none or the code's clip is gone.
11
+ */
12
+ export declare function setTarget(cx: Activation, path: string, version: number): void;
13
+ /**
14
+ * SetTarget2: as SetTarget of the value as a string, but undefined is the
15
+ * code's own clip up to SWF 6 and none from 7; nothing where that clip is
16
+ * gone.
17
+ */
18
+ export declare function setTarget2(cx: Activation, value: Value, version: number): void;
19
+ /** GetProperty: property `index` of the clip `path` names, undefined for none. */
20
+ export declare function getProperty(cx: Activation, index: Value, path: Value, version: number): Value;
21
+ /** SetProperty: property `index` of the clip `path` names set to `value`. */
22
+ export declare function setProperty(cx: Activation, value: Value, index: Value, path: Value, version: number): void;
23
+ /** GotoFrame: frame `frame` (0 the first) of the target, which stops. */
24
+ export declare function gotoFrame(cx: Activation, frame: number): void;
25
+ /** GotoLabel: the frame of `label`, if the target has it, which stops. */
26
+ export declare function gotoLabel(cx: Activation, label: string): void;
27
+ /** GotoFrame2: as `goto` on the target, or the root where there is none, `bias` frames on. */
28
+ export declare function gotoFrame2(cx: Activation, frame: Value, play: boolean, bias: number, version: number): void;
29
+ /**
30
+ * A goto of `frame` on clip `target`, gotoAndPlay's and gotoAndStop's and
31
+ * GotoFrame2's: the frame `frameOf` names, `bias` frames on, if that is
32
+ * from 1; as a u16, where the timeline clamps it.
33
+ */
34
+ export declare function goto(cx: Activation, target: Target, frame: Value, play: boolean, bias: number, version: number): void;
35
+ /** NextFrame: the target's next frame, if it has one, where it stops. */
36
+ export declare function nextFrame(cx: Activation): void;
37
+ /** PrevFrame: the target's previous frame, if it has one, where it stops. */
38
+ export declare function prevFrame(cx: Activation): void;
39
+ /**
40
+ * WaitForFrame: whether frame `frame` (0 the first) is loaded, which in a
41
+ * SWF the player has whole every frame is, up to Flash's 16000.
42
+ */
43
+ export declare const frameLoaded: (frame: number) => boolean;
44
+ /** WaitForFrame2: as WaitForFrame of the value's frame, 1 the first, read as Ruffle reads it. */
45
+ export declare function frameLoaded2(value: Value, version: number): boolean;
46
+ /** TargetPath: a clip's path, `_level0.a`, undefined for anything else. */
47
+ export declare function targetPathOf(value: Value): Value;
48
+ /** CallFrame: the actions of the frame the value names, on the target or the root, run now. */
49
+ export declare function callFrame(cx: Activation, value: Value, version: number): void;
50
+ /**
51
+ * CloneSprite: the display object `source` names from the target, or the
52
+ * root's where there is none, duplicated as `name` at timeline depth
53
+ * `depth`, which compilers bias as duplicateMovieClip's own depth is.
54
+ */
55
+ export declare function cloneSprite(cx: Activation, depth: Value, name: Value, source: Value, version: number): void;
56
+ /**
57
+ * StartDrag, its operands on the stack: the target, whether to lock the
58
+ * centre, whether to constrain, and if so the bounds' right-to-left
59
+ * bottom, right, top and left. The display object the target names, from
60
+ * the code's target or the root, is dragged; an empty one is that target.
61
+ */
62
+ export declare function startDrag(cx: Activation, version: number): void;
63
+ /**
64
+ * RemoveSprite: the display object `value` names from the target, or the
65
+ * root's, removed; a target it removes gives way to the code's own clip.
66
+ */
67
+ export declare function removeSprite(cx: Activation, value: Value, version: number): void;
68
+ //# sourceMappingURL=clips.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clips.d.ts","sourceRoot":"","sources":["../../src/avm1/clips.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAY,MAAM,WAAW,CAAC;AAKlD,OAAO,EAAiC,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAExE,wGAAwG;AACxG,wBAAgB,YAAY,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,CAOnD;AA2BD,sGAAsG;AACtG,wBAAgB,UAAU,CACxB,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAYf;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAQ7E;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAsB9E;AAsCD,kFAAkF;AAClF,wBAAgB,WAAW,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAQ7F;AAED,6EAA6E;AAC7E,wBAAgB,WAAW,CACzB,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,KAAK,EACX,OAAO,EAAE,MAAM,GACd,IAAI,CAYN;AAuBD,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAE7D;AAED,0EAA0E;AAC1E,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAM7D;AAED,8FAA8F;AAC9F,wBAAgB,UAAU,CACxB,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,IAAI,CAKN;AAiED;;;;GAIG;AACH,wBAAgB,IAAI,CAClB,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,IAAI,CAUN;AAED,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI,CAK9C;AAED,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI,CAK9C;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,UAAW,MAAM,KAAG,OAAyB,CAAC;AAEtE,iGAAiG;AACjG,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAYnE;AAED,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAOhD;AAED,+FAA+F;AAC/F,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAS7E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,UAAU,EACd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,KAAK,EACX,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,MAAM,GACd,IAAI,CAON;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAiB/D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAUhF"}