typescript-to-lua 1.8.2 → 1.10.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 (246) hide show
  1. package/dist/CompilerOptions.d.ts +1 -0
  2. package/dist/CompilerOptions.js +1 -0
  3. package/dist/LuaAST.d.ts +43 -37
  4. package/dist/LuaAST.js +48 -38
  5. package/dist/LuaLib.d.ts +12 -6
  6. package/dist/LuaLib.js +31 -21
  7. package/dist/LuaPrinter.d.ts +1 -0
  8. package/dist/LuaPrinter.js +10 -4
  9. package/dist/lualib/5.0/ArrayConcat.lua +22 -0
  10. package/dist/lualib/{ArrayEntries.lua → 5.0/ArrayEntries.lua} +0 -0
  11. package/dist/lualib/5.0/ArrayEvery.lua +8 -0
  12. package/dist/lualib/5.0/ArrayFilter.lua +11 -0
  13. package/dist/lualib/5.0/ArrayFind.lua +9 -0
  14. package/dist/lualib/5.0/ArrayFindIndex.lua +8 -0
  15. package/dist/lualib/5.0/ArrayFlat.lua +27 -0
  16. package/dist/lualib/5.0/ArrayFlatMap.lua +17 -0
  17. package/dist/lualib/5.0/ArrayForEach.lua +5 -0
  18. package/dist/lualib/5.0/ArrayFrom.lua +29 -0
  19. package/dist/lualib/5.0/ArrayIncludes.lua +19 -0
  20. package/dist/lualib/5.0/ArrayIndexOf.lua +24 -0
  21. package/dist/lualib/{ArrayIsArray.lua → 5.0/ArrayIsArray.lua} +0 -0
  22. package/dist/lualib/5.0/ArrayJoin.lua +10 -0
  23. package/dist/lualib/5.0/ArrayMap.lua +7 -0
  24. package/dist/lualib/5.0/ArrayPush.lua +9 -0
  25. package/dist/lualib/5.0/ArrayPushArray.lua +8 -0
  26. package/dist/lualib/5.0/ArrayReduce.lua +23 -0
  27. package/dist/lualib/5.0/ArrayReduceRight.lua +23 -0
  28. package/dist/lualib/5.0/ArrayReverse.lua +12 -0
  29. package/dist/lualib/5.0/ArraySetLength.lua +12 -0
  30. package/dist/lualib/5.0/ArraySlice.lua +43 -0
  31. package/dist/lualib/5.0/ArraySome.lua +8 -0
  32. package/dist/lualib/{ArraySort.lua → 5.0/ArraySort.lua} +0 -0
  33. package/dist/lualib/5.0/ArraySplice.lua +77 -0
  34. package/dist/lualib/5.0/ArrayToObject.lua +7 -0
  35. package/dist/lualib/5.0/ArrayUnshift.lua +14 -0
  36. package/dist/lualib/{Await.lua → 5.0/Await.lua} +0 -0
  37. package/dist/lualib/{Class.lua → 5.0/Class.lua} +0 -0
  38. package/dist/lualib/{ClassExtends.lua → 5.0/ClassExtends.lua} +0 -0
  39. package/dist/lualib/{CloneDescriptor.lua → 5.0/CloneDescriptor.lua} +0 -0
  40. package/dist/lualib/5.0/CountVarargs.lua +4 -0
  41. package/dist/lualib/5.0/Decorate.lua +36 -0
  42. package/dist/lualib/{DecorateParam.lua → 5.0/DecorateParam.lua} +0 -0
  43. package/dist/lualib/5.0/DelegatedYield.lua +34 -0
  44. package/dist/lualib/{Delete.lua → 5.0/Delete.lua} +0 -0
  45. package/dist/lualib/5.0/Error.lua +85 -0
  46. package/dist/lualib/5.0/FunctionBind.lua +11 -0
  47. package/dist/lualib/5.0/Generator.lua +34 -0
  48. package/dist/lualib/{InstanceOf.lua → 5.0/InstanceOf.lua} +0 -0
  49. package/dist/lualib/{InstanceOfObject.lua → 5.0/InstanceOfObject.lua} +0 -0
  50. package/dist/lualib/5.0/Iterator.lua +40 -0
  51. package/dist/lualib/5.0/LuaIteratorSpread.lua +9 -0
  52. package/dist/lualib/{Map.lua → 5.0/Map.lua} +0 -0
  53. package/dist/lualib/5.0/Match.lua +13 -0
  54. package/dist/lualib/{MathAtan2.lua → 5.0/MathAtan2.lua} +0 -0
  55. package/dist/lualib/5.0/MathModf.lua +10 -0
  56. package/dist/lualib/{MathSign.lua → 5.0/MathSign.lua} +0 -0
  57. package/dist/lualib/5.0/Modulo50.lua +3 -0
  58. package/dist/lualib/5.0/New.lua +5 -0
  59. package/dist/lualib/5.0/Number.lua +26 -0
  60. package/dist/lualib/5.0/NumberIsFinite.lua +3 -0
  61. package/dist/lualib/{NumberIsNaN.lua → 5.0/NumberIsNaN.lua} +0 -0
  62. package/dist/lualib/5.0/NumberToString.lua +47 -0
  63. package/dist/lualib/5.0/ObjectAssign.lua +10 -0
  64. package/dist/lualib/{ObjectDefineProperty.lua → 5.0/ObjectDefineProperty.lua} +0 -0
  65. package/dist/lualib/{ObjectEntries.lua → 5.0/ObjectEntries.lua} +0 -0
  66. package/dist/lualib/{ObjectFromEntries.lua → 5.0/ObjectFromEntries.lua} +0 -0
  67. package/dist/lualib/{ObjectGetOwnPropertyDescriptor.lua → 5.0/ObjectGetOwnPropertyDescriptor.lua} +0 -0
  68. package/dist/lualib/{ObjectGetOwnPropertyDescriptors.lua → 5.0/ObjectGetOwnPropertyDescriptors.lua} +0 -0
  69. package/dist/lualib/{ObjectKeys.lua → 5.0/ObjectKeys.lua} +0 -0
  70. package/dist/lualib/{ObjectRest.lua → 5.0/ObjectRest.lua} +0 -0
  71. package/dist/lualib/{ObjectValues.lua → 5.0/ObjectValues.lua} +0 -0
  72. package/dist/lualib/5.0/ParseFloat.lua +18 -0
  73. package/dist/lualib/5.0/ParseInt.lua +49 -0
  74. package/dist/lualib/5.0/Promise.lua +176 -0
  75. package/dist/lualib/{PromiseAll.lua → 5.0/PromiseAll.lua} +0 -0
  76. package/dist/lualib/{PromiseAllSettled.lua → 5.0/PromiseAllSettled.lua} +0 -0
  77. package/dist/lualib/5.0/PromiseAny.lua +41 -0
  78. package/dist/lualib/5.0/PromiseRace.lua +28 -0
  79. package/dist/lualib/{Set.lua → 5.0/Set.lua} +0 -0
  80. package/dist/lualib/{SetDescriptor.lua → 5.0/SetDescriptor.lua} +0 -0
  81. package/dist/lualib/5.0/SourceMapTraceBack.lua +56 -0
  82. package/dist/lualib/5.0/SparseArrayNew.lua +5 -0
  83. package/dist/lualib/5.0/SparseArrayPush.lua +9 -0
  84. package/dist/lualib/5.0/SparseArraySpread.lua +3 -0
  85. package/dist/lualib/5.0/Spread.lua +15 -0
  86. package/dist/lualib/5.0/StringAccess.lua +5 -0
  87. package/dist/lualib/{StringCharAt.lua → 5.0/StringCharAt.lua} +0 -0
  88. package/dist/lualib/{StringCharCodeAt.lua → 5.0/StringCharCodeAt.lua} +0 -0
  89. package/dist/lualib/5.0/StringEndsWith.lua +10 -0
  90. package/dist/lualib/{StringIncludes.lua → 5.0/StringIncludes.lua} +0 -0
  91. package/dist/lualib/5.0/StringPadEnd.lua +26 -0
  92. package/dist/lualib/5.0/StringPadStart.lua +26 -0
  93. package/dist/lualib/{StringReplace.lua → 5.0/StringReplace.lua} +0 -0
  94. package/dist/lualib/5.0/StringReplaceAll.lua +42 -0
  95. package/dist/lualib/{StringSlice.lua → 5.0/StringSlice.lua} +0 -0
  96. package/dist/lualib/5.0/StringSplit.lua +36 -0
  97. package/dist/lualib/5.0/StringStartsWith.lua +10 -0
  98. package/dist/lualib/{StringSubstr.lua → 5.0/StringSubstr.lua} +0 -0
  99. package/dist/lualib/{StringSubstring.lua → 5.0/StringSubstring.lua} +0 -0
  100. package/dist/lualib/{StringTrim.lua → 5.0/StringTrim.lua} +0 -0
  101. package/dist/lualib/{StringTrimEnd.lua → 5.0/StringTrimEnd.lua} +0 -0
  102. package/dist/lualib/{StringTrimStart.lua → 5.0/StringTrimStart.lua} +0 -0
  103. package/dist/lualib/{Symbol.lua → 5.0/Symbol.lua} +0 -0
  104. package/dist/lualib/{SymbolRegistry.lua → 5.0/SymbolRegistry.lua} +0 -0
  105. package/dist/lualib/{TypeOf.lua → 5.0/TypeOf.lua} +0 -0
  106. package/dist/lualib/5.0/Unpack.lua +1 -0
  107. package/dist/lualib/{WeakMap.lua → 5.0/WeakMap.lua} +0 -0
  108. package/dist/lualib/{WeakSet.lua → 5.0/WeakSet.lua} +0 -0
  109. package/dist/lualib/5.0/lualib_bundle.lua +2574 -0
  110. package/dist/lualib/5.0/lualib_module_info.json +672 -0
  111. package/dist/lualib/{ArrayConcat.lua → universal/ArrayConcat.lua} +0 -0
  112. package/dist/lualib/universal/ArrayEntries.lua +13 -0
  113. package/dist/lualib/{ArrayEvery.lua → universal/ArrayEvery.lua} +0 -0
  114. package/dist/lualib/{ArrayFilter.lua → universal/ArrayFilter.lua} +0 -0
  115. package/dist/lualib/{ArrayFind.lua → universal/ArrayFind.lua} +0 -0
  116. package/dist/lualib/{ArrayFindIndex.lua → universal/ArrayFindIndex.lua} +0 -0
  117. package/dist/lualib/{ArrayFlat.lua → universal/ArrayFlat.lua} +0 -0
  118. package/dist/lualib/{ArrayFlatMap.lua → universal/ArrayFlatMap.lua} +0 -0
  119. package/dist/lualib/{ArrayForEach.lua → universal/ArrayForEach.lua} +0 -0
  120. package/dist/lualib/{ArrayFrom.lua → universal/ArrayFrom.lua} +0 -0
  121. package/dist/lualib/{ArrayIncludes.lua → universal/ArrayIncludes.lua} +0 -0
  122. package/dist/lualib/{ArrayIndexOf.lua → universal/ArrayIndexOf.lua} +0 -0
  123. package/dist/lualib/universal/ArrayIsArray.lua +3 -0
  124. package/dist/lualib/{ArrayJoin.lua → universal/ArrayJoin.lua} +0 -0
  125. package/dist/lualib/{ArrayMap.lua → universal/ArrayMap.lua} +0 -0
  126. package/dist/lualib/{ArrayPush.lua → universal/ArrayPush.lua} +0 -0
  127. package/dist/lualib/{ArrayPushArray.lua → universal/ArrayPushArray.lua} +0 -0
  128. package/dist/lualib/{ArrayReduce.lua → universal/ArrayReduce.lua} +1 -1
  129. package/dist/lualib/{ArrayReduceRight.lua → universal/ArrayReduceRight.lua} +1 -1
  130. package/dist/lualib/{ArrayReverse.lua → universal/ArrayReverse.lua} +0 -0
  131. package/dist/lualib/{ArraySetLength.lua → universal/ArraySetLength.lua} +0 -0
  132. package/dist/lualib/{ArraySlice.lua → universal/ArraySlice.lua} +0 -0
  133. package/dist/lualib/{ArraySome.lua → universal/ArraySome.lua} +0 -0
  134. package/dist/lualib/universal/ArraySort.lua +11 -0
  135. package/dist/lualib/{ArraySplice.lua → universal/ArraySplice.lua} +1 -1
  136. package/dist/lualib/{ArrayToObject.lua → universal/ArrayToObject.lua} +0 -0
  137. package/dist/lualib/{ArrayUnshift.lua → universal/ArrayUnshift.lua} +0 -0
  138. package/dist/lualib/universal/Await.lua +54 -0
  139. package/dist/lualib/universal/Class.lua +6 -0
  140. package/dist/lualib/universal/ClassExtends.lua +24 -0
  141. package/dist/lualib/universal/CloneDescriptor.lua +28 -0
  142. package/dist/lualib/universal/CountVarargs.lua +3 -0
  143. package/dist/lualib/{Decorate.lua → universal/Decorate.lua} +0 -0
  144. package/dist/lualib/universal/DecorateParam.lua +3 -0
  145. package/dist/lualib/{DelegatedYield.lua → universal/DelegatedYield.lua} +0 -0
  146. package/dist/lualib/universal/Delete.lua +19 -0
  147. package/dist/lualib/{Error.lua → universal/Error.lua} +7 -2
  148. package/dist/lualib/{FunctionBind.lua → universal/FunctionBind.lua} +0 -0
  149. package/dist/lualib/{Generator.lua → universal/Generator.lua} +2 -9
  150. package/dist/lualib/universal/InstanceOf.lua +18 -0
  151. package/dist/lualib/universal/InstanceOfObject.lua +4 -0
  152. package/dist/lualib/{Iterator.lua → universal/Iterator.lua} +0 -0
  153. package/dist/lualib/{LuaIteratorSpread.lua → universal/LuaIteratorSpread.lua} +0 -0
  154. package/dist/lualib/universal/Map.lua +140 -0
  155. package/dist/lualib/universal/Match.lua +1 -0
  156. package/dist/lualib/universal/MathAtan2.lua +1 -0
  157. package/dist/lualib/universal/MathModf.lua +1 -0
  158. package/dist/lualib/universal/MathSign.lua +8 -0
  159. package/dist/lualib/universal/Modulo50.lua +3 -0
  160. package/dist/lualib/{New.lua → universal/New.lua} +0 -0
  161. package/dist/lualib/{Number.lua → universal/Number.lua} +0 -0
  162. package/dist/lualib/{NumberIsFinite.lua → universal/NumberIsFinite.lua} +0 -0
  163. package/dist/lualib/universal/NumberIsNaN.lua +3 -0
  164. package/dist/lualib/{NumberToString.lua → universal/NumberToString.lua} +1 -1
  165. package/dist/lualib/{ObjectAssign.lua → universal/ObjectAssign.lua} +0 -0
  166. package/dist/lualib/universal/ObjectDefineProperty.lua +59 -0
  167. package/dist/lualib/universal/ObjectEntries.lua +9 -0
  168. package/dist/lualib/universal/ObjectFromEntries.lua +20 -0
  169. package/dist/lualib/universal/ObjectGetOwnPropertyDescriptor.lua +10 -0
  170. package/dist/lualib/universal/ObjectGetOwnPropertyDescriptors.lua +7 -0
  171. package/dist/lualib/universal/ObjectKeys.lua +9 -0
  172. package/dist/lualib/universal/ObjectRest.lua +9 -0
  173. package/dist/lualib/universal/ObjectValues.lua +9 -0
  174. package/dist/lualib/{ParseFloat.lua → universal/ParseFloat.lua} +2 -2
  175. package/dist/lualib/{ParseInt.lua → universal/ParseInt.lua} +7 -7
  176. package/dist/lualib/{Promise.lua → universal/Promise.lua} +0 -0
  177. package/dist/lualib/universal/PromiseAll.lua +44 -0
  178. package/dist/lualib/universal/PromiseAllSettled.lua +48 -0
  179. package/dist/lualib/{PromiseAny.lua → universal/PromiseAny.lua} +0 -0
  180. package/dist/lualib/{PromiseRace.lua → universal/PromiseRace.lua} +0 -0
  181. package/dist/lualib/universal/Set.lua +130 -0
  182. package/dist/lualib/universal/SetDescriptor.lua +79 -0
  183. package/dist/lualib/{SourceMapTraceBack.lua → universal/SourceMapTraceBack.lua} +3 -1
  184. package/dist/lualib/{SparseArrayNew.lua → universal/SparseArrayNew.lua} +1 -1
  185. package/dist/lualib/{SparseArrayPush.lua → universal/SparseArrayPush.lua} +1 -1
  186. package/dist/lualib/{SparseArraySpread.lua → universal/SparseArraySpread.lua} +0 -0
  187. package/dist/lualib/{Spread.lua → universal/Spread.lua} +0 -0
  188. package/dist/lualib/{StringAccess.lua → universal/StringAccess.lua} +0 -0
  189. package/dist/lualib/universal/StringCharAt.lua +9 -0
  190. package/dist/lualib/universal/StringCharCodeAt.lua +13 -0
  191. package/dist/lualib/{StringEndsWith.lua → universal/StringEndsWith.lua} +0 -0
  192. package/dist/lualib/universal/StringIncludes.lua +9 -0
  193. package/dist/lualib/{StringPadEnd.lua → universal/StringPadEnd.lua} +0 -0
  194. package/dist/lualib/{StringPadStart.lua → universal/StringPadStart.lua} +0 -0
  195. package/dist/lualib/universal/StringReplace.lua +20 -0
  196. package/dist/lualib/{StringReplaceAll.lua → universal/StringReplaceAll.lua} +0 -0
  197. package/dist/lualib/universal/StringSlice.lua +15 -0
  198. package/dist/lualib/{StringSplit.lua → universal/StringSplit.lua} +0 -0
  199. package/dist/lualib/{StringStartsWith.lua → universal/StringStartsWith.lua} +0 -0
  200. package/dist/lualib/universal/StringSubstr.lua +15 -0
  201. package/dist/lualib/universal/StringSubstring.lua +17 -0
  202. package/dist/lualib/universal/StringTrim.lua +4 -0
  203. package/dist/lualib/universal/StringTrimEnd.lua +4 -0
  204. package/dist/lualib/universal/StringTrimStart.lua +4 -0
  205. package/dist/lualib/universal/Symbol.lua +15 -0
  206. package/dist/lualib/universal/SymbolRegistry.lua +17 -0
  207. package/dist/lualib/universal/TypeOf.lua +10 -0
  208. package/dist/lualib/{Unpack.lua → universal/Unpack.lua} +0 -0
  209. package/dist/lualib/universal/WeakMap.lua +45 -0
  210. package/dist/lualib/universal/WeakSet.lua +41 -0
  211. package/dist/lualib/{lualib_bundle.lua → universal/lualib_bundle.lua} +53 -37
  212. package/dist/lualib/{lualib_module_info.json → universal/lualib_module_info.json} +49 -4
  213. package/dist/lualib-build/plugin.js +12 -2
  214. package/dist/transformation/builtins/array.d.ts +1 -1
  215. package/dist/transformation/builtins/array.js +12 -2
  216. package/dist/transformation/builtins/function.js +4 -2
  217. package/dist/transformation/builtins/index.js +11 -3
  218. package/dist/transformation/builtins/string.d.ts +1 -1
  219. package/dist/transformation/builtins/string.js +8 -1
  220. package/dist/transformation/utils/diagnostics.d.ts +5 -4
  221. package/dist/transformation/utils/diagnostics.js +2 -1
  222. package/dist/transformation/utils/lua-ast.js +3 -1
  223. package/dist/transformation/utils/typescript/index.js +2 -2
  224. package/dist/transformation/visitors/access.js +11 -0
  225. package/dist/transformation/visitors/binary-expression/bit.js +4 -2
  226. package/dist/transformation/visitors/binary-expression/index.js +4 -0
  227. package/dist/transformation/visitors/break-continue.js +4 -2
  228. package/dist/transformation/visitors/class/index.js +9 -4
  229. package/dist/transformation/visitors/class/members/fields.js +6 -2
  230. package/dist/transformation/visitors/class/members/method.js +4 -2
  231. package/dist/transformation/visitors/conditional.d.ts +1 -0
  232. package/dist/transformation/visitors/conditional.js +12 -1
  233. package/dist/transformation/visitors/errors.js +4 -2
  234. package/dist/transformation/visitors/function.js +2 -1
  235. package/dist/transformation/visitors/identifier.js +4 -1
  236. package/dist/transformation/visitors/language-extensions/operators.js +2 -1
  237. package/dist/transformation/visitors/literal.js +12 -4
  238. package/dist/transformation/visitors/loops/do-while.js +5 -0
  239. package/dist/transformation/visitors/modules/export.js +1 -1
  240. package/dist/transformation/visitors/spread.js +4 -1
  241. package/dist/transformation/visitors/typescript.js +1 -0
  242. package/dist/transpilation/bundle.js +15 -6
  243. package/dist/transpilation/resolve.js +3 -3
  244. package/dist/transpilation/transpiler.js +3 -1
  245. package/package.json +18 -18
  246. package/language-extensions/index.d.ts +0 -676
