@@ -27,16 +27,65 @@ rules:
2727 message : " Use 'overrideStackTrace' from 'lib/internal/errors.js' instead of 'Error.prepareStackTrace'."
2828 no-restricted-globals :
2929 - error
30- - name : globalThis
31- message : " Use `const { globalThis } = primordials;` instead of the global."
30+ - name : AbortController
31+ message : " Use `const { AbortController } = require('internal/abort_controller');` instead of the global."
32+ - name : AbortSignal
33+ message : " Use `const { AbortSignal } = require('internal/abort_controller');` instead of the global."
34+ # Atomics is not available in primordials because it can be
35+ # disabled with --no-harmony-atomics CLI flag.
36+ - name : Atomics
37+ message : " Use `const { Atomics } = globalThis;` instead of the global."
38+ - name : Buffer
39+ message : " Use `const { Buffer } = require('buffer');` instead of the global."
40+ - name : Event
41+ message : " Use `const { Event } = require('internal/event_target');` instead of the global."
42+ - name : EventTarget
43+ message : " Use `const { EventTarget } = require('internal/event_target');` instead of the global."
44+ # Intl is not available in primordials because it can be
45+ # disabled with --without-intl build flag.
46+ - name : Intl
47+ message : " Use `const { Intl } = globalThis;` instead of the global."
48+ - name : MessageChannel
49+ message : " Use `const { MessageChannel } = require('internal/worker/io');` instead of the global."
50+ - name : MessageEvent
51+ message : " Use `const { MessageEvent } = require('internal/worker/io');` instead of the global."
52+ - name : MessagePort
53+ message : " Use `const { MessagePort } = require('internal/worker/io');` instead of the global."
54+ # SharedArrayBuffer is not available in primordials because it can be
55+ # disabled with --no-harmony-sharedarraybuffer CLI flag.
56+ - name : SharedArrayBuffer
57+ message : " Use `const { SharedArrayBuffer } = globalThis;` instead of the global."
58+ - name : TextDecoder
59+ message : " Use `const { TextDecoder } = require('internal/encoding');` instead of the global."
60+ - name : TextEncoder
61+ message : " Use `const { TextEncoder } = require('internal/encoding');` instead of the global."
62+ - name : URL
63+ message : " Use `const { URL } = require('internal/url');` instead of the global."
64+ - name : URLSearchParams
65+ message : " Use `const { URLSearchParams } = require('internal/url');` instead of the global."
66+ # WebAssembly is not available in primordials because it can be
67+ # disabled with --jitless CLI flag.
68+ - name : WebAssembly
69+ message : " Use `const { WebAssembly } = globalThis;` instead of the global."
70+ - name : atob
71+ message : " Use `const { atob } = require('buffer');` instead of the global."
72+ - name : btoa
73+ message : " Use `const { btoa } = require('buffer');` instead of the global."
3274 - name : global
3375 message : " Use `const { globalThis } = primordials;` instead of `global`."
76+ - name : globalThis
77+ message : " Use `const { globalThis } = primordials;` instead of the global."
78+ - name : performance
79+ message : " Use `const { performance } = require('perf_hooks');` instead of the global."
80+ - name : queueMicrotask
81+ message : " Use `const { queueMicrotask } = require('internal/process/task_queues');` instead of the global."
3482 # Custom rules in tools/eslint-rules
3583 node-core/lowercase-name-for-primitive : error
3684 node-core/non-ascii-character : error
3785 node-core/no-array-destructuring : error
3886 node-core/prefer-primordials :
3987 - error
88+ - name : AggregateError
4089 - name : Array
4190 - name : ArrayBuffer
4291 - name : BigInt
@@ -76,6 +125,7 @@ rules:
76125 into : Number
77126 - name : parseInt
78127 into : Number
128+ - name : Proxy
79129 - name : Promise
80130 - name : RangeError
81131 - name : ReferenceError
0 commit comments