Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
L
lcc-shape
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
wangmingming
lcc-shape
Commits
a3b39a44
Commit
a3b39a44
authored
Aug 07, 2023
by
wangmingming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
7777
parent
8f1c663b
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
5565 additions
and
1714 deletions
+5565
-1714
collect.js
env/collect.js
+4
-1
js_dom_run.js
js_dom_run.js
+949
-145
Window.js
jsdom/lib/jsdom/browser/Window.js
+4
-4
utils.js
jsdom/lib/jsdom/living/generated/utils.js
+3
-3
HTMLCanvasElement-impl.js
jsdom/lib/jsdom/living/nodes/HTMLCanvasElement-impl.js
+5
-3
2.log
logs/2.log
+4600
-1558
No files found.
env/collect.js
View file @
a3b39a44
...
...
@@ -63,12 +63,15 @@ let sss = [{
"fillStyle"
:
"#000000"
,
"fillText"
:
[
"⛎"
,
-
1
,
96
],
"imageData"
:
[
62
,
28
,
1
,
1
]
}]
}
]
let
imgRes
=
{};
for
(
let
i
=
0
;
i
<
sss
.
length
;
i
++
)
{
var
a
=
document
.
createElement
(
'canvas'
)
a
.
width
=
96
a
.
height
=
96
let
ctx
=
a
.
getContext
(
'2d'
);
let
s
=
sss
[
i
];
ctx
.
font
=
s
.
font
;
...
...
js_dom_run.js
View file @
a3b39a44
...
...
@@ -59,9 +59,9 @@ var v_saf;
}();
const
jsdom
=
require
(
"./jsdom"
);
const
path
=
require
(
"ghost-cursor"
).
path
;
const
{
Worker
,
isMainThread
,
parentPort
,
workerData
}
=
require
(
'worker_threads'
);
//
const {
//
Worker, isMainThread, parentPort, workerData
//
} = require('worker_threads');
const
crypto
=
require
(
"crypto"
);
// 引入 jsdom
var
_random
=
Math
.
random
...
...
@@ -503,7 +503,7 @@ const dom = new JSDOM(`
window
=
dom
.
window
;
class
CanvasRenderingContext2D
{
class
Offscreen
CanvasRenderingContext2D
{
imageDatas
=
{
"18,90,1,1"
:
[
214
,
122
,
6
,
255
],
...
...
@@ -548,278 +548,278 @@ class CanvasRenderingContext2D {
}
get
canvas
()
{
console
.
log
(
'CanvasRenderingContext2D.canvas.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.canvas.get'
)
}
get
globalAlpha
()
{
console
.
log
(
'CanvasRenderingContext2D.globalAlpha.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.globalAlpha.get'
)
}
set
globalAlpha
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.globalAlpha.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.globalAlpha.set'
,
args
)
}
get
globalCompositeOperation
()
{
console
.
log
(
'CanvasRenderingContext2D.globalCompositeOperation.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.globalCompositeOperation.get'
)
}
set
globalCompositeOperation
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.globalCompositeOperation.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.globalCompositeOperation.set'
,
args
)
}
get
filter
()
{
console
.
log
(
'CanvasRenderingContext2D.filter.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.filter.get'
)
}
set
filter
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.filter.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.filter.set'
,
args
)
}
get
imageSmoothingEnabled
()
{
console
.
log
(
'CanvasRenderingContext2D.imageSmoothingEnabled.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.imageSmoothingEnabled.get'
)
}
set
imageSmoothingEnabled
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.imageSmoothingEnabled.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.imageSmoothingEnabled.set'
,
args
)
}
get
imageSmoothingQuality
()
{
console
.
log
(
'CanvasRenderingContext2D.imageSmoothingQuality.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.imageSmoothingQuality.get'
)
}
set
imageSmoothingQuality
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.imageSmoothingQuality.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.imageSmoothingQuality.set'
,
args
)
}
get
strokeStyle
()
{
console
.
log
(
'CanvasRenderingContext2D.strokeStyle.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.strokeStyle.get'
)
}
set
strokeStyle
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.strokeStyle.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.strokeStyle.set'
,
args
)
return
this
.
_context
.
strokeStyle
=
args
}
get
fillStyle
()
{
console
.
log
(
'CanvasRenderingContext2D.fillStyle.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.fillStyle.get'
)
}
set
fillStyle
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.fillStyle.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.fillStyle.set'
,
args
)
this
.
_context
.
canvas
.
fillStyle
=
args
}
get
shadowOffsetX
()
{
console
.
log
(
'CanvasRenderingContext2D.shadowOffsetX.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.shadowOffsetX.get'
)
}
set
shadowOffsetX
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.shadowOffsetX.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.shadowOffsetX.set'
,
args
)
this
.
_context
.
shadowOffsetX
=
args
}
get
shadowOffsetY
()
{
console
.
log
(
'CanvasRenderingContext2D.shadowOffsetY.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.shadowOffsetY.get'
)
}
set
shadowOffsetY
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.shadowOffsetY.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.shadowOffsetY.set'
,
args
)
this
.
_context
.
shadowOffsetY
=
args
}
get
shadowBlur
()
{
console
.
log
(
'CanvasRenderingContext2D.shadowBlur.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.shadowBlur.get'
)
}
set
shadowBlur
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.shadowBlur.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.shadowBlur.set'
,
args
)
this
.
_context
.
shadowBlur
=
args
}
get
shadowColor
()
{
console
.
log
(
'CanvasRenderingContext2D.shadowColor.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.shadowColor.get'
)
}
set
shadowColor
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.shadowColor.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.shadowColor.set'
,
args
)
this
.
_context
.
shadowColor
=
args
}
get
lineWidth
()
{
console
.
log
(
'CanvasRenderingContext2D.lineWidth.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineWidth.get'
)
}
set
lineWidth
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.lineWidth.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineWidth.set'
,
args
)
this
.
_context
.
lineWidth
=
args
;
}
get
lineCap
()
{
console
.
log
(
'CanvasRenderingContext2D.lineCap.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineCap.get'
)
}
set
lineCap
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.lineCap.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineCap.set'
,
args
)
}
get
lineJoin
()
{
console
.
log
(
'CanvasRenderingContext2D.lineJoin.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineJoin.get'
)
}
set
lineJoin
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.lineJoin.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineJoin.set'
,
args
)
}
get
miterLimit
()
{
console
.
log
(
'CanvasRenderingContext2D.miterLimit.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.miterLimit.get'
)
}
set
miterLimit
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.miterLimit.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.miterLimit.set'
,
args
)
}
get
lineDashOffset
()
{
console
.
log
(
'CanvasRenderingContext2D.lineDashOffset.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineDashOffset.get'
)
}
set
lineDashOffset
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.lineDashOffset.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineDashOffset.set'
,
args
)
}
get
font
()
{
console
.
log
(
'CanvasRenderingContext2D.font.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.font.get'
)
return
this
.
_context
.
font
;
}
get
textAlign
()
{
console
.
log
(
'CanvasRenderingContext2D.textAlign.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.textAlign.get'
)
}
set
textAlign
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.textAlign.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.textAlign.set'
,
args
)
}
get
textBaseline
()
{
console
.
log
(
'CanvasRenderingContext2D.textBaseline.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.textBaseline.get'
)
return
this
.
_context
.
textBaseline
}
set
textBaseline
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.textBaseline.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.textBaseline.set'
,
args
)
this
.
_context
.
textBaseline
=
args
}
get
direction
()
{
console
.
log
(
'CanvasRenderingContext2D.direction.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.direction.get'
)
return
this
.
_context
.
direction
;
}
set
direction
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.direction.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.direction.set'
,
args
)
this
.
_context
.
direction
=
args
}
get
fontKerning
()
{
console
.
log
(
'CanvasRenderingContext2D.fontKerning.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.fontKerning.get'
)
}
set
fontKerning
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.fontKerning.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.fontKerning.set'
,
args
)
}
get
fontStretch
()
{
console
.
log
(
'CanvasRenderingContext2D.fontStretch.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.fontStretch.get'
)
}
set
fontStretch
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.fontStretch.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.fontStretch.set'
,
args
)
}
get
fontVariantCaps
()
{
console
.
log
(
'CanvasRenderingContext2D.fontVariantCaps.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.fontVariantCaps.get'
)
}
set
fontVariantCaps
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.fontVariantCaps.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.fontVariantCaps.set'
,
args
)
}
get
letterSpacing
()
{
console
.
log
(
'CanvasRenderingContext2D.letterSpacing.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.letterSpacing.get'
)
}
set
letterSpacing
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.letterSpacing.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.letterSpacing.set'
,
args
)
}
get
textRendering
()
{
console
.
log
(
'CanvasRenderingContext2D.textRendering.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.textRendering.get'
)
}
set
textRendering
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.textRendering.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.textRendering.set'
,
args
)
}
get
wordSpacing
()
{
console
.
log
(
'CanvasRenderingContext2D.wordSpacing.get'
)
console
.
log
(
'CanvasRenderingContext2D
22
.wordSpacing.get'
)
}
set
wordSpacing
(
args
)
{
console
.
log
(
'CanvasRenderingContext2D.wordSpacing.set'
,
args
)
console
.
log
(
'CanvasRenderingContext2D
22
.wordSpacing.set'
,
args
)
}
clip
()
{
console
.
log
(
'CanvasRenderingContext2D.clip'
)
console
.
log
(
'CanvasRenderingContext2D
22
.clip'
)
}
createConicGradient
()
{
console
.
log
(
'CanvasRenderingContext2D.createConicGradient'
)
console
.
log
(
'CanvasRenderingContext2D
22
.createConicGradient'
)
}
createImageData
()
{
console
.
log
(
'CanvasRenderingContext2D.createImageData'
)
console
.
log
(
'CanvasRenderingContext2D
22
.createImageData'
)
}
createLinearGradient
()
{
console
.
log
(
'CanvasRenderingContext2D.createLinearGradient'
)
console
.
log
(
'CanvasRenderingContext2D
22
.createLinearGradient'
)
return
this
.
_context
.
createLinearGradient
(...
arguments
)
}
createPattern
()
{
console
.
log
(
'CanvasRenderingContext2D.createPattern'
)
console
.
log
(
'CanvasRenderingContext2D
22
.createPattern'
)
}
createRadialGradient
()
{
console
.
log
(
'CanvasRenderingContext2D.createRadialGradient'
)
console
.
log
(
'CanvasRenderingContext2D
22
.createRadialGradient'
)
}
drawFocusIfNeeded
()
{
console
.
log
(
'CanvasRenderingContext2D.drawFocusIfNeeded'
)
console
.
log
(
'CanvasRenderingContext2D
22
.drawFocusIfNeeded'
)
}
drawImage
()
{
console
.
log
(
'CanvasRenderingContext2D.drawImage'
)
console
.
log
(
'CanvasRenderingContext2D
22
.drawImage'
)
this
.
_context
.
drawImage
(...
arguments
)
}
fill
()
{
console
.
log
(
'CanvasRenderingContext2D.fill'
)
console
.
log
(
'CanvasRenderingContext2D
22
.fill'
)
}
fillText
()
{
console
.
log
(
'CanvasRenderingContext2D.fillText'
,
...
arguments
)
console
.
log
(
'CanvasRenderingContext2D
22
.fillText'
,
...
arguments
)
this
.
_context
.
fillText
(...
arguments
)
this
.
_fillText
=
[
arguments
[
0
],
arguments
[
1
],
arguments
[
2
]]
}
getContextAttributes
()
{
console
.
log
(
'CanvasRenderingContext2D.getContextAttributes'
)
console
.
log
(
'CanvasRenderingContext2D
22
.getContextAttributes'
)
}
getImageData
()
{
...
...
@@ -839,152 +839,152 @@ class CanvasRenderingContext2D {
res
.
data
[
2
]
=
parseInt
(
tdata
[
2
]
*
t
)
res
.
data
[
3
]
=
parseInt
(
tdata
[
3
]
*
t
)
}
console
.
log
(
'CanvasRenderingContext2D.getImageData'
,
...
arguments
,
res
)
console
.
log
(
'CanvasRenderingContext2D
22
.getImageData'
,
...
arguments
,
res
)
return
res
}
getLineDash
()
{
console
.
log
(
'CanvasRenderingContext2D.getLineDash'
)
console
.
log
(
'CanvasRenderingContext2D
22
.getLineDash'
)
}
getTransform
()
{
console
.
log
(
'CanvasRenderingContext2D.getTransform'
)
console
.
log
(
'CanvasRenderingContext2D
22
.getTransform'
)
}
isContextLost
()
{
console
.
log
(
'CanvasRenderingContext2D.isContextLost'
)
console
.
log
(
'CanvasRenderingContext2D
22
.isContextLost'
)
}
isPointInPath
()
{
console
.
log
(
'CanvasRenderingContext2D.isPointInPath'
)
console
.
log
(
'CanvasRenderingContext2D
22
.isPointInPath'
)
}
isPointInStroke
()
{
console
.
log
(
'CanvasRenderingContext2D.isPointInStroke'
)
console
.
log
(
'CanvasRenderingContext2D
22
.isPointInStroke'
)
}
putImageData
()
{
console
.
log
(
'CanvasRenderingContext2D.putImageData'
)
console
.
log
(
'CanvasRenderingContext2D
22
.putImageData'
)
}
reset
()
{
console
.
log
(
'CanvasRenderingContext2D.reset'
)
console
.
log
(
'CanvasRenderingContext2D
22
.reset'
)
}
roundRect
()
{
console
.
log
(
'CanvasRenderingContext2D.roundRect'
)
console
.
log
(
'CanvasRenderingContext2D
22
.roundRect'
)
}
save
()
{
console
.
log
(
'CanvasRenderingContext2D.save'
)
console
.
log
(
'CanvasRenderingContext2D
22
.save'
)
}
scale
()
{
console
.
log
(
'CanvasRenderingContext2D.scale'
)
console
.
log
(
'CanvasRenderingContext2D
22
.scale'
)
}
setLineDash
()
{
console
.
log
(
'CanvasRenderingContext2D.setLineDash'
)
console
.
log
(
'CanvasRenderingContext2D
22
.setLineDash'
)
}
setTransform
()
{
console
.
log
(
'CanvasRenderingContext2D.setTransform'
)
console
.
log
(
'CanvasRenderingContext2D
22
.setTransform'
)
}
stroke
()
{
console
.
log
(
'CanvasRenderingContext2D.stroke'
)
console
.
log
(
'CanvasRenderingContext2D
22
.stroke'
)
this
.
_context
.
stroke
()
}
strokeText
()
{
console
.
log
(
'CanvasRenderingContext2D.strokeText'
)
console
.
log
(
'CanvasRenderingContext2D
22
.strokeText'
)
}
transform
()
{
console
.
log
(
'CanvasRenderingContext2D.transform'
)
console
.
log
(
'CanvasRenderingContext2D
22
.transform'
)
}
translate
()
{
console
.
log
(
'CanvasRenderingContext2D.translate'
)
console
.
log
(
'CanvasRenderingContext2D
22
.translate'
)
}
arc
()
{
console
.
log
(
'CanvasRenderingContext2D.arc'
)
console
.
log
(
'CanvasRenderingContext2D
22
.arc'
)
return
this
.
_context
.
arc
(...
arguments
)
}
arcTo
()
{
console
.
log
(
'CanvasRenderingContext2D.arcTo'
)
console
.
log
(
'CanvasRenderingContext2D
22
.arcTo'
)
}
beginPath
()
{
console
.
log
(
'CanvasRenderingContext2D.beginPath'
)
console
.
log
(
'CanvasRenderingContext2D
22
.beginPath'
)
return
this
.
_context
.
beginPath
()
}
bezierCurveTo
()
{
console
.
log
(
'CanvasRenderingContext2D.bezierCurveTo'
)
console
.
log
(
'CanvasRenderingContext2D
22
.bezierCurveTo'
)
}
clearRect
()
{
console
.
log
(
'CanvasRenderingContext2D.clearRect'
)
console
.
log
(
'CanvasRenderingContext2D
22
.clearRect'
)
}
closePath
()
{
console
.
log
(
'CanvasRenderingContext2D.closePath'
)
console
.
log
(
'CanvasRenderingContext2D
22
.closePath'
)
return
this
.
_context
.
closePath
(...
arguments
)
}
ellipse
()
{
console
.
log
(
'CanvasRenderingContext2D.ellipse'
)
console
.
log
(
'CanvasRenderingContext2D
22
.ellipse'
)
}
fillRect
()
{
console
.
log
(
'CanvasRenderingContext2D.fillRect'
)
console
.
log
(
'CanvasRenderingContext2D
22
.fillRect'
)
return
this
.
_context
.
fillRect
(...
arguments
)
}
lineTo
()
{
console
.
log
(
'CanvasRenderingContext2D.lineTo'
)
console
.
log
(
'CanvasRenderingContext2D
22
.lineTo'
)
return
this
.
_context
.
lineTo
(...
arguments
)
}
moveTo
()
{
console
.
log
(
'CanvasRenderingContext2D.moveTo'
)
console
.
log
(
'CanvasRenderingContext2D
22
.moveTo'
)
return
this
.
_context
.
moveTo
(...
arguments
)
}
quadraticCurveTo
()
{
console
.
log
(
'CanvasRenderingContext2D.quadraticCurveTo'
)
console
.
log
(
'CanvasRenderingContext2D
22
.quadraticCurveTo'
)
}
rect
()
{
console
.
log
(
'CanvasRenderingContext2D.rect'
)
console
.
log
(
'CanvasRenderingContext2D
22
.rect'
)
}
resetTransform
()
{
console
.
log
(
'CanvasRenderingContext2D.resetTransform'
)
console
.
log
(
'CanvasRenderingContext2D
22
.resetTransform'
)
}
restore
()
{
console
.
log
(
'CanvasRenderingContext2D.restore'
)
console
.
log
(
'CanvasRenderingContext2D
22
.restore'
)
}
rotate
()
{
console
.
log
(
'CanvasRenderingContext2D.rotate'
)
console
.
log
(
'CanvasRenderingContext2D
22
.rotate'
)
}
strokeRect
()
{
console
.
log
(
'CanvasRenderingContext2D.strokeRect'
)
console
.
log
(
'CanvasRenderingContext2D
22
.strokeRect'
)
}
}
Object
.
defineProperties
(
CanvasRenderingContext2D
.
prototype
,
{
Object
.
defineProperties
(
Offscreen
CanvasRenderingContext2D
.
prototype
,
{
canvas
:
{
enumerable
:
true
},
globalAlpha
:
{
enumerable
:
true
},
globalCompositeOperation
:
{
enumerable
:
true
},
...
...
@@ -1079,23 +1079,820 @@ var v_saf;
}),
u
(
Function
.
prototype
.
toString
,
"toString"
),
v_saf
=
u
}();
let
r
=
{}
Object
.
keys
(
Object
.
getOwnPropertyDescriptors
(
CanvasRenderingContext2D
.
prototype
)).
forEach
(
e
=>
{
Object
.
keys
(
Object
.
getOwnPropertyDescriptors
(
Offscreen
CanvasRenderingContext2D
.
prototype
)).
forEach
(
e
=>
{
r
[
e
]
=
{}
if
(
Object
.
getOwnPropertyDescriptor
(
CanvasRenderingContext2D
.
prototype
,
e
)[
'value'
])
{
r
[
e
][
'value'
]
=
v_saf
(
Object
.
getOwnPropertyDescriptor
(
CanvasRenderingContext2D
.
prototype
,
e
)[
'value'
])
if
(
Object
.
getOwnPropertyDescriptor
(
Offscreen
CanvasRenderingContext2D
.
prototype
,
e
)[
'value'
])
{
r
[
e
][
'value'
]
=
v_saf
(
Object
.
getOwnPropertyDescriptor
(
Offscreen
CanvasRenderingContext2D
.
prototype
,
e
)[
'value'
])
}
if
(
Object
.
getOwnPropertyDescriptor
(
CanvasRenderingContext2D
.
prototype
,
e
)[
'get'
])
{
r
[
e
][
'get'
]
=
v_saf
(
Object
.
getOwnPropertyDescriptor
(
CanvasRenderingContext2D
.
prototype
,
e
)[
'get'
],
undefined
,
'get '
)
if
(
Object
.
getOwnPropertyDescriptor
(
Offscreen
CanvasRenderingContext2D
.
prototype
,
e
)[
'get'
])
{
r
[
e
][
'get'
]
=
v_saf
(
Object
.
getOwnPropertyDescriptor
(
Offscreen
CanvasRenderingContext2D
.
prototype
,
e
)[
'get'
],
undefined
,
'get '
)
}
if
(
Object
.
getOwnPropertyDescriptor
(
CanvasRenderingContext2D
.
prototype
,
e
)[
'set'
])
{
r
[
e
][
'set'
]
=
v_saf
(
Object
.
getOwnPropertyDescriptor
(
CanvasRenderingContext2D
.
prototype
,
e
)[
'set'
],
undefined
,
'set '
)
if
(
Object
.
getOwnPropertyDescriptor
(
Offscreen
CanvasRenderingContext2D
.
prototype
,
e
)[
'set'
])
{
r
[
e
][
'set'
]
=
v_saf
(
Object
.
getOwnPropertyDescriptor
(
Offscreen
CanvasRenderingContext2D
.
prototype
,
e
)[
'set'
],
undefined
,
'set '
)
}
r
[
e
][
'enumerable'
]
=
true
})
Object
.
defineProperties
(
CanvasRenderingContext2D
.
prototype
,
r
)
Object
.
defineProperties
(
OffscreenCanvasRenderingContext2D
.
prototype
,
r
)
window
.
OffscreenCanvasRenderingContext2D
=
OffscreenCanvasRenderingContext2D
window
.
CanvasRenderingContext2D
=
OffscreenCanvasRenderingContext2D
var
WebGLRenderingContext
=
class
WebGLRenderingContext
{
constructor
(
aaa
)
{
console
.
log
(
'new WebGLRenderingContext'
,
aaa
)
}
createBuffer
()
{
v_console_log
(
' [*] WebGLRenderingContext -> createBuffer[func]'
);
return
v_new
(
WebGLBuffer
)
}
bindBuffer
(
target
,
buffer
)
{
v_console_log
(
' [*] WebGLRenderingContext -> bindBuffer[func]'
,
target
,
buffer
);
return
v_new
(
WebGLBuffer
)
}
getAttribLocation
(
program
,
name
)
{
v_console_log
(
' [*] WebGLRenderingContext -> getAttribLocation[func]'
,
program
,
name
);
switch
(
name
)
{
case
'aPosition'
:
return
0
;
case
'aColor'
:
return
1
;
}
}
vertexAttribPointer
(
index
,
size
,
type
,
normalized
,
stride
,
offset
)
{
v_console_log
(
' [*] WebGLRenderingContext -> vertexAttribPointer[func]'
,
index
,
size
,
type
,
normalized
,
stride
,
offset
);
}
enableVertexAttribArray
(
index
)
{
v_console_log
(
' [*] WebGLRenderingContext -> enableVertexAttribArray[func]'
,
index
);
}
useProgram
(
index
)
{
v_console_log
(
' [*] WebGLRenderingContext -> useProgram[func]'
,
index
);
}
getUniformLocation
(
program
,
name
)
{
v_console_log
(
' [*] WebGLRenderingContext -> getUniformLocation[func]'
,
program
,
name
);
return
proxy
({},
'getUniformLocation'
)
}
uniform4fv
(
program
,
name
)
{
v_console_log
(
' [*] WebGLRenderingContext -> uniform4fv[func]'
,
program
,
name
);
}
drawArrays
(
mode
,
first
,
count
)
{
v_console_log
(
' [*] WebGLRenderingContext -> drawArrays[func]'
,
mode
,
first
,
count
);
}
readPixels
(
x
,
y
,
width
,
height
,
format
,
type
,
pixels
)
{
// for (let i = 0; i < pixels.length - 1; i++) {
// pixels.fill(parseInt(Math.random() * 210 + 10), i, i + 1)
// }
v_console_log
(
' [*] WebGLRenderingContext -> readPixels[func]'
,
x
,
y
,
width
,
height
,
format
,
type
,
pixels
)
}
bufferData
(
target
,
size
,
srcData
,
usage
,
srcOffSet
,
length
)
{
v_console_log
(
' [*] WebGLRenderingContext -> bufferData[func]'
,
target
,
size
,
srcData
,
usage
,
srcOffSet
,
length
);
return
v_new
(
WebGLBuffer
)
}
createProgram
()
{
v_console_log
(
' [*] WebGLRenderingContext -> createProgram[func]'
);
return
v_new
(
WebGLProgram
)
}
createShader
(
a
)
{
v_console_log
(
' [*] WebGLRenderingContext -> createShader[func]'
,
a
);
return
v_new
(
WebGLShader
)
}
shaderSource
(
shader
,
originalSource
)
{
v_console_log
(
' [*] WebGLRenderingContext -> shaderSource[func]'
,
shader
,
originalSource
);
this
.
_originalSource
=
originalSource
;
}
compileShader
(
shader
)
{
v_console_log
(
' [*] WebGLRenderingContext -> compileShader[func]'
,
shader
);
// this._originalSource = originalSource;
}
getShaderParameter
(
shader
,
pname
)
{
v_console_log
(
' [*] WebGLRenderingContext -> getShaderParameter[func]'
,
shader
,
pname
);
switch
(
pname
)
{
case
35713
:
return
true
;
break
;
}
}
attachShader
(
program
,
shader
)
{
v_console_log
(
' [*] WebGLRenderingContext -> attachShader[func]'
,
program
,
shader
);
}
linkProgram
(
program
,
shader
)
{
v_console_log
(
' [*] WebGLRenderingContext -> linkProgram[func]'
,
program
,
shader
);
}
getProgramParameter
(
program
,
pname
)
{
v_console_log
(
' [*] WebGLRenderingContext -> getProgramParameter[func]'
,
program
,
pname
);
if
(
pname
===
35714
)
{
return
true
;
}
}
getSupportedExtensions
()
{
// window.debug = true;
v_console_log
(
' [*] WebGLRenderingContext -> getSupportedExtensions[func]'
)
return
[
"ANGLE_instanced_arrays"
,
"EXT_blend_minmax"
,
"EXT_color_buffer_half_float"
,
"EXT_disjoint_timer_query"
,
"EXT_float_blend"
,
"EXT_frag_depth"
,
"EXT_shader_texture_lod"
,
"EXT_texture_compression_bptc"
,
"EXT_texture_compression_rgtc"
,
"EXT_texture_filter_anisotropic"
,
"WEBKIT_EXT_texture_filter_anisotropic"
,
"EXT_sRGB"
,
"KHR_parallel_shader_compile"
,
"OES_element_index_uint"
,
"OES_fbo_render_mipmap"
,
"OES_standard_derivatives"
,
"OES_texture_float"
,
"OES_texture_float_linear"
,
"OES_texture_half_float"
,
"OES_texture_half_float_linear"
,
"OES_vertex_array_object"
,
"WEBGL_color_buffer_float"
,
"WEBGL_compressed_texture_s3tc"
,
"WEBKIT_WEBGL_compressed_texture_s3tc"
,
"WEBGL_compressed_texture_s3tc_srgb"
,
"WEBGL_debug_renderer_info"
,
"WEBGL_debug_shaders"
,
"WEBGL_depth_texture"
,
"WEBKIT_WEBGL_depth_texture"
,
"WEBGL_draw_buffers"
,
"WEBGL_lose_context"
,
"WEBKIT_WEBGL_lose_context"
,
"WEBGL_multi_draw"
,
]
}
getExtension
(
key
)
{
v_console_log
(
' [*] WebGLRenderingContext -> getExtension[func]:'
,
key
)
class
WebGLDebugRendererInfo
{
get
UNMASKED_VENDOR_WEBGL
()
{
return
37445
}
get
UNMASKED_RENDERER_WEBGL
()
{
return
37446
}
}
class
EXTTextureFilterAnisotropic
{
}
class
WebGLLoseContext
{
loseContext
()
{
}
restoreContext
()
{
}
}
if
(
key
==
'WEBGL_debug_renderer_info'
)
{
var
r
=
new
WebGLDebugRendererInfo
}
if
(
key
==
'EXT_texture_filter_anisotropic'
)
{
var
r
=
new
EXTTextureFilterAnisotropic
}
if
(
key
==
'WEBGL_lose_context'
)
{
var
r
=
new
WebGLLoseContext
}
else
{
var
r
=
new
WebGLDebugRendererInfo
}
return
proxy
(
r
,
'new '
+
key
)
}
getParameter
(
key
)
{
v_console_log
(
' [*] WebGLRenderingContext -> getParameter[func]:'
,
key
)
let
res
;
let
_toggle
=
{
3413
:
8
,
3412
:
8
,
3411
:
8
,
3410
:
8
,
3414
:
24
,
35661
:
32
,
34076
:
16384
,
36349
:
1024
,
34024
:
16384
,
34930
:
16
,
3379
:
16384
,
36348
:
31
,
34921
:
16
,
35660
:
16
,
36347
:
1024
,
7937
:
'WebKit WebGL'
,
35724
:
'WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium)'
,
3415
:
0
,
7936
:
'WebKit'
,
7938
:
'WebGL 1.0 (OpenGL ES 2.0 Chromium)'
,
37445
:
'Google Inc.'
,
// 37446: 'ANGLE (Apple, Apple M1 Max, OpenGL 4.1)',
37446
:
window
.
GRAPHIC_DRIVER
,
34047
:
null
}
if
(
_toggle
[
key
])
{
res
=
_toggle
[
key
]
}
else
{
if
(
key
==
33902
)
{
return
new
Float32Array
([
1
,
1
])
}
if
(
key
==
33901
)
{
return
new
Float32Array
([
1
,
64
])
}
if
(
key
==
35661
)
{
return
32
}
if
(
key
==
34047
)
{
return
null
}
if
(
key
==
34076
)
{
return
16384
}
if
(
key
==
36349
)
{
return
1024
}
if
(
key
==
34024
)
{
return
16384
}
if
(
key
==
34930
)
{
return
16
}
if
(
key
==
3379
)
{
return
16384
}
if
(
key
==
36348
)
{
return
30
}
if
(
key
==
34921
)
{
return
16
}
if
(
key
==
35660
)
{
return
16
}
if
(
key
==
36347
)
{
return
4095
}
if
(
key
==
3386
)
{
return
new
Int32Array
([
16384
,
16384
])
}
if
(
key
==
3410
)
{
return
8
}
if
(
key
==
7937
)
{
return
"WebKit WebGL"
}
if
(
key
==
35724
)
{
return
"WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium)"
}
if
(
key
==
3415
)
{
return
0
}
if
(
key
==
7936
)
{
return
"WebKit"
}
if
(
key
==
7938
)
{
return
"WebGL 1.0 (OpenGL ES 2.0 Chromium)"
}
if
(
key
==
3411
)
{
return
8
}
if
(
key
==
3412
)
{
return
8
}
if
(
key
==
3413
)
{
return
8
}
if
(
key
==
3414
)
{
return
24
}
}
v_console_log
(
' [*] WebGLRenderingContext -> getParameter[func]:'
,
key
,
res
)
return
res
;
}
getContextAttributes
()
{
v_console_log
(
' [*] WebGLRenderingContext -> getContextAttributes[func]'
)
return
{
alpha
:
true
,
antialias
:
true
,
depth
:
true
,
desynchronized
:
false
,
failIfMajorPerformanceCaveat
:
false
,
powerPreference
:
"default"
,
premultipliedAlpha
:
true
,
preserveDrawingBuffer
:
false
,
stencil
:
false
,
xrCompatible
:
false
,
}
}
getShaderPrecisionFormat
(
a
,
b
)
{
v_console_log
(
' [*] WebGLRenderingContext -> getShaderPrecisionFormat[func]'
,
a
,
b
)
function
WebGLShaderPrecisionFormat
()
{
}
var
r1
=
v_new
(
WebGLShaderPrecisionFormat
)
r1
.
rangeMin
=
127
r1
.
rangeMax
=
127
r1
.
precision
=
23
var
r2
=
v_new
(
WebGLShaderPrecisionFormat
)
r2
.
rangeMin
=
31
r2
.
rangeMax
=
30
r2
.
precision
=
0
if
(
a
==
35633
&&
b
==
36338
)
{
return
r1
}
if
(
a
==
35633
&&
b
==
36337
)
{
return
r1
}
if
(
a
==
35633
&&
b
==
36336
)
{
return
r1
}
if
(
a
==
35633
&&
b
==
36341
)
{
return
r2
}
if
(
a
==
35633
&&
b
==
36340
)
{
return
r2
}
if
(
a
==
35633
&&
b
==
36339
)
{
return
r2
}
if
(
a
==
35632
&&
b
==
36338
)
{
return
r1
}
if
(
a
==
35632
&&
b
==
36337
)
{
return
r1
}
if
(
a
==
35632
&&
b
==
36336
)
{
return
r1
}
if
(
a
==
35632
&&
b
==
36341
)
{
return
r2
}
if
(
a
==
35632
&&
b
==
36340
)
{
return
r2
}
if
(
a
==
35632
&&
b
==
36339
)
{
return
r2
}
throw
Error
(
'getShaderPrecisionFormat'
)
}
}
Object
.
defineProperties
(
WebGLRenderingContext
.
prototype
,
{
canvas
:
{
writable
:
undefined
,
enumerable
:
true
,
configurable
:
true
},
drawingBufferWidth
:
{
writable
:
undefined
,
enumerable
:
true
,
configurable
:
true
},
drawingBufferHeight
:
{
writable
:
undefined
,
enumerable
:
true
,
configurable
:
true
},
drawingBufferColorSpace
:
{
writable
:
undefined
,
enumerable
:
true
,
configurable
:
true
},
unpackColorSpace
:
{
writable
:
undefined
,
enumerable
:
true
,
configurable
:
true
},
DEPTH_BUFFER_BIT
:
{
value
:
256
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BUFFER_BIT
:
{
value
:
1024
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
COLOR_BUFFER_BIT
:
{
value
:
16384
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
POINTS
:
{
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LINES
:
{
value
:
1
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LINE_LOOP
:
{
value
:
2
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LINE_STRIP
:
{
value
:
3
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TRIANGLES
:
{
value
:
4
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TRIANGLE_STRIP
:
{
value
:
5
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TRIANGLE_FAN
:
{
value
:
6
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ZERO
:
{
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ONE
:
{
value
:
1
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SRC_COLOR
:
{
value
:
768
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ONE_MINUS_SRC_COLOR
:
{
value
:
769
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SRC_ALPHA
:
{
value
:
770
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ONE_MINUS_SRC_ALPHA
:
{
value
:
771
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DST_ALPHA
:
{
value
:
772
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ONE_MINUS_DST_ALPHA
:
{
value
:
773
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DST_COLOR
:
{
value
:
774
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ONE_MINUS_DST_COLOR
:
{
value
:
775
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SRC_ALPHA_SATURATE
:
{
value
:
776
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FUNC_ADD
:
{
value
:
32774
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND_EQUATION
:
{
value
:
32777
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND_EQUATION_RGB
:
{
value
:
32777
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND_EQUATION_ALPHA
:
{
value
:
34877
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FUNC_SUBTRACT
:
{
value
:
32778
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FUNC_REVERSE_SUBTRACT
:
{
value
:
32779
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND_DST_RGB
:
{
value
:
32968
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND_SRC_RGB
:
{
value
:
32969
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND_DST_ALPHA
:
{
value
:
32970
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND_SRC_ALPHA
:
{
value
:
32971
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CONSTANT_COLOR
:
{
value
:
32769
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ONE_MINUS_CONSTANT_COLOR
:
{
value
:
32770
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CONSTANT_ALPHA
:
{
value
:
32771
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ONE_MINUS_CONSTANT_ALPHA
:
{
value
:
32772
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND_COLOR
:
{
value
:
32773
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ARRAY_BUFFER
:
{
value
:
34962
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ELEMENT_ARRAY_BUFFER
:
{
value
:
34963
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ARRAY_BUFFER_BINDING
:
{
value
:
34964
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ELEMENT_ARRAY_BUFFER_BINDING
:
{
value
:
34965
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STREAM_DRAW
:
{
value
:
35040
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STATIC_DRAW
:
{
value
:
35044
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DYNAMIC_DRAW
:
{
value
:
35048
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BUFFER_SIZE
:
{
value
:
34660
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BUFFER_USAGE
:
{
value
:
34661
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CURRENT_VERTEX_ATTRIB
:
{
value
:
34342
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRONT
:
{
value
:
1028
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BACK
:
{
value
:
1029
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRONT_AND_BACK
:
{
value
:
1032
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_2D
:
{
value
:
3553
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CULL_FACE
:
{
value
:
2884
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLEND
:
{
value
:
3042
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DITHER
:
{
value
:
3024
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_TEST
:
{
value
:
2960
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_TEST
:
{
value
:
2929
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SCISSOR_TEST
:
{
value
:
3089
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
POLYGON_OFFSET_FILL
:
{
value
:
32823
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SAMPLE_ALPHA_TO_COVERAGE
:
{
value
:
32926
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SAMPLE_COVERAGE
:
{
value
:
32928
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
NO_ERROR
:
{
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INVALID_ENUM
:
{
value
:
1280
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INVALID_VALUE
:
{
value
:
1281
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INVALID_OPERATION
:
{
value
:
1282
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
OUT_OF_MEMORY
:
{
value
:
1285
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CW
:
{
value
:
2304
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CCW
:
{
value
:
2305
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LINE_WIDTH
:
{
value
:
2849
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ALIASED_POINT_SIZE_RANGE
:
{
value
:
33901
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ALIASED_LINE_WIDTH_RANGE
:
{
value
:
33902
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CULL_FACE_MODE
:
{
value
:
2885
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRONT_FACE
:
{
value
:
2886
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_RANGE
:
{
value
:
2928
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_WRITEMASK
:
{
value
:
2930
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_CLEAR_VALUE
:
{
value
:
2931
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_FUNC
:
{
value
:
2932
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_CLEAR_VALUE
:
{
value
:
2961
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_FUNC
:
{
value
:
2962
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_FAIL
:
{
value
:
2964
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_PASS_DEPTH_FAIL
:
{
value
:
2965
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_PASS_DEPTH_PASS
:
{
value
:
2966
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_REF
:
{
value
:
2967
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_VALUE_MASK
:
{
value
:
2963
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_WRITEMASK
:
{
value
:
2968
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BACK_FUNC
:
{
value
:
34816
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BACK_FAIL
:
{
value
:
34817
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BACK_PASS_DEPTH_FAIL
:
{
value
:
34818
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BACK_PASS_DEPTH_PASS
:
{
value
:
34819
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BACK_REF
:
{
value
:
36003
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BACK_VALUE_MASK
:
{
value
:
36004
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BACK_WRITEMASK
:
{
value
:
36005
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VIEWPORT
:
{
value
:
2978
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SCISSOR_BOX
:
{
value
:
3088
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
COLOR_CLEAR_VALUE
:
{
value
:
3106
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
COLOR_WRITEMASK
:
{
value
:
3107
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNPACK_ALIGNMENT
:
{
value
:
3317
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
PACK_ALIGNMENT
:
{
value
:
3333
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_TEXTURE_SIZE
:
{
value
:
3379
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_VIEWPORT_DIMS
:
{
value
:
3386
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SUBPIXEL_BITS
:
{
value
:
3408
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RED_BITS
:
{
value
:
3410
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
GREEN_BITS
:
{
value
:
3411
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BLUE_BITS
:
{
value
:
3412
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ALPHA_BITS
:
{
value
:
3413
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_BITS
:
{
value
:
3414
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_BITS
:
{
value
:
3415
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
POLYGON_OFFSET_UNITS
:
{
value
:
10752
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
POLYGON_OFFSET_FACTOR
:
{
value
:
32824
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_BINDING_2D
:
{
value
:
32873
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SAMPLE_BUFFERS
:
{
value
:
32936
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SAMPLES
:
{
value
:
32937
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SAMPLE_COVERAGE_VALUE
:
{
value
:
32938
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SAMPLE_COVERAGE_INVERT
:
{
value
:
32939
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
COMPRESSED_TEXTURE_FORMATS
:
{
value
:
34467
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DONT_CARE
:
{
value
:
4352
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FASTEST
:
{
value
:
4353
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
NICEST
:
{
value
:
4354
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
GENERATE_MIPMAP_HINT
:
{
value
:
33170
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BYTE
:
{
value
:
5120
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNSIGNED_BYTE
:
{
value
:
5121
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SHORT
:
{
value
:
5122
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNSIGNED_SHORT
:
{
value
:
5123
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INT
:
{
value
:
5124
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNSIGNED_INT
:
{
value
:
5125
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FLOAT
:
{
value
:
5126
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_COMPONENT
:
{
value
:
6402
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ALPHA
:
{
value
:
6406
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RGB
:
{
value
:
6407
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RGBA
:
{
value
:
6408
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LUMINANCE
:
{
value
:
6409
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LUMINANCE_ALPHA
:
{
value
:
6410
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNSIGNED_SHORT_4_4_4_4
:
{
value
:
32819
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNSIGNED_SHORT_5_5_5_1
:
{
value
:
32820
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNSIGNED_SHORT_5_6_5
:
{
value
:
33635
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAGMENT_SHADER
:
{
value
:
35632
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERTEX_SHADER
:
{
value
:
35633
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_VERTEX_ATTRIBS
:
{
value
:
34921
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_VERTEX_UNIFORM_VECTORS
:
{
value
:
36347
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_VARYING_VECTORS
:
{
value
:
36348
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_COMBINED_TEXTURE_IMAGE_UNITS
:
{
value
:
35661
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_VERTEX_TEXTURE_IMAGE_UNITS
:
{
value
:
35660
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_TEXTURE_IMAGE_UNITS
:
{
value
:
34930
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_FRAGMENT_UNIFORM_VECTORS
:
{
value
:
36349
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SHADER_TYPE
:
{
value
:
35663
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DELETE_STATUS
:
{
value
:
35712
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LINK_STATUS
:
{
value
:
35714
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VALIDATE_STATUS
:
{
value
:
35715
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ATTACHED_SHADERS
:
{
value
:
35717
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ACTIVE_UNIFORMS
:
{
value
:
35718
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ACTIVE_ATTRIBUTES
:
{
value
:
35721
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SHADING_LANGUAGE_VERSION
:
{
value
:
35724
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CURRENT_PROGRAM
:
{
value
:
35725
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
NEVER
:
{
value
:
512
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LESS
:
{
value
:
513
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
EQUAL
:
{
value
:
514
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LEQUAL
:
{
value
:
515
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
GREATER
:
{
value
:
516
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
NOTEQUAL
:
{
value
:
517
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
GEQUAL
:
{
value
:
518
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ALWAYS
:
{
value
:
519
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
KEEP
:
{
value
:
7680
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
REPLACE
:
{
value
:
7681
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INCR
:
{
value
:
7682
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DECR
:
{
value
:
7683
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INVERT
:
{
value
:
5386
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INCR_WRAP
:
{
value
:
34055
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DECR_WRAP
:
{
value
:
34056
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VENDOR
:
{
value
:
7936
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERER
:
{
value
:
7937
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERSION
:
{
value
:
7938
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
NEAREST
:
{
value
:
9728
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LINEAR
:
{
value
:
9729
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
NEAREST_MIPMAP_NEAREST
:
{
value
:
9984
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LINEAR_MIPMAP_NEAREST
:
{
value
:
9985
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
NEAREST_MIPMAP_LINEAR
:
{
value
:
9986
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LINEAR_MIPMAP_LINEAR
:
{
value
:
9987
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_MAG_FILTER
:
{
value
:
10240
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_MIN_FILTER
:
{
value
:
10241
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_WRAP_S
:
{
value
:
10242
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_WRAP_T
:
{
value
:
10243
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE
:
{
value
:
5890
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_CUBE_MAP
:
{
value
:
34067
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_BINDING_CUBE_MAP
:
{
value
:
34068
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_CUBE_MAP_POSITIVE_X
:
{
value
:
34069
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_CUBE_MAP_NEGATIVE_X
:
{
value
:
34070
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_CUBE_MAP_POSITIVE_Y
:
{
value
:
34071
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_CUBE_MAP_NEGATIVE_Y
:
{
value
:
34072
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_CUBE_MAP_POSITIVE_Z
:
{
value
:
34073
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE_CUBE_MAP_NEGATIVE_Z
:
{
value
:
34074
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_CUBE_MAP_TEXTURE_SIZE
:
{
value
:
34076
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE0
:
{
value
:
33984
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE1
:
{
value
:
33985
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE2
:
{
value
:
33986
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE3
:
{
value
:
33987
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE4
:
{
value
:
33988
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE5
:
{
value
:
33989
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE6
:
{
value
:
33990
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE7
:
{
value
:
33991
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE8
:
{
value
:
33992
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE9
:
{
value
:
33993
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE10
:
{
value
:
33994
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE11
:
{
value
:
33995
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE12
:
{
value
:
33996
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE13
:
{
value
:
33997
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE14
:
{
value
:
33998
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE15
:
{
value
:
33999
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE16
:
{
value
:
34000
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE17
:
{
value
:
34001
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE18
:
{
value
:
34002
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE19
:
{
value
:
34003
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE20
:
{
value
:
34004
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE21
:
{
value
:
34005
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE22
:
{
value
:
34006
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE23
:
{
value
:
34007
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE24
:
{
value
:
34008
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE25
:
{
value
:
34009
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE26
:
{
value
:
34010
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE27
:
{
value
:
34011
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE28
:
{
value
:
34012
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE29
:
{
value
:
34013
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE30
:
{
value
:
34014
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
TEXTURE31
:
{
value
:
34015
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
ACTIVE_TEXTURE
:
{
value
:
34016
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
REPEAT
:
{
value
:
10497
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CLAMP_TO_EDGE
:
{
value
:
33071
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MIRRORED_REPEAT
:
{
value
:
33648
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FLOAT_VEC2
:
{
value
:
35664
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FLOAT_VEC3
:
{
value
:
35665
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FLOAT_VEC4
:
{
value
:
35666
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INT_VEC2
:
{
value
:
35667
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INT_VEC3
:
{
value
:
35668
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INT_VEC4
:
{
value
:
35669
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BOOL
:
{
value
:
35670
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BOOL_VEC2
:
{
value
:
35671
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BOOL_VEC3
:
{
value
:
35672
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BOOL_VEC4
:
{
value
:
35673
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FLOAT_MAT2
:
{
value
:
35674
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FLOAT_MAT3
:
{
value
:
35675
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FLOAT_MAT4
:
{
value
:
35676
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SAMPLER_2D
:
{
value
:
35678
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
SAMPLER_CUBE
:
{
value
:
35680
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERTEX_ATTRIB_ARRAY_ENABLED
:
{
value
:
34338
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERTEX_ATTRIB_ARRAY_SIZE
:
{
value
:
34339
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERTEX_ATTRIB_ARRAY_STRIDE
:
{
value
:
34340
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERTEX_ATTRIB_ARRAY_TYPE
:
{
value
:
34341
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERTEX_ATTRIB_ARRAY_NORMALIZED
:
{
value
:
34922
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERTEX_ATTRIB_ARRAY_POINTER
:
{
value
:
34373
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
VERTEX_ATTRIB_ARRAY_BUFFER_BINDING
:
{
value
:
34975
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
IMPLEMENTATION_COLOR_READ_TYPE
:
{
value
:
35738
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
IMPLEMENTATION_COLOR_READ_FORMAT
:
{
value
:
35739
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
COMPILE_STATUS
:
{
value
:
35713
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LOW_FLOAT
:
{
value
:
36336
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MEDIUM_FLOAT
:
{
value
:
36337
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
HIGH_FLOAT
:
{
value
:
36338
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
LOW_INT
:
{
value
:
36339
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MEDIUM_INT
:
{
value
:
36340
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
HIGH_INT
:
{
value
:
36341
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER
:
{
value
:
36160
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER
:
{
value
:
36161
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RGBA4
:
{
value
:
32854
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RGB5_A1
:
{
value
:
32855
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RGB565
:
{
value
:
36194
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_COMPONENT16
:
{
value
:
33189
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_INDEX8
:
{
value
:
36168
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_STENCIL
:
{
value
:
34041
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_WIDTH
:
{
value
:
36162
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_HEIGHT
:
{
value
:
36163
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_INTERNAL_FORMAT
:
{
value
:
36164
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_RED_SIZE
:
{
value
:
36176
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_GREEN_SIZE
:
{
value
:
36177
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_BLUE_SIZE
:
{
value
:
36178
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_ALPHA_SIZE
:
{
value
:
36179
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_DEPTH_SIZE
:
{
value
:
36180
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_STENCIL_SIZE
:
{
value
:
36181
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE
:
{
value
:
36048
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_ATTACHMENT_OBJECT_NAME
:
{
value
:
36049
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL
:
{
value
:
36050
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE
:
{
value
:
36051
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
COLOR_ATTACHMENT0
:
{
value
:
36064
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_ATTACHMENT
:
{
value
:
36096
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
STENCIL_ATTACHMENT
:
{
value
:
36128
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
DEPTH_STENCIL_ATTACHMENT
:
{
value
:
33306
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
NONE
:
{
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_COMPLETE
:
{
value
:
36053
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_INCOMPLETE_ATTACHMENT
:
{
value
:
36054
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT
:
{
value
:
36055
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_INCOMPLETE_DIMENSIONS
:
{
value
:
36057
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_UNSUPPORTED
:
{
value
:
36061
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
FRAMEBUFFER_BINDING
:
{
value
:
36006
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
RENDERBUFFER_BINDING
:
{
value
:
36007
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
MAX_RENDERBUFFER_SIZE
:
{
value
:
34024
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
INVALID_FRAMEBUFFER_OPERATION
:
{
value
:
1286
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNPACK_FLIP_Y_WEBGL
:
{
value
:
37440
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNPACK_PREMULTIPLY_ALPHA_WEBGL
:
{
value
:
37441
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
CONTEXT_LOST_WEBGL
:
{
value
:
37442
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
UNPACK_COLORSPACE_CONVERSION_WEBGL
:
{
value
:
37443
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
BROWSER_DEFAULT_WEBGL
:
{
value
:
37444
,
writable
:
false
,
enumerable
:
true
,
configurable
:
false
},
activeTexture
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
attachShader
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
bindAttribLocation
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
bindRenderbuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
blendColor
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
blendEquation
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
blendEquationSeparate
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
blendFunc
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
blendFuncSeparate
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
bufferData
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
bufferSubData
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
checkFramebufferStatus
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
compileShader
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
compressedTexImage2D
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
compressedTexSubImage2D
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
copyTexImage2D
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
copyTexSubImage2D
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
createBuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
createFramebuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
createProgram
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
createRenderbuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
createShader
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
createTexture
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
cullFace
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
deleteBuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
deleteFramebuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
deleteProgram
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
deleteRenderbuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
deleteShader
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
deleteTexture
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
depthFunc
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
depthMask
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
depthRange
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
detachShader
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
disable
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
enable
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
finish
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
flush
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
framebufferRenderbuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
framebufferTexture2D
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
frontFace
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
generateMipmap
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getActiveAttrib
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getActiveUniform
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getAttachedShaders
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getAttribLocation
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getBufferParameter
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getContextAttributes
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getError
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getExtension
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getFramebufferAttachmentParameter
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getParameter
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getProgramInfoLog
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getProgramParameter
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getRenderbufferParameter
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getShaderInfoLog
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getShaderParameter
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getShaderPrecisionFormat
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getShaderSource
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getSupportedExtensions
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getTexParameter
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getUniform
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getUniformLocation
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getVertexAttrib
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
getVertexAttribOffset
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
hint
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
isBuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
isContextLost
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
isEnabled
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
isFramebuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
isProgram
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
isRenderbuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
isShader
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
isTexture
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
lineWidth
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
linkProgram
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
pixelStorei
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
polygonOffset
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
readPixels
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
renderbufferStorage
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
sampleCoverage
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
shaderSource
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
stencilFunc
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
stencilFuncSeparate
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
stencilMask
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
stencilMaskSeparate
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
stencilOp
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
stencilOpSeparate
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
texImage2D
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
texParameterf
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
texParameteri
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
texSubImage2D
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
useProgram
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
validateProgram
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
bindBuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
bindFramebuffer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
bindTexture
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
clear
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
clearColor
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
clearDepth
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
clearStencil
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
colorMask
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
disableVertexAttribArray
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
drawArrays
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
drawElements
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
enableVertexAttribArray
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
scissor
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform1f
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform1fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform1i
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform1iv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform2f
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform2fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform2i
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform2iv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform3f
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform3fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform3i
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform3iv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform4f
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform4fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform4i
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniform4iv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniformMatrix2fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniformMatrix3fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
uniformMatrix4fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttrib1f
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttrib1fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttrib2f
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttrib2fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttrib3f
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttrib3fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttrib4f
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttrib4fv
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
vertexAttribPointer
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
viewport
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
constructor
:
{
writable
:
true
,
enumerable
:
false
,
configurable
:
true
},
makeXRCompatible
:
{
writable
:
true
,
enumerable
:
true
,
configurable
:
true
},
[
Symbol
.
toStringTag
]:
{
value
:
"WebGLRenderingContext"
,
writable
:
false
,
enumerable
:
false
,
configurable
:
true
},
})
window
.
WebGLRenderingContext
=
WebGLRenderingContext
window
.
CanvasRenderingContext2D
=
CanvasRenderingContext2D
window
.
GRAPHIC_DRIVER
=
GRAPHIC_DRIVER
window
.
URLSearchParams
=
v_saf
(
URLSearchParams
)
window
.
DOMException
=
v_saf
(
DOMException
)
...
...
@@ -1239,10 +2036,27 @@ window.TextEncoderStream = v_saf(function TextEncoderStream() {
window
.
TransformStream
=
v_saf
(
function
TransformStream
()
{
})
class
Worker
{
constructor
()
{
}
onmessage
()
{
console
.
log
(
'Worker.onmessage'
,
arguments
)
}
postMessage
()
{
console
.
log
(
'Worker.postMessage'
,
arguments
)
Worker
.
prototype
=
proxy
(
Worker
.
prototype
,
'Worker.proto'
)
window
.
Worker
=
Worker
window
.
Worker
=
proxy
(
window
.
Worker
,
'Worker'
)
}
terminate
()
{
}
}
// Worker.prototype = proxy(Worker.prototype, 'Worker.proto')
window
.
Worker
=
proxy
(
Worker
,
'Worker'
)
class
OffscreenCanvas
{
width
=
0
;
...
...
@@ -2289,21 +3103,21 @@ window.crypto = crypto;
_setTimeout
=
setTimeout
timesIds
=
0
;
//
window.setTimeout = function setTimeout(func, delay) {
//
// console.log(func, delay)
//
// if (delay==0)func()
//
try {
//
// console.log(func)
// //
if (delay == 0) {
//
func()
// //
}
//
// func()
//
} catch (e) {
//
}
//
// _setTimeout.call(this, func, 1)
//
timesIds++;
//
return timesIds;
//
};
window
.
setTimeout
=
function
setTimeout
(
func
,
delay
)
{
// console.log(func, delay)
// if (delay==0)func()
try
{
// console.log(func)
if
(
delay
==
0
)
{
func
()
}
// func()
}
catch
(
e
)
{
}
// _setTimeout.call(this, func, 1)
timesIds
++
;
return
timesIds
;
};
window
.
setInterval
=
function
(
func
,
delay
)
{
// console.log('setInterval',delay, func)
...
...
@@ -2348,7 +3162,6 @@ con3 = function () {
}
var
times
=
0
;
var
stackTrace
=
{};
let
arggs
=
[];
window
.
videos
=
[];
window
.
fonts
=
[];
...
...
@@ -5423,7 +6236,12 @@ window.imageDatas = [];
},
function
(
SD
)
{
var
Sp
=
f
[
RE
[
SD
.
v
]
<<
8
|
RE
[
SD
.
v
+
1
]];
SD
.
v
+=
2
;
SD
.
I
[
SD
.
I
.
length
]
=
m
(
Sp
)
console
.
log
(
'regexxx'
,
Sp
)
let
res
=
m
(
Sp
);
if
(
Sp
===
'{
\\
s*
\\
[
\\
s*native
\\
s+code
\\
s*]
\\
s*}
\\
s*$'
){
res
=
proxy
(
res
,
'nativeExec'
)
}
SD
.
I
[
SD
.
I
.
length
]
=
res
;
},
function
(
SB
)
{
var
Se
=
RE
[
SB
.
v
];
var
Sm
=
RE
[
SB
.
v
+
1
];
...
...
@@ -5573,26 +6391,12 @@ setTimeout(() => {
// print(JSON.stringify(window.imageDatas))
// print(JSON.stringify(window.fonts))
process
.
exit
(
0
)
},
500
)
},
1
500
)
// debug = true;
const
express
=
require
(
'express'
)
const
util
=
require
(
"util"
);
const
app
=
express
()
app
.
get
(
'/'
,
(
req
,
res
)
=>
{
console
.
log
(
'当前times'
,
times
)
var
xhr
=
new
XMLHttpRequest
();
xhr
.
open
(
'POST'
,
"https://jbrest.jetblue.com/lfs-rwb/outboundLFS"
,
false
);
xhr
.
send
(
""
)
// xhr.setRequestHeader('user-agent', navis.userAgent)
// console.log(xhr.headers)
console
.
log
(
'结束times'
,
times
)
res
.
send
(
JSON
.
stringify
(
xhr
.
headers
))
})
const
port
=
3001
// app.listen(port, () => {
...
...
jsdom/lib/jsdom/browser/Window.js
View file @
a3b39a44
...
...
@@ -266,12 +266,12 @@ function Window(options) {
// }
let
res
=
Reflect
.
get
(
target
,
p
,
receiver
);
if
(
p
!==
'debug'
&&
p
!==
'Object'
){
//
console.log('window get', p, typeof res)
console
.
log
(
'window get'
,
p
,
typeof
res
)
}
if
(
p
===
'StyleSheet'
){
debugger
;
}
//
if (p === 'StyleSheet'){
//
debugger;
//
}
// console.log(Reflect.get(target, '_cf_chl_ctx', receiver))
if
(
!
[
'_registeredHandlers'
,
'window'
,
'_currentEvent'
,
'debug'
,
'_eventListenerss'
,
'top'
,
'JSON'
,
'Math'
].
includes
(
p
)
&&
res
&&
typeof
res
===
'object'
&&
typeof
p
!==
'symbol'
)
{
...
...
jsdom/lib/jsdom/living/generated/utils.js
View file @
a3b39a44
...
...
@@ -138,9 +138,9 @@ const proxy = function (tt, name) {
// }
// console.log(Reflect.get(target, '_cf_chl_ctx', receiver))
//
if (!['_registeredHandlers', 'window', '_currentEvent', 'performance', 'debug', '_eventListenerss', 'top', 'prototype'].includes(p) && res && typeof res === 'object' && typeof p !== 'symbol') {
//
return proxy(res, p)
//
}
if
(
!
[
'_registeredHandlers'
,
'window'
,
'_currentEvent'
,
'performance'
,
'debug'
,
'_eventListenerss'
,
'top'
,
'prototype'
].
includes
(
p
)
&&
res
&&
typeof
res
===
'object'
&&
typeof
p
!==
'symbol'
)
{
return
proxy
(
res
,
p
)
}
return
res
;
},
// getPrototypeOf(target) {
...
...
jsdom/lib/jsdom/living/nodes/HTMLCanvasElement-impl.js
View file @
a3b39a44
...
...
@@ -2813,9 +2813,9 @@ class CanvasRenderingContext2D {
console
.
log
(
'CanvasRenderingContext2D.ellipse'
)
}
fillRect
()
{
fillRect
(
a
,
b
,
c
,
d
)
{
console
.
log
(
'CanvasRenderingContext2D.fillRect'
)
return
this
.
_context
.
fillRect
(
...
arguments
)
return
this
.
_context
.
fillRect
(
a
,
b
,
c
,
d
)
}
lineTo
()
{
...
...
@@ -3776,12 +3776,14 @@ canvas: {writable: undefined, enumerable: true, configurable: true},
configurable
:
true
},
})
window
.
WebGLRenderingContext
=
WebGLRenderingContext
let
t
=
proxy
(
new
WebGLRenderingContext
(),
'WebGLRenderingContext11'
)
// let t = new WebGLRenderingContext()
this
.
_context
=
t
;
}
// console.log('contextId res', this._context)
this
.
_context
=
idlUtils
.
proxy
(
this
.
_context
,
'context'
+
contextId
)
//
this._context = idlUtils.proxy(this._context, 'context' + contextId)
return
this
.
_context
;
}
...
...
logs/2.log
View file @
a3b39a44
This source diff could not be displayed because it is too large. You can
view the blob
instead.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment