@noita-ts/pollnet 0.2.0 → 0.3.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.
@@ -1,36 +1,7 @@
1
- local function __TS__ArrayAt(self, relativeIndex)
2
- local absoluteIndex = relativeIndex < 0 and #self + relativeIndex or relativeIndex
3
- if absoluteIndex >= 0 and absoluteIndex < #self then
4
- return self[absoluteIndex + 1]
5
- end
6
- return nil
7
- end
8
-
9
- local function __TS__ArrayIsArray(value)
10
- return type(value) == "table" and (value[1] ~= nil or next(value) == nil)
11
- end
12
-
13
- local function __TS__ArrayConcat(self, ...)
14
- local items = {...}
15
- local result = {}
16
- local len = 0
17
- for i = 1, #self do
18
- len = len + 1
19
- result[len] = self[i]
20
- end
21
- for i = 1, #items do
22
- local item = items[i]
23
- if __TS__ArrayIsArray(item) then
24
- for j = 1, #item do
25
- len = len + 1
26
- result[len] = item[j]
27
- end
28
- else
29
- len = len + 1
30
- result[len] = item
31
- end
32
- end
33
- return result
1
+ local function __TS__New(target, ...)
2
+ local instance = setmetatable({}, target.prototype)
3
+ instance:____constructor(...)
4
+ return instance
34
5
  end
35
6
 
36
7
  local __TS__Symbol, Symbol
@@ -51,555 +22,6 @@ do
51
22
  }
52
23
  end
53
24
 
