mirror of
https://github.com/oven-sh/bun
synced 2026-02-10 10:58:56 +00:00
808 lines
27 KiB
Zig
808 lines
27 KiB
Zig
const bun = @import("global.zig");
|
|
const string = bun.string;
|
|
const Output = bun.Output;
|
|
const Global = bun.Global;
|
|
const Environment = bun.Environment;
|
|
const strings = bun.strings;
|
|
const MutableString = bun.MutableString;
|
|
const stringZ = bun.stringZ;
|
|
const default_allocator = bun.default_allocator;
|
|
const C = bun.C;
|
|
|
|
// If something is in this list, then a direct identifier expression or property
|
|
// access chain matching this will be assumed to have no side effects and will
|
|
// be removed.
|
|
//
|
|
// This also means code is allowed to be reordered past things in this list. For
|
|
// example, if "console.log" is in this list, permitting reordering allows for
|
|
// "if (a) console.log(b); else console.log(c)" to be reordered and transformed
|
|
// into "console.log(a ? b : c)". Notice that "a" and "console.log" are in a
|
|
// different order, which can only happen if evaluating the "console.log"
|
|
// property access can be assumed to not change the value of "a".
|
|
//
|
|
// Note that membership in this list says nothing about whether calling any of
|
|
// these functions has any side effects. It only says something about
|
|
// referencing these function without calling them.
|
|
pub const GlobalDefinesKey = [_][]const string{
|
|
// These global identifiers should exist in all JavaScript environments. This
|
|
// deliberately omits "NaN", "Infinity", and "undefined" because these are
|
|
// treated as automatically-inlined constants instead of identifiers.
|
|
&[_]string{"Array"},
|
|
&[_]string{"Boolean"},
|
|
&[_]string{"Function"},
|
|
&[_]string{"Math"},
|
|
&[_]string{"Number"},
|
|
&[_]string{"Object"},
|
|
&[_]string{"RegExp"},
|
|
&[_]string{"String"},
|
|
|
|
// Object: Static methods
|
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object#Static_methods
|
|
&[_]string{ "Object", "assign" },
|
|
&[_]string{ "Object", "create" },
|
|
&[_]string{ "Object", "defineProperties" },
|
|
&[_]string{ "Object", "defineProperty" },
|
|
&[_]string{ "Object", "entries" },
|
|
&[_]string{ "Object", "freeze" },
|
|
&[_]string{ "Object", "fromEntries" },
|
|
&[_]string{ "Object", "getOwnPropertyDescriptor" },
|
|
&[_]string{ "Object", "getOwnPropertyDescriptors" },
|
|
&[_]string{ "Object", "getOwnPropertyNames" },
|
|
&[_]string{ "Object", "getOwnPropertySymbols" },
|
|
&[_]string{ "Object", "getPrototypeOf" },
|
|
&[_]string{ "Object", "is" },
|
|
&[_]string{ "Object", "isExtensible" },
|
|
&[_]string{ "Object", "isFrozen" },
|
|
&[_]string{ "Object", "isSealed" },
|
|
&[_]string{ "Object", "keys" },
|
|
&[_]string{ "Object", "preventExtensions" },
|
|
&[_]string{ "Object", "seal" },
|
|
&[_]string{ "Object", "setPrototypeOf" },
|
|
&[_]string{ "Object", "values" },
|
|
|
|
// Object: Instance methods
|
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object#Instance_methods
|
|
&[_]string{ "Object", "prototype", "__defineGetter__" },
|
|
&[_]string{ "Object", "prototype", "__defineSetter__" },
|
|
&[_]string{ "Object", "prototype", "__lookupGetter__" },
|
|
&[_]string{ "Object", "prototype", "__lookupSetter__" },
|
|
&[_]string{ "Object", "prototype", "hasOwnProperty" },
|
|
&[_]string{ "Object", "prototype", "isPrototypeOf" },
|
|
&[_]string{ "Object", "prototype", "propertyIsEnumerable" },
|
|
&[_]string{ "Object", "prototype", "toLocaleString" },
|
|
&[_]string{ "Object", "prototype", "toString" },
|
|
&[_]string{ "Object", "prototype", "unwatch" },
|
|
&[_]string{ "Object", "prototype", "valueOf" },
|
|
&[_]string{ "Object", "prototype", "watch" },
|
|
|
|
// Math: Static properties
|
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math#Static_properties
|
|
&[_]string{ "Math", "E" },
|
|
&[_]string{ "Math", "LN10" },
|
|
&[_]string{ "Math", "LN2" },
|
|
&[_]string{ "Math", "LOG10E" },
|
|
&[_]string{ "Math", "LOG2E" },
|
|
&[_]string{ "Math", "PI" },
|
|
&[_]string{ "Math", "SQRT1_2" },
|
|
&[_]string{ "Math", "SQRT2" },
|
|
|
|
// Math: Static methods
|
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math#Static_methods
|
|
&[_]string{ "Math", "abs" },
|
|
&[_]string{ "Math", "acos" },
|
|
&[_]string{ "Math", "acosh" },
|
|
&[_]string{ "Math", "asin" },
|
|
&[_]string{ "Math", "asinh" },
|
|
&[_]string{ "Math", "atan" },
|
|
&[_]string{ "Math", "atan2" },
|
|
&[_]string{ "Math", "atanh" },
|
|
&[_]string{ "Math", "cbrt" },
|
|
&[_]string{ "Math", "ceil" },
|
|
&[_]string{ "Math", "clz32" },
|
|
&[_]string{ "Math", "cos" },
|
|
&[_]string{ "Math", "cosh" },
|
|
&[_]string{ "Math", "exp" },
|
|
&[_]string{ "Math", "expm1" },
|
|
&[_]string{ "Math", "floor" },
|
|
&[_]string{ "Math", "fround" },
|
|
&[_]string{ "Math", "hypot" },
|
|
&[_]string{ "Math", "imul" },
|
|
&[_]string{ "Math", "log" },
|
|
&[_]string{ "Math", "log10" },
|
|
&[_]string{ "Math", "log1p" },
|
|
&[_]string{ "Math", "log2" },
|
|
&[_]string{ "Math", "max" },
|
|
&[_]string{ "Math", "min" },
|
|
&[_]string{ "Math", "pow" },
|
|
&[_]string{ "Math", "random" },
|
|
&[_]string{ "Math", "round" },
|
|
&[_]string{ "Math", "sign" },
|
|
&[_]string{ "Math", "sin" },
|
|
&[_]string{ "Math", "sinh" },
|
|
&[_]string{ "Math", "sqrt" },
|
|
&[_]string{ "Math", "tan" },
|
|
&[_]string{ "Math", "tanh" },
|
|
&[_]string{ "Math", "trunc" },
|
|
|
|
// Other globals present in both the browser and node (except "eval" because
|
|
// it has special behavior)
|
|
&[_]string{"AbortController"},
|
|
&[_]string{"AbortSignal"},
|
|
&[_]string{"AggregateError"},
|
|
&[_]string{"ArrayBuffer"},
|
|
&[_]string{"BigInt"},
|
|
&[_]string{"DataView"},
|
|
&[_]string{"Date"},
|
|
&[_]string{"Error"},
|
|
&[_]string{"EvalError"},
|
|
&[_]string{"Event"},
|
|
&[_]string{"EventTarget"},
|
|
&[_]string{"Float32Array"},
|
|
&[_]string{"Float64Array"},
|
|
&[_]string{"Int16Array"},
|
|
&[_]string{"Int32Array"},
|
|
&[_]string{"Int8Array"},
|
|
&[_]string{"Intl"},
|
|
&[_]string{"JSON"},
|
|
&[_]string{"Map"},
|
|
&[_]string{"MessageChannel"},
|
|
&[_]string{"MessageEvent"},
|
|
&[_]string{"MessagePort"},
|
|
&[_]string{"Promise"},
|
|
&[_]string{"Proxy"},
|
|
&[_]string{"RangeError"},
|
|
&[_]string{"ReferenceError"},
|
|
&[_]string{"Reflect"},
|
|
&[_]string{"Set"},
|
|
&[_]string{"Symbol"},
|
|
&[_]string{"SyntaxError"},
|
|
&[_]string{"TextDecoder"},
|
|
&[_]string{"TextEncoder"},
|
|
&[_]string{"TypeError"},
|
|
&[_]string{"URIError"},
|
|
&[_]string{"URL"},
|
|
&[_]string{"URLSearchParams"},
|
|
&[_]string{"Uint16Array"},
|
|
&[_]string{"Uint32Array"},
|
|
&[_]string{"Uint8Array"},
|
|
&[_]string{"Uint8ClampedArray"},
|
|
&[_]string{"WeakMap"},
|
|
&[_]string{"WeakSet"},
|
|
&[_]string{"WebAssembly"},
|
|
&[_]string{"clearInterval"},
|
|
&[_]string{"clearTimeout"},
|
|
&[_]string{"console"},
|
|
&[_]string{"decodeURI"},
|
|
&[_]string{"decodeURIComponent"},
|
|
&[_]string{"encodeURI"},
|
|
&[_]string{"encodeURIComponent"},
|
|
&[_]string{"escape"},
|
|
&[_]string{"globalThis"},
|
|
&[_]string{"isFinite"},
|
|
&[_]string{"isNaN"},
|
|
&[_]string{"parseFloat"},
|
|
&[_]string{"parseInt"},
|
|
&[_]string{"queueMicrotask"},
|
|
&[_]string{"setInterval"},
|
|
&[_]string{"setTimeout"},
|
|
&[_]string{"unescape"},
|
|
|
|
// Console method references are assumed to have no side effects
|
|
// https://developer.mozilla.org/en-US/docs/Web/API/console
|
|
&[_]string{ "console", "assert" },
|
|
&[_]string{ "console", "clear" },
|
|
&[_]string{ "console", "count" },
|
|
&[_]string{ "console", "countReset" },
|
|
&[_]string{ "console", "debug" },
|
|
&[_]string{ "console", "dir" },
|
|
&[_]string{ "console", "dirxml" },
|
|
&[_]string{ "console", "error" },
|
|
&[_]string{ "console", "group" },
|
|
&[_]string{ "console", "groupCollapsed" },
|
|
&[_]string{ "console", "groupEnd" },
|
|
&[_]string{ "console", "info" },
|
|
&[_]string{ "console", "log" },
|
|
&[_]string{ "console", "table" },
|
|
&[_]string{ "console", "time" },
|
|
&[_]string{ "console", "timeEnd" },
|
|
&[_]string{ "console", "timeLog" },
|
|
&[_]string{ "console", "trace" },
|
|
&[_]string{ "console", "warn" },
|
|
|
|
// CSSOM APIs
|
|
&[_]string{"CSSAnimation"},
|
|
&[_]string{"CSSFontFaceRule"},
|
|
&[_]string{"CSSImportRule"},
|
|
&[_]string{"CSSKeyframeRule"},
|
|
&[_]string{"CSSKeyframesRule"},
|
|
&[_]string{"CSSMediaRule"},
|
|
&[_]string{"CSSNamespaceRule"},
|
|
&[_]string{"CSSPageRule"},
|
|
&[_]string{"CSSRule"},
|
|
&[_]string{"CSSRuleList"},
|
|
&[_]string{"CSSStyleDeclaration"},
|
|
&[_]string{"CSSStyleRule"},
|
|
&[_]string{"CSSStyleSheet"},
|
|
&[_]string{"CSSSupportsRule"},
|
|
&[_]string{"CSSTransition"},
|
|
|
|
// SVG DOM
|
|
&[_]string{"SVGAElement"},
|
|
&[_]string{"SVGAngle"},
|
|
&[_]string{"SVGAnimateElement"},
|
|
&[_]string{"SVGAnimateMotionElement"},
|
|
&[_]string{"SVGAnimateTransformElement"},
|
|
&[_]string{"SVGAnimatedAngle"},
|
|
&[_]string{"SVGAnimatedBoolean"},
|
|
&[_]string{"SVGAnimatedEnumeration"},
|
|
&[_]string{"SVGAnimatedInteger"},
|
|
&[_]string{"SVGAnimatedLength"},
|
|
&[_]string{"SVGAnimatedLengthList"},
|
|
&[_]string{"SVGAnimatedNumber"},
|
|
&[_]string{"SVGAnimatedNumberList"},
|
|
&[_]string{"SVGAnimatedPreserveAspectRatio"},
|
|
&[_]string{"SVGAnimatedRect"},
|
|
&[_]string{"SVGAnimatedString"},
|
|
&[_]string{"SVGAnimatedTransformList"},
|
|
&[_]string{"SVGAnimationElement"},
|
|
&[_]string{"SVGCircleElement"},
|
|
&[_]string{"SVGClipPathElement"},
|
|
&[_]string{"SVGComponentTransferFunctionElement"},
|
|
&[_]string{"SVGDefsElement"},
|
|
&[_]string{"SVGDescElement"},
|
|
&[_]string{"SVGElement"},
|
|
&[_]string{"SVGEllipseElement"},
|
|
&[_]string{"SVGFEBlendElement"},
|
|
&[_]string{"SVGFEColorMatrixElement"},
|
|
&[_]string{"SVGFEComponentTransferElement"},
|
|
&[_]string{"SVGFECompositeElement"},
|
|
&[_]string{"SVGFEConvolveMatrixElement"},
|
|
&[_]string{"SVGFEDiffuseLightingElement"},
|
|
&[_]string{"SVGFEDisplacementMapElement"},
|
|
&[_]string{"SVGFEDistantLightElement"},
|
|
&[_]string{"SVGFEDropShadowElement"},
|
|
&[_]string{"SVGFEFloodElement"},
|
|
&[_]string{"SVGFEFuncAElement"},
|
|
&[_]string{"SVGFEFuncBElement"},
|
|
&[_]string{"SVGFEFuncGElement"},
|
|
&[_]string{"SVGFEFuncRElement"},
|
|
&[_]string{"SVGFEGaussianBlurElement"},
|
|
&[_]string{"SVGFEImageElement"},
|
|
&[_]string{"SVGFEMergeElement"},
|
|
&[_]string{"SVGFEMergeNodeElement"},
|
|
&[_]string{"SVGFEMorphologyElement"},
|
|
&[_]string{"SVGFEOffsetElement"},
|
|
&[_]string{"SVGFEPointLightElement"},
|
|
&[_]string{"SVGFESpecularLightingElement"},
|
|
&[_]string{"SVGFESpotLightElement"},
|
|
&[_]string{"SVGFETileElement"},
|
|
&[_]string{"SVGFETurbulenceElement"},
|
|
&[_]string{"SVGFilterElement"},
|
|
&[_]string{"SVGForeignObjectElement"},
|
|
&[_]string{"SVGGElement"},
|
|
&[_]string{"SVGGeometryElement"},
|
|
&[_]string{"SVGGradientElement"},
|
|
&[_]string{"SVGGraphicsElement"},
|
|
&[_]string{"SVGImageElement"},
|
|
&[_]string{"SVGLength"},
|
|
&[_]string{"SVGLengthList"},
|
|
&[_]string{"SVGLineElement"},
|
|
&[_]string{"SVGLinearGradientElement"},
|
|
&[_]string{"SVGMPathElement"},
|
|
&[_]string{"SVGMarkerElement"},
|
|
&[_]string{"SVGMaskElement"},
|
|
&[_]string{"SVGMatrix"},
|
|
&[_]string{"SVGMetadataElement"},
|
|
&[_]string{"SVGNumber"},
|
|
&[_]string{"SVGNumberList"},
|
|
&[_]string{"SVGPathElement"},
|
|
&[_]string{"SVGPatternElement"},
|
|
&[_]string{"SVGPoint"},
|
|
&[_]string{"SVGPointList"},
|
|
&[_]string{"SVGPolygonElement"},
|
|
&[_]string{"SVGPolylineElement"},
|
|
&[_]string{"SVGPreserveAspectRatio"},
|
|
&[_]string{"SVGRadialGradientElement"},
|
|
&[_]string{"SVGRect"},
|
|
&[_]string{"SVGRectElement"},
|
|
&[_]string{"SVGSVGElement"},
|
|
&[_]string{"SVGScriptElement"},
|
|
&[_]string{"SVGSetElement"},
|
|
&[_]string{"SVGStopElement"},
|
|
&[_]string{"SVGStringList"},
|
|
&[_]string{"SVGStyleElement"},
|
|
&[_]string{"SVGSwitchElement"},
|
|
&[_]string{"SVGSymbolElement"},
|
|
&[_]string{"SVGTSpanElement"},
|
|
&[_]string{"SVGTextContentElement"},
|
|
&[_]string{"SVGTextElement"},
|
|
&[_]string{"SVGTextPathElement"},
|
|
&[_]string{"SVGTextPositioningElement"},
|
|
&[_]string{"SVGTitleElement"},
|
|
&[_]string{"SVGTransform"},
|
|
&[_]string{"SVGTransformList"},
|
|
&[_]string{"SVGUnitTypes"},
|
|
&[_]string{"SVGUseElement"},
|
|
&[_]string{"SVGViewElement"},
|
|
|
|
// Other browser APIs
|
|
//
|
|
// This list contains all globals present in modern versions of Chrome, Safari,
|
|
// and Firefox except for the following properties, since they have a side effect
|
|
// of triggering layout (https://gist.github.com/paulirish/5d52fb081b3570c81e3a):
|
|
//
|
|
// - scrollX
|
|
// - scrollY
|
|
// - innerWidth
|
|
// - innerHeight
|
|
// - pageXOffset
|
|
// - pageYOffset
|
|
//
|
|
// The following globals have also been removed since they sometimes throw an
|
|
// exception when accessed, which is a side effect (for more information see
|
|
// https://stackoverflow.com/a/33047477):
|
|
//
|
|
// - localStorage
|
|
// - sessionStorage
|
|
//
|
|
&[_]string{"AnalyserNode"},
|
|
&[_]string{"Animation"},
|
|
&[_]string{"AnimationEffect"},
|
|
&[_]string{"AnimationEvent"},
|
|
&[_]string{"AnimationPlaybackEvent"},
|
|
&[_]string{"AnimationTimeline"},
|
|
&[_]string{"Attr"},
|
|
&[_]string{"Audio"},
|
|
&[_]string{"AudioBuffer"},
|
|
&[_]string{"AudioBufferSourceNode"},
|
|
&[_]string{"AudioDestinationNode"},
|
|
&[_]string{"AudioListener"},
|
|
&[_]string{"AudioNode"},
|
|
&[_]string{"AudioParam"},
|
|
&[_]string{"AudioProcessingEvent"},
|
|
&[_]string{"AudioScheduledSourceNode"},
|
|
&[_]string{"BarProp"},
|
|
&[_]string{"BeforeUnloadEvent"},
|
|
&[_]string{"BiquadFilterNode"},
|
|
&[_]string{"Blob"},
|
|
&[_]string{"BlobEvent"},
|
|
&[_]string{"ByteLengthQueuingStrategy"},
|
|
&[_]string{"CDATASection"},
|
|
&[_]string{"CSS"},
|
|
&[_]string{"CanvasGradient"},
|
|
&[_]string{"CanvasPattern"},
|
|
&[_]string{"CanvasRenderingContext2D"},
|
|
&[_]string{"ChannelMergerNode"},
|
|
&[_]string{"ChannelSplitterNode"},
|
|
&[_]string{"CharacterData"},
|
|
&[_]string{"ClipboardEvent"},
|
|
&[_]string{"CloseEvent"},
|
|
&[_]string{"Comment"},
|
|
&[_]string{"CompositionEvent"},
|
|
&[_]string{"ConvolverNode"},
|
|
&[_]string{"CountQueuingStrategy"},
|
|
&[_]string{"Crypto"},
|
|
&[_]string{"CustomElementRegistry"},
|
|
&[_]string{"CustomEvent"},
|
|
&[_]string{"DOMException"},
|
|
&[_]string{"DOMImplementation"},
|
|
&[_]string{"DOMMatrix"},
|
|
&[_]string{"DOMMatrixReadOnly"},
|
|
&[_]string{"DOMParser"},
|
|
&[_]string{"DOMPoint"},
|
|
&[_]string{"DOMPointReadOnly"},
|
|
&[_]string{"DOMQuad"},
|
|
&[_]string{"DOMRect"},
|
|
&[_]string{"DOMRectList"},
|
|
&[_]string{"DOMRectReadOnly"},
|
|
&[_]string{"DOMStringList"},
|
|
&[_]string{"DOMStringMap"},
|
|
&[_]string{"DOMTokenList"},
|
|
&[_]string{"DataTransfer"},
|
|
&[_]string{"DataTransferItem"},
|
|
&[_]string{"DataTransferItemList"},
|
|
&[_]string{"DelayNode"},
|
|
&[_]string{"Document"},
|
|
&[_]string{"DocumentFragment"},
|
|
&[_]string{"DocumentTimeline"},
|
|
&[_]string{"DocumentType"},
|
|
&[_]string{"DragEvent"},
|
|
&[_]string{"DynamicsCompressorNode"},
|
|
&[_]string{"Element"},
|
|
&[_]string{"ErrorEvent"},
|
|
&[_]string{"EventSource"},
|
|
&[_]string{"File"},
|
|
&[_]string{"FileList"},
|
|
&[_]string{"FileReader"},
|
|
&[_]string{"FocusEvent"},
|
|
&[_]string{"FontFace"},
|
|
&[_]string{"FormData"},
|
|
&[_]string{"GainNode"},
|
|
&[_]string{"Gamepad"},
|
|
&[_]string{"GamepadButton"},
|
|
&[_]string{"GamepadEvent"},
|
|
&[_]string{"Geolocation"},
|
|
&[_]string{"GeolocationPositionError"},
|
|
&[_]string{"HTMLAllCollection"},
|
|
&[_]string{"HTMLAnchorElement"},
|
|
&[_]string{"HTMLAreaElement"},
|
|
&[_]string{"HTMLAudioElement"},
|
|
&[_]string{"HTMLBRElement"},
|
|
&[_]string{"HTMLBaseElement"},
|
|
&[_]string{"HTMLBodyElement"},
|
|
&[_]string{"HTMLButtonElement"},
|
|
&[_]string{"HTMLCanvasElement"},
|
|
&[_]string{"HTMLCollection"},
|
|
&[_]string{"HTMLDListElement"},
|
|
&[_]string{"HTMLDataElement"},
|
|
&[_]string{"HTMLDataListElement"},
|
|
&[_]string{"HTMLDetailsElement"},
|
|
&[_]string{"HTMLDirectoryElement"},
|
|
&[_]string{"HTMLDivElement"},
|
|
&[_]string{"HTMLDocument"},
|
|
&[_]string{"HTMLElement"},
|
|
&[_]string{"HTMLEmbedElement"},
|
|
&[_]string{"HTMLFieldSetElement"},
|
|
&[_]string{"HTMLFontElement"},
|
|
&[_]string{"HTMLFormControlsCollection"},
|
|
&[_]string{"HTMLFormElement"},
|
|
&[_]string{"HTMLFrameElement"},
|
|
&[_]string{"HTMLFrameSetElement"},
|
|
&[_]string{"HTMLHRElement"},
|
|
&[_]string{"HTMLHeadElement"},
|
|
&[_]string{"HTMLHeadingElement"},
|
|
&[_]string{"HTMLHtmlElement"},
|
|
&[_]string{"HTMLIFrameElement"},
|
|
&[_]string{"HTMLImageElement"},
|
|
&[_]string{"HTMLInputElement"},
|
|
&[_]string{"HTMLLIElement"},
|
|
&[_]string{"HTMLLabelElement"},
|
|
&[_]string{"HTMLLegendElement"},
|
|
&[_]string{"HTMLLinkElement"},
|
|
&[_]string{"HTMLMapElement"},
|
|
&[_]string{"HTMLMarqueeElement"},
|
|
&[_]string{"HTMLMediaElement"},
|
|
&[_]string{"HTMLMenuElement"},
|
|
&[_]string{"HTMLMetaElement"},
|
|
&[_]string{"HTMLMeterElement"},
|
|
&[_]string{"HTMLModElement"},
|
|
&[_]string{"HTMLOListElement"},
|
|
&[_]string{"HTMLObjectElement"},
|
|
&[_]string{"HTMLOptGroupElement"},
|
|
&[_]string{"HTMLOptionElement"},
|
|
&[_]string{"HTMLOptionsCollection"},
|
|
&[_]string{"HTMLOutputElement"},
|
|
&[_]string{"HTMLParagraphElement"},
|
|
&[_]string{"HTMLParamElement"},
|
|
&[_]string{"HTMLPictureElement"},
|
|
&[_]string{"HTMLPreElement"},
|
|
&[_]string{"HTMLProgressElement"},
|
|
&[_]string{"HTMLQuoteElement"},
|
|
&[_]string{"HTMLScriptElement"},
|
|
&[_]string{"HTMLSelectElement"},
|
|
&[_]string{"HTMLSlotElement"},
|
|
&[_]string{"HTMLSourceElement"},
|
|
&[_]string{"HTMLSpanElement"},
|
|
&[_]string{"HTMLStyleElement"},
|
|
&[_]string{"HTMLTableCaptionElement"},
|
|
&[_]string{"HTMLTableCellElement"},
|
|
&[_]string{"HTMLTableColElement"},
|
|
&[_]string{"HTMLTableElement"},
|
|
&[_]string{"HTMLTableRowElement"},
|
|
&[_]string{"HTMLTableSectionElement"},
|
|
&[_]string{"HTMLTemplateElement"},
|
|
&[_]string{"HTMLTextAreaElement"},
|
|
&[_]string{"HTMLTimeElement"},
|
|
&[_]string{"HTMLTitleElement"},
|
|
&[_]string{"HTMLTrackElement"},
|
|
&[_]string{"HTMLUListElement"},
|
|
&[_]string{"HTMLUnknownElement"},
|
|
&[_]string{"HTMLVideoElement"},
|
|
&[_]string{"HashChangeEvent"},
|
|
&[_]string{"Headers"},
|
|
&[_]string{"History"},
|
|
&[_]string{"IDBCursor"},
|
|
&[_]string{"IDBCursorWithValue"},
|
|
&[_]string{"IDBDatabase"},
|
|
&[_]string{"IDBFactory"},
|
|
&[_]string{"IDBIndex"},
|
|
&[_]string{"IDBKeyRange"},
|
|
&[_]string{"IDBObjectStore"},
|
|
&[_]string{"IDBOpenDBRequest"},
|
|
&[_]string{"IDBRequest"},
|
|
&[_]string{"IDBTransaction"},
|
|
&[_]string{"IDBVersionChangeEvent"},
|
|
&[_]string{"Image"},
|
|
&[_]string{"ImageData"},
|
|
&[_]string{"InputEvent"},
|
|
&[_]string{"IntersectionObserver"},
|
|
&[_]string{"IntersectionObserverEntry"},
|
|
&[_]string{"KeyboardEvent"},
|
|
&[_]string{"KeyframeEffect"},
|
|
&[_]string{"Location"},
|
|
&[_]string{"MediaCapabilities"},
|
|
&[_]string{"MediaElementAudioSourceNode"},
|
|
&[_]string{"MediaEncryptedEvent"},
|
|
&[_]string{"MediaError"},
|
|
&[_]string{"MediaList"},
|
|
&[_]string{"MediaQueryList"},
|
|
&[_]string{"MediaQueryListEvent"},
|
|
&[_]string{"MediaRecorder"},
|
|
&[_]string{"MediaSource"},
|
|
&[_]string{"MediaStream"},
|
|
&[_]string{"MediaStreamAudioDestinationNode"},
|
|
&[_]string{"MediaStreamAudioSourceNode"},
|
|
&[_]string{"MediaStreamTrack"},
|
|
&[_]string{"MediaStreamTrackEvent"},
|
|
&[_]string{"MimeType"},
|
|
&[_]string{"MimeTypeArray"},
|
|
&[_]string{"MouseEvent"},
|
|
&[_]string{"MutationEvent"},
|
|
&[_]string{"MutationObserver"},
|
|
&[_]string{"MutationRecord"},
|
|
&[_]string{"NamedNodeMap"},
|
|
&[_]string{"Navigator"},
|
|
&[_]string{"Node"},
|
|
&[_]string{"NodeFilter"},
|
|
&[_]string{"NodeIterator"},
|
|
&[_]string{"NodeList"},
|
|
&[_]string{"Notification"},
|
|
&[_]string{"OfflineAudioCompletionEvent"},
|
|
&[_]string{"Option"},
|
|
&[_]string{"OscillatorNode"},
|
|
&[_]string{"PageTransitionEvent"},
|
|
&[_]string{"Path2D"},
|
|
&[_]string{"Performance"},
|
|
&[_]string{"PerformanceEntry"},
|
|
&[_]string{"PerformanceMark"},
|
|
&[_]string{"PerformanceMeasure"},
|
|
&[_]string{"PerformanceNavigation"},
|
|
&[_]string{"PerformanceObserver"},
|
|
&[_]string{"PerformanceObserverEntryList"},
|
|
&[_]string{"PerformanceResourceTiming"},
|
|
&[_]string{"PerformanceTiming"},
|
|
&[_]string{"PeriodicWave"},
|
|
&[_]string{"Plugin"},
|
|
&[_]string{"PluginArray"},
|
|
&[_]string{"PointerEvent"},
|
|
&[_]string{"PopStateEvent"},
|
|
&[_]string{"ProcessingInstruction"},
|
|
&[_]string{"ProgressEvent"},
|
|
&[_]string{"PromiseRejectionEvent"},
|
|
&[_]string{"RTCCertificate"},
|
|
&[_]string{"RTCDTMFSender"},
|
|
&[_]string{"RTCDTMFToneChangeEvent"},
|
|
&[_]string{"RTCDataChannel"},
|
|
&[_]string{"RTCDataChannelEvent"},
|
|
&[_]string{"RTCIceCandidate"},
|
|
&[_]string{"RTCPeerConnection"},
|
|
&[_]string{"RTCPeerConnectionIceEvent"},
|
|
&[_]string{"RTCRtpReceiver"},
|
|
&[_]string{"RTCRtpSender"},
|
|
&[_]string{"RTCRtpTransceiver"},
|
|
&[_]string{"RTCSessionDescription"},
|
|
&[_]string{"RTCStatsReport"},
|
|
&[_]string{"RTCTrackEvent"},
|
|
&[_]string{"RadioNodeList"},
|
|
&[_]string{"Range"},
|
|
&[_]string{"ReadableStream"},
|
|
&[_]string{"Request"},
|
|
&[_]string{"ResizeObserver"},
|
|
&[_]string{"ResizeObserverEntry"},
|
|
&[_]string{"Response"},
|
|
&[_]string{"Screen"},
|
|
&[_]string{"ScriptProcessorNode"},
|
|
&[_]string{"SecurityPolicyViolationEvent"},
|
|
&[_]string{"Selection"},
|
|
&[_]string{"ShadowRoot"},
|
|
&[_]string{"SourceBuffer"},
|
|
&[_]string{"SourceBufferList"},
|
|
&[_]string{"SpeechSynthesisEvent"},
|
|
&[_]string{"SpeechSynthesisUtterance"},
|
|
&[_]string{"StaticRange"},
|
|
&[_]string{"Storage"},
|
|
&[_]string{"StorageEvent"},
|
|
&[_]string{"StyleSheet"},
|
|
&[_]string{"StyleSheetList"},
|
|
&[_]string{"Text"},
|
|
&[_]string{"TextMetrics"},
|
|
&[_]string{"TextTrack"},
|
|
&[_]string{"TextTrackCue"},
|
|
&[_]string{"TextTrackCueList"},
|
|
&[_]string{"TextTrackList"},
|
|
&[_]string{"TimeRanges"},
|
|
&[_]string{"TrackEvent"},
|
|
&[_]string{"TransitionEvent"},
|
|
&[_]string{"TreeWalker"},
|
|
&[_]string{"UIEvent"},
|
|
&[_]string{"VTTCue"},
|
|
&[_]string{"ValidityState"},
|
|
&[_]string{"VisualViewport"},
|
|
&[_]string{"WaveShaperNode"},
|
|
&[_]string{"WebGLActiveInfo"},
|
|
&[_]string{"WebGLBuffer"},
|
|
&[_]string{"WebGLContextEvent"},
|
|
&[_]string{"WebGLFramebuffer"},
|
|
&[_]string{"WebGLProgram"},
|
|
&[_]string{"WebGLQuery"},
|
|
&[_]string{"WebGLRenderbuffer"},
|
|
&[_]string{"WebGLRenderingContext"},
|
|
&[_]string{"WebGLSampler"},
|
|
&[_]string{"WebGLShader"},
|
|
&[_]string{"WebGLShaderPrecisionFormat"},
|
|
&[_]string{"WebGLSync"},
|
|
&[_]string{"WebGLTexture"},
|
|
&[_]string{"WebGLUniformLocation"},
|
|
&[_]string{"WebKitCSSMatrix"},
|
|
&[_]string{"WebSocket"},
|
|
&[_]string{"WheelEvent"},
|
|
&[_]string{"Window"},
|
|
&[_]string{"Worker"},
|
|
&[_]string{"XMLDocument"},
|
|
&[_]string{"XMLHttpRequest"},
|
|
&[_]string{"XMLHttpRequestEventTarget"},
|
|
&[_]string{"XMLHttpRequestUpload"},
|
|
&[_]string{"XMLSerializer"},
|
|
&[_]string{"XPathEvaluator"},
|
|
&[_]string{"XPathExpression"},
|
|
&[_]string{"XPathResult"},
|
|
&[_]string{"XSLTProcessor"},
|
|
&[_]string{"alert"},
|
|
&[_]string{"atob"},
|
|
&[_]string{"blur"},
|
|
&[_]string{"btoa"},
|
|
&[_]string{"cancelAnimationFrame"},
|
|
&[_]string{"captureEvents"},
|
|
&[_]string{"close"},
|
|
&[_]string{"closed"},
|
|
&[_]string{"confirm"},
|
|
&[_]string{"customElements"},
|
|
&[_]string{"devicePixelRatio"},
|
|
&[_]string{"document"},
|
|
&[_]string{"event"},
|
|
&[_]string{"fetch"},
|
|
&[_]string{"find"},
|
|
&[_]string{"focus"},
|
|
&[_]string{"frameElement"},
|
|
&[_]string{"frames"},
|
|
&[_]string{"getComputedStyle"},
|
|
&[_]string{"getSelection"},
|
|
&[_]string{"history"},
|
|
&[_]string{"indexedDB"},
|
|
&[_]string{"isSecureContext"},
|
|
&[_]string{"length"},
|
|
&[_]string{"location"},
|
|
&[_]string{"locationbar"},
|
|
&[_]string{"matchMedia"},
|
|
&[_]string{"menubar"},
|
|
&[_]string{"moveBy"},
|
|
&[_]string{"moveTo"},
|
|
&[_]string{"name"},
|
|
&[_]string{"navigator"},
|
|
&[_]string{"onabort"},
|
|
&[_]string{"onafterprint"},
|
|
&[_]string{"onanimationend"},
|
|
&[_]string{"onanimationiteration"},
|
|
&[_]string{"onanimationstart"},
|
|
&[_]string{"onbeforeprint"},
|
|
&[_]string{"onbeforeunload"},
|
|
&[_]string{"onblur"},
|
|
&[_]string{"oncanplay"},
|
|
&[_]string{"oncanplaythrough"},
|
|
&[_]string{"onchange"},
|
|
&[_]string{"onclick"},
|
|
&[_]string{"oncontextmenu"},
|
|
&[_]string{"oncuechange"},
|
|
&[_]string{"ondblclick"},
|
|
&[_]string{"ondrag"},
|
|
&[_]string{"ondragend"},
|
|
&[_]string{"ondragenter"},
|
|
&[_]string{"ondragleave"},
|
|
&[_]string{"ondragover"},
|
|
&[_]string{"ondragstart"},
|
|
&[_]string{"ondrop"},
|
|
&[_]string{"ondurationchange"},
|
|
&[_]string{"onemptied"},
|
|
&[_]string{"onended"},
|
|
&[_]string{"onerror"},
|
|
&[_]string{"onfocus"},
|
|
&[_]string{"ongotpointercapture"},
|
|
&[_]string{"onhashchange"},
|
|
&[_]string{"oninput"},
|
|
&[_]string{"oninvalid"},
|
|
&[_]string{"onkeydown"},
|
|
&[_]string{"onkeypress"},
|
|
&[_]string{"onkeyup"},
|
|
&[_]string{"onlanguagechange"},
|
|
&[_]string{"onload"},
|
|
&[_]string{"onloadeddata"},
|
|
&[_]string{"onloadedmetadata"},
|
|
&[_]string{"onloadstart"},
|
|
&[_]string{"onlostpointercapture"},
|
|
&[_]string{"onmessage"},
|
|
&[_]string{"onmousedown"},
|
|
&[_]string{"onmouseenter"},
|
|
&[_]string{"onmouseleave"},
|
|
&[_]string{"onmousemove"},
|
|
&[_]string{"onmouseout"},
|
|
&[_]string{"onmouseover"},
|
|
&[_]string{"onmouseup"},
|
|
&[_]string{"onoffline"},
|
|
&[_]string{"ononline"},
|
|
&[_]string{"onpagehide"},
|
|
&[_]string{"onpageshow"},
|
|
&[_]string{"onpause"},
|
|
&[_]string{"onplay"},
|
|
&[_]string{"onplaying"},
|
|
&[_]string{"onpointercancel"},
|
|
&[_]string{"onpointerdown"},
|
|
&[_]string{"onpointerenter"},
|
|
&[_]string{"onpointerleave"},
|
|
&[_]string{"onpointermove"},
|
|
&[_]string{"onpointerout"},
|
|
&[_]string{"onpointerover"},
|
|
&[_]string{"onpointerup"},
|
|
&[_]string{"onpopstate"},
|
|
&[_]string{"onprogress"},
|
|
&[_]string{"onratechange"},
|
|
&[_]string{"onrejectionhandled"},
|
|
&[_]string{"onreset"},
|
|
&[_]string{"onresize"},
|
|
&[_]string{"onscroll"},
|
|
&[_]string{"onseeked"},
|
|
&[_]string{"onseeking"},
|
|
&[_]string{"onselect"},
|
|
&[_]string{"onstalled"},
|
|
&[_]string{"onstorage"},
|
|
&[_]string{"onsubmit"},
|
|
&[_]string{"onsuspend"},
|
|
&[_]string{"ontimeupdate"},
|
|
&[_]string{"ontoggle"},
|
|
&[_]string{"ontransitioncancel"},
|
|
&[_]string{"ontransitionend"},
|
|
&[_]string{"ontransitionrun"},
|
|
&[_]string{"ontransitionstart"},
|
|
&[_]string{"onunhandledrejection"},
|
|
&[_]string{"onunload"},
|
|
&[_]string{"onvolumechange"},
|
|
&[_]string{"onwaiting"},
|
|
&[_]string{"onwebkitanimationend"},
|
|
&[_]string{"onwebkitanimationiteration"},
|
|
&[_]string{"onwebkitanimationstart"},
|
|
&[_]string{"onwebkittransitionend"},
|
|
&[_]string{"onwheel"},
|
|
&[_]string{"open"},
|
|
&[_]string{"opener"},
|
|
&[_]string{"origin"},
|
|
&[_]string{"outerHeight"},
|
|
&[_]string{"outerWidth"},
|
|
&[_]string{"parent"},
|
|
&[_]string{"performance"},
|
|
&[_]string{"personalbar"},
|
|
&[_]string{"postMessage"},
|
|
&[_]string{"print"},
|
|
&[_]string{"prompt"},
|
|
&[_]string{"releaseEvents"},
|
|
&[_]string{"requestAnimationFrame"},
|
|
&[_]string{"resizeBy"},
|
|
&[_]string{"resizeTo"},
|
|
&[_]string{"screen"},
|
|
&[_]string{"screenLeft"},
|
|
&[_]string{"screenTop"},
|
|
&[_]string{"screenX"},
|
|
&[_]string{"screenY"},
|
|
&[_]string{"scroll"},
|
|
&[_]string{"scrollBy"},
|
|
&[_]string{"scrollTo"},
|
|
&[_]string{"scrollbars"},
|
|
&[_]string{"self"},
|
|
&[_]string{"speechSynthesis"},
|
|
&[_]string{"status"},
|
|
&[_]string{"statusbar"},
|
|
&[_]string{"stop"},
|
|
&[_]string{"toolbar"},
|
|
&[_]string{"top"},
|
|
&[_]string{"webkitURL"},
|
|
&[_]string{"window"},
|
|
};
|