node-firebird-driver 2.1.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/lib/impl/attachment.d.ts +11 -0
  2. package/dist/lib/impl/attachment.js +21 -5
  3. package/dist/lib/impl/attachment.js.map +1 -1
  4. package/dist/lib/impl/blob.js +1 -0
  5. package/dist/lib/impl/blob.js.map +1 -1
  6. package/dist/lib/impl/client.d.ts +1 -0
  7. package/dist/lib/impl/client.js +5 -1
  8. package/dist/lib/impl/client.js.map +1 -1
  9. package/dist/lib/impl/date-time.js +1 -0
  10. package/dist/lib/impl/date-time.js.map +1 -1
  11. package/dist/lib/impl/events.d.ts +1 -0
  12. package/dist/lib/impl/events.js +5 -1
  13. package/dist/lib/impl/events.js.map +1 -1
  14. package/dist/lib/impl/fb-util.d.ts +23 -0
  15. package/dist/lib/impl/fb-util.js +98 -10
  16. package/dist/lib/impl/fb-util.js.map +1 -1
  17. package/dist/lib/impl/index.d.ts +1 -0
  18. package/dist/lib/impl/index.js +20 -12
  19. package/dist/lib/impl/index.js.map +1 -1
  20. package/dist/lib/impl/resultset.d.ts +1 -0
  21. package/dist/lib/impl/resultset.js +5 -1
  22. package/dist/lib/impl/resultset.js.map +1 -1
  23. package/dist/lib/impl/statement.d.ts +10 -1
  24. package/dist/lib/impl/statement.js +21 -6
  25. package/dist/lib/impl/statement.js.map +1 -1
  26. package/dist/lib/impl/time-zones.d.ts +2 -0
  27. package/dist/lib/impl/time-zones.js +655 -0
  28. package/dist/lib/impl/time-zones.js.map +1 -0
  29. package/dist/lib/impl/transaction.d.ts +1 -0
  30. package/dist/lib/impl/transaction.js +5 -1
  31. package/dist/lib/impl/transaction.js.map +1 -1
  32. package/dist/lib/index.d.ts +63 -3
  33. package/dist/lib/index.js +5 -0
  34. package/dist/lib/index.js.map +1 -1
  35. package/dist/test/tests.js +192 -13
  36. package/dist/test/tests.js.map +1 -1
  37. package/package.json +3 -3
  38. package/src/lib/impl/attachment.ts +34 -12
  39. package/src/lib/impl/blob.ts +5 -5
  40. package/src/lib/impl/client.ts +8 -4
  41. package/src/lib/impl/events.ts +6 -2
  42. package/src/lib/impl/fb-util.ts +115 -4
  43. package/src/lib/impl/index.ts +1 -0
  44. package/src/lib/impl/resultset.ts +7 -3
  45. package/src/lib/impl/statement.ts +31 -9
  46. package/src/lib/impl/time-zones.ts +655 -0
  47. package/src/lib/impl/transaction.ts +9 -5
  48. package/src/lib/index.ts +84 -3
  49. package/src/test/tests.ts +240 -13