54
- local function __TS__ArrayEntries(array)
55
- local key = 0
56
- return {
57
- [Symbol.iterator] = function(self)
58
- return self
59
- end,
60
- next = function(self)
61
- local result = {done = array[key + 1] == nil, value = {key, array[key + 1]}}
62
- key = key + 1
63
- return result
64
- end
65
- }
66
- end
67
-
68
- local function __TS__ArrayEvery(self, callbackfn, thisArg)
69
- for i = 1, #self do
70
- if not callbackfn(thisArg, self[i], i - 1, self) then
71
- return false
72
- end
73
- end
74
- return true
75
- end
76
-
77
- local function __TS__ArrayFill(self, value, start, ____end)
78
- local relativeStart = start or 0
79
- local relativeEnd = ____end or #self
80
- if relativeStart < 0 then
81
- relativeStart = relativeStart + #self
82
- end
83
- if relativeEnd < 0 then
84
- relativeEnd = relativeEnd + #self
85
- end
86
- do
87
- local i = relativeStart
88
- while i < relativeEnd do
89
- self[i + 1] = value
90
- i = i + 1
91
- end
92
- end
93
- return self
94
- end
95
-
96
- local function __TS__ArrayFilter(self, callbackfn, thisArg)
97
- local result = {}
98
- local len = 0
99
- for i = 1, #self do
100
- if callbackfn(thisArg, self[i], i - 1, self) then
101
- len = len + 1
102
- result[len] = self[i]
103
- end
104
- end
105
- return result
106
- end
107
-
108
- local function __TS__ArrayForEach(self, callbackFn, thisArg)
109
- for i = 1, #self do
110
- callbackFn(thisArg, self[i], i - 1, self)
111
- end
112
- end
113
-
114
- local function __TS__ArrayFind(self, predicate, thisArg)
115
- for i = 1, #self do
116
- local elem = self[i]
117
- if predicate(thisArg, elem, i - 1, self) then
118
- return elem
119
- end
120
- end
121
- return nil
122
- end
123
-
124
- local function __TS__ArrayFindIndex(self, callbackFn, thisArg)
125
- for i = 1, #self do
126
- if callbackFn(thisArg, self[i], i - 1, self) then
127
- return i - 1
128
- end
129
- end
130
- return -1
131
- end
132
-
133
- local __TS__Iterator
134
- do
135
- local function iteratorGeneratorStep(self)
136
- local co = self.____coroutine
137
- local status, value = coroutine.resume(co)
138
- if not status then
139
- error(value, 0)
140
- end
141
- if coroutine.status(co) == "dead" then
142
- return
143
- end
144
- return true, value
145
- end
146
- local function iteratorIteratorStep(self)
147
- local result = self:next()
148
- if result.done then
149
- return
150
- end
151
- return true, result.value
152
- end
153
- local function iteratorStringStep(self, index)
154
- index = index + 1
155
- if index > #self then
156
- return
157
- end
158
- return index, string.sub(self, index, index)
159
- end
160
- function __TS__Iterator(iterable)
161
- if type(iterable) == "string" then
162
- return iteratorStringStep, iterable, 0
163
- elseif iterable.____coroutine ~= nil then
164
- return iteratorGeneratorStep, iterable
165
- elseif iterable[Symbol.iterator] then
166
- local iterator = iterable[Symbol.iterator](iterable)
167
- return iteratorIteratorStep, iterator
168
- else
169
- return ipairs(iterable)
170
- end
171
- end
172
- end
173
-
174
- local __TS__ArrayFrom
175
- do
176
- local function arrayLikeStep(self, index)
177
- index = index + 1
178
- if index > self.length then
179
- return
180
- end
181
- return index, self[index]
182
- end
183
- local function arrayLikeIterator(arr)
184
- if type(arr.length) == "number" then
185
- return arrayLikeStep, arr, 0
186
- end
187
- return __TS__Iterator(arr)
188
- end
189
- function __TS__ArrayFrom(arrayLike, mapFn, thisArg)
190
- local result = {}
191
- if mapFn == nil then
192
- for ____, v in arrayLikeIterator(arrayLike) do
193
- result[#result + 1] = v
194
- end
195
- else
196
- local i = 0
197
- for ____, v in arrayLikeIterator(arrayLike) do
198
- local ____mapFn_3 = mapFn
199
- local ____thisArg_1 = thisArg
200
- local ____v_2 = v
201
- local ____i_0 = i
202
- i = ____i_0 + 1
203
- result[#result + 1] = ____mapFn_3(____thisArg_1, ____v_2, ____i_0)
204
- end
205
- end
206
- return result
207
- end
208
- end
209
-
210
- local function __TS__ArrayIncludes(self, searchElement, fromIndex)
211
- if fromIndex == nil then
212
- fromIndex = 0
213
- end
214
- local len = #self
215
- local k = fromIndex
216
- if fromIndex < 0 then
217
- k = len + fromIndex
218
- end
219
- if k < 0 then
220
- k = 0
221
- end
222
- for i = k + 1, len do
223
- if self[i] == searchElement then
224
- return true
225
- end
226
- end
227
- return false
228
- end
229
-
230
- local function __TS__ArrayIndexOf(self, searchElement, fromIndex)
231
- if fromIndex == nil then
232
- fromIndex = 0
233
- end
234
- local len = #self
235
- if len == 0 then
236
- return -1
237
- end
238
- if fromIndex >= len then
239
- return -1
240
- end
241
- if fromIndex < 0 then
242
- fromIndex = len + fromIndex
243
- if fromIndex < 0 then
244
- fromIndex = 0
245
- end
246
- end
247
- for i = fromIndex + 1, len do
248
- if self[i] == searchElement then
249
- return i - 1
250
- end
251
- end
252
- return -1
253
- end
254
-
255
- local function __TS__ArrayJoin(self, separator)
256
- if separator == nil then
257
- separator = ","
258
- end
259
- local parts = {}
260
- for i = 1, #self do
261
- parts[i] = tostring(self[i])
262
- end
263
- return table.concat(parts, separator)
264
- end
265
-
266
- local function __TS__ArrayMap(self, callbackfn, thisArg)
267
- local result = {}
268
- for i = 1, #self do
269
- result[i] = callbackfn(thisArg, self[i], i - 1, self)
270
- end
271
- return result
272
- end
273
-
274
- local function __TS__ArrayPush(self, ...)
275
- local items = {...}
276
- local len = #self
277
- for i = 1, #items do
278
- len = len + 1
279
- self[len] = items[i]
280
- end
281
- return len
282
- end
283
-
284
- local function __TS__ArrayPushArray(self, items)
285
- local len = #self
286
- for i = 1, #items do
287
- len = len + 1
288
- self[len] = items[i]
289
- end
290
- return len
291
- end
292
-
293
- local function __TS__CountVarargs(...)
294
- return select("#", ...)
295
- end
296
-
297
- local function __TS__ArrayReduce(self, callbackFn, ...)
298
- local len = #self
299
- local k = 0
300
- local accumulator = nil
301
- if __TS__CountVarargs(...) ~= 0 then
302
- accumulator = ...
303
- elseif len > 0 then
304
- accumulator = self[1]
305
- k = 1
306
- else
307
- error("Reduce of empty array with no initial value", 0)
308
- end
309
- for i = k + 1, len do
310
- accumulator = callbackFn(
311
- nil,
312
- accumulator,
313
- self[i],
314
- i - 1,
315
- self
316
- )
317
- end
318
- return accumulator
319
- end
320
-
321
- local function __TS__ArrayReduceRight(self, callbackFn, ...)
322
- local len = #self
323
- local k = len - 1
324
- local accumulator = nil
325
- if __TS__CountVarargs(...) ~= 0 then
326
- accumulator = ...
327
- elseif len > 0 then
328
- accumulator = self[k + 1]
329
- k = k - 1
330
- else
331
- error("Reduce of empty array with no initial value", 0)
332
- end
333
- for i = k + 1, 1, -1 do
334
- accumulator = callbackFn(
335
- nil,
336
- accumulator,
337
- self[i],
338
- i - 1,
339
- self
340
- )
341
- end
342
- return accumulator
343
- end
344
-
345
- local function __TS__ArrayReverse(self)
346
- local i = 1
347
- local j = #self
348
- while i < j do
349
- local temp = self[j]
350
- self[j] = self[i]
351
- self[i] = temp
352
- i = i + 1
353
- j = j - 1
354
- end
355
- return self
356
- end
357
-
358
- local function __TS__ArrayUnshift(self, ...)
359
- local items = {...}
360
- local numItemsToInsert = #items
361
- if numItemsToInsert == 0 then
362
- return #self
363
- end
364
- for i = #self, 1, -1 do
365
- self[i + numItemsToInsert] = self[i]
366
- end
367
- for i = 1, numItemsToInsert do
368
- self[i] = items[i]
369
- end
370
- return #self
371
- end
372
-
373
- local function __TS__ArraySort(self, compareFn)
374
- if compareFn ~= nil then
375
- table.sort(
376
- self,
377
- function(a, b) return compareFn(nil, a, b) < 0 end
378
- )
379
- else
380
- table.sort(self)
381
- end
382
- return self
383
- end
384
-
385
- local function __TS__ArraySlice(self, first, last)
386
- local len = #self
387
- first = first or 0
388
- if first < 0 then
389
- first = len + first
390
- if first < 0 then
391
- first = 0
392
- end
393
- else
394
- if first > len then
395
- first = len
396
- end
397
- end
398
- last = last or len
399
- if last < 0 then
400
- last = len + last
401
- if last < 0 then
402
- last = 0
403
- end
404
- else
405
- if last > len then
406
- last = len
407
- end
408
- end
409
- local out = {}
410
- first = first + 1
411
- last = last + 1
412
- local n = 1
413
- while first < last do
414
- out[n] = self[first]
415
- first = first + 1
416
- n = n + 1
417
- end
418
- return out
419
- end
420
-
421
- local function __TS__ArraySome(self, callbackfn, thisArg)
422
- for i = 1, #self do
423
- if callbackfn(thisArg, self[i], i - 1, self) then
424
- return true
425
- end
426
- end
427
- return false
428
- end
429
-
430
- local function __TS__ArraySplice(self, ...)
431
- local args = {...}
432
- local len = #self
433
- local actualArgumentCount = __TS__CountVarargs(...)
434
- local start = args[1]
435
- local deleteCount = args[2]
436
- if start < 0 then
437
- start = len + start
438
- if start < 0 then
439
- start = 0
440
- end
441
- elseif start > len then
442
- start = len
443
- end
444
- local itemCount = actualArgumentCount - 2
445
- if itemCount < 0 then
446
- itemCount = 0
447
- end
448
- local actualDeleteCount
449
- if actualArgumentCount == 0 then
450
- actualDeleteCount = 0
451
- elseif actualArgumentCount == 1 then
452
- actualDeleteCount = len - start
453
- else
454
- actualDeleteCount = deleteCount or 0
455
- if actualDeleteCount < 0 then
456
- actualDeleteCount = 0
457
- end
458
- if actualDeleteCount > len - start then
459
- actualDeleteCount = len - start
460
- end
461
- end
462
- local out = {}
463
- for k = 1, actualDeleteCount do
464
- local from = start + k
465
- if self[from] ~= nil then
466
- out[k] = self[from]
467
- end
468
- end
469
- if itemCount < actualDeleteCount then
470
- for k = start + 1, len - actualDeleteCount do
471
- local from = k + actualDeleteCount
472
- local to = k + itemCount
473
- if self[from] then
474
- self[to] = self[from]
475
- else
476
- self[to] = nil
477
- end
478
- end
479
- for k = len - actualDeleteCount + itemCount + 1, len do
480
- self[k] = nil
481
- end
482
- elseif itemCount > actualDeleteCount then
483
- for k = len - actualDeleteCount, start + 1, -1 do
484
- local from = k + actualDeleteCount
485
- local to = k + itemCount
486
- if self[from] then
487
- self[to] = self[from]
488
- else
489
- self[to] = nil
490
- end
491
- end
492
- end
493
- local j = start + 1
494
- for i = 3, actualArgumentCount do
495
- self[j] = args[i]
496
- j = j + 1
497
- end
498
- for k = #self, len - actualDeleteCount + itemCount + 1, -1 do
499
- self[k] = nil
500
- end
501
- return out
502
- end
503
-
504
- local function __TS__ArrayToObject(self)
505
- local object = {}
506
- for i = 1, #self do
507
- object[i - 1] = self[i]
508
- end
509
- return object
510
- end
511
-
512
- local function __TS__ArrayFlat(self, depth)
513
- if depth == nil then
514
- depth = 1
515
- end
516
- local result = {}
517
- local len = 0
518
- for i = 1, #self do
519
- local value = self[i]
520
- if depth > 0 and __TS__ArrayIsArray(value) then
521
- local toAdd
522
- if depth == 1 then
523
- toAdd = value
524
- else
525
- toAdd = __TS__ArrayFlat(value, depth - 1)
526
- end
527
- for j = 1, #toAdd do
528
- local val = toAdd[j]
529
- len = len + 1
530
- result[len] = val
531
- end
532
- else
533
- len = len + 1
534
- result[len] = value
535
- end
536
- end
537
- return result
538
- end
539
-
540
- local function __TS__ArrayFlatMap(self, callback, thisArg)
541
- local result = {}
542
- local len = 0
543
- for i = 1, #self do
544
- local value = callback(thisArg, self[i], i - 1, self)
545
- if __TS__ArrayIsArray(value) then
546
- for j = 1, #value do
547
- len = len + 1
548
- result[len] = value[j]
549
- end
550
- else
551
- len = len + 1
552
- result[len] = value
553
- end
554
- end
555
- return result
556
- end
557
-
558
- local function __TS__ArraySetLength(self, length)
559
- if length < 0 or length ~= length or length == math.huge or math.floor(length) ~= length then
560
- error(
561
- "invalid array length: " .. tostring(length),
562
- 0
563
- )
564
- end
565
- for i = length + 1, #self do
566
- self[i] = nil
567
- end
568
- return length
569
- end
570
-
571
- local __TS__Unpack = table.unpack or unpack
572
-
573
- local function __TS__ArrayToReversed(self)
574
- local copy = {__TS__Unpack(self)}
575
- __TS__ArrayReverse(copy)
576
- return copy
577
- end
578
-
579
- local function __TS__ArrayToSorted(self, compareFn)
580
- local copy = {__TS__Unpack(self)}
581
- __TS__ArraySort(copy, compareFn)
582
- return copy
583
- end
584
-
585
- local function __TS__ArrayToSpliced(self, start, deleteCount, ...)
586
- local copy = {__TS__Unpack(self)}
587
- __TS__ArraySplice(copy, start, deleteCount, ...)
588
- return copy
589
- end
590
-
591
- local function __TS__ArrayWith(self, index, value)
592
- local copy = {__TS__Unpack(self)}
593
- copy[index + 1] = value
594
- return copy
595
- end
596
-
597
- local function __TS__New(target, ...)
598
- local instance = setmetatable({}, target.prototype)
599
- instance:____constructor(...)
600
- return instance
601
- end
602
-
603
25
  local function __TS__InstanceOf(obj, classTbl)
604
26
  if type(classTbl) ~= "table" then
605
27
  error("Right-hand side of 'instanceof' is not an object", 0)
@@ -791,65 +213,66 @@ do
791
213
  end
792
214
  end
793
215
 
794
- local __TS__AsyncAwaiter, __TS__Await
216
+ local __TS__StringSplit
795
217
  do
796
- local ____coroutine = _G.coroutine or ({})
797
- local cocreate = ____coroutine.create
798
- local coresume = ____coroutine.resume
799
- local costatus = ____coroutine.status
800
- local coyield = ____coroutine.yield
801
- function __TS__AsyncAwaiter(generator)
802
- return __TS__New(
803
- __TS__Promise,
804
- function(____, resolve, reject)
805
- local fulfilled, step, resolved, asyncCoroutine
806
- function fulfilled(self, value)
807
- local success, resultOrError = coresume(asyncCoroutine, value)
808
- if success then
809
- return step(resultOrError)
810
- end
811
- return reject(nil, resultOrError)
812
- end
813
- function step(result)
814
- if resolved then
815
- return
816
- end
817
- if costatus(asyncCoroutine) == "dead" then
818
- return resolve(nil, result)
819
- end
820
- return __TS__Promise.resolve(result):addCallbacks(fulfilled, reject)
821
- end
822
- resolved = false
823
- asyncCoroutine = cocreate(generator)
824
- local success, resultOrError = coresume(
825
- asyncCoroutine,
826
- function(____, v)
827
- resolved = true
828
- return __TS__Promise.resolve(v):addCallbacks(resolve, reject)
829
- end
830
- )
831
- if success then
832
- return step(resultOrError)
833
- else
834
- return reject(nil, resultOrError)
218
+ local sub = string.sub
219
+ local find = string.find
220
+ function __TS__StringSplit(source, separator, limit)
221
+ if limit == nil then
222
+ limit = 4294967295
223
+ end
224
+ if limit == 0 then
225
+ return {}
226
+ end
227
+ local result = {}
228
+ local resultIndex = 1
229
+ if separator == nil or separator == "" then
230
+ for i = 1, #source do
231
+ result[resultIndex] = sub(source, i, i)
232
+ resultIndex = resultIndex + 1
233
+ end
234
+ else
235
+ local currentPos = 1
236
+ while resultIndex <= limit do
237
+ local startPos, endPos = find(source, separator, currentPos, true)
238
+ if not startPos then
239
+ break
835
240
  end
241
+ result[resultIndex] = sub(source, currentPos, startPos - 1)
242
+ resultIndex = resultIndex + 1
243
+ currentPos = endPos + 1
836
244
  end
837
- )
838
- end
839
- function __TS__Await(thing)
840
- return coyield(thing)
245
+ if resultIndex <= limit then
246
+ result[resultIndex] = sub(source, currentPos)
247
+ end
248
+ end
249
+ return result
841
250
  end
842
251
  end
843
252
 
844
- local function __TS__ClassExtends(target, base)
845
- target.____super = base
846
- local staticMetatable = setmetatable({__index = base}, base)
847
- setmetatable(target, staticMetatable)
848
- local baseMetatable = getmetatable(base)
849
- if baseMetatable then
850
- if type(baseMetatable.__index) == "function" then
851
- staticMetatable.__index = baseMetatable.__index
852
- end
253
+ local function __TS__ArrayIsArray(value)
254
+ return type(value) == "table" and (value[1] ~= nil or next(value) == nil)
255
+ end
256
+
257
+ local function __TS__StringIncludes(self, searchString, position)
258
+ if not position then
259
+ position = 1
260
+ else
261
+ position = position + 1
262
+ end
263
+ local index = string.find(self, searchString, position, true)
264
+ return index ~= nil
265
+ end
266
+
267
+ local function __TS__ClassExtends(target, base)
268
+ target.____super = base
269
+ local staticMetatable = setmetatable({__index = base}, base)
270
+ setmetatable(target, staticMetatable)
271
+ local baseMetatable = getmetatable(base)
272
+ if baseMetatable then
273
+ if type(baseMetatable.__index) == "function" then
274
+ staticMetatable.__index = baseMetatable.__index
275
+ end
853
276
  if type(baseMetatable.__newindex) == "function" then
854
277
  staticMetatable.__newindex = baseMetatable.__newindex
855
278
  end
@@ -866,238 +289,6 @@ local function __TS__ClassExtends(target, base)
866
289
  end
867
290
  end
868
291
 
869
- local function __TS__CloneDescriptor(____bindingPattern0)
870
- local value
871
- local writable
872
- local set
873
- local get
874
- local configurable
875
- local enumerable
876
- enumerable = ____bindingPattern0.enumerable
877
- configurable = ____bindingPattern0.configurable
878
- get = ____bindingPattern0.get
879
- set = ____bindingPattern0.set
880
- writable = ____bindingPattern0.writable
881
- value = ____bindingPattern0.value
882
- local descriptor = {enumerable = enumerable == true, configurable = configurable == true}
883
- local hasGetterOrSetter = get ~= nil or set ~= nil
884
- local hasValueOrWritableAttribute = writable ~= nil or value ~= nil
885
- if hasGetterOrSetter and hasValueOrWritableAttribute then
886
- error("Invalid property descriptor. Cannot both specify accessors and a value or writable attribute.", 0)
887
- end
888
- if get or set then
889
- descriptor.get = get
890
- descriptor.set = set
891
- else
892
- descriptor.value = value
893
- descriptor.writable = writable == true
894
- end
895
- return descriptor
896
- end
897
-
898
- local function __TS__Decorate(self, originalValue, decorators, context)
899
- local result = originalValue
900
- do
901
- local i = #decorators
902
- while i >= 0 do
903
- local decorator = decorators[i + 1]
904
- if decorator ~= nil then
905
- local ____decorator_result_0 = decorator(self, result, context)
906
- if ____decorator_result_0 == nil then
907
- ____decorator_result_0 = result
908
- end
909
- result = ____decorator_result_0
910
- end
911
- i = i - 1
912
- end
913
- end
914
- return result
915
- end
916
-
917
- local function __TS__ObjectAssign(target, ...)
918
- local sources = {...}
919
- for i = 1, #sources do
920
- local source = sources[i]
921
- if type(source) == "table" then
922
- for key in pairs(source) do
923
- target[key] = source[key]
924
- end
925
- end
926
- end
927
- return target
928
- end
929
-
930
- local function __TS__ObjectGetOwnPropertyDescriptor(object, key)
931
- local metatable = getmetatable(object)
932
- if not metatable then
933
- return
934
- end
935
- if not rawget(metatable, "_descriptors") then
936
- return
937
- end
938
- return rawget(metatable, "_descriptors")[key]
939
- end
940
-
941
- local __TS__DescriptorGet
942
- do
943
- local getmetatable = _G.getmetatable
944
- local ____rawget = _G.rawget
945
- function __TS__DescriptorGet(self, metatable, key)
946
- while metatable do
947
- local rawResult = ____rawget(metatable, key)
948
- if rawResult ~= nil then
949
- return rawResult
950
- end
951
- local descriptors = ____rawget(metatable, "_descriptors")
952
- if descriptors then
953
- local descriptor = descriptors[key]
954
- if descriptor ~= nil then
955
- if descriptor.get then
956
- return descriptor.get(self)
957
- end
958
- return descriptor.value
959
- end
960
- end
961
- metatable = getmetatable(metatable)
962
- end
963
- end
964
- end
965
-
966
- local __TS__DescriptorSet
967
- do
968
- local getmetatable = _G.getmetatable
969
- local ____rawget = _G.rawget
970
- local rawset = _G.rawset
971
- function __TS__DescriptorSet(self, metatable, key, value)
972
- while metatable do
973
- local descriptors = ____rawget(metatable, "_descriptors")
974
- if descriptors then
975
- local descriptor = descriptors[key]
976
- if descriptor ~= nil then
977
- if descriptor.set then
978
- descriptor.set(self, value)
979
- else
980
- if descriptor.writable == false then
981
- error(
982
- ((("Cannot assign to read only property '" .. key) .. "' of object '") .. tostring(self)) .. "'",
983
- 0
984
- )
985
- end
986
- descriptor.value = value
987
- end
988
- return
989
- end
990
- end
991
- metatable = getmetatable(metatable)
992
- end
993
- rawset(self, key, value)
994
- end
995
- end
996
-
997
- local __TS__SetDescriptor
998
- do
999
- local getmetatable = _G.getmetatable
1000
- local function descriptorIndex(self, key)
1001
- return __TS__DescriptorGet(
1002
- self,
1003
- getmetatable(self),
1004
- key
1005
- )
1006
- end
1007
- local function descriptorNewIndex(self, key, value)
1008
- return __TS__DescriptorSet(
1009
- self,
1010
- getmetatable(self),
1011
- key,
1012
- value
1013
- )
1014
- end
1015
- function __TS__SetDescriptor(target, key, desc, isPrototype)
1016
- if isPrototype == nil then
1017
- isPrototype = false
1018
- end
1019
- local ____isPrototype_0
1020
- if isPrototype then
1021
- ____isPrototype_0 = target
1022
- else
1023
- ____isPrototype_0 = getmetatable(target)
1024
- end
1025
- local metatable = ____isPrototype_0
1026
- if not metatable then
1027
- metatable = {}
1028
- setmetatable(target, metatable)
1029
- end
1030
- if not isPrototype and not rawget(metatable, "_isOwnDescriptorMetatable") then
1031
- local instanceMetatable = {}
1032
- instanceMetatable._isOwnDescriptorMetatable = true
1033
- setmetatable(instanceMetatable, metatable)
1034
- setmetatable(target, instanceMetatable)
1035
- metatable = instanceMetatable
1036
- end
1037
- local value = rawget(target, key)
1038
- if value ~= nil then
1039
- rawset(target, key, nil)
1040
- end
1041
- if not rawget(metatable, "_descriptors") then
1042
- metatable._descriptors = {}
1043
- end
1044
- metatable._descriptors[key] = __TS__CloneDescriptor(desc)
1045
- metatable.__index = descriptorIndex
1046
- metatable.__newindex = descriptorNewIndex
1047
- end
1048
- end
1049
-
1050
- local function __TS__DecorateLegacy(decorators, target, key, desc)
1051
- local result = target
1052
- do
1053
- local i = #decorators
1054
- while i >= 0 do
1055
- local decorator = decorators[i + 1]
1056
- if decorator ~= nil then
1057
- local oldResult = result
1058
- if key == nil then
1059
- result = decorator(nil, result)
1060
- elseif desc == true then
1061
- local value = rawget(target, key)
1062
- local descriptor = __TS__ObjectGetOwnPropertyDescriptor(target, key) or ({configurable = true, writable = true, value = value})
1063
- local desc = decorator(nil, target, key, descriptor) or descriptor
1064
- local isSimpleValue = desc.configurable == true and desc.writable == true and not desc.get and not desc.set
1065
- if isSimpleValue then
1066
- rawset(target, key, desc.value)
1067
- else
1068
- __TS__SetDescriptor(
1069
- target,
1070
- key,
1071
- __TS__ObjectAssign({}, descriptor, desc)
1072
- )
1073
- end
1074
- elseif desc == false then
1075
- result = decorator(nil, target, key, desc)
1076
- else
1077
- result = decorator(nil, target, key)
1078
- end
1079
- result = result or oldResult
1080
- end
1081
- i = i - 1
1082
- end
1083
- end
1084
- return result
1085
- end
1086
-
1087
- local function __TS__DecorateParam(paramIndex, decorator)
1088
- return function(____, target, key) return decorator(nil, target, key, paramIndex) end
1089
- end
1090
-
1091
- local function __TS__StringIncludes(self, searchString, position)
1092
- if not position then
1093
- position = 1
1094
- else
1095
- position = position + 1
1096
- end
1097
- local index = string.find(self, searchString, position, true)
1098
- return index ~= nil
1099
- end
1100
-
1101
292
  local Error, RangeError, ReferenceError, SyntaxError, TypeError, URIError
1102
293
  do
1103
294
  local function getErrorStack(self, constructor)
@@ -1183,1622 +374,16 @@ do
1183
374
  URIError = createErrorClass(nil, "URIError")
1184
375
  end
1185
376
 
1186
- local function __TS__ObjectGetOwnPropertyDescriptors(object)
1187
- local metatable = getmetatable(object)
1188
- if not metatable then
1189
- return {}
1190
- end
1191
- return rawget(metatable, "_descriptors") or ({})
1192
- end
1193
-
1194
- local function __TS__Delete(target, key)
1195
- local descriptors = __TS__ObjectGetOwnPropertyDescriptors(target)
1196
- local descriptor = descriptors[key]
1197
- if descriptor then
1198
- if not descriptor.configurable then
1199
- error(
1200
- __TS__New(
1201
- TypeError,
1202
- ((("Cannot delete property " .. tostring(key)) .. " of ") .. tostring(target)) .. "."
1203
- ),
1204
- 0
1205
- )
1206
- end
1207
- descriptors[key] = nil
1208
- return true
1209
- end
1210
- target[key] = nil
1211
- return true
1212
- end
1213
-
1214
- local function __TS__StringAccess(self, index)
1215
- if index >= 0 and index < #self then
1216
- return string.sub(self, index + 1, index + 1)
1217
- end
1218
- end
1219
-
1220
- local function __TS__DelegatedYield(iterable)
1221
- if type(iterable) == "string" then
1222
- for index = 0, #iterable - 1 do
1223
- coroutine.yield(__TS__StringAccess(iterable, index))
1224
- end
1225
- elseif iterable.____coroutine ~= nil then
1226
- local co = iterable.____coroutine
1227
- while true do
1228
- local status, value = coroutine.resume(co)
1229
- if not status then
1230
- error(value, 0)
1231
- end
1232
- if coroutine.status(co) == "dead" then
1233
- return value
1234
- else
1235
- coroutine.yield(value)
1236
- end
1237
- end
1238
- elseif iterable[Symbol.iterator] then
1239
- local iterator = iterable[Symbol.iterator](iterable)
1240
- while true do
1241
- local result = iterator:next()
1242
- if result.done then
1243
- return result.value
1244
- else
1245
- coroutine.yield(result.value)
1246
- end
1247
- end
1248
- else
1249
- for ____, value in ipairs(iterable) do
1250
- coroutine.yield(value)
1251
- end
1252
- end
1253
- end
1254
-
1255
- local function __TS__FunctionBind(fn, ...)
1256
- local boundArgs = {...}
1257
- return function(____, ...)
1258
- local args = {...}
1259
- __TS__ArrayUnshift(
1260
- args,
1261
- __TS__Unpack(boundArgs)
1262
- )
1263
- return fn(__TS__Unpack(args))
1264
- end
1265
- end
1266
-
1267
- local __TS__Generator
1268
- do
1269
- local function generatorIterator(self)
1270
- return self
1271
- end
1272
- local function generatorNext(self, ...)
1273
- local co = self.____coroutine
1274
- if coroutine.status(co) == "dead" then
1275
- return {done = true}
1276
- end
1277
- local status, value = coroutine.resume(co, ...)
1278
- if not status then
1279
- error(value, 0)
1280
- end
1281
- return {
1282
- value = value,
1283
- done = coroutine.status(co) == "dead"
1284
- }
1285
- end
1286
- function __TS__Generator(fn)
1287
- return function(...)
1288
- local args = {...}
1289
- local argsLength = __TS__CountVarargs(...)
1290
- return {
1291
- ____coroutine = coroutine.create(function() return fn(__TS__Unpack(args, 1, argsLength)) end),
1292
- [Symbol.iterator] = generatorIterator,
1293
- next = generatorNext
1294
- }
1295
- end
1296
- end
1297
- end
1298
-
1299
- local function __TS__InstanceOfObject(value)
1300
- local valueType = type(value)
1301
- return valueType == "table" or valueType == "function"
1302
- end
1303
-
1304
- local function __TS__LuaIteratorSpread(self, state, firstKey)
1305
- local results = {}
1306
- local key, value = self(state, firstKey)
1307
- while key do
1308
- results[#results + 1] = {key, value}
1309
- key, value = self(state, key)
1310
- end
1311
- return __TS__Unpack(results)
1312
- end
1313
-
1314
- local Map
1315
- do
1316
- Map = __TS__Class()
1317
- Map.name = "Map"
1318
- function Map.prototype.____constructor(self, entries)
1319
- self[Symbol.toStringTag] = "Map"
1320
- self.items = {}
1321
- self.size = 0
1322
- self.nextKey = {}
1323
- self.previousKey = {}
1324
- if entries == nil then
1325
- return
1326
- end
1327
- local iterable = entries
1328
- if iterable[Symbol.iterator] then
1329
- local iterator = iterable[Symbol.iterator](iterable)
1330
- while true do
1331
- local result = iterator:next()
1332
- if result.done then
1333
- break
1334
- end
1335
- local value = result.value
1336
- self:set(value[1], value[2])
1337
- end
1338
- else
1339
- local array = entries
1340
- for ____, kvp in ipairs(array) do
1341
- self:set(kvp[1], kvp[2])
1342
- end
1343
- end
1344
- end
1345
- function Map.prototype.clear(self)
1346
- self.items = {}
1347
- self.nextKey = {}
1348
- self.previousKey = {}
1349
- self.firstKey = nil
1350
- self.lastKey = nil
1351
- self.size = 0
1352
- end
1353
- function Map.prototype.delete(self, key)
1354
- local contains = self:has(key)
1355
- if contains then
1356
- self.size = self.size - 1
1357
- local next = self.nextKey[key]
1358
- local previous = self.previousKey[key]
1359
- if next ~= nil and previous ~= nil then
1360
- self.nextKey[previous] = next
1361
- self.previousKey[next] = previous
1362
- elseif next ~= nil then
1363
- self.firstKey = next
1364
- self.previousKey[next] = nil
1365
- elseif previous ~= nil then
1366
- self.lastKey = previous
1367
- self.nextKey[previous] = nil
1368
- else
1369
- self.firstKey = nil
1370
- self.lastKey = nil
1371
- end
1372
- self.nextKey[key] = nil
1373
- self.previousKey[key] = nil
1374
- end
1375
- self.items[key] = nil
1376
- return contains
1377
- end
1378
- function Map.prototype.forEach(self, callback)
1379
- for ____, key in __TS__Iterator(self:keys()) do
1380
- callback(nil, self.items[key], key, self)
1381
- end
1382
- end
1383
- function Map.prototype.get(self, key)
1384
- return self.items[key]
1385
- end
1386
- function Map.prototype.has(self, key)
1387
- return self.nextKey[key] ~= nil or self.lastKey == key
1388
- end
1389
- function Map.prototype.set(self, key, value)
1390
- local isNewValue = not self:has(key)
1391
- if isNewValue then
1392
- self.size = self.size + 1
1393
- end
1394
- self.items[key] = value
1395
- if self.firstKey == nil then
1396
- self.firstKey = key
1397
- self.lastKey = key
1398
- elseif isNewValue then
1399
- self.nextKey[self.lastKey] = key
1400
- self.previousKey[key] = self.lastKey
1401
- self.lastKey = key
1402
- end
1403
- return self
1404
- end
1405
- Map.prototype[Symbol.iterator] = function(self)
1406
- return self:entries()
1407
- end
1408
- function Map.prototype.entries(self)
1409
- local function getFirstKey()
1410
- return self.firstKey
1411
- end
1412
- local items = self.items
1413
- local nextKey = self.nextKey
1414
- local key
1415
- local started = false
1416
- return {
1417
- [Symbol.iterator] = function(self)
1418
- return self
1419
- end,
1420
- next = function(self)
1421
- if not started then
1422
- started = true
1423
- key = getFirstKey(nil)
1424
- else
1425
- key = nextKey[key]
1426
- end
1427
- return {done = not key, value = {key, items[key]}}
1428
- end
1429
- }
1430
- end
1431
- function Map.prototype.keys(self)
1432
- local function getFirstKey()
1433
- return self.firstKey
1434
- end
1435
- local nextKey = self.nextKey
1436
- local key
1437
- local started = false
1438
- return {
1439
- [Symbol.iterator] = function(self)
1440
- return self
1441
- end,
1442
- next = function(self)
1443
- if not started then
1444
- started = true
1445
- key = getFirstKey(nil)
1446
- else
1447
- key = nextKey[key]
1448
- end
1449
- return {done = not key, value = key}
1450
- end
1451
- }
1452
- end
1453
- function Map.prototype.values(self)
1454
- local function getFirstKey()
1455
- return self.firstKey
1456
- end
1457
- local items = self.items
1458
- local nextKey = self.nextKey
1459
- local key
1460
- local started = false
1461
- return {
1462
- [Symbol.iterator] = function(self)
1463
- return self
1464
- end,
1465
- next = function(self)
1466
- if not started then
1467
- started = true
1468
- key = getFirstKey(nil)
1469
- else
1470
- key = nextKey[key]
1471
- end
1472
- return {done = not key, value = items[key]}
1473
- end
1474
- }
1475
- end
1476
- Map[Symbol.species] = Map
1477
- end
1478
-
1479
- local function __TS__MapGroupBy(items, keySelector)
1480
- local result = __TS__New(Map)
1481
- local i = 0
1482
- for ____, item in __TS__Iterator(items) do
1483
- local key = keySelector(nil, item, i)
1484
- if result:has(key) then
1485
- local ____temp_0 = result:get(key)
1486
- ____temp_0[#____temp_0 + 1] = item
1487
- else
1488
- result:set(key, {item})
1489
- end
1490
- i = i + 1
1491
- end
1492
- return result
1493
- end
1494
-
1495
- local __TS__Match = string.match
1496
-
1497
- local __TS__MathAtan2 = math.atan2 or math.atan
1498
-
1499
- local __TS__MathModf = math.modf
1500
-
1501
- local function __TS__NumberIsNaN(value)
1502
- return value ~= value
1503
- end
1504
-
1505
- local function __TS__MathSign(val)
1506
- if __TS__NumberIsNaN(val) or val == 0 then
1507
- return val
1508
- end
1509
- if val < 0 then
1510
- return -1
1511
- end
1512
- return 1
1513
- end
1514
-
1515
- local function __TS__NumberIsFinite(value)
1516
- return type(value) == "number" and value == value and value ~= math.huge and value ~= -math.huge
1517
- end
1518
-
1519
- local function __TS__MathTrunc(val)
1520
- if not __TS__NumberIsFinite(val) or val == 0 then
1521
- return val
1522
- end
1523
- return val > 0 and math.floor(val) or math.ceil(val)
1524
- end
1525
-
1526
- local function __TS__Number(value)
1527
- local valueType = type(value)
1528
- if valueType == "number" then
1529
- return value
1530
- elseif valueType == "string" then
1531
- local numberValue = tonumber(value)
1532
- if numberValue then
1533
- return numberValue
1534
- end
1535
- if value == "Infinity" then
1536
- return math.huge
1537
- end
1538
- if value == "-Infinity" then
1539
- return -math.huge
1540
- end
1541
- local stringWithoutSpaces = string.gsub(value, "%s", "")
1542
- if stringWithoutSpaces == "" then
1543
- return 0
1544
- end
1545
- return 0 / 0
1546
- elseif valueType == "boolean" then
1547
- return value and 1 or 0
1548
- else
1549
- return 0 / 0
1550
- end
1551
- end
1552
-
1553
- local function __TS__NumberIsInteger(value)
1554
- return __TS__NumberIsFinite(value) and math.floor(value) == value
1555
- end
1556
-
1557
- local function __TS__StringSubstring(self, start, ____end)
1558
- if ____end ~= ____end then
1559
- ____end = 0
1560
- end
1561
- if ____end ~= nil and start > ____end then
1562
- start, ____end = ____end, start
1563
- end
1564
- if start >= 0 then
1565
- start = start + 1
1566
- else
1567
- start = 1
1568
- end
1569
- if ____end ~= nil and ____end < 0 then
1570
- ____end = 0
1571
- end
1572
- return string.sub(self, start, ____end)
1573
- end
1574
-
1575
- local __TS__ParseInt
1576
- do
1577
- local parseIntBasePattern = "0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTvVwWxXyYzZ"
1578
- function __TS__ParseInt(numberString, base)
1579
- if base == nil then
1580
- base = 10
1581
- local hexMatch = __TS__Match(numberString, "^%s*-?0[xX]")
1582
- if hexMatch ~= nil then
1583
- base = 16
1584
- numberString = (__TS__Match(hexMatch, "-")) and "-" .. __TS__StringSubstring(numberString, #hexMatch) or __TS__StringSubstring(numberString, #hexMatch)
1585
- end
1586
- end
1587
- if base < 2 or base > 36 then
1588
- return 0 / 0
1589
- end
1590
- local allowedDigits = base <= 10 and __TS__StringSubstring(parseIntBasePattern, 0, base) or __TS__StringSubstring(parseIntBasePattern, 0, 10 + 2 * (base - 10))
1591
- local pattern = ("^%s*(-?[" .. allowedDigits) .. "]*)"
1592
- local number = tonumber((__TS__Match(numberString, pattern)), base)
1593
- if number == nil then
1594
- return 0 / 0
1595
- end
1596
- if number >= 0 then
1597
- return math.floor(number)
1598
- else
1599
- return math.ceil(number)
1600
- end
1601
- end
1602
- end
1603
-
1604
- local function __TS__ParseFloat(numberString)
1605
- local infinityMatch = __TS__Match(numberString, "^%s*(-?Infinity)")
1606
- if infinityMatch ~= nil then
1607
- return __TS__StringAccess(infinityMatch, 0) == "-" and -math.huge or math.huge
1608
- end
1609
- local number = tonumber((__TS__Match(numberString, "^%s*(-?%d+%.?%d*)")))
1610
- return number or 0 / 0
1611
- end
1612
-
1613
- local __TS__NumberToString
1614
- do
1615
- local radixChars = "0123456789abcdefghijklmnopqrstuvwxyz"
1616
- function __TS__NumberToString(self, radix)
1617
- if radix == nil or radix == 10 or self == math.huge or self == -math.huge or self ~= self then
1618
- return tostring(self)
1619
- end
1620
- radix = math.floor(radix)
1621
- if radix < 2 or radix > 36 then
1622
- error("toString() radix argument must be between 2 and 36", 0)
1623
- end
1624
- local integer, fraction = __TS__MathModf(math.abs(self))
1625
- local result = ""
1626
- if radix == 8 then
1627
- result = string.format("%o", integer)
1628
- elseif radix == 16 then
1629
- result = string.format("%x", integer)
1630
- else
1631
- repeat
1632
- do
1633
- result = __TS__StringAccess(radixChars, integer % radix) .. result
1634
- integer = math.floor(integer / radix)
1635
- end
1636
- until not (integer ~= 0)
1637
- end
1638
- if fraction ~= 0 then
1639
- result = result .. "."
1640
- local delta = 1e-16
1641
- repeat
1642
- do
1643
- fraction = fraction * radix
1644
- delta = delta * radix
1645
- local digit = math.floor(fraction)
1646
- result = result .. __TS__StringAccess(radixChars, digit)
1647
- fraction = fraction - digit
1648
- end
1649
- until not (fraction >= delta)
1650
- end
1651
- if self < 0 then
1652
- result = "-" .. result
1653
- end
1654
- return result
1655
- end
1656
- end
1657
-
1658
- local function __TS__NumberToFixed(self, fractionDigits)
1659
- if math.abs(self) >= 1e+21 or self ~= self then
1660
- return tostring(self)
1661
- end
1662
- local f = math.floor(fractionDigits or 0)
1663
- if f < 0 or f > 99 then
1664
- error("toFixed() digits argument must be between 0 and 99", 0)
1665
- end
1666
- return string.format(
1667
- ("%." .. tostring(f)) .. "f",
1668
- self
1669
- )
1670
- end
1671
-
1672
- local function __TS__ObjectDefineProperty(target, key, desc)
1673
- local luaKey = type(key) == "number" and key + 1 or key
1674
- local value = rawget(target, luaKey)
1675
- local hasGetterOrSetter = desc.get ~= nil or desc.set ~= nil
1676
- local descriptor
1677
- if hasGetterOrSetter then
1678
- if value ~= nil then
1679
- error(
1680
- "Cannot redefine property: " .. tostring(key),
1681
- 0
1682
- )
1683
- end
1684
- descriptor = desc
1685
- else
1686
- local valueExists = value ~= nil
1687
- local ____desc_set_4 = desc.set
1688
- local ____desc_get_5 = desc.get
1689
- local ____desc_configurable_0 = desc.configurable
1690
- if ____desc_configurable_0 == nil then
1691
- ____desc_configurable_0 = valueExists
1692
- end
1693
- local ____desc_enumerable_1 = desc.enumerable
1694
- if ____desc_enumerable_1 == nil then
1695
- ____desc_enumerable_1 = valueExists
1696
- end
1697
- local ____desc_writable_2 = desc.writable
1698
- if ____desc_writable_2 == nil then
1699
- ____desc_writable_2 = valueExists
1700
- end
1701
- local ____temp_3
1702
- if desc.value ~= nil then
1703
- ____temp_3 = desc.value
1704
- else
1705
- ____temp_3 = value
1706
- end
1707
- descriptor = {
1708
- set = ____desc_set_4,
1709
- get = ____desc_get_5,
1710
- configurable = ____desc_configurable_0,
1711
- enumerable = ____desc_enumerable_1,
1712
- writable = ____desc_writable_2,
1713
- value = ____temp_3
1714
- }
1715
- end
1716
- __TS__SetDescriptor(target, luaKey, descriptor)
1717
- return target
1718
- end
1719
-
1720
- local function __TS__ObjectEntries(obj)
1721
- local result = {}
1722
- local len = 0
1723
- for key in pairs(obj) do
1724
- len = len + 1
1725
- result[len] = {key, obj[key]}
1726
- end
1727
- return result
1728
- end
1729
-
1730
- local function __TS__ObjectFromEntries(entries)
1731
- local obj = {}
1732
- local iterable = entries
1733
- if iterable[Symbol.iterator] then
1734
- local iterator = iterable[Symbol.iterator](iterable)
1735
- while true do
1736
- local result = iterator:next()
1737
- if result.done then
1738
- break
1739
- end
1740
- local value = result.value
1741
- obj[value[1]] = value[2]
1742
- end
1743
- else
1744
- for ____, entry in ipairs(entries) do
1745
- obj[entry[1]] = entry[2]
1746
- end
1747
- end
1748
- return obj
1749
- end
1750
-
1751
- local function __TS__ObjectGroupBy(items, keySelector)
1752
- local result = {}
1753
- local i = 0
1754
- for ____, item in __TS__Iterator(items) do
1755
- local key = keySelector(nil, item, i)
1756
- if result[key] ~= nil then
1757
- local ____result_key_0 = result[key]
1758
- ____result_key_0[#____result_key_0 + 1] = item
1759
- else
1760
- result[key] = {item}
1761
- end
1762
- i = i + 1
1763
- end
1764
- return result
1765
- end
1766
-
1767
- local function __TS__ObjectKeys(obj)
1768
- local result = {}
1769
- local len = 0
1770
- for key in pairs(obj) do
1771
- len = len + 1
1772
- result[len] = key
1773
- end
1774
- return result
1775
- end
1776
-
1777
- local function __TS__ObjectRest(target, usedProperties)
1778
- local result = {}
1779
- for property in pairs(target) do
1780
- if not usedProperties[property] then
1781
- result[property] = target[property]
1782
- end
1783
- end
1784
- return result
1785
- end
1786
-
1787
- local function __TS__ObjectValues(obj)
1788
- local result = {}
1789
- local len = 0
1790
- for key in pairs(obj) do
1791
- len = len + 1
1792
- result[len] = obj[key]
1793
- end
1794
- return result
1795
- end
1796
-
1797
- local function __TS__PromiseAll(iterable)
1798
- local results = {}
1799
- local toResolve = {}
1800
- local numToResolve = 0
1801
- local i = 0
1802
- for ____, item in __TS__Iterator(iterable) do
1803
- if __TS__InstanceOf(item, __TS__Promise) then
1804
- if item.state == 1 then
1805
- results[i + 1] = item.value
1806
- elseif item.state == 2 then
1807
- return __TS__Promise.reject(item.rejectionReason)
1808
- else
1809
- numToResolve = numToResolve + 1
1810
- toResolve[i] = item
1811
- end
1812
- else
1813
- results[i + 1] = item
1814
- end
1815
- i = i + 1
1816
- end
1817
- if numToResolve == 0 then
1818
- return __TS__Promise.resolve(results)
1819
- end
1820
- return __TS__New(
1821
- __TS__Promise,
1822
- function(____, resolve, reject)
1823
- for index, promise in pairs(toResolve) do
1824
- promise["then"](
1825
- promise,
1826
- function(____, data)
1827
- results[index + 1] = data
1828
- numToResolve = numToResolve - 1
1829
- if numToResolve == 0 then
1830
- resolve(nil, results)
1831
- end
1832
- end,
1833
- function(____, reason)
1834
- reject(nil, reason)
1835
- end
1836
- )
1837
- end
1838
- end
1839
- )
1840
- end
1841
-
1842
- local function __TS__PromiseAllSettled(iterable)
1843
- local results = {}
1844
- local toResolve = {}
1845
- local numToResolve = 0
1846
- local i = 0
1847
- for ____, item in __TS__Iterator(iterable) do
1848
- if __TS__InstanceOf(item, __TS__Promise) then
1849
- if item.state == 1 then
1850
- results[i + 1] = {status = "fulfilled", value = item.value}
1851
- elseif item.state == 2 then
1852
- results[i + 1] = {status = "rejected", reason = item.rejectionReason}
1853
- else
1854
- numToResolve = numToResolve + 1
1855
- toResolve[i] = item
1856
- end
1857
- else
1858
- results[i + 1] = {status = "fulfilled", value = item}
1859
- end
1860
- i = i + 1
1861
- end
1862
- if numToResolve == 0 then
1863
- return __TS__Promise.resolve(results)
1864
- end
1865
- return __TS__New(
1866
- __TS__Promise,
1867
- function(____, resolve)
1868
- for index, promise in pairs(toResolve) do
1869
- promise["then"](
1870
- promise,
1871
- function(____, data)
1872
- results[index + 1] = {status = "fulfilled", value = data}
1873
- numToResolve = numToResolve - 1
1874
- if numToResolve == 0 then
1875
- resolve(nil, results)
1876
- end
1877
- end,
1878
- function(____, reason)
1879
- results[index + 1] = {status = "rejected", reason = reason}
1880
- numToResolve = numToResolve - 1
1881
- if numToResolve == 0 then
1882
- resolve(nil, results)
1883
- end
1884
- end
1885
- )
1886
- end
1887
- end
1888
- )
1889
- end
1890
-
1891
- local function __TS__PromiseAny(iterable)
1892
- local rejections = {}
1893
- local pending = {}
1894
- for ____, item in __TS__Iterator(iterable) do
1895
- if __TS__InstanceOf(item, __TS__Promise) then
1896
- if item.state == 1 then
1897
- return __TS__Promise.resolve(item.value)
1898
- elseif item.state == 2 then
1899
- rejections[#rejections + 1] = item.rejectionReason
1900
- else
1901
- pending[#pending + 1] = item
1902
- end
1903
- else
1904
- return __TS__Promise.resolve(item)
1905
- end
1906
- end
1907
- if #pending == 0 then
1908
- return __TS__Promise.reject("No promises to resolve with .any()")
1909
- end
1910
- local numResolved = 0
1911
- return __TS__New(
1912
- __TS__Promise,
1913
- function(____, resolve, reject)
1914
- for ____, promise in ipairs(pending) do
1915
- promise["then"](
1916
- promise,
1917
- function(____, data)
1918
- resolve(nil, data)
1919
- end,
1920
- function(____, reason)
1921
- rejections[#rejections + 1] = reason
1922
- numResolved = numResolved + 1
1923
- if numResolved == #pending then
1924
- reject(nil, {name = "AggregateError", message = "All Promises rejected", errors = rejections})
1925
- end
1926
- end
1927
- )
1928
- end
1929
- end
1930
- )
1931
- end
1932
-
1933
- local function __TS__PromiseRace(iterable)
1934
- local pending = {}
1935
- for ____, item in __TS__Iterator(iterable) do
1936
- if __TS__InstanceOf(item, __TS__Promise) then
1937
- if item.state == 1 then
1938
- return __TS__Promise.resolve(item.value)
1939
- elseif item.state == 2 then
1940
- return __TS__Promise.reject(item.rejectionReason)
1941
- else
1942
- pending[#pending + 1] = item
1943
- end
1944
- else
1945
- return __TS__Promise.resolve(item)
1946
- end
1947
- end
1948
- return __TS__New(
1949
- __TS__Promise,
1950
- function(____, resolve, reject)
1951
- for ____, promise in ipairs(pending) do
1952
- promise["then"](
1953
- promise,
1954
- function(____, value) return resolve(nil, value) end,
1955
- function(____, reason) return reject(nil, reason) end
1956
- )
1957
- end
1958
- end
1959
- )
1960
- end
1961
-
1962
- local Set
1963
- do
1964
- Set = __TS__Class()
1965
- Set.name = "Set"
1966
- function Set.prototype.____constructor(self, values)
1967
- self[Symbol.toStringTag] = "Set"
1968
- self.size = 0
1969
- self.nextKey = {}
1970
- self.previousKey = {}
1971
- if values == nil then
1972
- return
1973
- end
1974
- local iterable = values
1975
- if iterable[Symbol.iterator] then
1976
- local iterator = iterable[Symbol.iterator](iterable)
1977
- while true do
1978
- local result = iterator:next()
1979
- if result.done then
1980
- break
1981
- end
1982
- self:add(result.value)
1983
- end
1984
- else
1985
- local array = values
1986
- for ____, value in ipairs(array) do
1987
- self:add(value)
1988
- end
1989
- end
1990
- end
1991
- function Set.prototype.add(self, value)
1992
- local isNewValue = not self:has(value)
1993
- if isNewValue then
1994
- self.size = self.size + 1
1995
- end
1996
- if self.firstKey == nil then
1997
- self.firstKey = value
1998
- self.lastKey = value
1999
- elseif isNewValue then
2000
- self.nextKey[self.lastKey] = value
2001
- self.previousKey[value] = self.lastKey
2002
- self.lastKey = value
2003
- end
2004
- return self
2005
- end
2006
- function Set.prototype.clear(self)
2007
- self.nextKey = {}
2008
- self.previousKey = {}
2009
- self.firstKey = nil
2010
- self.lastKey = nil
2011
- self.size = 0
2012
- end
2013
- function Set.prototype.delete(self, value)
2014
- local contains = self:has(value)
2015
- if contains then
2016
- self.size = self.size - 1
2017
- local next = self.nextKey[value]
2018
- local previous = self.previousKey[value]
2019
- if next ~= nil and previous ~= nil then
2020
- self.nextKey[previous] = next
2021
- self.previousKey[next] = previous
2022
- elseif next ~= nil then
2023
- self.firstKey = next
2024
- self.previousKey[next] = nil
2025
- elseif previous ~= nil then
2026
- self.lastKey = previous
2027
- self.nextKey[previous] = nil
2028
- else
2029
- self.firstKey = nil
2030
- self.lastKey = nil
2031
- end
2032
- self.nextKey[value] = nil
2033
- self.previousKey[value] = nil
2034
- end
2035
- return contains
2036
- end
2037
- function Set.prototype.forEach(self, callback)
2038
- for ____, key in __TS__Iterator(self:keys()) do
2039
- callback(nil, key, key, self)
2040
- end
2041
- end
2042
- function Set.prototype.has(self, value)
2043
- return self.nextKey[value] ~= nil or self.lastKey == value
2044
- end
2045
- Set.prototype[Symbol.iterator] = function(self)
2046
- return self:values()
2047
- end
2048
- function Set.prototype.entries(self)
2049
- local function getFirstKey()
2050
- return self.firstKey
2051
- end
2052
- local nextKey = self.nextKey
2053
- local key
2054
- local started = false
2055
- return {
2056
- [Symbol.iterator] = function(self)
2057
- return self
2058
- end,
2059
- next = function(self)
2060
- if not started then
2061
- started = true
2062
- key = getFirstKey(nil)
2063
- else
2064
- key = nextKey[key]
2065
- end
2066
- return {done = not key, value = {key, key}}
2067
- end
2068
- }
2069
- end
2070
- function Set.prototype.keys(self)
2071
- local function getFirstKey()
2072
- return self.firstKey
2073
- end
2074
- local nextKey = self.nextKey
2075
- local key
2076
- local started = false
2077
- return {
2078
- [Symbol.iterator] = function(self)
2079
- return self
2080
- end,
2081
- next = function(self)
2082
- if not started then
2083
- started = true
2084
- key = getFirstKey(nil)
2085
- else
2086
- key = nextKey[key]
2087
- end
2088
- return {done = not key, value = key}
2089
- end
2090
- }
2091
- end
2092
- function Set.prototype.values(self)
2093
- local function getFirstKey()
2094
- return self.firstKey
2095
- end
2096
- local nextKey = self.nextKey
2097
- local key
2098
- local started = false
2099
- return {
2100
- [Symbol.iterator] = function(self)
2101
- return self
2102
- end,
2103
- next = function(self)
2104
- if not started then
2105
- started = true
2106
- key = getFirstKey(nil)
2107
- else
2108
- key = nextKey[key]
2109
- end
2110
- return {done = not key, value = key}
2111
- end
2112
- }
2113
- end
2114
- function Set.prototype.union(self, other)
2115
- local result = __TS__New(Set, self)
2116
- for ____, item in __TS__Iterator(other) do
2117
- result:add(item)
2118
- end
2119
- return result
2120
- end
2121
- function Set.prototype.intersection(self, other)
2122
- local result = __TS__New(Set)
2123
- for ____, item in __TS__Iterator(self) do
2124
- if other:has(item) then
2125
- result:add(item)
2126
- end
2127
- end
2128
- return result
2129
- end
2130
- function Set.prototype.difference(self, other)
2131
- local result = __TS__New(Set, self)
2132
- for ____, item in __TS__Iterator(other) do
2133
- result:delete(item)
2134
- end
2135
- return result
2136
- end
2137
- function Set.prototype.symmetricDifference(self, other)
2138
- local result = __TS__New(Set, self)
2139
- for ____, item in __TS__Iterator(other) do
2140
- if self:has(item) then
2141
- result:delete(item)
2142
- else
2143
- result:add(item)
2144
- end
2145
- end
2146
- return result
2147
- end
2148
- function Set.prototype.isSubsetOf(self, other)
2149
- for ____, item in __TS__Iterator(self) do
2150
- if not other:has(item) then
2151
- return false
2152
- end
2153
- end
2154
- return true
2155
- end
2156
- function Set.prototype.isSupersetOf(self, other)
2157
- for ____, item in __TS__Iterator(other) do
2158
- if not self:has(item) then
2159
- return false
2160
- end
2161
- end
2162
- return true
2163
- end
2164
- function Set.prototype.isDisjointFrom(self, other)
2165
- for ____, item in __TS__Iterator(self) do
2166
- if other:has(item) then
2167
- return false
2168
- end
2169
- end
2170
- return true
2171
- end
2172
- Set[Symbol.species] = Set
2173
- end
2174
-
2175
- local function __TS__SparseArrayNew(...)
2176
- local sparseArray = {...}
2177
- sparseArray.sparseLength = __TS__CountVarargs(...)
2178
- return sparseArray
2179
- end
2180
-
2181
- local function __TS__SparseArrayPush(sparseArray, ...)
2182
- local args = {...}
2183
- local argsLen = __TS__CountVarargs(...)
2184
- local listLen = sparseArray.sparseLength
2185
- for i = 1, argsLen do
2186
- sparseArray[listLen + i] = args[i]
2187
- end
2188
- sparseArray.sparseLength = listLen + argsLen
2189
- end
2190
-
2191
- local function __TS__SparseArraySpread(sparseArray)
2192
- local _unpack = unpack or table.unpack
2193
- return _unpack(sparseArray, 1, sparseArray.sparseLength)
2194
- end
2195
-
2196
- local WeakMap
2197
- do
2198
- WeakMap = __TS__Class()
2199
- WeakMap.name = "WeakMap"
2200
- function WeakMap.prototype.____constructor(self, entries)
2201
- self[Symbol.toStringTag] = "WeakMap"
2202
- self.items = {}
2203
- setmetatable(self.items, {__mode = "k"})
2204
- if entries == nil then
2205
- return
2206
- end
2207
- local iterable = entries
2208
- if iterable[Symbol.iterator] then
2209
- local iterator = iterable[Symbol.iterator](iterable)
2210
- while true do
2211
- local result = iterator:next()
2212
- if result.done then
2213
- break
2214
- end
2215
- local value = result.value
2216
- self.items[value[1]] = value[2]
2217
- end
2218
- else
2219
- for ____, kvp in ipairs(entries) do
2220
- self.items[kvp[1]] = kvp[2]
2221
- end
2222
- end
2223
- end
2224
- function WeakMap.prototype.delete(self, key)
2225
- local contains = self:has(key)
2226
- self.items[key] = nil
2227
- return contains
2228
- end
2229
- function WeakMap.prototype.get(self, key)
2230
- return self.items[key]
2231
- end
2232
- function WeakMap.prototype.has(self, key)
2233
- return self.items[key] ~= nil
2234
- end
2235
- function WeakMap.prototype.set(self, key, value)
2236
- self.items[key] = value
2237
- return self
2238
- end
2239
- WeakMap[Symbol.species] = WeakMap
2240
- end
2241
-
2242
- local WeakSet
2243
- do
2244
- WeakSet = __TS__Class()
2245
- WeakSet.name = "WeakSet"
2246
- function WeakSet.prototype.____constructor(self, values)
2247
- self[Symbol.toStringTag] = "WeakSet"
2248
- self.items = {}
2249
- setmetatable(self.items, {__mode = "k"})
2250
- if values == nil then
2251
- return
2252
- end
2253
- local iterable = values
2254
- if iterable[Symbol.iterator] then
2255
- local iterator = iterable[Symbol.iterator](iterable)
2256
- while true do
2257
- local result = iterator:next()
2258
- if result.done then
2259
- break
2260
- end
2261
- self.items[result.value] = true
2262
- end
2263
- else
2264
- for ____, value in ipairs(values) do
2265
- self.items[value] = true
2266
- end
2267
- end
2268
- end
2269
- function WeakSet.prototype.add(self, value)
2270
- self.items[value] = true
2271
- return self
2272
- end
2273
- function WeakSet.prototype.delete(self, value)
2274
- local contains = self:has(value)
2275
- self.items[value] = nil
2276
- return contains
2277
- end
2278
- function WeakSet.prototype.has(self, value)
2279
- return self.items[value] == true
2280
- end
2281
- WeakSet[Symbol.species] = WeakSet
2282
- end
2283
-
2284
- local function __TS__SourceMapTraceBack(fileName, sourceMap)
2285
- _G.__TS__sourcemap = _G.__TS__sourcemap or ({})
2286
- _G.__TS__sourcemap[fileName] = sourceMap
2287
- if _G.__TS__originalTraceback == nil then
2288
- local originalTraceback = debug.traceback
2289
- _G.__TS__originalTraceback = originalTraceback
2290
- debug.traceback = function(thread, message, level)
2291
- local trace
2292
- if thread == nil and message == nil and level == nil then
2293
- trace = originalTraceback()
2294
- elseif __TS__StringIncludes(_VERSION, "Lua 5.0") then
2295
- trace = originalTraceback((("[Level " .. tostring(level)) .. "] ") .. tostring(message))
2296
- else
2297
- trace = originalTraceback(thread, message, level)
2298
- end
2299
- if type(trace) ~= "string" then
2300
- return trace
2301
- end
2302
- local function replacer(____, file, srcFile, line)
2303
- local fileSourceMap = _G.__TS__sourcemap[file]
2304
- if fileSourceMap ~= nil and fileSourceMap[line] ~= nil then
2305
- local data = fileSourceMap[line]
2306
- if type(data) == "number" then
2307
- return (srcFile .. ":") .. tostring(data)
2308
- end
2309
- return (data.file .. ":") .. tostring(data.line)
2310
- end
2311
- return (file .. ":") .. line
2312
- end
2313
- local result = string.gsub(
2314
- trace,
2315
- "([^%s<]+)%.lua:(%d+)",
2316
- function(file, line) return replacer(nil, file .. ".lua", file .. ".ts", line) end
2317
- )
2318
- local function stringReplacer(____, file, line)
2319
- local fileSourceMap = _G.__TS__sourcemap[file]
2320
- if fileSourceMap ~= nil and fileSourceMap[line] ~= nil then
2321
- local chunkName = (__TS__Match(file, "%[string \"([^\"]+)\"%]"))
2322
- local sourceName = string.gsub(chunkName, ".lua$", ".ts")
2323
- local data = fileSourceMap[line]
2324
- if type(data) == "number" then
2325
- return (sourceName .. ":") .. tostring(data)
2326
- end
2327
- return (data.file .. ":") .. tostring(data.line)
2328
- end
2329
- return (file .. ":") .. line
2330
- end
2331
- result = string.gsub(
2332
- result,
2333
- "(%[string \"[^\"]+\"%]):(%d+)",
2334
- function(file, line) return stringReplacer(nil, file, line) end
2335
- )
2336
- return result
2337
- end
2338
- end
2339
- end
2340
-
2341
- local function __TS__Spread(iterable)
2342
- local arr = {}
2343
- if type(iterable) == "string" then
2344
- for i = 0, #iterable - 1 do
2345
- arr[i + 1] = __TS__StringAccess(iterable, i)
2346
- end
2347
- else
2348
- local len = 0
2349
- for ____, item in __TS__Iterator(iterable) do
2350
- len = len + 1
2351
- arr[len] = item
2352
- end
2353
- end
2354
- return __TS__Unpack(arr)
2355
- end
2356
-
2357
- local function __TS__StringCharAt(self, pos)
2358
- if pos ~= pos then
2359
- pos = 0
2360
- end
2361
- if pos < 0 then
2362
- return ""
2363
- end
2364
- return string.sub(self, pos + 1, pos + 1)
2365
- end
2366
-
2367
- local function __TS__StringCharCodeAt(self, index)
2368
- if index ~= index then
2369
- index = 0
2370
- end
2371
- if index < 0 then
2372
- return 0 / 0
2373
- end
2374
- return string.byte(self, index + 1) or 0 / 0
2375
- end
2376
-
2377
- local function __TS__StringEndsWith(self, searchString, endPosition)
2378
- if endPosition == nil or endPosition > #self then
2379
- endPosition = #self
2380
- end
2381
- return string.sub(self, endPosition - #searchString + 1, endPosition) == searchString
2382
- end
2383
-
2384
- local function __TS__StringPadEnd(self, maxLength, fillString)
2385
- if fillString == nil then
2386
- fillString = " "
2387
- end
2388
- if maxLength ~= maxLength then
2389
- maxLength = 0
2390
- end
2391
- if maxLength == -math.huge or maxLength == math.huge then
2392
- error("Invalid string length", 0)
2393
- end
2394
- if #self >= maxLength or #fillString == 0 then
2395
- return self
2396
- end
2397
- maxLength = maxLength - #self
2398
- if maxLength > #fillString then
2399
- fillString = fillString .. string.rep(
2400
- fillString,
2401
- math.floor(maxLength / #fillString)
2402
- )
2403
- end
2404
- return self .. string.sub(
2405
- fillString,
2406
- 1,
2407
- math.floor(maxLength)
2408
- )
2409
- end
2410
-
2411
- local function __TS__StringPadStart(self, maxLength, fillString)
2412
- if fillString == nil then
2413
- fillString = " "
2414
- end
2415
- if maxLength ~= maxLength then
2416
- maxLength = 0
2417
- end
2418
- if maxLength == -math.huge or maxLength == math.huge then
2419
- error("Invalid string length", 0)
2420
- end
2421
- if #self >= maxLength or #fillString == 0 then
2422
- return self
2423
- end
2424
- maxLength = maxLength - #self
2425
- if maxLength > #fillString then
2426
- fillString = fillString .. string.rep(
2427
- fillString,
2428
- math.floor(maxLength / #fillString)
2429
- )
2430
- end
2431
- return string.sub(
2432
- fillString,
2433
- 1,
2434
- math.floor(maxLength)
2435
- ) .. self
2436
- end
2437
-
2438
- local __TS__StringReplace
2439
- do
2440
- local sub = string.sub
2441
- function __TS__StringReplace(source, searchValue, replaceValue)
2442
- local startPos, endPos = string.find(source, searchValue, nil, true)
2443
- if not startPos then
2444
- return source
2445
- end
2446
- local before = sub(source, 1, startPos - 1)
2447
- local replacement = type(replaceValue) == "string" and replaceValue or replaceValue(nil, searchValue, startPos - 1, source)
2448
- local after = sub(source, endPos + 1)
2449
- return (before .. replacement) .. after
2450
- end
2451
- end
2452
-
2453
- local __TS__StringSplit
2454
- do
2455
- local sub = string.sub
2456
- local find = string.find
2457
- function __TS__StringSplit(source, separator, limit)
2458
- if limit == nil then
2459
- limit = 4294967295
2460
- end
2461
- if limit == 0 then
2462
- return {}
2463
- end
2464
- local result = {}
2465
- local resultIndex = 1
2466
- if separator == nil or separator == "" then
2467
- for i = 1, #source do
2468
- result[resultIndex] = sub(source, i, i)
2469
- resultIndex = resultIndex + 1
2470
- end
2471
- else
2472
- local currentPos = 1
2473
- while resultIndex <= limit do
2474
- local startPos, endPos = find(source, separator, currentPos, true)
2475
- if not startPos then
2476
- break
2477
- end
2478
- result[resultIndex] = sub(source, currentPos, startPos - 1)
2479
- resultIndex = resultIndex + 1
2480
- currentPos = endPos + 1
2481
- end
2482
- if resultIndex <= limit then
2483
- result[resultIndex] = sub(source, currentPos)
2484
- end
2485
- end
2486
- return result
2487
- end
2488
- end
2489
-
2490
- local __TS__StringReplaceAll
2491
- do
2492
- local sub = string.sub
2493
- local find = string.find
2494
- function __TS__StringReplaceAll(source, searchValue, replaceValue)
2495
- if type(replaceValue) == "string" then
2496
- local concat = table.concat(
2497
- __TS__StringSplit(source, searchValue),
2498
- replaceValue
2499
- )
2500
- if #searchValue == 0 then
2501
- return (replaceValue .. concat) .. replaceValue
2502
- end
2503
- return concat
2504
- end
2505
- local parts = {}
2506
- local partsIndex = 1
2507
- if #searchValue == 0 then
2508
- parts[1] = replaceValue(nil, "", 0, source)
2509
- partsIndex = 2
2510
- for i = 1, #source do
2511
- parts[partsIndex] = sub(source, i, i)
2512
- parts[partsIndex + 1] = replaceValue(nil, "", i, source)
2513
- partsIndex = partsIndex + 2
2514
- end
2515
- else
2516
- local currentPos = 1
2517
- while true do
2518
- local startPos, endPos = find(source, searchValue, currentPos, true)
2519
- if not startPos then
2520
- break
2521
- end
2522
- parts[partsIndex] = sub(source, currentPos, startPos - 1)
2523
- parts[partsIndex + 1] = replaceValue(nil, searchValue, startPos - 1, source)
2524
- partsIndex = partsIndex + 2
2525
- currentPos = endPos + 1
2526
- end
2527
- parts[partsIndex] = sub(source, currentPos)
2528
- end
2529
- return table.concat(parts)
2530
- end
2531
- end
2532
-
2533
- local function __TS__StringSlice(self, start, ____end)
2534
- if start == nil or start ~= start then
2535
- start = 0
2536
- end
2537
- if ____end ~= ____end then
2538
- ____end = 0
2539
- end
2540
- if start >= 0 then
2541
- start = start + 1
2542
- end
2543
- if ____end ~= nil and ____end < 0 then
2544
- ____end = ____end - 1
2545
- end
2546
- return string.sub(self, start, ____end)
2547
- end
2548
-
2549
- local function __TS__StringStartsWith(self, searchString, position)
2550
- if position == nil or position < 0 then
2551
- position = 0
2552
- end
2553
- return string.sub(self, position + 1, #searchString + position) == searchString
2554
- end
2555
-
2556
- local function __TS__StringSubstr(self, from, length)
2557
- if from ~= from then
2558
- from = 0
2559
- end
2560
- if length ~= nil then
2561
- if length ~= length or length <= 0 then
2562
- return ""
2563
- end
2564
- length = length + from
2565
- end
2566
- if from >= 0 then
2567
- from = from + 1
2568
- end
2569
- return string.sub(self, from, length)
2570
- end
2571
-
2572
- local function __TS__StringTrim(self)
2573
- local result = string.gsub(self, "^[%s ]*(.-)[%s ]*$", "%1")
2574
- return result
2575
- end
2576
-
2577
- local function __TS__StringTrimEnd(self)
2578
- local result = string.gsub(self, "[%s ]*$", "")
2579
- return result
2580
- end
2581
-
2582
- local function __TS__StringTrimStart(self)
2583
- local result = string.gsub(self, "^[%s ]*", "")
2584
- return result
2585
- end
2586
-
2587
- local __TS__SymbolRegistryFor, __TS__SymbolRegistryKeyFor
2588
- do
2589
- local symbolRegistry = {}
2590
- function __TS__SymbolRegistryFor(key)
2591
- if not symbolRegistry[key] then
2592
- symbolRegistry[key] = __TS__Symbol(key)
2593
- end
2594
- return symbolRegistry[key]
2595
- end
2596
- function __TS__SymbolRegistryKeyFor(sym)
2597
- for key in pairs(symbolRegistry) do
2598
- if symbolRegistry[key] == sym then
2599
- return key
2600
- end
2601
- end
2602
- return nil
2603
- end
2604
- end
2605
-
2606
- local function __TS__TypeOf(value)
2607
- local luaType = type(value)
2608
- if luaType == "table" then
2609
- return "object"
2610
- elseif luaType == "nil" then
2611
- return "undefined"
2612
- else
2613
- return luaType
2614
- end
2615
- end
2616
-
2617
- local function __TS__Using(self, cb, ...)
2618
- local args = {...}
2619
- local thrownError
2620
- local ok, result = xpcall(
2621
- function() return cb(__TS__Unpack(args)) end,
2622
- function(err)
2623
- thrownError = err
2624
- return thrownError
2625
- end
2626
- )
2627
- local argArray = {__TS__Unpack(args)}
2628
- do
2629
- local i = #argArray - 1
2630
- while i >= 0 do
2631
- local ____self_0 = argArray[i + 1]
2632
- ____self_0[Symbol.dispose](____self_0)
2633
- i = i - 1
2634
- end
2635
- end
2636
- if not ok then
2637
- error(thrownError, 0)
2638
- end
2639
- return result
2640
- end
2641
-
2642
- local function __TS__UsingAsync(self, cb, ...)
2643
- local args = {...}
2644
- return __TS__AsyncAwaiter(function(____awaiter_resolve)
2645
- local thrownError
2646
- local ok, result = xpcall(
2647
- function() return cb(
2648
- nil,
2649
- __TS__Unpack(args)
2650
- ) end,
2651
- function(err)
2652
- thrownError = err
2653
- return thrownError
2654
- end
2655
- )
2656
- local argArray = {__TS__Unpack(args)}
2657
- do
2658
- local i = #argArray - 1
2659
- while i >= 0 do
2660
- if argArray[i + 1][Symbol.dispose] ~= nil then
2661
- local ____self_0 = argArray[i + 1]
2662
- ____self_0[Symbol.dispose](____self_0)
2663
- end
2664
- if argArray[i + 1][Symbol.asyncDispose] ~= nil then
2665
- local ____self_1 = argArray[i + 1]
2666
- __TS__Await(____self_1[Symbol.asyncDispose](____self_1))
2667
- end
2668
- i = i - 1
2669
- end
2670
- end
2671
- if not ok then
2672
- error(thrownError, 0)
2673
- end
2674
- return ____awaiter_resolve(nil, result)
2675
- end)
2676
- end
2677
-
2678
377
  return {
2679
- __TS__ArrayAt = __TS__ArrayAt,
2680
- __TS__ArrayConcat = __TS__ArrayConcat,
2681
- __TS__ArrayEntries = __TS__ArrayEntries,
2682
- __TS__ArrayEvery = __TS__ArrayEvery,
2683
- __TS__ArrayFill = __TS__ArrayFill,
2684
- __TS__ArrayFilter = __TS__ArrayFilter,
2685
- __TS__ArrayForEach = __TS__ArrayForEach,
2686
- __TS__ArrayFind = __TS__ArrayFind,
2687
- __TS__ArrayFindIndex = __TS__ArrayFindIndex,
2688
- __TS__ArrayFrom = __TS__ArrayFrom,
2689
- __TS__ArrayIncludes = __TS__ArrayIncludes,
2690
- __TS__ArrayIndexOf = __TS__ArrayIndexOf,
2691
- __TS__ArrayIsArray = __TS__ArrayIsArray,
2692
- __TS__ArrayJoin = __TS__ArrayJoin,
2693
- __TS__ArrayMap = __TS__ArrayMap,
2694
- __TS__ArrayPush = __TS__ArrayPush,
2695
- __TS__ArrayPushArray = __TS__ArrayPushArray,
2696
- __TS__ArrayReduce = __TS__ArrayReduce,
2697
- __TS__ArrayReduceRight = __TS__ArrayReduceRight,
2698
- __TS__ArrayReverse = __TS__ArrayReverse,
2699
- __TS__ArrayUnshift = __TS__ArrayUnshift,
2700
- __TS__ArraySort = __TS__ArraySort,
2701
- __TS__ArraySlice = __TS__ArraySlice,
2702
- __TS__ArraySome = __TS__ArraySome,
2703
- __TS__ArraySplice = __TS__ArraySplice,
2704
- __TS__ArrayToObject = __TS__ArrayToObject,
2705
- __TS__ArrayFlat = __TS__ArrayFlat,
2706
- __TS__ArrayFlatMap = __TS__ArrayFlatMap,
2707
- __TS__ArraySetLength = __TS__ArraySetLength,
2708
- __TS__ArrayToReversed = __TS__ArrayToReversed,
2709
- __TS__ArrayToSorted = __TS__ArrayToSorted,
2710
- __TS__ArrayToSpliced = __TS__ArrayToSpliced,
2711
- __TS__ArrayWith = __TS__ArrayWith,
2712
- __TS__AsyncAwaiter = __TS__AsyncAwaiter,
2713
- __TS__Await = __TS__Await,
378
+ __TS__Promise = __TS__Promise,
379
+ __TS__New = __TS__New,
2714
380
  __TS__Class = __TS__Class,
2715
- __TS__ClassExtends = __TS__ClassExtends,
2716
- __TS__CloneDescriptor = __TS__CloneDescriptor,
2717
- __TS__CountVarargs = __TS__CountVarargs,
2718
- __TS__Decorate = __TS__Decorate,
2719
- __TS__DecorateLegacy = __TS__DecorateLegacy,
2720
- __TS__DecorateParam = __TS__DecorateParam,
2721
- __TS__Delete = __TS__Delete,
2722
- __TS__DelegatedYield = __TS__DelegatedYield,
2723
- __TS__DescriptorGet = __TS__DescriptorGet,
2724
- __TS__DescriptorSet = __TS__DescriptorSet,
381
+ __TS__StringSplit = __TS__StringSplit,
382
+ __TS__ArrayIsArray = __TS__ArrayIsArray,
2725
383
  Error = Error,
2726
384
  RangeError = RangeError,
2727
385
  ReferenceError = ReferenceError,
2728
386
  SyntaxError = SyntaxError,
2729
387
  TypeError = TypeError,
2730
- URIError = URIError,
2731
- __TS__FunctionBind = __TS__FunctionBind,
2732
- __TS__Generator = __TS__Generator,
2733
- __TS__InstanceOf = __TS__InstanceOf,
2734
- __TS__InstanceOfObject = __TS__InstanceOfObject,
2735
- __TS__Iterator = __TS__Iterator,
2736
- __TS__LuaIteratorSpread = __TS__LuaIteratorSpread,
2737
- Map = Map,
2738
- __TS__MapGroupBy = __TS__MapGroupBy,
2739
- __TS__Match = __TS__Match,
2740
- __TS__MathAtan2 = __TS__MathAtan2,
2741
- __TS__MathModf = __TS__MathModf,
2742
- __TS__MathSign = __TS__MathSign,
2743
- __TS__MathTrunc = __TS__MathTrunc,
2744
- __TS__New = __TS__New,
2745
- __TS__Number = __TS__Number,
2746
- __TS__NumberIsFinite = __TS__NumberIsFinite,
2747
- __TS__NumberIsInteger = __TS__NumberIsInteger,
2748
- __TS__NumberIsNaN = __TS__NumberIsNaN,
2749
- __TS__ParseInt = __TS__ParseInt,
2750
- __TS__ParseFloat = __TS__ParseFloat,
2751
- __TS__NumberToString = __TS__NumberToString,
2752
- __TS__NumberToFixed = __TS__NumberToFixed,
2753
- __TS__ObjectAssign = __TS__ObjectAssign,
2754
- __TS__ObjectDefineProperty = __TS__ObjectDefineProperty,
2755
- __TS__ObjectEntries = __TS__ObjectEntries,
2756
- __TS__ObjectFromEntries = __TS__ObjectFromEntries,
2757
- __TS__ObjectGetOwnPropertyDescriptor = __TS__ObjectGetOwnPropertyDescriptor,
2758
- __TS__ObjectGetOwnPropertyDescriptors = __TS__ObjectGetOwnPropertyDescriptors,
2759
- __TS__ObjectGroupBy = __TS__ObjectGroupBy,
2760
- __TS__ObjectKeys = __TS__ObjectKeys,
2761
- __TS__ObjectRest = __TS__ObjectRest,
2762
- __TS__ObjectValues = __TS__ObjectValues,
2763
- __TS__ParseFloat = __TS__ParseFloat,
2764
- __TS__ParseInt = __TS__ParseInt,
2765
- __TS__Promise = __TS__Promise,
2766
- __TS__PromiseAll = __TS__PromiseAll,
2767
- __TS__PromiseAllSettled = __TS__PromiseAllSettled,
2768
- __TS__PromiseAny = __TS__PromiseAny,
2769
- __TS__PromiseRace = __TS__PromiseRace,
2770
- Set = Set,
2771
- __TS__SetDescriptor = __TS__SetDescriptor,
2772
- __TS__SparseArrayNew = __TS__SparseArrayNew,
2773
- __TS__SparseArrayPush = __TS__SparseArrayPush,
2774
- __TS__SparseArraySpread = __TS__SparseArraySpread,
2775
- WeakMap = WeakMap,
2776
- WeakSet = WeakSet,
2777
- __TS__SourceMapTraceBack = __TS__SourceMapTraceBack,
2778
- __TS__Spread = __TS__Spread,
2779
- __TS__StringAccess = __TS__StringAccess,
2780
- __TS__StringCharAt = __TS__StringCharAt,
2781
- __TS__StringCharCodeAt = __TS__StringCharCodeAt,
2782
- __TS__StringEndsWith = __TS__StringEndsWith,
2783
- __TS__StringIncludes = __TS__StringIncludes,
2784
- __TS__StringPadEnd = __TS__StringPadEnd,
2785
- __TS__StringPadStart = __TS__StringPadStart,
2786
- __TS__StringReplace = __TS__StringReplace,
2787
- __TS__StringReplaceAll = __TS__StringReplaceAll,
2788
- __TS__StringSlice = __TS__StringSlice,
2789
- __TS__StringSplit = __TS__StringSplit,
2790
- __TS__StringStartsWith = __TS__StringStartsWith,
2791
- __TS__StringSubstr = __TS__StringSubstr,
2792
- __TS__StringSubstring = __TS__StringSubstring,
2793
- __TS__StringTrim = __TS__StringTrim,
2794
- __TS__StringTrimEnd = __TS__StringTrimEnd,
2795
- __TS__StringTrimStart = __TS__StringTrimStart,
2796
- __TS__Symbol = __TS__Symbol,
2797
- Symbol = Symbol,
2798
- __TS__SymbolRegistryFor = __TS__SymbolRegistryFor,
2799
- __TS__SymbolRegistryKeyFor = __TS__SymbolRegistryKeyFor,
2800
- __TS__TypeOf = __TS__TypeOf,
2801
- __TS__Unpack = __TS__Unpack,
2802
- __TS__Using = __TS__Using,
2803
- __TS__UsingAsync = __TS__UsingAsync
388
+ URIError = URIError
2804
389
  }