@@ -0,0 +1,19 @@
1
+ local function __TS__ArrayIncludes(self, searchElement, fromIndex)
2
+ if fromIndex == nil then
3
+ fromIndex = 0
4
+ end
5
+ local len = table.getn(self)
6
+ local k = fromIndex
7
+ if fromIndex < 0 then
8
+ k = len + fromIndex
9
+ end
10
+ if k < 0 then
11
+ k = 0
12
+ end
13
+ for i = k + 1, len do
14
+ if self[i] == searchElement then
15
+ return true
16
+ end
17
+ end
18
+ return false
19
+ end
@@ -0,0 +1,24 @@
1
+ local function __TS__ArrayIndexOf(self, searchElement, fromIndex)
2
+ if fromIndex == nil then
3
+ fromIndex = 0
4
+ end
5
+ local len = table.getn(self)
6
+ if len == 0 then
7
+ return -1
8
+ end
9
+ if fromIndex >= len then
10
+ return -1
11
+ end
12
+ if fromIndex < 0 then
13
+ fromIndex = len + fromIndex
14
+ if fromIndex < 0 then
15
+ fromIndex = 0
16
+ end
17
+ end
18
+ for i = fromIndex + 1, len do
19
+ if self[i] == searchElement then
20
+ return i - 1
21
+ end
22
+ end
23
+ return -1
24
+ end
@@ -0,0 +1,10 @@
1
+ local function __TS__ArrayJoin(self, separator)
2
+ if separator == nil then
3
+ separator = ","
4
+ end
5
+ local parts = {}
6
+ for i = 1, table.getn(self) do
7
+ parts[i] = tostring(self[i])
8
+ end
9
+ return table.concat(parts, separator)
10
+ end
@@ -0,0 +1,7 @@
1
+ local function __TS__ArrayMap(self, callbackfn, thisArg)
2
+ local result = {}
3
+ for i = 1, table.getn(self) do
4
+ result[i] = callbackfn(thisArg, self[i], i - 1, self)
5
+ end
6
+ return result
7
+ end
@@ -0,0 +1,9 @@
1
+ local function __TS__ArrayPush(self, ...)
2
+ local items = arg
3
+ local len = table.getn(self)
4
+ for i = 1, table.getn(items) do
5
+ len = len + 1
6
+ self[len] = items[i]
7
+ end
8
+ return len
9
+ end
@@ -0,0 +1,8 @@
1
+ local function __TS__ArrayPushArray(self, items)
2
+ local len = table.getn(self)
3
+ for i = 1, table.getn(items) do
4
+ len = len + 1
5
+ self[len] = items[i]
6
+ end
7
+ return len
8
+ end
@@ -0,0 +1,23 @@
1
+ local function __TS__ArrayReduce(self, callbackFn, ...)
2
+ local len = table.getn(self)
3
+ local k = 0
4
+ local accumulator = nil
5
+ if __TS__CountVarargs(unpack(arg)) ~= 0 then
6
+ accumulator = unpack(arg)
7
+ elseif len > 0 then
8
+ accumulator = self[1]
9
+ k = 1
10
+ else
11
+ error("Reduce of empty array with no initial value", 0)
12
+ end
13
+ for i = k + 1, len do
14
+ accumulator = callbackFn(
15
+ nil,
16
+ accumulator,
17
+ self[i],
18
+ i - 1,
19
+ self
20
+ )
21
+ end
22
+ return accumulator
23
+ end
@@ -0,0 +1,23 @@
1
+ local function __TS__ArrayReduceRight(self, callbackFn, ...)
2
+ local len = table.getn(self)
3
+ local k = len - 1
4
+ local accumulator = nil
5
+ if __TS__CountVarargs(unpack(arg)) ~= 0 then
6
+ accumulator = unpack(arg)
7
+ elseif len > 0 then
8
+ accumulator = self[k + 1]
9
+ k = k - 1
10
+ else
11
+ error("Reduce of empty array with no initial value", 0)
12
+ end
13
+ for i = k + 1, 1, -1 do
14
+ accumulator = callbackFn(
15
+ nil,
16
+ accumulator,
17
+ self[i],
18
+ i - 1,
19
+ self
20
+ )
21
+ end
22
+ return accumulator
23
+ end
@@ -0,0 +1,12 @@
1
+ local function __TS__ArrayReverse(self)
2
+ local i = 1
3
+ local j = table.getn(self)
4
+ while i < j do
5
+ local temp = self[j]
6
+ self[j] = self[i]
7
+ self[i] = temp
8
+ i = i + 1
9
+ j = j - 1
10
+ end
11
+ return self
12
+ end
@@ -0,0 +1,12 @@
1
+ local function __TS__ArraySetLength(self, length)
2
+ if length < 0 or length ~= length or length == 1 / 0 or math.floor(length) ~= length then
3
+ error(
4
+ "invalid array length: " .. tostring(length),
5
+ 0
6
+ )
7
+ end
8
+ for i = length + 1, table.getn(self) do
9
+ self[i] = nil
10
+ end
11
+ return length
12
+ end
@@ -0,0 +1,43 @@
1
+ local function __TS__ArraySlice(self, first, last)
2
+ local len = table.getn(self)
3
+ local ____first_0 = first
4
+ if ____first_0 == nil then
5
+ ____first_0 = 0
6
+ end
7
+ first = ____first_0
8
+ if first < 0 then
9
+ first = len + first
10
+ if first < 0 then
11
+ first = 0
12
+ end
13
+ else
14
+ if first > len then
15
+ first = len
16
+ end
17
+ end
18
+ local ____last_1 = last
19
+ if ____last_1 == nil then
20
+ ____last_1 = len
21
+ end
22
+ last = ____last_1
23
+ if last < 0 then
24
+ last = len + last
25
+ if last < 0 then
26
+ last = 0
27
+ end
28
+ else
29
+ if last > len then
30
+ last = len
31
+ end
32
+ end
33
+ local out = {}
34
+ first = first + 1
35
+ last = last + 1
36
+ local n = 1
37
+ while first < last do
38
+ out[n] = self[first]
39
+ first = first + 1
40
+ n = n + 1
41
+ end
42
+ return out
43
+ end
@@ -0,0 +1,8 @@
1
+ local function __TS__ArraySome(self, callbackfn, thisArg)
2
+ for i = 1, table.getn(self) do
3
+ if callbackfn(thisArg, self[i], i - 1, self) then
4
+ return true
5
+ end
6
+ end
7
+ return false
8
+ end
File without changes
@@ -0,0 +1,77 @@
1
+ local function __TS__ArraySplice(self, ...)
2
+ local args = arg
3
+ local len = table.getn(self)
4
+ local actualArgumentCount = __TS__CountVarargs(unpack(arg))
5
+ local start = args[1]
6
+ local deleteCount = args[2]
7
+ if start < 0 then
8
+ start = len + start
9
+ if start < 0 then
10
+ start = 0
11
+ end
12
+ elseif start > len then
13
+ start = len
14
+ end
15
+ local itemCount = actualArgumentCount - 2
16
+ if itemCount < 0 then
17
+ itemCount = 0
18
+ end
19
+ local actualDeleteCount
20
+ if actualArgumentCount == 0 then
21
+ actualDeleteCount = 0
22
+ elseif actualArgumentCount == 1 then
23
+ actualDeleteCount = len - start
24
+ else
25
+ local ____deleteCount_0 = deleteCount
26
+ if ____deleteCount_0 == nil then
27
+ ____deleteCount_0 = 0
28
+ end
29
+ actualDeleteCount = ____deleteCount_0
30
+ if actualDeleteCount < 0 then
31
+ actualDeleteCount = 0
32
+ end
33
+ if actualDeleteCount > len - start then
34
+ actualDeleteCount = len - start
35
+ end
36
+ end
37
+ local out = {}
38
+ for k = 1, actualDeleteCount do
39
+ local from = start + k
40
+ if self[from] ~= nil then
41
+ out[k] = self[from]
42
+ end
43
+ end
44
+ if itemCount < actualDeleteCount then
45
+ for k = start + 1, len - actualDeleteCount do
46
+ local from = k + actualDeleteCount
47
+ local to = k + itemCount
48
+ if self[from] then
49
+ self[to] = self[from]
50
+ else
51
+ self[to] = nil
52
+ end
53
+ end
54
+ for k = len - actualDeleteCount + itemCount + 1, len do
55
+ self[k] = nil
56
+ end
57
+ elseif itemCount > actualDeleteCount then
58
+ for k = len - actualDeleteCount, start + 1, -1 do
59
+ local from = k + actualDeleteCount
60
+ local to = k + itemCount
61
+ if self[from] then
62
+ self[to] = self[from]
63
+ else
64
+ self[to] = nil
65
+ end
66
+ end
67
+ end
68
+ local j = start + 1
69
+ for i = 3, actualArgumentCount do
70
+ self[j] = args[i]
71
+ j = j + 1
72
+ end
73
+ for k = table.getn(self), len - actualDeleteCount + itemCount + 1, -1 do
74
+ self[k] = nil
75
+ end
76
+ return out
77
+ end
@@ -0,0 +1,7 @@
1
+ local function __TS__ArrayToObject(self)
2
+ local object = {}
3
+ for i = 1, table.getn(self) do
4
+ object[i - 1] = self[i]
5
+ end
6
+ return object
7
+ end
@@ -0,0 +1,14 @@
1
+ local function __TS__ArrayUnshift(self, ...)
2
+ local items = arg
3
+ local numItemsToInsert = table.getn(items)
4
+ if numItemsToInsert == 0 then
5
+ return table.getn(self)
6
+ end
7
+ for i = table.getn(self), 1, -1 do
8
+ self[i + numItemsToInsert] = self[i]
9
+ end
10
+ for i = 1, numItemsToInsert do
11
+ self[i] = items[i]
12
+ end
13
+ return table.getn(self)
14
+ end
File without changes
File without changes
@@ -0,0 +1,4 @@
1
+ local function __TS__CountVarargs(...)
2
+ local args = arg
3
+ return table.getn(args)
4
+ end
@@ -0,0 +1,36 @@
1
+ local function __TS__Decorate(decorators, target, key, desc)
2
+ local result = target
3
+ do
4
+ local i = table.getn(decorators)
5
+ while i >= 0 do
6
+ local decorator = decorators[i + 1]
7
+ if decorator then
8
+ local oldResult = result
9
+ if key == nil then
10
+ result = decorator(nil, result)
11
+ elseif desc == true then
12
+ local value = rawget(target, key)
13
+ local descriptor = __TS__ObjectGetOwnPropertyDescriptor(target, key) or ({configurable = true, writable = true, value = value})
14
+ local desc = decorator(nil, target, key, descriptor) or descriptor
15
+ local isSimpleValue = desc.configurable == true and desc.writable == true and not desc.get and not desc.set
16
+ if isSimpleValue then
17
+ rawset(target, key, desc.value)
18
+ else
19
+ __TS__SetDescriptor(
20
+ target,
21
+ key,
22
+ __TS__ObjectAssign({}, descriptor, desc)
23
+ )
24
+ end
25
+ elseif desc == false then
26
+ result = decorator(nil, target, key, desc)
27
+ else
28
+ result = decorator(nil, target, key)
29
+ end
30
+ result = result or oldResult
31
+ end
32
+ i = i - 1
33
+ end
34
+ end
35
+ return result
36
+ end
@@ -0,0 +1,34 @@
1
+ local function __TS__DelegatedYield(iterable)
2
+ if type(iterable) == "string" then
3
+ for index = 0, string.len(iterable) - 1 do
4
+ coroutine.yield(__TS__StringAccess(iterable, index))
5
+ end
6
+ elseif iterable.____coroutine ~= nil then
7
+ local co = iterable.____coroutine
8
+ while true do
9
+ local status, value = coroutine.resume(co)
10
+ if not status then
11
+ error(value, 0)
12
+ end
13
+ if coroutine.status(co) == "dead" then
14
+ return value
15
+ else
16
+ coroutine.yield(value)
17
+ end
18
+ end
19
+ elseif iterable[Symbol.iterator] then
20
+ local iterator = iterable[Symbol.iterator](iterable)
21
+ while true do
22
+ local result = iterator:next()
23
+ if result.done then
24
+ return result.value
25
+ else
26
+ coroutine.yield(result.value)
27
+ end
28
+ end
29
+ else
30
+ for ____, value in ipairs(iterable) do
31
+ coroutine.yield(value)
32
+ end
33
+ end
34
+ end
File without changes
@@ -0,0 +1,85 @@
1
+ local Error, RangeError, ReferenceError, SyntaxError, TypeError, URIError
2
+ do
3
+ local function getErrorStack(self, constructor)
4
+ local level = 1
5
+ while true do
6
+ local info = debug.getinfo(level, "f")
7
+ level = level + 1
8
+ if not info then
9
+ level = 1
10
+ break
11
+ elseif info.func == constructor then
12
+ break
13
+ end
14
+ end
15
+ if __TS__StringIncludes(_VERSION, "Lua 5.0") then
16
+ return debug.traceback(("[Level " .. tostring(level)) .. "]")
17
+ else
18
+ return debug.traceback(nil, level)
19
+ end
20
+ end
21
+ local function wrapErrorToString(self, getDescription)
22
+ return function(self)
23
+ local description = getDescription(self)
24
+ local caller = debug.getinfo(3, "f")
25
+ local isClassicLua = __TS__StringIncludes(_VERSION, "Lua 5.0") or _VERSION == "Lua 5.1"
26
+ if isClassicLua or caller and caller.func ~= error then
27
+ return description
28
+ else
29
+ return (tostring(description) .. "\n") .. self.stack
30
+ end
31
+ end
32
+ end
33
+ local function initErrorClass(self, Type, name)
34
+ Type.name = name
35
+ return setmetatable(
36
+ Type,
37
+ {__call = function(____, _self, message) return __TS__New(Type, message) end}
38
+ )
39
+ end
40
+ local ____initErrorClass_2 = initErrorClass
41
+ local ____class_0 = __TS__Class()
42
+ ____class_0.name = ""
43
+ function ____class_0.prototype.____constructor(self, message)
44
+ if message == nil then
45
+ message = ""
46
+ end
47
+ self.message = message
48
+ self.name = "Error"
49
+ self.stack = getErrorStack(nil, self.constructor.new)
50
+ local metatable = getmetatable(self)
51
+ if not metatable.__errorToStringPatched then
52
+ metatable.__errorToStringPatched = true
53
+ metatable.__tostring = wrapErrorToString(nil, metatable.__tostring)
54
+ end
55
+ end
56
+ function ____class_0.prototype.__tostring(self)
57
+ local ____temp_1
58
+ if self.message ~= "" then
59
+ ____temp_1 = (self.name .. ": ") .. self.message
60
+ else
61
+ ____temp_1 = self.name
62
+ end
63
+ return ____temp_1
64
+ end
65
+ Error = ____initErrorClass_2(nil, ____class_0, "Error")
66
+ local function createErrorClass(self, name)
67
+ local ____initErrorClass_4 = initErrorClass
68
+ local ____class_3 = __TS__Class()
69
+ ____class_3.name = ____class_3.name
70
+ __TS__ClassExtends(____class_3, Error)
71
+ function ____class_3.prototype.____constructor(self, ...)
72
+ ____class_3.____super.prototype.____constructor(
73
+ self,
74
+ unpack(arg)
75
+ )
76
+ self.name = name
77
+ end
78
+ return ____initErrorClass_4(nil, ____class_3, name)
79
+ end
80
+ RangeError = createErrorClass(nil, "RangeError")
81
+ ReferenceError = createErrorClass(nil, "ReferenceError")
82
+ SyntaxError = createErrorClass(nil, "SyntaxError")
83
+ TypeError = createErrorClass(nil, "TypeError")
84
+ URIError = createErrorClass(nil, "URIError")
85
+ end
@@ -0,0 +1,11 @@
1
+ local function __TS__FunctionBind(fn, ...)
2
+ local boundArgs = arg
3
+ return function(____, ...)
4
+ local args = arg
5
+ __TS__ArrayUnshift(
6
+ args,
7
+ unpack(boundArgs)
8
+ )
9
+ return fn(unpack(args))
10
+ end
11
+ end
@@ -0,0 +1,34 @@
1
+ local __TS__Generator
2
+ do
3
+ local function generatorIterator(self)
4
+ return self
5
+ end
6
+ local function generatorNext(self, ...)
7
+ local co = self.____coroutine
8
+ if coroutine.status(co) == "dead" then
9
+ return {done = true}
10
+ end
11
+ local status, value = coroutine.resume(
12
+ co,
13
+ unpack(arg)
14
+ )
15
+ if not status then
16
+ error(value, 0)
17
+ end
18
+ return {
19
+ value = value,
20
+ done = coroutine.status(co) == "dead"
21
+ }
22
+ end
23
+ function __TS__Generator(fn)
24
+ return function(...)
25
+ local args = arg
26
+ local argsLength = __TS__CountVarargs(unpack(arg))
27
+ return {
28
+ ____coroutine = coroutine.create(function() return fn(__TS__Spread(__TS__Unpack(nil, args, 1, argsLength))) end),
29
+ [Symbol.iterator] = generatorIterator,
30
+ next = generatorNext
31
+ }
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,40 @@
1
+ local __TS__Iterator
2
+ do
3
+ local function iteratorGeneratorStep(self)
4
+ local co = self.____coroutine
5
+ local status, value = coroutine.resume(co)
6
+ if not status then
7
+ error(value, 0)
8
+ end
9
+ if coroutine.status(co) == "dead" then
10
+ return
11
+ end
12
+ return true, value
13
+ end
14
+ local function iteratorIteratorStep(self)
15
+ local result = self:next()
16
+ if result.done then
17
+ return
18
+ end
19
+ return true, result.value
20
+ end
21
+ local function iteratorStringStep(self, index)
22
+ index = index + 1
23
+ if index > string.len(self) then
24
+ return
25
+ end
26
+ return index, string.sub(self, index, index)
27
+ end
28
+ function __TS__Iterator(iterable)
29
+ if type(iterable) == "string" then
30
+ return iteratorStringStep, iterable, 0
31
+ elseif iterable.____coroutine ~= nil then
32
+ return iteratorGeneratorStep, iterable
33
+ elseif iterable[Symbol.iterator] then
34
+ local iterator = iterable[Symbol.iterator](iterable)
35
+ return iteratorIteratorStep, iterator
36
+ else
37
+ return ipairs(iterable)
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,9 @@
1
+ local function __TS__LuaIteratorSpread(self, state, firstKey)
2
+ local results = {}
3
+ local key, value = self(state, firstKey)
4
+ while key do
5
+ results[table.getn(results) + 1] = {key, value}
6
+ key, value = self(state, key)
7
+ end
8
+ return unpack(results)
9
+ end
File without changes
@@ -0,0 +1,13 @@
1
+ local function __TS__Match(s, pattern, init)
2
+ local ____temp_0 = {string.find(s, pattern, init)}
3
+ local start = ____temp_0[1]
4
+ local ____end = ____temp_0[2]
5
+ local captures = __TS__ArraySlice(____temp_0, 2)
6
+ if start == nil or ____end == nil then
7
+ return
8
+ elseif table.getn(captures) <= 0 then
9
+ return __TS__StringSlice(s, start - 1, ____end)
10
+ else
11
+ return unpack(captures)
12
+ end
13
+ end
File without changes
@@ -0,0 +1,10 @@
1
+ local function __TS__MathModf(x)
2
+ local ____temp_0
3
+ if x > 0 then
4
+ ____temp_0 = math.floor(x)
5
+ else
6
+ ____temp_0 = math.ceil(x)
7
+ end
8
+ local integral = ____temp_0
9
+ return integral, x - integral
10
+ end
File without changes
@@ -0,0 +1,3 @@
1
+ local function __TS__Modulo50(a, b)
2
+ return a - math.floor(a / b) * b
3
+ end
@@ -0,0 +1,5 @@
1
+ local function __TS__New(target, ...)
2
+ local instance = setmetatable({}, target.prototype)
3
+ instance:____constructor(unpack(arg))
4
+ return instance
5
+ end