diff --git a/.gitignore b/.gitignore index b4d7586ee9..7e698c23ed 100644 --- a/.gitignore +++ b/.gitignore @@ -18,7 +18,6 @@ p5-website/ coverage/ lib/p5-test.js release/ -parameterData.json yarn.lock docs/data.json analyzer/ diff --git a/docs/parameterData.json b/docs/parameterData.json new file mode 100644 index 0000000000..545de2f5a7 --- /dev/null +++ b/docs/parameterData.json @@ -0,0 +1,5819 @@ +{ + "p5": { + "describe": { + "overloads": [ + [ + "String", + "FALLBACK|LABEL?" + ] + ] + }, + "describeElement": { + "overloads": [ + [ + "String", + "String", + "FALLBACK|LABEL?" + ] + ] + }, + "textOutput": { + "overloads": [ + [ + "FALLBACK|LABEL?" + ] + ] + }, + "gridOutput": { + "overloads": [ + [ + "FALLBACK|LABEL?" + ] + ] + }, + "p5": { + "overloads": [ + [ + "Object", + "String|HTMLElement" + ] + ] + }, + "alpha": { + "overloads": [ + [ + "p5.Color|Number[]|String" + ] + ] + }, + "blue": { + "overloads": [ + [ + "p5.Color|Number[]|String" + ] + ] + }, + "brightness": { + "overloads": [ + [ + "p5.Color|Number[]|String" + ] + ] + }, + "color": { + "overloads": [ + [ + "Number", + "Number?" + ], + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "String" + ], + [ + "Number[]" + ], + [ + "p5.Color" + ] + ] + }, + "green": { + "overloads": [ + [ + "p5.Color|Number[]|String" + ] + ] + }, + "hue": { + "overloads": [ + [ + "p5.Color|Number[]|String" + ] + ] + }, + "lerpColor": { + "overloads": [ + [ + "p5.Color", + "p5.Color", + "Number" + ] + ] + }, + "lightness": { + "overloads": [ + [ + "p5.Color|Number[]|String" + ] + ] + }, + "red": { + "overloads": [ + [ + "p5.Color|Number[]|String" + ] + ] + }, + "saturation": { + "overloads": [ + [ + "p5.Color|Number[]|String" + ] + ] + }, + "beginClip": { + "overloads": [ + [ + "Object?" + ] + ] + }, + "endClip": { + "overloads": [ + [] + ] + }, + "clip": { + "overloads": [ + [ + "Function", + "Object?" + ] + ] + }, + "background": { + "overloads": [ + [ + "p5.Color" + ], + [ + "String", + "Number?" + ], + [ + "Number", + "Number?" + ], + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "Number[]" + ], + [ + "p5.Image", + "Number?" + ] + ] + }, + "clear": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?" + ], + [] + ] + }, + "colorMode": { + "overloads": [ + [ + "RGB|HSB|HSL", + "Number?" + ], + [ + "RGB|HSB|HSL", + "Number", + "Number", + "Number", + "Number?" + ] + ] + }, + "fill": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "String" + ], + [ + "Number", + "Number?" + ], + [ + "Number[]" + ], + [ + "p5.Color" + ] + ] + }, + "noFill": { + "overloads": [ + [] + ] + }, + "noStroke": { + "overloads": [ + [] + ] + }, + "stroke": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "String" + ], + [ + "Number", + "Number?" + ], + [ + "Number[]" + ], + [ + "p5.Color" + ] + ] + }, + "erase": { + "overloads": [ + [ + "Number?", + "Number?" + ] + ] + }, + "noErase": { + "overloads": [ + [] + ] + }, + "print": { + "overloads": [ + [ + "Any" + ], + [ + "String|Number|Array" + ] + ] + }, + "cursor": { + "overloads": [ + [ + "ARROW|CROSS|HAND|MOVE|TEXT|WAIT|String", + "Number?", + "Number?" + ] + ] + }, + "frameRate": { + "overloads": [ + [ + "Number" + ], + [] + ] + }, + "getTargetFrameRate": { + "overloads": [ + [] + ] + }, + "noCursor": { + "overloads": [ + [] + ] + }, + "windowResized": { + "overloads": [ + [ + "UIEvent?" + ] + ] + }, + "fullscreen": { + "overloads": [ + [ + "Boolean?" + ] + ] + }, + "pixelDensity": { + "overloads": [ + [ + "Number?" + ], + [] + ] + }, + "displayDensity": { + "overloads": [ + [] + ] + }, + "getURL": { + "overloads": [ + [] + ] + }, + "getURLPath": { + "overloads": [ + [] + ] + }, + "getURLParams": { + "overloads": [ + [] + ] + }, + "setup": { + "overloads": [ + [] + ] + }, + "draw": { + "overloads": [ + [] + ] + }, + "calculateOffset": { + "overloads": [ + [] + ] + }, + "preload": { + "overloads": [ + [] + ] + }, + "createCanvas": { + "overloads": [ + [ + "Number?", + "Number?", + "P2D|WEBGL?", + "HTMLCanvasElement?" + ], + [ + "Number?", + "Number?", + "HTMLCanvasElement?" + ] + ] + }, + "resizeCanvas": { + "overloads": [ + [ + "Number", + "Number", + "Boolean?" + ] + ] + }, + "noCanvas": { + "overloads": [ + [] + ] + }, + "createGraphics": { + "overloads": [ + [ + "Number", + "Number", + "P2D|WEBGL?", + "HTMLCanvasElement?" + ], + [ + "Number", + "Number", + "HTMLCanvasElement?" + ] + ] + }, + "createFramebuffer": { + "overloads": [ + [ + "Object?" + ] + ] + }, + "clearDepth": { + "overloads": [ + [ + "Number?" + ] + ] + }, + "blendMode": { + "overloads": [ + [ + "BLEND|DARKEST|LIGHTEST|DIFFERENCE|MULTIPLY|EXCLUSION|SCREEN|REPLACE|OVERLAY|HARD_LIGHT|SOFT_LIGHT|DODGE|BURN|ADD|REMOVE|SUBTRACT" + ] + ] + }, + "arc": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "CHORD|PIE|OPEN?", + "Integer?" + ] + ] + }, + "ellipse": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Integer?" + ] + ] + }, + "circle": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ] + ] + }, + "line": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "point": { + "overloads": [ + [ + "Number", + "Number", + "Number?" + ], + [ + "p5.Vector" + ] + ] + }, + "quad": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Integer?", + "Integer?" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Integer?", + "Integer?" + ] + ] + }, + "rect": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Integer?", + "Integer?" + ] + ] + }, + "square": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "triangle": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "ellipseMode": { + "overloads": [ + [ + "CENTER|RADIUS|CORNER|CORNERS" + ] + ] + }, + "noSmooth": { + "overloads": [ + [] + ] + }, + "rectMode": { + "overloads": [ + [ + "CENTER|RADIUS|CORNER|CORNERS" + ] + ] + }, + "smooth": { + "overloads": [ + [] + ] + }, + "strokeCap": { + "overloads": [ + [ + "ROUND|SQUARE|PROJECT" + ] + ] + }, + "strokeJoin": { + "overloads": [ + [ + "MITER|BEVEL|ROUND" + ] + ] + }, + "strokeWeight": { + "overloads": [ + [ + "Number" + ] + ] + }, + "bezier": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "bezierDetail": { + "overloads": [ + [ + "Number" + ] + ] + }, + "bezierPoint": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "bezierTangent": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "curve": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "curveDetail": { + "overloads": [ + [ + "Number" + ] + ] + }, + "curveTightness": { + "overloads": [ + [ + "Number" + ] + ] + }, + "curvePoint": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "curveTangent": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "beginContour": { + "overloads": [ + [] + ] + }, + "beginShape": { + "overloads": [ + [ + "POINTS|LINES|TRIANGLES|TRIANGLE_FAN|TRIANGLE_STRIP|QUADS|QUAD_STRIP|TESS?" + ] + ] + }, + "bezierVertex": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "curveVertex": { + "overloads": [ + [ + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number?" + ] + ] + }, + "endContour": { + "overloads": [ + [] + ] + }, + "endShape": { + "overloads": [ + [ + "CLOSE?", + "Integer?" + ] + ] + }, + "quadraticVertex": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "vertex": { + "overloads": [ + [ + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number?" + ], + [ + "Number", + "Number", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "normal": { + "overloads": [ + [ + "p5.Vector" + ], + [ + "Number", + "Number", + "Number" + ] + ] + }, + "noLoop": { + "overloads": [ + [] + ] + }, + "loop": { + "overloads": [ + [] + ] + }, + "isLooping": { + "overloads": [ + [] + ] + }, + "push": { + "overloads": [ + [] + ] + }, + "pop": { + "overloads": [ + [] + ] + }, + "redraw": { + "overloads": [ + [ + "Integer?" + ] + ] + }, + "applyMatrix": { + "overloads": [ + [ + "Array" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "resetMatrix": { + "overloads": [ + [] + ] + }, + "rotate": { + "overloads": [ + [ + "Number", + "p5.Vector|Number[]?" + ] + ] + }, + "rotateX": { + "overloads": [ + [ + "Number" + ] + ] + }, + "rotateY": { + "overloads": [ + [ + "Number" + ] + ] + }, + "rotateZ": { + "overloads": [ + [ + "Number" + ] + ] + }, + "scale": { + "overloads": [ + [ + "Number|p5.Vector|Number[]", + "Number?", + "Number?" + ], + [ + "p5.Vector|Number[]" + ] + ] + }, + "shearX": { + "overloads": [ + [ + "Number" + ] + ] + }, + "shearY": { + "overloads": [ + [ + "Number" + ] + ] + }, + "translate": { + "overloads": [ + [ + "Number", + "Number", + "Number?" + ], + [ + "p5.Vector" + ] + ] + }, + "storeItem": { + "overloads": [ + [ + "String", + "String|Number|Boolean|Object|Array" + ] + ] + }, + "getItem": { + "overloads": [ + [ + "String" + ] + ] + }, + "clearStorage": { + "overloads": [ + [] + ] + }, + "removeItem": { + "overloads": [ + [ + "String" + ] + ] + }, + "createStringDict": { + "overloads": [ + [ + "String", + "String" + ], + [ + "Object" + ] + ] + }, + "createNumberDict": { + "overloads": [ + [ + "Number", + "Number" + ], + [ + "Object" + ] + ] + }, + "select": { + "overloads": [ + [ + "String", + "String|p5.Element|HTMLElement?" + ] + ] + }, + "selectAll": { + "overloads": [ + [ + "String", + "String|p5.Element|HTMLElement?" + ] + ] + }, + "removeElements": { + "overloads": [ + [] + ] + }, + "changed": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "input": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "addElement": { + "overloads": [ + [] + ] + }, + "createDiv": { + "overloads": [ + [ + "String?" + ] + ] + }, + "createP": { + "overloads": [ + [ + "String?" + ] + ] + }, + "createSpan": { + "overloads": [ + [ + "String?" + ] + ] + }, + "createImg": { + "overloads": [ + [ + "String", + "String" + ], + [ + "String", + "String", + "String?", + "Function?" + ] + ] + }, + "createA": { + "overloads": [ + [ + "String", + "String", + "String?" + ] + ] + }, + "createSlider": { + "overloads": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] + }, + "createButton": { + "overloads": [ + [ + "String", + "String?" + ] + ] + }, + "createCheckbox": { + "overloads": [ + [ + "String?", + "Boolean?" + ] + ] + }, + "createSelect": { + "overloads": [ + [ + "Boolean?" + ], + [ + "Object" + ] + ] + }, + "createRadio": { + "overloads": [ + [ + "Object?" + ], + [ + "String?" + ], + [] + ] + }, + "createColorPicker": { + "overloads": [ + [ + "String|p5.Color?" + ] + ] + }, + "createInput": { + "overloads": [ + [ + "String?", + "String?" + ], + [ + "String?" + ] + ] + }, + "createFileInput": { + "overloads": [ + [ + "Function", + "Boolean?" + ] + ] + }, + "createMedia": { + "overloads": [ + [] + ] + }, + "createVideo": { + "overloads": [ + [ + "String|String[]", + "Function?" + ] + ] + }, + "createAudio": { + "overloads": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] + }, + "createCapture": { + "overloads": [ + [ + "AUDIO|VIDEO|Object?", + "Object?", + "Function?" + ] + ] + }, + "createElement": { + "overloads": [ + [ + "String", + "String?" + ] + ] + }, + "removeClass": { + "overloads": [ + [ + "String" + ] + ] + }, + "hasClass": { + "overloads": [ + [ + null + ] + ] + }, + "toggleClass": { + "overloads": [ + [ + null + ] + ] + }, + "child": { + "overloads": [ + [], + [ + "String|p5.Element?" + ] + ] + }, + "center": { + "overloads": [ + [ + "String?" + ] + ] + }, + "position": { + "overloads": [ + [], + [ + "Number?", + "Number?", + "String?" + ] + ] + }, + "style": { + "overloads": [ + [ + "String" + ], + [ + "String", + "String|p5.Color" + ] + ] + }, + "attribute": { + "overloads": [ + [], + [ + "String", + "String" + ] + ] + }, + "removeAttribute": { + "overloads": [ + [ + "String" + ] + ] + }, + "value": { + "overloads": [ + [], + [ + "String|Number" + ] + ] + }, + "show": { + "overloads": [ + [] + ] + }, + "hide": { + "overloads": [ + [] + ] + }, + "size": { + "overloads": [ + [], + [ + "Number|AUTO?", + "Number|AUTO?" + ] + ] + }, + "remove": { + "overloads": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] + }, + "drop": { + "overloads": [ + [ + "Function", + "Function?" + ] + ] + }, + "draggable": { + "overloads": [ + [ + "p5.Element?" + ] + ] + }, + "volume": { + "overloads": [ + [ + "Number" + ] + ] + }, + "setMoveThreshold": { + "overloads": [ + [ + "Number" + ] + ] + }, + "setShakeThreshold": { + "overloads": [ + [ + "Number" + ] + ] + }, + "deviceMoved": { + "overloads": [ + [] + ] + }, + "deviceTurned": { + "overloads": [ + [] + ] + }, + "deviceShaken": { + "overloads": [ + [] + ] + }, + "keyPressed": { + "overloads": [ + [ + "KeyboardEvent?" + ] + ] + }, + "keyReleased": { + "overloads": [ + [ + "KeyboardEvent?" + ] + ] + }, + "keyTyped": { + "overloads": [ + [ + "KeyboardEvent?" + ] + ] + }, + "keyIsDown": { + "overloads": [ + [ + "Number" + ] + ] + }, + "mouseMoved": { + "overloads": [ + [ + "MouseEvent?" + ] + ] + }, + "mouseDragged": { + "overloads": [ + [ + "MouseEvent?" + ] + ] + }, + "mousePressed": { + "overloads": [ + [ + "MouseEvent?" + ] + ] + }, + "mouseReleased": { + "overloads": [ + [ + "MouseEvent?" + ] + ] + }, + "mouseClicked": { + "overloads": [ + [ + "MouseEvent?" + ] + ] + }, + "doubleClicked": { + "overloads": [ + [ + "MouseEvent?" + ] + ] + }, + "mouseWheel": { + "overloads": [ + [ + "WheelEvent?" + ] + ] + }, + "requestPointerLock": { + "overloads": [ + [] + ] + }, + "exitPointerLock": { + "overloads": [ + [] + ] + }, + "touchStarted": { + "overloads": [ + [ + "TouchEvent?" + ] + ] + }, + "touchMoved": { + "overloads": [ + [ + "TouchEvent?" + ] + ] + }, + "touchEnded": { + "overloads": [ + [ + "TouchEvent?" + ] + ] + }, + "createImage": { + "overloads": [ + [ + "Integer", + "Integer" + ] + ] + }, + "saveCanvas": { + "overloads": [ + [ + "p5.Framebuffer|p5.Element|HTMLCanvasElement", + "String?", + "String?" + ], + [ + "String?", + "String?" + ] + ] + }, + "saveFrames": { + "overloads": [ + [ + "String", + "String", + "Number", + "Number", + "undefined?" + ] + ] + }, + "loadImage": { + "overloads": [ + [ + "String", + "undefined?", + "undefined?" + ] + ] + }, + "saveGif": { + "overloads": [ + [ + "String", + "Number", + "Object?" + ] + ] + }, + "image": { + "overloads": [ + [ + "p5.Image|p5.Element|p5.Texture|p5.Framebuffer|p5.FramebufferTexture", + "Number", + "Number", + "Number?", + "Number?" + ], + [ + "p5.Image|p5.Element|p5.Texture|p5.Framebuffer|p5.FramebufferTexture", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number?", + "Number?", + "CONTAIN|COVER?", + "LEFT|RIGHT|CENTER?", + "TOP|BOTTOM|CENTER?" + ] + ] + }, + "tint": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "String" + ], + [ + "Number", + "Number?" + ], + [ + "Number[]" + ], + [ + "p5.Color" + ] + ] + }, + "noTint": { + "overloads": [ + [] + ] + }, + "imageMode": { + "overloads": [ + [ + "CORNER|CORNERS|CENTER" + ] + ] + }, + "blend": { + "overloads": [ + [ + "p5.Image", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "BLEND|DARKEST|LIGHTEST|DIFFERENCE|MULTIPLY|EXCLUSION|SCREEN|REPLACE|OVERLAY|HARD_LIGHT|SOFT_LIGHT|DODGE|BURN|ADD|NORMAL" + ], + [ + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "BLEND|DARKEST|LIGHTEST|DIFFERENCE|MULTIPLY|EXCLUSION|SCREEN|REPLACE|OVERLAY|HARD_LIGHT|SOFT_LIGHT|DODGE|BURN|ADD|NORMAL" + ] + ] + }, + "copy": { + "overloads": [ + [ + "p5.Image|p5.Element", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer" + ], + [ + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer" + ] + ] + }, + "filter": { + "overloads": [ + [ + "THRESHOLD|GRAY|OPAQUE|INVERT|POSTERIZE|BLUR|ERODE|DILATE|BLUR", + "Number?", + "Boolean?" + ], + [ + "THRESHOLD|GRAY|OPAQUE|INVERT|POSTERIZE|BLUR|ERODE|DILATE|BLUR", + "Number?", + "Boolean?" + ], + [ + "p5.Shader" + ] + ] + }, + "get": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number" + ], + [], + [ + "Number", + "Number" + ], + [ + "String|Integer" + ] + ] + }, + "loadPixels": { + "overloads": [ + [], + [] + ] + }, + "set": { + "overloads": [ + [ + "Number", + "Number", + "Number|Number[]|Object" + ], + [ + "String|Integer", + "String|Number" + ] + ] + }, + "updatePixels": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?" + ], + [] + ] + }, + "loadJSON": { + "overloads": [ + [ + "String", + "Function?", + "Function?" + ] + ] + }, + "loadStrings": { + "overloads": [ + [ + "String", + "Function?", + "Function?" + ] + ] + }, + "loadTable": { + "overloads": [ + [ + "String", + "String?", + "String?", + "Function?", + "Function?" + ] + ] + }, + "loadXML": { + "overloads": [ + [ + "String", + "Function?", + "Function?" + ] + ] + }, + "loadBytes": { + "overloads": [ + [ + "String", + "Function?", + "Function?" + ] + ] + }, + "httpGet": { + "overloads": [ + [ + "String", + "String?", + "Object|Boolean?", + "Function?", + "Function?" + ], + [ + "String", + "Object|Boolean", + "Function?", + "Function?" + ], + [ + "String", + "Function", + "Function?" + ] + ] + }, + "httpPost": { + "overloads": [ + [ + "String", + "String?", + "Object|Boolean?", + "Function?", + "Function?" + ], + [ + "String", + "Object|Boolean", + "Function?", + "Function?" + ], + [ + "String", + "Function", + "Function?" + ] + ] + }, + "httpDo": { + "overloads": [ + [ + "String", + "String?", + "String?", + "Object?", + "Function?", + "Function?" + ], + [ + "String", + "Object", + "Function?", + "Function?" + ] + ] + }, + "createWriter": { + "overloads": [ + [ + "String", + "String?" + ] + ] + }, + "write": { + "overloads": [ + [ + "String|Number|Array" + ] + ] + }, + "close": { + "overloads": [ + [] + ] + }, + "save": { + "overloads": [ + [ + "Object|String?", + "String?", + "Boolean|String?" + ] + ] + }, + "saveJSON": { + "overloads": [ + [ + "Array|Object", + "String", + "Boolean?" + ] + ] + }, + "saveStrings": { + "overloads": [ + [ + "String[]", + "String", + "String?", + "Boolean?" + ] + ] + }, + "saveTable": { + "overloads": [ + [ + "p5.Table", + "String", + "String?" + ] + ] + }, + "abs": { + "overloads": [ + [ + "Number" + ] + ] + }, + "ceil": { + "overloads": [ + [ + "Number" + ] + ] + }, + "constrain": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ] + ] + }, + "dist": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ] + ] + }, + "exp": { + "overloads": [ + [ + "Number" + ] + ] + }, + "floor": { + "overloads": [ + [ + "Number" + ] + ] + }, + "lerp": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ] + ] + }, + "log": { + "overloads": [ + [ + "Number" + ] + ] + }, + "mag": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "map": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Boolean?" + ] + ] + }, + "max": { + "overloads": [ + [ + "Number", + "Number" + ], + [ + "Number[]" + ] + ] + }, + "min": { + "overloads": [ + [ + "Number", + "Number" + ], + [ + "Number[]" + ] + ] + }, + "norm": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ] + ] + }, + "pow": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "round": { + "overloads": [ + [ + "Number", + "Number?" + ] + ] + }, + "sq": { + "overloads": [ + [ + "Number" + ] + ] + }, + "sqrt": { + "overloads": [ + [ + "Number" + ] + ] + }, + "fract": { + "overloads": [ + [ + "Number" + ] + ] + }, + "createVector": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?" + ] + ] + }, + "noise": { + "overloads": [ + [ + "Number", + "Number?", + "Number?" + ] + ] + }, + "noiseDetail": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "noiseSeed": { + "overloads": [ + [ + "Number" + ] + ] + }, + "randomSeed": { + "overloads": [ + [ + "Number" + ] + ] + }, + "random": { + "overloads": [ + [ + "Number?", + "Number?" + ], + [ + "Array" + ] + ] + }, + "randomGaussian": { + "overloads": [ + [ + "Number?", + "Number?" + ] + ] + }, + "acos": { + "overloads": [ + [ + "Number" + ] + ] + }, + "asin": { + "overloads": [ + [ + "Number" + ] + ] + }, + "atan": { + "overloads": [ + [ + "Number" + ] + ] + }, + "atan2": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "cos": { + "overloads": [ + [ + "Number" + ] + ] + }, + "sin": { + "overloads": [ + [ + "Number" + ] + ] + }, + "tan": { + "overloads": [ + [ + "Number" + ] + ] + }, + "degrees": { + "overloads": [ + [ + "Number" + ] + ] + }, + "radians": { + "overloads": [ + [ + "Number" + ] + ] + }, + "angleMode": { + "overloads": [ + [ + "RADIANS|DEGREES" + ], + [] + ] + }, + "textAlign": { + "overloads": [ + [ + "LEFT|CENTER|RIGHT", + "TOP|BOTTOM|BASELINE|CENTER?" + ], + [] + ] + }, + "textLeading": { + "overloads": [ + [ + "Number" + ], + [] + ] + }, + "textSize": { + "overloads": [ + [ + "Number" + ], + [] + ] + }, + "textStyle": { + "overloads": [ + [ + "NORMAL|ITALIC|BOLD|BOLDITALIC" + ], + [] + ] + }, + "textWidth": { + "overloads": [ + [ + "String" + ] + ] + }, + "textAscent": { + "overloads": [ + [] + ] + }, + "textDescent": { + "overloads": [ + [] + ] + }, + "textWrap": { + "overloads": [ + [ + "WORD|CHAR" + ] + ] + }, + "loadFont": { + "overloads": [ + [ + "String", + "Function?", + "Function?" + ] + ] + }, + "text": { + "overloads": [ + [ + "String|Object|Array|Number|Boolean", + "Number", + "Number", + "Number?", + "Number?" + ] + ] + }, + "textFont": { + "overloads": [ + [], + [ + "Object|String", + "Number?" + ] + ] + }, + "append": { + "overloads": [ + [ + "Array", + "Any" + ] + ] + }, + "arrayCopy": { + "overloads": [ + [ + "Array", + "Integer", + "Array", + "Integer", + "Integer" + ], + [ + "Array", + "Array", + "Integer?" + ] + ] + }, + "concat": { + "overloads": [ + [ + "Array", + "Array" + ] + ] + }, + "reverse": { + "overloads": [ + [ + "Array" + ] + ] + }, + "shorten": { + "overloads": [ + [ + "Array" + ] + ] + }, + "shuffle": { + "overloads": [ + [ + "Array", + "Boolean?" + ] + ] + }, + "sort": { + "overloads": [ + [ + "Array", + "Integer?" + ] + ] + }, + "splice": { + "overloads": [ + [ + "Array", + "Any", + "Integer" + ] + ] + }, + "subset": { + "overloads": [ + [ + "Array", + "Integer", + "Integer?" + ] + ] + }, + "float": { + "overloads": [ + [ + "String" + ], + [ + "String[]" + ] + ] + }, + "int": { + "overloads": [ + [ + "String|Boolean|Number" + ], + [ + "Array" + ] + ] + }, + "str": { + "overloads": [ + [ + "String|Boolean|Number" + ] + ] + }, + "boolean": { + "overloads": [ + [ + "String|Boolean|Number" + ], + [ + "Array" + ] + ] + }, + "byte": { + "overloads": [ + [ + "String|Boolean|Number" + ], + [ + "Array" + ] + ] + }, + "char": { + "overloads": [ + [ + "String|Number" + ], + [ + "Array" + ] + ] + }, + "unchar": { + "overloads": [ + [ + "String" + ], + [ + "String[]" + ] + ] + }, + "hex": { + "overloads": [ + [ + "Number", + "Number?" + ], + [ + "Number[]", + "Number?" + ] + ] + }, + "unhex": { + "overloads": [ + [ + "String" + ], + [ + "String[]" + ] + ] + }, + "join": { + "overloads": [ + [ + "Array", + "String" + ] + ] + }, + "match": { + "overloads": [ + [ + "String", + "String" + ] + ] + }, + "matchAll": { + "overloads": [ + [ + "String", + "String" + ] + ] + }, + "nf": { + "overloads": [ + [ + "Number|String", + "Integer|String?", + "Integer|String?" + ], + [ + "Number[]", + "Integer|String?", + "Integer|String?" + ] + ] + }, + "nfc": { + "overloads": [ + [ + "Number|String", + "Integer|String?" + ], + [ + "Number[]", + "Integer|String?" + ] + ] + }, + "nfp": { + "overloads": [ + [ + "Number", + "Integer?", + "Integer?" + ], + [ + "Number[]", + "Integer?", + "Integer?" + ] + ] + }, + "nfs": { + "overloads": [ + [ + "Number", + "Integer?", + "Integer?" + ], + [ + "Array", + "Integer?", + "Integer?" + ] + ] + }, + "split": { + "overloads": [ + [ + "String", + "String" + ] + ] + }, + "splitTokens": { + "overloads": [ + [ + "String", + "String?" + ] + ] + }, + "trim": { + "overloads": [ + [ + "String" + ], + [ + "String[]" + ] + ] + }, + "day": { + "overloads": [ + [] + ] + }, + "hour": { + "overloads": [ + [] + ] + }, + "minute": { + "overloads": [ + [] + ] + }, + "millis": { + "overloads": [ + [] + ] + }, + "month": { + "overloads": [ + [] + ] + }, + "second": { + "overloads": [ + [] + ] + }, + "year": { + "overloads": [ + [] + ] + }, + "beginGeometry": { + "overloads": [ + [] + ] + }, + "endGeometry": { + "overloads": [ + [] + ] + }, + "buildGeometry": { + "overloads": [ + [ + "Function" + ] + ] + }, + "freeGeometry": { + "overloads": [ + [ + "p5.Geometry" + ] + ] + }, + "plane": { + "overloads": [ + [ + "Number?", + "Number?", + "Integer?", + "Integer?" + ] + ] + }, + "box": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Integer?", + "Integer?" + ] + ] + }, + "sphere": { + "overloads": [ + [ + "Number?", + "Integer?", + "Integer?" + ] + ] + }, + "cylinder": { + "overloads": [ + [ + "Number?", + "Number?", + "Integer?", + "Integer?", + "Boolean?", + "Boolean?" + ] + ] + }, + "cone": { + "overloads": [ + [ + "Number?", + "Number?", + "Integer?", + "Integer?", + "Boolean?" + ] + ] + }, + "ellipsoid": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Integer?", + "Integer?" + ] + ] + }, + "torus": { + "overloads": [ + [ + "Number?", + "Number?", + "Integer?", + "Integer?" + ] + ] + }, + "orbitControl": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Object?" + ] + ] + }, + "debugMode": { + "overloads": [ + [], + [ + "GRID|AXES" + ], + [ + "GRID|AXES", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ], + [ + "GRID|AXES", + "Number?", + "Number?", + "Number?", + "Number?" + ], + [ + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "noDebugMode": { + "overloads": [ + [] + ] + }, + "ambientLight": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "Number", + "Number?" + ], + [ + "String" + ], + [ + "Number[]" + ], + [ + "p5.Color" + ] + ] + }, + "specularColor": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ], + [ + "Number" + ], + [ + "String" + ], + [ + "Number[]" + ], + [ + "p5.Color" + ] + ] + }, + "directionalLight": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "p5.Vector" + ], + [ + "p5.Color|Number[]|String", + "Number", + "Number", + "Number" + ], + [ + "p5.Color|Number[]|String", + "p5.Vector" + ] + ] + }, + "pointLight": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number" + ], + [ + "Number", + "Number", + "Number", + "p5.Vector" + ], + [ + "p5.Color|Number[]|String", + "Number", + "Number", + "Number" + ], + [ + "p5.Color|Number[]|String", + "p5.Vector" + ] + ] + }, + "imageLight": { + "overloads": [ + [ + "p5.image" + ] + ] + }, + "panorama": { + "overloads": [ + [ + "p5.Image" + ] + ] + }, + "lights": { + "overloads": [ + [] + ] + }, + "lightFalloff": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ] + ] + }, + "spotLight": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number?", + "Number?" + ], + [ + "p5.Color|Number[]|String", + "p5.Vector", + "p5.Vector", + "Number?", + "Number?" + ], + [ + "Number", + "Number", + "Number", + "p5.Vector", + "p5.Vector", + "Number?", + "Number?" + ], + [ + "p5.Color|Number[]|String", + "Number", + "Number", + "Number", + "p5.Vector", + "Number?", + "Number?" + ], + [ + "p5.Color|Number[]|String", + "p5.Vector", + "Number", + "Number", + "Number", + "Number?", + "Number?" + ], + [ + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "p5.Vector", + "Number?", + "Number?" + ], + [ + "Number", + "Number", + "Number", + "p5.Vector", + "Number", + "Number", + "Number", + "Number?", + "Number?" + ], + [ + "p5.Color|Number[]|String", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number", + "Number?", + "Number?" + ] + ] + }, + "noLights": { + "overloads": [ + [] + ] + }, + "loadModel": { + "overloads": [ + [ + "String", + "Boolean", + "undefined?", + "undefined?", + "String?" + ], + [ + "String", + "undefined?", + "undefined?", + "String?" + ], + [ + "String", + "Object?", + "undefined?", + "undefined?", + "String?", + "Boolean?", + "Boolean?", + "Boolean?" + ] + ] + }, + "parseObj": { + "overloads": [ + [] + ] + }, + "parseSTL": { + "overloads": [ + [] + ] + }, + "isBinary": { + "overloads": [ + [] + ] + }, + "matchDataViewAt": { + "overloads": [ + [] + ] + }, + "parseBinarySTL": { + "overloads": [ + [] + ] + }, + "parseASCIISTL": { + "overloads": [ + [] + ] + }, + "model": { + "overloads": [ + [ + "p5.Geometry" + ] + ] + }, + "loadShader": { + "overloads": [ + [ + "String", + "String", + "Function?", + "Function?" + ] + ] + }, + "createShader": { + "overloads": [ + [ + "String", + "String" + ] + ] + }, + "createFilterShader": { + "overloads": [ + [ + "String" + ] + ] + }, + "shader": { + "overloads": [ + [ + "p5.Shader" + ] + ] + }, + "resetShader": { + "overloads": [ + [] + ] + }, + "texture": { + "overloads": [ + [ + "p5.Image|p5.MediaElement|p5.Graphics|p5.Texture|p5.Framebuffer|p5.FramebufferTexture" + ] + ] + }, + "textureMode": { + "overloads": [ + [ + "IMAGE|NORMAL" + ] + ] + }, + "textureWrap": { + "overloads": [ + [ + "CLAMP|REPEAT|MIRROR", + "CLAMP|REPEAT|MIRROR?" + ] + ] + }, + "normalMaterial": { + "overloads": [ + [] + ] + }, + "ambientMaterial": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ], + [ + "Number" + ], + [ + "p5.Color|Number[]|String" + ] + ] + }, + "emissiveMaterial": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "Number" + ], + [ + "p5.Color|Number[]|String" + ] + ] + }, + "specularMaterial": { + "overloads": [ + [ + "Number", + "Number?" + ], + [ + "Number", + "Number", + "Number", + "Number?" + ], + [ + "p5.Color|Number[]|String" + ] + ] + }, + "shininess": { + "overloads": [ + [ + "Number" + ] + ] + }, + "metalness": { + "overloads": [ + [ + "Number" + ] + ] + }, + "camera": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "perspective": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "linePerspective": { + "overloads": [ + [ + "Boolean" + ], + [] + ] + }, + "ortho": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "frustum": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "createCamera": { + "overloads": [ + [] + ] + }, + "setCamera": { + "overloads": [ + [ + "p5.Camera" + ] + ] + }, + "saveObj": { + "overloads": [ + [ + "String?" + ] + ] + }, + "saveStl": { + "overloads": [ + [ + "String?", + "Object?" + ] + ] + }, + "setAttributes": { + "overloads": [ + [ + "String", + "Boolean" + ], + [ + "Object" + ] + ] + }, + "update": { + "overloads": [ + [] + ] + }, + "bindTexture": { + "overloads": [ + [] + ] + }, + "unbindTexture": { + "overloads": [ + [] + ] + }, + "setInterpolation": { + "overloads": [ + [ + "String", + "String" + ] + ] + }, + "setWrapMode": { + "overloads": [ + [ + "String", + "String" + ] + ] + } + }, + "p5.Element": { + "addClass": { + "overloads": [ + [ + "String" + ] + ] + }, + "html": { + "overloads": [ + [], + [ + "String?", + "Boolean?" + ] + ] + }, + "parent": { + "overloads": [ + [ + "String|p5.Element|Object" + ], + [] + ] + }, + "id": { + "overloads": [ + [ + "String" + ], + [] + ] + }, + "class": { + "overloads": [ + [ + "String" + ], + [] + ] + }, + "mousePressed": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "doubleClicked": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "mouseWheel": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "mouseReleased": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "mouseClicked": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "mouseMoved": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "mouseOver": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "mouseOut": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "touchStarted": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "touchMoved": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "touchEnded": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "dragOver": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + }, + "dragLeave": { + "overloads": [ + [ + "Function|Boolean" + ] + ] + } + }, + "p5.Color": { + "toString": { + "overloads": [ + [ + "String?" + ] + ] + }, + "setRed": { + "overloads": [ + [ + "Number" + ] + ] + }, + "setGreen": { + "overloads": [ + [ + "Number" + ] + ] + }, + "setBlue": { + "overloads": [ + [ + "Number" + ] + ] + }, + "setAlpha": { + "overloads": [ + [ + "Number" + ] + ] + } + }, + "p5.Graphics": { + "reset": { + "overloads": [ + [] + ] + }, + "remove": { + "overloads": [ + [] + ] + }, + "createFramebuffer": { + "overloads": [ + [ + "Object?" + ] + ] + } + }, + "p5.Renderer": { + "resize": { + "overloads": [ + [] + ] + } + }, + "p5.TypedDict": { + "size": { + "overloads": [ + [] + ] + }, + "hasKey": { + "overloads": [ + [ + "Number|String" + ] + ] + }, + "get": { + "overloads": [ + [ + "Number|String" + ] + ] + }, + "set": { + "overloads": [ + [ + "Number|String", + "Number|String" + ] + ] + }, + "create": { + "overloads": [ + [ + "Number|String", + "Number|String" + ], + [ + "Object" + ] + ] + }, + "clear": { + "overloads": [ + [] + ] + }, + "remove": { + "overloads": [ + [ + "Number|String" + ] + ] + }, + "print": { + "overloads": [ + [] + ] + }, + "saveTable": { + "overloads": [ + [] + ] + }, + "saveJSON": { + "overloads": [ + [] + ] + } + }, + "p5.NumberDict": { + "add": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "sub": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "mult": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "div": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "minValue": { + "overloads": [ + [] + ] + }, + "maxValue": { + "overloads": [ + [] + ] + }, + "minKey": { + "overloads": [ + [] + ] + }, + "maxKey": { + "overloads": [ + [] + ] + } + }, + "p5.MediaElement": { + "play": { + "overloads": [ + [] + ] + }, + "stop": { + "overloads": [ + [] + ] + }, + "pause": { + "overloads": [ + [] + ] + }, + "loop": { + "overloads": [ + [] + ] + }, + "noLoop": { + "overloads": [ + [] + ] + }, + "autoplay": { + "overloads": [ + [ + "Boolean?" + ] + ] + }, + "volume": { + "overloads": [ + [] + ] + }, + "speed": { + "overloads": [ + [], + [ + "Number" + ] + ] + }, + "time": { + "overloads": [ + [], + [ + "Number" + ] + ] + }, + "duration": { + "overloads": [ + [] + ] + }, + "onended": { + "overloads": [ + [ + "Function" + ] + ] + }, + "connect": { + "overloads": [ + [ + "AudioNode|Object" + ] + ] + }, + "disconnect": { + "overloads": [ + [] + ] + }, + "showControls": { + "overloads": [ + [] + ] + }, + "hideControls": { + "overloads": [ + [] + ] + }, + "addCue": { + "overloads": [ + [ + "Number", + "Function", + "Object?" + ] + ] + }, + "removeCue": { + "overloads": [ + [ + "Number" + ] + ] + }, + "clearCues": { + "overloads": [ + [] + ] + } + }, + "p5.Image": { + "pixelDensity": { + "overloads": [ + [ + "Number?" + ] + ] + }, + "loadPixels": { + "overloads": [ + [] + ] + }, + "updatePixels": { + "overloads": [ + [ + "Integer", + "Integer", + "Integer", + "Integer" + ], + [] + ] + }, + "get": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number" + ], + [], + [ + "Number", + "Number" + ] + ] + }, + "set": { + "overloads": [ + [ + "Number", + "Number", + "Number|Number[]|Object" + ] + ] + }, + "resize": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "copy": { + "overloads": [ + [ + "p5.Image|p5.Element", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer" + ], + [ + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer" + ] + ] + }, + "mask": { + "overloads": [ + [ + "p5.Image" + ] + ] + }, + "filter": { + "overloads": [ + [ + "THRESHOLD|GRAY|OPAQUE|INVERT|POSTERIZE|ERODE|DILATE|BLUR", + "Number?" + ] + ] + }, + "blend": { + "overloads": [ + [ + "p5.Image", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "BLEND|DARKEST|LIGHTEST|DIFFERENCE|MULTIPLY|EXCLUSION|SCREEN|REPLACE|OVERLAY|HARD_LIGHT|SOFT_LIGHT|DODGE|BURN|ADD|NORMAL" + ], + [ + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "Integer", + "BLEND|DARKEST|LIGHTEST|DIFFERENCE|MULTIPLY|EXCLUSION|SCREEN|REPLACE|OVERLAY|HARD_LIGHT|SOFT_LIGHT|DODGE|BURN|ADD|NORMAL" + ] + ] + }, + "save": { + "overloads": [ + [ + "String", + "String?" + ] + ] + }, + "reset": { + "overloads": [ + [] + ] + }, + "getCurrentFrame": { + "overloads": [ + [] + ] + }, + "setFrame": { + "overloads": [ + [ + "Number" + ] + ] + }, + "numFrames": { + "overloads": [ + [] + ] + }, + "play": { + "overloads": [ + [] + ] + }, + "pause": { + "overloads": [ + [] + ] + }, + "delay": { + "overloads": [ + [ + "Number", + "Number?" + ] + ] + } + }, + "p5.XML": { + "getParent": { + "overloads": [ + [] + ] + }, + "getName": { + "overloads": [ + [] + ] + }, + "setName": { + "overloads": [ + [ + "String" + ] + ] + }, + "hasChildren": { + "overloads": [ + [] + ] + }, + "listChildren": { + "overloads": [ + [] + ] + }, + "getChildren": { + "overloads": [ + [ + "String?" + ] + ] + }, + "getChild": { + "overloads": [ + [ + "String|Integer" + ] + ] + }, + "addChild": { + "overloads": [ + [ + "p5.XML" + ] + ] + }, + "removeChild": { + "overloads": [ + [ + "String|Integer" + ] + ] + }, + "getAttributeCount": { + "overloads": [ + [] + ] + }, + "listAttributes": { + "overloads": [ + [] + ] + }, + "hasAttribute": { + "overloads": [ + [ + "String" + ] + ] + }, + "getNum": { + "overloads": [ + [ + "String", + "Number?" + ] + ] + }, + "getString": { + "overloads": [ + [ + "String", + "Number?" + ] + ] + }, + "setAttribute": { + "overloads": [ + [ + "String", + "Number|String|Boolean" + ] + ] + }, + "getContent": { + "overloads": [ + [ + "String?" + ] + ] + }, + "serialize": { + "overloads": [ + [] + ] + } + }, + "p5.Vector": { + "toString": { + "overloads": [ + [] + ] + }, + "set": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?" + ], + [ + "p5.Vector|Number[]" + ] + ] + }, + "copy": { + "overloads": [ + [], + [ + "p5.Vector" + ] + ] + }, + "add": { + "overloads": [ + [ + "Number", + "Number?", + "Number?" + ], + [ + "p5.Vector|Number[]" + ], + [ + "p5.Vector", + "p5.Vector", + "p5.Vector?" + ] + ] + }, + "rem": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ], + [ + "p5.Vector|Number[]" + ], + [ + "p5.Vector", + "p5.Vector" + ], + [ + "p5.Vector", + "p5.Vector" + ] + ] + }, + "sub": { + "overloads": [ + [ + "Number", + "Number?", + "Number?" + ], + [ + "p5.Vector|Number[]" + ], + [ + "p5.Vector", + "p5.Vector", + "p5.Vector?" + ] + ] + }, + "mult": { + "overloads": [ + [ + "Number" + ], + [ + "Number", + "Number", + "Number?" + ], + [ + "Number[]" + ], + [ + "p5.Vector" + ], + [], + [ + "Number", + "Number", + "Number?" + ], + [ + "p5.Vector", + "Number", + "p5.Vector?" + ], + [ + "p5.Vector", + "p5.Vector", + "p5.Vector?" + ], + [ + "p5.Vector", + "Number[]", + "p5.Vector?" + ] + ] + }, + "div": { + "overloads": [ + [ + "Number" + ], + [ + "Number", + "Number", + "Number?" + ], + [ + "Number[]" + ], + [ + "p5.Vector" + ], + [], + [ + "Number", + "Number", + "Number?" + ], + [ + "p5.Vector", + "Number", + "p5.Vector?" + ], + [ + "p5.Vector", + "p5.Vector", + "p5.Vector?" + ], + [ + "p5.Vector", + "Number[]", + "p5.Vector?" + ] + ] + }, + "mag": { + "overloads": [ + [], + [], + [ + "p5.Vector" + ] + ] + }, + "magSq": { + "overloads": [ + [], + [], + [ + "p5.Vector" + ] + ] + }, + "dot": { + "overloads": [ + [ + "Number", + "Number?", + "Number?" + ], + [ + "p5.Vector" + ], + [], + [ + "p5.Vector", + "p5.Vector" + ] + ] + }, + "cross": { + "overloads": [ + [ + "p5.Vector" + ], + [], + [ + "p5.Vector", + "p5.Vector" + ] + ] + }, + "dist": { + "overloads": [ + [ + "p5.Vector" + ], + [], + [ + "p5.Vector", + "p5.Vector" + ] + ] + }, + "normalize": { + "overloads": [ + [], + [], + [ + "p5.Vector", + "p5.Vector?" + ] + ] + }, + "limit": { + "overloads": [ + [ + "Number" + ], + [], + [ + "p5.Vector", + "Number", + "p5.Vector?" + ] + ] + }, + "setMag": { + "overloads": [ + [ + "Number" + ], + [], + [ + "p5.Vector", + "Number", + "p5.Vector?" + ] + ] + }, + "heading": { + "overloads": [ + [], + [], + [ + "p5.Vector" + ] + ] + }, + "setHeading": { + "overloads": [ + [ + "Number" + ] + ] + }, + "rotate": { + "overloads": [ + [ + "Number" + ], + [], + [ + "p5.Vector", + "Number", + "p5.Vector?" + ] + ] + }, + "angleBetween": { + "overloads": [ + [ + "p5.Vector" + ], + [], + [ + "p5.Vector", + "p5.Vector" + ] + ] + }, + "lerp": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number" + ], + [ + "p5.Vector", + "Number" + ], + [], + [ + "p5.Vector", + "p5.Vector", + "Number", + "p5.Vector?" + ] + ] + }, + "slerp": { + "overloads": [ + [ + "p5.Vector", + "Number" + ], + [], + [ + "p5.Vector", + "p5.Vector", + "Number", + "p5.Vector?" + ] + ] + }, + "reflect": { + "overloads": [ + [ + "p5.Vector" + ], + [], + [ + "p5.Vector", + "p5.Vector", + "p5.Vector?" + ] + ] + }, + "array": { + "overloads": [ + [], + [], + [ + "p5.Vector" + ] + ] + }, + "equals": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?" + ], + [ + "p5.Vector|Array" + ], + [], + [ + "p5.Vector|Array", + "p5.Vector|Array" + ] + ] + }, + "fromAngle": { + "overloads": [ + [ + "Number", + "Number?" + ] + ] + }, + "fromAngles": { + "overloads": [ + [ + "Number", + "Number", + "Number?" + ] + ] + }, + "random2D": { + "overloads": [ + [] + ] + }, + "random3D": { + "overloads": [ + [] + ] + } + }, + "p5.Font": { + "textBounds": { + "overloads": [ + [ + "String", + "Number", + "Number", + "Number?" + ] + ] + }, + "textToPoints": { + "overloads": [ + [ + "String", + "Number", + "Number", + "Number?", + "Object?" + ] + ] + } + }, + "p5.Camera": { + "perspective": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "ortho": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "frustum": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "pan": { + "overloads": [ + [ + "Number" + ] + ] + }, + "tilt": { + "overloads": [ + [ + "Number" + ] + ] + }, + "lookAt": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ] + ] + }, + "camera": { + "overloads": [ + [ + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?", + "Number?" + ] + ] + }, + "move": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ] + ] + }, + "setPosition": { + "overloads": [ + [ + "Number", + "Number", + "Number" + ] + ] + }, + "set": { + "overloads": [ + [ + "p5.Camera" + ] + ] + }, + "slerp": { + "overloads": [ + [ + "p5.Camera", + "p5.Camera", + "Number" + ] + ] + } + }, + "p5.Framebuffer": { + "resize": { + "overloads": [ + [ + "Number", + "Number" + ] + ] + }, + "pixelDensity": { + "overloads": [ + [ + "Number?" + ] + ] + }, + "autoSized": { + "overloads": [ + [ + "Boolean?" + ] + ] + }, + "createCamera": { + "overloads": [ + [] + ] + }, + "remove": { + "overloads": [ + [] + ] + }, + "begin": { + "overloads": [ + [] + ] + }, + "end": { + "overloads": [ + [] + ] + }, + "draw": { + "overloads": [ + [ + "Function" + ] + ] + }, + "get": { + "overloads": [ + [ + "Number", + "Number", + "Number", + "Number" + ], + [], + [ + "Number", + "Number" + ] + ] + } + }, + "p5.Geometry": { + "calculateBoundingBox": { + "overloads": [ + [] + ] + }, + "clearColors": { + "overloads": [ + [] + ] + }, + "flipU": { + "overloads": [ + [] + ] + }, + "flipV": { + "overloads": [ + [] + ] + }, + "computeFaces": { + "overloads": [ + [] + ] + }, + "computeNormals": { + "overloads": [ + [ + "FLAT|SMOOTH?", + "Object?" + ] + ] + }, + "normalize": { + "overloads": [ + [] + ] + } + }, + "p5.Shader": { + "copyToContext": { + "overloads": [ + [ + "p5|p5.Graphics" + ] + ] + }, + "setUniform": { + "overloads": [ + [ + "String", + "Boolean|Number|Number[]|p5.Image|p5.Graphics|p5.MediaElement|p5.Texture" + ] + ] + } + }, + "p5.Table": { + "addRow": { + "overloads": [ + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ], + [ + "p5.TableRow?" + ] + ] + }, + "removeRow": { + "overloads": [ + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ] + ] + }, + "getRow": { + "overloads": [ + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ], + [ + "Integer" + ] + ] + }, + "getRows": { + "overloads": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] + }, + "findRow": { + "overloads": [ + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ] + ] + }, + "findRows": { + "overloads": [ + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ], + [ + "String", + "Integer|String" + ] + ] + }, + "matchRow": { + "overloads": [ + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ], + [ + "String|RegExp", + "String|Integer" + ] + ] + }, + "matchRows": { + "overloads": [ + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ] + ] + }, + "getColumn": { + "overloads": [ + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ], + [ + "String|Number" + ] + ] + }, + "clearRows": { + "overloads": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] + }, + "addColumn": { + "overloads": [ + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ] + ] + }, + "getColumnCount": { + "overloads": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] + }, + "getRowCount": { + "overloads": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] + }, + "removeTokens": { + "overloads": [ + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ], + [ + "String", + "String|Integer?" + ] + ] + }, + "trim": { + "overloads": [ + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ], + [ + "String|Integer?" + ] + ] + }, + "removeColumn": { + "overloads": [ + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ], + [ + "String|Integer" + ] + ] + }, + "set": { + "overloads": [ + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ], + [ + "Integer", + "String|Integer", + "String|Number" + ] + ] + }, + "setNum": { + "overloads": [ + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ], + [ + "Integer", + "String|Integer", + "Number" + ] + ] + }, + "setString": { + "overloads": [ + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ], + [ + "Integer", + "String|Integer", + "String" + ] + ] + }, + "get": { + "overloads": [ + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ] + ] + }, + "getNum": { + "overloads": [ + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ] + ] + }, + "getString": { + "overloads": [ + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ], + [ + "Integer", + "String|Integer" + ] + ] + }, + "getObject": { + "overloads": [ + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ], + [ + "String?" + ] + ] + }, + "getArray": { + "overloads": [ + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [] + ] + } + } +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 9388eca7d7..eedd2a2fd9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,17 +10,18 @@ "license": "LGPL-2.1", "dependencies": { "colorjs.io": "^0.5.2", - "zod-validation-error": "^3.3.1", "file-saver": "^1.3.8", "gifenc": "^1.0.3", "libtess": "^1.2.2", "omggif": "^1.0.10", - "opentype.js": "^1.3.1" + "opentype.js": "^1.3.1", + "zod-validation-error": "^3.3.1" }, "devDependencies": { "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-json": "^6.1.0", "@rollup/plugin-node-resolve": "^15.2.3", + "@rollup/plugin-replace": "^5.0.7", "@rollup/plugin-terser": "^0.4.4", "@vitest/browser": "^2.0.4", "all-contributors-cli": "^6.19.0", @@ -40,7 +41,7 @@ "vite": "^5.0.2", "vite-plugin-string": "^1.2.2", "vitest": "^2.0.4", - "webdriverio": "^8.38.2", + "webdriverio": "^9.0.7", "zod": "^3.23.8" } }, @@ -71,30 +72,30 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz", - "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", + "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.7.tgz", - "integrity": "sha512-nykK+LEK86ahTkX/3TgauT0ikKoNCfKHEaZYTUVupJdTLzGNvrblu4u6fa7DhZONAltdf8e662t/abY8idrd/g==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.7", - "@babel/helper-compilation-targets": "^7.24.7", - "@babel/helper-module-transforms": "^7.24.7", - "@babel/helpers": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/template": "^7.24.7", - "@babel/traverse": "^7.24.7", - "@babel/types": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -110,12 +111,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", - "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", "dev": true, "dependencies": { - "@babel/types": "^7.24.7", + "@babel/types": "^7.25.6", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -125,14 +126,14 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz", - "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", + "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.24.7", - "@babel/helper-validator-option": "^7.24.7", - "browserslist": "^4.22.2", + "@babel/compat-data": "^7.25.2", + "@babel/helper-validator-option": "^7.24.8", + "browserslist": "^4.23.1", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -140,43 +141,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", - "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", - "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", - "dev": true, - "dependencies": { - "@babel/template": "^7.24.7", - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", - "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-module-imports": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", @@ -191,16 +155,15 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz", - "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", + "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.24.7", "@babel/helper-module-imports": "^7.24.7", "@babel/helper-simple-access": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7" + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.2" }, "engines": { "node": ">=6.9.0" @@ -222,22 +185,10 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", - "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", - "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", + "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -253,22 +204,22 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz", - "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==", + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", + "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz", - "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz", + "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==", "dev": true, "dependencies": { - "@babel/template": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6" }, "engines": { "node": ">=6.9.0" @@ -289,11 +240,85 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@babel/parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", - "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", "dev": true, + "dependencies": { + "@babel/types": "^7.25.6" + }, "bin": { "parser": "bin/babel-parser.js" }, @@ -302,9 +327,9 @@ } }, "node_modules/@babel/runtime": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.7.tgz", - "integrity": "sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz", + "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==", "dev": true, "dependencies": { "regenerator-runtime": "^0.14.0" @@ -313,40 +338,31 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/runtime/node_modules/regenerator-runtime": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", - "dev": true - }, "node_modules/@babel/template": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", - "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", + "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", - "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz", + "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.7", - "@babel/helper-environment-visitor": "^7.24.7", - "@babel/helper-function-name": "^7.24.7", - "@babel/helper-hoist-variables": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/types": "^7.24.7", + "@babel/generator": "^7.25.6", + "@babel/parser": "^7.25.6", + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -355,12 +371,12 @@ } }, "node_modules/@babel/types": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", - "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-string-parser": "^7.24.8", "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" }, @@ -386,15 +402,6 @@ "statuses": "^2.0.1" } }, - "node_modules/@bundled-es-modules/statuses/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/@bundled-es-modules/tough-cookie": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/@bundled-es-modules/tough-cookie/-/tough-cookie-0.1.6.tgz", @@ -406,9 +413,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", - "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", "cpu": [ "ppc64" ], @@ -422,9 +429,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", - "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", "cpu": [ "arm" ], @@ -438,9 +445,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", - "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", "cpu": [ "arm64" ], @@ -454,9 +461,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", - "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", "cpu": [ "x64" ], @@ -470,9 +477,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", - "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", "cpu": [ "arm64" ], @@ -486,9 +493,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", - "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", "cpu": [ "x64" ], @@ -502,9 +509,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", - "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", "cpu": [ "arm64" ], @@ -518,9 +525,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", - "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", "cpu": [ "x64" ], @@ -534,9 +541,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", - "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", "cpu": [ "arm" ], @@ -550,9 +557,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", - "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", "cpu": [ "arm64" ], @@ -566,9 +573,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", - "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", "cpu": [ "ia32" ], @@ -582,9 +589,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", - "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", "cpu": [ "loong64" ], @@ -598,9 +605,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", - "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", "cpu": [ "mips64el" ], @@ -614,9 +621,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", - "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", "cpu": [ "ppc64" ], @@ -630,9 +637,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", - "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", "cpu": [ "riscv64" ], @@ -646,9 +653,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", - "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", "cpu": [ "s390x" ], @@ -662,9 +669,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", - "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", "cpu": [ "x64" ], @@ -678,9 +685,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", - "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", "cpu": [ "x64" ], @@ -694,9 +701,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", - "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", "cpu": [ "x64" ], @@ -710,9 +717,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", - "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", "cpu": [ "x64" ], @@ -726,9 +733,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", - "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", "cpu": [ "arm64" ], @@ -742,9 +749,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", - "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", "cpu": [ "ia32" ], @@ -758,9 +765,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", - "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", "cpu": [ "x64" ], @@ -789,9 +796,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.1.tgz", - "integrity": "sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" @@ -904,28 +911,28 @@ "dev": true }, "node_modules/@inquirer/confirm": { - "version": "3.1.17", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-3.1.17.tgz", - "integrity": "sha512-qCpt/AABzPynz8tr69VDvhcjwmzAryipWXtW8Vi6m651da4H/d0Bdn55LkxXD7Rp2gfgxvxzTdb66AhIA8gzBA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-3.2.0.tgz", + "integrity": "sha512-oOIwPs0Dvq5220Z8lGL/6LHRTEr9TgLHmiI99Rj1PJ1p1czTys+olrgBqZk4E2qC0YTzeHprxSQmoHioVdJ7Lw==", "dev": true, "dependencies": { - "@inquirer/core": "^9.0.5", - "@inquirer/type": "^1.5.1" + "@inquirer/core": "^9.1.0", + "@inquirer/type": "^1.5.3" }, "engines": { "node": ">=18" } }, "node_modules/@inquirer/core": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-9.0.5.tgz", - "integrity": "sha512-QWG41I7vn62O9stYKg/juKXt1PEbr/4ZZCPb4KgXDQGwgA9M5NBTQ7FnOvT1ridbxkm/wTxLCNraUs7y47pIRQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-9.1.0.tgz", + "integrity": "sha512-RZVfH//2ytTjmaBIzeKT1zefcQZzuruwkpTwwbe/i2jTl4o9M+iML5ChULzz6iw1Ok8iUBBsRCjY2IEbD8Ft4w==", "dev": true, "dependencies": { "@inquirer/figures": "^1.0.5", - "@inquirer/type": "^1.5.1", + "@inquirer/type": "^1.5.3", "@types/mute-stream": "^0.0.4", - "@types/node": "^20.14.11", + "@types/node": "^22.5.2", "@types/wrap-ansi": "^3.0.0", "ansi-escapes": "^4.3.2", "cli-spinners": "^2.9.2", @@ -940,21 +947,6 @@ "node": ">=18" } }, - "node_modules/@inquirer/core/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/@inquirer/core/node_modules/cli-width": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", @@ -964,24 +956,6 @@ "node": ">= 12" } }, - "node_modules/@inquirer/core/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@inquirer/core/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/@inquirer/core/node_modules/mute-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", @@ -1015,9 +989,9 @@ } }, "node_modules/@inquirer/type": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-1.5.1.tgz", - "integrity": "sha512-m3YgGQlKNS0BM+8AFiJkCsTqHEFCWn6s/Rqye3mYwvqY6LdfUv12eSwbsgNzrYyrLXiy7IrrjDLPysaSBwEfhw==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-1.5.3.tgz", + "integrity": "sha512-xUQ14WQGR/HK5ei+2CvgcwoH9fQ4PgPGmVFSN0pc1+fVyDL3MREhyAY7nxEErSu6CkllBM3D7e3e+kOvtu+eIg==", "dev": true, "dependencies": { "mute-stream": "^1.0.0" @@ -1174,9 +1148,9 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { @@ -1280,9 +1254,9 @@ "dev": true }, "node_modules/@promptbook/utils": { - "version": "0.50.0-10", - "resolved": "https://registry.npmjs.org/@promptbook/utils/-/utils-0.50.0-10.tgz", - "integrity": "sha512-Z94YoY/wcZb5m1QoXgmIC1rVeDguGK5bWmUTYdWCqh/LHVifRdJ1C+tBzS0h+HMOD0XzMjZhBQ/mBgTZ/QNW/g==", + "version": "0.70.0-1", + "resolved": "https://registry.npmjs.org/@promptbook/utils/-/utils-0.70.0-1.tgz", + "integrity": "sha512-qd2lLRRN+sE6UuNMi2tEeUUeb4zmXnxY5EMdfHVXNE+bqBDpUC7/aEfXgA3jnUXEr+xFjQ8PTFQgWvBMaKvw0g==", "dev": true, "funding": [ { @@ -1295,60 +1269,29 @@ } ], "dependencies": { - "moment": "2.30.1", - "prettier": "2.8.1", - "spacetrim": "0.11.25" - } - }, - "node_modules/@promptbook/utils/node_modules/prettier": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", - "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==", - "dev": true, - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" + "spacetrim": "0.11.39" } }, "node_modules/@puppeteer/browsers": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.9.1.tgz", - "integrity": "sha512-PuvK6xZzGhKPvlx3fpfdM2kYY3P/hB1URtK8wA7XUJ6prn6pp22zvJHu48th0SGcHL9SutbPHrFuQgfXTFobWA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.3.1.tgz", + "integrity": "sha512-uK7o3hHkK+naEobMSJ+2ySYyXtQkBxIH8Gn4MK9ciePjNV+Pf+PgY/W7iPzn2MTjl3stcYB5AlcTmPYw7AXDwA==", "dev": true, "dependencies": { - "debug": "4.3.4", - "extract-zip": "2.0.1", - "progress": "2.0.3", - "proxy-agent": "6.3.1", - "tar-fs": "3.0.4", - "unbzip2-stream": "1.4.3", - "yargs": "17.7.2" + "debug": "^4.3.6", + "extract-zip": "^2.0.1", + "progress": "^2.0.3", + "proxy-agent": "^6.4.0", + "semver": "^7.6.3", + "tar-fs": "^3.0.6", + "unbzip2-stream": "^1.4.3", + "yargs": "^17.7.2" }, "bin": { "browsers": "lib/cjs/main-cli.js" }, "engines": { - "node": ">=16.3.0" - } - }, - "node_modules/@puppeteer/browsers/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=18" } }, "node_modules/@puppeteer/browsers/node_modules/cliui": { @@ -1365,39 +1308,16 @@ "node": ">=12" } }, - "node_modules/@puppeteer/browsers/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@puppeteer/browsers/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@puppeteer/browsers/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@puppeteer/browsers/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "dependencies": { - "ms": "2.1.2" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=10" } }, "node_modules/@puppeteer/browsers/node_modules/wrap-ansi": { @@ -1523,15 +1443,36 @@ } } }, - "node_modules/@rollup/plugin-terser": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-0.4.4.tgz", - "integrity": "sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==", + "node_modules/@rollup/plugin-replace": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-5.0.7.tgz", + "integrity": "sha512-PqxSfuorkHz/SPpyngLyg5GCEkOcee9M1bkxiVDr41Pd61mqP1PLOoDPbpl44SB2mQGKwV/In74gqQmGITOhEQ==", "dev": true, "dependencies": { - "serialize-javascript": "^6.0.1", - "smob": "^1.0.0", - "terser": "^5.17.4" + "@rollup/pluginutils": "^5.0.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-terser": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-0.4.4.tgz", + "integrity": "sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==", + "dev": true, + "dependencies": { + "serialize-javascript": "^6.0.1", + "smob": "^1.0.0", + "terser": "^5.17.4" }, "engines": { "node": ">=14.0.0" @@ -1568,9 +1509,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz", - "integrity": "sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.2.tgz", + "integrity": "sha512-fSuPrt0ZO8uXeS+xP3b+yYTCBUd05MoSp2N/MFOgjhhUhMmchXlpTQrTpI8T+YAwAQuK7MafsCOxW7VrPMrJcg==", "cpu": [ "arm" ], @@ -1581,9 +1522,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz", - "integrity": "sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.2.tgz", + "integrity": "sha512-xGU5ZQmPlsjQS6tzTTGwMsnKUtu0WVbl0hYpTPauvbRAnmIvpInhJtgjj3mcuJpEiuUw4v1s4BimkdfDWlh7gA==", "cpu": [ "arm64" ], @@ -1594,9 +1535,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz", - "integrity": "sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.2.tgz", + "integrity": "sha512-99AhQ3/ZMxU7jw34Sq8brzXqWH/bMnf7ZVhvLk9QU2cOepbQSVTns6qoErJmSiAvU3InRqC2RRZ5ovh1KN0d0Q==", "cpu": [ "arm64" ], @@ -1607,9 +1548,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz", - "integrity": "sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.2.tgz", + "integrity": "sha512-ZbRaUvw2iN/y37x6dY50D8m2BnDbBjlnMPotDi/qITMJ4sIxNY33HArjikDyakhSv0+ybdUxhWxE6kTI4oX26w==", "cpu": [ "x64" ], @@ -1620,9 +1561,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz", - "integrity": "sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.2.tgz", + "integrity": "sha512-ztRJJMiE8nnU1YFcdbd9BcH6bGWG1z+jP+IPW2oDUAPxPjo9dverIOyXz76m6IPA6udEL12reYeLojzW2cYL7w==", "cpu": [ "arm" ], @@ -1633,9 +1574,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz", - "integrity": "sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.2.tgz", + "integrity": "sha512-flOcGHDZajGKYpLV0JNc0VFH361M7rnV1ee+NTeC/BQQ1/0pllYcFmxpagltANYt8FYf9+kL6RSk80Ziwyhr7w==", "cpu": [ "arm" ], @@ -1646,9 +1587,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz", - "integrity": "sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.2.tgz", + "integrity": "sha512-69CF19Kp3TdMopyteO/LJbWufOzqqXzkrv4L2sP8kfMaAQ6iwky7NoXTp7bD6/irKgknDKM0P9E/1l5XxVQAhw==", "cpu": [ "arm64" ], @@ -1659,9 +1600,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz", - "integrity": "sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.2.tgz", + "integrity": "sha512-48pD/fJkTiHAZTnZwR0VzHrao70/4MlzJrq0ZsILjLW/Ab/1XlVUStYyGt7tdyIiVSlGZbnliqmult/QGA2O2w==", "cpu": [ "arm64" ], @@ -1672,9 +1613,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz", - "integrity": "sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.2.tgz", + "integrity": "sha512-cZdyuInj0ofc7mAQpKcPR2a2iu4YM4FQfuUzCVA2u4HI95lCwzjoPtdWjdpDKyHxI0UO82bLDoOaLfpZ/wviyQ==", "cpu": [ "ppc64" ], @@ -1685,9 +1626,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz", - "integrity": "sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.2.tgz", + "integrity": "sha512-RL56JMT6NwQ0lXIQmMIWr1SW28z4E4pOhRRNqwWZeXpRlykRIlEpSWdsgNWJbYBEWD84eocjSGDu/XxbYeCmwg==", "cpu": [ "riscv64" ], @@ -1698,9 +1639,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz", - "integrity": "sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.2.tgz", + "integrity": "sha512-PMxkrWS9z38bCr3rWvDFVGD6sFeZJw4iQlhrup7ReGmfn7Oukrr/zweLhYX6v2/8J6Cep9IEA/SmjXjCmSbrMQ==", "cpu": [ "s390x" ], @@ -1711,9 +1652,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz", - "integrity": "sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.2.tgz", + "integrity": "sha512-B90tYAUoLhU22olrafY3JQCFLnT3NglazdwkHyxNDYF/zAxJt5fJUB/yBoWFoIQ7SQj+KLe3iL4BhOMa9fzgpw==", "cpu": [ "x64" ], @@ -1724,9 +1665,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz", - "integrity": "sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.2.tgz", + "integrity": "sha512-7twFizNXudESmC9oneLGIUmoHiiLppz/Xs5uJQ4ShvE6234K0VB1/aJYU3f/4g7PhssLGKBVCC37uRkkOi8wjg==", "cpu": [ "x64" ], @@ -1737,9 +1678,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz", - "integrity": "sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.2.tgz", + "integrity": "sha512-9rRero0E7qTeYf6+rFh3AErTNU1VCQg2mn7CQcI44vNUWM9Ze7MSRS/9RFuSsox+vstRt97+x3sOhEey024FRQ==", "cpu": [ "arm64" ], @@ -1750,9 +1691,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz", - "integrity": "sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.2.tgz", + "integrity": "sha512-5rA4vjlqgrpbFVVHX3qkrCo/fZTj1q0Xxpg+Z7yIo3J2AilW7t2+n6Q8Jrx+4MrYpAnjttTYF8rr7bP46BPzRw==", "cpu": [ "ia32" ], @@ -1763,9 +1704,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz", - "integrity": "sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.2.tgz", + "integrity": "sha512-6UUxd0+SKomjdzuAcp+HAmxw1FlGBnl1v2yEPSabtx4lBfdXHDVsW7+lQkgz9cNFJGY3AWR7+V8P5BqkD9L9nA==", "cpu": [ "x64" ], @@ -1775,28 +1716,16 @@ "win32" ] }, - "node_modules/@sindresorhus/is": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.6.0.tgz", - "integrity": "sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, "node_modules/@swc/core": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.5.28.tgz", - "integrity": "sha512-muCdNIqOTURUgYeyyOLYE3ShL8SZO6dw6bhRm6dCvxWzCZOncPc5fB0kjcPXTML+9KJoHL7ks5xg+vsQK+v6ig==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.7.23.tgz", + "integrity": "sha512-VDNkpDvDlreGh2E3tlDj8B3piiuLhhQA/7rIVZpiLUvG1YpucAa6N7iDXA7Gc/+Hah8spaCg/qvEaBkCmcIYCQ==", "dev": true, "hasInstallScript": true, "peer": true, "dependencies": { "@swc/counter": "^0.1.3", - "@swc/types": "^0.1.8" + "@swc/types": "^0.1.12" }, "engines": { "node": ">=10" @@ -1806,16 +1735,16 @@ "url": "https://opencollective.com/swc" }, "optionalDependencies": { - "@swc/core-darwin-arm64": "1.5.28", - "@swc/core-darwin-x64": "1.5.28", - "@swc/core-linux-arm-gnueabihf": "1.5.28", - "@swc/core-linux-arm64-gnu": "1.5.28", - "@swc/core-linux-arm64-musl": "1.5.28", - "@swc/core-linux-x64-gnu": "1.5.28", - "@swc/core-linux-x64-musl": "1.5.28", - "@swc/core-win32-arm64-msvc": "1.5.28", - "@swc/core-win32-ia32-msvc": "1.5.28", - "@swc/core-win32-x64-msvc": "1.5.28" + "@swc/core-darwin-arm64": "1.7.23", + "@swc/core-darwin-x64": "1.7.23", + "@swc/core-linux-arm-gnueabihf": "1.7.23", + "@swc/core-linux-arm64-gnu": "1.7.23", + "@swc/core-linux-arm64-musl": "1.7.23", + "@swc/core-linux-x64-gnu": "1.7.23", + "@swc/core-linux-x64-musl": "1.7.23", + "@swc/core-win32-arm64-msvc": "1.7.23", + "@swc/core-win32-ia32-msvc": "1.7.23", + "@swc/core-win32-x64-msvc": "1.7.23" }, "peerDependencies": { "@swc/helpers": "*" @@ -1827,9 +1756,9 @@ } }, "node_modules/@swc/core-darwin-arm64": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.5.28.tgz", - "integrity": "sha512-sP6g63ybzIdOWNDbn51tyHN8EMt7Mb4RMeHQEsXB7wQfDvzhpWB+AbfK6Gs3Q8fwP/pmWIrWW9csKOc1K2Mmkg==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.7.23.tgz", + "integrity": "sha512-yyOHPfti6yKlQulfVWMt7BVKst+SyEZYCWuQSGMn1KgmNCH/bYufRWfQXIhkGSj44ZkEepJmsJ8tDyIb4k5WyA==", "cpu": [ "arm64" ], @@ -1844,9 +1773,9 @@ } }, "node_modules/@swc/core-darwin-x64": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.5.28.tgz", - "integrity": "sha512-Bd/agp/g7QocQG5AuorOzSC78t8OzeN+pCN/QvJj1CvPhvppjJw6e1vAbOR8vO2vvGi2pvtf3polrYQStJtSiA==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.7.23.tgz", + "integrity": "sha512-GzqHwQ0Y1VyjdI/bBKFX2GKm5HD3PIB6OhuAQtWZMTtEr2yIrlT0YK2T+XKh7oIg31JwxGBeQdBk3KTI7DARmQ==", "cpu": [ "x64" ], @@ -1861,9 +1790,9 @@ } }, "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.5.28.tgz", - "integrity": "sha512-Wr3TwPGIveS9/OBWm0r9VAL8wkCR0zQn46J8K01uYCmVhUNK3Muxjs0vQBZaOrGu94mqbj9OXY+gB3W7aDvGdA==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.7.23.tgz", + "integrity": "sha512-qwX4gB41OS6/OZkHcpTqLFGsdmvoZyffnJIlgB/kZKwH3lfeJWzv6vx57zXtNpM/t7GoQEe0VZUVdmNjxSxBZw==", "cpu": [ "arm" ], @@ -1878,9 +1807,9 @@ } }, "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.5.28.tgz", - "integrity": "sha512-8G1ZwVTuLgTAVTMPD+M97eU6WeiRIlGHwKZ5fiJHPBcz1xqIC7jQcEh7XBkobkYoU5OILotls3gzjRt8CMNyDQ==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.7.23.tgz", + "integrity": "sha512-TsrbUZdMaUwzI7+g/8rHPLWbntMKYSu5Bn5IBSqVKPeyqaXxNnlIUnWXgXcUcRAc+T+Y8ADfr7EiFz9iz5DuSA==", "cpu": [ "arm64" ], @@ -1895,9 +1824,9 @@ } }, "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.5.28.tgz", - "integrity": "sha512-0Ajdzb5Fzvz+XUbN5ESeHAz9aHHSYiQcm+vmsDi0TtPHmsalfnqEPZmnK0zPALPJPLQP2dDo4hELeDg3/c3xgA==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.7.23.tgz", + "integrity": "sha512-JEdtwdthazKq4PBz53KSubwwK8MvqODAihGSAzc8u3Unq4ojcvaS8b0CwLBeD+kTQ78HpxOXTt3DsFIxpgaCAA==", "cpu": [ "arm64" ], @@ -1912,9 +1841,9 @@ } }, "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.5.28.tgz", - "integrity": "sha512-ueQ9VejnQUM2Pt+vT0IAKoF4vYBWUP6n1KHGdILpoGe3LuafQrqu7RoyQ15C7/AYii7hAeNhTFdf6gLbg8cjFg==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.7.23.tgz", + "integrity": "sha512-V51gFPWaVAHbI1yg9ahsoya3aB4uawye3SZ5uQWgcP7wdCdiv60dw4F5nuPJf5Z1oXD3U/BslXuamv8Oh9vXqQ==", "cpu": [ "x64" ], @@ -1929,9 +1858,9 @@ } }, "node_modules/@swc/core-linux-x64-musl": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.5.28.tgz", - "integrity": "sha512-G5th8Mg0az8CbY4GQt9/m5hg2Y0kGIwvQBeVACuLQB6q2Y4txzdiTpjmFqUUhEvvl7Klyx1IHvNhfXs3zpt7PA==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.7.23.tgz", + "integrity": "sha512-BBqQi4+UdeRqag3yM4IJjaHG4yc1o3l9ksENHToE0o/u2DT0FY5+K/DiYGZLC1JHbSFzNqRCYsa7DIzRtZ0A1A==", "cpu": [ "x64" ], @@ -1946,9 +1875,9 @@ } }, "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.5.28.tgz", - "integrity": "sha512-JezwCGavZ7CkNXx4yInI4kpb71L0zxzxA9BFlmnsGKEEjVQcKc3hFpmIzfFVs+eotlBUwDNb0+Yo9m6Cb7lllA==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.7.23.tgz", + "integrity": "sha512-JPk6pvCKncL6bXG7p+NLZf8PWx4FakVvKNdwGeMrYunb+yk1IZf7qf9LJk8+GDGF5QviDXPs8opZrTrfsW80fA==", "cpu": [ "arm64" ], @@ -1963,9 +1892,9 @@ } }, "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.5.28.tgz", - "integrity": "sha512-q8tW5J4RkOkl7vYShnWS//VAb2Ngolfm9WOMaF2GRJUr2Y/Xeb/+cNjdsNOqea2BzW049D5vdP7XPmir3/zUZw==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.7.23.tgz", + "integrity": "sha512-2Whxi8d+bLQBzJcQ5qYPHlk02YYVGsMVav0fWk+FnX2z1QRREIu1L1xvrpi7gBpjXp6BIU40ya8GiKeekNT2bg==", "cpu": [ "ia32" ], @@ -1980,9 +1909,9 @@ } }, "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.5.28", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.5.28.tgz", - "integrity": "sha512-jap6EiB3wG1YE1hyhNr9KLPpH4PGm+5tVMfN0l7fgKtV0ikgpcEN/YF94tru+z5m2HovqYW009+Evq9dcVGmpg==", + "version": "1.7.23", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.7.23.tgz", + "integrity": "sha512-82fARk4/yJ40kwWKY/gdKDisPdtgJE9jgpl/vkNG3alyJxrCzuNM7+CtiKoYbXLeqM8GQTS3wlvCaJu9oQ8dag==", "cpu": [ "x64" ], @@ -2004,27 +1933,15 @@ "peer": true }, "node_modules/@swc/types": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.8.tgz", - "integrity": "sha512-RNFA3+7OJFNYY78x0FYwi1Ow+iF1eF5WvmfY1nXPOEH4R2p/D4Cr1vzje7dNAI2aLFqpv8Wyz4oKSWqIZArpQA==", + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.12.tgz", + "integrity": "sha512-wBJA+SdtkbFhHjTMYH+dEH1y4VpfGdAc2Kw/LK09i9bXd/K6j6PkDcFCEzb6iVfZMkPRrl/q0e3toqTAJdkIVA==", "dev": true, "peer": true, "dependencies": { "@swc/counter": "^0.1.3" } }, - "node_modules/@szmarczak/http-timer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-5.0.1.tgz", - "integrity": "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==", - "dev": true, - "dependencies": { - "defer-to-connect": "^2.0.1" - }, - "engines": { - "node": ">=14.16" - } - }, "node_modules/@testing-library/dom": { "version": "10.4.0", "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz", @@ -2044,76 +1961,6 @@ "node": ">=18" } }, - "node_modules/@testing-library/dom/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@testing-library/dom/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@testing-library/dom/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@testing-library/dom/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@testing-library/dom/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@testing-library/dom/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@testing-library/user-event": { "version": "14.5.2", "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.5.2.tgz", @@ -2175,12 +2022,6 @@ "@types/unist": "^2" } }, - "node_modules/@types/http-cache-semantics": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", - "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", - "dev": true - }, "node_modules/@types/mdast": { "version": "3.0.15", "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", @@ -2206,12 +2047,12 @@ } }, "node_modules/@types/node": { - "version": "20.14.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.12.tgz", - "integrity": "sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ==", + "version": "22.5.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz", + "integrity": "sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==", "dev": true, "dependencies": { - "undici-types": "~5.26.4" + "undici-types": "~6.19.2" } }, "node_modules/@types/normalize-package-data": { @@ -2238,6 +2079,12 @@ "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", "dev": true }, + "node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==", + "dev": true + }, "node_modules/@types/statuses": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/@types/statuses/-/statuses-2.0.5.tgz", @@ -2257,9 +2104,9 @@ "dev": true }, "node_modules/@types/unist": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", - "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==", + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==", "dev": true }, "node_modules/@types/which": { @@ -2275,9 +2122,9 @@ "dev": true }, "node_modules/@types/ws": { - "version": "8.5.10", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", - "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", + "version": "8.5.12", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.12.tgz", + "integrity": "sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==", "dev": true, "dependencies": { "@types/node": "*" @@ -2300,16 +2147,16 @@ "dev": true }, "node_modules/@vitest/browser": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@vitest/browser/-/browser-2.0.4.tgz", - "integrity": "sha512-QsIkbqPqHsXvgxjCjjgKjuWKmrC0VJgpaDkuEmOy5gTnErhhifWIfp3HpH92K7cscfaIao+RlKv5f8nUMgjfmA==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vitest/browser/-/browser-2.0.5.tgz", + "integrity": "sha512-VbOYtu/6R3d7ASZREcrJmRY/sQuRFO9wMVsEDqfYbWiJRh2fDNi8CL1Csn7Ux31pOcPmmM5QvzFCMpiojvVh8g==", "dev": true, "dependencies": { - "@testing-library/dom": "^10.3.1", + "@testing-library/dom": "^10.4.0", "@testing-library/user-event": "^14.5.2", - "@vitest/utils": "2.0.4", + "@vitest/utils": "2.0.5", "magic-string": "^0.30.10", - "msw": "^2.3.1", + "msw": "^2.3.2", "sirv": "^2.0.4", "ws": "^8.18.0" }, @@ -2318,7 +2165,7 @@ }, "peerDependencies": { "playwright": "*", - "vitest": "2.0.4", + "vitest": "2.0.5", "webdriverio": "*" }, "peerDependenciesMeta": { @@ -2333,35 +2180,14 @@ } } }, - "node_modules/@vitest/browser/node_modules/ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", - "dev": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/@vitest/expect": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.0.4.tgz", - "integrity": "sha512-39jr5EguIoanChvBqe34I8m1hJFI4+jxvdOpD7gslZrVQBKhh8H9eD7J/LJX4zakrw23W+dITQTDqdt43xVcJw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.0.5.tgz", + "integrity": "sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==", "dev": true, "dependencies": { - "@vitest/spy": "2.0.4", - "@vitest/utils": "2.0.4", + "@vitest/spy": "2.0.5", + "@vitest/utils": "2.0.5", "chai": "^5.1.1", "tinyrainbow": "^1.2.0" }, @@ -2370,9 +2196,9 @@ } }, "node_modules/@vitest/pretty-format": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.0.4.tgz", - "integrity": "sha512-RYZl31STbNGqf4l2eQM1nvKPXE0NhC6Eq0suTTePc4mtMQ1Fn8qZmjV4emZdEdG2NOWGKSCrHZjmTqDCDoeFBw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.0.5.tgz", + "integrity": "sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==", "dev": true, "dependencies": { "tinyrainbow": "^1.2.0" @@ -2382,12 +2208,12 @@ } }, "node_modules/@vitest/runner": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.0.4.tgz", - "integrity": "sha512-Gk+9Su/2H2zNfNdeJR124gZckd5st4YoSuhF1Rebi37qTXKnqYyFCd9KP4vl2cQHbtuVKjfEKrNJxHHCW8thbQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.0.5.tgz", + "integrity": "sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==", "dev": true, "dependencies": { - "@vitest/utils": "2.0.4", + "@vitest/utils": "2.0.5", "pathe": "^1.1.2" }, "funding": { @@ -2395,12 +2221,12 @@ } }, "node_modules/@vitest/snapshot": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.0.4.tgz", - "integrity": "sha512-or6Mzoz/pD7xTvuJMFYEtso1vJo1S5u6zBTinfl+7smGUhqybn6VjzCDMhmTyVOFWwkCMuNjmNNxnyXPgKDoPw==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.0.5.tgz", + "integrity": "sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==", "dev": true, "dependencies": { - "@vitest/pretty-format": "2.0.4", + "@vitest/pretty-format": "2.0.5", "magic-string": "^0.30.10", "pathe": "^1.1.2" }, @@ -2409,9 +2235,9 @@ } }, "node_modules/@vitest/spy": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.0.4.tgz", - "integrity": "sha512-uTXU56TNoYrTohb+6CseP8IqNwlNdtPwEO0AWl+5j7NelS6x0xZZtP0bDWaLvOfUbaYwhhWp1guzXUxkC7mW7Q==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.0.5.tgz", + "integrity": "sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==", "dev": true, "dependencies": { "tinyspy": "^3.0.0" @@ -2421,12 +2247,12 @@ } }, "node_modules/@vitest/utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.0.4.tgz", - "integrity": "sha512-Zc75QuuoJhOBnlo99ZVUkJIuq4Oj0zAkrQ2VzCqNCx6wAwViHEh5Fnp4fiJTE9rA+sAoXRf00Z9xGgfEzV6fzQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.0.5.tgz", + "integrity": "sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==", "dev": true, "dependencies": { - "@vitest/pretty-format": "2.0.4", + "@vitest/pretty-format": "2.0.5", "estree-walker": "^3.0.3", "loupe": "^3.1.1", "tinyrainbow": "^1.2.0" @@ -2445,82 +2271,82 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.27.tgz", - "integrity": "sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.0.tgz", + "integrity": "sha512-ja7cpqAOfw4tyFAxgBz70Z42miNDeaqTxExTsnXDLomRpqfyCgyvZvFp482fmsElpfvsoMJUsvzULhvxUTW6Iw==", "dev": true, "optional": true, "dependencies": { - "@babel/parser": "^7.24.4", - "@vue/shared": "3.4.27", + "@babel/parser": "^7.25.3", + "@vue/shared": "3.5.0", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz", - "integrity": "sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.0.tgz", + "integrity": "sha512-xYjUybWZXl+1R/toDy815i4PbeehL2hThiSGkcpmIOCy2HoYyeeC/gAWK/Y/xsoK+GSw198/T5O31bYuQx5uvQ==", "dev": true, "optional": true, "dependencies": { - "@vue/compiler-core": "3.4.27", - "@vue/shared": "3.4.27" + "@vue/compiler-core": "3.5.0", + "@vue/shared": "3.5.0" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz", - "integrity": "sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.0.tgz", + "integrity": "sha512-B9DgLtrqok2GLuaFjLlSL15ZG3ZDBiitUH1ecex9guh/ZcA5MCdwuVE6nsfQxktuZY/QY0awJ35/ripIviCQTQ==", "dev": true, "optional": true, "dependencies": { - "@babel/parser": "^7.24.4", - "@vue/compiler-core": "3.4.27", - "@vue/compiler-dom": "3.4.27", - "@vue/compiler-ssr": "3.4.27", - "@vue/shared": "3.4.27", + "@babel/parser": "^7.25.3", + "@vue/compiler-core": "3.5.0", + "@vue/compiler-dom": "3.5.0", + "@vue/compiler-ssr": "3.5.0", + "@vue/shared": "3.5.0", "estree-walker": "^2.0.2", - "magic-string": "^0.30.10", - "postcss": "^8.4.38", + "magic-string": "^0.30.11", + "postcss": "^8.4.44", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz", - "integrity": "sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.0.tgz", + "integrity": "sha512-E263QZmA1dqRd7c3u/sWTLRMpQOT0aZ8av/L9SoD/v/BVMZaWFHPUUBswS+bzrfvG2suJF8vSLKx6k6ba5SUdA==", "dev": true, "optional": true, "dependencies": { - "@vue/compiler-dom": "3.4.27", - "@vue/shared": "3.4.27" + "@vue/compiler-dom": "3.5.0", + "@vue/shared": "3.5.0" } }, "node_modules/@vue/shared": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz", - "integrity": "sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.0.tgz", + "integrity": "sha512-m9IgiteBpCkFaMNwCOBkFksA7z8QiKc30ooRuoXWUFRDu0mGyNPlFHmbncF0/Kra1RlX8QrmBbRaIxVvikaR0Q==", "dev": true, "optional": true }, "node_modules/@wdio/config": { - "version": "8.38.2", - "resolved": "https://registry.npmjs.org/@wdio/config/-/config-8.38.2.tgz", - "integrity": "sha512-xlnapTr1vOA0h5HsHTIqj47729FbG3WjxmgHweDEQvcT4C1g9l+WKf+N3FM7DNNoIsAqxKi6rOHG02rJADQJtw==", + "version": "9.0.6", + "resolved": "https://registry.npmjs.org/@wdio/config/-/config-9.0.6.tgz", + "integrity": "sha512-WsACM5QjT3ZsoPVqHroYt8pOkZx4/6PTdNKm45VL8NHhQe5w9IFbl1fKxFHQ7ZkPI3F+EFvFvubO8puJ0OcSmQ==", "dev": true, "dependencies": { - "@wdio/logger": "8.38.0", - "@wdio/types": "8.38.2", - "@wdio/utils": "8.38.2", + "@wdio/logger": "9.0.4", + "@wdio/types": "9.0.4", + "@wdio/utils": "9.0.6", "decamelize": "^6.0.0", - "deepmerge-ts": "^5.0.0", + "deepmerge-ts": "^7.0.3", "glob": "^10.2.2", "import-meta-resolve": "^4.0.0" }, "engines": { - "node": "^16.13 || >=18" + "node": ">=18" } }, "node_modules/@wdio/config/node_modules/brace-expansion": { @@ -2532,48 +2358,30 @@ "balanced-match": "^1.0.0" } }, - "node_modules/@wdio/config/node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@wdio/config/node_modules/glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@wdio/config/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -2586,9 +2394,9 @@ } }, "node_modules/@wdio/logger": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@wdio/logger/-/logger-8.38.0.tgz", - "integrity": "sha512-kcHL86RmNbcQP+Gq/vQUGlArfU6IIcbbnNp32rRIraitomZow+iEoc519rdQmSVusDozMS5DZthkgDdxK+vz6Q==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@wdio/logger/-/logger-9.0.4.tgz", + "integrity": "sha512-b6gcu0PTVb3fgK4kyAH/k5UUWN5FOUdAfhA4PAY/IZvxZTMFYMqnrZb0WRWWWqL6nu9pcrOVtCOdPBvj0cb+Nw==", "dev": true, "dependencies": { "chalk": "^5.1.2", @@ -2597,7 +2405,7 @@ "strip-ansi": "^7.1.0" }, "engines": { - "node": "^16.13 || >=18" + "node": ">=18" } }, "node_modules/@wdio/logger/node_modules/ansi-regex": { @@ -2640,63 +2448,81 @@ } }, "node_modules/@wdio/protocols": { - "version": "8.38.0", - "resolved": "https://registry.npmjs.org/@wdio/protocols/-/protocols-8.38.0.tgz", - "integrity": "sha512-7BPi7aXwUtnXZPeWJRmnCNFjyDvGrXlBmN9D4Pi58nILkyjVRQKEY9/qv/pcdyB0cvmIvw++Kl/1Lg+RxG++UA==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@wdio/protocols/-/protocols-9.0.4.tgz", + "integrity": "sha512-T9v8Jkp94NxLLil5J7uJ/+YHk5/7fhOggzGcN+LvuCHS6jbJFZ/11c4SUEuXw27Yqk01fFXPBbF6TwcTTOuW/Q==", "dev": true }, "node_modules/@wdio/repl": { - "version": "8.24.12", - "resolved": "https://registry.npmjs.org/@wdio/repl/-/repl-8.24.12.tgz", - "integrity": "sha512-321F3sWafnlw93uRTSjEBVuvWCxTkWNDs7ektQS15drrroL3TMeFOynu4rDrIz0jXD9Vas0HCD2Tq/P0uxFLdw==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@wdio/repl/-/repl-9.0.4.tgz", + "integrity": "sha512-5Bc5ARjWA7t6MZNnVJ9WvO1iDsy6iOsrSDWiP7APWAdaF/SJCP3SFE2c+PdQJpJWhr2Kk0fRGuyDM+GdsmZhwg==", "dev": true, "dependencies": { "@types/node": "^20.1.0" }, "engines": { - "node": "^16.13 || >=18" + "node": ">=18" + } + }, + "node_modules/@wdio/repl/node_modules/@types/node": { + "version": "20.16.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.3.tgz", + "integrity": "sha512-/wdGiWRkMOm53gAsSyFMXFZHbVg7C6CbkrzHNpaHoYfsUWPg7m6ZRKtvQjgvQ9i8WT540a3ydRlRQbxjY30XxQ==", + "dev": true, + "dependencies": { + "undici-types": "~6.19.2" } }, "node_modules/@wdio/types": { - "version": "8.38.2", - "resolved": "https://registry.npmjs.org/@wdio/types/-/types-8.38.2.tgz", - "integrity": "sha512-+wj1c1OSLdnN4WO5b44Ih4263dTl/eSwMGSI4/pCgIyXIuYQH38JQ+6WRa+c8vJEskUzboq2cSgEQumVZ39ozQ==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@wdio/types/-/types-9.0.4.tgz", + "integrity": "sha512-MN7O4Uk3zPWvkN8d6SNdIjd7qHUlTxS7j0QfRPu6TdlYbHu6BJJ8Rr84y7GcUzCnTAJ1nOIpvUyR8MY3hOaVKg==", "dev": true, "dependencies": { "@types/node": "^20.1.0" }, "engines": { - "node": "^16.13 || >=18" + "node": ">=18" + } + }, + "node_modules/@wdio/types/node_modules/@types/node": { + "version": "20.16.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.3.tgz", + "integrity": "sha512-/wdGiWRkMOm53gAsSyFMXFZHbVg7C6CbkrzHNpaHoYfsUWPg7m6ZRKtvQjgvQ9i8WT540a3ydRlRQbxjY30XxQ==", + "dev": true, + "dependencies": { + "undici-types": "~6.19.2" } }, "node_modules/@wdio/utils": { - "version": "8.38.2", - "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-8.38.2.tgz", - "integrity": "sha512-y5AnBwsGcu/XuCBGCgKmlvKdwEIFyzLA+Cr+denySxY3jbWDONtPUcGaVdFALwsIa5jcIjcATqGmZcCPGnkd7g==", + "version": "9.0.6", + "resolved": "https://registry.npmjs.org/@wdio/utils/-/utils-9.0.6.tgz", + "integrity": "sha512-cnPXeW/sfqyKFuRRmADRZDNvFwEBMr7j7wwWLO6q5opoW++dwOdJW4WV0wDZbPcXTtGFCSrGCDLLdGcTAWMb3A==", "dev": true, "dependencies": { - "@puppeteer/browsers": "^1.6.0", - "@wdio/logger": "8.38.0", - "@wdio/types": "8.38.2", + "@puppeteer/browsers": "^2.2.0", + "@wdio/logger": "9.0.4", + "@wdio/types": "9.0.4", "decamelize": "^6.0.0", - "deepmerge-ts": "^5.1.0", - "edgedriver": "^5.5.0", - "geckodriver": "^4.3.1", + "deepmerge-ts": "^7.0.3", + "edgedriver": "^5.6.1", + "geckodriver": "^4.3.3", "get-port": "^7.0.0", "import-meta-resolve": "^4.0.0", - "locate-app": "^2.1.0", - "safaridriver": "^0.1.0", + "locate-app": "^2.2.24", + "safaridriver": "^0.1.2", "split2": "^4.2.0", - "wait-port": "^1.0.4" + "wait-port": "^1.1.0" }, "engines": { - "node": "^16.13 || >=18" + "node": ">=18" } }, "node_modules/@zip.js/zip.js": { - "version": "2.7.45", - "resolved": "https://registry.npmjs.org/@zip.js/zip.js/-/zip.js-2.7.45.tgz", - "integrity": "sha512-Mm2EXF33DJQ/3GWWEWeP1UCqzpQ5+fiMvT3QWspsXY05DyqqxWu7a9awSzU4/spHMHVFrTjani1PR0vprgZpow==", + "version": "2.7.52", + "resolved": "https://registry.npmjs.org/@zip.js/zip.js/-/zip.js-2.7.52.tgz", + "integrity": "sha512-+5g7FQswvrCHwYKNMd/KFxZSObctLSsQOgqBSi0LzwHo3li9Eh1w5cF5ndjQw9Zbr3ajVnd2+XyiX85gAetx1Q==", "dev": true, "engines": { "bun": ">=0.7.0", @@ -2717,11 +2543,10 @@ } }, "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", + "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", "dev": true, - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -2793,76 +2618,6 @@ "prettier": "^2" } }, - "node_modules/all-contributors-cli/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/all-contributors-cli/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/all-contributors-cli/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/all-contributors-cli/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/all-contributors-cli/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/all-contributors-cli/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -2888,15 +2643,18 @@ } }, "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, "node_modules/anymatch": { @@ -2957,73 +2715,22 @@ "balanced-match": "^1.0.0" } }, - "node_modules/archiver-utils/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/archiver-utils/node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/archiver-utils/node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/archiver-utils/node_modules/glob": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz", - "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -3041,9 +2748,9 @@ } }, "node_modules/archiver-utils/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -3055,71 +2762,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/archiver-utils/node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "dev": true, - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/archiver/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/archiver/node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/archiver/node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "dev": true, - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -3157,15 +2799,15 @@ } }, "node_modules/ast-types/node_modules/tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", "dev": true }, "node_modules/async": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", - "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", "dev": true }, "node_modules/b4a": { @@ -3191,16 +2833,16 @@ "dev": true }, "node_modules/bare-events": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.3.1.tgz", - "integrity": "sha512-sJnSOTVESURZ61XgEleqmP255T6zTYwHPwE4r6SssIh0U9/uDvfpdoJYpVUerJJZH2fueO+CdT8ZT+OC/7aZDA==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.4.2.tgz", + "integrity": "sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q==", "dev": true, "optional": true }, "node_modules/bare-fs": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-2.3.1.tgz", - "integrity": "sha512-W/Hfxc/6VehXlsgFtbB5B4xFcsCl+pAh30cYhoFyXErf6oGrwjh8SwiPAdHgpmWonKuYpZgGywN0SXt7dgsADA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-2.3.3.tgz", + "integrity": "sha512-7RYKL+vZVCyAsMLi5SPu7QGauGGT8avnP/HO571ndEuV4MYdGXvLhtW67FuLPeEI8EiIY7zbbRR9x7x7HU0kgw==", "dev": true, "optional": true, "dependencies": { @@ -3210,9 +2852,9 @@ } }, "node_modules/bare-os": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-2.3.0.tgz", - "integrity": "sha512-oPb8oMM1xZbhRQBngTgpcQ5gXw6kjOaRsSWsIeNyRxGed2w/ARyP7ScBYpWR1qfX2E5rS3gBw6OWcSQo+s+kUg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-2.4.2.tgz", + "integrity": "sha512-HZoJwzC+rZ9lqEemTMiO0luOePoGYNBgsLLgegKR/cljiJvcDNhDZQkzC+NC5Oh0aHbdBNSOHpghwMuB5tqhjg==", "dev": true, "optional": true }, @@ -3227,12 +2869,13 @@ } }, "node_modules/bare-stream": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.1.2.tgz", - "integrity": "sha512-az/7TFOh4Gk9Tqs1/xMFq5FuFoeZ9hZ3orsM2x69u8NXVUDXZnpdhG8mZY/Pv6DF954MGn+iIt4rFrG34eQsvg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.2.1.tgz", + "integrity": "sha512-YTB47kHwBW9zSG8LD77MIBAAQXjU2WjAkMHeeb7hUplVs6+IoM5I7uEVQNPMB7lj9r8I76UMdoMkGnCodHOLqg==", "dev": true, "optional": true, "dependencies": { + "b4a": "^1.6.6", "streamx": "^2.18.0" } }, @@ -3277,6 +2920,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -3300,9 +2949,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.1.tgz", - "integrity": "sha512-TUfofFo/KsK/bWZ9TWQ5O26tsWW4Uhmt8IYklbnUa70udB6P2wA7w7o4PY4muaEPBQaAX+CEnmmIA41NVHtPVw==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", + "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", "dev": true, "funding": [ { @@ -3319,10 +2968,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001629", - "electron-to-chromium": "^1.4.796", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.16" + "caniuse-lite": "^1.0.30001646", + "electron-to-chromium": "^1.5.4", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" }, "bin": { "browserslist": "cli.js" @@ -3332,13 +2981,27 @@ } }, "node_modules/buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz", - "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, "node_modules/buffer-crc32": { @@ -3377,45 +3040,6 @@ "node": ">=8" } }, - "node_modules/cacheable-lookup": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz", - "integrity": "sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==", - "dev": true, - "engines": { - "node": ">=14.16" - } - }, - "node_modules/cacheable-request": { - "version": "10.2.14", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-10.2.14.tgz", - "integrity": "sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==", - "dev": true, - "dependencies": { - "@types/http-cache-semantics": "^4.0.2", - "get-stream": "^6.0.1", - "http-cache-semantics": "^4.1.1", - "keyv": "^4.5.3", - "mimic-response": "^4.0.0", - "normalize-url": "^8.0.0", - "responselike": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - } - }, - "node_modules/cacheable-request/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/call-bind": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", @@ -3444,10 +3068,19 @@ "node": ">=6" } }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/caniuse-lite": { - "version": "1.0.30001632", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001632.tgz", - "integrity": "sha512-udx3o7yHJfUxMLkGohMlVHCvFvWmirKh9JAH/d7WOLPetlH+LTL5cocMZ0t7oZx/mdlOWXti97xLZWc8uURRHg==", + "version": "1.0.30001655", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz", + "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==", "dev": true, "funding": [ { @@ -3491,17 +3124,19 @@ } }, "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, "node_modules/character-entities": { @@ -3549,6 +3184,60 @@ "node": ">= 16" } }, + "node_modules/cheerio": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz", + "integrity": "sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==", + "dev": true, + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.1.0", + "encoding-sniffer": "^0.2.0", + "htmlparser2": "^9.1.0", + "parse5": "^7.1.2", + "parse5-htmlparser2-tree-adapter": "^7.0.0", + "parse5-parser-stream": "^7.1.2", + "undici": "^6.19.5", + "whatwg-mimetype": "^4.0.0" + }, + "engines": { + "node": ">=18.17" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cheerio/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, "node_modules/chokidar": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", @@ -3573,18 +3262,6 @@ "fsevents": "~2.3.2" } }, - "node_modules/chromium-bidi": { - "version": "0.4.16", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.16.tgz", - "integrity": "sha512-7ZbXdWERxRxSwo3txsBjjmc/NLxqb1Bk30mRb0BMS4YIaiV6zvKZqL/UAH+DdqcDYayDWk2n/y8klkBDODrPvA==", - "dev": true, - "dependencies": { - "mitt": "3.0.0" - }, - "peerDependencies": { - "devtools-protocol": "*" - } - }, "node_modules/ci-info": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", @@ -3644,15 +3321,15 @@ } }, "node_modules/cli-truncate/node_modules/emoji-regex": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", - "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", + "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==", "dev": true }, "node_modules/cli-truncate/node_modules/string-width": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", - "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dev": true, "dependencies": { "emoji-regex": "^10.3.0", @@ -3701,22 +3378,21 @@ "wrap-ansi": "^6.2.0" } }, - "node_modules/cliui/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/cliui/node_modules/color-convert": { + "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", @@ -3728,41 +3404,12 @@ "node": ">=7.0.0" } }, - "node_modules/cliui/node_modules/color-name": { + "node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/cliui/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, "node_modules/colorette": { "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", @@ -3821,39 +3468,6 @@ "node": ">= 14" } }, - "node_modules/compress-commons/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/compress-commons/node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, "node_modules/compress-commons/node_modules/is-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", @@ -3866,22 +3480,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/compress-commons/node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "dev": true, - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -3959,64 +3557,6 @@ "node": ">= 14" } }, - "node_modules/crc32-stream/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/crc32-stream/node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/crc32-stream/node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "dev": true, - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/cross-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", - "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", - "dev": true, - "dependencies": { - "node-fetch": "^2.6.12" - } - }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -4031,6 +3571,22 @@ "node": ">= 8" } }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, "node_modules/css-shorthand-properties": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/css-shorthand-properties/-/css-shorthand-properties-1.1.1.tgz", @@ -4043,6 +3599,18 @@ "integrity": "sha512-FUV3xaJ63buRLgHrLQVlVgQnQdR4yqdLGaDu7g8CQcWjInDfM9plBTPI9FRfpahju1UBSaMckeb2/46ApS/V1Q==", "dev": true }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, "node_modules/data-uri-to-buffer": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", @@ -4053,9 +3621,9 @@ } }, "node_modules/dayjs": { - "version": "1.11.11", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.11.tgz", - "integrity": "sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==", + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", "dev": true }, "node_modules/de-indent": { @@ -4066,9 +3634,9 @@ "optional": true }, "node_modules/debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -4107,33 +3675,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dev": true, - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decompress-response/node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/deep-eql": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", @@ -4159,23 +3700,14 @@ } }, "node_modules/deepmerge-ts": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-5.1.0.tgz", - "integrity": "sha512-eS8dRJOckyo9maw9Tu5O5RUi/4inFLrnoLkBe3cPfDMx3WZioXtmOew4TXQaxq7Rhl4xjDtR7c6x8nNTxOvbFw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-7.1.0.tgz", + "integrity": "sha512-q6bNsfNBtgr8ZOQqmZbl94MmYWm+QcDNIkqCxVWiw1vKvf+y/N2dZQKdnDXn4c5Ygt/y63tDof6OCN+2YwWVEg==", "dev": true, "engines": { "node": ">=16.0.0" } }, - "node_modules/defer-to-connect": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -4225,12 +3757,6 @@ "node": ">=6" } }, - "node_modules/devtools-protocol": { - "version": "0.0.1302984", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1302984.tgz", - "integrity": "sha512-Rgh2Sk5fUSCtEx4QGH9iwTyECdFPySG2nlz5J8guGh2Wlha6uzSOCq/DCEC8faHlLaMPZJMuZ4ovgcX4LvOkKA==", - "dev": true - }, "node_modules/didyoumean": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", @@ -4325,21 +3851,6 @@ "vue-template-compiler": "^2.7.8" } }, - "node_modules/documentation/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/documentation/node_modules/chalk": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", @@ -4366,24 +3877,6 @@ "node": ">=12" } }, - "node_modules/documentation/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/documentation/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/documentation/node_modules/pify": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/pify/-/pify-6.1.0.tgz", @@ -4455,6 +3948,61 @@ "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", "dev": true }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dev": true, + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -4478,16 +4026,17 @@ } }, "node_modules/edgedriver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/edgedriver/-/edgedriver-5.6.0.tgz", - "integrity": "sha512-IeJXEczG+DNYBIa9gFgVYTqrawlxmc9SUqUsWU2E98jOsO/amA7wzabKOS8Bwgr/3xWoyXCJ6yGFrbFKrilyyQ==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/edgedriver/-/edgedriver-5.6.1.tgz", + "integrity": "sha512-3Ve9cd5ziLByUdigw6zovVeWJjVs8QHVmqOB0sJ0WNeVPcwf4p18GnxMmVvlFmYRloUwf5suNuorea4QzwBIOA==", "dev": true, "hasInstallScript": true, "dependencies": { - "@wdio/logger": "^8.28.0", - "@zip.js/zip.js": "^2.7.44", + "@wdio/logger": "^8.38.0", + "@zip.js/zip.js": "^2.7.48", "decamelize": "^6.0.0", "edge-paths": "^3.0.5", + "fast-xml-parser": "^4.4.1", "node-fetch": "^3.3.2", "which": "^4.0.0" }, @@ -4495,6 +4044,45 @@ "edgedriver": "bin/edgedriver.js" } }, + "node_modules/edgedriver/node_modules/@wdio/logger": { + "version": "8.38.0", + "resolved": "https://registry.npmjs.org/@wdio/logger/-/logger-8.38.0.tgz", + "integrity": "sha512-kcHL86RmNbcQP+Gq/vQUGlArfU6IIcbbnNp32rRIraitomZow+iEoc519rdQmSVusDozMS5DZthkgDdxK+vz6Q==", + "dev": true, + "dependencies": { + "chalk": "^5.1.2", + "loglevel": "^1.6.0", + "loglevel-plugin-prefix": "^0.8.4", + "strip-ansi": "^7.1.0" + }, + "engines": { + "node": "^16.13 || >=18" + } + }, + "node_modules/edgedriver/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/edgedriver/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, "node_modules/edgedriver/node_modules/data-uri-to-buffer": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", @@ -4531,6 +4119,21 @@ "url": "https://opencollective.com/node-fetch" } }, + "node_modules/edgedriver/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, "node_modules/edgedriver/node_modules/which": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", @@ -4547,9 +4150,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.798", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.798.tgz", - "integrity": "sha512-by9J2CiM9KPGj9qfp5U4FcPSbXJG7FNzqnYaY4WLzX+v2PHieVGmnsA4dxfpGE3QEC7JofpPZmn7Vn1B9NR2+Q==", + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", + "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", "dev": true }, "node_modules/emoji-regex": { @@ -4558,6 +4161,31 @@ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, + "node_modules/encoding-sniffer": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz", + "integrity": "sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==", + "dev": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "whatwg-encoding": "^3.1.1" + }, + "funding": { + "url": "https://github.com/fb55/encoding-sniffer?sponsor=1" + } + }, + "node_modules/encoding-sniffer/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -4572,7 +4200,6 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, - "optional": true, "engines": { "node": ">=0.12" }, @@ -4580,6 +4207,18 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/environment": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/environment/-/environment-1.1.0.tgz", + "integrity": "sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -4611,9 +4250,9 @@ } }, "node_modules/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", "dev": true, "hasInstallScript": true, "bin": { @@ -4623,47 +4262,50 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" } }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/escodegen": { @@ -4687,15 +4329,6 @@ "source-map": "~0.6.1" } }, - "node_modules/escodegen/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/escodegen/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -4777,15 +4410,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/eslint-visitor-keys": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", @@ -4798,83 +4422,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/eslint/node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -4902,81 +4449,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -4989,18 +4461,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/espree": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", @@ -5018,18 +4478,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/espree/node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", @@ -5044,9 +4492,9 @@ } }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -5055,15 +4503,6 @@ "node": ">=0.10" } }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", @@ -5076,7 +4515,7 @@ "node": ">=4.0" } }, - "node_modules/esrecurse/node_modules/estraverse": { + "node_modules/estraverse": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", @@ -5115,6 +4554,15 @@ "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", "dev": true }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, "node_modules/execa": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", @@ -5158,18 +4606,6 @@ "node": ">=4" } }, - "node_modules/external-editor/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/extract-zip": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", @@ -5229,7 +4665,29 @@ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/fastq": { + "node_modules/fast-xml-parser": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.5.0.tgz", + "integrity": "sha512-/PlTQCI96+fZMAOLMZK4CWG1ItCbfZ/0jx7UIJFChPNrx7tcEgerUgWbeieCM9MfHInUDyK8DWYZ+YrywDJuTg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + }, + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + ], + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, + "node_modules/fastq": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", @@ -5285,6 +4743,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -5314,6 +4781,22 @@ "node": ">=8" } }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/find-versions": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz", @@ -5349,13 +4832,20 @@ "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true }, - "node_modules/form-data-encoder": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-2.1.4.tgz", - "integrity": "sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==", + "node_modules/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, "engines": { - "node": ">= 14.17" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/formdata-polyfill": { @@ -5384,6 +4874,15 @@ "node": ">=14.14" } }, + "node_modules/fs-extra/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -5414,17 +4913,17 @@ } }, "node_modules/geckodriver": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/geckodriver/-/geckodriver-4.4.1.tgz", - "integrity": "sha512-nnAdIrwLkMcDu4BitWXF23pEMeZZ0Cj7HaWWFdSpeedBP9z6ft150JYiGO2mwzw6UiR823Znk1JeIf07RyzloA==", + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/geckodriver/-/geckodriver-4.4.4.tgz", + "integrity": "sha512-0zaw19tcmWeluqx7+Y559JGBtidu1D0Lb8ElYKiNEQu8r3sCfrLUf5V10xypl8u29ZLbgRV7WflxCJVTCkCMFA==", "dev": true, "hasInstallScript": true, "dependencies": { - "@wdio/logger": "^8.28.0", - "@zip.js/zip.js": "^2.7.44", + "@wdio/logger": "^9.0.0", + "@zip.js/zip.js": "^2.7.48", "decamelize": "^6.0.0", "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.4", + "https-proxy-agent": "^7.0.5", "node-fetch": "^3.3.2", "tar-fs": "^3.0.6", "which": "^4.0.0" @@ -5472,20 +4971,6 @@ "url": "https://opencollective.com/node-fetch" } }, - "node_modules/geckodriver/node_modules/tar-fs": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.6.tgz", - "integrity": "sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==", - "dev": true, - "dependencies": { - "pump": "^3.0.0", - "tar-stream": "^3.1.5" - }, - "optionalDependencies": { - "bare-fs": "^2.1.1", - "bare-path": "^2.1.0" - } - }, "node_modules/geckodriver/node_modules/which": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", @@ -5708,43 +5193,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/got": { - "version": "12.6.1", - "resolved": "https://registry.npmjs.org/got/-/got-12.6.1.tgz", - "integrity": "sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^5.2.0", - "@szmarczak/http-timer": "^5.0.1", - "cacheable-lookup": "^7.0.0", - "cacheable-request": "^10.2.8", - "decompress-response": "^6.0.0", - "form-data-encoder": "^2.1.2", - "get-stream": "^6.0.1", - "http2-wrapper": "^2.1.10", - "lowercase-keys": "^3.0.0", - "p-cancelable": "^3.0.0", - "responselike": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" - } - }, - "node_modules/got/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -5763,22 +5211,13 @@ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, - "node_modules/graphql": { - "version": "16.9.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.9.0.tgz", - "integrity": "sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0" - } - }, "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/has-property-descriptors": { @@ -5982,9 +5421,9 @@ "dev": true }, "node_modules/highlight.js": { - "version": "11.9.0", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.9.0.tgz", - "integrity": "sha512-fJ7cW7fQGCYAkgv4CPfwFHrfd/cLS4Hau96JuJ+ZTOWhjnhoeN1ub1tFmALm/+lW5z4WCAuAV9bm05AP0mS6Gw==", + "version": "11.10.0", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.10.0.tgz", + "integrity": "sha512-SYVnVFswQER+zu1laSya563s+F8VDGt7o35d4utbamowvUNLLMovFqwCLSocpZTz3MgaSRA1IbqRWZv97dtErQ==", "dev": true, "engines": { "node": ">=12.0.0" @@ -6030,12 +5469,31 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "node_modules/htmlfy": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/htmlfy/-/htmlfy-0.2.1.tgz", + "integrity": "sha512-HoomFHQ3av1uhq+7FxJTq4Ns0clAD+tGbQNrSd0WFY3UAjjUk6G3LaWEqdgmIXYkY4pexZiyZ3ykZJhQlM0J5A==", "dev": true }, + "node_modules/htmlparser2": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz", + "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.1.0", + "entities": "^4.5.0" + } + }, "node_modules/http-proxy-agent": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", @@ -6049,23 +5507,10 @@ "node": ">= 14" } }, - "node_modules/http2-wrapper": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-2.2.1.tgz", - "integrity": "sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==", - "dev": true, - "dependencies": { - "quick-lru": "^5.1.1", - "resolve-alpn": "^1.2.0" - }, - "engines": { - "node": ">=10.19.0" - } - }, "node_modules/https-proxy-agent": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", - "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", "dev": true, "dependencies": { "agent-base": "^7.0.2", @@ -6114,256 +5559,104 @@ "url": "https://opencollective.com/husky" } }, - "node_modules/husky/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/i18next": { + "version": "19.9.2", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-19.9.2.tgz", + "integrity": "sha512-0i6cuo6ER6usEOtKajUUDj92zlG+KArFia0857xxiEHAQcUwh/RtOQocui1LPJwunSYT574Pk64aNva1kwtxZg==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "@babel/runtime": "^7.12.0" } }, - "node_modules/husky/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/i18next-browser-languagedetector": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-4.3.1.tgz", + "integrity": "sha512-KIToAzf8zwWvacgnRwJp63ase26o24AuNUlfNVJ5YZAFmdGhsJpmFClxXPuk9rv1FMI4lnc8zLSqgZPEZMrW4g==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "@babel/runtime": "^7.5.5" } }, - "node_modules/husky/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">=7.0.0" + "node": ">=0.10.0" } }, - "node_modules/husky/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/husky/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/husky/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 4" } }, - "node_modules/husky/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "dev": true + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "dependencies": { - "p-locate": "^5.0.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/husky/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "node_modules/import-meta-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", + "integrity": "sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==", "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/husky/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/husky/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/husky/node_modules/pkg-dir": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", - "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", - "dev": true, - "dependencies": { - "find-up": "^5.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/husky/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/husky/node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/i18next": { - "version": "19.9.2", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-19.9.2.tgz", - "integrity": "sha512-0i6cuo6ER6usEOtKajUUDj92zlG+KArFia0857xxiEHAQcUwh/RtOQocui1LPJwunSYT574Pk64aNva1kwtxZg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.0" - } - }, - "node_modules/i18next-browser-languagedetector": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-4.3.1.tgz", - "integrity": "sha512-KIToAzf8zwWvacgnRwJp63ase26o24AuNUlfNVJ5YZAFmdGhsJpmFClxXPuk9rv1FMI4lnc8zLSqgZPEZMrW4g==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.5.5" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-meta-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", - "integrity": "sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" + "node": ">=0.8.19" } }, "node_modules/inflight": { @@ -6416,76 +5709,6 @@ "node": ">=8.0.0" } }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ip-address": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", @@ -6530,6 +5753,29 @@ "node": ">=8" } }, + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, "node_modules/is-builtin-module": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", @@ -6546,12 +5792,15 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dev": true, "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6710,6 +5959,24 @@ "node": ">=0.10.0" } }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true + }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -6717,16 +5984,13 @@ "dev": true }, "node_modules/jackspeak": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", - "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, - "engines": { - "node": ">=14" - }, "funding": { "url": "https://github.com/sponsors/isaacs" }, @@ -6790,76 +6054,6 @@ "node": ">=10" } }, - "node_modules/json-fixer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/json-fixer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/json-fixer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/json-fixer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/json-fixer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/json-fixer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", @@ -6902,6 +6096,15 @@ "graceful-fs": "^4.1.6" } }, + "node_modules/jsonfile/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/jszip": { "version": "3.10.1", "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", @@ -6914,6 +6117,36 @@ "setimmediate": "^1.0.5" } }, + "node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/jszip/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/jszip/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -6942,18 +6175,6 @@ "@babel/traverse": "^7.10.5" } }, - "node_modules/ky": { - "version": "0.33.3", - "resolved": "https://registry.npmjs.org/ky/-/ky-0.33.3.tgz", - "integrity": "sha512-CasD9OCEQSFIam2U8efFK81Yeg8vNMTBUqtMOHlrcWQHqUX3HeCl9Dr31u4toV7emlH8Mymk5+9p0lL6mKb/Xw==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sindresorhus/ky?sponsor=1" - } - }, "node_modules/lazystream": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", @@ -6966,6 +6187,36 @@ "node": ">= 0.6.3" } }, + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/lazystream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/lazystream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -7012,21 +6263,21 @@ "dev": true }, "node_modules/lint-staged": { - "version": "15.2.5", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.5.tgz", - "integrity": "sha512-j+DfX7W9YUvdzEZl3Rk47FhDF6xwDBV5wwsCPw6BwWZVPYJemusQmvb9bRsW23Sqsaa+vRloAWogbK4BUuU2zA==", + "version": "15.2.10", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.10.tgz", + "integrity": "sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg==", "dev": true, "dependencies": { "chalk": "~5.3.0", "commander": "~12.1.0", - "debug": "~4.3.4", + "debug": "~4.3.6", "execa": "~8.0.1", - "lilconfig": "~3.1.1", - "listr2": "~8.2.1", - "micromatch": "~4.0.7", + "lilconfig": "~3.1.2", + "listr2": "~8.2.4", + "micromatch": "~4.0.8", "pidtree": "~0.6.0", "string-argv": "~0.3.2", - "yaml": "~2.4.2" + "yaml": "~2.5.0" }, "bin": { "lint-staged": "bin/lint-staged.js" @@ -7051,9 +6302,9 @@ } }, "node_modules/lint-staged/node_modules/yaml": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.5.tgz", - "integrity": "sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz", + "integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==", "dev": true, "bin": { "yaml": "bin.mjs" @@ -7063,16 +6314,16 @@ } }, "node_modules/listr2": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.2.1.tgz", - "integrity": "sha512-irTfvpib/rNiD637xeevjO2l3Z5loZmuaRi0L0YE5LfijwVY96oyVn0DFD3o/teAok7nfobMG1THvvcHh/BP6g==", + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.2.4.tgz", + "integrity": "sha512-opevsywziHd3zHCVQGAj8zu+Z3yHNkkoYhWIGnq54RrCVwLz0MozotJEDnKsIBLvkfLGN6BLOyAeRrYI0pKA4g==", "dev": true, "dependencies": { "cli-truncate": "^4.0.0", "colorette": "^2.0.20", "eventemitter3": "^5.0.1", - "log-update": "^6.0.0", - "rfdc": "^1.3.1", + "log-update": "^6.1.0", + "rfdc": "^1.4.1", "wrap-ansi": "^9.0.0" }, "engines": { @@ -7089,9 +6340,9 @@ } }, "node_modules/locate-app": { - "version": "2.4.15", - "resolved": "https://registry.npmjs.org/locate-app/-/locate-app-2.4.15.tgz", - "integrity": "sha512-oAGHATXPUHSQ74Om+3dXBRNYtCzU7Wzuhlj/WIZchqHb/5/TGJRzLEtHipMDOak0UZG9U365RMXyBzgV/fhOww==", + "version": "2.4.38", + "resolved": "https://registry.npmjs.org/locate-app/-/locate-app-2.4.38.tgz", + "integrity": "sha512-fJNTsDQZSiy+bn98RicvVX8e7HwH3YqZnRRisircGDGPpf0eZ2x57Ev7LGs0pCBO7hzjINVtVr5QFfK8KH7hjg==", "dev": true, "funding": [ { @@ -7104,7 +6355,7 @@ } ], "dependencies": { - "@promptbook/utils": "0.50.0-10", + "@promptbook/utils": "0.70.0-1", "type-fest": "2.13.0", "userhome": "1.0.0" } @@ -7121,6 +6372,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -7146,14 +6412,14 @@ "dev": true }, "node_modules/log-update": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-6.0.0.tgz", - "integrity": "sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-6.1.0.tgz", + "integrity": "sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==", "dev": true, "dependencies": { - "ansi-escapes": "^6.2.0", - "cli-cursor": "^4.0.0", - "slice-ansi": "^7.0.0", + "ansi-escapes": "^7.0.0", + "cli-cursor": "^5.0.0", + "slice-ansi": "^7.1.0", "strip-ansi": "^7.1.0", "wrap-ansi": "^9.0.0" }, @@ -7165,12 +6431,15 @@ } }, "node_modules/log-update/node_modules/ansi-escapes": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.1.tgz", - "integrity": "sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-7.0.0.tgz", + "integrity": "sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==", "dev": true, + "dependencies": { + "environment": "^1.0.0" + }, "engines": { - "node": ">=14.16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7201,15 +6470,15 @@ } }, "node_modules/log-update/node_modules/cli-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", - "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", + "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==", "dev": true, "dependencies": { - "restore-cursor": "^4.0.0" + "restore-cursor": "^5.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7230,52 +6499,37 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-update/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/log-update/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz", + "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==", "dev": true, "dependencies": { - "mimic-fn": "^2.1.0" + "mimic-function": "^5.0.0" }, "engines": { - "node": ">=6" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/log-update/node_modules/restore-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", - "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz", + "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==", "dev": true, "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "onetime": "^7.0.0", + "signal-exit": "^4.1.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-update/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, "node_modules/log-update/node_modules/slice-ansi": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-7.1.0.tgz", @@ -7345,18 +6599,6 @@ "get-func-name": "^2.0.1" } }, - "node_modules/lowercase-keys": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-3.0.0.tgz", - "integrity": "sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -7376,12 +6618,12 @@ } }, "node_modules/magic-string": { - "version": "0.30.10", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", - "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", + "version": "0.30.11", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", + "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", "dev": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" + "@jridgewell/sourcemap-codec": "^1.5.0" } }, "node_modules/map-cache": { @@ -8271,9 +7513,9 @@ ] }, "node_modules/micromatch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", - "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "dependencies": { "braces": "^3.0.3", @@ -8295,13 +7537,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mimic-response": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-4.0.0.tgz", - "integrity": "sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==", + "node_modules/mimic-function": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", "dev": true, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -8328,27 +7570,6 @@ "node": ">=16 || 14 >=14.17" } }, - "node_modules/mitt": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.0.tgz", - "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ==", - "dev": true - }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true - }, - "node_modules/moment": { - "version": "2.30.1", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", - "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/mri": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", @@ -8374,9 +7595,9 @@ "dev": true }, "node_modules/msw": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/msw/-/msw-2.3.4.tgz", - "integrity": "sha512-sHMlwrajgmZSA2l1o7qRSe+azm/I+x9lvVVcOxAzi4vCtH8uVPJk1K5BQYDkzGl+tt0RvM9huEXXdeGrgcc79g==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/msw/-/msw-2.4.1.tgz", + "integrity": "sha512-HXcoQPzYTwEmVk+BGIcRa0vLabBT+J20SSSeYh/QfajaK5ceA6dlD4ZZjfz2dqGEq4vRNCPLP6eXsB94KllPFg==", "dev": true, "hasInstallScript": true, "dependencies": { @@ -8389,7 +7610,6 @@ "@types/cookie": "^0.6.0", "@types/statuses": "^2.0.4", "chalk": "^4.1.2", - "graphql": "^16.8.1", "headers-polyfill": "^4.0.2", "is-node-process": "^1.2.0", "outvariant": "^1.4.2", @@ -8408,45 +7628,18 @@ "url": "https://github.com/sponsors/mswjs" }, "peerDependencies": { + "graphql": ">= 16.8.x", "typescript": ">= 4.7.x" }, "peerDependenciesMeta": { + "graphql": { + "optional": true + }, "typescript": { "optional": true } } }, - "node_modules/msw/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/msw/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, "node_modules/msw/node_modules/cliui": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", @@ -8461,49 +7654,10 @@ "node": ">=12" } }, - "node_modules/msw/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/msw/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/msw/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/msw/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/msw/node_modules/type-fest": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.23.0.tgz", - "integrity": "sha512-ZiBujro2ohr5+Z/hZWHESLz3g08BBdrdLMieYFULJO+tWc437sn8kQsWLJoZErY8alNhxre9K4p3GURAG11n+w==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.0.tgz", + "integrity": "sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==", "dev": true, "engines": { "node": ">=16" @@ -8644,9 +7798,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "dev": true }, "node_modules/normalize-package-data": { @@ -8665,9 +7819,9 @@ } }, "node_modules/normalize-package-data/node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -8685,18 +7839,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-url": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.0.1.tgz", - "integrity": "sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==", - "dev": true, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/npm-run-path": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", @@ -8724,11 +7866,26 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", "dev": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -8779,18 +7936,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/open/node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/opencollective-postinstall": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", @@ -8847,25 +7992,31 @@ "integrity": "sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==", "dev": true }, - "node_modules/p-cancelable": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz", - "integrity": "sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, "engines": { - "node": ">=12.20" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=6" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -8881,9 +8032,9 @@ } }, "node_modules/pac-proxy-agent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.1.tgz", - "integrity": "sha512-ASV8yU4LLKBAjqIPMbrgtaKIvxQri/yh2OpI+S6hVa9JRkUI3Y3NPFbfngDtY7oFtSMD3w31Xns89mDa3Feo5A==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.2.tgz", + "integrity": "sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==", "dev": true, "dependencies": { "@tootallnate/quickjs-emscripten": "^0.23.0", @@ -8891,9 +8042,9 @@ "debug": "^4.3.4", "get-uri": "^6.0.1", "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.2", - "pac-resolver": "^7.0.0", - "socks-proxy-agent": "^8.0.2" + "https-proxy-agent": "^7.0.5", + "pac-resolver": "^7.0.1", + "socks-proxy-agent": "^8.0.4" }, "engines": { "node": ">= 14" @@ -8912,6 +8063,12 @@ "node": ">= 14" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "dev": true + }, "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -8986,6 +8143,64 @@ "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", "dev": true }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "dev": true, + "dependencies": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-parser-stream": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz", + "integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==", + "dev": true, + "dependencies": { + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-parser-stream/node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -9048,13 +8263,10 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true }, "node_modules/path-to-regexp": { "version": "6.2.2", @@ -9105,9 +8317,9 @@ "dev": true }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", "dev": true }, "node_modules/picomatch": { @@ -9146,6 +8358,67 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/pkg-dir": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", + "dev": true, + "dependencies": { + "find-up": "^5.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/playwright": { + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.1.tgz", + "integrity": "sha512-oPcr1yqoXLCkgKtD5eNUPLiN40rYEM39odNpIb6VE6S7/15gJmA1NzVv6zJYusV0e7tzvkU/utBFNa/Kpxmwng==", + "dev": true, + "optional": true, + "peer": true, + "dependencies": { + "playwright-core": "1.46.1" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "fsevents": "2.3.2" + } + }, + "node_modules/playwright-core": { + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.46.1.tgz", + "integrity": "sha512-h9LqIQaAv+CYvWzsZ+h3RsrqCStkBHlgo6/TJlFst3cOTlLghBQlJwPOZKQJTKNaD3QIB7aAVQ+gfWbN3NXB7A==", + "dev": true, + "optional": true, + "peer": true, + "bin": { + "playwright-core": "cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/playwright/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/please-upgrade-node": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", @@ -9156,9 +8429,9 @@ } }, "node_modules/postcss": { - "version": "8.4.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", - "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", + "version": "8.4.44", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.44.tgz", + "integrity": "sha512-Aweb9unOEpQ3ezu4Q00DPvvM2ZTUitJdNKeP/+uQgr1IBIqu574IaZoURId7BKtWMREwzKa9OgzPzezWGPWFQw==", "dev": true, "funding": [ { @@ -9176,7 +8449,7 @@ ], "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "source-map-js": "^1.2.0" }, "engines": { @@ -9275,15 +8548,15 @@ "dev": true }, "node_modules/proxy-agent": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.1.tgz", - "integrity": "sha512-Rb5RVBy1iyqOtNl15Cw/llpeLH8bsb37gM1FUfKQ+Wck6xHlbAhWGUFiTRHtkjqGTA5pSHz6+0hrPW/oECihPQ==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.4.0.tgz", + "integrity": "sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==", "dev": true, "dependencies": { "agent-base": "^7.0.2", "debug": "^4.3.4", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.2", + "http-proxy-agent": "^7.0.1", + "https-proxy-agent": "^7.0.3", "lru-cache": "^7.14.1", "pac-proxy-agent": "^7.0.1", "proxy-from-env": "^1.1.0", @@ -9312,227 +8585,31 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/puppeteer-core": { - "version": "20.9.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-20.9.0.tgz", - "integrity": "sha512-H9fYZQzMTRrkboEfPmf7m3CLDN6JvbxXA3qTtS+dFt27tR+CsFHzPsT6pzp6lYL6bJbAPaR0HaPO6uSi+F94Pg==", - "dev": true, - "dependencies": { - "@puppeteer/browsers": "1.4.6", - "chromium-bidi": "0.4.16", - "cross-fetch": "4.0.0", - "debug": "4.3.4", - "devtools-protocol": "0.0.1147663", - "ws": "8.13.0" - }, - "engines": { - "node": ">=16.3.0" - }, - "peerDependencies": { - "typescript": ">= 4.7.4" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/puppeteer-core/node_modules/@puppeteer/browsers": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.4.6.tgz", - "integrity": "sha512-x4BEjr2SjOPowNeiguzjozQbsc6h437ovD/wu+JpaenxVLm3jkgzHY2xOslMTp50HoTvQreMjiexiGQw1sqZlQ==", - "dev": true, - "dependencies": { - "debug": "4.3.4", - "extract-zip": "2.0.1", - "progress": "2.0.3", - "proxy-agent": "6.3.0", - "tar-fs": "3.0.4", - "unbzip2-stream": "1.4.3", - "yargs": "17.7.1" - }, - "bin": { - "browsers": "lib/cjs/main-cli.js" - }, - "engines": { - "node": ">=16.3.0" - }, - "peerDependencies": { - "typescript": ">= 4.7.4" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/puppeteer-core/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/puppeteer-core/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/puppeteer-core/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/puppeteer-core/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/puppeteer-core/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/puppeteer-core/node_modules/devtools-protocol": { - "version": "0.0.1147663", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", - "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", - "dev": true - }, - "node_modules/puppeteer-core/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/puppeteer-core/node_modules/proxy-agent": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", - "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", - "dev": true, - "dependencies": { - "agent-base": "^7.0.2", - "debug": "^4.3.4", - "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.0", - "lru-cache": "^7.14.1", - "pac-proxy-agent": "^7.0.0", - "proxy-from-env": "^1.1.0", - "socks-proxy-agent": "^8.0.1" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/puppeteer-core/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/puppeteer-core/node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/puppeteer-core/node_modules/yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "dev": true, - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, - "node_modules/puppeteer-core/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "engines": { - "node": ">=12" + "node": ">=6" } }, "node_modules/qs": { - "version": "6.12.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.12.1.tgz", - "integrity": "sha512-zWmv4RSuB9r2mYQw3zxQuHWeU+42aKi1wWig/j4ele4ygELZ7PEO6MM7rim9oAQH2A5MWfsAVf/jPvTPgCbvUQ==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, "dependencies": { "side-channel": "^1.0.6" @@ -9582,18 +8659,6 @@ "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", "dev": true }, - "node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -9726,6 +8791,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/read-pkg-up/node_modules/yocto-queue": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/read-pkg/node_modules/type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -9739,39 +8816,19 @@ } }, "node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/readable-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/readable-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", "dev": true, "dependencies": { - "safe-buffer": "~5.1.0" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/readdir-glob": { @@ -9816,6 +8873,12 @@ "node": ">=8.10.0" } }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true + }, "node_modules/remark": { "version": "14.0.3", "resolved": "https://registry.npmjs.org/remark/-/remark-14.0.3.tgz", @@ -9963,12 +9026,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-alpn": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", - "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", - "dev": true - }, "node_modules/resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", @@ -9978,21 +9035,6 @@ "node": ">=4" } }, - "node_modules/responselike": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz", - "integrity": "sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==", - "dev": true, - "dependencies": { - "lowercase-keys": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/resq": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/resq/-/resq-1.11.0.tgz", @@ -10062,9 +9104,9 @@ } }, "node_modules/rfdc": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", - "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", "dev": true }, "node_modules/rgb2hex": { @@ -10111,9 +9153,9 @@ } }, "node_modules/rollup": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", - "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.2.tgz", + "integrity": "sha512-e3TapAgYf9xjdLvKQCkQTnbTKd4a6jwlpQSJJFokHGaX2IVjoEqkIIhiQfqsi0cdwlOD+tQGuOd5AJkc5RngBw==", "dev": true, "dependencies": { "@types/estree": "1.0.5" @@ -10126,22 +9168,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.18.0", - "@rollup/rollup-android-arm64": "4.18.0", - "@rollup/rollup-darwin-arm64": "4.18.0", - "@rollup/rollup-darwin-x64": "4.18.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", - "@rollup/rollup-linux-arm-musleabihf": "4.18.0", - "@rollup/rollup-linux-arm64-gnu": "4.18.0", - "@rollup/rollup-linux-arm64-musl": "4.18.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", - "@rollup/rollup-linux-riscv64-gnu": "4.18.0", - "@rollup/rollup-linux-s390x-gnu": "4.18.0", - "@rollup/rollup-linux-x64-gnu": "4.18.0", - "@rollup/rollup-linux-x64-musl": "4.18.0", - "@rollup/rollup-win32-arm64-msvc": "4.18.0", - "@rollup/rollup-win32-ia32-msvc": "4.18.0", - "@rollup/rollup-win32-x64-msvc": "4.18.0", + "@rollup/rollup-android-arm-eabi": "4.21.2", + "@rollup/rollup-android-arm64": "4.21.2", + "@rollup/rollup-darwin-arm64": "4.21.2", + "@rollup/rollup-darwin-x64": "4.21.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.21.2", + "@rollup/rollup-linux-arm-musleabihf": "4.21.2", + "@rollup/rollup-linux-arm64-gnu": "4.21.2", + "@rollup/rollup-linux-arm64-musl": "4.21.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.21.2", + "@rollup/rollup-linux-riscv64-gnu": "4.21.2", + "@rollup/rollup-linux-s390x-gnu": "4.21.2", + "@rollup/rollup-linux-x64-gnu": "4.21.2", + "@rollup/rollup-linux-x64-musl": "4.21.2", + "@rollup/rollup-win32-arm64-msvc": "4.21.2", + "@rollup/rollup-win32-ia32-msvc": "4.21.2", + "@rollup/rollup-win32-x64-msvc": "4.21.2", "fsevents": "~2.3.2" } }, @@ -10180,21 +9222,6 @@ } } }, - "node_modules/rollup-plugin-visualizer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, "node_modules/rollup-plugin-visualizer/node_modules/cliui": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", @@ -10209,33 +9236,6 @@ "node": ">=12" } }, - "node_modules/rollup-plugin-visualizer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/rollup-plugin-visualizer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/rollup-plugin-visualizer/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, "node_modules/rollup-plugin-visualizer/node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", @@ -10623,19 +9623,28 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz", - "integrity": "sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", + "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", "dev": true, "dependencies": { "agent-base": "^7.1.1", "debug": "^4.3.4", - "socks": "^2.7.1" + "socks": "^2.8.3" }, "engines": { "node": ">= 14" } }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, "node_modules/source-map-js": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", @@ -10675,9 +9684,9 @@ } }, "node_modules/spacetrim": { - "version": "0.11.25", - "resolved": "https://registry.npmjs.org/spacetrim/-/spacetrim-0.11.25.tgz", - "integrity": "sha512-SWxXDROciuJs9YEYXUBjot5k/cqNGPPbT3QmkInFne4AGc1y+76It+jqU8rfsXKt57RRiunzZn1m9+KfuuNklw==", + "version": "0.11.39", + "resolved": "https://registry.npmjs.org/spacetrim/-/spacetrim-0.11.39.tgz", + "integrity": "sha512-S/baW29azJ7py5ausQRE2S6uEDQnlxgMHOEEq4V770ooBDD1/9kZnxRcco/tjZYuDuqYXblCk/r3N13ZmvHZ2g==", "dev": true, "funding": [ { @@ -10717,9 +9726,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.18", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", - "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==", + "version": "3.0.20", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz", + "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==", "dev": true }, "node_modules/split2": { @@ -10743,6 +9752,15 @@ "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", "dev": true }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/std-env": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", @@ -10750,9 +9768,9 @@ "dev": true }, "node_modules/streamx": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.18.0.tgz", - "integrity": "sha512-LLUC1TWdjVdn1weXGcSxyTR3T4+acB6tVGXT95y0nGbca4t4o/ng1wKAGTljm9VicuCVLvRlqFYXYy5GwgM7sQ==", + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.0.tgz", + "integrity": "sha512-ZGd1LhDeGFucr1CUCTBOS58ZhEendd0ttpGT3usTvosS4ntIwKN9LJFp+OeCSprsCPL14BXVRZlHGRY1V9PVzQ==", "dev": true, "dependencies": { "fast-fifo": "^1.3.2", @@ -10902,16 +9920,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "dev": true + }, "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/supports-preserve-symlinks-flag": { @@ -10927,14 +9951,17 @@ } }, "node_modules/tar-fs": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", - "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.6.tgz", + "integrity": "sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==", "dev": true, "dependencies": { - "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", "tar-stream": "^3.1.5" + }, + "optionalDependencies": { + "bare-fs": "^2.1.1", + "bare-path": "^2.1.0" } }, "node_modules/tar-stream": { @@ -10949,9 +9976,9 @@ } }, "node_modules/terser": { - "version": "5.31.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.1.tgz", - "integrity": "sha512-37upzU1+viGvuFtBo9NPufCb9dwM0+l9hMxYyWfBA+fbwrPqNJAhbZ6W47bBFnZHKHTUBnMvi87434qq+qnxOg==", + "version": "5.31.6", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.6.tgz", + "integrity": "sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -10966,18 +9993,6 @@ "node": ">=10" } }, - "node_modules/terser/node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/terser/node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", @@ -10985,9 +10000,9 @@ "dev": true }, "node_modules/text-decoder": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.1.0.tgz", - "integrity": "sha512-TmLJNj6UgX8xcUZo4UDStGQtDiTzF7BzWlzn9g7UWrjkpHr5uJTK1ld16wZ3LXb2vb6jH8qU89dW5whuMdXYdw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.1.1.tgz", + "integrity": "sha512-8zll7REEv4GDD3x4/0pW+ppIxSNs7H1J10IKFZsuOMscumCdM2a+toDGLPA3T+1+fLBql4zbt5z83GEQGGV5VA==", "dev": true, "dependencies": { "b4a": "^1.6.4" @@ -11011,15 +10026,15 @@ "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==" }, "node_modules/tinybench": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz", - "integrity": "sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", + "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==", "dev": true }, "node_modules/tinypool": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.0.tgz", - "integrity": "sha512-KIKExllK7jp3uvrNtvRBYBWBOAXSX8ZvoaD8T+7KB/QHIuoJW3Pmr60zucywjAlMb5TeXUkcs/MWeWLu0qvuAQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.1.tgz", + "integrity": "sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==", "dev": true, "engines": { "node": "^18.0.0 || >=20.0.0" @@ -11100,24 +10115,6 @@ "node": ">=6" } }, - "node_modules/tough-cookie/node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie/node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", @@ -11174,6 +10171,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/typescript": { + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", + "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, "node_modules/unbzip2-stream": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", @@ -11184,6 +10194,30 @@ "through": "^2.3.8" } }, + "node_modules/unbzip2-stream/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", @@ -11193,10 +10227,19 @@ "node": ">=0.10.0" } }, + "node_modules/undici": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.19.8.tgz", + "integrity": "sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==", + "dev": true, + "engines": { + "node": ">=18.17" + } + }, "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", "dev": true }, "node_modules/unified": { @@ -11210,35 +10253,12 @@ "extend": "^3.0.0", "is-buffer": "^2.0.0", "is-plain-obj": "^4.0.0", - "trough": "^2.0.0", - "vfile": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/unified/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" + "trough": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, "node_modules/unist-builder": { @@ -11333,59 +10353,46 @@ } }, "node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", "dev": true, "engines": { - "node": ">= 10.0.0" + "node": ">= 4.0.0" } }, "node_modules/unplugin": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.10.1.tgz", - "integrity": "sha512-d6Mhq8RJeGA8UfKCu54Um4lFA0eSaRa3XxdAJg8tIdxbu1ubW0hBCZUL7yI2uGyYCRndvbK8FLHzqy2XKfeMsg==", + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.12.3.tgz", + "integrity": "sha512-my8DH0/T/Kx33KO+6QXAqdeMYgyy0GktlOpdQjpagfHKw5DrD0ctPr7SHUyOT3g4ZVpzCQGt/qcpuoKJ/pniHA==", "dev": true, "dependencies": { - "acorn": "^8.11.3", - "chokidar": "^3.6.0", + "acorn": "^8.12.1", "webpack-sources": "^3.2.3", - "webpack-virtual-modules": "^0.6.1" + "webpack-virtual-modules": "^0.6.2" }, "engines": { "node": ">=14.0.0" } }, "node_modules/unplugin-swc": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/unplugin-swc/-/unplugin-swc-1.4.5.tgz", - "integrity": "sha512-ltkJ70kjL53onJrypaMmKDiOvhghNUCbCxjxT6Ir0eAMIBsOfRhPt6vQtxB8R/6wYk/TfIJ2gCgdx2uKNPJRHA==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/unplugin-swc/-/unplugin-swc-1.5.1.tgz", + "integrity": "sha512-/ZLrPNjChhGx3Z95pxJ4tQgfI6rWqukgYHKflrNB4zAV1izOQuDhkTn55JWeivpBxDCoK7M/TStb2aS/14PS/g==", "dev": true, "dependencies": { "@rollup/pluginutils": "^5.1.0", "load-tsconfig": "^0.2.5", - "unplugin": "^1.10.1" + "unplugin": "^1.11.0" }, "peerDependencies": { "@swc/core": "^1.2.108" } }, - "node_modules/unplugin/node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/update-browserslist-db": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", - "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", "dev": true, "funding": [ { @@ -11421,15 +10428,6 @@ "punycode": "^2.1.0" } }, - "node_modules/uri-js/node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/url-parse": { "version": "1.5.10", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", @@ -11440,6 +10438,12 @@ "requires-port": "^1.0.0" } }, + "node_modules/urlpattern-polyfill": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz", + "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==", + "dev": true + }, "node_modules/userhome": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/userhome/-/userhome-1.0.0.tgz", @@ -11637,38 +10641,15 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/vfile/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "engines": { - "node": ">=4" - } - }, "node_modules/vite": { - "version": "5.2.13", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.13.tgz", - "integrity": "sha512-SSq1noJfY9pR3I1TUENL3rQYDQCFqgD+lM6fTRAM8Nv6Lsg5hDLaXkjETVeBt+7vZBCMoibD+6IWnT2mJ+Zb/A==", + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.3.tgz", + "integrity": "sha512-IH+nl64eq9lJjFqU+/yrRnrHPVTlgy42/+IzbOdaFDVlyLgI/wDlf+FCobXLX1cT0X5+7LMyH1mIy2xJdLfo8Q==", "dev": true, "dependencies": { - "esbuild": "^0.20.1", - "postcss": "^8.4.38", - "rollup": "^4.13.0" + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" }, "bin": { "vite": "bin/vite.js" @@ -11687,6 +10668,7 @@ "less": "*", "lightningcss": "^1.21.0", "sass": "*", + "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.4.0" @@ -11704,6 +10686,9 @@ "sass": { "optional": true }, + "sass-embedded": { + "optional": true + }, "stylus": { "optional": true }, @@ -11716,9 +10701,9 @@ } }, "node_modules/vite-node": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.0.4.tgz", - "integrity": "sha512-ZpJVkxcakYtig5iakNeL7N3trufe3M6vGuzYAr4GsbCTwobDeyPJpE4cjDhhPluv8OvQCFzu2LWp6GkoKRITXA==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.0.5.tgz", + "integrity": "sha512-LdsW4pxj0Ot69FAoXZ1yTnA9bjGohr2yNBU7QKRxpz8ITSkhuDl6h3zS/tvgz4qrNjeRnvrWeXQ8ZF7Um4W00Q==", "dev": true, "dependencies": { "cac": "^6.7.14", @@ -11750,18 +10735,18 @@ } }, "node_modules/vitest": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.0.4.tgz", - "integrity": "sha512-luNLDpfsnxw5QSW4bISPe6tkxVvv5wn2BBs/PuDRkhXZ319doZyLOBr1sjfB5yCEpTiU7xCAdViM8TNVGPwoog==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.0.5.tgz", + "integrity": "sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.3.0", - "@vitest/expect": "2.0.4", - "@vitest/pretty-format": "^2.0.4", - "@vitest/runner": "2.0.4", - "@vitest/snapshot": "2.0.4", - "@vitest/spy": "2.0.4", - "@vitest/utils": "2.0.4", + "@vitest/expect": "2.0.5", + "@vitest/pretty-format": "^2.0.5", + "@vitest/runner": "2.0.5", + "@vitest/snapshot": "2.0.5", + "@vitest/spy": "2.0.5", + "@vitest/utils": "2.0.5", "chai": "^5.1.1", "debug": "^4.3.5", "execa": "^8.0.1", @@ -11772,7 +10757,7 @@ "tinypool": "^1.0.0", "tinyrainbow": "^1.2.0", "vite": "^5.0.0", - "vite-node": "2.0.4", + "vite-node": "2.0.5", "why-is-node-running": "^2.3.0" }, "bin": { @@ -11787,8 +10772,8 @@ "peerDependencies": { "@edge-runtime/vm": "*", "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "2.0.4", - "@vitest/ui": "2.0.4", + "@vitest/browser": "2.0.5", + "@vitest/ui": "2.0.5", "happy-dom": "*", "jsdom": "*" }, @@ -11841,55 +10826,6 @@ "node": ">=10" } }, - "node_modules/wait-port/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wait-port/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/wait-port/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wait-port/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/wait-port/node_modules/commander": { "version": "9.5.0", "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", @@ -11899,27 +10835,6 @@ "node": "^12.20.0 || >=14" } }, - "node_modules/wait-port/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/wait-port/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/web-namespaces": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", @@ -11940,71 +10855,89 @@ } }, "node_modules/webdriver": { - "version": "8.38.2", - "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-8.38.2.tgz", - "integrity": "sha512-NGfjW0BDYwFgOIzeojOcWGn3tYloQdvHr+Y2xKKYVqa9Rs0x1mzlTjU1kWtC4DaV8DltskwaPa7o+s8hTNpuyA==", + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/webdriver/-/webdriver-9.0.7.tgz", + "integrity": "sha512-0PN4omqCGlgi3RG0LyrQXr0RUmlDCenNtpN+dfzikfYoV+CHiCw2GMnZp2XCuYUnU01MaCKgRQxLuGobyZov+A==", "dev": true, "dependencies": { "@types/node": "^20.1.0", "@types/ws": "^8.5.3", - "@wdio/config": "8.38.2", - "@wdio/logger": "8.38.0", - "@wdio/protocols": "8.38.0", - "@wdio/types": "8.38.2", - "@wdio/utils": "8.38.2", - "deepmerge-ts": "^5.1.0", - "got": "^12.6.1", - "ky": "^0.33.0", + "@wdio/config": "9.0.6", + "@wdio/logger": "9.0.4", + "@wdio/protocols": "9.0.4", + "@wdio/types": "9.0.4", + "@wdio/utils": "9.0.6", + "deepmerge-ts": "^7.0.3", "ws": "^8.8.0" }, "engines": { - "node": "^16.13 || >=18" + "node": ">=18" } }, - "node_modules/webdriverio": { - "version": "8.38.2", - "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-8.38.2.tgz", - "integrity": "sha512-r09y5UfivyYh5JOzT2SpJJ1zDmQl/R4OTH12opUqkjvp21BibCQm/uu1mrxGy4lzSHljrvqSVrrcGI+6UA1O8w==", + "node_modules/webdriver/node_modules/@types/node": { + "version": "20.16.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.3.tgz", + "integrity": "sha512-/wdGiWRkMOm53gAsSyFMXFZHbVg7C6CbkrzHNpaHoYfsUWPg7m6ZRKtvQjgvQ9i8WT540a3ydRlRQbxjY30XxQ==", "dev": true, "dependencies": { - "@types/node": "^20.1.0", - "@wdio/config": "8.38.2", - "@wdio/logger": "8.38.0", - "@wdio/protocols": "8.38.0", - "@wdio/repl": "8.24.12", - "@wdio/types": "8.38.2", - "@wdio/utils": "8.38.2", - "archiver": "^7.0.0", - "aria-query": "^5.0.0", + "undici-types": "~6.19.2" + } + }, + "node_modules/webdriverio": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-9.0.7.tgz", + "integrity": "sha512-/6CvJkKpUWYbX/59PNJCHXGLPwulQ/bXZwlIUrsF6MWKdf8Eb6yTaXkMJBaBy5x496b50PQcXkbe+qpfsnqXsg==", + "dev": true, + "dependencies": { + "@types/node": "^20.11.30", + "@types/sinonjs__fake-timers": "^8.1.5", + "@wdio/config": "9.0.6", + "@wdio/logger": "9.0.4", + "@wdio/protocols": "9.0.4", + "@wdio/repl": "9.0.4", + "@wdio/types": "9.0.4", + "@wdio/utils": "9.0.6", + "archiver": "^7.0.1", + "aria-query": "^5.3.0", + "cheerio": "^1.0.0-rc.12", "css-shorthand-properties": "^1.1.1", "css-value": "^0.0.1", - "devtools-protocol": "^0.0.1302984", - "grapheme-splitter": "^1.0.2", + "grapheme-splitter": "^1.0.4", + "htmlfy": "^0.2.1", "import-meta-resolve": "^4.0.0", "is-plain-obj": "^4.1.0", "jszip": "^3.10.1", "lodash.clonedeep": "^4.5.0", "lodash.zip": "^4.2.0", - "minimatch": "^9.0.0", - "puppeteer-core": "^20.9.0", - "query-selector-shadow-dom": "^1.0.0", - "resq": "^1.9.1", + "minimatch": "^9.0.3", + "query-selector-shadow-dom": "^1.0.1", + "resq": "^1.11.0", "rgb2hex": "0.2.5", - "serialize-error": "^11.0.1", - "webdriver": "8.38.2" + "serialize-error": "^11.0.3", + "urlpattern-polyfill": "^10.0.0", + "webdriver": "9.0.7" }, "engines": { - "node": "^16.13 || >=18" + "node": ">=18" }, "peerDependencies": { - "devtools": "^8.14.0" + "puppeteer-core": "^22.3.0" }, "peerDependenciesMeta": { - "devtools": { + "puppeteer-core": { "optional": true } } }, + "node_modules/webdriverio/node_modules/@types/node": { + "version": "20.16.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.3.tgz", + "integrity": "sha512-/wdGiWRkMOm53gAsSyFMXFZHbVg7C6CbkrzHNpaHoYfsUWPg7m6ZRKtvQjgvQ9i8WT540a3ydRlRQbxjY30XxQ==", + "dev": true, + "dependencies": { + "undici-types": "~6.19.2" + } + }, "node_modules/webdriverio/node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -12015,9 +10948,9 @@ } }, "node_modules/webdriverio/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -12050,6 +10983,39 @@ "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==", "dev": true }, + "node_modules/whatwg-encoding": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", + "dev": true, + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/whatwg-encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/whatwg-mimetype": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", + "dev": true, + "engines": { + "node": ">=18" + } + }, "node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", @@ -12150,39 +11116,6 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "node_modules/wrap-ansi/node_modules/ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", @@ -12208,15 +11141,15 @@ } }, "node_modules/wrap-ansi/node_modules/emoji-regex": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", - "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz", + "integrity": "sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==", "dev": true }, "node_modules/wrap-ansi/node_modules/string-width": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", - "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dev": true, "dependencies": { "emoji-regex": "^10.3.0", @@ -12252,9 +11185,9 @@ "dev": true }, "node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", "dev": true, "engines": { "node": ">=10.0.0" @@ -12315,15 +11248,28 @@ "node": ">=8" } }, - "node_modules/yargs/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, "engines": { "node": ">=6" } }, + "node_modules/yargs-parser/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/yargs/node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", @@ -12358,38 +11304,31 @@ "node": ">=8" } }, - "node_modules/yargs/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/yargs/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "p-try": "^2.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/yargs/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yargs/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "node_modules/yargs/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, "node_modules/yauzl": { @@ -12412,12 +11351,12 @@ } }, "node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, "engines": { - "node": ">=12.20" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -12528,4 +11467,4 @@ } } } -} \ No newline at end of file +} diff --git a/package.json b/package.json index 7d14f8de35..d268d6ecf6 100644 --- a/package.json +++ b/package.json @@ -5,8 +5,7 @@ "build": "rollup -c", "dev": "vite", "docs": "documentation build ./src/**/*.js ./src/**/**/*.js -o ./docs/data.json && node ./utils/convert.js", - "test": "vitest run --browser.headless true", - "test:dev": "vitest", + "test": "vitest", "lint": "eslint .", "lint:fix": "eslint --fix ." }, @@ -17,7 +16,7 @@ "tasks/**/*.js": "eslint", "src/**/*.js": [ "eslint", - "node --require @babel/register ./utils/sample-linter.js" + "node ./utils/sample-linter.mjs" ] }, "version": "1.9.4", @@ -34,6 +33,7 @@ "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-json": "^6.1.0", "@rollup/plugin-node-resolve": "^15.2.3", + "@rollup/plugin-replace": "^5.0.7", "@rollup/plugin-terser": "^0.4.4", "@vitest/browser": "^2.0.4", "all-contributors-cli": "^6.19.0", @@ -53,7 +53,7 @@ "vite": "^5.0.2", "vite-plugin-string": "^1.2.2", "vitest": "^2.0.4", - "webdriverio": "^8.38.2", + "webdriverio": "^9.0.7", "zod": "^3.23.8" }, "license": "LGPL-2.1", @@ -81,4 +81,4 @@ "pre-commit": "lint-staged" } } -} \ No newline at end of file +} diff --git a/preview/index.html b/preview/index.html index 2a18318054..847423dc4d 100644 --- a/preview/index.html +++ b/preview/index.html @@ -16,16 +16,22 @@ ' - ].join('\n') - ); - log = []; - iframe.elt.contentWindow.logger = logger; - iframe.elt.contentWindow.afterSetup = resolve; - }).then(function() { - //let log = iframe.elt.contentWindow.log; - assert.strictEqual(log.length, 1); - assert.match( - log[0], - /It seems that you may have accidentally written DRAW instead of draw/ - ); - }); - } - ); - }); -}); - -// seperating in another suite because these don't need to initialize myp5 -// for each test. Instead they initialize p5 in the iframe. These tests are -// also slower than the above ones. -suite('Global Error Handling', function() { - let log; - const WAIT_AND_RESOLVE = [ - '' - ].join('\n'); - const logger = function(err) { - log.push(err); - }; - beforeAll(function() { - log = []; - p5._fesLogger = logger; - }); - - afterAll(function() { - p5._fesLogger = null; - }); - - const prepSyntaxTest = (arr, resolve) => { - const iframe = createP5Iframe( - [P5_SCRIPT_TAG, WAIT_AND_RESOLVE, ''].join( - '\n' - ) - ); - log = []; - iframe.elt.contentWindow.logger = logger; - iframe.elt.contentWindow.afterSetup = resolve; - return iframe; - }; - - testUnMinified('identifies errors happenning internally', function() { - return new Promise(function(resolve) { - // quite an unusual way to test, but the error listener doesn't work - // under mocha. Also the stacktrace gets filled with mocha internal - // function calls. Using this method solves both of these problems. - // This method also allows us to test for SyntaxError without messing - // with flow of the other tests - prepSyntaxTest( - [ - 'function setup() {', - 'let cnv = createCanvas(400, 400);', - 'cnv.mouseClicked();', // Error in p5 library as no callback passed - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /inside the p5js library/); - assert.match(log[0], /mouseClicked/); - }); - }); - - testUnMinified( - 'identifies errors happenning internally in ES6 classes', - function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'let cnv = createCanvas(10, 10, WEBGL);', - 'let fbo = createFramebuffer();', - 'fbo.draw();', // Error in p5 library as no callback passed - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /inside the p5js library/); - assert.match(log[0], /draw/); - }); - } - ); - - testUnMinified('identifies errors in preload', function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function preload() {', - 'circle(5, 5, 2);', // error - '}', - 'function setup() {', - 'createCanvas(10, 10);', - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /"circle" being called from preload/); - }); - }); - - testUnMinified("identifies TypeError 'notDefined'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'let x = asdfg + 5;', // ReferenceError: asdfg is not defined - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /asdfg/); - assert.match(log[0], /not defined in the current scope/); - }); - }); - - testUnMinified( - "identifies SyntaxError 'Invalid or unexpected Token'", - function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'let x = “not a string”', // SyntaxError: Invalid or unexpected token - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Syntax Error/); - assert.match(log[0], /JavaScript doesn't recognize/); - }); - } - ); - - testUnMinified("identifies SyntaxError 'unexpectedToken'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'for (let i = 0; i < 5,; ++i) {}', // SyntaxError: Unexpected token - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Syntax Error/); - assert.match(log[0], /typo/); - }); - }); - - testUnMinified("identifies TypeError 'notFunc'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'let asdfg = 5', - 'asdfg()', // TypeError: asdfg is not a function - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /"asdfg" could not be called as a function/); - }); - }); - - testUnMinified("identifies TypeError 'notFuncObj'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'let asdfg = {}', - 'asdfg.abcd()', // TypeError: abcd is not a function - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /"abcd" could not be called as a function/); - assert.match(log[0], /"asdfg" has "abcd" in it/); - }); - }); - - testUnMinified("identifies ReferenceError 'cannotAccess'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'console.log(x)', // ReferenceError: Cannot access 'x' before initialization - 'let x = 100', - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Error/); - assert.match(log[0], /used before declaration/); - }); - }); - - testUnMinified("identifies SyntaxError 'badReturnOrYield'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - ['function setup() {', 'let x = 100;', '}', 'return;'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Syntax Error/); - assert.match(log[0], /lies outside of a function/); - }); - }); - - testUnMinified("identifies SyntaxError 'missingInitializer'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'const x;', //SyntaxError: Missing initializer in const declaration - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Syntax Error/); - assert.match(log[0], /but not initialized/); - }); - }); - - testUnMinified("identifies SyntaxError 'redeclaredVariable'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'let x=100;', - 'let x=99;', //SyntaxError: Identifier 'x' has already been declared - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Syntax Error/); - assert.match(log[0], /JavaScript doesn't allow/); - }); - }); - - testUnMinified("identifies TypeError 'constAssign'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'const x = 100;', - 'x = 10;', //TypeError: Assignment to constant variable - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Error/); - assert.match(log[0], /const variable is being/); - }); - }); - - testUnMinified("identifies TypeError 'readFromNull'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'const x = null;', - 'console.log(x.prop);', //TypeError: Cannot read property 'prop' of null - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Error/); - assert.match(log[0], /property of null/); - }); - }); - - testUnMinified("identifies TypeError 'readFromUndefined'", function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function setup() {', - 'const x = undefined;', - 'console.log(x.prop);', //TypeError: Cannot read property 'prop' of undefined - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /Error/); - assert.match(log[0], /property of undefined/); - }); - }); - - testUnMinified('builds friendlyStack', function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function myfun(){', - 'asdfg()', // ReferenceError - '}', - 'function setup() {', - 'myfun()', - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 2); - let temp = log[1].split('\n'); - temp = temp.filter(e => e.trim().length > 0); - assert.strictEqual(temp.length, 4); - assert.match(log[0], /"asdfg" is not defined/); - assert.match(temp[1], /Error at/); - assert.match(temp[1], /myfun/); - assert.match(temp[3], /Called from/); - assert.match(temp[3], /setup/); - }); - }); - - testUnMinified('indentifies internal error - instance mode', function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function sketch(p) {', - ' p.setup = function() {', - ' p.stroke();', // error - ' }', - '}', - 'new p5(sketch);' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /stroke/); - assert.match(log[0], /inside the p5js library/); - }); - }); - - testUnMinified('indentifies error in preload - instance mode', function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function sketch(p) {', - ' p.preload = function() {', - ' p.circle(2, 2, 2);', // error - ' }', - ' p.setup = function() {', - ' p.createCanvas(5, 5);', - ' }', - '}', - 'new p5(sketch);' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /"circle" being called from preload/); - }); - }); - - testUnMinified('indentifies error in user code - instance mode', function() { - return new Promise(function(resolve) { - prepSyntaxTest( - [ - 'function sketch(p) {', - ' p.setup = function() {', - ' myfun();', // ReferenceError: myfun is not defined - ' }', - '}', - 'new p5(sketch);' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /myfun/); - assert.match(log[0], /is not defined in the current scope/); - }); - }); -}); - -suite('Tests for p5.js sketch_reader', function() { - const WAIT_AND_RESOLVE = [ - '' - ].join('\n'); - - let log; - const logger = function(err) { - log.push(err); - }; - - const prepSketchReaderTest = (arr, resolve) => { - const iframe = createP5Iframe( - [P5_SCRIPT_TAG, WAIT_AND_RESOLVE, ''].join( - '\n' - ) - ); - log = []; - iframe.elt.contentWindow.logger = logger; - iframe.elt.contentWindow.afterSetup = resolve; - return iframe; - }; - - testUnMinified( - 'detects reassignment of p5.js constant inside setup', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - ['function setup() {', 'let PI = 100', '}'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /you have used a p5.js reserved variable/); - }); - } - ); - - testUnMinified( - 'detects reassignment of p5.js function inside setup', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - ['function setup() {', 'let text = 100', '}'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /you have used a p5.js reserved function/); - }); - } - ); - - testUnMinified( - 'detects reassignment of p5.js constant outside setup', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest(['let PI = 100', 'function setup() {}'], resolve); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /you have used a p5.js reserved variable/); - }); - } - ); - - testUnMinified( - 'detects reassignment of p5.js function (text) outside setup', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - ['let text = 100', 'function setup() {}'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /you have used a p5.js reserved function/); - }); - } - ); - - testUnMinified( - 'detects reassignment of p5.js function (textSize from Typography) outside setup', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - ['let textSize = 100', 'function setup() {}'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /you have used a p5.js reserved function/); - }); - } - ); - - testUnMinified( - 'does not detect reassignment of p5.js function (size from TypedDict or Dom) outside setup', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - ['let size = 100', 'function setup() {}'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 0); - }); - } - ); - - testUnMinified( - 'detects reassignment of p5.js function (point from shape) outside setup', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - ['let point = 100', 'function setup() {}'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /you have used a p5.js reserved function/); - }); - } - ); - - testUnMinified( - 'detects reassignment of p5.js functions in declaration lists', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - ['function setup() {', 'let x = 2, text = 2;', '}'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /you have used a p5.js reserved function/); - }); - } - ); - - testUnMinified( - 'detects reassignment of p5.js functions in declaration lists after function calls', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - [ - 'function setup() {', - 'let x = constrain(frameCount, 0, 1000), text = 2;', - '}' - ], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 1); - assert.match(log[0], /you have used a p5.js reserved function/); - }); - } - ); - - testUnMinified( - 'ignores p5.js functions used in the right hand side of assignment expressions', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - // This will still log an error, as `text` isn't being used correctly - // here, but the important part is that it doesn't say that we're - // trying to reassign a reserved function. - ['function draw() {', 'let x = constrain(100, 0, text);', '}'], - resolve - ); - }).then(function() { - assert.ok( - !log.some(line => - line.match(/you have used a p5.js reserved function/) - ) - ); - }); - } - ); - - testUnMinified( - 'ignores p5.js function names used as function arguments', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - ['function draw() {', 'let myLog = (text) => print(text);', '}'], - resolve - ); - }).then(function() { - assert.strictEqual(log.length, 0); - }); - } - ); - - testUnMinified( - 'fails gracefully on inputs too complicated to parse', - function() { - return new Promise(function(resolve) { - prepSketchReaderTest( - // This technically is redefining text, but it should stop parsing - // after the double nested brackets rather than try and possibly - // give a false positive error. This particular assignment will get - // caught at runtime regardless by - // `_createFriendlyGlobalFunctionBinder`. - [ - 'function draw() {', - 'let x = constrain(millis(), 0, text = 100)', - '}' - ], - resolve - ); - }).then(function() { - console.log(log); - assert.strictEqual(log.length, 0); - }); - } - ); -}); diff --git a/test/unit/core/main.js b/test/unit/core/main.js index 0c0152389e..0cbcc3cb66 100644 --- a/test/unit/core/main.js +++ b/test/unit/core/main.js @@ -3,128 +3,7 @@ import { createP5Iframe, P5_SCRIPT_TAG, P5_SCRIPT_URL } from '../../js/p5_helper import { vi } from 'vitest'; suite('Core', function () { - suite('p5.prototype.registerMethod', function () { - afterAll(function() { - p5.prototype._registeredMethods.init = []; - p5.prototype._registeredMethods.beforePreload = []; - p5.prototype._registeredMethods.preload = []; - p5.prototype._registeredMethods.afterPreload = []; - p5.prototype._registeredMethods.beforeSetup = []; - p5.prototype._registeredMethods.setup = []; - p5.prototype._registeredMethods.afterSetup = []; - p5.prototype._registeredMethods.pre = []; - p5.prototype._registeredMethods.draw = []; - p5.prototype._registeredMethods.post = []; - }); - test('should register and call "init" methods', function () { - var myp5, myInitCalled; - p5.prototype.registerMethod('init', function myInit() { - assert( - !myInitCalled, - 'myInit should only be called once during test suite' - ); - myInitCalled = true; - - this.myInitCalled = true; - }); - - myp5 = new p5(function (sketch) { - assert(sketch.hasOwnProperty('myInitCalled')); - assert(sketch.myInitCalled); - - sketch.sketchFunctionCalled = true; - }); - - assert(myp5.sketchFunctionCalled); - }); - test('should register and call before and after "preload" hooks', function () { - return new Promise(resolve => { - let beforePreloadCalled = false; - let preloadCalled = false; - let afterPreloadCalled = false; - - p5.prototype.registerMethod('beforePreload', () => { - beforePreloadCalled = true; - }); - - p5.prototype.registerMethod('preload', () => { - assert.equal(beforePreloadCalled, true); - preloadCalled = true; - }); - - p5.prototype.registerMethod('afterPreload', () => { - if (beforePreloadCalled && preloadCalled) afterPreloadCalled = true; - }); - - myp5 = new p5(function (sketch) { - sketch.preload = () => {}; - sketch.setup = () => { - assert.equal(afterPreloadCalled, true); - resolve(); - }; - }); - }); - }); - test('should register and call before and after "setup" hooks', function () { - return new Promise(resolve => { - let beforeSetupCalled = false; - let setupCalled = false; - let afterSetupCalled = false; - - p5.prototype.registerMethod('beforeSetup', () => { - beforeSetupCalled = true; - }); - - p5.prototype.registerMethod('setup', () => { - assert.equal(beforeSetupCalled, true); - setupCalled = true; - }); - - p5.prototype.registerMethod('afterSetup', () => { - if (beforeSetupCalled && setupCalled) afterSetupCalled = true; - }); - - myp5 = new p5(function (sketch) { - sketch.setup = () => {}; - sketch.draw = () => { - assert.equal(afterSetupCalled, true); - resolve(); - }; - }); - }); - }); - test('should register and call pre and post "draw" hooks', function () { - return new Promise(resolve => { - let preDrawCalled = false; - let drawCalled = false; - let postDrawCalled = false; - - p5.prototype.registerMethod('pre', () => { - preDrawCalled = true; - }); - - p5.prototype.registerMethod('draw', () => { - assert.equal(preDrawCalled, true); - drawCalled = true; - }); - - p5.prototype.registerMethod('post', () => { - if (preDrawCalled && drawCalled) postDrawCalled = true; - }); - - myp5 = new p5(function (sketch) { - sketch.draw = () => { - if (sketch.frameCount === 2) { - assert.equal(postDrawCalled, true); - resolve(); - } - }; - }); - }); - }); - }); - - suite('new p5() / global mode', function () { + suite.todo('new p5() / global mode', function () { var iframe; afterAll(function () { @@ -233,7 +112,7 @@ suite('Core', function () { } }); - test('should warn when globals are overwritten', function () { + test.todo('should warn when globals are overwritten', function () { bind('text', noop); globalObject.text = 'boop'; @@ -292,50 +171,11 @@ suite('Core', function () { assert.isUndefined(logMsg); }); - // This is a regression test for - // https://github.com/processing/p5.js/issues/1350. - test('should not warn about overwriting preload methods', function () { - globalObject.loadJSON = function () { - throw new Error(); - }; - bind('loadJSON', noop); - assert.equal(globalObject.loadJSON, noop); - assert.isUndefined(logMsg); - }); - test('should not warn about overwriting non-functions', function () { bind('mouseX', 5); globalObject.mouseX = 50; assert.equal(globalObject.mouseX, 50); assert.isUndefined(logMsg); }); - - test('instance preload is independent of window', function () { - // callback for p5 instance mode. - // It does not define a preload. - // This tests that we don't call the global preload accidentally. - function cb(s) { - s.setup = function () { - window.afterSetup(); - }; - } - return new Promise(function (resolve) { - iframe = createP5Iframe( - [ - P5_SCRIPT_TAG, - '' - ].join('\n') - ); - iframe.elt.contentWindow.afterSetup = resolve; - }).then(function () { - var win = iframe.elt.contentWindow; - assert.strictEqual(win.globalPreloads, 1); - }); - }); }); }); diff --git a/test/unit/core/preload.js b/test/unit/core/preload.js deleted file mode 100644 index ef8859d0c9..0000000000 --- a/test/unit/core/preload.js +++ /dev/null @@ -1,288 +0,0 @@ -import p5 from '../../../src/app.js'; -import { promisedSketch } from '../../js/p5_helpers'; - -suite('preloads', () => { - let preloadCache = null; - beforeAll(() => { - preloadCache = p5.prototype._promisePreloads; - p5.prototype._promisePreloads = [...preloadCache]; - }); - - afterAll(() => { - p5.prototype._promisePreloads = preloadCache; - }); - - suite('From external sources', () => { - test('Extension preload causes setup to wait', () => { - let resolved = false; - const target = { - async testPreloadFunction() { - await new Promise(res => setTimeout(res, 10)); - resolved = true; - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction' - }); - - return promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - target.testPreloadFunction(); - }; - - sketch.setup = () => { - if (resolved) { - resolve(); - } else { - reject(new Error('Sketch enetered setup too early.')); - } - }; - }); - }); - - test('Extension preload error causes setup to not execute', () => { - const target = { - async testPreloadFunction() { - throw new Error('Testing Error'); - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction' - }); - - return promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - target.testPreloadFunction(); - setTimeout(resolve, 10); - }; - - sketch.setup = () => { - reject('Sketch should not enter setup'); - }; - }); - }); - - suite('addCallbacks', () => { - test('Extension is passed all arguments when not using addCallbacks', () => { - const target = { - async testPreloadFunction(...args) { - assert.lengthOf(args, 3); - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction', - addCallbacks: false - }); - - return promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - target - .testPreloadFunction(() => {}, () => {}, () => {}) - .catch(reject); - }; - - sketch.setup = resolve; - }); - }); - - test('Extension gets stripped arguments when using addCallbacks', () => { - const target = { - async testPreloadFunction(...args) { - assert.lengthOf(args, 1); - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction', - addCallbacks: true - }); - - return promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - target - .testPreloadFunction(() => {}, () => {}, () => {}) - .catch(reject); - }; - - sketch.setup = resolve; - }); - }); - - test('Extension with addCallbacks supports success callback', () => { - const target = { - async testPreloadFunction(...args) { - assert.lengthOf(args, 1); - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction', - addCallbacks: true - }); - - let success = 0; - - return promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - target - .testPreloadFunction(0, () => { - success++; - }) - .catch(reject); - target - .testPreloadFunction( - () => {}, - () => { - success++; - }, - () => { - reject(new Error('Failure callback executed')); - } - ) - .catch(reject); - }; - - sketch.setup = () => { - if (success !== 2) { - reject( - new Error(`Not all success callbacks were run: ${success}/2`) - ); - } - resolve(); - }; - }); - }); - }); - - suite('legacyPreload', () => { - test('Extension legacy preload causes setup to wait', () => { - let resolved = false; - const target = { - async testPreloadFunction() { - await new Promise(res => setTimeout(res, 10)); - resolved = true; - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction', - legacyPreloadSetup: { - method: 'testPreloadLegacy' - } - }); - - return promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - target.testPreloadLegacy(); - }; - - sketch.setup = () => { - if (resolved) { - resolve(); - } else { - reject(new Error('Sketch enetered setup too early.')); - } - }; - }); - }); - - test('Extension legacy preload error causes setup to not execute', () => { - const target = { - async testPreloadFunction() { - throw new Error('Testing Error'); - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction', - legacyPreloadSetup: { - method: 'testPreloadLegacy' - } - }); - - return promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - target.testPreloadLegacy(); - setTimeout(resolve, 10); - }; - - sketch.setup = () => { - reject('Sketch should not enter setup'); - }; - }); - }); - - test('Extension legacy preload returns objects correctly', async () => { - let testItem = { - test: true, - otherTest: [] - }; - const target = { - async testPreloadFunction() { - return testItem; - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction', - legacyPreloadSetup: { - method: 'testPreloadLegacy' - } - }); - - let testResult; - - await promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - testResult = target.testPreloadLegacy(); - }; - - sketch.setup = resolve(); - }); - - assert.deepEqual(testResult, testItem); - }); - - test('Extension legacy preload returns arrays correctly', async () => { - let testItem = [true, [], {}]; - const target = { - async testPreloadFunction() { - return testItem; - } - }; - - p5.prototype._promisePreloads.push({ - target, - method: 'testPreloadFunction', - legacyPreloadSetup: { - method: 'testPreloadLegacy', - createBaseObject: () => [] - } - }); - - let testResult; - - await promisedSketch((sketch, resolve, reject) => { - sketch.preload = () => { - testResult = target.testPreloadLegacy(); - }; - - sketch.setup = resolve(); - }); - - assert.deepEqual(testResult, testItem); - }); - }); - }); -}); diff --git a/test/unit/core/rendering.js b/test/unit/core/rendering.js index 639a8c6ea2..3f517a36a7 100644 --- a/test/unit/core/rendering.js +++ b/test/unit/core/rendering.js @@ -85,7 +85,7 @@ suite('Rendering', function() { assert.equal(myp5.drawingContext.lineCap, myp5.PROJECT); }); - test('should resize framebuffers', function() { + test.todo('should resize framebuffers', function() { myp5.createCanvas(10, 10, myp5.WEBGL); const fbo = myp5.createFramebuffer(); myp5.resizeCanvas(5, 15); @@ -93,7 +93,7 @@ suite('Rendering', function() { assert.equal(fbo.height, 15); }); - test('should resize graphic framebuffers', function() { + test.todo('should resize graphic framebuffers', function() { const graphic = myp5.createGraphics(10, 10, myp5.WEBGL); const fbo = graphic.createFramebuffer(); graphic.resizeCanvas(5, 15); @@ -112,7 +112,7 @@ suite('Rendering', function() { assert.equal(myp5.height, 100); }); - test('should resize the dimensions of canvas based on max texture size', function() { + test.todo('should resize the dimensions of canvas based on max texture size', function() { glStub = vi.spyOn(p5.RendererGL.prototype, '_getParam'); const fakeMaxTextureSize = 100; glStub.mockReturnValue(fakeMaxTextureSize); @@ -134,18 +134,18 @@ suite('Rendering', function() { assert.ok(myp5.blendMode); assert.typeOf(myp5.blendMode, 'function'); }); - test('should be able to ADD', function() { + test.todo('should be able to ADD', function() { myp5.blendMode(myp5.ADD); drawX(); }); - test('should be able to MULTIPLY', function() { + test.todo('should be able to MULTIPLY', function() { myp5.blendMode(myp5.MULTIPLY); drawX(); }); }); suite('p5.prototype.setAttributes', function() { - test('_glAttributes should be null at start', function() { + test.todo('_glAttributes should be null at start', function() { assert.deepEqual(myp5._glAttributes, null); }); test('_glAttributes should modify with setAttributes', function() { @@ -170,7 +170,7 @@ suite('Rendering', function() { 'plane', 'box', 'sphere', 'cylinder', 'cone', 'ellipsoid', 'torus' ]; - suite('webgl assertions', function() { + suite.todo('webgl assertions', function() { for (var i = 0; i < webglMethods.length; i++) { var webglMethod = webglMethods[i]; test( diff --git a/test/unit/core/structure.js b/test/unit/core/structure.js index e78c5c6ff8..cf972f5395 100644 --- a/test/unit/core/structure.js +++ b/test/unit/core/structure.js @@ -233,7 +233,7 @@ suite('Structure', function() { }); }); - test('instance redraw is independent of window', function() { + test.todo('instance redraw is independent of window', function() { // callback for p5 instance mode. // It does not call noLoop so redraw will be called many times. // Redraw is not supposed to call window.draw even though no draw is defined in cb diff --git a/test/unit/core/vertex.js b/test/unit/core/vertex.js index 4b3331bcb9..eed414a2e1 100644 --- a/test/unit/core/vertex.js +++ b/test/unit/core/vertex.js @@ -24,15 +24,6 @@ suite('Vertex', function() { assert.ok(myp5.beginShape); assert.typeOf(myp5.beginShape, 'function'); }); - test('no friendly-err-msg. missing param #0', function() { - assert.doesNotThrow( - function() { - myp5.beginShape(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.quadraticVertex', function() { @@ -69,15 +60,6 @@ suite('Vertex', function() { assert.ok(myp5.endShape); assert.typeOf(myp5.endShape, 'function'); }); - test('no friendly-err-msg. missing param #0', function() { - assert.doesNotThrow( - function() { - myp5.endShape(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.vertex', function() { diff --git a/test/unit/dom/dom.js b/test/unit/dom/dom.js index 2220916dca..3dad137e98 100644 --- a/test/unit/dom/dom.js +++ b/test/unit/dom/dom.js @@ -1054,27 +1054,27 @@ suite('DOM', function() { assert.deepEqual(testElement.elt.type, 'color'); }); - test('should accept a p5.Color as param', function() { + test.todo('should accept a p5.Color as param', function() { const testColor = myp5.color('red'); testElement = myp5.createColorPicker(testColor); assert.deepEqual(testElement.elt.value, testColor.toString('#rrggbb')); }); - test('should accept a string as param', function() { + test.todo('should accept a string as param', function() { const testColorString = '#f00f00'; testElement = myp5.createColorPicker(testColorString); assert.deepEqual(testElement.elt.value, testColorString); }); - test('calling color() should return the current color as p5.color', function() { + test.todo('calling color() should return the current color as p5.color', function() { const testColorString = 'red'; const testColor = myp5.color(testColorString); testElement = myp5.createColorPicker(testColorString); assert.deepEqual(testElement.color(), testColor); }); - test('calling value() should return hex string of color', function() { + test.todo('calling value() should return hex string of color', function() { const testColor = myp5.color('aqua'); testElement = myp5.createColorPicker(testColor); assert.deepEqual(testElement.value(), testColor.toString('#rrggbb')); @@ -1436,7 +1436,7 @@ suite('DOM', function() { ); }); - suite('p5.prototype.createCapture', function() { + suite.todo('p5.prototype.createCapture', function() { // to run these tests, getUserMedia is required to be supported if (!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia)) { throw Error( diff --git a/test/unit/events/acceleration.js b/test/unit/events/acceleration.js index 1d6b5369d0..6918ba1d1a 100644 --- a/test/unit/events/acceleration.js +++ b/test/unit/events/acceleration.js @@ -107,7 +107,7 @@ suite('Acceleration Events', function() { }); }); - suite('deviceMoved', function() { + suite.todo('deviceMoved', function() { test('deviceMoved must run when device is moved more than the threshold value', function() { let count = 0; myp5.deviceMoved = function() { @@ -145,7 +145,7 @@ suite('Acceleration Events', function() { }); }); - suite('deviceTurned', function() { + suite.todo('deviceTurned', function() { test('deviceTurned must run when device is turned more than 90 degrees', function() { let count = 0; myp5.deviceTurned = function() { @@ -175,7 +175,7 @@ suite('Acceleration Events', function() { }); }); - suite('deviceShaken', function() { + suite.todo('deviceShaken', function() { test('deviceShaken must run when device acceleration is more than the threshold value', function() { let count = 0; myp5.deviceShaken = function() { diff --git a/test/unit/events/keyboard.js b/test/unit/events/keyboard.js index 5502afbaf9..1ce199c66a 100644 --- a/test/unit/events/keyboard.js +++ b/test/unit/events/keyboard.js @@ -60,17 +60,17 @@ suite('Keyboard Events', function() { assert.isString(myp5.key); }); - test('key should return the key pressed', function() { + test.todo('key should return the key pressed', function() { window.dispatchEvent(new KeyboardEvent('keydown', { key: 'A' })); assert.strictEqual(myp5.key, 'A'); }); - test('key should return the key pressed', function() { + test.todo('key should return the key pressed', function() { window.dispatchEvent(new KeyboardEvent('keydown', { key: '9' })); assert.strictEqual(myp5.key, '9'); }); - test('key should return the key pressed', function() { + test.todo('key should return the key pressed', function() { window.dispatchEvent(new KeyboardEvent('keydown', { key: 'CapsLock' })); assert.strictEqual(myp5.key, 'CapsLock'); }); @@ -89,7 +89,7 @@ suite('Keyboard Events', function() { }); suite('keyPressed', function() { - test('keyPressed must run when key is pressed', function() { + test.todo('keyPressed must run when key is pressed', function() { let count = 0; myp5.keyPressed = function() { count += 1; @@ -190,7 +190,7 @@ suite('Keyboard Events', function() { assert.strictEqual(myp5.keyIsDown(35), true); }); - test('keyIsDown should return false if key is not down', function() { + test.todo('keyIsDown should return false if key is not down', function() { assert.strictEqual(myp5.keyIsDown(35), false); }); }); diff --git a/test/unit/events/mouse.js b/test/unit/events/mouse.js index 09bcf909ab..e17e7fef77 100644 --- a/test/unit/events/mouse.js +++ b/test/unit/events/mouse.js @@ -243,7 +243,7 @@ suite('Mouse Events', function() { assert.isBoolean(myp5.mouseIsPressed); }); - test('mouseIsPressed should be false if mouse is not pressed', function() { + test.todo('mouseIsPressed should be false if mouse is not pressed', function() { assert.strictEqual(myp5.mouseIsPressed, false); }); @@ -254,7 +254,7 @@ suite('Mouse Events', function() { }); suite('mouseMoved', function() { - test('mouseMoved function must run when mouse is moved', async function() { + test.todo('mouseMoved function must run when mouse is moved', async function() { let count = 0; myp5.mouseMoved = function() { diff --git a/test/unit/image/downloading.js b/test/unit/image/downloading.js index 0727380968..612653cdf9 100644 --- a/test/unit/image/downloading.js +++ b/test/unit/image/downloading.js @@ -1,7 +1,7 @@ import p5 from '../../../src/app.js'; import { testWithDownload } from '../../js/p5_helpers'; -suite('downloading animated gifs', function() { +suite.todo('downloading animated gifs', function() { let myp5; let myGif; @@ -45,9 +45,8 @@ suite('downloading animated gifs', function() { }); }); -suite('p5.prototype.saveCanvas', function() { +suite.todo('p5.prototype.saveCanvas', function() { let myp5; - let myCanvas; let waitForBlob = async function(blc) { let sleep = function(ms) { @@ -80,96 +79,6 @@ suite('p5.prototype.saveCanvas', function() { assert.typeOf(myp5.saveCanvas, 'function'); }); - // Why use testWithDownload for 'no friendly-err' tests here? - // saveCanvas uses htmlcanvas.toBlob which uses a callback - // mechanism and the download is triggered in its callback. - // It may happen that the test get out of sync and the only way - // to know if the callback has been called is if the blob has - // been made available to us - testWithDownload( - 'no friendly-err-msg I', - async function(blc) { - assert.doesNotThrow( - function() { - myp5.saveCanvas(); - }, - Error, - 'got unwanted exception' - ); - await waitForBlob(blc); - }, - true - ); - testWithDownload( - 'no friendly-err-msg II', - async function(blc) { - assert.doesNotThrow( - function() { - myp5.saveCanvas('filename'); - }, - Error, - 'got unwanted exception' - ); - await waitForBlob(blc); - }, - true - ); - testWithDownload( - 'no friendly-err-msg III', - async function(blc) { - assert.doesNotThrow( - function() { - myp5.saveCanvas('filename', 'png'); - }, - Error, - 'got unwanted exception' - ); - await waitForBlob(blc); - }, - true - ); - testWithDownload( - 'no friendly-err-msg IV', - async function(blc) { - assert.doesNotThrow( - function() { - myp5.saveCanvas(myCanvas, 'filename'); - }, - Error, - 'got unwanted exception' - ); - await waitForBlob(blc); - }, - true - ); - testWithDownload( - 'no friendly-err-msg V', - async function(blc) { - assert.doesNotThrow( - function() { - myp5.saveCanvas(myCanvas, 'filename', 'png'); - }, - Error, - 'got unwanted exception' - ); - }, - true - ); - testWithDownload( - 'no friendly-err-msg VI', - async function(blc) { - assert.doesNotThrow( - function() { - myp5.saveCanvas(myCanvas, 'filename', 'png'); - }, - Error, - 'got unwanted exception' - ); - await waitForBlob(blc); - }, - true - ); - testWithDownload( 'should download a png file', async function(blobContainer) { @@ -230,27 +139,6 @@ suite('p5.prototype.saveFrames', function() { assert.typeOf(myp5.saveFrames, 'function'); }); - test('no friendly-err-msg I', function() { - assert.doesNotThrow( - function() { - myp5.saveFrames('out', 'png', 0.1, 25); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg II', function(done) { - assert.doesNotThrow( - function() { - myp5.saveFrames('out', 'png', 0.1, 25, () => { - done(); - }); - }, - Error, - 'got unwanted exception' - ); - }); - test('should get frames in callback (png)', function(done) { myp5.saveFrames('aaa', 'png', 0.5, 25, function cb1(arr) { assert.typeOf(arr, 'array', 'we got an array'); diff --git a/test/unit/image/filters.js b/test/unit/image/filters.js index fd2595cbbd..9859b220e7 100644 --- a/test/unit/image/filters.js +++ b/test/unit/image/filters.js @@ -1,6 +1,6 @@ import p5 from '../../../src/app.js'; -suite('Filters', function() { +suite.todo('Filters', function() { var myp5; let img; diff --git a/test/unit/image/loading.js b/test/unit/image/loading.js index 6aab449ce0..4b81d1193f 100644 --- a/test/unit/image/loading.js +++ b/test/unit/image/loading.js @@ -28,7 +28,7 @@ var testImageRender = function(file, sketch) { }); }; -suite('loading images', function() { +suite.todo('loading images', function() { var myp5; beforeAll(function() { @@ -198,99 +198,99 @@ suite('loading images', function() { */ // Test loading image in preload() with success callback - test('Test in preload() with success callback'); - test('Test in setup() after preload()'); + // test('Test in preload() with success callback'); + // test('Test in setup() after preload()'); // These tests don't work correctly (You can't use suite and test like that) // they simply get added at the root level. - var mySketch = function(this_p5) { - var myImage; - this_p5.preload = function() { - suite('Test in preload() with success callback', function() { - test('Load asynchronously and use success callback', function(done) { - myImage = this_p5.loadImage('unit/assets/cat.jpg', function() { - assert.ok(myImage); - done(); - }); - }); - }); - }; - - this_p5.setup = function() { - suite('setup() after preload() with success callback', function() { - test('should be loaded if preload() finished', function(done) { - assert.isTrue(myImage instanceof p5.Image); - assert.isTrue(myImage.width > 0 && myImage.height > 0); - done(); - }); - }); - }; - }; - new p5(mySketch, null, false); - - // Test loading image in preload() without success callback - mySketch = function(this_p5) { - var myImage; - this_p5.preload = function() { - myImage = this_p5.loadImage('unit/assets/cat.jpg'); - }; - - this_p5.setup = function() { - suite('setup() after preload() without success callback', function() { - test('should be loaded now preload() finished', function(done) { - assert.isTrue(myImage instanceof p5.Image); - assert.isTrue(myImage.width > 0 && myImage.height > 0); - done(); - }); - }); - }; - }; - new p5(mySketch, null, false); - - // Test loading image failure in preload() without failure callback - mySketch = function(this_p5) { - this_p5.preload = function() { - this_p5.loadImage('', function() { - throw new Error('Should not be called'); - }); - }; - - this_p5.setup = function() { - throw new Error('Should not be called'); - }; - }; - new p5(mySketch, null, false); - - // Test loading image failure in preload() with failure callback - mySketch = function(this_p5) { - var myImage; - this_p5.preload = function() { - suite('Test loading image failure in preload() with failure callback', function() { - test('Load fail and use failure callback', function(done) { - myImage = this_p5.loadImage('', function() { - assert.fail(); - done(); - }, function() { - assert.ok(myImage); - done(); - }); - }); - }); - }; - - this_p5.setup = function() { - suite('setup() after preload() failure with failure callback', function() { - test('should be loaded now preload() finished', function(done) { - assert.isTrue(myImage instanceof p5.Image); - assert.isTrue(myImage.width === 1 && myImage.height === 1); - done(); - }); - }); - }; - }; - new p5(mySketch, null, false); + // var mySketch = function(this_p5) { + // var myImage; + // this_p5.preload = function() { + // suite('Test in preload() with success callback', function() { + // test('Load asynchronously and use success callback', function(done) { + // myImage = this_p5.loadImage('unit/assets/cat.jpg', function() { + // assert.ok(myImage); + // done(); + // }); + // }); + // }); + // }; + + // this_p5.setup = function() { + // suite('setup() after preload() with success callback', function() { + // test('should be loaded if preload() finished', function(done) { + // assert.isTrue(myImage instanceof p5.Image); + // assert.isTrue(myImage.width > 0 && myImage.height > 0); + // done(); + // }); + // }); + // }; + // }; + // new p5(mySketch, null, false); + + // // Test loading image in preload() without success callback + // mySketch = function(this_p5) { + // var myImage; + // this_p5.preload = function() { + // myImage = this_p5.loadImage('unit/assets/cat.jpg'); + // }; + + // this_p5.setup = function() { + // suite('setup() after preload() without success callback', function() { + // test('should be loaded now preload() finished', function(done) { + // assert.isTrue(myImage instanceof p5.Image); + // assert.isTrue(myImage.width > 0 && myImage.height > 0); + // done(); + // }); + // }); + // }; + // }; + // new p5(mySketch, null, false); + + // // Test loading image failure in preload() without failure callback + // mySketch = function(this_p5) { + // this_p5.preload = function() { + // this_p5.loadImage('', function() { + // throw new Error('Should not be called'); + // }); + // }; + + // this_p5.setup = function() { + // throw new Error('Should not be called'); + // }; + // }; + // new p5(mySketch, null, false); + + // // Test loading image failure in preload() with failure callback + // mySketch = function(this_p5) { + // var myImage; + // this_p5.preload = function() { + // suite('Test loading image failure in preload() with failure callback', function() { + // test('Load fail and use failure callback', function(done) { + // myImage = this_p5.loadImage('', function() { + // assert.fail(); + // done(); + // }, function() { + // assert.ok(myImage); + // done(); + // }); + // }); + // }); + // }; + + // this_p5.setup = function() { + // suite('setup() after preload() failure with failure callback', function() { + // test('should be loaded now preload() finished', function(done) { + // assert.isTrue(myImage instanceof p5.Image); + // assert.isTrue(myImage.width === 1 && myImage.height === 1); + // done(); + // }); + // }); + // }; + // }; + // new p5(mySketch, null, false); }); -suite('loading animated gif images', function() { +suite.todo('loading animated gif images', function() { var myp5; beforeAll(function() { @@ -330,75 +330,75 @@ suite('loading animated gif images', function() { }); }); - test('should construct gifProperties correctly after preload', function() { - var mySketch = function(this_p5) { - var gifImage; - this_p5.preload = function() { - suite('Test in preload() with success callback', function() { - test('Load asynchronously and use success callback', function(done) { - gifImage = this_p5.loadImage(imagePath, function() { - assert.ok(gifImage); - done(); - }); - }); - }); - }; - - this_p5.setup = function() { - suite('setup() after preload() with success callback', function() { - test('should be loaded if preload() finished', function(done) { - assert.isTrue(gifImage instanceof p5.Image); - assert.isTrue(gifImage.width > 0 && gifImage.height > 0); - done(); - }); - test('gifProperties should be correct after preload', function done() { - assert.isTrue(gifImage instanceof p5.Image); - var nyanCatGifProperties = { - displayIndex: 0, - loopCount: 0, - loopLimit: null, - numFrames: 6, - playing: true, - timeDisplayed: 0 - }; - assert.isTrue(gifImage.gifProperties !== null); - for (var prop in nyanCatGifProperties) { - assert.deepEqual( - gifImage.gifProperties[prop], - nyanCatGifProperties[prop] - ); - } - assert.deepEqual( - gifImage.gifProperties.numFrames, - gifImage.gifProperties.frames.length - ); - for (var i = 0; i < gifImage.gifProperties.numFrames; i++) { - assert.isTrue( - gifImage.gifProperties.frames[i].image instanceof ImageData - ); - assert.isTrue(gifImage.gifProperties.frames[i].delay === 100); - } - }); - test('should be able to modify gifProperties state', function() { - assert.isTrue(gifImage.gifProperties.timeDisplayed === 0); - gifImage.pause(); - assert.isTrue(gifImage.gifProperties.playing === false); - gifImage.play(); - assert.isTrue(gifImage.gifProperties.playing === true); - gifImage.setFrame(2); - assert.isTrue(gifImage.gifProperties.displayIndex === 2); - gifImage.reset(); - assert.isTrue(gifImage.gifProperties.displayIndex === 0); - assert.isTrue(gifImage.gifProperties.timeDisplayed === 0); - }); - }); - }; - }; - new p5(mySketch, null, false); - }); + // test('should construct gifProperties correctly after preload', function() { + // var mySketch = function(this_p5) { + // var gifImage; + // this_p5.preload = function() { + // suite('Test in preload() with success callback', function() { + // test('Load asynchronously and use success callback', function(done) { + // gifImage = this_p5.loadImage(imagePath, function() { + // assert.ok(gifImage); + // done(); + // }); + // }); + // }); + // }; + + // this_p5.setup = function() { + // suite('setup() after preload() with success callback', function() { + // test('should be loaded if preload() finished', function(done) { + // assert.isTrue(gifImage instanceof p5.Image); + // assert.isTrue(gifImage.width > 0 && gifImage.height > 0); + // done(); + // }); + // test('gifProperties should be correct after preload', function done() { + // assert.isTrue(gifImage instanceof p5.Image); + // var nyanCatGifProperties = { + // displayIndex: 0, + // loopCount: 0, + // loopLimit: null, + // numFrames: 6, + // playing: true, + // timeDisplayed: 0 + // }; + // assert.isTrue(gifImage.gifProperties !== null); + // for (var prop in nyanCatGifProperties) { + // assert.deepEqual( + // gifImage.gifProperties[prop], + // nyanCatGifProperties[prop] + // ); + // } + // assert.deepEqual( + // gifImage.gifProperties.numFrames, + // gifImage.gifProperties.frames.length + // ); + // for (var i = 0; i < gifImage.gifProperties.numFrames; i++) { + // assert.isTrue( + // gifImage.gifProperties.frames[i].image instanceof ImageData + // ); + // assert.isTrue(gifImage.gifProperties.frames[i].delay === 100); + // } + // }); + // test('should be able to modify gifProperties state', function() { + // assert.isTrue(gifImage.gifProperties.timeDisplayed === 0); + // gifImage.pause(); + // assert.isTrue(gifImage.gifProperties.playing === false); + // gifImage.play(); + // assert.isTrue(gifImage.gifProperties.playing === true); + // gifImage.setFrame(2); + // assert.isTrue(gifImage.gifProperties.displayIndex === 2); + // gifImage.reset(); + // assert.isTrue(gifImage.gifProperties.displayIndex === 0); + // assert.isTrue(gifImage.gifProperties.timeDisplayed === 0); + // }); + // }); + // }; + // }; + // new p5(mySketch, null, false); + // }); }); -suite('displaying images', function() { +suite.todo('displaying images', function() { var myp5; var pImg; var imagePath = 'unit/assets/cat-with-hole.png'; diff --git a/test/unit/image/p5.Image.js b/test/unit/image/p5.Image.js index 488ef8fb1d..5195f2651d 100644 --- a/test/unit/image/p5.Image.js +++ b/test/unit/image/p5.Image.js @@ -51,7 +51,7 @@ suite('p5.Image', function() { }); }); - suite('p5.Image.prototype.mask', function() { + suite.todo('p5.Image.prototype.mask', function() { for (const density of [1, 2]) { test(`it should mask the image at pixel density ${density}`, function() { let img = myp5.createImage(10, 10); @@ -181,7 +181,7 @@ suite('p5.Image', function() { }); }); - suite('p5.Graphics.get()', function() { + suite.todo('p5.Graphics.get()', function() { for (const density of [1, 2]) { test(`width and height match at pixel density ${density}`, function() { const g = myp5.createGraphics(10, 10); diff --git a/test/unit/image/pixels.js b/test/unit/image/pixels.js index 55f3c01a1a..e0b4958c71 100644 --- a/test/unit/image/pixels.js +++ b/test/unit/image/pixels.js @@ -1,6 +1,6 @@ import p5 from '../../../src/app.js'; -suite('pixels', function() { +suite.todo('pixels', function() { var myp5; beforeAll(function() { @@ -152,31 +152,6 @@ suite('pixels', function() { } } }); - - test('no friendly-err-msg. missing param #0', function() { - assert.doesNotThrow( - function() { - let img = myp5.createImage(50, 50); - img.blend(0, 0, 10, 10, 10, 0, 10, 10, myp5.OVERLAY); - }, - Error, - 'got unwanted exception' - ); - }); - - test('missing parameter at #3 ', function() { - assert.throw(function() { - let img = myp5.createImage(50, 50); - img.blend(0, 0, 10, 10, 0, 10, 10, myp5.OVERLAY); - }); - }); - - test('missing parameter at #8 ', function() { - assert.throw(function() { - let img = myp5.createImage(50, 50); - img.blend(0, 0, 10, 10, 10, 0, 10, 10); - }); - }); }); suite('p5.Image.copy', function() { @@ -206,23 +181,5 @@ suite('pixels', function() { } } }); - - test('no friendly-err-msg. missing param #0', function() { - assert.doesNotThrow( - function() { - let img = myp5.createImage(50, 50); - img.copy(0, 0, 10, 10, 10, 0, 10, 10); - }, - Error, - 'got unwanted exception' - ); - }); - - test('missing parameter at #3 ', function() { - assert.throw(function() { - let img = myp5.createImage(50, 50); - img.copy(0, 0, 10, 10, 0, 10, 10); - }); - }); }); }); diff --git a/test/unit/io/files.js b/test/unit/io/files.js index 1fdee84eb9..4d23fb8b66 100644 --- a/test/unit/io/files.js +++ b/test/unit/io/files.js @@ -59,11 +59,12 @@ suite('Files', function() { }); }); - test('should pass error object to error callback function', function() { + test.todo('should pass error object to error callback function', function() { return new Promise(function(resolve, reject) { myp5.httpDo( 'unit/assets/sen.txt', function(data) { + console.log(data); reject('Incorrectly succeeded.'); }, resolve @@ -106,38 +107,6 @@ suite('Files', function() { assert.typeOf(myp5.saveStrings, 'function'); }); - test('no friendly-err-msg I', function() { - assert.doesNotThrow( - function() { - let strings = ['some', 'words']; - myp5.saveStrings(strings, 'myfile'); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg II', function() { - assert.doesNotThrow( - function() { - let strings = ['some', 'words']; - myp5.saveStrings(strings, 'myfile', 'txt'); - }, - Error, - 'got unwanted exception' - ); - }); - - test('no friendly-err-msg III', function() { - assert.doesNotThrow( - function() { - let strings = ['some', 'words']; - myp5.saveStrings(strings, 'myfile', 'txt', true); - }, - Error, - 'got unwanted exception' - ); - }); - testWithDownload( 'should download a file with expected contents', async function(blobContainer) { @@ -175,38 +144,6 @@ suite('Files', function() { assert.typeOf(myp5.saveJSON, 'function'); }); - test('no friendly-err-msg I', function() { - assert.doesNotThrow( - function() { - let myObj = { hi: 'hello' }; - myp5.saveJSON(myObj, 'myfile'); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg II', function() { - assert.doesNotThrow( - function() { - let myObj = [{ hi: 'hello' }]; - myp5.saveJSON(myObj, 'myfile'); - }, - Error, - 'got unwanted exception' - ); - }); - - test('no friendly-err-msg III', function() { - assert.doesNotThrow( - function() { - let myObj = { hi: 'hello' }; - myp5.saveJSON(myObj, 'myfile', true); - }, - Error, - 'got unwanted exception' - ); - }); - testWithDownload( 'should download a file with expected contents', async function(blobContainer) { diff --git a/test/unit/io/loadBytes.js b/test/unit/io/loadBytes.js index 117cf18ecf..296a996afc 100644 --- a/test/unit/io/loadBytes.js +++ b/test/unit/io/loadBytes.js @@ -1,6 +1,6 @@ import { testSketchWithPromise, promisedSketch } from '../../js/p5_helpers'; -suite('loadBytes', function() { +suite.todo('loadBytes', function() { var invalidFile = '404file'; var validFile = 'unit/assets/nyan_cat.gif'; diff --git a/test/unit/io/loadImage.js b/test/unit/io/loadImage.js index 2559750950..fd1f15317a 100644 --- a/test/unit/io/loadImage.js +++ b/test/unit/io/loadImage.js @@ -1,7 +1,7 @@ import p5 from '../../../src/app.js'; import { testSketchWithPromise, promisedSketch } from '../../js/p5_helpers'; -suite('loadImage', function() { +suite.todo('loadImage', function() { var invalidFile = '404file'; var validFile = 'unit/assets/nyan_cat.gif'; diff --git a/test/unit/io/loadJSON.js b/test/unit/io/loadJSON.js index d61562dff1..8882efbeb3 100644 --- a/test/unit/io/loadJSON.js +++ b/test/unit/io/loadJSON.js @@ -1,6 +1,6 @@ import { testSketchWithPromise, promisedSketch } from '../../js/p5_helpers'; -suite('loadJSON', function() { +suite.todo('loadJSON', function() { var invalidFile = '404file'; var jsonArrayFile = 'unit/assets/array.json'; var jsonObjectFile = 'unit/assets/object.json'; diff --git a/test/unit/io/loadModel.js b/test/unit/io/loadModel.js index 2338cc2ff8..1d94c38f54 100644 --- a/test/unit/io/loadModel.js +++ b/test/unit/io/loadModel.js @@ -1,6 +1,6 @@ import { testSketchWithPromise, promisedSketch } from '../../js/p5_helpers'; -suite('loadModel', function() { +suite.todo('loadModel', function() { var invalidFile = '404file'; var validFile = 'unit/assets/teapot.obj'; var validObjFileforMtl='unit/assets/octa-color.obj'; diff --git a/test/unit/io/loadShader.js b/test/unit/io/loadShader.js index b0fcebc177..0351a0ba63 100644 --- a/test/unit/io/loadShader.js +++ b/test/unit/io/loadShader.js @@ -1,7 +1,7 @@ import p5 from '../../../src/app.js'; import { testSketchWithPromise, promisedSketch } from '../../js/p5_helpers'; -suite('loadShader', function() { +suite.todo('loadShader', function() { var invalidFile = '404file'; var vertFile = 'unit/assets/vert.glsl'; var fragFile = 'unit/assets/frag.glsl'; diff --git a/test/unit/io/loadStrings.js b/test/unit/io/loadStrings.js index 9b7980ee16..c3e3ae7d30 100644 --- a/test/unit/io/loadStrings.js +++ b/test/unit/io/loadStrings.js @@ -1,6 +1,6 @@ import { testSketchWithPromise, promisedSketch } from '../../js/p5_helpers'; -suite('loadStrings', function() { +suite.todo('loadStrings', function() { const invalidFile = '404file'; const validFile = 'unit/assets/sentences.txt'; const fileWithEmptyLines = 'unit/assets/empty_lines.txt'; diff --git a/test/unit/io/loadTable.js b/test/unit/io/loadTable.js index 89386e5cea..d5c378033c 100644 --- a/test/unit/io/loadTable.js +++ b/test/unit/io/loadTable.js @@ -1,6 +1,6 @@ import { testSketchWithPromise, promisedSketch } from '../../js/p5_helpers'; -suite('loadTable', function() { +suite.todo('loadTable', function() { var invalidFile = '404file'; var validFile = 'unit/assets/csv.csv'; diff --git a/test/unit/io/loadXML.js b/test/unit/io/loadXML.js index ba9f0da958..317709b809 100644 --- a/test/unit/io/loadXML.js +++ b/test/unit/io/loadXML.js @@ -1,6 +1,6 @@ import { testSketchWithPromise, promisedSketch } from '../../js/p5_helpers'; -suite('loadXML', function() { +suite.todo('loadXML', function() { var invalidFile = '404file'; var validFile = 'unit/assets/books.xml'; diff --git a/test/unit/io/saveModel.js b/test/unit/io/saveModel.js index b15d76685f..8cd0009ba1 100644 --- a/test/unit/io/saveModel.js +++ b/test/unit/io/saveModel.js @@ -1,6 +1,10 @@ -suite('saveModel',function() { +import p5 from '../../../src/app.js'; +import { testWithDownload } from '../../js/p5_helpers'; + +suite.todo('saveModel',function() { var myp5; - setup(function(done) { + + beforeAll(function(done) { new p5(function(p) { p.setup = function() { myp5 = p; @@ -8,9 +12,11 @@ suite('saveModel',function() { }; }); }); - teardown(function() { + + afterAll(function() { myp5.remove(); }); + testWithDownload( 'should download an .obj file with expected contents', async function(blobContainer) { @@ -109,5 +115,4 @@ suite('saveModel',function() { }, true ); - }); diff --git a/test/unit/io/saveTable.js b/test/unit/io/saveTable.js index 69503c03c5..f6abb05d56 100644 --- a/test/unit/io/saveTable.js +++ b/test/unit/io/saveTable.js @@ -1,7 +1,7 @@ import p5 from '../../../src/app.js'; import { testWithDownload } from '../../js/p5_helpers'; -suite('saveTable', function() { +suite.todo('saveTable', function() { let validFile = 'unit/assets/csv.csv'; let myp5; let myTable; @@ -32,26 +32,6 @@ suite('saveTable', function() { assert.typeOf(myp5.saveTable, 'function'); }); - test('no friendly-err-msg I', function() { - assert.doesNotThrow( - function() { - myp5.saveTable(myTable, 'myfile'); - }, - Error, - 'got unwanted exception' - ); - }); - - test('no friendly-err-msg II', function() { - assert.doesNotThrow( - function() { - myp5.saveTable(myTable, 'myfile', 'csv'); - }, - Error, - 'got unwanted exception' - ); - }); - testWithDownload( 'should download a file with expected contents', async function(blobContainer) { diff --git a/test/unit/math/p5.Vector.js b/test/unit/math/p5.Vector.js index 17767dd62d..020f7a60b4 100644 --- a/test/unit/math/p5.Vector.js +++ b/test/unit/math/p5.Vector.js @@ -16,7 +16,7 @@ suite('p5.Vector', function() { afterEach(function() { }); - suite('p5.prototype.setHeading() RADIANS', function() { + suite.todo('p5.prototype.setHeading() RADIANS', function() { beforeEach(function() { mockP5Prototype.angleMode(mockP5.RADIANS); v = mockP5Prototype.createVector(1, 1); @@ -27,7 +27,7 @@ suite('p5.Vector', function() { }); }); - suite('p5.prototype.setHeading() DEGREES', function() { + suite.todo('p5.prototype.setHeading() DEGREES', function() { beforeEach(function() { mockP5Prototype.angleMode(mockP5.DEGREES); v = mockP5Prototype.createVector(1, 1); @@ -40,7 +40,7 @@ suite('p5.Vector', function() { // NOTE: test this in a separate file or move `createVector` to p5.Vector file // Prefer latter - suite('p5.prototype.createVector()', function() { + suite.todo('p5.prototype.createVector()', function() { beforeEach(function() { v = mockP5Prototype.createVector(); }); @@ -55,7 +55,7 @@ suite('p5.Vector', function() { }); }); - suite('p5.prototype.createVector(1, 2, 3)', function() { + suite.todo('p5.prototype.createVector(1, 2, 3)', function() { beforeEach(function() { v = mockP5Prototype.createVector(1, 2, 3); }); @@ -113,7 +113,7 @@ suite('p5.Vector', function() { expect(v.rotate(Math.PI)).to.eql(v); }); - suite('radians', function() { + suite.todo('radians', function() { beforeEach(function() { mockP5Prototype.angleMode(mockP5.RADIANS); }); @@ -143,7 +143,7 @@ suite('p5.Vector', function() { }); }); - suite('degrees', function() { + suite.todo('degrees', function() { beforeEach(function() { mockP5Prototype.angleMode(mockP5.DEGREES); }); @@ -166,7 +166,7 @@ suite('p5.Vector', function() { }); }); - suite('p5.Vector.rotate() [CLASS]', function() { + suite.todo('p5.Vector.rotate() [CLASS]', function() { beforeEach(function() { mockP5Prototype.angleMode(mockP5.RADIANS); }); @@ -232,14 +232,14 @@ suite('p5.Vector', function() { expect(v2.angleBetween(v1)).to.be.NaN; }); - test('between [1,0,0] and [1,0,0] should be 0 degrees', function() { + test.todo('between [1,0,0] and [1,0,0] should be 0 degrees', function() { mockP5Prototype.angleMode(mockP5.DEGREES); v1 = new mockP5.Vector(1, 0, 0); v2 = new mockP5.Vector(1, 0, 0); expect(v1.angleBetween(v2)).to.equal(0); }); - test('between [0,3,0] and [0,-3,0] should be 180 degrees', function() { + test.todo('between [0,3,0] and [0,-3,0] should be 180 degrees', function() { mockP5Prototype.angleMode(mockP5.DEGREES); v1 = new mockP5.Vector(0, 3, 0); v2 = new mockP5.Vector(0, -3, 0); @@ -298,7 +298,7 @@ suite('p5.Vector', function() { expect(mockP5.Vector.angleBetween(v2, v1)).to.be.NaN; }); - test('between [1,0,0] and [0,-1,0] should be -90 degrees', function() { + test.todo('between [1,0,0] and [0,-1,0] should be -90 degrees', function() { mockP5Prototype.angleMode(mockP5.DEGREES); v1 = new mockP5.Vector(1, 0, 0); v2 = new mockP5.Vector(0, -1, 0); @@ -1288,7 +1288,7 @@ suite('p5.Vector', function() { expect(v.heading()).to.be.closeTo(Math.PI, 0.01); }); - suite('with `angleMode(DEGREES)`', function() { + suite.todo('with `angleMode(DEGREES)`', function() { beforeEach(function() { mockP5Prototype.angleMode(mockP5.DEGREES); }); diff --git a/test/unit/math/trigonometry.js b/test/unit/math/trigonometry.js index 9c17e9bb2d..cfe519e7a5 100644 --- a/test/unit/math/trigonometry.js +++ b/test/unit/math/trigonometry.js @@ -48,7 +48,7 @@ suite('Trigonometry', function() { }); }; - suite('p5.prototype.angleMode', function() { + suite.todo('p5.prototype.angleMode', function() { test('should set constant to DEGREES', function() { mockP5Prototype.angleMode(mockP5.DEGREES); assert.equal(mockP5Prototype.angleMode(), mockP5.DEGREES); @@ -103,31 +103,31 @@ suite('Trigonometry', function() { }); }); - suite('p5.prototype.asin', function() { + suite.todo('p5.prototype.asin', function() { ahandleDegreesAndRadians('asin'); }); - suite('p5.prototype.atan', function() { + suite.todo('p5.prototype.atan', function() { ahandleDegreesAndRadians('atan'); }); - suite('p5.prototype.acos', function() { + suite.todo('p5.prototype.acos', function() { ahandleDegreesAndRadians('acos'); }); - suite('p5.prototype.sin', function() { + suite.todo('p5.prototype.sin', function() { handleDegreesAndRadians('sin'); }); - suite('p5.prototype.cos', function() { + suite.todo('p5.prototype.cos', function() { handleDegreesAndRadians('cos'); }); - suite('p5.prototype.tan', function() { + suite.todo('p5.prototype.tan', function() { handleDegreesAndRadians('tan'); }); - suite('p5.prototype.atan2', function() { + suite.todo('p5.prototype.atan2', function() { test('should handle degrees', function() { mockP5Prototype.angleMode(mockP5.DEGREES); assert.equal( diff --git a/test/unit/typography/loadFont.js b/test/unit/typography/loadFont.js index c7d594ce1b..0037403d76 100644 --- a/test/unit/typography/loadFont.js +++ b/test/unit/typography/loadFont.js @@ -16,7 +16,7 @@ suite('Loading Displaying Fonts', function() { myp5.remove(); }); - suite('p5.prototype.loadFont', function() { + suite.todo('p5.prototype.loadFont', function() { var invalidFile = '404file'; var fontFile = 'manual-test-examples/p5.Font/acmesa.ttf'; diff --git a/test/unit/typography/p5.Font.js b/test/unit/typography/p5.Font.js index 51c2fef070..5b92936075 100644 --- a/test/unit/typography/p5.Font.js +++ b/test/unit/typography/p5.Font.js @@ -1,7 +1,7 @@ import p5 from '../../../src/app.js'; import { promisedSketch } from '../../js/p5_helpers'; -suite('p5.Font', function() { +suite.todo('p5.Font', function() { var myp5; beforeAll(function() { diff --git a/test/unit/webgl/3d_primitives.js b/test/unit/webgl/3d_primitives.js index 54eb893461..19e7926af2 100644 --- a/test/unit/webgl/3d_primitives.js +++ b/test/unit/webgl/3d_primitives.js @@ -20,24 +20,6 @@ suite('3D Primitives', function() { assert.ok(myp5.plane); assert.typeOf(myp5.plane, 'function'); }); - test('no friendly-err-msg. missing height param #1.', function() { - assert.doesNotThrow( - function() { - myp5.plane(20); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. no parameters', function() { - assert.doesNotThrow( - function() { - myp5.plane(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.box', function() { @@ -45,33 +27,6 @@ suite('3D Primitives', function() { assert.ok(myp5.box); assert.typeOf(myp5.box, 'function'); }); - test('no friendly-err-msg. missing height, depth; param #1, #2.', function() { - assert.doesNotThrow( - function() { - myp5.box(20, 20); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. missing depth param #2.', function() { - assert.doesNotThrow( - function() { - myp5.box(20, 20); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. no parameters', function() { - assert.doesNotThrow( - function() { - myp5.box(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.sphere', function() { @@ -79,15 +34,6 @@ suite('3D Primitives', function() { assert.ok(myp5.sphere); assert.typeOf(myp5.sphere, 'function'); }); - test('no friendly-err-msg. no parameters', function() { - assert.doesNotThrow( - function() { - myp5.sphere(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.cylinder', function() { @@ -95,24 +41,6 @@ suite('3D Primitives', function() { assert.ok(myp5.cylinder); assert.typeOf(myp5.cylinder, 'function'); }); - test('no friendly-err-msg. missing height; param #1', function() { - assert.doesNotThrow( - function() { - myp5.cylinder(20); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. no parameters', function() { - assert.doesNotThrow( - function() { - myp5.cylinder(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.cone', function() { @@ -120,24 +48,6 @@ suite('3D Primitives', function() { assert.ok(myp5.cone); assert.typeOf(myp5.cone, 'function'); }); - test('no friendly-err-msg. missing height; param #1', function() { - assert.doesNotThrow( - function() { - myp5.cone(20); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. no parameters', function() { - assert.doesNotThrow( - function() { - myp5.cone(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.ellipsoid', function() { @@ -145,24 +55,6 @@ suite('3D Primitives', function() { assert.ok(myp5.ellipsoid); assert.typeOf(myp5.ellipsoid, 'function'); }); - test('no friendly-err-msg. missing param #1 #2', function() { - assert.doesNotThrow( - function() { - myp5.ellipsoid(10); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. no parameters', function() { - assert.doesNotThrow( - function() { - myp5.ellipsoid(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.torus', function() { @@ -170,24 +62,6 @@ suite('3D Primitives', function() { assert.ok(myp5.torus); assert.typeOf(myp5.torus, 'function'); }); - test('no friendly-err-msg. missing param #1', function() { - assert.doesNotThrow( - function() { - myp5.torus(30); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. no parameters', function() { - assert.doesNotThrow( - function() { - myp5.torus(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.RendererGL.prototype.ellipse', function() { @@ -195,24 +69,6 @@ suite('3D Primitives', function() { assert.ok(myp5._renderer.ellipse); assert.typeOf(myp5._renderer.ellipse, 'function'); }); - test('no friendly-err-msg', function() { - assert.doesNotThrow( - function() { - myp5.ellipse(0, 0, 100); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. detail parameter > 50', function() { - assert.doesNotThrow( - function() { - myp5.ellipse(50, 50, 120, 30, 51); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.RendererGL.prototype.arc', function() { @@ -220,32 +76,5 @@ suite('3D Primitives', function() { assert.ok(myp5._renderer.arc); assert.typeOf(myp5._renderer.arc, 'function'); }); - test('no friendly-err-msg', function() { - assert.doesNotThrow( - function() { - myp5.arc(1, 1, 10.5, 10, 0, Math.PI, 'pie'); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. detail parameter > 50', function() { - assert.doesNotThrow( - function() { - myp5.arc(1, 1, 100, 100, 0, Math.PI / 2, 'chord', 51); - }, - Error, - 'got unwanted exception' - ); - }); - test('no friendly-err-msg. default mode', function() { - assert.doesNotThrow( - function() { - myp5.arc(1, 1, 100, 100, Math.PI / 4, Math.PI / 3); - }, - Error, - 'got unwanted exception' - ); - }); }); }); diff --git a/test/unit/webgl/interaction.js b/test/unit/webgl/interaction.js index c3aaf3eaea..f03433d841 100644 --- a/test/unit/webgl/interaction.js +++ b/test/unit/webgl/interaction.js @@ -20,15 +20,6 @@ suite('Interaction', function() { assert.ok(myp5.orbitControl); assert.typeOf(myp5.orbitControl, 'function'); }); - test('missing params. no friendly-err-msg', function() { - assert.doesNotThrow( - function() { - myp5.orbitControl(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.debugMode', function() { @@ -36,15 +27,6 @@ suite('Interaction', function() { assert.ok(myp5.debugMode); assert.typeOf(myp5.debugMode, 'function'); }); - test('missing params. no friendly-err-msg', function() { - assert.doesNotThrow( - function() { - myp5.debugMode(); - }, - Error, - 'got unwanted exception' - ); - }); }); suite('p5.prototype.noDebugMode', function() { diff --git a/utils/convert.js b/utils/convert.js index ee386ae144..0569eec02a 100644 --- a/utils/convert.js +++ b/utils/convert.js @@ -549,6 +549,7 @@ function buildParamDocs(docs) { out.end(); } +fs.mkdirSync(path.join(__dirname, '../docs/reference'), { recursive: true }); fs.writeFileSync(path.join(__dirname, '../docs/reference/data.json'), JSON.stringify(converted, null, 2)); fs.writeFileSync(path.join(__dirname, '../docs/reference/data.min.json'), JSON.stringify(converted)); buildParamDocs(JSON.parse(JSON.stringify(converted))); diff --git a/utils/sample-linter.js b/utils/sample-linter.mjs similarity index 95% rename from utils/sample-linter.js rename to utils/sample-linter.mjs index 4a39c99cab..5862add25e 100644 --- a/utils/sample-linter.js +++ b/utils/sample-linter.mjs @@ -1,7 +1,7 @@ 'use strict'; const EOL = '\n'; import { ESLint } from 'eslint'; -import dataDoc from '../docs/reference/data.min.json'; +import dataDoc from '../docs/reference/data.min.json' assert {type: 'json'}; // envs: ['eslint-samples/p5'], const itemtypes = ['method', 'property']; @@ -217,8 +217,6 @@ async function eslintFiles(opts, filesSrc) { }; } -module.exports.eslintFiles = eslintFiles; - function splitLines(text) { const lines = []; @@ -248,10 +246,8 @@ function splitLines(text) { return lines; } -if (!module.parent) { - eslintFiles(null, process.argv.slice(2)) - .then(result => { - console.log(result.output); - process.exit(result.report.errorCount === 0 ? 0 : 1); - }); -} +eslintFiles(null, process.argv.slice(2)) + .then(result => { + console.log(result.output); + process.exit(result.report.errorCount === 0 ? 0 : 1); + }); diff --git a/vite.config.mjs b/vite.config.mjs index 876c381eb7..6ee151d24a 100644 --- a/vite.config.mjs +++ b/vite.config.mjs @@ -9,23 +9,5 @@ export default defineConfig({ 'src/webgl/shaders/**/*' ] }) - ], - test: { - root: './', - include: [ - './test/unit/**/*.js' - ], - exclude: [ - './test/unit/spec.js', - './test/unit/assets/*', - './test/unit/visual/*' - ], - testTimeout: 5000, - globals: true, - browser: { - enabled: true, - name: 'chrome', - provider: 'webdriverio' - } - } + ] }); diff --git a/vitest.workspace.mjs b/vitest.workspace.mjs new file mode 100644 index 0000000000..480ea8fd8e --- /dev/null +++ b/vitest.workspace.mjs @@ -0,0 +1,47 @@ +import { defineWorkspace } from 'vitest/config'; +import vitePluginString from 'vite-plugin-string'; + +const plugins = [ + vitePluginString({ + include: [ + 'src/webgl/shaders/**/*' + ] + }) +]; + +export default defineWorkspace([ + { + plugins, + test: { + name: 'visual', + root: './', + include: [ + './test/unit/visual/*' + ], + environment: 'node' + } + }, + { + plugins, + test: { + name: 'unit', + root: './', + include: [ + './test/unit/**/*.js' + ], + exclude: [ + './test/unit/spec.js', + './test/unit/assets/**/*', + './test/unit/visual/**/*' + ], + testTimeout: 1000, + globals: true, + browser: { + enabled: true, + name: 'chrome', + provider: 'webdriverio', + screenshotFailures: false + } + } + } +]); \ No newline at end of file