@@ -0,0 +1,655 @@
1
+ const TZID_GMT = 65535;
2
+
3
+ const TZID_ARRAY = [
4
+ 'GMT',
5
+ 'ACT',
6
+ 'AET',
7
+ 'AGT',
8
+ 'ART',
9
+ 'AST',
10
+ 'Africa/Abidjan',
11
+ 'Africa/Accra',
12
+ 'Africa/Addis_Ababa',
13
+ 'Africa/Algiers',
14
+ 'Africa/Asmara',
15
+ 'Africa/Asmera',
16
+ 'Africa/Bamako',
17
+ 'Africa/Bangui',
18
+ 'Africa/Banjul',
19
+ 'Africa/Bissau',
20
+ 'Africa/Blantyre',
21
+ 'Africa/Brazzaville',
22
+ 'Africa/Bujumbura',
23
+ 'Africa/Cairo',
24
+ 'Africa/Casablanca',
25
+ 'Africa/Ceuta',
26
+ 'Africa/Conakry',
27
+ 'Africa/Dakar',
28
+ 'Africa/Dar_es_Salaam',
29
+ 'Africa/Djibouti',
30
+ 'Africa/Douala',
31
+ 'Africa/El_Aaiun',
32
+ 'Africa/Freetown',
33
+ 'Africa/Gaborone',
34
+ 'Africa/Harare',
35
+ 'Africa/Johannesburg',
36
+ 'Africa/Juba',
37
+ 'Africa/Kampala',
38
+ 'Africa/Khartoum',
39
+ 'Africa/Kigali',
40
+ 'Africa/Kinshasa',
41
+ 'Africa/Lagos',
42
+ 'Africa/Libreville',
43
+ 'Africa/Lome',
44
+ 'Africa/Luanda',
45
+ 'Africa/Lubumbashi',
46
+ 'Africa/Lusaka',
47
+ 'Africa/Malabo',
48
+ 'Africa/Maputo',
49
+ 'Africa/Maseru',
50
+ 'Africa/Mbabane',
51
+ 'Africa/Mogadishu',
52
+ 'Africa/Monrovia',
53
+ 'Africa/Nairobi',
54
+ 'Africa/Ndjamena',
55
+ 'Africa/Niamey',
56
+ 'Africa/Nouakchott',
57
+ 'Africa/Ouagadougou',
58
+ 'Africa/Porto-Novo',
59
+ 'Africa/Sao_Tome',
60
+ 'Africa/Timbuktu',
61
+ 'Africa/Tripoli',
62
+ 'Africa/Tunis',
63
+ 'Africa/Windhoek',
64
+ 'America/Adak',
65
+ 'America/Anchorage',
66
+ 'America/Anguilla',
67
+ 'America/Antigua',
68
+ 'America/Araguaina',
69
+ 'America/Argentina/Buenos_Aires',
70
+ 'America/Argentina/Catamarca',
71
+ 'America/Argentina/ComodRivadavia',
72
+ 'America/Argentina/Cordoba',
73
+ 'America/Argentina/Jujuy',
74
+ 'America/Argentina/La_Rioja',
75
+ 'America/Argentina/Mendoza',
76
+ 'America/Argentina/Rio_Gallegos',
77
+ 'America/Argentina/Salta',
78
+ 'America/Argentina/San_Juan',
79
+ 'America/Argentina/San_Luis',
80
+ 'America/Argentina/Tucuman',
81
+ 'America/Argentina/Ushuaia',
82
+ 'America/Aruba',
83
+ 'America/Asuncion',
84
+ 'America/Atikokan',
85
+ 'America/Atka',
86
+ 'America/Bahia',
87
+ 'America/Bahia_Banderas',
88
+ 'America/Barbados',
89
+ 'America/Belem',
90
+ 'America/Belize',
91
+ 'America/Blanc-Sablon',
92
+ 'America/Boa_Vista',
93
+ 'America/Bogota',
94
+ 'America/Boise',
95
+ 'America/Buenos_Aires',
96
+ 'America/Cambridge_Bay',
97
+ 'America/Campo_Grande',
98
+ 'America/Cancun',
99
+ 'America/Caracas',
100
+ 'America/Catamarca',
101
+ 'America/Cayenne',
102
+ 'America/Cayman',
103
+ 'America/Chicago',
104
+ 'America/Chihuahua',
105
+ 'America/Coral_Harbour',
106
+ 'America/Cordoba',
107
+ 'America/Costa_Rica',
108
+ 'America/Creston',
109
+ 'America/Cuiaba',
110
+ 'America/Curacao',
111
+ 'America/Danmarkshavn',
112
+ 'America/Dawson',
113
+ 'America/Dawson_Creek',
114
+ 'America/Denver',
115
+ 'America/Detroit',
116
+ 'America/Dominica',
117
+ 'America/Edmonton',
118
+ 'America/Eirunepe',
119
+ 'America/El_Salvador',
120
+ 'America/Ensenada',
121
+ 'America/Fort_Nelson',
122
+ 'America/Fort_Wayne',
123
+ 'America/Fortaleza',
124
+ 'America/Glace_Bay',
125
+ 'America/Godthab',
126
+ 'America/Goose_Bay',
127
+ 'America/Grand_Turk',
128
+ 'America/Grenada',
129
+ 'America/Guadeloupe',
130
+ 'America/Guatemala',
131
+ 'America/Guayaquil',
132
+ 'America/Guyana',
133
+ 'America/Halifax',
134
+ 'America/Havana',
135
+ 'America/Hermosillo',
136
+ 'America/Indiana/Indianapolis',
137
+ 'America/Indiana/Knox',
138
+ 'America/Indiana/Marengo',
139
+ 'America/Indiana/Petersburg',
140
+ 'America/Indiana/Tell_City',
141
+ 'America/Indiana/Vevay',
142
+ 'America/Indiana/Vincennes',
143
+ 'America/Indiana/Winamac',
144
+ 'America/Indianapolis',
145
+ 'America/Inuvik',
146
+ 'America/Iqaluit',
147
+ 'America/Jamaica',
148
+ 'America/Jujuy',
149
+ 'America/Juneau',
150
+ 'America/Kentucky/Louisville',
151
+ 'America/Kentucky/Monticello',
152
+ 'America/Knox_IN',
153
+ 'America/Kralendijk',
154
+ 'America/La_Paz',
155
+ 'America/Lima',
156
+ 'America/Los_Angeles',
157
+ 'America/Louisville',
158
+ 'America/Lower_Princes',
159
+ 'America/Maceio',
160
+ 'America/Managua',
161
+ 'America/Manaus',
162
+ 'America/Marigot',
163
+ 'America/Martinique',
164
+ 'America/Matamoros',
165
+ 'America/Mazatlan',
166
+ 'America/Mendoza',
167
+ 'America/Menominee',
168
+ 'America/Merida',
169
+ 'America/Metlakatla',
170
+ 'America/Mexico_City',
171
+ 'America/Miquelon',
172
+ 'America/Moncton',
173
+ 'America/Monterrey',
174
+ 'America/Montevideo',
175
+ 'America/Montreal',
176
+ 'America/Montserrat',
177
+ 'America/Nassau',
178
+ 'America/New_York',
179
+ 'America/Nipigon',
180
+ 'America/Nome',
181
+ 'America/Noronha',
182
+ 'America/North_Dakota/Beulah',
183
+ 'America/North_Dakota/Center',
184
+ 'America/North_Dakota/New_Salem',
185
+ 'America/Ojinaga',
186
+ 'America/Panama',
187
+ 'America/Pangnirtung',
188
+ 'America/Paramaribo',
189
+ 'America/Phoenix',
190
+ 'America/Port-au-Prince',
191
+ 'America/Port_of_Spain',
192
+ 'America/Porto_Acre',
193
+ 'America/Porto_Velho',
194
+ 'America/Puerto_Rico',
195
+ 'America/Punta_Arenas',
196
+ 'America/Rainy_River',
197
+ 'America/Rankin_Inlet',
198
+ 'America/Recife',
199
+ 'America/Regina',
200
+ 'America/Resolute',
201
+ 'America/Rio_Branco',
202
+ 'America/Rosario',
203
+ 'America/Santa_Isabel',
204
+ 'America/Santarem',
205
+ 'America/Santiago',
206
+ 'America/Santo_Domingo',
207
+ 'America/Sao_Paulo',
208
+ 'America/Scoresbysund',
209
+ 'America/Shiprock',
210
+ 'America/Sitka',
211
+ 'America/St_Barthelemy',
212
+ 'America/St_Johns',
213
+ 'America/St_Kitts',
214
+ 'America/St_Lucia',
215
+ 'America/St_Thomas',
216
+ 'America/St_Vincent',
217
+ 'America/Swift_Current',
218
+ 'America/Tegucigalpa',
219
+ 'America/Thule',
220
+ 'America/Thunder_Bay',
221
+ 'America/Tijuana',
222
+ 'America/Toronto',
223
+ 'America/Tortola',
224
+ 'America/Vancouver',
225
+ 'America/Virgin',
226
+ 'America/Whitehorse',
227
+ 'America/Winnipeg',
228
+ 'America/Yakutat',
229
+ 'America/Yellowknife',
230
+ 'Antarctica/Casey',
231
+ 'Antarctica/Davis',
232
+ 'Antarctica/DumontDUrville',
233
+ 'Antarctica/Macquarie',
234
+ 'Antarctica/Mawson',
235
+ 'Antarctica/McMurdo',
236
+ 'Antarctica/Palmer',
237
+ 'Antarctica/Rothera',
238
+ 'Antarctica/South_Pole',
239
+ 'Antarctica/Syowa',
240
+ 'Antarctica/Troll',
241
+ 'Antarctica/Vostok',
242
+ 'Arctic/Longyearbyen',
243
+ 'Asia/Aden',
244
+ 'Asia/Almaty',
245
+ 'Asia/Amman',
246
+ 'Asia/Anadyr',
247
+ 'Asia/Aqtau',
248
+ 'Asia/Aqtobe',
249
+ 'Asia/Ashgabat',
250
+ 'Asia/Ashkhabad',
251
+ 'Asia/Atyrau',
252
+ 'Asia/Baghdad',
253
+ 'Asia/Bahrain',
254
+ 'Asia/Baku',
255
+ 'Asia/Bangkok',
256
+ 'Asia/Barnaul',
257
+ 'Asia/Beirut',
258
+ 'Asia/Bishkek',
259
+ 'Asia/Brunei',
260
+ 'Asia/Calcutta',
261
+ 'Asia/Chita',
262
+ 'Asia/Choibalsan',
263
+ 'Asia/Chongqing',
264
+ 'Asia/Chungking',
265
+ 'Asia/Colombo',
266
+ 'Asia/Dacca',
267
+ 'Asia/Damascus',
268
+ 'Asia/Dhaka',
269
+ 'Asia/Dili',
270
+ 'Asia/Dubai',
271
+ 'Asia/Dushanbe',
272
+ 'Asia/Famagusta',
273
+ 'Asia/Gaza',
274
+ 'Asia/Harbin',
275
+ 'Asia/Hebron',
276
+ 'Asia/Ho_Chi_Minh',
277
+ 'Asia/Hong_Kong',
278
+ 'Asia/Hovd',
279
+ 'Asia/Irkutsk',
280
+ 'Asia/Istanbul',
281
+ 'Asia/Jakarta',
282
+ 'Asia/Jayapura',
283
+ 'Asia/Jerusalem',
284
+ 'Asia/Kabul',
285
+ 'Asia/Kamchatka',
286
+ 'Asia/Karachi',
287
+ 'Asia/Kashgar',
288
+ 'Asia/Kathmandu',
289
+ 'Asia/Katmandu',
290
+ 'Asia/Khandyga',
291
+ 'Asia/Kolkata',
292
+ 'Asia/Krasnoyarsk',
293
+ 'Asia/Kuala_Lumpur',
294
+ 'Asia/Kuching',
295
+ 'Asia/Kuwait',
296
+ 'Asia/Macao',
297
+ 'Asia/Macau',
298
+ 'Asia/Magadan',
299
+ 'Asia/Makassar',
300
+ 'Asia/Manila',
301
+ 'Asia/Muscat',
302
+ 'Asia/Nicosia',
303
+ 'Asia/Novokuznetsk',
304
+ 'Asia/Novosibirsk',
305
+ 'Asia/Omsk',
306
+ 'Asia/Oral',
307
+ 'Asia/Phnom_Penh',
308
+ 'Asia/Pontianak',
309
+ 'Asia/Pyongyang',
310
+ 'Asia/Qatar',
311
+ 'Asia/Qyzylorda',
312
+ 'Asia/Rangoon',
313
+ 'Asia/Riyadh',
314
+ 'Asia/Saigon',
315
+ 'Asia/Sakhalin',
316
+ 'Asia/Samarkand',
317
+ 'Asia/Seoul',
318
+ 'Asia/Shanghai',
319
+ 'Asia/Singapore',
320
+ 'Asia/Srednekolymsk',
321
+ 'Asia/Taipei',
322
+ 'Asia/Tashkent',
323
+ 'Asia/Tbilisi',
324
+ 'Asia/Tehran',
325
+ 'Asia/Tel_Aviv',
326
+ 'Asia/Thimbu',
327
+ 'Asia/Thimphu',
328
+ 'Asia/Tokyo',
329
+ 'Asia/Tomsk',
330
+ 'Asia/Ujung_Pandang',
331
+ 'Asia/Ulaanbaatar',
332
+ 'Asia/Ulan_Bator',
333
+ 'Asia/Urumqi',
334
+ 'Asia/Ust-Nera',
335
+ 'Asia/Vientiane',
336
+ 'Asia/Vladivostok',
337
+ 'Asia/Yakutsk',
338
+ 'Asia/Yangon',
339
+ 'Asia/Yekaterinburg',
340
+ 'Asia/Yerevan',
341
+ 'Atlantic/Azores',
342
+ 'Atlantic/Bermuda',
343
+ 'Atlantic/Canary',
344
+ 'Atlantic/Cape_Verde',
345
+ 'Atlantic/Faeroe',
346
+ 'Atlantic/Faroe',
347
+ 'Atlantic/Jan_Mayen',
348
+ 'Atlantic/Madeira',
349
+ 'Atlantic/Reykjavik',
350
+ 'Atlantic/South_Georgia',
351
+ 'Atlantic/St_Helena',
352
+ 'Atlantic/Stanley',
353
+ 'Australia/ACT',
354
+ 'Australia/Adelaide',
355
+ 'Australia/Brisbane',
356
+ 'Australia/Broken_Hill',
357
+ 'Australia/Canberra',
358
+ 'Australia/Currie',
359
+ 'Australia/Darwin',
360
+ 'Australia/Eucla',
361
+ 'Australia/Hobart',
362
+ 'Australia/LHI',
363
+ 'Australia/Lindeman',
364
+ 'Australia/Lord_Howe',
365
+ 'Australia/Melbourne',
366
+ 'Australia/NSW',
367
+ 'Australia/North',
368
+ 'Australia/Perth',
369
+ 'Australia/Queensland',
370
+ 'Australia/South',
371
+ 'Australia/Sydney',
372
+ 'Australia/Tasmania',
373
+ 'Australia/Victoria',
374
+ 'Australia/West',
375
+ 'Australia/Yancowinna',
376
+ 'BET',
377
+ 'BST',
378
+ 'Brazil/Acre',
379
+ 'Brazil/DeNoronha',
380
+ 'Brazil/East',
381
+ 'Brazil/West',
382
+ 'CAT',
383
+ 'CET',
384
+ 'CNT',
385
+ 'CST',
386
+ 'CST6CDT',
387
+ 'CTT',
388
+ 'Canada/Atlantic',
389
+ 'Canada/Central',
390
+ 'Canada/East-Saskatchewan',
391
+ 'Canada/Eastern',
392
+ 'Canada/Mountain',
393
+ 'Canada/Newfoundland',
394
+ 'Canada/Pacific',
395
+ 'Canada/Saskatchewan',
396
+ 'Canada/Yukon',
397
+ 'Chile/Continental',
398
+ 'Chile/EasterIsland',
399
+ 'Cuba',
400
+ 'EAT',
401
+ 'ECT',
402
+ 'EET',
403
+ 'EST',
404
+ 'EST5EDT',
405
+ 'Egypt',
406
+ 'Eire',
407
+ 'Etc/GMT',
408
+ 'Etc/GMT+0',
409
+ 'Etc/GMT+1',
410
+ 'Etc/GMT+10',
411
+ 'Etc/GMT+11',
412
+ 'Etc/GMT+12',
413
+ 'Etc/GMT+2',
414
+ 'Etc/GMT+3',
415
+ 'Etc/GMT+4',
416
+ 'Etc/GMT+5',
417
+ 'Etc/GMT+6',
418
+ 'Etc/GMT+7',
419
+ 'Etc/GMT+8',
420
+ 'Etc/GMT+9',
421
+ 'Etc/GMT-0',
422
+ 'Etc/GMT-1',
423
+ 'Etc/GMT-10',
424
+ 'Etc/GMT-11',
425
+ 'Etc/GMT-12',
426
+ 'Etc/GMT-13',
427
+ 'Etc/GMT-14',
428
+ 'Etc/GMT-2',
429
+ 'Etc/GMT-3',
430
+ 'Etc/GMT-4',
431
+ 'Etc/GMT-5',
432
+ 'Etc/GMT-6',
433
+ 'Etc/GMT-7',
434
+ 'Etc/GMT-8',
435
+ 'Etc/GMT-9',
436
+ 'Etc/GMT0',
437
+ 'Etc/Greenwich',
438
+ 'Etc/UCT',
439
+ 'Etc/UTC',
440
+ 'Etc/Universal',
441
+ 'Etc/Zulu',
442
+ 'Europe/Amsterdam',
443
+ 'Europe/Andorra',
444
+ 'Europe/Astrakhan',
445
+ 'Europe/Athens',
446
+ 'Europe/Belfast',
447
+ 'Europe/Belgrade',
448
+ 'Europe/Berlin',
449
+ 'Europe/Bratislava',
450
+ 'Europe/Brussels',
451
+ 'Europe/Bucharest',
452
+ 'Europe/Budapest',
453
+ 'Europe/Busingen',
454
+ 'Europe/Chisinau',
455
+ 'Europe/Copenhagen',
456
+ 'Europe/Dublin',
457
+ 'Europe/Gibraltar',
458
+ 'Europe/Guernsey',
459
+ 'Europe/Helsinki',
460
+ 'Europe/Isle_of_Man',
461
+ 'Europe/Istanbul',
462
+ 'Europe/Jersey',
463
+ 'Europe/Kaliningrad',
464
+ 'Europe/Kiev',
465
+ 'Europe/Kirov',
466
+ 'Europe/Lisbon',
467
+ 'Europe/Ljubljana',
468
+ 'Europe/London',
469
+ 'Europe/Luxembourg',
470
+ 'Europe/Madrid',
471
+ 'Europe/Malta',
472
+ 'Europe/Mariehamn',
473
+ 'Europe/Minsk',
474
+ 'Europe/Monaco',
475
+ 'Europe/Moscow',
476
+ 'Europe/Nicosia',
477
+ 'Europe/Oslo',
478
+ 'Europe/Paris',
479
+ 'Europe/Podgorica',
480
+ 'Europe/Prague',
481
+ 'Europe/Riga',
482
+ 'Europe/Rome',
483
+ 'Europe/Samara',
484
+ 'Europe/San_Marino',
485
+ 'Europe/Sarajevo',
486
+ 'Europe/Saratov',
487
+ 'Europe/Simferopol',
488
+ 'Europe/Skopje',
489
+ 'Europe/Sofia',
490
+ 'Europe/Stockholm',
491
+ 'Europe/Tallinn',
492
+ 'Europe/Tirane',
493
+ 'Europe/Tiraspol',
494
+ 'Europe/Ulyanovsk',
495
+ 'Europe/Uzhgorod',
496
+ 'Europe/Vaduz',
497
+ 'Europe/Vatican',
498
+ 'Europe/Vienna',
499
+ 'Europe/Vilnius',
500
+ 'Europe/Volgograd',
501
+ 'Europe/Warsaw',
502
+ 'Europe/Zagreb',
503
+ 'Europe/Zaporozhye',
504
+ 'Europe/Zurich',
505
+ 'Factory',
506
+ 'GB',
507
+ 'GB-Eire',
508
+ 'GMT+0',
509
+ 'GMT-0',
510
+ 'GMT0',
511
+ 'Greenwich',
512
+ 'HST',
513
+ 'Hongkong',
514
+ 'IET',
515
+ 'IST',
516
+ 'Iceland',
517
+ 'Indian/Antananarivo',
518
+ 'Indian/Chagos',
519
+ 'Indian/Christmas',
520
+ 'Indian/Cocos',
521
+ 'Indian/Comoro',
522
+ 'Indian/Kerguelen',
523
+ 'Indian/Mahe',
524
+ 'Indian/Maldives',
525
+ 'Indian/Mauritius',
526
+ 'Indian/Mayotte',
527
+ 'Indian/Reunion',
528
+ 'Iran',
529
+ 'Israel',
530
+ 'JST',
531
+ 'Jamaica',
532
+ 'Japan',
533
+ 'Kwajalein',
534
+ 'Libya',
535
+ 'MET',
536
+ 'MIT',
537
+ 'MST',
538
+ 'MST7MDT',
539
+ 'Mexico/BajaNorte',
540
+ 'Mexico/BajaSur',
541
+ 'Mexico/General',
542
+ 'NET',
543
+ 'NST',
544
+ 'NZ',
545
+ 'NZ-CHAT',
546
+ 'Navajo',
547
+ 'PLT',
548
+ 'PNT',
549
+ 'PRC',
550
+ 'PRT',
551
+ 'PST',
552
+ 'PST8PDT',
553
+ 'Pacific/Apia',
554
+ 'Pacific/Auckland',
555
+ 'Pacific/Bougainville',
556
+ 'Pacific/Chatham',
557
+ 'Pacific/Chuuk',
558
+ 'Pacific/Easter',
559
+ 'Pacific/Efate',
560
+ 'Pacific/Enderbury',
561
+ 'Pacific/Fakaofo',
562
+ 'Pacific/Fiji',
563
+ 'Pacific/Funafuti',
564
+ 'Pacific/Galapagos',
565
+ 'Pacific/Gambier',
566
+ 'Pacific/Guadalcanal',
567
+ 'Pacific/Guam',
568
+ 'Pacific/Honolulu',
569
+ 'Pacific/Johnston',
570
+ 'Pacific/Kiritimati',
571
+ 'Pacific/Kosrae',
572
+ 'Pacific/Kwajalein',
573
+ 'Pacific/Majuro',
574
+ 'Pacific/Marquesas',
575
+ 'Pacific/Midway',
576
+ 'Pacific/Nauru',
577
+ 'Pacific/Niue',
578
+ 'Pacific/Norfolk',
579
+ 'Pacific/Noumea',
580
+ 'Pacific/Pago_Pago',
581
+ 'Pacific/Palau',
582
+ 'Pacific/Pitcairn',
583
+ 'Pacific/Pohnpei',
584
+ 'Pacific/Ponape',
585
+ 'Pacific/Port_Moresby',
586
+ 'Pacific/Rarotonga',
587
+ 'Pacific/Saipan',
588
+ 'Pacific/Samoa',
589
+ 'Pacific/Tahiti',
590
+ 'Pacific/Tarawa',
591
+ 'Pacific/Tongatapu',
592
+ 'Pacific/Truk',
593
+ 'Pacific/Wake',
594
+ 'Pacific/Wallis',
595
+ 'Pacific/Yap',
596
+ 'Poland',
597
+ 'Portugal',
598
+ 'ROC',
599
+ 'ROK',
600
+ 'SST',
601
+ 'Singapore',
602
+ 'SystemV/AST4',
603
+ 'SystemV/AST4ADT',
604
+ 'SystemV/CST6',
605
+ 'SystemV/CST6CDT',
606
+ 'SystemV/EST5',
607
+ 'SystemV/EST5EDT',
608
+ 'SystemV/HST10',
609
+ 'SystemV/MST7',
610
+ 'SystemV/MST7MDT',
611
+ 'SystemV/PST8',
612
+ 'SystemV/PST8PDT',
613
+ 'SystemV/YST9',
614
+ 'SystemV/YST9YDT',
615
+ 'Turkey',
616
+ 'UCT',
617
+ 'US/Alaska',
618
+ 'US/Aleutian',
619
+ 'US/Arizona',
620
+ 'US/Central',
621
+ 'US/East-Indiana',
622
+ 'US/Eastern',
623
+ 'US/Hawaii',
624
+ 'US/Indiana-Starke',
625
+ 'US/Michigan',
626
+ 'US/Mountain',
627
+ 'US/Pacific',
628
+ 'US/Pacific-New',
629
+ 'US/Samoa',
630
+ 'UTC',
631
+ 'Universal',
632
+ 'VST',
633
+ 'W-SU',
634
+ 'WET',
635
+ 'Zulu',
636
+ 'America/Nuuk',
637
+ 'Asia/Qostanay'
638
+ ];
639
+
640
+ const TZID_MAP = new Map(TZID_ARRAY.map((name, index) => [name.toUpperCase(), TZID_GMT - index]));
641
+
642
+ export function tzIdToString(tzId: number): string {
643
+ if (tzId > TZID_GMT || TZID_GMT - tzId >= TZID_ARRAY.length)
644
+ throw new Error('Invalid time zone ID.');
645
+ return TZID_ARRAY[TZID_GMT - tzId];
646
+ }
647
+
648
+ export function tzStringToId(tzStr: string): number {
649
+ const id = TZID_MAP.get(tzStr.toUpperCase());
650
+
651
+ if (!id)
652
+ throw new Error('Invalid time zone.');
653
+
654
+ return id;
655
+ }
@@ -42,13 +42,17 @@ export abstract class AbstractTransaction implements Transaction {
42
42
  return await this.internalRollbackRetaining();
43
43
  }
44
44
 
45
+ get isValid(): boolean {
46
+ return !!this.attachment;
47
+ }
48
+
45
49
  private check() {
46
- if (!this.attachment)
50
+ if (!this.isValid)
47
51
  throw new Error('Transaction is already committed or rolled back.');
48
52
  }
49
53
 
50
- protected abstract async internalCommit(): Promise<void>;
51
- protected abstract async internalCommitRetaining(): Promise<void>;
52
- protected abstract async internalRollback(): Promise<void>;
53
- protected abstract async internalRollbackRetaining(): Promise<void>;
54
+ protected abstract internalCommit(): Promise<void>;
55
+ protected abstract internalCommitRetaining(): Promise<void>;
56
+ protected abstract internalRollback(): Promise<void>;
57
+ protected abstract internalRollbackRetaining(): Promise<void>;
54
58
  }