UNPKG

2.68 kBJavaScriptView Raw
1/**
2 * @fileoverview Globals for ecmaVersion/sourceType
3 * @author Nicholas C. Zakas
4 */
5
6"use strict";
7
8//-----------------------------------------------------------------------------
9// Globals
10//-----------------------------------------------------------------------------
11
12const commonjs = {
13 exports: true,
14 global: false,
15 module: false,
16 require: false
17};
18
19const es3 = {
20 Array: false,
21 Boolean: false,
22 constructor: false,
23 Date: false,
24 decodeURI: false,
25 decodeURIComponent: false,
26 encodeURI: false,
27 encodeURIComponent: false,
28 Error: false,
29 escape: false,
30 eval: false,
31 EvalError: false,
32 Function: false,
33 hasOwnProperty: false,
34 Infinity: false,
35 isFinite: false,
36 isNaN: false,
37 isPrototypeOf: false,
38 Math: false,
39 NaN: false,
40 Number: false,
41 Object: false,
42 parseFloat: false,
43 parseInt: false,
44 propertyIsEnumerable: false,
45 RangeError: false,
46 ReferenceError: false,
47 RegExp: false,
48 String: false,
49 SyntaxError: false,
50 toLocaleString: false,
51 toString: false,
52 TypeError: false,
53 undefined: false,
54 unescape: false,
55 URIError: false,
56 valueOf: false
57};
58
59const es5 = {
60 ...es3,
61 JSON: false
62};
63
64const es2015 = {
65 ...es5,
66 ArrayBuffer: false,
67 DataView: false,
68 Float32Array: false,
69 Float64Array: false,
70 Int16Array: false,
71 Int32Array: false,
72 Int8Array: false,
73 Intl: false,
74 Map: false,
75 Promise: false,
76 Proxy: false,
77 Reflect: false,
78 Set: false,
79 Symbol: false,
80 Uint16Array: false,
81 Uint32Array: false,
82 Uint8Array: false,
83 Uint8ClampedArray: false,
84 WeakMap: false,
85 WeakSet: false
86};
87
88// no new globals in ES2016
89const es2016 = {
90 ...es2015
91};
92
93const es2017 = {
94 ...es2016,
95 Atomics: false,
96 SharedArrayBuffer: false
97};
98
99// no new globals in ES2018
100const es2018 = {
101 ...es2017
102};
103
104// no new globals in ES2019
105const es2019 = {
106 ...es2018
107};
108
109const es2020 = {
110 ...es2019,
111 BigInt: false,
112 BigInt64Array: false,
113 BigUint64Array: false,
114 globalThis: false
115};
116
117const es2021 = {
118 ...es2020,
119 AggregateError: false,
120 FinalizationRegistry: false,
121 WeakRef: false
122};
123
124const es2022 = {
125 ...es2021
126};
127
128const es2023 = {
129 ...es2022
130};
131
132const es2024 = {
133 ...es2023
134};
135
136
137//-----------------------------------------------------------------------------
138// Exports
139//-----------------------------------------------------------------------------
140
141module.exports = {
142 commonjs,
143 es3,
144 es5,
145 es2015,
146 es2016,
147 es2017,
148 es2018,
149 es2019,
150 es2020,
151 es2021,
152 es2022,
153 es2023,
154 es2024
155};