typescript-to-lua 1.10.0-beta.0 → 1.10.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 (112) hide show
  1. package/dist/lualib/5.0/Generator.lua +1 -1
  2. package/dist/lualib/5.0/SparseArraySpread.lua +1 -1
  3. package/dist/lualib/5.0/Unpack.lua +18 -1
  4. package/dist/lualib/5.0/lualib_bundle.lua +32 -15
  5. package/dist/lualib/5.0/lualib_module_info.json +3 -1
  6. package/dist/transformation/utils/diagnostics.js +1 -1
  7. package/dist/transformation/visitors/conditional.js +4 -0
  8. package/dist/transpilation/resolve.js +3 -3
  9. package/package.json +2 -2
  10. package/dist/lualib/ArrayConcat.lua +0 -22
  11. package/dist/lualib/ArrayEntries.lua +0 -13
  12. package/dist/lualib/ArrayEvery.lua +0 -8
  13. package/dist/lualib/ArrayFilter.lua +0 -11
  14. package/dist/lualib/ArrayFind.lua +0 -9
  15. package/dist/lualib/ArrayFindIndex.lua +0 -8
  16. package/dist/lualib/ArrayFlat.lua +0 -27
  17. package/dist/lualib/ArrayFlatMap.lua +0 -17
  18. package/dist/lualib/ArrayForEach.lua +0 -5
  19. package/dist/lualib/ArrayFrom.lua +0 -29
  20. package/dist/lualib/ArrayIncludes.lua +0 -19
  21. package/dist/lualib/ArrayIndexOf.lua +0 -24
  22. package/dist/lualib/ArrayIsArray.lua +0 -3
  23. package/dist/lualib/ArrayJoin.lua +0 -10
  24. package/dist/lualib/ArrayMap.lua +0 -7
  25. package/dist/lualib/ArrayPush.lua +0 -9
  26. package/dist/lualib/ArrayPushArray.lua +0 -8
  27. package/dist/lualib/ArrayReduce.lua +0 -23
  28. package/dist/lualib/ArrayReduceRight.lua +0 -23
  29. package/dist/lualib/ArrayReverse.lua +0 -12
  30. package/dist/lualib/ArraySetLength.lua +0 -12
  31. package/dist/lualib/ArraySlice.lua +0 -43
  32. package/dist/lualib/ArraySome.lua +0 -8
  33. package/dist/lualib/ArraySort.lua +0 -11
  34. package/dist/lualib/ArraySplice.lua +0 -77
  35. package/dist/lualib/ArrayToObject.lua +0 -7
  36. package/dist/lualib/ArrayUnshift.lua +0 -14
  37. package/dist/lualib/Await.lua +0 -54
  38. package/dist/lualib/Class.lua +0 -6
  39. package/dist/lualib/ClassExtends.lua +0 -24
  40. package/dist/lualib/CloneDescriptor.lua +0 -28
  41. package/dist/lualib/Decorate.lua +0 -36
  42. package/dist/lualib/DecorateParam.lua +0 -3
  43. package/dist/lualib/DelegatedYield.lua +0 -34
  44. package/dist/lualib/Delete.lua +0 -19
  45. package/dist/lualib/Error.lua +0 -77
  46. package/dist/lualib/FunctionBind.lua +0 -11
  47. package/dist/lualib/Generator.lua +0 -38
  48. package/dist/lualib/InstanceOf.lua +0 -18
  49. package/dist/lualib/InstanceOfObject.lua +0 -4
  50. package/dist/lualib/Iterator.lua +0 -40
  51. package/dist/lualib/LuaIteratorSpread.lua +0 -9
  52. package/dist/lualib/Map.lua +0 -140
  53. package/dist/lualib/MathAtan2.lua +0 -1
  54. package/dist/lualib/MathSign.lua +0 -8
  55. package/dist/lualib/New.lua +0 -5
  56. package/dist/lualib/Number.lua +0 -26
  57. package/dist/lualib/NumberIsFinite.lua +0 -3
  58. package/dist/lualib/NumberIsNaN.lua +0 -3
  59. package/dist/lualib/NumberToString.lua +0 -44
  60. package/dist/lualib/ObjectAssign.lua +0 -10
  61. package/dist/lualib/ObjectDefineProperty.lua +0 -59
  62. package/dist/lualib/ObjectEntries.lua +0 -9
  63. package/dist/lualib/ObjectFromEntries.lua +0 -20
  64. package/dist/lualib/ObjectGetOwnPropertyDescriptor.lua +0 -10
  65. package/dist/lualib/ObjectGetOwnPropertyDescriptors.lua +0 -7
  66. package/dist/lualib/ObjectKeys.lua +0 -9
  67. package/dist/lualib/ObjectRest.lua +0 -9
  68. package/dist/lualib/ObjectValues.lua +0 -9
  69. package/dist/lualib/ParseFloat.lua +0 -18
  70. package/dist/lualib/ParseInt.lua +0 -43
  71. package/dist/lualib/Promise.lua +0 -176
  72. package/dist/lualib/PromiseAll.lua +0 -44
  73. package/dist/lualib/PromiseAllSettled.lua +0 -48
  74. package/dist/lualib/PromiseAny.lua +0 -41
  75. package/dist/lualib/PromiseRace.lua +0 -28
  76. package/dist/lualib/Set.lua +0 -130
  77. package/dist/lualib/SetDescriptor.lua +0 -79
  78. package/dist/lualib/SourceMapTraceBack.lua +0 -54
  79. package/dist/lualib/SparseArrayNew.lua +0 -5
  80. package/dist/lualib/SparseArrayPush.lua +0 -9
  81. package/dist/lualib/SparseArraySpread.lua +0 -8
  82. package/dist/lualib/Spread.lua +0 -15
  83. package/dist/lualib/StringAccess.lua +0 -5
  84. package/dist/lualib/StringCharAt.lua +0 -9
  85. package/dist/lualib/StringCharCodeAt.lua +0 -13
  86. package/dist/lualib/StringEndsWith.lua +0 -6
  87. package/dist/lualib/StringIncludes.lua +0 -9
  88. package/dist/lualib/StringPadEnd.lua +0 -26
  89. package/dist/lualib/StringPadStart.lua +0 -26
  90. package/dist/lualib/StringReplace.lua +0 -20
  91. package/dist/lualib/StringReplaceAll.lua +0 -42
  92. package/dist/lualib/StringSlice.lua +0 -15
  93. package/dist/lualib/StringSplit.lua +0 -36
  94. package/dist/lualib/StringStartsWith.lua +0 -6
  95. package/dist/lualib/StringSubstr.lua +0 -15
  96. package/dist/lualib/StringSubstring.lua +0 -17
  97. package/dist/lualib/StringTrim.lua +0 -4
  98. package/dist/lualib/StringTrimEnd.lua +0 -4
  99. package/dist/lualib/StringTrimStart.lua +0 -4
  100. package/dist/lualib/Symbol.lua +0 -15
  101. package/dist/lualib/SymbolRegistry.lua +0 -17
  102. package/dist/lualib/TypeOf.lua +0 -10
  103. package/dist/lualib/Unpack.lua +0 -1
  104. package/dist/lualib/WeakMap.lua +0 -45
  105. package/dist/lualib/WeakSet.lua +0 -41
  106. package/dist/lualib/lualib_bundle.lua +0 -2518
  107. package/dist/lualib/lualib_module_info.json +0 -626
  108. package/dist/lualib/universal/universal/CountVarargs.lua +0 -3
  109. package/dist/lualib/universal/universal/Match.lua +0 -1
  110. package/dist/lualib/universal/universal/MathModf.lua +0 -1
  111. package/dist/lualib/universal/universal/SparseArraySpread.lua +0 -8
  112. package/dist/lualib/universal/universal/Unpack.lua +0 -1
@@ -1,26 +0,0 @@
1
- local function __TS__Number(value)
2
- local valueType = type(value)
3
- if valueType == "number" then
4
- return value
5
- elseif valueType == "string" then
6
- local numberValue = tonumber(value)
7
- if numberValue then
8
- return numberValue
9
- end
10
- if value == "Infinity" then
11
- return math.huge
12
- end
13
- if value == "-Infinity" then
14
- return -math.huge
15
- end
16
- local stringWithoutSpaces = string.gsub(value, "%s", "")
17
- if stringWithoutSpaces == "" then
18
- return 0
19
- end
20
- return 0 / 0
21
- elseif valueType == "boolean" then
22
- return value and 1 or 0
23
- else
24
- return 0 / 0
25
- end
26
- end
@@ -1,3 +0,0 @@
1
- local function __TS__NumberIsFinite(value)
2
- return type(value) == "number" and value == value and value ~= math.huge and value ~= -math.huge
3
- end
@@ -1,3 +0,0 @@
1
- local function __TS__NumberIsNaN(value)
2
- return value ~= value
3
- end
@@ -1,44 +0,0 @@
1
- local __TS__NumberToString
2
- do
3
- local radixChars = "0123456789abcdefghijklmnopqrstuvwxyz"
4
- function __TS__NumberToString(self, radix)
5
- if radix == nil or radix == 10 or self == math.huge or self == -math.huge or self ~= self then
6
- return tostring(self)
7
- end
8
- radix = math.floor(radix)
9
- if radix < 2 or radix > 36 then
10
- error("toString() radix argument must be between 2 and 36", 0)
11
- end
12
- local integer, fraction = math.modf(math.abs(self))
13
- local result = ""
14
- if radix == 8 then
15
- result = string.format("%o", integer)
16
- elseif radix == 16 then
17
- result = string.format("%x", integer)
18
- else
19
- repeat
20
- do
21
- result = __TS__StringAccess(radixChars, integer % radix) .. result
22
- integer = math.floor(integer / radix)
23
- end
24
- until not (integer ~= 0)
25
- end
26
- if fraction ~= 0 then
27
- result = result .. "."
28
- local delta = 1e-16
29
- repeat
30
- do
31
- fraction = fraction * radix
32
- delta = delta * radix
33
- local digit = math.floor(fraction)
34
- result = result .. __TS__StringAccess(radixChars, digit)
35
- fraction = fraction - digit
36
- end
37
- until not (fraction >= delta)
38
- end
39
- if self < 0 then
40
- result = "-" .. result
41
- end
42
- return result
43
- end
44
- end
@@ -1,10 +0,0 @@
1
- local function __TS__ObjectAssign(target, ...)
2
- local sources = {...}
3
- for i = 1, #sources do
4
- local source = sources[i]
5
- for key in pairs(source) do
6
- target[key] = source[key]
7
- end
8
- end
9
- return target
10
- end
@@ -1,59 +0,0 @@
1
- local function __TS__ObjectDefineProperty(target, key, desc)
2
- local ____temp_0
3
- if type(key) == "number" then
4
- ____temp_0 = key + 1
5
- else
6
- ____temp_0 = key
7
- end
8
- local luaKey = ____temp_0
9
- local value = rawget(target, luaKey)
10
- local hasGetterOrSetter = desc.get ~= nil or desc.set ~= nil
11
- local descriptor
12
- if hasGetterOrSetter then
13
- if value ~= nil then
14
- error(
15
- "Cannot redefine property: " .. tostring(key),
16
- 0
17
- )
18
- end
19
- descriptor = desc
20
- else
21
- local valueExists = value ~= nil
22
- local ____desc_set_5 = desc.set
23
- local ____desc_get_6 = desc.get
24
- local ____temp_1
25
- if desc.configurable ~= nil then
26
- ____temp_1 = desc.configurable
27
- else
28
- ____temp_1 = valueExists
29
- end
30
- local ____temp_2
31
- if desc.enumerable ~= nil then
32
- ____temp_2 = desc.enumerable
33
- else
34
- ____temp_2 = valueExists
35
- end
36
- local ____temp_3
37
- if desc.writable ~= nil then
38
- ____temp_3 = desc.writable
39
- else
40
- ____temp_3 = valueExists
41
- end
42
- local ____temp_4
43
- if desc.value ~= nil then
44
- ____temp_4 = desc.value
45
- else
46
- ____temp_4 = value
47
- end
48
- descriptor = {
49
- set = ____desc_set_5,
50
- get = ____desc_get_6,
51
- configurable = ____temp_1,
52
- enumerable = ____temp_2,
53
- writable = ____temp_3,
54
- value = ____temp_4
55
- }
56
- end
57
- __TS__SetDescriptor(target, luaKey, descriptor)
58
- return target
59
- end
@@ -1,9 +0,0 @@
1
- local function __TS__ObjectEntries(obj)
2
- local result = {}
3
- local len = 0
4
- for key in pairs(obj) do
5
- len = len + 1
6
- result[len] = {key, obj[key]}
7
- end
8
- return result
9
- end
@@ -1,20 +0,0 @@
1
- local function __TS__ObjectFromEntries(entries)
2
- local obj = {}
3
- local iterable = entries
4
- if iterable[Symbol.iterator] then
5
- local iterator = iterable[Symbol.iterator](iterable)
6
- while true do
7
- local result = iterator:next()
8
- if result.done then
9
- break
10
- end
11
- local value = result.value
12
- obj[value[1]] = value[2]
13
- end
14
- else
15
- for ____, entry in ipairs(entries) do
16
- obj[entry[1]] = entry[2]
17
- end
18
- end
19
- return obj
20
- end
@@ -1,10 +0,0 @@
1
- local function __TS__ObjectGetOwnPropertyDescriptor(object, key)
2
- local metatable = getmetatable(object)
3
- if not metatable then
4
- return
5
- end
6
- if not rawget(metatable, "_descriptors") then
7
- return
8
- end
9
- return rawget(metatable, "_descriptors")[key]
10
- end
@@ -1,7 +0,0 @@
1
- local function __TS__ObjectGetOwnPropertyDescriptors(object)
2
- local metatable = getmetatable(object)
3
- if not metatable then
4
- return {}
5
- end
6
- return rawget(metatable, "_descriptors") or ({})
7
- end
@@ -1,9 +0,0 @@
1
- local function __TS__ObjectKeys(obj)
2
- local result = {}
3
- local len = 0
4
- for key in pairs(obj) do
5
- len = len + 1
6
- result[len] = key
7
- end
8
- return result
9
- end
@@ -1,9 +0,0 @@
1
- local function __TS__ObjectRest(target, usedProperties)
2
- local result = {}
3
- for property in pairs(target) do
4
- if not usedProperties[property] then
5
- result[property] = target[property]
6
- end
7
- end
8
- return result
9
- end
@@ -1,9 +0,0 @@
1
- local function __TS__ObjectValues(obj)
2
- local result = {}
3
- local len = 0
4
- for key in pairs(obj) do
5
- len = len + 1
6
- result[len] = obj[key]
7
- end
8
- return result
9
- end
@@ -1,18 +0,0 @@
1
- local function __TS__ParseFloat(numberString)
2
- local infinityMatch = string.match(numberString, "^%s*(-?Infinity)")
3
- if infinityMatch then
4
- local ____temp_0
5
- if __TS__StringAccess(infinityMatch, 0) == "-" then
6
- ____temp_0 = -math.huge
7
- else
8
- ____temp_0 = math.huge
9
- end
10
- return ____temp_0
11
- end
12
- local number = tonumber(string.match(numberString, "^%s*(-?%d+%.?%d*)"))
13
- local ____number_1 = number
14
- if ____number_1 == nil then
15
- ____number_1 = 0 / 0
16
- end
17
- return ____number_1
18
- end
@@ -1,43 +0,0 @@
1
- local __TS__ParseInt
2
- do
3
- local parseIntBasePattern = "0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTvVwWxXyYzZ"
4
- function __TS__ParseInt(numberString, base)
5
- if base == nil then
6
- base = 10
7
- local hexMatch = string.match(numberString, "^%s*-?0[xX]")
8
- if hexMatch then
9
- base = 16
10
- local ____string_match_result__0_0
11
- if string.match(hexMatch, "-") then
12
- ____string_match_result__0_0 = "-" .. __TS__StringSubstr(numberString, #hexMatch)
13
- else
14
- ____string_match_result__0_0 = __TS__StringSubstr(numberString, #hexMatch)
15
- end
16
- numberString = ____string_match_result__0_0
17
- end
18
- end
19
- if base < 2 or base > 36 then
20
- return 0 / 0
21
- end
22
- local ____temp_1
23
- if base <= 10 then
24
- ____temp_1 = __TS__StringSubstring(parseIntBasePattern, 0, base)
25
- else
26
- ____temp_1 = __TS__StringSubstr(parseIntBasePattern, 0, 10 + 2 * (base - 10))
27
- end
28
- local allowedDigits = ____temp_1
29
- local pattern = ("^%s*(-?[" .. allowedDigits) .. "]*)"
30
- local number = tonumber(
31
- string.match(numberString, pattern),
32
- base
33
- )
34
- if number == nil then
35
- return 0 / 0
36
- end
37
- if number >= 0 then
38
- return math.floor(number)
39
- else
40
- return math.ceil(number)
41
- end
42
- end
43
- end
@@ -1,176 +0,0 @@
1
- local __TS__Promise
2
- do
3
- local function promiseDeferred(self)
4
- local resolve
5
- local reject
6
- local promise = __TS__New(
7
- __TS__Promise,
8
- function(____, res, rej)
9
- resolve = res
10
- reject = rej
11
- end
12
- )
13
- return {promise = promise, resolve = resolve, reject = reject}
14
- end
15
- local function isPromiseLike(self, thing)
16
- return __TS__InstanceOf(thing, __TS__Promise)
17
- end
18
- __TS__Promise = __TS__Class()
19
- __TS__Promise.name = "__TS__Promise"
20
- function __TS__Promise.prototype.____constructor(self, executor)
21
- self.state = 0
22
- self.fulfilledCallbacks = {}
23
- self.rejectedCallbacks = {}
24
- self.finallyCallbacks = {}
25
- do
26
- local function ____catch(e)
27
- self:reject(e)
28
- end
29
- local ____try, ____hasReturned = pcall(function()
30
- executor(
31
- nil,
32
- __TS__FunctionBind(self.resolve, self),
33
- __TS__FunctionBind(self.reject, self)
34
- )
35
- end)
36
- if not ____try then
37
- ____catch(____hasReturned)
38
- end
39
- end
40
- end
41
- function __TS__Promise.resolve(data)
42
- local promise = __TS__New(
43
- __TS__Promise,
44
- function()
45
- end
46
- )
47
- promise.state = 1
48
- promise.value = data
49
- return promise
50
- end
51
- function __TS__Promise.reject(reason)
52
- local promise = __TS__New(
53
- __TS__Promise,
54
- function()
55
- end
56
- )
57
- promise.state = 2
58
- promise.rejectionReason = reason
59
- return promise
60
- end
61
- __TS__Promise.prototype["then"] = function(self, onFulfilled, onRejected)
62
- local ____promiseDeferred_result_0 = promiseDeferred(nil)
63
- local promise = ____promiseDeferred_result_0.promise
64
- local resolve = ____promiseDeferred_result_0.resolve
65
- local reject = ____promiseDeferred_result_0.reject
66
- local isFulfilled = self.state == 1
67
- local isRejected = self.state == 2
68
- if onFulfilled then
69
- local internalCallback = self:createPromiseResolvingCallback(onFulfilled, resolve, reject)
70
- local ____self_fulfilledCallbacks_1 = self.fulfilledCallbacks
71
- ____self_fulfilledCallbacks_1[#____self_fulfilledCallbacks_1 + 1] = internalCallback
72
- if isFulfilled then
73
- internalCallback(nil, self.value)
74
- end
75
- else
76
- local ____self_fulfilledCallbacks_2 = self.fulfilledCallbacks
77
- ____self_fulfilledCallbacks_2[#____self_fulfilledCallbacks_2 + 1] = function(____, v) return resolve(nil, v) end
78
- end
79
- if onRejected then
80
- local internalCallback = self:createPromiseResolvingCallback(onRejected, resolve, reject)
81
- local ____self_rejectedCallbacks_3 = self.rejectedCallbacks
82
- ____self_rejectedCallbacks_3[#____self_rejectedCallbacks_3 + 1] = internalCallback
83
- if isRejected then
84
- internalCallback(nil, self.rejectionReason)
85
- end
86
- else
87
- local ____self_rejectedCallbacks_4 = self.rejectedCallbacks
88
- ____self_rejectedCallbacks_4[#____self_rejectedCallbacks_4 + 1] = function(____, err) return reject(nil, err) end
89
- end
90
- if isFulfilled then
91
- resolve(nil, self.value)
92
- end
93
- if isRejected then
94
- reject(nil, self.rejectionReason)
95
- end
96
- return promise
97
- end
98
- function __TS__Promise.prototype.catch(self, onRejected)
99
- return self["then"](self, nil, onRejected)
100
- end
101
- function __TS__Promise.prototype.finally(self, onFinally)
102
- if onFinally then
103
- local ____self_finallyCallbacks_5 = self.finallyCallbacks
104
- ____self_finallyCallbacks_5[#____self_finallyCallbacks_5 + 1] = onFinally
105
- if self.state ~= 0 then
106
- onFinally(nil)
107
- end
108
- end
109
- return self
110
- end
111
- function __TS__Promise.prototype.resolve(self, data)
112
- if __TS__InstanceOf(data, __TS__Promise) then
113
- data["then"](
114
- data,
115
- function(____, v) return self:resolve(v) end,
116
- function(____, err) return self:reject(err) end
117
- )
118
- return
119
- end
120
- if self.state == 0 then
121
- self.state = 1
122
- self.value = data
123
- for ____, callback in ipairs(self.fulfilledCallbacks) do
124
- callback(nil, data)
125
- end
126
- for ____, callback in ipairs(self.finallyCallbacks) do
127
- callback(nil)
128
- end
129
- end
130
- end
131
- function __TS__Promise.prototype.reject(self, reason)
132
- if self.state == 0 then
133
- self.state = 2
134
- self.rejectionReason = reason
135
- for ____, callback in ipairs(self.rejectedCallbacks) do
136
- callback(nil, reason)
137
- end
138
- for ____, callback in ipairs(self.finallyCallbacks) do
139
- callback(nil)
140
- end
141
- end
142
- end
143
- function __TS__Promise.prototype.createPromiseResolvingCallback(self, f, resolve, reject)
144
- return function(____, value)
145
- do
146
- local function ____catch(e)
147
- reject(nil, e)
148
- end
149
- local ____try, ____hasReturned = pcall(function()
150
- self:handleCallbackData(
151
- f(nil, value),
152
- resolve,
153
- reject
154
- )
155
- end)
156
- if not ____try then
157
- ____catch(____hasReturned)
158
- end
159
- end
160
- end
161
- end
162
- function __TS__Promise.prototype.handleCallbackData(self, data, resolve, reject)
163
- if isPromiseLike(nil, data) then
164
- local nextpromise = data
165
- if nextpromise.state == 1 then
166
- resolve(nil, nextpromise.value)
167
- elseif nextpromise.state == 2 then
168
- reject(nil, nextpromise.rejectionReason)
169
- else
170
- data["then"](data, resolve, reject)
171
- end
172
- else
173
- resolve(nil, data)
174
- end
175
- end
176
- end
@@ -1,44 +0,0 @@
1
- local function __TS__PromiseAll(iterable)
2
- local results = {}
3
- local toResolve = {}
4
- local numToResolve = 0
5
- local i = 0
6
- for ____, item in __TS__Iterator(iterable) do
7
- if __TS__InstanceOf(item, __TS__Promise) then
8
- if item.state == 1 then
9
- results[i + 1] = item.value
10
- elseif item.state == 2 then
11
- return __TS__Promise.reject(item.rejectionReason)
12
- else
13
- numToResolve = numToResolve + 1
14
- toResolve[i] = item
15
- end
16
- else
17
- results[i + 1] = item
18
- end
19
- i = i + 1
20
- end
21
- if numToResolve == 0 then
22
- return __TS__Promise.resolve(results)
23
- end
24
- return __TS__New(
25
- __TS__Promise,
26
- function(____, resolve, reject)
27
- for index, promise in pairs(toResolve) do
28
- promise["then"](
29
- promise,
30
- function(____, data)
31
- results[index + 1] = data
32
- numToResolve = numToResolve - 1
33
- if numToResolve == 0 then
34
- resolve(nil, results)
35
- end
36
- end,
37
- function(____, reason)
38
- reject(nil, reason)
39
- end
40
- )
41
- end
42
- end
43
- )
44
- end
@@ -1,48 +0,0 @@
1
- local function __TS__PromiseAllSettled(iterable)
2
- local results = {}
3
- local toResolve = {}
4
- local numToResolve = 0
5
- local i = 0
6
- for ____, item in __TS__Iterator(iterable) do
7
- if __TS__InstanceOf(item, __TS__Promise) then
8
- if item.state == 1 then
9
- results[i + 1] = {status = "fulfilled", value = item.value}
10
- elseif item.state == 2 then
11
- results[i + 1] = {status = "rejected", reason = item.rejectionReason}
12
- else
13
- numToResolve = numToResolve + 1
14
- toResolve[i] = item
15
- end
16
- else
17
- results[i + 1] = {status = "fulfilled", value = item}
18
- end
19
- i = i + 1
20
- end
21
- if numToResolve == 0 then
22
- return __TS__Promise.resolve(results)
23
- end
24
- return __TS__New(
25
- __TS__Promise,
26
- function(____, resolve)
27
- for index, promise in pairs(toResolve) do
28
- promise["then"](
29
- promise,
30
- function(____, data)
31
- results[index + 1] = {status = "fulfilled", value = data}
32
- numToResolve = numToResolve - 1
33
- if numToResolve == 0 then
34
- resolve(nil, results)
35
- end
36
- end,
37
- function(____, reason)
38
- results[index + 1] = {status = "rejected", reason = reason}
39
- numToResolve = numToResolve - 1
40
- if numToResolve == 0 then
41
- resolve(nil, results)
42
- end
43
- end
44
- )
45
- end
46
- end
47
- )
48
- end
@@ -1,41 +0,0 @@
1
- local function __TS__PromiseAny(iterable)
2
- local rejections = {}
3
- local pending = {}
4
- for ____, item in __TS__Iterator(iterable) do
5
- if __TS__InstanceOf(item, __TS__Promise) then
6
- if item.state == 1 then
7
- return __TS__Promise.resolve(item.value)
8
- elseif item.state == 2 then
9
- rejections[#rejections + 1] = item.rejectionReason
10
- else
11
- pending[#pending + 1] = item
12
- end
13
- else
14
- return __TS__Promise.resolve(item)
15
- end
16
- end
17
- if #pending == 0 then
18
- return __TS__Promise.reject("No promises to resolve with .any()")
19
- end
20
- local numResolved = 0
21
- return __TS__New(
22
- __TS__Promise,
23
- function(____, resolve, reject)
24
- for ____, promise in ipairs(pending) do
25
- promise["then"](
26
- promise,
27
- function(____, data)
28
- resolve(nil, data)
29
- end,
30
- function(____, reason)
31
- rejections[#rejections + 1] = reason
32
- numResolved = numResolved + 1
33
- if numResolved == #pending then
34
- reject(nil, {name = "AggregateError", message = "All Promises rejected", errors = rejections})
35
- end
36
- end
37
- )
38
- end
39
- end
40
- )
41
- end
@@ -1,28 +0,0 @@
1
- local function __TS__PromiseRace(iterable)
2
- local pending = {}
3
- for ____, item in __TS__Iterator(iterable) do
4
- if __TS__InstanceOf(item, __TS__Promise) then
5
- if item.state == 1 then
6
- return __TS__Promise.resolve(item.value)
7
- elseif item.state == 2 then
8
- return __TS__Promise.reject(item.rejectionReason)
9
- else
10
- pending[#pending + 1] = item
11
- end
12
- else
13
- return __TS__Promise.resolve(item)
14
- end
15
- end
16
- return __TS__New(
17
- __TS__Promise,
18
- function(____, resolve, reject)
19
- for ____, promise in ipairs(pending) do
20
- promise["then"](
21
- promise,
22
- function(____, value) return resolve(nil, value) end,
23
- function(____, reason) return reject(nil, reason) end
24
- )
25
- end
26
- end
27
- )
28
- end