diff --git a/packages/webamp-modern/.eslintrc.js b/packages/webamp-modern/.eslintrc.js index 92cc655e..fd60749d 100644 --- a/packages/webamp-modern/.eslintrc.js +++ b/packages/webamp-modern/.eslintrc.js @@ -1,5 +1,6 @@ +const path = require("path"); const rulesDirPlugin = require("eslint-plugin-rulesdir"); -rulesDirPlugin.RULES_DIR = "packages/webamp-modern/tools/eslint-rules/dist"; +rulesDirPlugin.RULES_DIR = path.join(__dirname, "tools/eslint-rules/dist"); module.exports = { root: true, diff --git a/packages/webamp-modern/.gitignore b/packages/webamp-modern/.gitignore index 87e3aea6..cd5a11a8 100644 --- a/packages/webamp-modern/.gitignore +++ b/packages/webamp-modern/.gitignore @@ -1,2 +1,3 @@ build/ -temp/ \ No newline at end of file +temp/ +extracted-*/ \ No newline at end of file diff --git a/packages/webamp-modern/README.md b/packages/webamp-modern/README.md index b6cf2f7d..78eb58cb 100644 --- a/packages/webamp-modern/README.md +++ b/packages/webamp-modern/README.md @@ -45,6 +45,7 @@ yarn start - [ ] Handle case (in)sensitivity of includes. - [ ] Handle forward/backward slashes issues (if they exist) +- [ ] Draw in few canvases instead of huge HTML Elements ## Known Bugs diff --git a/packages/webamp-modern/assets/BadAppleSimple/Read-me.txt b/packages/webamp-modern/assets/BadAppleSimple/Read-me.txt new file mode 100644 index 00000000..d922d62a --- /dev/null +++ b/packages/webamp-modern/assets/BadAppleSimple/Read-me.txt @@ -0,0 +1,11 @@ +Tutorial simple skin by pixelpusher, June, 13, 2002 +Created for the official Winamp.com tuorial site. +Built at the request of Ken Chen. + +The purpose of this skin is help you learn how +to start creating a simple Winamp3 skin. + +Pixelpusher + + + diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/background.png b/packages/webamp-modern/assets/BadAppleSimple/player/background.png new file mode 100644 index 00000000..148e541b Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/background.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/black-backdrop.png b/packages/webamp-modern/assets/BadAppleSimple/player/black-backdrop.png new file mode 100644 index 00000000..f2e6975a Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/black-backdrop.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/blue-vis-layer.png b/packages/webamp-modern/assets/BadAppleSimple/player/blue-vis-layer.png new file mode 100644 index 00000000..b486b26c Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/blue-vis-layer.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-eject.png b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-eject.png new file mode 100644 index 00000000..e2717046 Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-eject.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-next.png b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-next.png new file mode 100644 index 00000000..95c9fd01 Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-next.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-pause.png b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-pause.png new file mode 100644 index 00000000..274176e6 Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-pause.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-play.png b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-play.png new file mode 100644 index 00000000..9865e312 Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-play.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-previous.png b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-previous.png new file mode 100644 index 00000000..48d95a82 Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-previous.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-stop.png b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-stop.png new file mode 100644 index 00000000..f2142dac Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/blue/blue-stop.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/default-font.png b/packages/webamp-modern/assets/BadAppleSimple/player/default-font.png new file mode 100644 index 00000000..6392d54a Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/default-font.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/numfont.png b/packages/webamp-modern/assets/BadAppleSimple/player/numfont.png new file mode 100644 index 00000000..d97067b1 Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/numfont.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/player/red-vis-layer.png b/packages/webamp-modern/assets/BadAppleSimple/player/red-vis-layer.png new file mode 100644 index 00000000..b303c1c6 Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/player/red-vis-layer.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/screenshot.png b/packages/webamp-modern/assets/BadAppleSimple/screenshot.png new file mode 100644 index 00000000..eb0f9d25 Binary files /dev/null and b/packages/webamp-modern/assets/BadAppleSimple/screenshot.png differ diff --git a/packages/webamp-modern/assets/BadAppleSimple/scripts-low/badapple.m b/packages/webamp-modern/assets/BadAppleSimple/scripts-low/badapple.m new file mode 100644 index 00000000..e00eec8e --- /dev/null +++ b/packages/webamp-modern/assets/BadAppleSimple/scripts-low/badapple.m @@ -0,0 +1,59254 @@ +#include "lib/std.mi" + +Global Text mainText; +Global Timer mainTimer; + +Global int frameNumber, frameCount, frameSize; +Global double frameRate; + +Global List frameList; + +Function loadBadApple(); +Function String decompressRLE(String in); + +System.onScriptLoaded() { + //xml stuff + Group scriptgroup = getScriptGroup(); + mainText = scriptgroup.getObject("badapple_text"); + + //create lists + frameList = new List; + + //add frames to list + loadBadApple(); + + //how many strings are used to build a frame + frameSize = 9; + + //frame count is length of frameList + frameCount = frameList.getNumItems(); + + frameRate = 33.3; + + //update timer + mainTimer = new Timer; + mainTimer.setDelay(33); + + if(frameCount % frameSize != 0) mainText.setXmlParam("text", "framecount("+integerToString(frameCount)+") is not a divisor of frameSize("+integerToString(frameSize)+")!\nThis might crash Winamp!"); + else mainText.setXmlParam("text", "Bad Apple!! in Winamp demo by mirzi (2021)\n...press play"); +} + +System.onPlay(){ + mainTimer.start(); +} + +System.onResume(){ + mainTimer.start(); +} + +System.onStop(){ + mainTimer.stop(); +} + +System.onPause(){ + mainTimer.stop(); +} + + + +mainTimer.onTimer(){ + //get correct frame number with modulo + int frameNum = (frameSize*frameNumber)%frameCount; + + //combine strings into one + String frame_main = ""; + for(int i = 0; i + + + + 1.0 + Tutorial Simple Skin + Created by pixelpusher for the official Winamp3 skinning site. + John Hoag "aka" pixelpusher + nonsaint@hotmail.com + + screenshot.png + + + + + + + + + + diff --git a/packages/webamp-modern/assets/BadAppleSimple/xml/bad-apple.xml b/packages/webamp-modern/assets/BadAppleSimple/xml/bad-apple.xml new file mode 100644 index 00000000..45523a8f --- /dev/null +++ b/packages/webamp-modern/assets/BadAppleSimple/xml/bad-apple.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + +
-
Top:
-
Right:
-
Bottom:
-
Left:
+
+ Top: +
+
+
+ Right: + +
+
+ Bottom: +
+
+
+ Left: +
+
+
+ Polygon: +
+
- \ No newline at end of file + diff --git a/packages/webamp-modern/src/clip_path.ts b/packages/webamp-modern/src/clip_path.ts index 6d1ab918..e1319019 100644 --- a/packages/webamp-modern/src/clip_path.ts +++ b/packages/webamp-modern/src/clip_path.ts @@ -8,7 +8,259 @@ document.getElementById("img1").onclick = (event) => { event.stopPropagation(); }; +const GRIDSIZE = 4; +// const CELLSIZE = 15; +const SCALE = 30; //px + +function prepareGrid() { + const grid = document.getElementById("grid"); + const polygon = document.getElementById("polygon"); + + grid.style.width = `${GRIDSIZE * SCALE}px`; + grid.style.height = `${GRIDSIZE * SCALE}px`; + grid.style.setProperty("--cell-size", `${SCALE + 1}px`); + const img = document.getElementById("result") as HTMLImageElement; + const zoom = document.getElementById("zoom") as HTMLDivElement; + zoom.style.transform = `scale(${SCALE})`; + + const border = document.getElementById("border") as HTMLDivElement; + border.style.width = `${GRIDSIZE * SCALE}px`; + border.style.height = `${GRIDSIZE * SCALE}px`; + + const canvas: HTMLCanvasElement = document.getElementById( + "working" + ) as HTMLCanvasElement; + canvas.width = GRIDSIZE; + canvas.height = GRIDSIZE; + canvas.setAttribute("width", String(GRIDSIZE)); + canvas.setAttribute("height", String(GRIDSIZE)); + const ctx = canvas.getContext("2d"); + + //? default paint + ctx.fillStyle = "#ff00ff"; + ctx.fillRect(0, 0, canvas.width, canvas.height); + ctx.fillStyle = "#000000"; + ctx.fillRect(0, 0, canvas.width, canvas.height / 2); + + //? red dot + const dot = document.getElementById("dot") as HTMLElement; + const coordinateHover = (e: MouseEvent) => { + const el = e.target as HTMLDivElement; + const [ax, ay] = el.textContent.split(",").map((v) => parseInt(v)); + dot.style.left = `${ax * SCALE}px`; + dot.style.top = `${ay * SCALE}px`; + }; + + //? onClick + const toggleCell = (e: MouseEvent) => { + const el = e.target as HTMLDivElement; + var color: number[]; + if (el.classList.contains("black")) { + el.classList.remove("black"); + color = [255, 0, 255]; + } else { + el.classList.add("black"); + color = [0, 0, 0]; + } + const id = parseInt(el.getAttribute("id")); + const x: number = id % GRIDSIZE; + const y: number = Math.floor(id / GRIDSIZE); + const idata = ctx.createImageData(1, 1); + const data = idata.data; + data[0] = color[0]; + data[1] = color[1]; + data[2] = color[2]; + data[3] = 255; + ctx.putImageData(idata, x, y); + + //? IMG + img.setAttribute("src", canvas.toDataURL()); + + //? Coordinates + const showCoordinates = (el: string, data: string) => { + const El = document.getElementById(el); + El.textContent = ""; + const rows = data + .replace(/px/gi, "") + .replace(/\,\s/gi, "\n") + .replace(/\ /g, ", ") + .split("\n"); + for (const row of rows) { + const div = document.createElement("div"); + div.textContent = row; + div.addEventListener("mousemove", coordinateHover); + + El.appendChild(div); + } + }; + + const edge = new Edges(); + edge.parseCanvasTransparencyByColor(canvas, "#ff00ff"); + + showCoordinates("top", edge.gettop()); + showCoordinates("right", edge.getright()); + showCoordinates("bottom", edge.getbottom()); + showCoordinates("left", edge.getleft()); + showCoordinates("polygon", edge.getPolygon()); + + // document.getElementById("top").textContent = edge + // .gettop() + // .replace(/px/gi, "") + // .replace(/\,\s/gi, "\n"); + // document.getElementById("right").textContent = edge + // .getright() + // .replace(/px/gi, "") + // .replace(/\,\s/gi, "\n"); + // document.getElementById("bottom").textContent = edge + // .getbottom() + // .replace(/px/gi, "") + // .replace(/\,\s/gi, "\n"); + // document.getElementById("left").textContent = edge + // .getleft() + // .replace(/px/gi, "") + // .replace(/\,\s/gi, "\n"); + + //? ZOOM + zoom.style.clipPath = edge.getPolygon(); + }; // eof onClick + + for (var i = 0; i < GRIDSIZE * GRIDSIZE; i++) { + const div = document.createElement("div"); + div.setAttribute("id", `${i}`); + div.addEventListener("click", toggleCell); + + grid.appendChild(div); + + const x: number = i % GRIDSIZE; + const y: number = Math.floor(i / GRIDSIZE); + if (x == 0 && y == 0) { + div.classList.add("x-0-axis"); + div.style.setProperty("--0-axis", `'0'`); + } + if (y == 0) { + div.textContent = String(x); + div.classList.add("x-axis"); + div.style.setProperty("--x-axis", `'${x + 1}'`); + } + if (x == 0) { + div.textContent = String(y); + div.classList.add("y-axis"); + div.style.setProperty("--y-axis", `'${y}'`); + if (y == GRIDSIZE - 1) { + div.classList.add("y-axis-z"); + div.style.setProperty("--y-axis-z", `'${y + 1}'`); + } + } + + //debug/default + if (i < (GRIDSIZE * GRIDSIZE) / 2) { + //HALF + div.classList.add("black"); + } + } + + toggleCell({ target: document.getElementById("4") } as unknown as MouseEvent); + // img.setAttribute("src", canvas.toDataURL()); + + //debug + // zoom.style.clipPath = `polygon( + // 0px 0px, + // 3px 0px, + // 3px 3px, + // 0px 3px)`; +} + +function prepareDrop() { + const dropBox = document.getElementById("drop-box"); + const cropped = document.getElementById("cropped"); + const polygon = document.getElementById("polygon"); + const canvas: HTMLCanvasElement = document.getElementById( + "tracing" + ) as HTMLCanvasElement; + var image = document.getElementById("drop-preview") as HTMLImageElement; + + function highlight(e) { + e.preventDefault(); + dropBox.classList.add("highlight"); + } + function unhighlight(e) { + dropBox.classList.remove("highlight"); + } + // dropBox.addEventListener("dragenter", highlight, false); + dropBox.addEventListener("dragover", highlight, false); + dropBox.addEventListener("dragleave", unhighlight, false); + + function handleDrop(e: DragEvent) { + e.preventDefault(); + let dt = e.dataTransfer; + let files = dt.files; + + // handleFiles(files) + handleFile(files[0]); + } + dropBox.addEventListener("drop", handleDrop); + function handleFile(file: File) { + if (file.type === "image" || file.type.startsWith("image")) { + image.onload = imgLoaded; + const url = URL.createObjectURL(file); + image.setAttribute("src", url); + } + } + + function imgLoaded() { + // document.body.appendChild(this); + console.log("img Loaded!"); + canvas.width = image.width; + canvas.height = image.width; + canvas.setAttribute("width", image.width.toString()); + canvas.setAttribute("height", image.height.toString()); + const ctx = canvas.getContext("2d"); + ctx.drawImage(image, 0, 0); + + //? Coordinates + const showCoordinates = (el: string, data: string) => { + const El = document.getElementById(el); + El.textContent = ""; + const rows = data + .replace(/px/gi, "") + .replace(/\,\s/gi, "\n") + .replace(/\ /g, ", ") + .split("\n"); + for (const row of rows) { + const div = document.createElement("div"); + div.textContent = row; + div.addEventListener("mousemove", coordinateHover); + + El.appendChild(div); + } + }; + + const edge = new Edges(); + edge.parseCanvasTransparency(canvas, image.width, image.height); + cropped.style.clipPath = edge.getPolygon(); + + showCoordinates("top", edge.gettop()); + showCoordinates("right", edge.getright()); + showCoordinates("bottom", edge.getbottom()); + showCoordinates("left", edge.getleft()); + showCoordinates("polygon", edge.getPolygon()); + } + + //? blue dot + const dot = document.getElementById("dot2") as HTMLElement; + const coordinateHover = (e: MouseEvent) => { + const el = e.target as HTMLDivElement; + const [ax, ay] = el.textContent.split(",").map((v) => parseInt(v)); + dot.style.left = `${ax}px`; + dot.style.top = `${ay}px`; + }; +} + function main() { + prepareGrid(); + prepareDrop(); + return; + const oriImg = document.getElementById("img1"); const preferedWidth = parseInt(oriImg.getAttribute("data-width")); const preferedHeight = parseInt(oriImg.getAttribute("data-height")); diff --git a/packages/webamp-modern/src/css/demo.css b/packages/webamp-modern/src/css/demo.css new file mode 100644 index 00000000..5d5c2193 --- /dev/null +++ b/packages/webamp-modern/src/css/demo.css @@ -0,0 +1,20 @@ +body { + margin: 0; + background-color: rgb(58, 110, 165); + background-image: url(img/wallpaper.png); + font-family: Arial, Helvetica, sans-serif; +} +#experimental { + position: absolute; + bottom: 0; + right: 0; + color: white; + text-transform: uppercase; +} +#status { + position: absolute; + bottom: 0; + right: 0; + left: 0; + text-align: center; +} diff --git a/packages/webamp-modern/src/css/elements.css b/packages/webamp-modern/src/css/elements.css new file mode 100644 index 00000000..c716dd5e --- /dev/null +++ b/packages/webamp-modern/src/css/elements.css @@ -0,0 +1,301 @@ +textarea, +group, +text, +input, +select { + font-size: 10.5px; + user-select: none; +} +textarea:focus, +input:focus, +select:focus { + outline: none; +} +#ui-root select { + background-color: transparent; + color: var(--color-studio-list-text, var(--color-wasabi-list-text)); +} +select option { + padding-left: 5px; + width: 300%; +} +select option[selected] { + font-weight: bold; +} +select::before { + padding-left: 5px; + content: var(--colheader, none); + display: block; + position: sticky; + top: var(--colheadertop, 0); + left: 0; + background-color: black; + color: silver; +} +.webamp--img { + background-image: var(--background-image); + background-position: top 0 left 0; +} +.webamp--img:active { + background-image: var(--down-background-image, var(--background-image)); +} +.webamp--img:hover { + background-image: var(--hover-background-image, var(--background-image)); +} + +/* TODO: Should this fallback to hover? */ +.webamp--img:hover:active { + background-image: var(--down-background-image, var(--background-image)); +} + +.webamp--img.active { + background-image: var(--active-background-image, var(--background-image)); +} + +button { + border: none; + background: transparent; + padding: 0; +} +slider { + overflow: hidden; + --thumb-left: 0px; + --thumb-top: 0px; + outline: none; +} +slider > div { + display: none; +} +slider::after { + content: ""; + position: absolute; + left: var(--thumb-left); + top: var(--thumb-top); + width: var(--thumb-width); + height: var(--thumb-height); + background-image: var(--thumb-background-image); + pointer-events: none; +} +slider:hover:after { + background-image: var( + --thumb-hover-background-image, + var(--thumb-background-image) + ); +} +/* slider:active:after { */ +slider:active:after, +.eq-surf slider:focus:after { + background-image: var( + --thumb-down-background-image, + var(--thumb-background-image) + ); +} +text { + overflow: hidden; + box-sizing: border-box; + text-align: center; + /* padding: 2px; */ + --valign: center; +} +text i { + pointer-events: none; + font-style: normal; +} +text wrap { + display: block; + /* white-space: nowrap; */ + background-image: inherit; + background-size: 0px; + position: relative; + /* line-height: 1; */ + height: 100%; + width: var(--full-width); + min-width: 100%; + font-family: monospace; + white-space: pre; +} +text wrap[font="BitmapFont"] { + display: flex; + white-space: nowrap; + /* vertical align: */ + /* align-items: center; */ + align-items: var(--valign, center); + justify-content: var(--align, center); + margin-left: 2px; +} +text span { + user-select: none; + pointer-events: none; + /* display: inline-block; */ + background-image: inherit; + /* vertical-align: bottom; */ + color: transparent; + width: var(--charwidth); + height: var(--charheight); + margin-right: var(--hspacing, 0); + background-position-x: var(--x); + background-position-y: var(--y); + overflow: hidden; + flex-shrink: 0; + background-repeat-x: no-repeat; +} +/* body > div * */ +container { + position: absolute; +} +menu { + margin: 0; + padding: 0; + list-style: none; +} +/* frame2 { + box-shadow: inset 0 0 5px red; +} */ + +/* Lets register all supported tag's default property here: */ +albumart, +animatedlayer, +button, +colorthemeslist, +componentbucket, +eqvis, +grid, +group, +layer, +layout, +progressgrid, +slider, +status, +text,menu,frame2, +vis, +wasabiframe, +wasabititlebar, +windowholder +{ + position: absolute; + left: 0; + top: 0; + display: block; + overflow: hidden; +} +group { + overflow: visible; +} +albumart { + /* background-size: cover; */ + background-size: contain; + background-repeat: no-repeat; + background-position: center!important; +} +wasabititlebar { + text-align: center; +} +grid, +progressgrid { + display: flex; +} +grid *, +progressgrid * { + height: 100%; + background-image: var(--background-image); +} +grid middle { + flex-grow: 1; +} +componentbucket { + overflow: hidden; +} +componentbucket > wrapper { + display: flex; + position: absolute; + left: 0; + top: 0; + height: 100%; + width: auto; + transition: top 0.5s, left 0.5s; +} +componentbucket.vertical > wrapper { + flex-direction: column; + height: auto; + width: 100%; +} +componentbucket > wrapper > group { + position: relative; +} +group.x-fade > * { + transition: opacity var(--fade-in-speed, 0.5); +} +group.x-fade > .fading-out { + transition: opacity var(--fade-out-speed, 0.25); +} + +vis > canvas { + display: block; +} +animatedlayer { + background-repeat: no-repeat; +} +.autowidthsource { + width: auto; +} + +/* .pl { + background: white; + color: black; + } */ + +/* titleBar active state */ +[inactivealpha="0"] { + opacity: 0; +} +[inactivealpha="128"] { + opacity: 0.5; +} +container:focus-within [activealpha="0"], +container:active [activealpha="0"] { + opacity: 0; +} +container:focus-within [inactivealpha], +container:active [inactivealpha] { + opacity: 1; +} +container:not(:active):not(container:focus-within) .webamp--img.inactivable { + background-image: var(--inactive-background-image, var(--background-image)); +} + +.resizing { + border: 1px solid blue; + background-color: rgba(74, 74, 251, 0.205); + z-index: 1000; + box-sizing: border-box; + transition: width 0.1s, height 0.1s, left 0.1s, top 0.1s; +} + + +#wasabi\.menubar, +#wasabi\.menubar\.pl, +#wasabi\.menubar\.ml { + background: var(--color-wasabi-window-background); +} + + +menu { + /* pointer-events: unset; */ + overflow: visible; +} +/* FAKE POPUP */ +.fake-popup { + width: 200px; + height: 300px; + background-color: yellow; + z-index: 1000; +} +menu > .popup{ + position: absolute; + left: 0; + top: 100%; + display: none; +} +.open > .popup{ + display: block; +} \ No newline at end of file diff --git a/packages/webamp-modern/src/css/img/.gitignore b/packages/webamp-modern/src/css/img/.gitignore new file mode 100644 index 00000000..cf6a2cb6 --- /dev/null +++ b/packages/webamp-modern/src/css/img/.gitignore @@ -0,0 +1 @@ +wallpaper.png \ No newline at end of file diff --git a/packages/webamp-modern/src/css/kjofol.css b/packages/webamp-modern/src/css/kjofol.css new file mode 100644 index 00000000..c59b0842 --- /dev/null +++ b/packages/webamp-modern/src/css/kjofol.css @@ -0,0 +1,7 @@ +.K-Jofol button { + background-position-x: var(--left, 0); + background-position-y: var(--top, 0); +} +.K-Jofol canvas { + display: block; +} \ No newline at end of file diff --git a/packages/webamp-modern/src/css/list.css b/packages/webamp-modern/src/css/list.css index 40d1ed5e..469d4434 100644 --- a/packages/webamp-modern/src/css/list.css +++ b/packages/webamp-modern/src/css/list.css @@ -24,16 +24,38 @@ colorthemeslist { } colorthemeslist > select { border: none; + background-color: transparent; + color: inherit; } /* == PLAYLIST == */ -/* .pl.list { - pointer-events: all; -} */ +.pl.list { + /* pointer-events: all; */ + color: aqua; + background: none; +} .pl > .content-list { margin-right: 15px; max-height: 100%; + /* background: black; */ + min-height: 100%; overflow: auto; + background-color: var(--color-wasabi-list-background, transparent); + background-image: var(--bitmap-studio-list-background, none); +} +.pl > .content-list > div { + display: flex; +} +.pl > .content-list div>span:first-child{ + /* color:red; */ + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; +} +.pl > .content-list div>span:last-child{ + width: 30px; + float: right; + text-align: right; } .pl > .content-list::-webkit-scrollbar { display: none; @@ -63,8 +85,12 @@ colorthemeslist > select { .pl > slider { z-index: 1; } +.classic .pl::before, +.classic .pl::after { + content: none; +} -.pl > slider::before /* button.wasabi */ { +.pl > slider::after /* button.wasabi */ { box-sizing: border-box; background-image: none; border: 4px solid transparent; @@ -73,11 +99,11 @@ colorthemeslist > select { border-image-slice: 4 fill; vertical-align: middle; } -.pl > slider:active:before /* button.wasabi:active */ { +.pl > slider:active:after /* button.wasabi:active */ { border-image-source: var(--bitmap-studio-button-pressed); } -.pl > slider::after { +.pl > slider::before { content: ""; position: absolute; /* TODO: do centering it by calc the real grip's bitmap height/width. */ diff --git a/packages/webamp-modern/src/css/scrollbar.css b/packages/webamp-modern/src/css/scrollbar.css index db2b91a4..166c1b91 100644 --- a/packages/webamp-modern/src/css/scrollbar.css +++ b/packages/webamp-modern/src/css/scrollbar.css @@ -1,33 +1,34 @@ /* Let's get this party started */ /*? VERTICAL */ -::-webkit-scrollbar { +/* #web-amp *::-webkit-scrollbar-track { */ +#web-amp *::-webkit-scrollbar { width: var(--dim-vscrollbar-width); background-image: var(--bitmap-wasabi-scrollbar-vertical-background); } /* Track */ -/* ::-webkit-scrollbar-track { +/* #web-amp *::-webkit-scrollbar-track { background-image: var(--bitmap-wasabi-scrollbar-vertical-background); } */ -::-webkit-scrollbar-button { +#web-amp *::-webkit-scrollbar-button { background-image: var(--bitmap-wasabi-scrollbar-vertical-left); } -::-webkit-scrollbar-button:vertical { +#web-amp *::-webkit-scrollbar-button:vertical { height: var(--dim-vscrollbar-btn-height); } -::-webkit-scrollbar-button:vertical:increment { +#web-amp *::-webkit-scrollbar-button:vertical:increment { background-image: var(--bitmap-wasabi-scrollbar-vertical-right); } /* Handle */ -::-webkit-scrollbar-thumb { +#web-amp *::-webkit-scrollbar-thumb { background-image: var( --bitmap-wasabi-scrollbar-vertical-button, var(--bitmap-studio-scrollbar-vertical-button) ); /*background-repeat: repeat;*/ } -::-webkit-scrollbar-thumb { +#web-amp *::-webkit-scrollbar-thumb { max-height: var( --dim-vscrollbar-thumb-height, var(--dim-vscrollbar-thumb-height2) @@ -38,7 +39,7 @@ ); background-repeat: no-repeat; } -/* ::-webkit-scrollbar-thumb::after { +/* #web-amp *::-webkit-scrollbar-thumb::after { content: 'HALO'; position: absolute; display: block; @@ -46,31 +47,31 @@ background: rgba(255, 230, 0, 1); z-index: 100; } */ -/* ::-webkit-scrollbar-thumb:window-inactive { +/* #web-amp *::-webkit-scrollbar-thumb:window-inactive { background: rgba(255,0,0,0.4); } */ /*? HORIZONTAL */ -::-webkit-scrollbar:horizontal { +#web-amp *::-webkit-scrollbar:horizontal { height: var(--dim-hscrollbar-height); background-image: var(--bitmap-wasabi-scrollbar-horizontal-background); } /* Track */ -/* ::-webkit-scrollbar-track:horizontal { +/* #web-amp *::-webkit-scrollbar-track:horizontal { } */ -::-webkit-scrollbar-button:horizontal { +#web-amp *::-webkit-scrollbar-button:horizontal { background-image: var(--bitmap-wasabi-scrollbar-horizontal-left); width: var(--dim-hscrollbar-btn-width); } -::-webkit-scrollbar-button:horizontal:increment { +#web-amp *::-webkit-scrollbar-button:horizontal:increment { background-image: var(--bitmap-wasabi-scrollbar-horizontal-right); } /* Handle */ -::-webkit-scrollbar-thumb:horizontal { +#web-amp *::-webkit-scrollbar-thumb:horizontal { background-image: var(--bitmap-studio-scrollbar-horizontal-button); } -::-webkit-scrollbar-corner { +#web-amp *::-webkit-scrollbar-corner { background: transparent; } /* ---------- EOF SCROLLBAR ------------ */ diff --git a/packages/webamp-modern/src/css/sonique.css b/packages/webamp-modern/src/css/sonique.css new file mode 100644 index 00000000..8298fa4d --- /dev/null +++ b/packages/webamp-modern/src/css/sonique.css @@ -0,0 +1,31 @@ +.text-shaped { + color: silver; + font-size: 9px; + text-align: center; + color: aqua; + font-weight: bold; +} +.text-shaped::before { + content: ""; + width: 50%; + height: 100%; + float: left; + shape-outside: var(--bottom-arc1); + shape-margin: 3px; +} +.text-shaped.right { + position: initial; +} +.text-shaped.right::before { + float: right; + shape-outside: var(--bottom-arc2); +} + +button.circle::before { + /* background-color: aqua; */ + /* border-radius: 50%; */ + content: ''; + position: absolute; + inset: 0; + background-image: var(--icon-background-image); +} \ No newline at end of file diff --git a/packages/webamp-modern/src/css/webamp.css b/packages/webamp-modern/src/css/webamp.css new file mode 100644 index 00000000..cf5f98ea --- /dev/null +++ b/packages/webamp-modern/src/css/webamp.css @@ -0,0 +1,8 @@ +@import url(./elements.css); +@import url(./list.css); +@import url(./button.css); +@import url(./scrollbar.css); + +@import url(./wmz.css); +@import url(./kjofol.css); +@import url(./sonique.css); diff --git a/packages/webamp-modern/src/css/wmz.css b/packages/webamp-modern/src/css/wmz.css new file mode 100644 index 00000000..9ee26d3e --- /dev/null +++ b/packages/webamp-modern/src/css/wmz.css @@ -0,0 +1,120 @@ +.passthrough, .passthrough *{ + pointer-events: none !important; +} +subview, +buttongroup, +buttonelement { + position: absolute; + left: 0; + top: 0; + display: block; + overflow: hidden; + padding: 0; + margin: 0; + background-color: var(--background-color); +} +buttongroup { + background: none; +} +buttongroup > buttonelement { + width: inherit !important; + height: inherit !important; + background-position: top left; + cursor: pointer; +} +buttongroup.webamp--img:active, +buttongroup.webamp--img:hover:active, +buttongroup.webamp--img:hover { + background-image: var(--background-image); +} +subview.webamp--img::before, +buttongroup.has-image::before{ + content: ''; + position: absolute; + background-image: var(--background-image); + top: 0; + left: 0; + width: inherit; + height: inherit; + z-index: 0; +} +buttongroup > buttonelement.down { + background-image: var(--down-background-image, var(--background-image)); +} +buttongroup > buttonelement:hover { + background-image: var(--hover-background-image, var(--background-image)); +} +buttongroup > buttonelement.down:hover { + background-image: var( + --hover-down-background-image, + var(--hover-background-image, var(--background-image)) + ); +} +buttongroup > buttonelement:active, +buttongroup > buttonelement:hover:active { + background-image: var(--down-background-image, var(--background-image)); +} +button.disabled, +buttongroup > buttonelement.disabled { + pointer-events: none !important; + background-image: var( + --disabled-background-image, + var(--background-image) + ) !important; +} + +text.textz wrap { + width: auto; +} + +subview > * { + background-color: var(--background-color); +} + +/** SLIDER **/ +slider.background-stretched::before { + content: ""; + box-sizing: border-box; + border: 7px solid transparent; + border-top-width: var(--border-height-px); + border-bottom-width: var(--border-height-px); + border-left-width: var(--border-width-px); + border-right-width: var(--border-width-px); + border-image-source: var(--background-image); + border-image-slice: var(--border-height) var(--border-width) fill; + position: absolute; + inset: 0; +} + +#web-amp container#main > #normal { clip-path: url(#region-for-normal); } +#web-amp container#main > #shade { clip-path: url(#region-for-windowshade); } +/* #web-amp container#main > #normal { clip-path: url(#region-for-equalizer); } */ +/* #web-amp container#main > #normal { clip-path: url(#region-for-equalizerws); } */ + + +/* WA2 PSEUDO OF MINUS SIGN */ +text span.bignum.minus{ + background-position-x: 15px; + position: relative; + /* box-shadow: inset 0 0 1px yellow; */ +} +text span.bignum.minus::before, +text span.bignum.minus::after{ + content: ''; + position: absolute; + background: inherit; + background-position: inherit; + left: 1px; + top:5px; + width: 4px; + height: 3px; + /* border:1px solid fuchsia; */ + background-position-x: -63px; + background-position-y: -13px; +} +text span.bignum.minus::after{ + background-position-x: -49px; + background-position-y: -13px; + left:5px; + /* border:1px solid lime; */ +} \ No newline at end of file diff --git a/packages/webamp-modern/src/index.html b/packages/webamp-modern/src/index.html index a64bc1bb..c4190c9c 100644 --- a/packages/webamp-modern/src/index.html +++ b/packages/webamp-modern/src/index.html @@ -7,268 +7,39 @@ Webamp Modern - - - + +

Downloading JavaScript...

+
Work in Progress
+ + + + + + + + + diff --git a/packages/webamp-modern/src/index.ts b/packages/webamp-modern/src/index.ts index f3f82ea0..4b0e7b7b 100644 --- a/packages/webamp-modern/src/index.ts +++ b/packages/webamp-modern/src/index.ts @@ -1,18 +1,17 @@ -import JSZip from "jszip"; -// This module is imported early here in order to avoid a circular dependency. -import { classResolver } from "./skin/resolver"; -import SkinParser from "./skin/parse"; -import UI_ROOT from "./UIRoot"; -import { getUrlQuery } from "./utils"; -import { addDropHandler } from "./dropTarget"; +import { WebAmpModern, IWebampModern, Options } from "./WebampModernInteface"; -function hack() { - // Without this Snowpack will try to treeshake out resolver causing a circular - // dependency. - classResolver("A funny joke about why this is needed."); +declare global { + interface Window { + WebampModern: typeof WebAmpModern; + } } -addDropHandler(loadSkin); +function getUrlQuery(location: Location, variable: string): string { + return new URL(location.href).searchParams.get(variable); +} + +// temporary disable: +// addDropHandler(loadSkin); const STATUS = document.getElementById("status"); @@ -23,63 +22,37 @@ function setStatus(status: string) { // const DEFAULT_SKIN = "assets/MMD3.wal" const DEFAULT_SKIN = "assets/WinampModern566.wal"; +// type Webamp = window.WebampModern +var webamp: IWebampModern; + async function main() { // Purposefully don't await, let this load in parallel. initializeSkinListMenu(); - setStatus("Downloading skin..."); const skinPath = getUrlQuery(window.location, "skin") || DEFAULT_SKIN; - const response = await fetch(skinPath); - const data = await response.blob(); - await loadSkin(data); + // changeSkinByUrl(); + + const option: Options = { + skin: skinPath, + tracks: [ + "assets/Just_Plain_Ant_-_05_-_Stumble.mp3", + "assets/Just_Plain_Ant_-_05_-_Stumble.mp3", + "assets/Just_Plain_Ant_-_05_-_Stumble.mp3", + ], + }; setStatus("Downloading MP3..."); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); - UI_ROOT.playlist.enqueuefile("assets/Just_Plain_Ant_-_05_-_Stumble.mp3"); + webamp = new window.WebampModern(document.getElementById("web-amp"), option); + webamp.onLogMessage(setStatus); + // var webamp2 = new window.WebampModern(document.getElementById("web-amp"), {...option, skin:"assets/MMD3.wal"}); setStatus(""); } -async function loadSkin(skinData: Blob) { - UI_ROOT.reset(); - document.body.appendChild(UI_ROOT.getRootDiv()); - - setStatus("Loading .wal archive..."); - const zip = await JSZip.loadAsync(skinData); - UI_ROOT.setZip(zip); - - setStatus("Parsing XML and initializing images..."); - const parser = new SkinParser(UI_ROOT); - - // This is always the same as the global singleton. - const uiRoot = await parser.parse(); - - uiRoot.loadTrueTypeFonts(); - - const start = performance.now(); - uiRoot.enableDefaultGammaSet(); - const end = performance.now(); - console.log(`Loading initial gamma took: ${(end - start) / 1000}s`); - - setStatus("Rendering skin for the first time..."); - uiRoot.draw(); - uiRoot.init(); - - setStatus("Initializing Maki..."); - for (const container of uiRoot.getContainers()) { - container.init(); - } +async function changeSkinByUrl() { + setStatus("Downloading skin..."); + const skinPath = getUrlQuery(window.location, "skin") || DEFAULT_SKIN; + webamp.switchSkin(skinPath); setStatus(""); } @@ -99,18 +72,23 @@ async function initializeSkinListMenu() { } `; - const response = await fetch("https://api.webampskins.org/graphql", { - method: "POST", - headers: { - "Content-Type": "application/json", - Accept: "application/json", - }, - mode: "cors", - credentials: "include", - body: JSON.stringify({ query, variables: {} }), - }); - - const data = await response.json(); + let bankskin1 = []; + // try { + // const response = await fetch("https://api.webampskins.org/graphql", { + // method: "POST", + // headers: { + // "Content-Type": "application/json", + // Accept: "application/json", + // }, + // mode: "cors", + // credentials: "include", + // body: JSON.stringify({ query, variables: {} }), + // }); + // const data = await response.json(); + // bankskin1 = data.data.modern_skins.nodes; + // } catch (e) { + // console.warn('faile to load skins from api.webampskins.org') + // } const select = document.createElement("select"); select.style.position = "absolute"; @@ -126,11 +104,71 @@ async function initializeSkinListMenu() { const current = getUrlQuery(window.location, "skin"); const internalSkins = [ - { filename: "default", download_url: "" }, - { filename: "MMD3", download_url: "assets/MMD3.wal" }, + { filename: "[Winamp] default", download_url: "" }, + { filename: "[Winamp] MMD3", download_url: "assets/MMD3.wal" }, + // { filename: "[Folder] MMD3", download_url: "assets/extracted/MMD3/" }, + { filename: "[Winamp] BigBento", download_url: "assets/BigBento/" }, + + { filename: "[Winamp Classic]", download_url: "assets/base-2.91.wsz" }, + { + filename: "[Winamp Classic] MacOSXAqua1-5", + download_url: "assets/MacOSXAqua1-5.698dd4ab.wsz", + }, + { + filename: "[Winamp Classic] Green-Dimension-V2", + download_url: "assets/Green-Dimension-V2.6f88d5c3.wsz", + }, + { + filename: "[wmp] Quicksilver WindowsMediaPlayer!", + download_url: "assets/Quicksilver.wmz", + }, + { filename: "[wmp] Windows XP", download_url: "assets/Windows-XP.wmz" }, + { + filename: "[wmp] Famous Headspace", + download_url: "assets/Headspace.wmz", + }, + + { + filename: "[Audion Face] Smoothface 2", + download_url: "assets/Smoothface2.face", + }, + { + filename: "[Audion Face] Gizmo 2.0", + download_url: "assets/Gizmo2.0.face", + }, + { + filename: "[Audion Face] Tokyo Bay", + download_url: "assets/TokyoBay.face", + }, + { filename: "[K-Jofol] Default", download_url: "assets/Default.kjofol" }, + { + filename: "[K-Jofol] Illusion 1.0", + download_url: "assets/Illusion1-0.kjofol", + }, + { + filename: "[K-Jofol] K-Nine 05r", + download_url: "assets/K-Nine05r.kjofol", + }, + { filename: "[K-Jofol] Limus 2.0", download_url: "assets/Limus2-0.zip" }, + { filename: "[Sonique] Default", download_url: "assets/sonique.sgf" }, + { + filename: "[Sonique] Scifi-Stories", + download_url: "assets/scifi-stories.sgf", + }, + { + filename: "[Sonique] Panthom (SkinBuilder)", + download_url: "assets/phantom.sgf", + }, + { filename: "[Sonique] ChainZ and", download_url: "assets/ChainZ-and.sgf" }, + { + filename: "[JetAudio] Small Bar", + download_url: "assets/DefaultBar_s.jsk", + }, + { filename: "[Cowon JetAudio] Gold", download_url: "assets/Gold.uib" }, + { filename: "CornerAmp_Redux", download_url: "assets/CornerAmp_Redux.wal" }, ]; - const skins = [...internalSkins, ...data.data.modern_skins.nodes]; + const skins = [...internalSkins, ...bankskin1]; for (const skin of skins) { const option = document.createElement("option"); @@ -146,10 +184,24 @@ async function initializeSkinListMenu() { select.addEventListener("change", (e: any) => { const url = new URL(window.location.href); url.searchParams.set("skin", e.target.value); - window.location.replace(url.href); + // window.location.replace(url.href); + const title = e.target.text; + const newPath = url.href.substring(url.origin.length); + + // https://stackoverflow.com/questions/3338642/updating-address-bar-with-new-url-without-hash-or-reloading-the-page + window.history.pushState({ pageTitle: title }, title, newPath); + changeSkinByUrl(); + downloadLink.href = e.target.value; }); + window.onpopstate = function (e) { + if (e.state) { + document.title = e.state.pageTitle; + } + changeSkinByUrl(); + }; + document.body.appendChild(select); document.body.appendChild(downloadLink); } diff --git a/packages/webamp-modern/src/maki/MakiFile.ts b/packages/webamp-modern/src/maki/MakiFile.ts index a608d32b..b09829e3 100644 --- a/packages/webamp-modern/src/maki/MakiFile.ts +++ b/packages/webamp-modern/src/maki/MakiFile.ts @@ -9,6 +9,10 @@ export default class MakiFile { this._i = 0; } + isEof(): boolean { + return this._i == this._arr.length; + } + readInt32LE(): number { const offset = this._i >>> 0; this._i += 4; @@ -54,9 +58,8 @@ export default class MakiFile { let ret = ""; const end = Math.min(this._arr.length, this._i + length); - for (let i = this._i; i < end; ++i) { - ret += String.fromCharCode(this._arr[i]); - } + const buffer = this._arr.slice(this._i, end); + ret = new TextDecoder().decode(buffer); this._i += length; return ret; } diff --git a/packages/webamp-modern/src/maki/interpreter.ts b/packages/webamp-modern/src/maki/interpreter.ts index 0a540784..ff83e6dc 100644 --- a/packages/webamp-modern/src/maki/interpreter.ts +++ b/packages/webamp-modern/src/maki/interpreter.ts @@ -3,6 +3,8 @@ import { assert, assume } from "../utils"; import { ParsedMaki, Command, Method } from "./parser"; import { getClass, getMethod } from "./objects"; import GuiObj from "../skin/makiClasses/GuiObj"; +import BaseObject from "../skin/makiClasses/BaseObject"; +import { UIRoot } from "../UIRoot"; // import { classResolver } from "../skin/resolver"; function validateMaki(program: ParsedMaki) { @@ -35,21 +37,29 @@ export function interpret( start: number, program: ParsedMaki, stack: Variable[], - classResolver: (guid: string) => any + classResolver: (guid: string) => any, + eventName: string, + uiRoot: UIRoot ) { validateMaki(program); - const interpreter = new Interpreter(program, classResolver); + const interpreter = new Interpreter( + program, + classResolver, + eventName, + uiRoot + ); interpreter.stack = stack; return interpreter.interpret(start); } function validateVariable(v: Variable) { - if (v.type === "OBJECT" && typeof v.value !== "object") { + if (v.type === "OBJECT" && typeof v.value !== "object" && v.value !== 0) { debugger; } } class Interpreter { + _uiRoot: UIRoot; // actually only new Klass(uiRoot) stack: Variable[]; callStack: number[]; classes: string[]; @@ -57,14 +67,25 @@ class Interpreter { methods: Method[]; commands: Command[]; debug: boolean = false; + maki_id: string; + eventName: string; classResolver: (guid: string) => any; - constructor(program: ParsedMaki, classResolver: (guid: string) => any) { - const { commands, methods, variables, classes } = program; + + constructor( + program: ParsedMaki, + classResolver: (guid: string) => any, + eventName: string, + uiRoot: UIRoot + ) { + const { commands, methods, variables, classes, maki_id } = program; this.classResolver = classResolver; this.commands = commands; this.methods = methods; this.variables = variables; this.classes = classes; + this.maki_id = maki_id; + this.eventName = eventName; + this._uiRoot = uiRoot; this.stack = []; this.callStack = []; @@ -108,9 +129,16 @@ class Interpreter { const a = this.stack.pop(); const offsetIntoVariables = command.arg; const current = this.variables[offsetIntoVariables]; + // assume( a != null, `Assigning from invalid object into: ${JSON.stringify(current)}. #${this.maki_id}`) + assume( + a != null, + `Assigning from invalid object into: ${current.value}. #${this.maki_id}. @${this.eventName} \n (see next error)` + ); assume( typeof a.value === typeof current.value || current.value == null, - `Assigned from one type to a different type ${typeof a.value}, ${typeof current.value}.` + `Assigned from one type to a different type ${typeof a.value}, ${typeof current.value}. #${ + this.maki_id + }` ); current.value = a.value; @@ -126,7 +154,14 @@ class Interpreter { `Tried to compare a ${a.type} to a ${b.type}.` ); */ - const result = V.newInt(b.value === a.value); + // const result = V.newInt(b.value === a.value); + let result; + // if comparing string, maybe case-insensitive + if (a.type == "STRING" && b.type == "STRING") { + result = V.newInt(b.value.toLowerCase() == a.value.toLowerCase()); + } else { + result = V.newInt(b.value === a.value); + } this.push(result); break; } @@ -140,7 +175,14 @@ class Interpreter { `Tried to compare a ${a.type} to a ${b.type}.` ); */ - const result = V.newInt(b.value !== a.value); + // const result = V.newInt(b.value !== a.value); + let result; + // if comparing string, maybe case-insensitive + if (a.type == "STRING" && b.type == "STRING") { + result = V.newInt(b.value.toLowerCase() != a.value.toLowerCase()); + } else { + result = V.newInt(b.value !== a.value); + } this.push(result); break; } @@ -148,19 +190,27 @@ class Interpreter { case 10: { const a = this.stack.pop(); const b = this.stack.pop(); - switch (a.type) { - case "STRING": - case "OBJECT": - case "BOOLEAN": - case "NULL": - throw new Error("Tried to add non-numbers."); - } - switch (b.type) { - case "STRING": - case "OBJECT": - case "BOOLEAN": - case "NULL": - throw new Error("Tried to add non-numbers."); + // it should work to compare both int & string + if ( + !( + a.type == b.type && + ["INT", "FLOAT", "DOUBLE", "STRING"].includes(a.type) + ) + ) { + switch (a.type) { + case "STRING": + case "OBJECT": + case "BOOLEAN": + case "NULL": + throw new Error("Tried to add non-numbers.10a"); + } + switch (b.type) { + case "STRING": + case "OBJECT": + case "BOOLEAN": + case "NULL": + throw new Error("Tried to add non-numbers.10b"); + } } if (this.debug) { console.log(`${b.value} > ${a.value}`); @@ -172,44 +222,61 @@ class Interpreter { case 11: { const a = this.stack.pop(); const b = this.stack.pop(); - switch (a.type) { - case "STRING": - case "OBJECT": - case "BOOLEAN": - case "NULL": - throw new Error("Tried to add non-numbers."); - } - switch (b.type) { - case "STRING": - case "OBJECT": - case "BOOLEAN": - case "NULL": - throw new Error("Tried to add non-numbers."); + // it should work to compare both int & string + if ( + !( + a.type == b.type && + ["INT", "FLOAT", "DOUBLE", "STRING"].includes(a.type) + ) + ) { + switch (a.type) { + case "STRING": + case "OBJECT": + case "BOOLEAN": + case "NULL": + throw new Error( + "Tried to add non-numbers.11a. " + this.maki_id + ); + } + switch (b.type) { + case "STRING": + case "OBJECT": + case "BOOLEAN": + case "NULL": + throw new Error("Tried to add non-numbers.11b"); + } } if (this.debug) { console.log(`${b.value} >= ${a.value}`); } this.push(V.newInt(b.value >= a.value)); break; - break; } // < case 12: { const a = this.stack.pop(); const b = this.stack.pop(); - switch (a.type) { - case "STRING": - case "OBJECT": - case "BOOLEAN": - case "NULL": - throw new Error("Tried to add non-numbers."); - } - switch (b.type) { - case "STRING": - case "OBJECT": - case "BOOLEAN": - case "NULL": - throw new Error("Tried to add non-numbers."); + // it should work to compare both int & string + if ( + !( + a.type == b.type && + ["INT", "FLOAT", "DOUBLE", "STRING"].includes(a.type) + ) + ) { + switch (a.type) { + case "STRING": + case "OBJECT": + case "BOOLEAN": + case "NULL": + throw new Error("Tried to add non-numbers.12a"); + } + switch (b.type) { + case "STRING": + case "OBJECT": + case "BOOLEAN": + case "NULL": + throw new Error("Tried to add non-numbers.12b"); + } } if (this.debug) { console.log(`${b.value} < ${a.value}`); @@ -222,19 +289,27 @@ class Interpreter { case 13: { const a = this.stack.pop(); const b = this.stack.pop(); - switch (a.type) { - case "STRING": - case "OBJECT": - case "BOOLEAN": - case "NULL": - throw new Error("Tried to add non-numbers."); - } - switch (b.type) { - case "STRING": - case "OBJECT": - case "BOOLEAN": - case "NULL": - throw new Error("Tried to add non-numbers."); + // it should work to compare both int & string + if ( + !( + a.type == b.type && + ["INT", "FLOAT", "DOUBLE", "STRING"].includes(a.type) + ) + ) { + switch (a.type) { + case "STRING": + case "OBJECT": + case "BOOLEAN": + case "NULL": + throw new Error("Tried to add non-numbers.13a"); + } + switch (b.type) { + case "STRING": + case "OBJECT": + case "BOOLEAN": + case "NULL": + throw new Error("Tried to add non-numbers.13b"); + } } if (this.debug) { console.log(`${b.value} < ${a.value}`); @@ -316,47 +391,61 @@ class Interpreter { assert( (obj.type === "OBJECT" && typeof obj.value) === "object" && obj.value != null, - `Guru Meditation: Tried to call method ${klass.name}.${methodName} on null object` + `Guru Meditation: Tried to call method ${klass.name}.${methodName} on null object. #${this.maki_id}` ); // let value = obj.value[methodName](...methodArgs); - let value; + let result = null; try { - value = obj.value[methodName](...methodArgs); + result = obj.value[methodName](...methodArgs); + // const afunction = obj.value[methodName]; + // if(afunction.constructor.name === 'AsyncFunction'){ + // result = await afunction(...methodArgs); + // } else { + // result = afunction(...methodArgs); + // } } catch (err) { + const args = JSON.stringify(methodArgs) + .replace("[", "") + .replace("]", ""); console.warn( - `error call: ${klass.name}.${methodName}(...${JSON.stringify( - methodArgs - )})`, + `error call: ${klass.name}.${methodName}(${args})`, `err: ${err.message} obj:`, obj ); - value = null; + result = null; } - if (value === undefined && returnType !== "NULL") { + if (result === undefined && returnType !== "NULL") { throw new Error( `Did not expect ${klass.name}.${methodName}: ${returnType} to return undefined` ); } - if (value === null) { + if (result === null) { // variables[1] holds global NULL value - value = this.variables[1]; + result = this.variables[1]; } if (returnType === "BOOLEAN") { - assert(typeof value === "boolean", "BOOL should return a boolean"); - value = value ? 1 : 0; + assert( + typeof result === "boolean", + `${ + klass.name + }.${methodName} should return a boolean, but "${JSON.stringify( + result + )}"` + ); + result = result ? 1 : 0; } if (returnType === "OBJECT") { assert( - typeof value === "object", - `Expected the returned value of ${klass.name}.${methodName} to be an object, but it was "${value}"` + typeof result === "object", + `Expected the returned value of ${klass.name}.${methodName} to be an object, but it was "${result}"` ); } if (this.debug) { console.log(`Calling method ${methodName}`); } - this.push({ type: returnType, value } as any); + this.push({ type: returnType, value: result } as any); break; } // callGlobal @@ -389,7 +478,23 @@ class Interpreter { `Type mismatch: ${a.type} != ${b.type} at ip: ${ip}` ); */ - b.value = a.value; + if (a.type == "OBJECT" && b.type == "OBJECT") { + // TODO: do attach bindings here now, since we got the variable type=object + // const objId = a.value instanceof BaseObject ? a.value.getId() : '!noid' + // console.log(objId, '=','dest:',b, 'src:',a) + } + if (b == null) { + // TypeError: Cannot set properties of undefined (setting 'value'): + const objId = + a.value instanceof BaseObject ? a.value.getId() : "!noid"; + console.log(objId, ":=", "dest:", b, "src:", a); + //b={value:null} + console.warn("Hey, can't move: b.value=a.value with b==nul;a=", a); + } + if (b != null) { + //temporary, to see what next problem ? + b.value = a.value; + } this.push(a); break; } @@ -455,12 +560,16 @@ class Interpreter { case 64: { const a = this.stack.pop(); const b = this.stack.pop(); + let a_value = a.value; + let b_value = b.value; switch (a.type) { - case "OBJECT": case "BOOLEAN": + a_value = a_value == 0 ? 0 : 1; + break; + case "OBJECT": case "NULL": throw new Error( - `Tried to add non-numbers: ${b.type} + ${a.type}.` + `Tried to add non-numbers: ${b.type} + ${a.type}.64a` ); case "STRING": if (b.type !== "STRING") { @@ -471,11 +580,20 @@ class Interpreter { } switch (b.type) { case "OBJECT": + throw new Error( + "Tried to add non-numbers.64b." + + `A:${a.type}=${a.value}` + + `B:${b.type}=${b.value}` + ); case "BOOLEAN": - throw new Error("Tried to add non-numbers."); + // BigBento: + // reset += (w == 0); + // reset += (w < min_w); + b_value = b_value == 0 ? 0 : 1; } // TODO: Do we need to round the value if INT? - this.push({ type: a.type, value: b.value + a.value }); + // this.push({ type: a.type, value: b.value + a.value }); + this.push({ type: a.type, value: b_value + a_value }); break; } // - (subtract) @@ -487,14 +605,14 @@ class Interpreter { case "OBJECT": case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.65a"); } switch (b.type) { case "STRING": case "OBJECT": case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.65b"); } // TODO: Do we need to round the value if INT? this.push({ type: a.type, value: b.value - a.value }); @@ -509,14 +627,14 @@ class Interpreter { case "OBJECT": case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.66a"); } switch (b.type) { case "STRING": case "OBJECT": case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.66b"); } // TODO: Do we need to round the value if INT? this.push({ type: a.type, value: b.value * a.value }); @@ -531,13 +649,13 @@ class Interpreter { case "OBJECT": case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.67a"); } switch (b.type) { case "STRING": case "OBJECT": case "BOOLEAN": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.67b"); } // TODO: Do we need to round the value if INT? this.push({ type: a.type, value: b.value / a.value }); @@ -552,13 +670,13 @@ class Interpreter { case "OBJECT": case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.68a"); } switch (b.type) { case "STRING": case "OBJECT": case "BOOLEAN": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.68b"); // Need to coerce LHS if not int, RHS is always int (enforced by compiler) case "FLOAT": case "DOUBLE": @@ -595,7 +713,7 @@ class Interpreter { case "OBJECT": case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.76a"); } this.push({ type: a.type, value: -a.value }); break; @@ -609,13 +727,13 @@ class Interpreter { case "STRING": case "OBJECT": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.80a"); } switch (b.type) { case "STRING": case "OBJECT": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.80b"); } if (b.value && a.value) { this.push(a); @@ -632,16 +750,16 @@ class Interpreter { switch (a.type) { case "STRING": case "OBJECT": - case "BOOLEAN": + // case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.81a :" + a.type); } switch (b.type) { case "STRING": case "OBJECT": - case "BOOLEAN": + // case "BOOLEAN": case "NULL": - throw new Error("Tried to add non-numbers."); + throw new Error("Tried to add non-numbers.81b"); } if (b.value) { this.push(b); @@ -665,7 +783,7 @@ class Interpreter { const classesOffset = command.arg; const guid = this.classes[classesOffset]; const Klass = this.classResolver(guid); - const klassInst = new Klass(); + const klassInst = new Klass(this._uiRoot); this.push({ type: "OBJECT", value: klassInst }); break; } diff --git a/packages/webamp-modern/src/maki/objectData/application.json b/packages/webamp-modern/src/maki/objectData/application.json index ec1a4f31..e8eeb831 100644 --- a/packages/webamp-modern/src/maki/objectData/application.json +++ b/packages/webamp-modern/src/maki/objectData/application.json @@ -1,78 +1,92 @@ { "B8E867B027154da7A5BA53DBA1FCFEAC": { "parent": "Object", + "name": "Application", + "deprecated": false, "functions": [ { - "result": "String", "name": "GetApplicationName", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "GetVersionString", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "GetVersionNumberString", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "int", "name": "GetBuildNumber", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "String", "name": "GetGUID", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "GetCommandLine", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "", "name": "Shutdown", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "CancelShutdown", - "parameters": [] - }, - { - "result": "boolean", - "name": "IsShuttingDown", - "parameters": [] - }, - { - "result": "String", - "name": "GetApplicationPath", - "parameters": [] - }, - { - "result": "String", - "name": "GetSettingsPath", - "parameters": [] - }, - { - "result": "String", - "name": "GetWorkingPath", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "IsShuttingDown", + "parameters": [], + "result": "boolean", + "deprecated": false + }, + { + "name": "GetApplicationPath", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "GetSettingsPath", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "GetWorkingPath", + "parameters": [], + "result": "String", + "deprecated": false + }, + { "name": "SetWorkingPath", "parameters": [ [ "String", "working_path" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "Application" + ] } } \ No newline at end of file diff --git a/packages/webamp-modern/src/maki/objectData/config.json b/packages/webamp-modern/src/maki/objectData/config.json index 9c70d82b..1f763125 100644 --- a/packages/webamp-modern/src/maki/objectData/config.json +++ b/packages/webamp-modern/src/maki/objectData/config.json @@ -1,29 +1,32 @@ { "593DBA22D0774976B952F4713655400B": { "parent": "Object", + "name": "Config", + "deprecated": false, "functions": [ { - "result": "ConfigItem", "name": "getItem", "parameters": [ [ "String", "item_name" ] - ] + ], + "result": "ConfigItem", + "deprecated": false }, { - "result": "ConfigItem", "name": "getItemByGuid", "parameters": [ [ "String", "item_guid" ] - ] + ], + "result": "ConfigItem", + "deprecated": false }, { - "result": "ConfigItem", "name": "newItem", "parameters": [ [ @@ -34,26 +37,29 @@ "String", "item_guid" ] - ] + ], + "result": "ConfigItem", + "deprecated": false } - ], - "name": "Config" + ] }, "D40302823AAB4d87878D12326FADFCD5": { "parent": "Object", + "name": "ConfigItem", + "deprecated": false, "functions": [ { - "result": "ConfigAttribute", "name": "getAttribute", "parameters": [ [ "String", "attr_name" ] - ] + ], + "result": "ConfigAttribute", + "deprecated": false }, { - "result": "ConfigAttribute", "name": "newAttribute", "parameters": [ [ @@ -64,60 +70,69 @@ "String", "default_value" ] - ] + ], + "result": "ConfigAttribute", + "deprecated": false }, { - "result": "String", "name": "getGuid", "parameters": [ [ "String", "attr_name" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getName", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false } - ], - "name": "ConfigItem" + ] }, "24DEC283B76E4a368CCC9E24C46B6C73": { "parent": "Object", + "name": "ConfigAttribute", + "deprecated": false, "functions": [ { - "result": "", "name": "setData", "parameters": [ [ "String", "value" ] - ] - }, - { - "result": "String", - "name": "getData", - "parameters": [] - }, - { + ], "result": "", - "name": "onDataChanged", - "parameters": [] - }, - { - "result": "ConfigItem", - "name": "getParentItem", - "parameters": [] + "deprecated": false }, { + "name": "getData", + "parameters": [], "result": "String", + "deprecated": false + }, + { + "name": "onDataChanged", + "parameters": [], + "result": "", + "deprecated": false + }, + { + "name": "getParentItem", + "parameters": [], + "result": "ConfigItem", + "deprecated": false + }, + { "name": "getAttributeName", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false } - ], - "name": "ConfigAttribute" + ] } } \ No newline at end of file diff --git a/packages/webamp-modern/src/maki/objectData/fileio.json b/packages/webamp-modern/src/maki/objectData/fileio.json new file mode 100644 index 00000000..044c107f --- /dev/null +++ b/packages/webamp-modern/src/maki/objectData/fileio.json @@ -0,0 +1,127 @@ +{ + "836F8B2EE0D14db4937F0D0A04C8DCD1": { + "parent": "Object", + "name": "File", + "deprecated": false, + "functions": [ + { + "name": "load", + "parameters": [ + [ + "String", + "path" + ] + ], + "result": "", + "deprecated": false + }, + { + "name": "exists", + "parameters": [], + "result": "boolean", + "deprecated": false + }, + { + "name": "getSize", + "parameters": [], + "result": "int", + "deprecated": false + } + ] + }, + "417FFB69987F4be88D87D9965EEEC868": { + "parent": "File", + "name": "XmlDoc", + "deprecated": false, + "functions": [ + { + "name": "parser_addCallback", + "parameters": [ + [ + "String", + "section" + ] + ], + "result": "", + "deprecated": false + }, + { + "name": "parser_start", + "parameters": [], + "result": "", + "deprecated": false + }, + { + "name": "parser_onCallback", + "parameters": [ + [ + "String", + "xmlpath" + ], + [ + "String", + "xmltag" + ], + [ + "list", + "paramname" + ], + [ + "list", + "paramvalue" + ] + ], + "result": "String", + "deprecated": false + }, + { + "name": "parser_onCloseCallback", + "parameters": [ + [ + "String", + "xmlpath" + ], + [ + "String", + "xmltag" + ] + ], + "result": "String", + "deprecated": false + }, + { + "name": "parser_onError", + "parameters": [ + [ + "String", + "filename" + ], + [ + "int", + "linenum" + ], + [ + "String", + "incpath" + ], + [ + "int", + "errcode" + ], + [ + "String", + "errstr" + ] + ], + "result": "String", + "deprecated": false + }, + { + "name": "parser_destroy", + "parameters": [], + "result": "String", + "deprecated": false + } + ] + } +} \ No newline at end of file diff --git a/packages/webamp-modern/src/maki/objectData/pldir.json b/packages/webamp-modern/src/maki/objectData/pldir.json index d96969fa..175e474d 100644 --- a/packages/webamp-modern/src/maki/objectData/pldir.json +++ b/packages/webamp-modern/src/maki/objectData/pldir.json @@ -1,74 +1,84 @@ { "345BEEBC0229492190BE6CB6A49A79D9": { "parent": "Object", + "name": "PlEdit", + "deprecated": false, "functions": [ { - "result": "int", "name": "getNumTracks", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "getCurrentIndex", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "getNumSelectedTracks", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "getNextSelectedTrack", "parameters": [ [ "int", "i" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "", "name": "showCurrentlyPlayingTrack", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "showTrack", "parameters": [ [ "int", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "enqueueFile", "parameters": [ [ "string", "file" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "clear", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "removeTrack", "parameters": [ [ "int", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "swapTracks", "parameters": [ [ @@ -79,30 +89,33 @@ "int", "item2" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "moveUp", "parameters": [ [ "int", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "moveDown", "parameters": [ [ "int", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "moveTo", "parameters": [ [ @@ -113,30 +126,33 @@ "int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "playTrack", "parameters": [ [ "int", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "int", "name": "getRating", "parameters": [ [ "int", "item" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "", "name": "setRating", "parameters": [ [ @@ -147,30 +163,33 @@ "int", "rating" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getTitle", "parameters": [ [ "int", "item" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getLength", "parameters": [ [ "int", "item" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getMetaData", "parameters": [ [ @@ -181,56 +200,64 @@ "String", "metadatastring" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getFileName", "parameters": [ [ "int", "item" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "onPleditModified", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false } - ], - "name": "PlEdit" + ] }, "61A7ABAD7D7941f6B1D0E1808603A4F4": { "parent": "Object", + "name": "PlDir", + "deprecated": false, "functions": [ { - "result": "int", "name": "getNumItems", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "String", "name": "getItemName", "parameters": [ [ "int", "item" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "showCurrentlyPlayingEntry", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "refresh", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "renameItem", "parameters": [ [ @@ -241,29 +268,32 @@ "String", "name" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "enqueueItem", "parameters": [ [ "int", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "playItem", "parameters": [ [ "int", "item" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "PlDir" + ] } } \ No newline at end of file diff --git a/packages/webamp-modern/src/maki/objectData/std.json b/packages/webamp-modern/src/maki/objectData/std.json index 3b71bd72..73266f36 100644 --- a/packages/webamp-modern/src/maki/objectData/std.json +++ b/packages/webamp-modern/src/maki/objectData/std.json @@ -1,19 +1,22 @@ { "516549710D874a5191E3A6B53235F3E7": { "parent": "@{00000000-0000-0000-0000-000000000000}@", + "name": "Object", + "deprecated": false, "functions": [ { - "result": "String", "name": "getClassName", - "parameters": [] - }, - { + "parameters": [], "result": "String", - "name": "getId", - "parameters": [] + "deprecated": false + }, + { + "name": "getId", + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "Int", "name": "onNotify", "parameters": [ [ @@ -32,31 +35,36 @@ "int", "b" ] - ] + ], + "result": "Int", + "deprecated": false } - ], - "name": "Object" + ] }, "D6F50F6493FA49b793F1BA66EFAE3E98": { "parent": "Object", + "name": "System", + "deprecated": false, "functions": [ { - "result": "", "name": "onScriptLoaded", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onScriptUnloading", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onQuit", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSetXuiParam", "parameters": [ [ @@ -67,20 +75,22 @@ "String", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onKeyDown", "parameters": [ [ "String", "key" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onAccelerator", "parameters": [ [ @@ -95,40 +105,44 @@ "String", "key" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onCreateLayout", "parameters": [ [ "Layout", "_layout" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onShowLayout", "parameters": [ [ "Layout", "_layout" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onHideLayout", "parameters": [ [ "Layout", "_layout" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onViewPortChanged", "parameters": [ [ @@ -139,80 +153,90 @@ "int", "height" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onStop", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onPlay", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onPause", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onResume", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onTitleChange", "parameters": [ [ "String", "newtitle" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onTitle2Change", "parameters": [ [ "String", "newtitle2" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onUrlChange", "parameters": [ [ "String", "url" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onInfoChange", "parameters": [ [ "String", "info" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onStatusMsg", "parameters": [ [ "String", "msg" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onEqBandChanged", "parameters": [ [ @@ -223,135 +247,149 @@ "int", "newvalue" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onEqPreampChanged", "parameters": [ [ "int", "newvalue" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onEqChanged", "parameters": [ [ "int", "newstatus" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onEqFreqChanged", "parameters": [ [ "int", "isiso" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onVolumeChanged", "parameters": [ [ "int", "newvol" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSeek", "parameters": [ [ "int", "newpos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Container", "name": "getContainer", "parameters": [ [ "String", "container_id" ] - ] + ], + "result": "Container", + "deprecated": false }, { - "result": "Container", "name": "newDynamicContainer", "parameters": [ [ "String", "container_id" ] - ] + ], + "result": "Container", + "deprecated": false }, { - "result": "Group", "name": "newGroup", "parameters": [ [ "String", "group_id" ] - ] + ], + "result": "Group", + "deprecated": false }, { - "result": "Layout", "name": "newGroupAsLayout", "parameters": [ [ "String", "group_id" ] - ] + ], + "result": "Layout", + "deprecated": false }, { - "result": "Int", "name": "getNumContainers", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Container", "name": "enumContainer", "parameters": [ [ "Int", "num" ] - ] + ], + "result": "Container", + "deprecated": false }, { - "result": "String", "name": "enumEmbedGUID", "parameters": [ [ "int", "num" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "Wac", "name": "getWac", "parameters": [ [ "String", "wac_guid" ] - ] + ], + "result": "Wac", + "deprecated": true }, { - "result": "Int", "name": "messageBox", "parameters": [ [ @@ -370,30 +408,34 @@ "String", "notanymore_id" ] - ] - }, - { - "result": "String", - "name": "getPlayItemString", - "parameters": [] - }, - { + ], "result": "Int", - "name": "getPlayItemLength", - "parameters": [] + "deprecated": false }, { + "name": "getPlayItemString", + "parameters": [], "result": "String", + "deprecated": false + }, + { + "name": "getPlayItemLength", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "getPlayItemMetaDataString", "parameters": [ [ "String", "metadataname" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getMetaDataString", "parameters": [ [ @@ -404,80 +446,89 @@ "String", "metadataname" ] - ] - }, - { + ], "result": "String", + "deprecated": false + }, + { "name": "getPlayItemDisplayTitle", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "Int", "name": "getCurrentTrackRating", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "onCurrentTrackRated", "parameters": [ [ "int", "rating" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setCurrentTrackRating", "parameters": [ [ "int", "rating" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getExtFamily", "parameters": [ [ "String", "ext" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getDecoderName", "parameters": [ [ "string", "playitem" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "playFile", "parameters": [ [ "String", "playitem" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getAlbumArt", "parameters": [ [ "String", "playitem" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "downloadMedia", "parameters": [ [ @@ -496,10 +547,11 @@ "boolean", "notifyDownloadsList" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "downloadURL", "parameters": [ [ @@ -514,10 +566,11 @@ "String", "progress_dialog_title" ] - ] + ], + "result": "", + "deprecated": true }, { - "result": "", "name": "onDownloadFinished", "parameters": [ [ @@ -532,105 +585,121 @@ "String", "filename" ] - ] - }, - { - "result": "String", - "name": "getDownloadPath", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getDownloadPath", + "parameters": [], + "result": "String", + "deprecated": false + }, + { "name": "setDownloadPath", "parameters": [ [ "String", "new_path" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "enqueueFile", "parameters": [ [ "String", "playitem" ] - ] - }, - { - "result": "Int", - "name": "getLeftVuMeter", - "parameters": [] - }, - { - "result": "Int", - "name": "getRightVuMeter", - "parameters": [] - }, - { - "result": "Int", - "name": "getVolume", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getLeftVuMeter", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getRightVuMeter", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getVolume", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setVolume", "parameters": [ [ "Int", "vol" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "play", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "stop", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "pause", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "next", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "previous", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "eject", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "seekTo", "parameters": [ [ "Int", "pos" ] - ] - }, - { - "result": "Int", - "name": "getPosition", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getPosition", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setEqBand", "parameters": [ [ @@ -641,80 +710,90 @@ "Int", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setEqPreamp", "parameters": [ [ "Int", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setEq", "parameters": [ [ "Int", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getEqBand", "parameters": [ [ "int", "band" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "int", "name": "getEqPreamp", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "getEq", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "getMousePosX", - "parameters": [] - }, - { + "parameters": [], "result": "int", - "name": "getMousePosY", - "parameters": [] + "deprecated": false + }, + { + "name": "getMousePosY", + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "String", "name": "integerToString", "parameters": [ [ "Int", "value" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "Int", "name": "StringToInteger", "parameters": [ [ "String", "str" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "String", "name": "floatToString", "parameters": [ [ @@ -725,175 +804,193 @@ "int", "ndigits" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "Float", "name": "stringToFloat", "parameters": [ [ "String", "str" ] - ] + ], + "result": "Float", + "deprecated": false }, { - "result": "String", "name": "integerToLongTime", "parameters": [ [ "Int", "value" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "integerToTime", "parameters": [ [ "Int", "value" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "dateToTime", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "dateToLongTime", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "formatDate", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "formatLongDate", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "Int", "name": "getDateYear", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getDateMonth", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getDateDay", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getDateDow", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getDateDoy", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getDateHour", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getDateMin", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getDateSec", "parameters": [ [ "Int", "datetime" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getDateDst", "parameters": [ [ "Int", "datetime" ] - ] - }, - { + ], "result": "Int", - "name": "getDate", - "parameters": [] + "deprecated": false + }, + { + "name": "getDate", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "String", "name": "strmid", "parameters": [ [ @@ -908,10 +1005,11 @@ "Int", "len" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "strleft", "parameters": [ [ @@ -922,10 +1020,11 @@ "int", "nchars" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "string", "name": "strright", "parameters": [ [ @@ -936,10 +1035,11 @@ "int", "nchars" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "int", "name": "strsearch", "parameters": [ [ @@ -950,100 +1050,110 @@ "string", "substr" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "strlen", "parameters": [ [ "string", "str" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "string", "name": "strupper", "parameters": [ [ "string", "str" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "string", "name": "strlower", "parameters": [ [ "string", "str" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "string", "name": "urlEncode", "parameters": [ [ "string", "url" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "string", "name": "urlDecode", "parameters": [ [ "string", "url" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "string", "name": "parseATF", "parameters": [ [ "string", "topass" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "string", "name": "removePath", "parameters": [ [ "string", "str" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "string", "name": "getPath", "parameters": [ [ "string", "str" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "string", "name": "getExtension", "parameters": [ [ "string", "str" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "string", "name": "getToken", "parameters": [ [ @@ -1058,70 +1168,77 @@ "int", "tokennum" ] - ] + ], + "result": "string", + "deprecated": false }, { - "result": "double", "name": "sin", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "cos", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "tan", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "asin", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "acos", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "atan", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "atan2", "parameters": [ [ @@ -1132,10 +1249,11 @@ "double", "x" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "pow", "parameters": [ [ @@ -1146,60 +1264,66 @@ "double", "pvalue" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "sqr", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "log10", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "ln", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "double", "name": "sqrt", "parameters": [ [ "double", "value" ] - ] + ], + "result": "double", + "deprecated": false }, { - "result": "int", "name": "random", "parameters": [ [ "int", "max" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "", "name": "setPrivateString", "parameters": [ [ @@ -1214,10 +1338,11 @@ "string", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setPrivateInt", "parameters": [ [ @@ -1232,10 +1357,11 @@ "int", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getPrivateString", "parameters": [ [ @@ -1250,10 +1376,11 @@ "String", "defvalue" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "Int", "name": "getPrivateInt", "parameters": [ [ @@ -1268,10 +1395,11 @@ "Int", "defvalue" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setPublicString", "parameters": [ [ @@ -1282,10 +1410,11 @@ "String", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setPublicInt", "parameters": [ [ @@ -1296,10 +1425,11 @@ "Int", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getPublicString", "parameters": [ [ @@ -1310,10 +1440,11 @@ "String", "defvalue" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "Int", "name": "getPublicInt", "parameters": [ [ @@ -1324,35 +1455,40 @@ "Int", "defvalue" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "String", "name": "getParam", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "Group", "name": "getScriptGroup", - "parameters": [] + "parameters": [], + "result": "Group", + "deprecated": false }, { - "result": "Int", "name": "getViewportWidth", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportWidthFromGuiObject", "parameters": [ [ "GuiObject", "g" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportWidthFromPoint", "parameters": [ [ @@ -1363,15 +1499,17 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorWidth", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorWidthFromPoint", "parameters": [ [ @@ -1382,20 +1520,22 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorWidthFromGuiObject", "parameters": [ [ "GuiObject", "g" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "onMouseMove", "parameters": [ [ @@ -1406,25 +1546,28 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getViewportHeight", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportHeightFromGuiObject", "parameters": [ [ "GuiObject", "g" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportHeightFromPoint", "parameters": [ [ @@ -1435,15 +1578,17 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorHeight", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorHeightFromPoint", "parameters": [ [ @@ -1454,35 +1599,39 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorHeightFromGuiObject", "parameters": [ [ "GuiObject", "g" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorLeft", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorLeftFromGuiObject", "parameters": [ [ "GuiObject", "g" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorLeftFromPoint", "parameters": [ [ @@ -1493,25 +1642,28 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorTop", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorTopFromGuiObject", "parameters": [ [ "GuiObject", "g" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMonitorTopFromPoint", "parameters": [ [ @@ -1522,25 +1674,28 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportLeft", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportLeftFromGuiObject", "parameters": [ [ "GuiObject", "g" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportLeftFromPoint", "parameters": [ [ @@ -1551,25 +1706,28 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportTop", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportTopFromGuiObject", "parameters": [ [ "GuiObject", "g" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getViewportTopFromPoint", "parameters": [ [ @@ -1580,10 +1738,11 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "debugString", "parameters": [ [ @@ -1594,10 +1753,11 @@ "Int", "severity" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "ddeSend", "parameters": [ [ @@ -1612,160 +1772,182 @@ "Int", "mininterval" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "WindowHolder", "name": "onLookForComponent", "parameters": [ [ "String", "guid" ] - ] + ], + "result": "WindowHolder", + "deprecated": false }, { - "result": "Int", "name": "getCurAppLeft", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getCurAppTop", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getCurAppWidth", - "parameters": [] - }, - { + "parameters": [], "result": "Int", + "deprecated": false + }, + { "name": "getCurAppHeight", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Boolean", "name": "isAppActive", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": false }, { - "result": "String", "name": "getSkinName", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "", "name": "switchSkin", "parameters": [ [ "String", "skinname" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "isLoadingSkin", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "lockUI", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "unlockUI", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Browser", "name": "getMainBrowser", - "parameters": [] + "parameters": [], + "result": "Browser", + "deprecated": false }, { - "result": "", "name": "popMainBrowser", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "navigateUrl", "parameters": [ [ "String", "url" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "navigateUrlBrowser", "parameters": [ [ "String", "url" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "onOpenURL", "parameters": [ [ "string", "url" ] - ] + ], + "result": "Boolean", + "deprecated": false }, { - "result": "Boolean", "name": "isObjectValid", "parameters": [ [ "Object", "o" ] - ] + ], + "result": "Boolean", + "deprecated": false }, { - "result": "Int", "name": "integer", "parameters": [ [ "Double", "d" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Double", "name": "frac", "parameters": [ [ "Double", "d" ] - ] + ], + "result": "Double", + "deprecated": false }, { - "result": "Int", "name": "getTimeOfDay", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setMenuTransparency", "parameters": [ [ "int", "alphavalue" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "onGetCancelComponent", "parameters": [ [ @@ -1776,55 +1958,61 @@ "boolean", "goingvisible" ] - ] + ], + "result": "Boolean", + "deprecated": false }, { - "result": "Int", "name": "getStatus", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "isKeyDown", "parameters": [ [ "int", "vk_code" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setClipboardText", "parameters": [ [ "String", "_text" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "Chr", "parameters": [ [ "Int", "charnum" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "translate", "parameters": [ [ "String", "str" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getString", "parameters": [ [ @@ -1835,15 +2023,17 @@ "int", "id" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getLanguageId", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "selectFile", "parameters": [ [ @@ -1858,10 +2048,11 @@ "String", "prev_filename" ] - ] + ], + "result": "String", + "deprecated": true }, { - "result": "String", "name": "selectFolder", "parameters": [ [ @@ -1876,20 +2067,23 @@ "String", "default_path" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "systemMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "windowMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "triggerAction", "parameters": [ [ @@ -1904,10 +2098,11 @@ "String", "actionparam" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "GuiObject", "name": "showWindow", "parameters": [ [ @@ -1922,40 +2117,44 @@ "Boolean", "transient" ] - ] + ], + "result": "GuiObject", + "deprecated": false }, { - "result": "", "name": "hideWindow", "parameters": [ [ "GuiObject", "hw" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "hideNamedWindow", "parameters": [ [ "String", "guidorgroup" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "isNamedWindowVisible", "parameters": [ [ "String", "guidorgroup" ] - ] + ], + "result": "Boolean", + "deprecated": false }, { - "result": "", "name": "setAtom", "parameters": [ [ @@ -1966,110 +2165,130 @@ "Object", "object" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Object", "name": "getAtom", "parameters": [ [ "String", "atomname" ] - ] + ], + "result": "Object", + "deprecated": false }, { - "result": "", "name": "invokeDebugger", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "int", "name": "hasVideoSupport", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "Int", "name": "isVideo", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "isVideoFullscreen", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getIdealVideoWidth", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getIdealVideoHeight", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "isMinimized", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "minimizeApplication", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "restoreApplication", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "activateApplication", - "parameters": [] - }, - { - "result": "Int", - "name": "getPlaylistLength", - "parameters": [] - }, - { - "result": "Int", - "name": "getPlaylistIndex", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "getPlaylistLength", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getPlaylistIndex", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "clearPlaylist", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "isDesktopAlphaAvailable", - "parameters": [] - }, - { + "parameters": [], "result": "Boolean", + "deprecated": false + }, + { "name": "isTransparencyAvailable", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": false }, { - "result": "Int", "name": "onShowNotification", - "parameters": [] - }, - { - "result": "String", - "name": "getSongInfoText", - "parameters": [] - }, - { - "result": "String", - "name": "getSongInfoTextTranslated", - "parameters": [] - }, - { + "parameters": [], "result": "Int", + "deprecated": false + }, + { + "name": "getSongInfoText", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "getSongInfoTextTranslated", + "parameters": [], + "result": "String", + "deprecated": false + }, + { "name": "getVisBand", "parameters": [ [ @@ -2080,76 +2299,86 @@ "int", "band" ] - ] - }, - { - "result": "Double", - "name": "getRuntimeVersion", - "parameters": [] - }, - { + ], "result": "Int", + "deprecated": false + }, + { + "name": "getRuntimeVersion", + "parameters": [], + "result": "Double", + "deprecated": false + }, + { "name": "isWa2ComponentVisible", "parameters": [ [ "String", "guid" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "hideWa2Component", "parameters": [ [ "String", "guid" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "boolean", "name": "isProVersion", - "parameters": [] + "parameters": [], + "result": "boolean", + "deprecated": false }, { - "result": "String", "name": "getWinampVersion", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "Int", "name": "getBuildNumber", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "int", "name": "getFileSize", "parameters": [ [ "String", "fullfilename" ] - ] + ], + "result": "int", + "deprecated": false } - ], - "name": "System" + ] }, "E90DC47B840D4ae7B02C040BD275F7FC": { "parent": "Object", + "name": "Container", + "deprecated": false, "functions": [ { - "result": "", "name": "onSwitchToLayout", "parameters": [ [ "Layout", "newlayout" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onBeforeSwitchToLayout", "parameters": [ [ @@ -2160,10 +2389,11 @@ "Layout", "newlayout" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setXmlParam", "parameters": [ [ @@ -2174,115 +2404,131 @@ "String", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onHideLayout", "parameters": [ [ "Layout", "_layout" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onShowLayout", "parameters": [ [ "Layout", "_layout" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Layout", "name": "getLayout", "parameters": [ [ "String", "layout_id" ] - ] - }, - { - "result": "Int", - "name": "getNumLayouts", - "parameters": [] - }, - { + ], "result": "Layout", + "deprecated": false + }, + { + "name": "getNumLayouts", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "enumLayout", "parameters": [ [ "Int", "num" ] - ] + ], + "result": "Layout", + "deprecated": false }, { - "result": "", "name": "switchToLayout", "parameters": [ [ "String", "layout_id" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "show", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "hide", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "close", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "toggle", - "parameters": [] - }, - { - "result": "Int", - "name": "isDynamic", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "isDynamic", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setName", "parameters": [ [ "String", "name" ] - ] - }, - { - "result": "String", - "name": "getName", - "parameters": [] - }, - { - "result": "String", - "name": "getGuid", - "parameters": [] - }, - { - "result": "Layout", - "name": "getCurLayout", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getName", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "getGuid", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "getCurLayout", + "parameters": [], + "result": "Layout", + "deprecated": false + }, + { "name": "onAddContent", "parameters": [ [ @@ -2297,26 +2543,30 @@ "String", "guid" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "Container" + ] }, "00C074A0FEA249a0BE8DFABBDB161640": { "parent": "Object", + "name": "Wac", + "deprecated": true, "functions": [ { - "result": "String", "name": "getGuid", - "parameters": [] - }, - { + "parameters": [], "result": "String", - "name": "getName", - "parameters": [] + "deprecated": true + }, + { + "name": "getName", + "parameters": [], + "result": "String", + "deprecated": true }, { - "result": "Int", "name": "sendCommand", "parameters": [ [ @@ -2335,25 +2585,29 @@ "String", "param3" ] - ] + ], + "result": "Int", + "deprecated": true }, { - "result": "", "name": "show", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true }, { - "result": "", "name": "hide", - "parameters": [] - }, - { - "result": "Boolean", - "name": "isVisible", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": true + }, + { + "name": "isVisible", + "parameters": [], + "result": "Boolean", + "deprecated": true + }, + { "name": "onNotify", "parameters": [ [ @@ -2368,81 +2622,91 @@ "Int", "b" ] - ] + ], + "result": "", + "deprecated": true }, { - "result": "", "name": "onShow", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true }, { - "result": "", "name": "onHide", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true }, { - "result": "", "name": "setStatusBar", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": true }, { - "result": "Boolean", "name": "getStatusBar", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": true } - ], - "name": "Wac" + ] }, "B2023AB5434D4ba1BEAE59637503F3C6": { "parent": "Object", + "name": "List", + "deprecated": false, "functions": [ { - "result": "", "name": "addItem", "parameters": [ [ "Any", "_object" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "removeItem", "parameters": [ [ "int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Any", "name": "enumItem", "parameters": [ [ "int", "pos" ] - ] + ], + "result": "Any", + "deprecated": false }, { - "result": "Int", "name": "findItem", "parameters": [ [ "Any", "_object" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "findItem2", "parameters": [ [ @@ -2453,36 +2717,41 @@ "int", "startItem" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "int", "name": "getNumItems", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "", "name": "removeAll", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false } - ], - "name": "List" + ] }, "87C65778E74349fe85F909CC532AFD56": { "parent": "Object", + "name": "BitList", + "deprecated": false, "functions": [ { - "result": "boolean", "name": "getItem", "parameters": [ [ "int", "n" ] - ] + ], + "result": "boolean", + "deprecated": false }, { - "result": "", "name": "setItem", "parameters": [ [ @@ -2493,31 +2762,35 @@ "boolean", "val" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setSize", "parameters": [ [ "int", "s" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "int", "name": "getSize", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false } - ], - "name": "BitList" + ] }, "38603665461B42a7AA75D83F6667BF73": { "parent": "Object", + "name": "Map", + "deprecated": false, "functions": [ { - "result": "Int", "name": "getValue", "parameters": [ [ @@ -2528,10 +2801,11 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getARGBValue", "parameters": [ [ @@ -2546,10 +2820,11 @@ "int", "channel" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Boolean", "name": "inRegion", "parameters": [ [ @@ -2560,41 +2835,47 @@ "int", "y" ] - ] + ], + "result": "Boolean", + "deprecated": false }, { - "result": "", "name": "loadMap", "parameters": [ [ "String", "bitmapid" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getWidth", - "parameters": [] - }, - { + "parameters": [], "result": "Int", - "name": "getHeight", - "parameters": [] + "deprecated": false + }, + { + "name": "getHeight", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Region", "name": "getRegion", - "parameters": [] + "parameters": [], + "result": "Region", + "deprecated": false } - ], - "name": "Map" + ] }, "F4787AF4B2BB4ef79CFBE74BA9BEA88D": { "parent": "Object", + "name": "PopupMenu", + "deprecated": false, "functions": [ { - "result": "", "name": "addSubMenu", "parameters": [ [ @@ -2605,10 +2886,11 @@ "String", "submenutext" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "addCommand", "parameters": [ [ @@ -2627,15 +2909,17 @@ "Boolean", "disabled" ] - ] - }, - { + ], "result": "", - "name": "addSeparator", - "parameters": [] + "deprecated": false + }, + { + "name": "addSeparator", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "popAtXY", "parameters": [ [ @@ -2646,20 +2930,23 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "popAtMouse", - "parameters": [] - }, - { + "parameters": [], "result": "Int", - "name": "getNumCommands", - "parameters": [] + "deprecated": false + }, + { + "name": "getNumCommands", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "checkCommand", "parameters": [ [ @@ -2670,10 +2957,11 @@ "boolean", "check" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "disableCommand", "parameters": [ [ @@ -2684,36 +2972,40 @@ "boolean", "disable" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "PopupMenu" + ] }, "3A370C023CBF439f84F186885BCF1E36": { "parent": "Object", + "name": "Region", + "deprecated": false, "functions": [ { - "result": "", "name": "add", "parameters": [ [ "Region", "reg" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "sub", "parameters": [ [ "Region", "reg" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "offset", "parameters": [ [ @@ -2724,30 +3016,33 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "stretch", "parameters": [ [ "double", "r" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "copy", "parameters": [ [ "Region", "reg" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "loadFromMap", "parameters": [ [ @@ -2762,163 +3057,188 @@ "Boolean", "reversed" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "loadFromBitmap", "parameters": [ [ "String", "bitmapid" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getBoundingBoxX", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getBoundingBoxY", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getBoundingBoxW", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getBoundingBoxH", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false } - ], - "name": "Region" + ] }, "5D0C5BB67DE14b1fA70F8D1659941941": { "parent": "Object", + "name": "Timer", + "deprecated": false, "functions": [ { - "result": "", "name": "onTimer", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setDelay", "parameters": [ [ "int", "millisec" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getDelay", - "parameters": [] - }, - { - "result": "", - "name": "start", - "parameters": [] - }, - { - "result": "", - "name": "stop", - "parameters": [] - }, - { - "result": "", - "name": "isRunning", - "parameters": [] - }, - { + "parameters": [], "result": "Int", + "deprecated": false + }, + { + "name": "start", + "parameters": [], + "result": "", + "deprecated": false + }, + { + "name": "stop", + "parameters": [], + "result": "", + "deprecated": false + }, + { + "name": "isRunning", + "parameters": [], + "result": "", + "deprecated": false + }, + { "name": "getSkipped", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false } - ], - "name": "Timer" + ] }, "A5376FA14E94411a83F605EC5EEA5F0A": { "parent": "Object", + "name": "FeedWatcher", + "deprecated": true, "functions": [ { - "result": "Int", "name": "setFeed", "parameters": [ [ "String", "feed_id" ] - ] + ], + "result": "Int", + "deprecated": true }, { - "result": "", "name": "releaseFeed", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true }, { - "result": "", "name": "onFeedChange", "parameters": [ [ "String", "new_feeddata" ] - ] + ], + "result": "", + "deprecated": true } - ], - "name": "FeedWatcher" + ] }, "4EE3E199C6364bec97CD78BC9C8628B0": { "parent": "Object", + "name": "GuiObject", + "deprecated": false, "functions": [ { - "result": "", "name": "show", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "hide", - "parameters": [] - }, - { - "result": "int", - "name": "isVisible", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "isVisible", + "parameters": [], + "result": "int", + "deprecated": false + }, + { "name": "onSetVisible", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setAlpha", "parameters": [ [ "int", "alpha" ] - ] - }, - { - "result": "int", - "name": "getAlpha", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getAlpha", + "parameters": [], + "result": "int", + "deprecated": false + }, + { "name": "onLeftButtonUp", "parameters": [ [ @@ -2929,10 +3249,11 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onLeftButtonDown", "parameters": [ [ @@ -2943,10 +3264,11 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onRightButtonUp", "parameters": [ [ @@ -2957,10 +3279,11 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onRightButtonDown", "parameters": [ [ @@ -2971,10 +3294,11 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onRightButtonDblClk", "parameters": [ [ @@ -2985,10 +3309,11 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onLeftButtonDblClk", "parameters": [ [ @@ -2999,10 +3324,11 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "int", "name": "onMouseWheelUp", "parameters": [ [ @@ -3013,10 +3339,11 @@ "int", "lines" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "onMouseWheelDown", "parameters": [ [ @@ -3027,10 +3354,11 @@ "int", "lines" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "", "name": "onMouseMove", "parameters": [ [ @@ -3041,45 +3369,51 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onEnterArea", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onLeaveArea", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setEnabled", "parameters": [ [ "boolean", "onoff" ] - ] - }, - { - "result": "boolean", - "name": "getEnabled", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getEnabled", + "parameters": [], + "result": "boolean", + "deprecated": false + }, + { "name": "onEnable", "parameters": [ [ "boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "resize", "parameters": [ [ @@ -3098,10 +3432,11 @@ "int", "h" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onResize", "parameters": [ [ @@ -3120,10 +3455,11 @@ "int", "h" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "boolean", "name": "isMouseOver", "parameters": [ [ @@ -3134,125 +3470,142 @@ "int", "y" ] - ] + ], + "result": "boolean", + "deprecated": false }, { - "result": "int", "name": "getLeft", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "getTop", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "getWidth", - "parameters": [] - }, - { + "parameters": [], "result": "int", - "name": "getHeight", - "parameters": [] + "deprecated": false + }, + { + "name": "getHeight", + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "", "name": "setTargetX", "parameters": [ [ "int", "x" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setTargetY", "parameters": [ [ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setTargetW", "parameters": [ [ "int", "w" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setTargetH", "parameters": [ [ "int", "r" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setTargetA", "parameters": [ [ "int", "alpha" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setTargetSpeed", "parameters": [ [ "float", "insecond" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "gotoTarget", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onTargetReached", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "cancelTarget", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "reverseTarget", "parameters": [ [ "int", "reverse" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onStartup", - "parameters": [] - }, - { - "result": "boolean", - "name": "isGoingToTarget", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "isGoingToTarget", + "parameters": [], + "result": "boolean", + "deprecated": false + }, + { "name": "setXmlParam", "parameters": [ [ @@ -3263,145 +3616,167 @@ "String", "value" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getXmlParam", "parameters": [ [ "String", "param" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "init", "parameters": [ [ "Group", "parent" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "bringToFront", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "bringToBack", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "bringAbove", "parameters": [ [ "GuiObject", "guiobj" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "bringBelow", "parameters": [ [ "GuiObject", "guiobj" ] - ] - }, - { - "result": "Int", - "name": "getGuiX", - "parameters": [] - }, - { - "result": "Int", - "name": "getGuiY", - "parameters": [] - }, - { - "result": "Int", - "name": "getGuiW", - "parameters": [] - }, - { - "result": "Int", - "name": "getGuiH", - "parameters": [] - }, - { - "result": "Int", - "name": "getGuiRelatX", - "parameters": [] - }, - { - "result": "Int", - "name": "getGuiRelatY", - "parameters": [] - }, - { - "result": "Int", - "name": "getGuiRelatW", - "parameters": [] - }, - { - "result": "Int", - "name": "getGuiRelatH", - "parameters": [] - }, - { - "result": "Boolean", - "name": "isActive", - "parameters": [] - }, - { - "result": "GuiObject", - "name": "getParent", - "parameters": [] - }, - { - "result": "Layout", - "name": "getParentLayout", - "parameters": [] - }, - { - "result": "GuiObject", - "name": "getTopParent", - "parameters": [] - }, - { - "result": "int", - "name": "runModal", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getGuiX", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getGuiY", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getGuiW", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getGuiH", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getGuiRelatX", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getGuiRelatY", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getGuiRelatW", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getGuiRelatH", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "isActive", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { + "name": "getParent", + "parameters": [], + "result": "GuiObject", + "deprecated": false + }, + { + "name": "getParentLayout", + "parameters": [], + "result": "Layout", + "deprecated": false + }, + { + "name": "getTopParent", + "parameters": [], + "result": "GuiObject", + "deprecated": false + }, + { + "name": "runModal", + "parameters": [], + "result": "int", + "deprecated": false + }, + { "name": "endModal", "parameters": [ [ "int", "retcode" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "GuiObject", "name": "findObject", "parameters": [ [ "String", "id" ] - ] + ], + "result": "GuiObject", + "deprecated": false }, { - "result": "GuiObject", "name": "findObjectXY", "parameters": [ [ @@ -3412,150 +3787,168 @@ "int", "y" ] - ] + ], + "result": "GuiObject", + "deprecated": false }, { - "result": "String", "name": "getName", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "int", "name": "clientToScreenX", "parameters": [ [ "int", "x" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "clientToScreenY", "parameters": [ [ "int", "y" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "clientToScreenW", "parameters": [ [ "int", "w" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "clientToScreenH", "parameters": [ [ "int", "h" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "screenToClientX", "parameters": [ [ "int", "x" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "screenToClientY", "parameters": [ [ "int", "y" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "screenToClientW", "parameters": [ [ "int", "w" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "screenToClientH", "parameters": [ [ "int", "h" ] - ] + ], + "result": "int", + "deprecated": false }, { - "result": "int", "name": "getAutoWidth", - "parameters": [] - }, - { + "parameters": [], "result": "int", + "deprecated": false + }, + { "name": "getAutoHeight", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false }, { - "result": "", "name": "setFocus", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onChar", "parameters": [ [ "String", "c" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onAccelerator", "parameters": [ [ "String", "accel" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "isMouseOverRect", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": false }, { - "result": "Object", "name": "getInterface", "parameters": [ [ "String", "interface_guid" ] - ] + ], + "result": "Object", + "deprecated": false }, { - "result": "", "name": "onDragEnter", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onDragOver", "parameters": [ [ @@ -3566,45 +3959,51 @@ "int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onDragLeave", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onKeyDown", "parameters": [ [ "int", "vk_code" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onKeyUp", "parameters": [ [ "int", "vk_code" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onGetFocus", - "parameters": [] - }, - { + "parameters": [], "result": "", - "name": "onKillFocus", - "parameters": [] + "deprecated": false + }, + { + "name": "onKillFocus", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "sendAction", "parameters": [ [ @@ -3631,10 +4030,11 @@ "int", "p2" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onAction", "parameters": [ [ @@ -3665,147 +4065,168 @@ "GuiObject", "source" ] - ] + ], + "result": "Int", + "deprecated": false } - ], - "name": "GuiObject" + ] }, "45BE95E520724191935CBB5FF9F117FD": { "parent": "GuiObject", + "name": "Group", + "deprecated": false, "functions": [ { - "result": "GuiObject", "name": "getObject", "parameters": [ [ "String", "object_id" ] - ] - }, - { - "result": "Int", - "name": "getNumObjects", - "parameters": [] - }, - { + ], "result": "GuiObject", + "deprecated": false + }, + { + "name": "getNumObjects", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "enumObject", "parameters": [ [ "Int", "num" ] - ] + ], + "result": "GuiObject", + "deprecated": false }, { - "result": "", "name": "onCreateObject", "parameters": [ [ "GuiObject", "newobj" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getMousePosX", - "parameters": [] - }, - { + "parameters": [], "result": "Int", - "name": "getMousePosY", - "parameters": [] + "deprecated": false + }, + { + "name": "getMousePosY", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Boolean", "name": "isLayout", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": false } - ], - "name": "Group" + ] }, "60906D4E537E482eB004CC9461885672": { "parent": "Group", + "name": "Layout", + "deprecated": false, "functions": [ { - "result": "", "name": "onDock", "parameters": [ [ "int", "side" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onUndock", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onScale", "parameters": [ [ "Double", "newscalevalue" ] - ] - }, - { - "result": "Double", - "name": "getScale", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getScale", + "parameters": [], + "result": "Double", + "deprecated": false + }, + { "name": "setScale", "parameters": [ [ "Double", "scalevalue" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setDesktopAlpha", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "getDesktopAlpha", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": false }, { - "result": "Container", "name": "getContainer", - "parameters": [] + "parameters": [], + "result": "Container", + "deprecated": false }, { - "result": "", "name": "center", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onMove", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onEndMove", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onUserResize", "parameters": [ [ @@ -3824,10 +4245,11 @@ "int", "h" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "snapAdjust", "parameters": [ [ @@ -3846,81 +4268,95 @@ "int", "bottom" ] - ] - }, - { - "result": "Int", - "name": "getSnapAdjustTop", - "parameters": [] - }, - { - "result": "Int", - "name": "getSnapAdjustRight", - "parameters": [] - }, - { - "result": "Int", - "name": "getSnapAdjustLeft", - "parameters": [] - }, - { - "result": "Int", - "name": "getSnapAdjustBottom", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getSnapAdjustTop", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getSnapAdjustRight", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getSnapAdjustLeft", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getSnapAdjustBottom", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setRedrawOnResize", "parameters": [ [ "int", "wantredrawonresize" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "beforeRedock", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "redock", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "isTransparencySafe", - "parameters": [] - }, - { + "parameters": [], "result": "Boolean", + "deprecated": false + }, + { "name": "isLayoutAnimationSafe", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": false }, { - "result": "", "name": "onMouseEnterLayout", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onMouseLeaveLayout", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSnapAdjustChanged", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false } - ], - "name": "Layout" + ] }, "403ABCC06F224bd68BA410C829932547": { "parent": "GuiObject", + "name": "WindowHolder", + "deprecated": false, "functions": [ { - "result": "", "name": "setRegionFromMap", "parameters": [ [ @@ -3935,355 +4371,407 @@ "Boolean", "reverse" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setRegion", "parameters": [ [ "Region", "reg" ] - ] - }, - { - "result": "GuiObject", - "name": "getContent", - "parameters": [] - }, - { - "result": "String", - "name": "getGuid", - "parameters": [] - }, - { - "result": "String", - "name": "getComponentName", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getContent", + "parameters": [], + "result": "GuiObject", + "deprecated": false + }, + { + "name": "getGuid", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "getComponentName", + "parameters": [], + "result": "String", + "deprecated": false + }, + { "name": "onGetWac", "parameters": [ [ "Wac", "wacobj" ] - ] + ], + "result": "", + "deprecated": true }, { - "result": "", "name": "onGiveUpWac", "parameters": [ [ "Wac", "wacobj" ] - ] - }, - { - "result": "Wac", - "name": "getWac", - "parameters": [] - }, - { + ], "result": "", + "deprecated": true + }, + { + "name": "getWac", + "parameters": [], + "result": "Wac", + "deprecated": true + }, + { "name": "setAcceptWac", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": true } - ], - "name": "WindowHolder" + ] }, "97AA3E4DF4D04fa8817B0AF22A454983": { "parent": "GuiObject", + "name": "ComponentBucket", + "deprecated": false, "functions": [ { - "result": "Int", "name": "getMaxHeight", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getMaxWidth", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "setScroll", "parameters": [ [ "int", "x" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getScroll", - "parameters": [] - }, - { + "parameters": [], "result": "Int", - "name": "getNumChildren", - "parameters": [] + "deprecated": false + }, + { + "name": "getNumChildren", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "GuiObject", "name": "enumChildren", "parameters": [ [ "int", "n" ] - ] + ], + "result": "GuiObject", + "deprecated": false } - ], - "name": "ComponentBucket" + ] }, "64E4BBFA81F449d9B0C0A85B2EC3BCFD": { "parent": "GuiObject", + "name": "Edit", + "deprecated": false, "functions": [ { - "result": "", "name": "onEnter", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onAbort", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onIdleEditUpdate", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onEditUpdate", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setText", "parameters": [ [ "String", "txt" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setAutoEnter", "parameters": [ [ "boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getAutoEnter", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "String", "name": "getText", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "", "name": "selectAll", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "enter", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setIdleEnabled", "parameters": [ [ "boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getIdleEnabled", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false } - ], - "name": "Edit" + ] }, "62B65E3F375E408d8DEA76814AB91B77": { "parent": "GuiObject", + "name": "Slider", + "deprecated": false, "functions": [ { - "result": "", "name": "onSetPosition", "parameters": [ [ "int", "newpos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onPostedPosition", "parameters": [ [ "int", "newpos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSetFinalPosition", "parameters": [ [ "int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setPosition", "parameters": [ [ "int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getPosition", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "lock", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "unlock", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false } - ], - "name": "Slider" + ] }, "CE4F97BE77B04e199956D49833C96C27": { "parent": "GuiObject", + "name": "Vis", + "deprecated": false, "functions": [ { - "result": "", "name": "onFrame", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setRealtime", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "getRealtime", - "parameters": [] - }, - { - "result": "Int", - "name": "getMode", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getRealtime", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { + "name": "getMode", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setMode", "parameters": [ [ "Int", "mode" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "nextMode", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false } - ], - "name": "Vis" + ] }, "A8C2200D51EB4b2aBA7F5D4BC65D4C71": { "parent": "GuiObject", + "name": "Browser", + "deprecated": false, "functions": [ { - "result": "", "name": "navigateUrl", "parameters": [ [ "String", "url" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "back", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "forward", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "stop", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "refresh", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "home", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setTargetName", "parameters": [ [ "String", "targetname" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "onBeforeNavigate", "parameters": [ [ @@ -4298,35 +4786,39 @@ "String", "targetframename" ] - ] + ], + "result": "Boolean", + "deprecated": false }, { - "result": "", "name": "onDocumentComplete", "parameters": [ [ "String", "url" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onDocumentReady", "parameters": [ [ "String", "url" ] - ] - }, - { - "result": "String", - "name": "getDocumentTitle", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getDocumentTitle", + "parameters": [], + "result": "String", + "deprecated": false + }, + { "name": "onNavigateError", "parameters": [ [ @@ -4337,102 +4829,116 @@ "int", "code" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setCancelIEErrorPage", "parameters": [ [ "boolean", "cancel" ] - ] - }, - { + ], "result": "", - "name": "scrape", - "parameters": [] + "deprecated": false + }, + { + "name": "scrape", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "string", "name": "onMediaLink", "parameters": [ [ "string", "url" ] - ] + ], + "result": "string", + "deprecated": false } - ], - "name": "Browser" + ] }, "8D1EBA38489E483eB9608D1F43C5C405": { "parent": "GuiObject", - "functions": [], - "name": "EqVis" + "name": "EqVis", + "deprecated": false, + "functions": [] }, "0F08C940AF394b2380F3B8C48F7EBB59": { "parent": "GuiObject", - "functions": [], - "name": "Status" + "name": "Status", + "deprecated": false, + "functions": [] }, "EFAA8672310E41faB7DC85A9525BCB4B": { "parent": "GuiObject", + "name": "Text", + "deprecated": false, "functions": [ { - "result": "", "name": "setText", "parameters": [ [ "String", "txt" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setAlternateText", "parameters": [ [ "String", "txt" ] - ] - }, - { - "result": "String", - "name": "getText", - "parameters": [] - }, - { - "result": "int", - "name": "getTextWidth", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getText", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "getTextWidth", + "parameters": [], + "result": "int", + "deprecated": false + }, + { "name": "onTextChanged", "parameters": [ [ "String", "newtxt" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "Text" + ] }, "7DFD324437514e7cBF4082AE5F3ADC33": { "parent": "GuiObject", - "functions": [], - "name": "Title" + "name": "Title", + "deprecated": false, + "functions": [] }, "5AB9FA159A7D4557ABC86557A6C67CA9": { "parent": "GuiObject", + "name": "Layer", + "deprecated": false, "functions": [ { - "result": "", "name": "onBeginResize", "parameters": [ [ @@ -4451,10 +4957,11 @@ "int", "h" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onEndResize", "parameters": [ [ @@ -4473,20 +4980,23 @@ "int", "h" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "fx_onInit", - "parameters": [] - }, - { + "parameters": [], "result": "", - "name": "fx_onFrame", - "parameters": [] + "deprecated": false + }, + { + "name": "fx_onFrame", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Double", "name": "fx_onGetPixelR", "parameters": [ [ @@ -4505,10 +5015,11 @@ "double", "y" ] - ] + ], + "result": "Double", + "deprecated": false }, { - "result": "Double", "name": "fx_onGetPixelD", "parameters": [ [ @@ -4527,10 +5038,11 @@ "double", "y" ] - ] + ], + "result": "Double", + "deprecated": false }, { - "result": "Double", "name": "fx_onGetPixelX", "parameters": [ [ @@ -4549,10 +5061,11 @@ "double", "y" ] - ] + ], + "result": "Double", + "deprecated": false }, { - "result": "Double", "name": "fx_onGetPixelY", "parameters": [ [ @@ -4571,10 +5084,11 @@ "double", "y" ] - ] + ], + "result": "Double", + "deprecated": false }, { - "result": "Double", "name": "fx_onGetPixelA", "parameters": [ [ @@ -4593,10 +5107,11 @@ "double", "y" ] - ] + ], + "result": "Double", + "deprecated": false }, { - "result": "", "name": "setRegionFromMap", "parameters": [ [ @@ -4611,170 +5126,192 @@ "boolean", "reverse" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setRegion", "parameters": [ [ "Region", "reg" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "fx_setEnabled", "parameters": [ [ "boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getEnabled", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getEnabled", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setWrap", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getWrap", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getWrap", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setRect", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getRect", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getRect", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setBgFx", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getBgFx", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getBgFx", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setClear", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getClear", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getClear", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setSpeed", "parameters": [ [ "Int", "msperframe" ] - ] - }, - { - "result": "Int", - "name": "fx_getSpeed", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getSpeed", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "fx_setRealtime", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getRealtime", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getRealtime", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setLocalized", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getLocalized", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getLocalized", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setBilinear", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getBilinear", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getBilinear", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setAlphaMode", "parameters": [ [ "Boolean", "onoff" ] - ] - }, - { - "result": "Boolean", - "name": "fx_getAlphaMode", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "fx_getAlphaMode", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { "name": "fx_setGridSize", "parameters": [ [ @@ -4785,295 +5322,340 @@ "Int", "y" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "fx_update", - "parameters": [] - }, - { + "parameters": [], "result": "", - "name": "fx_restart", - "parameters": [] + "deprecated": false + }, + { + "name": "fx_restart", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "isInvalid", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": false } - ], - "name": "Layer" + ] }, "698EDDCD8F1E4fec9B12F944F909FF45": { "parent": "GuiObject", + "name": "Button", + "deprecated": false, "functions": [ { - "result": "", "name": "onActivate", "parameters": [ [ "int", "activated" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onLeftClick", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onRightClick", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setActivated", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setActivatedNoCallback", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Boolean", "name": "getActivated", - "parameters": [] + "parameters": [], + "result": "Boolean", + "deprecated": false }, { - "result": "", "name": "leftClick", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "rightClick", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false } - ], - "name": "Button" + ] }, "6B64CD275A264c4b8C59E6A70CF6493A": { "parent": "Layer", + "name": "AnimatedLayer", + "deprecated": false, "functions": [ { - "result": "", "name": "onPlay", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onPause", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onResume", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onStop", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onFrame", "parameters": [ [ "Int", "framenum" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setSpeed", "parameters": [ [ "Int", "msperframe" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "gotoFrame", "parameters": [ [ "int", "framenum" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setStartFrame", "parameters": [ [ "Int", "framenum" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setEndFrame", "parameters": [ [ "int", "framenum" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setAutoReplay", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "play", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "stop", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "pause", - "parameters": [] - }, - { - "result": "Boolean", - "name": "isPlaying", - "parameters": [] - }, - { - "result": "Boolean", - "name": "isPaused", - "parameters": [] - }, - { - "result": "Boolean", - "name": "isStopped", - "parameters": [] - }, - { - "result": "Int", - "name": "getStartFrame", - "parameters": [] - }, - { - "result": "Int", - "name": "getEndFrame", - "parameters": [] - }, - { - "result": "Int", - "name": "getLength", - "parameters": [] - }, - { - "result": "Int", - "name": "getDirection", - "parameters": [] - }, - { - "result": "Boolean", - "name": "getAutoReplay", - "parameters": [] - }, - { - "result": "Int", - "name": "getCurFrame", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "isPlaying", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { + "name": "isPaused", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { + "name": "isStopped", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { + "name": "getStartFrame", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getEndFrame", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getLength", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getDirection", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getAutoReplay", + "parameters": [], + "result": "Boolean", + "deprecated": false + }, + { + "name": "getCurFrame", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setRealtime", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "AnimatedLayer" + ] }, "6DCB05E48AC448c2B19349F0910EF54A": { "parent": "Layer", + "name": "AlbumArtLayer", + "deprecated": false, "functions": [ { - "result": "", "name": "refresh", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "isLoading", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onAlbumArtLoaded", "parameters": [ [ "boolean", "success" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "AlbumArtLayer" + ] }, "B4DCCFFF81FE4bcc961B720FD5BE0FFF": { "parent": "Button", + "name": "ToggleButton", + "deprecated": false, "functions": [ { - "result": "", "name": "onToggle", "parameters": [ [ "Boolean", "onoff" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "int", "name": "getCurCfgVal", - "parameters": [] + "parameters": [], + "result": "int", + "deprecated": false } - ], - "name": "ToggleButton" + ] }, "01E28CE1B05911d5979FE4DE6F51760A": { "parent": "GuiObject", + "name": "GroupList", + "deprecated": false, "functions": [ { - "result": "Group", "name": "instantiate", "parameters": [ [ @@ -5084,148 +5666,169 @@ "int", "num_groups" ] - ] - }, - { - "result": "Int", - "name": "getNumItems", - "parameters": [] - }, - { + ], "result": "Group", + "deprecated": false + }, + { + "name": "getNumItems", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "enumItem", "parameters": [ [ "int", "num" ] - ] + ], + "result": "Group", + "deprecated": false }, { - "result": "", "name": "removeAll", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "scrollToPercent", "parameters": [ [ "Int", "percent" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setRedraw", "parameters": [ [ "int", "redraw" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "GroupList" + ] }, "80F0F8BD1BA542a6A0933236A00C8D4A": { "parent": "Group", + "name": "CfgGroup", + "deprecated": false, "functions": [ { - "result": "Int", "name": "cfgGetInt", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "cfgSetInt", "parameters": [ [ "Int", "intvalue" ] - ] - }, - { - "result": "String", - "name": "cfgGetString", - "parameters": [] - }, - { - "result": "Float", - "name": "cfgGetFloat", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "cfgGetString", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "cfgGetFloat", + "parameters": [], + "result": "Float", + "deprecated": false + }, + { "name": "cfgSetFloat", "parameters": [ [ "Float", "floatvalue" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "cfgSetString", "parameters": [ [ "String", "strvalue" ] - ] - }, - { + ], "result": "", + "deprecated": false + }, + { "name": "onCfgChanged", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "String", "name": "cfgGetGuid", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "cfgGetName", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false } - ], - "name": "CfgGroup" + ] }, "CDCB785D81F242538F0561B872283CFA": { "parent": "GuiObject", + "name": "QueryList", + "deprecated": true, "functions": [ { - "result": "", "name": "onResetQuery", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true } - ], - "name": "QueryList" + ] }, "9B2E341B6C9840fa8B850C1B6EE89405": { "parent": "GuiObject", + "name": "MouseRedir", + "deprecated": false, "functions": [ { - "result": "", "name": "setRedirection", "parameters": [ [ "GuiObject", "o" ] - ] - }, - { - "result": "GuiObject", - "name": "getRedirection", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getRedirection", + "parameters": [], + "result": "GuiObject", + "deprecated": false + }, + { "name": "setRegionFromMap", "parameters": [ [ @@ -5240,31 +5843,35 @@ "Boolean", "reverse" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setRegion", "parameters": [ [ "Region", "reg" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "MouseRedir" + ] }, "36D59B7103FD4af897950502B7DB267A": { "parent": "GuiObject", + "name": "DropDownList", + "deprecated": false, "functions": [ { - "result": "String", "name": "getItemSelected", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "", "name": "onSelect", "parameters": [ [ @@ -5275,75 +5882,84 @@ "Int", "hover" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setListHeight", "parameters": [ [ "Int", "h" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "openList", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "closeList", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setItems", "parameters": [ [ "String", "lotsofitems" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "addItem", "parameters": [ [ "String", "_text" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "delItem", "parameters": [ [ "Int", "id" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "findItem", "parameters": [ [ "String", "_text" ] - ] - }, - { + ], "result": "Int", - "name": "getNumItems", - "parameters": [] + "deprecated": false + }, + { + "name": "getNumItems", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "selectItem", "parameters": [ [ @@ -5354,93 +5970,106 @@ "Int", "hover" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getItemText", "parameters": [ [ "Int", "id" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "Int", "name": "getSelected", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "String", "name": "getSelectedText", - "parameters": [] - }, - { + "parameters": [], "result": "String", + "deprecated": false + }, + { "name": "getCustomText", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false }, { - "result": "", "name": "deleteAllItems", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setNoItemText", "parameters": [ [ "String", "txt" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "DropDownList" + ] }, "7FD5F210ACC448dfA6A05451576CDC76": { "parent": "GuiObject", + "name": "LayoutStatus", + "deprecated": false, "functions": [ { - "result": "", "name": "callme", "parameters": [ [ "String", "str" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "LayoutStatus" + ] }, "B5BAA53505B34dcbADC1E618D28F6896": { "parent": "GuiObject", + "name": "TabSheet", + "deprecated": false, "functions": [ { - "result": "Int", "name": "getCurPage", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setCurPage", "parameters": [ [ "Int", "a" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "TabSheet" + ] }, "6129FEC1DAB74d51916501CA0C1B70DB": { "parent": "GuiObject", + "name": "GuiList", + "deprecated": false, "functions": [ { - "result": "Int", "name": "addColumn", "parameters": [ [ @@ -5455,25 +6084,28 @@ "Int", "numeric" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getNumColumns", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getColumnWidth", "parameters": [ [ "Int", "column" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setColumnWidth", "parameters": [ [ @@ -5484,20 +6116,22 @@ "Int", "newwidth" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getColumnLabel", "parameters": [ [ "Int", "column" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "setColumnLabel", "parameters": [ [ @@ -5508,20 +6142,22 @@ "String", "newlabel" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getColumnNumeric", "parameters": [ [ "Int", "column" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setColumnDynamic", "parameters": [ [ @@ -5532,45 +6168,51 @@ "Int", "isdynamic" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "isColumnDynamic", "parameters": [ [ "Int", "column" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "invalidateColumns", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getNumItems", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getItemCount", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "addItem", "parameters": [ [ "String", "label" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "insertItem", "parameters": [ [ @@ -5581,15 +6223,17 @@ "String", "label" ] - ] - }, - { + ], "result": "Int", - "name": "getLastAddedItemPos", - "parameters": [] + "deprecated": false + }, + { + "name": "getLastAddedItemPos", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setSubItem", "parameters": [ [ @@ -5604,25 +6248,28 @@ "String", "txt" ] - ] - }, - { + ], "result": "", - "name": "deleteAllItems", - "parameters": [] + "deprecated": false + }, + { + "name": "deleteAllItems", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "deleteByPos", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "String", "name": "getItemLabel", "parameters": [ [ @@ -5633,10 +6280,11 @@ "Int", "subpos" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "String", "name": "getSubitemText", "parameters": [ [ @@ -5647,10 +6295,11 @@ "Int", "subpos" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "setItemLabel", "parameters": [ [ @@ -5661,30 +6310,34 @@ "String", "_text" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "invalidateItem", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getFirstItemVisible", - "parameters": [] - }, - { + "parameters": [], "result": "Int", - "name": "getLastItemVisible", - "parameters": [] + "deprecated": false + }, + { + "name": "getLastItemVisible", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setItemIcon", "parameters": [ [ @@ -5695,365 +6348,412 @@ "String", "bitmapId" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getItemIcon", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "setMinimumSize", "parameters": [ [ "Int", "size" ] - ] - }, - { - "result": "Int", - "name": "getWantAutoDeselect", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getWantAutoDeselect", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setWantAutoDeselect", "parameters": [ [ "Int", "want" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSetVisible", "parameters": [ [ "Int", "show" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setAutoSort", "parameters": [ [ "Int", "dosort" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "setFontSize", "parameters": [ [ "Int", "size" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getFontSize", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getHeaderHeight", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getPreventMultipleSelection", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "setPreventMultipleSelection", "parameters": [ [ "Int", "val" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setShowIcons", "parameters": [ [ "int", "showThem" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getShowIcons", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "setIconWidth", "parameters": [ [ "int", "width" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "setIconHeight", "parameters": [ [ "int", "width" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "getIconWidth", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "getIconHeight", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "next", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "previous", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "pagedown", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "pageup", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "home", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "end", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "reset", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "ensureItemVisible", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "scrollAbsolute", "parameters": [ [ "Int", "x" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "scrollRelative", "parameters": [ [ "Int", "x" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "scrollLeft", "parameters": [ [ "Int", "lines" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "scrollRight", "parameters": [ [ "Int", "lines" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "scrollUp", "parameters": [ [ "Int", "lines" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "scrollDown", "parameters": [ [ "Int", "lines" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "jumpToNext", "parameters": [ [ "Int", "c" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "scrollToItem", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "selectCurrent", - "parameters": [] - }, - { + "parameters": [], "result": "", - "name": "selectFirstEntry", - "parameters": [] + "deprecated": false + }, + { + "name": "selectFirstEntry", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getItemSelected", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "isItemFocused", "parameters": [ [ "Int", "pos" ] - ] - }, - { + ], "result": "Int", - "name": "getItemFocused", - "parameters": [] + "deprecated": false + }, + { + "name": "getItemFocused", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setItemFocused", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getFirstItemSelected", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getNextItemSelected", "parameters": [ [ "Int", "lastpos" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "selectAll", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "deselectAll", - "parameters": [] - }, - { + "parameters": [], "result": "Int", - "name": "invertSelection", - "parameters": [] + "deprecated": false + }, + { + "name": "invertSelection", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setSelectionStart", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setSelectionEnd", "parameters": [ [ "Int", "pos" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setSelected", "parameters": [ [ @@ -6064,10 +6764,11 @@ "Int", "selected" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "toggleSelection", "parameters": [ [ @@ -6078,45 +6779,51 @@ "Int", "setfocus" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "resort", - "parameters": [] - }, - { - "result": "Int", - "name": "getSortDirection", - "parameters": [] - }, - { - "result": "Int", - "name": "getSortColumn", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "getSortDirection", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "getSortColumn", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setSortColumn", "parameters": [ [ "Int", "col" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setSortDirection", "parameters": [ [ "Int", "dir" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "moveItem", "parameters": [ [ @@ -6127,60 +6834,67 @@ "Int", "to" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSelectAll", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onDelete", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onDoubleClick", "parameters": [ [ "Int", "itemnum" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onLeftClick", "parameters": [ [ "Int", "itemnum" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSecondLeftClick", "parameters": [ [ "Int", "itemnum" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "onRightClick", "parameters": [ [ "Int", "itemnum" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onColumnDblClick", "parameters": [ [ @@ -6195,10 +6909,11 @@ "Int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onColumnLabelClick", "parameters": [ [ @@ -6213,10 +6928,11 @@ "Int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "onItemSelection", "parameters": [ [ @@ -6227,10 +6943,11 @@ "Int", "selected" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "onIconLeftClick", "parameters": [ [ @@ -6245,21 +6962,24 @@ "int", "y" ] - ] + ], + "result": "Int", + "deprecated": false } - ], - "name": "GuiList" + ] }, "D59514F7ED3645e8980F3F4EA0522CD9": { "parent": "GuiObject", + "name": "GuiTree", + "deprecated": false, "functions": [ { - "result": "Int", "name": "onWantAutoContextMenu", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onMouseWheelUp", "parameters": [ [ @@ -6270,10 +6990,11 @@ "Int", "lines" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onMouseWheelDown", "parameters": [ [ @@ -6284,10 +7005,11 @@ "Int", "lines" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onContextMenu", "parameters": [ [ @@ -6298,105 +7020,117 @@ "Int", "y" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onChar", "parameters": [ [ "Int", "c" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "onItemRecvDrop", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onLabelChange", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onItemSelected", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onItemDeselected", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getNumRootItems", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "TreeItem", "name": "enumRootItem", "parameters": [ [ "Int", "which" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "", "name": "jumpToNext", "parameters": [ [ "Int", "c" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "ensureItemVisible", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getContentsWidth", - "parameters": [] - }, - { + "parameters": [], "result": "Int", - "name": "getContentsHeight", - "parameters": [] + "deprecated": false + }, + { + "name": "getContentsHeight", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "TreeItem", "name": "addTreeItem", "parameters": [ [ @@ -6415,20 +7149,22 @@ "Int", "haschildtab" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "Int", "name": "removeTreeItem", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "moveTreeItem", "parameters": [ [ @@ -6439,110 +7175,122 @@ "TreeItem", "newparent" ] - ] - }, - { + ], "result": "", - "name": "deleteAllItems", - "parameters": [] + "deprecated": false + }, + { + "name": "deleteAllItems", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "expandItem", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "expandItemDeferred", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "collapseItem", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "collapseItemDeferred", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "selectItem", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "selectItemDeferred", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "delItemDeferred", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "hiliteItem", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "unhiliteItem", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "TreeItem", "name": "getCurItem", - "parameters": [] + "parameters": [], + "result": "TreeItem", + "deprecated": false }, { - "result": "TreeItem", "name": "hitTest", "parameters": [ [ @@ -6553,45 +7301,50 @@ "Int", "y" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "", "name": "editItemLabel", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "cancelEditLabel", "parameters": [ [ "Int", "destroyit" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setAutoEdit", "parameters": [ [ "Int", "ae" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getAutoEdit", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "TreeItem", "name": "getByLabel", "parameters": [ [ @@ -6602,90 +7355,101 @@ "String", "name" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "", "name": "setSorted", "parameters": [ [ "Int", "dosort" ] - ] - }, - { - "result": "Int", - "name": "getSorted", - "parameters": [] - }, - { + ], "result": "", - "name": "sortTreeItems", - "parameters": [] + "deprecated": false + }, + { + "name": "getSorted", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "sortTreeItems", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "TreeItem", "name": "getSibling", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "", "name": "setAutoCollapse", "parameters": [ [ "Int", "doautocollapse" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "setFontSize", "parameters": [ [ "Int", "newsize" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getFontSize", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getNumVisibleChildItems", "parameters": [ [ "TreeItem", "c" ] - ] - }, - { + ], "result": "Int", - "name": "getNumVisibleItems", - "parameters": [] + "deprecated": false + }, + { + "name": "getNumVisibleItems", + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "TreeItem", "name": "enumVisibleItems", "parameters": [ [ "Int", "n" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "TreeItem", "name": "enumVisibleChildItems", "parameters": [ [ @@ -6696,60 +7460,66 @@ "Int", "n" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "TreeItem", "name": "enumAllItems", "parameters": [ [ "Int", "n" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "Int", "name": "getItemRectX", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getItemRectY", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getItemRectW", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "getItemRectH", "parameters": [ [ "TreeItem", "item" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "TreeItem", "name": "getItemFromPoint", "parameters": [ [ @@ -6760,226 +7530,262 @@ "Int", "y" ] - ] + ], + "result": "TreeItem", + "deprecated": false } - ], - "name": "GuiTree" + ] }, "9B3B4B82667A420e8FFC794115809C02": { "parent": "Object", + "name": "TreeItem", + "deprecated": false, "functions": [ { - "result": "Int", "name": "getNumChildren", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setLabel", "parameters": [ [ "String", "label" ] - ] - }, - { - "result": "String", - "name": "getLabel", - "parameters": [] - }, - { + ], "result": "", - "name": "ensureVisible", - "parameters": [] + "deprecated": false + }, + { + "name": "getLabel", + "parameters": [], + "result": "String", + "deprecated": false + }, + { + "name": "ensureVisible", + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "TreeItem", "name": "getNthChild", "parameters": [ [ "Int", "nth" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "TreeItem", "name": "getChild", - "parameters": [] + "parameters": [], + "result": "TreeItem", + "deprecated": false }, { - "result": "TreeItem", "name": "getChildSibling", "parameters": [ [ "TreeItem", "_item" ] - ] + ], + "result": "TreeItem", + "deprecated": false }, { - "result": "TreeItem", "name": "getSibling", - "parameters": [] - }, - { + "parameters": [], "result": "TreeItem", + "deprecated": false + }, + { "name": "getParent", - "parameters": [] + "parameters": [], + "result": "TreeItem", + "deprecated": false }, { - "result": "", "name": "editLabel", - "parameters": [] - }, - { - "result": "Int", - "name": "hasSubItems", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "hasSubItems", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setSorted", "parameters": [ [ "Int", "issorted" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setChildTab", "parameters": [ [ "Int", "haschildtab" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "isSorted", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "isCollapsed", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "isExpanded", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "invalidate", - "parameters": [] - }, - { - "result": "Int", - "name": "isSelected", - "parameters": [] - }, - { - "result": "Int", - "name": "isHilited", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { + "name": "isSelected", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { + "name": "isHilited", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setHilited", "parameters": [ [ "Int", "ishilited" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "collapse", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "expand", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "GuiTree", "name": "getTree", - "parameters": [] + "parameters": [], + "result": "GuiTree", + "deprecated": false }, { - "result": "", "name": "onTreeAdd", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onTreeRemove", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSelect", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { "name": "onDeselect", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "onLeftDoubleClick", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onRightDoubleClick", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onChar", "parameters": [ [ "Int", "key" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "onExpand", - "parameters": [] - }, - { + "parameters": [], "result": "", + "deprecated": false + }, + { "name": "onCollapse", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "onBeginLabelEdit", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onEndLabelEdit", "parameters": [ [ "String", "newlabel" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "Int", "name": "onContextMenu", "parameters": [ [ @@ -6990,254 +7796,290 @@ "Int", "y" ] - ] + ], + "result": "Int", + "deprecated": false } - ], - "name": "TreeItem" + ] }, "1D8631C880D047929F98BD5D36B49136": { "parent": "GuiObject", + "name": "MenuButton", + "deprecated": true, "functions": [ { - "result": "", "name": "onOpenMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true }, { - "result": "", "name": "onCloseMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true }, { - "result": "", "name": "onSelectItem", "parameters": [ [ "String", "item" ] - ] + ], + "result": "", + "deprecated": true }, { - "result": "", "name": "openMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true }, { - "result": "", "name": "closeMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true } - ], - "name": "MenuButton" + ] }, "C7ED319953194798986360B15A298CAA": { "parent": "GuiObject", + "name": "CheckBox", + "deprecated": false, "functions": [ { - "result": "", "name": "onToggle", "parameters": [ [ "int", "newstate" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setChecked", "parameters": [ [ "int", "checked" ] - ] - }, - { - "result": "Int", - "name": "isChecked", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "isChecked", + "parameters": [], + "result": "Int", + "deprecated": false + }, + { "name": "setText", "parameters": [ [ "String", "txt" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getText", - "parameters": [] + "parameters": [], + "result": "String", + "deprecated": false } - ], - "name": "CheckBox" + ] }, "2D2D1376BE0A4CB9BC0C57E6E4C999F5": { "parent": "GuiObject", + "name": "Form", + "deprecated": true, "functions": [ { - "result": "Int", "name": "getContentsHeight", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": true }, { - "result": "", "name": "newCell", "parameters": [ [ "String", "groupname" ] - ] + ], + "result": "", + "deprecated": true }, { - "result": "", "name": "nextRow", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true }, { - "result": "", "name": "deleteAll", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": true } - ], - "name": "Form" + ] }, "E2BBC14D84F64173BDB3B2EB2F665550": { "parent": "GuiObject", + "name": "Frame", + "deprecated": false, "functions": [ { - "result": "Int", "name": "getPosition", - "parameters": [] + "parameters": [], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setPosition", "parameters": [ [ "Int", "position" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onSetPosition", "parameters": [ [ "Int", "position" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "Frame" + ] }, "73C00594961F401B9B1B672427AC4165": { "parent": "GuiObject", + "name": "Menu", + "deprecated": false, "functions": [ { - "result": "", "name": "setMenuGroup", "parameters": [ [ "String", "groupId" ] - ] - }, - { - "result": "String", - "name": "getMenuGroup", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getMenuGroup", + "parameters": [], + "result": "String", + "deprecated": false + }, + { "name": "setMenu", "parameters": [ [ "String", "menuId" ] - ] - }, - { - "result": "String", - "name": "getMenu", - "parameters": [] - }, - { + ], "result": "", + "deprecated": false + }, + { + "name": "getMenu", + "parameters": [], + "result": "String", + "deprecated": false + }, + { "name": "spawnMenu", "parameters": [ [ "int", "monitor" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "cancelMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "setNormalId", "parameters": [ [ "String", "id" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setDownId", "parameters": [ [ "String", "id" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "setHoverId", "parameters": [ [ "String", "id" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "", "name": "onOpenMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "onCloseMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "nextMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false }, { - "result": "", "name": "previousMenu", - "parameters": [] + "parameters": [], + "result": "", + "deprecated": false } - ], - "name": "Menu" + ] } } \ No newline at end of file diff --git a/packages/webamp-modern/src/maki/objectData/winampconfig.json b/packages/webamp-modern/src/maki/objectData/winampconfig.json index 83134ac6..aa7f8810 100644 --- a/packages/webamp-modern/src/maki/objectData/winampconfig.json +++ b/packages/webamp-modern/src/maki/objectData/winampconfig.json @@ -1,35 +1,39 @@ { "B2AD3F2B31ED4e31BC6DE9951CD555BB": { "parent": "Object", + "name": "WinampConfig", + "deprecated": false, "functions": [ { - "result": "WinampConfigGroup", "name": "getGroup", "parameters": [ [ "String", "config_group_guid" ] - ] + ], + "result": "WinampConfigGroup", + "deprecated": false } - ], - "name": "WinampConfig" + ] }, "FC17844EC72B4518A068A8F930A5BA80": { "parent": "Object", + "name": "WinampConfigGroup", + "deprecated": false, "functions": [ { - "result": "Boolean", "name": "getBool", "parameters": [ [ "String", "itemname" ] - ] + ], + "result": "Boolean", + "deprecated": false }, { - "result": "", "name": "setBool", "parameters": [ [ @@ -40,49 +44,54 @@ "Boolean", "itemvalue" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "Int", "name": "getInt", "parameters": [ [ "String", "itemname" ] - ] + ], + "result": "Int", + "deprecated": false }, { - "result": "", "name": "setInt", "parameters": [ [ "String", "itemname" ] - ] + ], + "result": "", + "deprecated": false }, { - "result": "String", "name": "getString", "parameters": [ [ "String", "itemname" ] - ] + ], + "result": "String", + "deprecated": false }, { - "result": "", "name": "setString", "parameters": [ [ "String", "itemname" ] - ] + ], + "result": "", + "deprecated": false } - ], - "name": "WinampConfigGroup" + ] } } \ No newline at end of file diff --git a/packages/webamp-modern/src/maki/objects.ts b/packages/webamp-modern/src/maki/objects.ts index b1444e5e..f72e570b 100644 --- a/packages/webamp-modern/src/maki/objects.ts +++ b/packages/webamp-modern/src/maki/objects.ts @@ -2,6 +2,8 @@ import stdPatched from "./objectData/stdPatched"; import pldir from "./objectData/pldir.json"; import config from "./objectData/config.json"; import winampconfig from "./objectData/winampconfig.json"; +import application from "./objectData/application.json"; +import fileio from "./objectData/fileio.json"; import { DataType } from "./v"; import { assert } from "../utils"; @@ -9,6 +11,7 @@ type MethodDefinition = { name: string; result: string; parameters: string[][]; + deprecated?: boolean; }; type ObjectDefinition = { @@ -16,6 +19,7 @@ type ObjectDefinition = { name: string; functions: MethodDefinition[]; parentClass?: ObjectDefinition; + deprecated?: boolean; }; const objects: { [key: string]: ObjectDefinition } = { @@ -23,6 +27,8 @@ const objects: { [key: string]: ObjectDefinition } = { ...pldir, ...config, ...winampconfig, + ...application, + ...fileio, }; export function getClass(id: string): ObjectDefinition { @@ -38,6 +44,7 @@ export function getReturnType(classId: string, methodName: string): DataType { case "STRING": case "FLOAT": case "BOOLEAN": + case "ANY": return upper as any; case "": return "NULL" as any; diff --git a/packages/webamp-modern/src/maki/parser.ts b/packages/webamp-modern/src/maki/parser.ts index b64f3303..98c79cad 100644 --- a/packages/webamp-modern/src/maki/parser.ts +++ b/packages/webamp-modern/src/maki/parser.ts @@ -1,5 +1,5 @@ import { COMMANDS } from "./constants"; -import { DataType, Variable } from "./v"; +import { DataType, Variable, VariableObject } from "./v"; import MakiFile from "./MakiFile"; import { getReturnType } from "./objects"; import { assert } from "../utils"; @@ -22,6 +22,7 @@ export type ParsedMaki = { classes: string[]; bindings: Binding[]; version: number; + maki_id: string; }; export type Binding = { @@ -41,7 +42,7 @@ const PRIMITIVE_TYPES = { 6: "STRING", }; -export function parse(data: ArrayBuffer): ParsedMaki { +export function parse(data: ArrayBuffer, maki_id: string): ParsedMaki { const makiFile = new MakiFile(data); const magic = readMagic(makiFile); @@ -55,10 +56,13 @@ export function parse(data: ArrayBuffer): ParsedMaki { const methods = readMethods(makiFile, classes); const variables = readVariables({ makiFile, classes }); readConstants({ makiFile, variables }); - const bindings = readBindings(makiFile); + const bindings = readBindings(makiFile, variables); const commands = decodeCode({ makiFile }); // TODO: Assert that we are at the end of the maki file + if (!makiFile.isEof()) { + console.warn("EOF not reached!"); + } // Map binary offsets to command indexes. // Some bindings/functions ask us to jump to a place in the binary data and @@ -86,6 +90,60 @@ export function parse(data: ArrayBuffer): ParsedMaki { } return command; }); + + // RESOLVE THE BINDING OF "CLASS" + // it is because we can't mutate the variable.value at runtime + /* + { + "type": "CLASS", + "value": null, + "global": 0, + "guid": "4ee3e1994becc636bc78cd97b028869c", + "className": "GuiObj", + "isObject": 1, + "_index_": 11, + "isClass": true, + "newClassName": "NEW_CLASS_NAME-1", + "members": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ], + "events": [ + 13, + 14 + ] + }, + */ + // for( const ivar of variables){ + // if(ivar.isClass == true){ + // for(const ivarOffset of ivar.members){ + // const variable = variables[ivarOffset]; + // for(const methodOffset of ivar.events){ + // const binding = resolvedBindings[methodOffset]; + // const method = methods[binding.methodOffset]; + // const methodName = `${variable.className}.${method.name}`; + // resolvedBindings.push({ + // ...binding, + // methodName, + // variableOffset: ivarOffset, + // // binaryOffset, + // // methodOffset, + // // variable: clone1level(variables[variableOffset]) + // bindingOnClass: true, + // }); + // } + // } + // } + // } + return { classes, methods, @@ -93,6 +151,7 @@ export function parse(data: ArrayBuffer): ParsedMaki { bindings: resolvedBindings, commands: resolvedCommands, version, + maki_id, }; } @@ -167,7 +226,7 @@ function readMethods(makiFile: MakiFile, classes: string[]): Method[] { function readVariables({ makiFile, classes }) { let count = makiFile.readUInt32LE(); - const variables = []; + const variables: Variable[] = []; while (count--) { const typeOffset = makiFile.readUInt8(); const object = makiFile.readUInt8(); @@ -180,9 +239,17 @@ function readVariables({ makiFile, classes }) { makiFile.readUInt8(); // system if (subClass) { - const variable = variables[typeOffset]; + const variable = variables[typeOffset] as VariableObject; if (variable == null) { throw new Error("Invalid type"); + } else { + // it is a subclassing, so let's mark inheritor as CLASS (base class) + if (!variable.members) { + variable.isClass = true; + // variable.type = 'CLASS'; + variable.members = []; + variable.events = []; //method indexes + } } // assume(false, "Unimplemented subclass variable type"); @@ -192,6 +259,11 @@ function readVariables({ makiFile, classes }) { global, guid: variable.guid, }); + const index = variables.length - 1; + + if (!variable.members.includes(index)) { + variable.members.push(index); + } } else if (object) { const klass = classes[typeOffset]; if (klass == null) { @@ -253,7 +325,7 @@ function readConstants({ makiFile, variables }) { } } -function readBindings(makiFile: MakiFile): Binding[] { +function readBindings(makiFile: MakiFile, variables: Variable[]): Binding[] { let count = makiFile.readUInt32LE(); const bindings = []; while (count--) { @@ -261,6 +333,11 @@ function readBindings(makiFile: MakiFile): Binding[] { const methodOffset = makiFile.readUInt32LE(); const binaryOffset = makiFile.readUInt32LE(); bindings.push({ variableOffset, binaryOffset, methodOffset }); + const aclass = variables[variableOffset]; + if (!aclass.events) { + aclass.events = []; + } + aclass.events.push(bindings.length - 1); } return bindings; } diff --git a/packages/webamp-modern/src/maki/parserXp.ts b/packages/webamp-modern/src/maki/parserXp.ts new file mode 100644 index 00000000..ef6d99c0 --- /dev/null +++ b/packages/webamp-modern/src/maki/parserXp.ts @@ -0,0 +1,498 @@ +import { COMMANDS } from "./constants"; +import { DataType, Variable } from "./v"; +import MakiFile from "./MakiFile"; +import { getReturnType } from "./objects"; +import { assert } from "../utils"; +import { classResolver } from "../skin/resolver"; +import BaseObject from "../skin/makiClasses/BaseObject"; + +export type Command = { + opcode: number; + arg: number; +}; + +export type Method = { + name: string; + typeOffset: number; + returnType: DataType; + className?: string; +}; + +export type ParsedMaki = { + commands: Command[]; + methods: Method[]; + variables: Variable[]; + classes: string[]; + bindings: Binding[]; + version: number; +}; + +export type Binding = { + methodName?: string; + commandOffset: number; + methodOffset: number; + variableOffset: number; + binaryOffset: number; +}; + +const MAGIC = "FG"; + +const PRIMITIVE_TYPES = { + 5: "BOOLEAN", + 2: "INT", + 3: "FLOAT", + 4: "DOUBLE", + 6: "STRING", +}; +const knownContainerGuids = { + "{0000000a-000c-0010-ff7b-01014263450c}": "[VIS]", // visualization + "{45f3f7c1-a6f3-4ee6-a15e-125e92fc3f8d}": "[PL]", // playlist editor + "{6b0edf80-c9a5-11d3-9f26-00c04f39ffc6}": "[ML]", // media library + "{7383a6fb-1d01-413b-a99a-7e6f655f4591}": "[CON]", // config? + "{7a8b2d76-9531-43b9-91a1-ac455a7c8242}": "[LIR]", // lyric? + "{a3ef47bd-39eb-435a-9fb3-a5d87f6f17a5}": "[DL]", // download?? + "{f0816d7b-fffc-4343-80f2-e8199aa15cc3}": "[VIDEO]", // independent video window +}; + +function getClassId(guid: string): string { + const known = knownContainerGuids[guid]; + if (known) { + return known; + } + try { + const cls: Function = classResolver(guid); + return cls.prototype.constructor.name; + } catch (e) { + return "--unknown--"; + } +} + +let methods: Method[] = []; +let variables: Variable[] = []; +let constants: any[] = []; +let classes: string[] = []; +let bindings: Binding[] = []; +let classAliases: { [key: string]: string } = {}; +export function parse(data: ArrayBuffer): ParsedMaki { + const makiFile = new MakiFile(data); + + const magic = readMagic(makiFile); + // TODO: What format is this? Does it even change between compiler versions? + // Maybe it's the std.mi version? + const version = readVersion(makiFile); + // Not sure what we are skipping over here. Just some UInt 32. + // Maybe it's additional version info? + const extraVersion = makiFile.readUInt32LE(); + /* const */ classes = readClasses(makiFile); + /* const */ methods = readMethods(makiFile, classes); + /* const */ variables = readVariables({ makiFile, classes }); + readConstants({ makiFile, variables }); + /* const */ bindings = readBindings(makiFile); + const commands = decodeCode({ makiFile }); + + // TODO: Assert that we are at the end of the maki file + if (!makiFile.isEof()) { + console.warn("EOF not reached!"); + } + + // Map binary offsets to command indexes. + // Some bindings/functions ask us to jump to a place in the binary data and + // start executing. However, we want to do all the parsing up front, and just + // return a list of commands. This map allows anything that mentions a binary + // offset to find the command they should jump to. + const offsetToCommand = {}; + commands.forEach((command, i) => { + if (command.offset != null) { + offsetToCommand[command.offset] = i; + } + }); + + const resolvedBindings = bindings.map((binding): Binding => { + return Object.assign({}, binding, { + commandOffset: offsetToCommand[binding.binaryOffset], + }); + }); + + const resolvedCommands = commands.map((command): Command => { + if (command.argType === "COMMAND_OFFSET") { + return Object.assign({}, command, { + arg: offsetToCommand[command.arg], + }); + } + return command; + }); + + // RESOLVE THE BINDING OF "CLASS" + // it is because we can't mutate the variable.value at runtime + /* + { + "type": "CLASS", + "value": null, + "global": 0, + "guid": "4ee3e1994becc636bc78cd97b028869c", + "className": "GuiObj", + "isObject": 1, + "_index_": 11, + "isClass": true, + "newClassName": "NEW_CLASS_NAME-1", + "members": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ], + "events": [ + 13, + 14 + ] + }, + */ + for (const ivar of variables) { + if (ivar.isClass == true) { + for (const ivarOffset of ivar.members) { + const variable = variables[ivarOffset]; + for (const methodOffset of ivar.events) { + const binding = resolvedBindings[methodOffset]; + const method = methods[binding.methodOffset]; + const methodName = `${variable.className}.${method.name}`; + resolvedBindings.push({ + ...binding, + methodName, + variableOffset: ivarOffset, + // binaryOffset, + // methodOffset, + // variable: clone1level(variables[variableOffset]) + bindingOnClass: true, + }); + } + } + } + } + + return { + version, + extraVersion, + classes, + classAliases, + variables, + methods, + bindings: resolvedBindings, + commands: resolvedCommands, + // _commands: commands, + }; +} + +// TODO: Don't depend upon COMMANDS +function opcodeToArgType(opcode: number) { + const command = COMMANDS[opcode]; + if (command == null) { + throw new Error(`Unknown opcode ${opcode}`); + } + + switch (command.arg) { + case "func": + case "line": + return "COMMAND_OFFSET"; + case "var": + case "objFunc": + case "obj": + return "VARIABLE_OFFSET"; + default: + return "NONE"; + } +} + +function readMagic(makiFile: MakiFile): string { + const magic = makiFile.readStringOfLength(MAGIC.length); + if (magic !== MAGIC) { + throw new Error( + `Magic "${magic}" does not mach "${MAGIC}". Is this a maki file?` + ); + } + return magic; +} + +function readVersion(makiFile: MakiFile): number { + // No idea what we're actually expecting here. + return makiFile.readUInt16LE(); +} + +function readClasses(makiFile: MakiFile): string[] { + let count = makiFile.readUInt32LE(); + const classes = []; + const classesAlias = {}; //['.. -- ..']; + while (count--) { + let identifier = ""; + let chunks = 4; + while (chunks--) { + identifier += makiFile.readUInt32LE().toString(16).padStart(8, "0"); + } + classes.push(identifier); + // classesAlias.push(`${getClassId(identifier)} = ${identifier}`); + classesAlias[identifier] = getClassId(identifier); + } + classAliases = classesAlias; + return classes; + // return classes.concat(classesAlias); +} + +function readMethods(makiFile: MakiFile, guids: string[]): Method[] { + let count = makiFile.readUInt32LE(); + const methods: Method[] = []; + while (count--) { + const classCode = makiFile.readUInt16LE(); + // Offset into our parsed types + const typeOffset = classCode & 0xff; + // This is probably the second half of a uint32 + const unknown1 = makiFile.readUInt16LE(); + const name = makiFile.readString(); //.toLowerCase(); + + const classGuid = guids[typeOffset]; + const className = getClassId(classGuid); + + const returnType = getReturnType(classGuid, name.toLowerCase()); + + methods.push({ + name, + typeOffset, + returnType, + className, + unknown1, + classCode, + }); + } + return methods; +} + +function readVariables({ makiFile, classes }) { + let count = makiFile.readUInt32LE(); + const variables = []; + let newClass = 0; + while (count--) { + const typeOffset = makiFile.readUInt8(); + const object = makiFile.readUInt8(); + const subClass = makiFile.readUInt16LE(); + const uinit1 = makiFile.readUInt16LE(); + const uinit2 = makiFile.readUInt16LE(); + const uinit3 = makiFile.readUInt16LE(); // uinit3 + const uinit4 = makiFile.readUInt16LE(); //uinit4 + const global = makiFile.readUInt8(); + const isSystem = makiFile.readUInt8(); // system + + if (subClass) { + const variable = variables[typeOffset]; + if (variable == null) { + throw new Error("Invalid type"); + } else { + if (!variable.members) { + variables[typeOffset].isClass = true; + variable.isClass = true; + // if (!variable.newClassName) { + variable.newClassName = `NEW_CLASS_NAME-${++newClass}`; + // variable.type0 = variable.type; + variable.type = "CLASS"; + variable.members = []; + variable.events = []; //method indexes + } + } + + // assume(false, "Unimplemented subclass variable type"); + variables.push({ + // type: variable.newClassName? "CLASS" : "OBJECT", + type: "OBJECT", + value: null, + global, + guid: variable.guid, + isSubClass: true, + inheritFrom: variable.newClassName || variable.className, + isObject: object, + // newClassDeclaration: true, + className: getClassId(variable.guid) || "^UNKNOWN^", + }); + const index = variables.length - 1; + + if (!variable.members.includes(index)) { + variable.members.push(index); + } + } else if (object) { + const klass = classes[typeOffset]; + if (klass == null) { + throw new Error("Invalid type"); + } + variables.push({ + type: "OBJECT", + value: null, + global, + guid: klass, + className: getClassId(klass), + isObject: object, + }); + } else { + const typeName = PRIMITIVE_TYPES[typeOffset]; + if (typeName == null) { + throw new Error("Invalid type"); + } + let value = null; + + switch (typeName) { + // BOOL + case PRIMITIVE_TYPES[5]: + value = uinit1; + assert( + value === 1 || value === 0, + "Expected boolean value to be initialized as zero or one" + ); + break; + // INT + case PRIMITIVE_TYPES[2]: + value = uinit1; + break; + case PRIMITIVE_TYPES[3]: + case PRIMITIVE_TYPES[4]: + const exponent = (uinit2 & 0xff80) >> 7; + const mantisse = ((0x80 | (uinit2 & 0x7f)) << 16) | uinit1; + value = mantisse * 2.0 ** (exponent - 0x96); + break; + case PRIMITIVE_TYPES[6]: + // This will likely get set by constants later on. + break; + default: + throw new Error("Invalid primitive type"); + } + const variable = { + global, + type: typeName, + value, + isObject: object, + }; + variables.push(variable); + } + if (isSystem) { + variables[variables.length - 1].isSystem = true; + } + variables[variables.length - 1]._index_ = variables.length - 1; + } + return variables; +} + +function readConstants({ makiFile, variables }) { + let count = makiFile.readUInt32LE(); + while (count--) { + const i = makiFile.readUInt32LE(); + const variable = variables[i]; + // TODO: Assert this is of type string. + const value = makiFile.readString(); + // TODO: Don't mutate + variable.value = value; + variable.constantData = value; + } +} + +function clone1level(o: object): object { + const ret = []; + for (const [key, value] of Object.entries(o)) { + if ( + !(typeof value === "object" && !Array.isArray(value) && value !== null) + ) { + ret[key] = value; + } + } + return ret; +} + +function readBindings(makiFile: MakiFile): Binding[] { + let count = makiFile.readUInt32LE(); + const bindings = []; + while (count--) { + const variableOffset = makiFile.readUInt32LE(); + const methodOffset = makiFile.readUInt32LE(); + const binaryOffset = makiFile.readUInt32LE(); + const method = methods[methodOffset]; + // const methodName = `${method.newClassName || method.className}.${method.name}` + const methodName = `${method.className}.${method.name}`; + bindings.push({ + methodName, + variableOffset, + binaryOffset, + methodOffset, + variable: clone1level(variables[variableOffset]), + }); + const aclass = variables[variableOffset]; + if (!aclass.events) { + aclass.events = []; + } + aclass.events.push(bindings.length - 1); + } + return bindings; +} + +function decodeCode({ makiFile }) { + const length = makiFile.readUInt32LE(); + const start = makiFile.getPosition(); + + const commands = []; + while (makiFile.getPosition() < start + length) { + commands.push(parseComand({ start, makiFile, length })); + } + + return commands; +} + +// TODO: Refactor this to consume bytes directly off the end of MakiFile +function parseComand({ start, makiFile, length }) { + const pos = makiFile.getPosition() - start; + const opcode = makiFile.readUInt8(); + const Command = COMMANDS[opcode] || { name: "UNKNOWN", short: "-???-" }; + const description = `${Command.short || Command.name} (${Command.name})`; + const command = { + description, + opcode, + offset: pos, + start, + arg: null, + argType: opcodeToArgType(opcode), + }; + + if (command.argType === "NONE") { + return command; + } + + let arg = null; + switch (command.argType) { + case "COMMAND_OFFSET": + // Note in the perl code here: "todo, something strange going on here..." + arg = makiFile.readInt32LE() + 5 + pos; + break; + case "VARIABLE_OFFSET": + arg = makiFile.readUInt32LE(); + break; + default: + throw new Error("Invalid argType"); + } + + command.arg = arg; + + // From perl: look forward for a stack protection block + // (why do I have to look FORWARD. stupid nullsoft) + if ( + // Is there another UInt32 to read? + length > pos + 5 + 4 && + makiFile.peekUInt32LE() >= 0xffff0000 && + makiFile.peekUInt32LE() <= 0xffff000f + ) { + makiFile.readUInt32LE(); + } + + // TODO: What even is this? + if (opcode === 112 /* strangeCall */) { + const strangeFlag = makiFile.readUInt8(); + command.strangeFlag = strangeFlag; + } + return command; +} diff --git a/packages/webamp-modern/src/maki/v.ts b/packages/webamp-modern/src/maki/v.ts index b06cb3c5..abf44a51 100644 --- a/packages/webamp-modern/src/maki/v.ts +++ b/packages/webamp-modern/src/maki/v.ts @@ -1,6 +1,21 @@ import BaseObject from "../skin/makiClasses/BaseObject"; +export type VariableObject = { + type: "OBJECT"; + value: BaseObject; + global?: boolean; + guid?: string; + members?: number[]; + isClass?: boolean; + // } + // | { + // type: "CLASS"; + // value: BaseObject; + // guid: string; + // members? : number[]; +}; export type Variable = + | VariableObject | { type: "BOOLEAN"; value: number; // 1 || 0 @@ -13,11 +28,6 @@ export type Variable = type: "STRING"; value: string; } - | { - type: "OBJECT"; - value: BaseObject; - guid?: string; - } | { type: "NULL"; value: null; diff --git a/packages/webamp-modern/src/maxplore.html b/packages/webamp-modern/src/maxplore.html new file mode 100644 index 00000000..0f9d2962 --- /dev/null +++ b/packages/webamp-modern/src/maxplore.html @@ -0,0 +1,47 @@ + + + + + + + + + Maki Explorer + + + + +
+
+
+

Maki File Explorer

+ +
+ + + + + \ No newline at end of file diff --git a/packages/webamp-modern/src/maxplore.ts b/packages/webamp-modern/src/maxplore.ts new file mode 100644 index 00000000..2ec9b94d --- /dev/null +++ b/packages/webamp-modern/src/maxplore.ts @@ -0,0 +1,114 @@ +// This module is imported early here in order to avoid a circular dependency. +import { classResolver } from "./skin/resolver"; +import { normalizedObjects, getFormattedId } from "./maki/objects"; +import BaseObject from "./skin/makiClasses/BaseObject"; +import { parse as parseMaki1 } from "./maki/parser"; +import { parse as parseMakiXp, ParsedMaki } from "./maki/parserXp"; + +function hack() { + // Without this Snowpack will try to treeshake out resolver causing a circular + // dependency. + classResolver("A funny joke about why this is needed."); +} + +/* +async function validateSkinMaki(file: Blob) { + const zip = await JSZip.loadAsync(file); + const maki = zip.filter((path) => path.endsWith(".maki")); + for (const zipFile of maki) { + console.log(zipFile.name); + const arraybuffer = await zip.loadAsync("arraybuffer"); + console.log(arraybuffer); + } +} + +addDropHandler(validateSkinMaki); +*/ + +function getClass(guid: string): typeof BaseObject | null { + try { + return classResolver(guid); + } catch (e) { + return null; + } +} +const panel = document.getElementById("panel"); +const totals = document.createElement("div"); +panel.appendChild(totals); +const table = document.createElement("table"); +panel.appendChild(table); + +const header = document.createElement("tr"); +const nameHeader = document.createElement("th"); +nameHeader.innerText = "Class Name"; +header.appendChild(nameHeader); +const methodHeader = document.createElement("th"); +methodHeader.innerText = "Methods"; +header.appendChild(methodHeader); + +table.appendChild(header); + +const classes = []; + +let total = 0; +let found = 0; +let dummy = 0; + +// const params = new Proxy(new URLSearchParams(window.location.search), { +// get: (searchParams, prop) => searchParams.get(prop), +// }); +// Get the value of "some_key" in eg "https://example.com/?some_key=some_value" +// let value = params.maki; // "some_value" +const url = new URL(window.location.href); +let makiPath = url.searchParams.get("maki"); // "some_value" +console.log("maki:", makiPath); +if (!makiPath) { + makiPath = "/assets/MMD3/scripts/songinfo.maki"; + url.searchParams.set("maki", makiPath); + window.history.pushState({ pageTitle: "title" }, "title", url); + // window.location.assign(url.href) +} + +async function main() { + // async function getFileAsBytes(filePath: string): Promise { + // const response = await + fetch(makiPath).then(async (response) => { + const scriptContents: ArrayBuffer = await response.arrayBuffer(); + if (scriptContents == null) { + `ScriptFile file not found at path ${makiPath}`; + } else { + const parsedScriptXp = parseMakiXp(scriptContents); + const parsedScript1 = parseMaki1(scriptContents, makiPath); + explore(parsedScriptXp, parsedScript1); + } + // return scriptContents + }); +} + +declare global { + interface Window { + ace: any; + } +} + +function explore(makiXp: ParsedMaki, maki: ParsedMaki) { + const scriptXp = JSON.stringify(makiXp, null, "\t"); + const script = JSON.stringify(maki, null, "\t"); + updateEditor(scriptXp, "editor1"); + updateEditor(script, "editor2"); +} +function updateEditor(txt: string, elementId: string) { + const div = document.getElementById(elementId); + div.textContent = txt; + var editor = window.ace.edit(elementId); + // editor.setTheme("ace/theme/monokai"); + editor.setTheme("ace/theme/merbivore"); + editor.getSession().setMode("ace/mode/json"); +} +// this._scripts[file] = scriptContents; + +main(); + +methodHeader.innerText += ` (${found}/${total}, ${Math.round( + (found / total) * 100 +)}% Complete) | ${Math.round(((found - dummy) / total) * 100)}% Real.`; diff --git a/packages/webamp-modern/src/progress.html b/packages/webamp-modern/src/progress.html index a92eb2f5..2c22e3d0 100644 --- a/packages/webamp-modern/src/progress.html +++ b/packages/webamp-modern/src/progress.html @@ -22,32 +22,81 @@ } .method { width: 20px; - height: 20px; + min-height: 20px; display: inline-block; overflow: hidden; - text-indent: -99999px; + /* text-indent: -99999px; */ border: 1px solid grey; margin: 1px; } + tr:not(.expanded) .method span { + /* display: none; */ + display: inline-block; + pointer-events: none; + /* visibility: hidden; */ + float: left; + width: 0; + height: 0; + overflow: hidden; + font-size: 0px; + } + .method i { + color: #795548; + font-style: normal; + } .expanded .method { - width: auto; - height: 20px; + width: auto; + /* height: 20px; */ display: block; overflow: hidden; - text-indent: 0; + /* text-indent: 0; */ border: none; margin: 1px; padding-left: 3px; } + .expanded .method span { + display: inline-block; + padding-left: 55px; + text-indent: -27px; + } .class-name { white-space: nowrap; font-weight: bold; - display: block; + /* display: block; */ + vertical-align: top; cursor: pointer; text-align: right; margin-right: 4px; } + .implementation { + width: 15px; + height: 15px; + display: inline-block; + vertical-align: bottom; + border-radius: 50%; + margin-left: 5px; + border: 1px solid grey; + } + .dummy { + opacity: 0.3; + width: 1px; + } + + .method::before{ + content: 'M'; + width: 10px; + margin-right: 1em; + padding: 0 3px; + opacity: 0; + position: absolute; + } + .fake::before{ + content: 'F'; + background: rgba(255,255,255,.7); + border-radius: 50%; + opacity: 1; + } diff --git a/packages/webamp-modern/src/progress.ts b/packages/webamp-modern/src/progress.ts index 19372e23..ec750aad 100644 --- a/packages/webamp-modern/src/progress.ts +++ b/packages/webamp-modern/src/progress.ts @@ -49,58 +49,129 @@ table.appendChild(header); const classes = []; for (const [key, obj] of Object.entries(normalizedObjects)) { const name = obj.name; + const deprecated = + obj.deprecated || + [ + "DropDownList", + "CheckBox", + "Edit", + "GroupList", + "GuiList", + "GuiTree", + "Browser", + "XmlDoc", + "MouseRedir", //'Region', 'Application', 'File', + "TreeItem", + "CfgGroup", + ].includes(obj.name); const methods = []; + // if(obj.name == 'Menu') {debugger;} const klass = getClass(getFormattedId(key.toLowerCase())); + console.log("KLASS:" + key, klass, obj); for (const method of obj.functions) { - const params = method.parameters.map(([type, name]) => name); - const methodName = `${method.name}(${params.join(", ")})`; + const params = method.parameters.map( + ([type, name]) => `${name} :${type}` + ); + const methodName = + `${method.name}(${params.join(", ")})` + + (method.result.length > 0 ? " :" + method.result + "" : ""); + const blacklist = method.name.startsWith("fx_"); + const mdeprecated = method.deprecated; const hook = method.name.toLowerCase().startsWith("on"); if (hook) { - methods.push({ name: methodName, hook: true }); + methods.push({ + name: methodName, + hook: true, + deprecated: mdeprecated, + blacklist, + }); continue; } else if (klass == null) { - methods.push({ name: methodName, status: "missing" }); + methods.push({ + name: methodName, + status: "missing", + deprecated: mdeprecated, + blacklist, + }); } else { const impl = klass.prototype[method.name.toLowerCase()]; if (impl == null) { - methods.push({ name: methodName, status: "missing" }); + methods.push({ + name: methodName, + status: "missing", + deprecated: mdeprecated, + blacklist, + }); } else if (impl.length !== method.parameters.length) { - methods.push({ name: methodName, status: "wrong" }); + methods.push({ + name: methodName, + status: "wrong", + deprecated: mdeprecated, + blacklist, + }); } else { - methods.push({ name: methodName, status: "found" }); + // const fake = /\/\/TODO/.test(impl.toString()); + const code = impl.toString(); + const fake = + code.split("\n").length <= 2 || /[Uu]nimplemented/.test(code); + methods.push({ + name: methodName, + status: "found", + deprecated: mdeprecated, + blacklist, + fake, + }); } } } - classes.push({ name, methods }); + classes.push({ name, deprecated, methods, implemented: !!klass }); } let total = 0; let found = 0; +let dummy = 0; for (const cls of classes) { const classRow = document.createElement("tr"); - classRow.addEventListener("click", () => { - classRow.classList.toggle("expanded"); - }); + // classRow.addEventListener("click", () => { + // classRow.classList.toggle("expanded"); + // }); + const className = document.createElement("td"); className.classList.add("class-name"); - const totalCount = cls.methods.filter((m) => !m.hook).length; - const foundCount = cls.methods.filter( - (m) => !m.hook && m.status === "found" - ).length; - total += totalCount; - found += foundCount; - className.innerText = `${cls.name} (${foundCount}/${totalCount})`; + className.addEventListener("click", () => { + classRow.classList.toggle("expanded"); + }); + + let totalCount = 0; + let foundCount = 0; + // const totalCount = cls.methods.filter((m) => !m.hook).length; + // const foundCount = cls.methods.filter( + // (m) => !m.hook && m.status === "found" + // ).length; + // if(!cls.deprecated){ + // total += totalCount; + // found += foundCount; + // } + // className.innerText = `${cls.name} (${foundCount}/${totalCount})`; + className.style.color = cls.deprecated ? "grey" : "black"; classRow.appendChild(className); const methodsCell = document.createElement("td"); classRow.appendChild(methodsCell); + + console.log("klass:", cls); + total++; + found += cls.implemented ? 1 : 0; + for (const method of cls.methods) { if (method.hook) { continue; } + totalCount++; const methodDiv = document.createElement("span"); methodDiv.classList.add("method"); - methodDiv.innerText = method.name; + // methodDiv.innerText = method.name; + methodDiv.innerHTML = `${method.name}`; methodDiv.title = method.name; switch (method.status) { case "missing": @@ -108,17 +179,59 @@ for (const cls of classes) { break; case "found": methodDiv.style.backgroundColor = "lightgreen"; + if (method.fake) { + methodDiv.style.backgroundColor = "greenyellow"; + methodDiv.classList.add("fake"); + dummy++; + } + foundCount++; break; case "wrong": methodDiv.style.backgroundColor = "red"; break; } methodsCell.appendChild(methodDiv); + if (cls.deprecated) { + methodDiv.style.backgroundColor = "white"; + // methodDiv.style.opacity = ".4"; + totalCount--; + } else if (method.deprecated) { + totalCount--; + methodDiv.style.backgroundColor = "silver"; + } else if (method.blacklist) { + totalCount--; + methodDiv.style.backgroundColor = "coral"; + } } + if (cls.methods.length == 0 || totalCount == 0) { + //? has no method, lets keep it beauty. + const methodDiv = document.createElement("span"); + methodDiv.classList.add("method"); + methodDiv.classList.add("dummy"); + methodsCell.appendChild(methodDiv); + } + + className.innerText = `${cls.name} (${foundCount}/${totalCount})`; + + const methodDiv = document.createElement("span"); + // methodDiv.classList.add("method"); + methodDiv.classList.add("implementation"); + // methodDiv.innerText = cls.name; + methodDiv.style.backgroundColor = cls.implemented + ? "lightgreen" + : cls.deprecated + ? "white" + : "pink"; + // methodDiv.title = ``; + // methodsCell.appendChild(methodDiv); + className.appendChild(methodDiv); + + total += totalCount; + found += foundCount; table.appendChild(classRow); } methodHeader.innerText += ` (${found}/${total}, ${Math.round( (found / total) * 100 -)}% Complete)`; +)}% Complete) | ${Math.round(((found - dummy) / total) * 100)}% Real.`; diff --git a/packages/webamp-modern/src/skin/AudioEventedGui.ts b/packages/webamp-modern/src/skin/AudioEventedGui.ts new file mode 100644 index 00000000..8c10ad36 --- /dev/null +++ b/packages/webamp-modern/src/skin/AudioEventedGui.ts @@ -0,0 +1,102 @@ +import { AUDIO_PAUSED, AUDIO_PLAYING, AUDIO_STOPPED } from "./AudioPlayer"; + +import GuiObj from "./makiClasses/GuiObj"; + +/** + * GuiObject that support automatic property to change + * regarding to audio.state + * It is not used by Winamp, but WindowsMediaPlayer & Audion do. + */ +export default class AudioEventedGui extends GuiObj { + // // set props as if allowed. + // // example: prop=pause will set true if allowed to pause eg. audio is playing + // _enabledFor: {[prop:string]:string} = {} + // // set prop as equal to audio state + // // example: + // _equalTo: {[prop:string]:string} = {} + // prop=pause event='allowed-to:pause' | event='audio:play' + _propEvent: { [prop: string]: string } = {}; + _audioEventListeners: Function; + + setXmlAttr(_key: string, value: string): boolean { + const key = _key.toLowerCase(); + if (value.startsWith("allowed-to:") || value.startsWith("audio:")) { + this._propEvent[key] = value; + return true; + } + + if (super.setXmlAttr(_key, value)) { + return true; + } + return false; + } + + init() { + super.init(); + this._registerAudioEvents(); + } + + _registerAudioEvents() { + if (Object.keys(this._propEvent).length > 0) { + //unregister + if (this._audioEventListeners != null) { + this._audioEventListeners(); + } + this._audioEventListeners = this._uiRoot.audio.on("statchanged", () => + this._updatePropsByAudioState() + ); + this._updatePropsByAudioState(); + } + } + + _updatePropsByAudioState() { + // console.log("audio-state-changed:", this.getId(), this._audioEvent); + const pl = this._uiRoot.playlist; + const plCount = pl.getnumtracks(); + const plIndex = pl.getcurrentindex(); + const canNext = plIndex < plCount - 1; + const canPrev = plIndex > 0; + const buttonStates = { + [AUDIO_PLAYING]: { + play: false, + pause: true, + stop: true, + next: canNext, + prev: canPrev, + }, + [AUDIO_PAUSED]: { + play: true, + pause: false, + stop: true, + next: canNext, + prev: canPrev, + }, + [AUDIO_STOPPED]: { + play: true, + pause: false, + stop: false, + next: canNext, + prev: canPrev, + }, + }; + const nickState = { + [AUDIO_PLAYING]: "play", + [AUDIO_PAUSED]: "pause", + [AUDIO_STOPPED]: "stop", + }; + + const state = this._uiRoot.audio.getState(); // playing + if (!buttonStates[state]) { + console.warn("unknown audio state:", state); + return; + } + for (const [prop, audioEvent] of Object.entries(this._propEvent)) { + const [enabled, requestedState] = audioEvent.split(":"); + if (enabled == "allowed-to") { + this[prop] = buttonStates[state][requestedState]; + } else if (enabled == "audio") { + this[prop] = requestedState == nickState[state]; + } + } + } +} diff --git a/packages/webamp-modern/src/skin/AudioMetadata.ts b/packages/webamp-modern/src/skin/AudioMetadata.ts new file mode 100644 index 00000000..23167540 --- /dev/null +++ b/packages/webamp-modern/src/skin/AudioMetadata.ts @@ -0,0 +1,226 @@ +import { parse, parseV1Tag, parseV2Tag } from "id3-parser"; +import { ITags } from "id3-parser/lib/interface"; +import { calcTagSize } from "id3-parser/lib/parsers/v2parser"; +import { fetchFileAsBuffer } from "id3-parser/lib/universal/helpers"; +import { assume } from "../utils"; +import { Track } from "./AudioPlayer"; + +export async function parseMetaData( + track: Track, + callback: Function +): Promise { + try { + const audioTrackUrl = track.file + ? URL.createObjectURL(track.file) + : track.filename; + + //? Duration + // track.duration = await genMediaDuration(audioTrackUrl); + // callback(); + genMediaDuration(audioTrackUrl).then((duration) => { + track.duration = duration; + callback(); + }); + + //? don't await + genMetadata(track, audioTrackUrl, callback); + } catch (e) { + // TODO: Should we update the state to indicate that we don't know the length? + console.warn("ERROR:", e); + } +} + +async function genMetadata( + track: Track, + audioTrackUrl: string, + callback: Function +) { + //? ID3 + const bytes: Uint8Array = await fetchFileAsBuffer(audioTrackUrl); + let id3: ITags; + const v2data = parseV2Tag(bytes); + if (v2data) { + id3 = { ...v2data }; + } else { + const v1data = parseV1Tag(bytes); + id3 = { ...v1data }; + } + track.metadata = id3; + // console.log("ID3:", id3); + callback(); + + //? Bitrate & SampleRate + let start: number = 0; + if (v2data) { + start = 10; // normal v2 headerSize + // const xHeader = (bytes[5] & 0x40) !== 0 + if (v2data.version.flags.xheader) { + start += calcTagSize(bytes.slice(10, 14)); + } + start += calcTagSize(bytes.slice(6, 10)); // tagSize + } + // frame found =========================================================== + // pos starts at 0 + + const VersionID = [2.5, null, 2, 1]; + const LayerDescription = [0, 3, 2, 1]; + const ChannelMode = ["stereo", "joint_stereo", "dual_channel", "mono"]; + + const sampling_rate_freq_index = { + 1: { 0x00: 44100, 0x01: 48000, 0x02: 32000 }, + 2: { 0x00: 22050, 0x01: 24000, 0x02: 16000 }, + 2.5: { 0x00: 11025, 0x01: 12000, 0x02: 8000 }, + }; + + const samplesInFrameTable = [ + /* Layer I II III */ + [0, 384, 1152, 1152], // MPEG-1 + [0, 384, 1152, 576], // MPEG-2(.5 + ]; + + // get header + var header = + (bytes[start] << 24) | + (bytes[start + 1] << 16) | + (bytes[start + 2] << 8) | + bytes[start + 3]; + + var versionIndex = readBits(header, 11, 2); + // info.version = ["MPEG 2.5", "reserved", "MPEG 2.0", "MPEG 1.0"][ + // versionIndex + // ]; + const version = VersionID[versionIndex]; + + var layerIndex = readBits(header, 13, 2); + // info.layer = ["reserved", "layer 3", "layer 2", "layer 1"][layerIndex]; + const layer = LayerDescription[layerIndex]; + + var isProtected = readBits(header, 15, 1); + // info.crc = !isProtected; + + // bitrate for the first frame, can change per frame if its VBR + var bitrateIndex = readBits(header, 16, 4); + var sampRateFreqIndex = readBits(header, 20, 2); + + //? calc Bitrate + const bitrate_index = { + 0x01: { 11: 32, 12: 32, 13: 32, 21: 32, 22: 8, 23: 8 }, + 0x02: { 11: 64, 12: 48, 13: 40, 21: 48, 22: 16, 23: 16 }, + 0x03: { 11: 96, 12: 56, 13: 48, 21: 56, 22: 24, 23: 24 }, + 0x04: { 11: 128, 12: 64, 13: 56, 21: 64, 22: 32, 23: 32 }, + 0x05: { 11: 160, 12: 80, 13: 64, 21: 80, 22: 40, 23: 40 }, + 0x06: { 11: 192, 12: 96, 13: 80, 21: 96, 22: 48, 23: 48 }, + 0x07: { 11: 224, 12: 112, 13: 96, 21: 112, 22: 56, 23: 56 }, + 0x08: { 11: 256, 12: 128, 13: 112, 21: 128, 22: 64, 23: 64 }, + 0x09: { 11: 288, 12: 160, 13: 128, 21: 144, 22: 80, 23: 80 }, + 0x0a: { 11: 320, 12: 192, 13: 160, 21: 160, 22: 96, 23: 96 }, + 0x0b: { 11: 352, 12: 224, 13: 192, 21: 176, 22: 112, 23: 112 }, + 0x0c: { 11: 384, 12: 256, 13: 224, 21: 192, 22: 128, 23: 128 }, + 0x0d: { 11: 416, 12: 320, 13: 256, 21: 224, 22: 144, 23: 144 }, + 0x0e: { 11: 448, 12: 384, 13: 320, 21: 256, 22: 160, 23: 160 }, + }; + const codecIndex = `${Math.floor(version)}${layer}`; + id3.bitrate = bitrate_index[bitrateIndex][codecIndex]; + + // info.sampleRate = info.raw.sampleRate = [ + // // MPEG-1 MPEG-2 MPEG-3 + // [44100, 22050, 11025], + // [48000, 24000, 12000], + // [32000, 16000, 8000], + // [-1, -1, -1], // reserved + // ][sampRateFreqIndex][3 - versionIndex]; + // info.sampleRate = info.sampleRate + "Hz"; + + //? calc samplerate + // if (this.sampRateFreqIndex === 0x03) return null; // 'reserved' + id3.sampleRate = sampling_rate_freq_index[version][sampRateFreqIndex]; + + // var isPadded = (info.raw.padded = readBits(header, 22, 1)); + // info.padded = isPadded == 1; + + // var isPrivate = (info.raw.private = readBits(header, 23, 1)); + // info.private = isPrivate == 1; + + var channels = readBits(header, 24, 2); + // info.channelMode = [ + // "Stereo", + // "Joint Stereo", + // "Dual Channel", + // "Single Channel", + // ][channels]; + const channelModeIndex = channels; + id3.channelMode = ChannelMode[channelModeIndex]; + + // per frame thing, not really interesting + // if (channels == 1) { + // var channelsExtension = (info.raw.channelsExtension = readBits( + // header, + // 26, + // 2 + // )); + // if (layer == 1) + // info.channelExtension = { + // bands: [ + // [4, 31], + // [8, 31], + // [12, 31], + // [16, 31], + // ][channelsExtension], + // }; + // else + // info.channelExtension = { + // msStereo: [false, false, true, true][channelsExtension], + // intensityStereo: [false, true, false, true][channelsExtension], + // }; + // } + + // var isCopyrighted = (info.raw.copyrighted = readBits(header, 28, 1)); + // info.copyrighted = isCopyrighted == 1; + + // var isOriginal = (info.raw.original = readBits(header, 29, 1)); + // info.original = isOriginal == 1; + + // var emphasis = (info.raw.emphasis = readBits(header, 30, 2)); + // info.emphasis = ["None", "50/15 ms", "Reserved", "CCIT J.17"][emphasis]; + + track.metadata = id3; + // console.log("Final ID3:", id3); + callback(); + + //debug + // console.log("original Parse:", parse(bytes)); + // } catch (e) { + // // TODO: Should we update the state to indicate that we don't know the length? + // console.warn("ERROR:", e); + // } +} + +function readBits(int: number, pos: number, length: number) { + var mask = (0xffffffff >>> (32 - length)) << (32 - length - pos); + return (int & mask) >>> (32 - length - pos); +} + +function genMediaDuration(url: string): Promise { + assume( + typeof url === "string", + "Attempted to get the duration of media file without passing a url" + ); + return new Promise((resolve, reject) => { + // TODO: Does this actually stop downloading the file once it's + // got the duration? + const audio = document.createElement("audio") as HTMLAudioElement; + audio.crossOrigin = "anonymous"; + const durationChange = () => { + resolve(audio.duration); + audio.removeEventListener("durationchange", durationChange); + + audio.src = ""; + // TODO: Not sure if this really gets cleaned up. + }; + audio.addEventListener("durationchange", durationChange); + audio.addEventListener("error", (e) => { + reject(e); + }); + audio.src = url; + }); +} diff --git a/packages/webamp-modern/src/skin/AudioPlayer.ts b/packages/webamp-modern/src/skin/AudioPlayer.ts index d83e6135..264da37a 100644 --- a/packages/webamp-modern/src/skin/AudioPlayer.ts +++ b/packages/webamp-modern/src/skin/AudioPlayer.ts @@ -1,3 +1,4 @@ +import { ITags } from "id3-parser/lib/interface"; import { clamp, Emitter } from "../utils"; const BANDS = [60, 170, 310, 600, 1000, 3000, 6000, 12000, 14000, 16000]; @@ -6,13 +7,28 @@ export const AUDIO_PAUSED = "paused"; export const AUDIO_STOPPED = "stopped"; export const AUDIO_PLAYING = "playing"; +// moved here because used by several files eg Playlist,AudioMetadata +export type Track = { + id?: number; //used for identification while refreshing playlist + filename: string; // full url, or just File.name + file?: File; // Blob + metadata?: ITags; // http://forums.winamp.com/showthread.php?t=345521 + title?: string; + rating?: number; // 0..5 + duration?: number | null; +}; + export class AudioPlayer { _audio: HTMLAudioElement = document.createElement("audio"); _context: AudioContext; __preamp: GainNode; _analyser: AnalyserNode; _bands: GainNode[] = []; + _volumeNode: GainNode; + _balanceNode: StereoPannerNode; + _balance: number = 0; // -127..127 temporary _source: MediaElementAudioSourceNode; + _eqEnabled: boolean = true; _eqValues: { [kind: string]: number } = {}; _eqNodes: { [kind: string]: number } = {}; _eqEmitter: Emitter = new Emitter(); @@ -55,17 +71,26 @@ export class AudioPlayer { this.__preamp = this._context.createGain(); + this._volumeNode = this._context.createGain(); + // Create the analyser node for the visualizer this._analyser = this._context.createAnalyser(); this._analyser.fftSize = 2048; - this._analyser.fftSize = 32; + // this._analyser.fftSize = 32; // don't smooth audio analysis - // this._analyser.smoothingTimeConstant = 0.0; + this._analyser.smoothingTimeConstant = 0.0; + + // default pan set to 0 - center + this._balanceNode = new StereoPannerNode(this._context, { pan: 0 }); + // change the value of the balance by updating the pan value + // stereoNode.pan.value = -1; // left + // stereoNode.pan.value = 0; // center + // stereoNode.pan.value = 1; // right const connectionNodes: AudioNode[] = [ this._source, this.__preamp, - this._analyser, + // this._analyser, ]; const analyserNode = this._analyser; @@ -102,6 +127,8 @@ export class AudioPlayer { connectionNodes.push(filter); }); + connectionNodes.push(this._balanceNode); + connectionNodes.push(this._volumeNode); connectionNodes.push(this._context.destination); let current = connectionNodes[0]; @@ -111,14 +138,55 @@ export class AudioPlayer { current = next; } + this._balanceNode.connect(this._analyser); + + // Connect all the nodes in the correct way + // (Note, source is created and connected later) + // + // + // | _ _ _ _ _ _ + // | : + // V : + // : + // v : <-- Optional bypass + // [...biquadFilters] : + // | : + // |<- - - - - -' + // v + // + // |\ + // | `--> + // v + // + // v + // + //temporary: in the end of playing mp3, lets stop. //TODO: in future, when ended: play next mp3 this._audio.addEventListener("ended", () => this.stop()); } + setEqEnabled(enable: boolean) { + this._eqEnabled = enable; + this._source.disconnect(); + if (enable) { + this._source.connect(this.__preamp); + } else { + // bypassed. + this._source.connect(this._balanceNode); + } + } + getEqEnabled(): boolean { + return this._eqEnabled; + } + + getAnalyser(): AnalyserNode { + return this._analyser; + } + // shortcut of this.Emitter - on(event: string, callback: Function) { - this._eventListener.on(event, callback); + on(event: string, callback: Function): Function { + return this._eventListener.on(event, callback); } trigger(event: string, ...args: any[]) { this._eventListener.trigger(event, ...args); @@ -133,8 +201,38 @@ export class AudioPlayer { // 0-1 getVolume(): number { - return this._audio.volume; + // return this._audio.volume; + return this._volumeNode.gain.value; } + // 0-1 + setVolume(volume: number) { + // this._audio.volume = volume; + if (volume != this._volumeNode.gain.value) { + this._volumeNode.gain.value = volume; + this.trigger("volumechanged"); + } + } + + getBalance(): number { + return this._balance; + } + // -127..127 + // -1..0..1 + setBalance(balance: number) { + this._balanceNode.pan.value = balance; + this._balance = balance; + this.trigger("balancechange"); + } + + // 0.5 .. 4 + getPlaybackRate(): number { + return this._audio.playbackRate; + } + setPlaybackRate(value: number) { + this._audio.playbackRate = clamp(value, 0.5, 4.0); + this.trigger("playbackratechange"); + } + play() { this._isStop = false; this._audio.play(); @@ -158,11 +256,6 @@ export class AudioPlayer { this.trigger("statchanged"); } - // 0-1 - setVolume(volume: number) { - this._audio.volume = volume; - } - seekTo(secs: number) { this._audio.currentTime = secs; } @@ -204,7 +297,10 @@ export class AudioPlayer { getEq(kind: string): number { switch (kind) { case "preamp": - return (this.__preamp.gain.value + 12) / 24; + const a = this.__preamp.gain.value; + const c = Math.log(a) / Math.log(10); + const n = c * 20; + return (n + 12) / 24; case "1": case "2": case "3": @@ -225,12 +321,19 @@ export class AudioPlayer { } } + /** + * + * @param kind : string range: '1'..'10' + * @param value : float range 0..1 + */ setEq(kind: string, value: number) { // console.log({ kind, value }); const db = value * 24 - 12; switch (kind) { case "preamp": { - this.__preamp.gain.value = db; + // For now, 0 is 0db (no change). + // Equation used is: 10^((dB)/20) = x, where x (preamp.gain.value) is passed on to gainnode for boosting or attenuation. + this.__preamp.gain.value = Math.pow(10, db / 20); this._eqValues[kind] = db; this._eqEmitter.trigger(kind); break; @@ -292,12 +395,13 @@ export class AudioPlayer { return dispose; } - onVolumeChanged(cb: () => void): () => void { + onVolumeChanged(cb: Function): Function { + return this.on("volumechanged", cb); + } + + onBalanceChanged(cb: () => void): Function { const handler = () => cb(); - this._audio.addEventListener("volumechange", handler); - const dispose = () => { - this._audio.removeEventListener("volumechange", handler); - }; + const dispose = this.on("balancechange", handler); return dispose; } diff --git a/packages/webamp-modern/src/skin/Bitmap.ts b/packages/webamp-modern/src/skin/Bitmap.ts index 0bc43cfe..8813ae21 100644 --- a/packages/webamp-modern/src/skin/Bitmap.ts +++ b/packages/webamp-modern/src/skin/Bitmap.ts @@ -1,20 +1,35 @@ -import { assert, getId, normalizeDomId, num, px } from "../utils"; +import { UIRoot } from "../UIRoot"; +import { assert, getId, hexToRgb, normalizeDomId, num, px } from "../utils"; import ImageManager from "./ImageManager"; +export function genCssVar(bitmapId: string): string { + return `--bitmap-${bitmapId.replace(/[^a-zA-Z0-9]/g, "-")}`; +} + // http://wiki.winamp.com/wiki/XML_Elements#.3Cbitmap.2F.3E export default class Bitmap { _id: string; + _uiRoot: UIRoot; // lazy set _cssVar: string; _url: string; - _img: HTMLImageElement; + _img: CanvasImageSource; _canvas: HTMLCanvasElement; _x: number = 0; _y: number = 0; - _width: number; - _height: number; + _w: number; + _h: number; _file: string; + _transparentColor: string; _gammagroup: string; + // I am not sure, is bitmap need UiRoot? + constructor(uiRoot: UIRoot = null) { + this._uiRoot = uiRoot; + } + setUiRoot(uiRoot: UIRoot) { + this._uiRoot = uiRoot; + } + setXmlAttributes(attributes: { [attrName: string]: string }) { for (const [key, value] of Object.entries(attributes)) { this.setXmlAttr(key, value); @@ -25,8 +40,8 @@ export default class Bitmap { const key = _key.toLowerCase(); switch (key) { case "id": - this._id = value; - this._cssVar = `--bitmap-${this.getId().replace(/[^a-zA-Z0-9]/g, "-")}`; + this._id = value; //TODO: should be lowerCase here. + this._cssVar = genCssVar(this.getId()); break; case "x": this._x = num(value) ?? 0; @@ -35,10 +50,10 @@ export default class Bitmap { this._y = num(value) ?? 0; break; case "w": - this._width = num(value); + this._w = num(value); break; case "h": - this._height = num(value); + this._h = num(value); break; case "file": this._file = value; @@ -46,6 +61,10 @@ export default class Bitmap { case "gammagroup": this._gammagroup = value; break; + case "transparentcolor": + //seem as only windows media player uses it. + this._transparentColor = value; + break; default: return false; } @@ -57,15 +76,15 @@ export default class Bitmap { } getFile() { - return this._file; + return this._file || ""; } getWidth() { - return this._width; + return this._w; } getHeight() { - return this._height; + return this._h; } getLeft() { @@ -84,9 +103,18 @@ export default class Bitmap { return this._gammagroup; } - getImg(): HTMLImageElement { + getImg(): CanvasImageSource { return this._img; } + setImage(img: CanvasImageSource) { + // await imageManager.setImage(this._file, url); + // await this.ensureImageLoaded(imageManager); + this._img = img; + } + + loaded(): boolean { + return this._img != null; + } // Ensure we've loaded the image into our image loader. async ensureImageLoaded(imageManager: ImageManager) { @@ -97,11 +125,9 @@ export default class Bitmap { //force. also possibly set null: this._img = await imageManager.getImage(this._file); - if (this._img) { - if (this._width == null && this._height == null) { - this.setXmlAttr("w", String(this._img.width)); - this.setXmlAttr("h", String(this._img.height)); - } + if (this._img && this._w == null && this._h == null) { + this.setXmlAttr("w", String(this._img.width)); + this.setXmlAttr("h", String(this._img.height)); } } @@ -116,8 +142,8 @@ export default class Bitmap { } _getBackgrondSizeCSSAttribute(): string { - const width = px(this._width); - const height = px(this._height); + const width = px(this._w); + const height = px(this._h); return `${width} ${height}`; } @@ -139,21 +165,123 @@ export default class Bitmap { setAsActiveBackground(div: HTMLElement) { this._setAsBackground(div, "active-"); } + setAsInactiveBackground(div: HTMLElement) { + this._setAsBackground(div, "inactive-"); + } setAsHoverBackground(div: HTMLElement) { this._setAsBackground(div, "hover-"); } - getCanvas(): HTMLCanvasElement { - if (this._canvas == null) { - assert(this._img != null, "Expected bitmap image to be loaded"); - this._canvas = document.createElement("canvas"); - this._canvas.width = this.getWidth() || this._img.width; - this._canvas.height = this.getHeight() || this._img.height; - const ctx = this._canvas.getContext("2d"); - // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawImage - ctx.drawImage(this._img, -this._x, -this._y); + setAsHoverDownBackground(div: HTMLElement) { + this._setAsBackground(div, "hover-down-"); + } + + setAsDisabledBackground(div: HTMLElement) { + this._setAsBackground(div, "disabled-"); + } + + async getGammaTransformedUrl(uiRoot: UIRoot): Promise { + const buildCssProp = (url: string) => ` ${this.getCSSVar()}: url(${url});`; + const img = this.getImg(); + if (!img) { + console.warn(`Bitmap/font ${this.getId()} has no img. skipped.`); + return ""; } - return this._canvas; + + const groupId = this.getGammaGroup(); + const gammaGroup = uiRoot._getGammaGroup(groupId); + if (gammaGroup._value == "0,0,0") { + // triple zero meaning no gamma should be applied. + // return bitmap.getCanvas().toDataURL(); + const url = await this.toDataURL(uiRoot); + return buildCssProp(url); + } + const url = gammaGroup.transformImage( + img as HTMLImageElement, + this._x, + this._y, + this._w, + this._h + ); + return buildCssProp(url); + } + /** + * Final function that uses Bitmap; + * Afther call this, bitmap maybe destroyed. + * @returns url string used as embedded in -
+
+

Async wait for click demo

+

see the console

+ + + +
+
+ + + + + - \ No newline at end of file + diff --git a/packages/webamp-modern/src/tests.ts b/packages/webamp-modern/src/tests.ts index 94c1d291..e6458dbd 100644 --- a/packages/webamp-modern/src/tests.ts +++ b/packages/webamp-modern/src/tests.ts @@ -1,10 +1,12 @@ import "./maki/parser"; -import { parse as parseMaki, ParsedMaki } from "./maki/parser"; +import { Binding, parse as parseMaki, ParsedMaki } from "./maki/parser"; import { getMethod, getClass } from "./maki/objects"; import JSZip from "jszip"; // This module is imported early here in order to avoid a circular dependency. import { classResolver } from "./skin/resolver"; +import { Variable } from "./maki/v"; +import { getCaseInsensitiveFile } from "./utils"; function hack() { // Without this Snowpack will try to treeshake out resolver causing a circular @@ -23,6 +25,7 @@ type Ast = body: Ast[]; variableName: string; hookName: string; + binding?: Binding; // TODO: make this Ast[] args: string; } @@ -32,13 +35,16 @@ type Ast = methodName: string; args: Ast[]; body: Ast[]; + comment?: string; } | { kind: "ASSIGNMENT"; variableName: string; expression: Ast; + a?: Ast; + b?: Ast; } - | { kind: "IDENTIFIER"; value: string } + | { kind: "IDENTIFIER"; value: string; variable?: Variable } | { kind: "BINARY_EXPRESSION"; left: Ast; @@ -71,11 +77,13 @@ function prettyPrint(ast: Ast, indent: number = 0): string { return indented(prettyPrint(statement, indent + 1), indent + 1); }); const name = `${ast.variableName}.${ast.hookName}`; - return `${name}(${ast.args}){\n${body.join("\n")}\n}`; + return `${name}(${ast.args}){//${JSON.stringify( + ast.binding + )}\n${body.join("\n")}\n}`; case "CALL": return `${ast.objectName}.${ast.methodName}(${ast.args.map( prettyPrint - )})`; + )}) /*${ast.comment}*/ `; case "ASSIGNMENT": return `${ast.variableName} = ${prettyPrint(ast.expression)};`; case "IDENTIFIER": @@ -106,7 +114,7 @@ class Decompiler { variableTypeName(offset: number): string { const variable = this._program.variables[offset]; let type = variable.type; - switch (type) { + switch (variable.type) { case "OBJECT": { const guid = variable.guid; const klass = getClass(guid); @@ -115,9 +123,12 @@ class Decompiler { case "INT": return "int"; case "DOUBLE": + case "FLOAT": return "double"; case "STRING": return "string"; + case "BOOLEAN": + return "boolean"; default: throw new Error(`Unexpected type: ${type}`); } @@ -164,6 +175,7 @@ class Decompiler { const methodDefinition = getMethod(guid, method.name); output.push({ kind: "HOOK", + binding, variableName: this.variableName(binding.variableOffset), hookName: method.name, args: methodDefinition.parameters @@ -203,6 +215,7 @@ class Decompiler { stack.push({ kind: "IDENTIFIER", value: this.variableName(command.arg), + variable: this._program.variables[command.arg], }); break; } @@ -282,12 +295,73 @@ class Decompiler { break; } // call - case 24: - case 112: + case 24: // call + const methodOffset24 = command.arg; + const method24 = this._program.methods[methodOffset24]; + let methodName24 = method24.name; + // methodName24 = methodName24.toLowerCase(); + const guid24 = this._program.classes[method24.typeOffset]; + const methodDefinition24 = getMethod(guid24, method24.name); + const obj24 = stack.pop(); + if (obj24.kind !== "IDENTIFIER") { + throw new Error("Expectd ident"); + } + const args24 = methodDefinition24.parameters.map((param) => { + return stack.pop(); + }); + nodes.push({ + kind: "CALL", + objectName: obj24.value, + methodName: methodName24, + args: args24, + body: [], + comment: "call", + }); + stack.push({ + kind: "CALL", + objectName: obj24.value, + methodName: methodName24, + args: args24, + body: [], + comment: "call", + }); + break; + // case 25: // call Global + // const methodOffset25 = command.arg; + // const method25 = this._program.methods[methodOffset25]; + // let methodName25 = method25.name; + // methodName25 = methodName25.toLowerCase(); + // const guid25 = this._program.classes[method25.typeOffset]; + // const methodDefinition25 = getMethod(guid25, method25.name); + // const obj25 = stack.pop(); + // if (obj25.kind !== "IDENTIFIER") { + // throw new Error("Expectd ident"); + // } + // const args25 = methodDefinition25.parameters.map((param) => { + // return stack.pop(); + // }); + // nodes.push({ + // kind: "CALL", + // objectName: obj25.value, + // methodName:methodName25, + // args: args25, + // body: [], + // comment: 'call-Global' + // }); + // stack.push({ + // kind: "CALL", + // objectName: obj25.value, + // methodName:methodName25, + // args: args25, + // body: [], + // comment: 'call-GollBall' + // }) + // break; + case 112: // strangeCall const methodOffset = command.arg; const method = this._program.methods[methodOffset]; let methodName = method.name; - methodName = methodName.toLowerCase(); + // methodName = methodName.toLowerCase(); const guid = this._program.classes[method.typeOffset]; const methodDefinition = getMethod(guid, method.name); const obj = stack.pop(); @@ -297,11 +371,22 @@ class Decompiler { const args = methodDefinition.parameters.map((param) => { return stack.pop(); }); - stack.push({ + nodes.push({ + kind: "CALL", objectName: obj.value, methodName, - kind: "CALL", args, + body: [], + comment: + "STRANGECALL:" + JSON.stringify({ methodOffset, method, obj }), + }); + stack.push({ + kind: "CALL", + objectName: obj.value, + methodName: methodName, + args: args, + body: [], + comment: "stack-call", }); break; case 33: { @@ -322,6 +407,13 @@ class Decompiler { variableName: a.name, expression: b, }); + nodes.push({ + kind: "ASSIGNMENT", + variableName: JSON.stringify(a), + expression: b, + a, + b, + }); break; case 25: callStack.push(ip); @@ -338,11 +430,18 @@ class Decompiler { } async function main() { - const response = await fetch("assets/CornerAmp_Redux.wal"); + // const skin = "assets/CornerAmp_Redux.wal"; + // const script = "scripts/corner.maki"; + + const skin = "assets/WinampModern566.wal"; + const script = "scripts/eq.maki"; + + const response = await fetch(skin); const data = await response.blob(); const zip = await JSZip.loadAsync(data); - const makiFile = zip.file("scripts/corner.maki"); + // const makiFile = zip.file(script); + const makiFile = getCaseInsensitiveFile(zip, script); const scriptContents = await makiFile.async("arraybuffer"); // TODO: Try catch? const parsedScript = parseMaki(scriptContents); @@ -351,12 +450,57 @@ async function main() { const decompiled = decompiler.decompile(); - const textarea = document.createElement("textarea"); - textarea.style.display = "flex"; - textarea.style.width = "100%"; - textarea.style.height = "100vh"; - textarea.innerHTML = decompiled; - document.body.appendChild(textarea); + // const textarea = document.createElement("pre"); + // textarea.style.display = "flex"; + // textarea.style.width = "100%"; + // textarea.style.height = "100vh"; + // textarea.innerHTML = decompiled; + // document.body.appendChild(textarea); + document.getElementById("editor").innerHTML = decompiled; + window.loaded(); } main(); + +// https://stackoverflow.com/questions/65915371/how-do-i-make-the-program-wait-for-a-button-click-to-go-to-the-next-loop-iterati +// const btn = document.querySelector('button1'); +const btn1 = document.getElementById("btn1"); +const btn2 = document.getElementById("btn2"); +const btn3 = document.getElementById("btn3"); + +let successCallback; + +// function getNumber() { +async function getNumber(): Promise { + return new Promise((resolve) => (successCallback = resolve)); +} + +function btn1Click() { + if (successCallback) successCallback(1); +} +function btn2Click() { + if (successCallback) successCallback(2); +} +function btn3Click() { + if (successCallback) successCallback(-1); +} + +async function doIt() { + console.log("wait for clic...."); + btn1.addEventListener("click", btn1Click); + btn2.addEventListener("click", btn2Click); + btn3.addEventListener("click", btn3Click); + + for (let c = 1; c < 10; c += 1) { + const ret = await getNumber(); + console.log(c, "result=", ret); + if (ret < 0) break; + } + + btn1.removeEventListener("click", btn1Click); + btn2.removeEventListener("click", btn2Click); + btn3.removeEventListener("click", btn3Click); + console.log("Finished"); +} + +doIt(); diff --git a/packages/webamp-modern/src/utils.ts b/packages/webamp-modern/src/utils.ts index 1d8abd13..90d2980f 100644 --- a/packages/webamp-modern/src/utils.ts +++ b/packages/webamp-modern/src/utils.ts @@ -22,7 +22,19 @@ export function getCaseInsensitiveFile( filePath: string ): JSZipObject | null { const normalized = filePath.replace(/[\/\\]/g, `[/\\\\]`); - return zip.file(new RegExp(normalized, "i"))[0] ?? null; + const files = zip.file(new RegExp(normalized, "i")); + if (files && files.length > 1) { + // console.log('asking',filePath,'got files:', files); + const requestName = filePath.split("/").pop().toLowerCase(); + for (let i = 0; i < files.length; i++) { + const responseName = files[i].name.split("/").pop().toLowerCase(); + if (responseName == requestName) { + return files[i]; + } + } + return zip.file(new RegExp(`^${normalized}$`, "i"))[0] ?? null; + } + return files[0] ?? null; } export function num(str: string | void): number | null { @@ -39,11 +51,15 @@ export function relative(size: number): string { } export function toBool(str: string) { - assert( - str === "0" || str === "1", + str = str.toLowerCase(); + assume( + str === "0" || str === "1" || str === "false" || str === "true", `Expected bool value to be "0" or "1", but it was "${str}".` ); - return str === "1"; + if (!isNaN(parseInt(str))) { + return parseInt(str) > 0; + } + return str === "1" || str === "true"; } let id = 0; @@ -92,6 +108,19 @@ export function getUrlQuery(location: Location, variable: string): string { return new URL(location.href).searchParams.get(variable); } +export function debounce( + func: (...args: Params) => any, + timeout: number +): (...args: Params) => void { + let timer: NodeJS.Timeout; + return (...args: Params) => { + clearTimeout(timer); + timer = setTimeout(() => { + func(...args); + }, timeout); + }; +} + export const throttle = (fn: Function, wait: number = 300) => { let inThrottle: boolean, lastFn: ReturnType, @@ -100,9 +129,9 @@ export const throttle = (fn: Function, wait: number = 300) => { const context = this, args = arguments; if (!inThrottle) { + inThrottle = true; fn.apply(context, args); lastTime = Date.now(); - inThrottle = true; } else { clearTimeout(lastFn); lastFn = setTimeout(() => { @@ -115,6 +144,24 @@ export const throttle = (fn: Function, wait: number = 300) => { }; }; +export function unimplemented(value: any): any { + return value; +} + +/** + * parse color string into byte values. + * @param hex only a valid html : '#XXXXXX' + * @returns an object with respected keys of: r,g,b. + */ +export function hexToRgb(hex: string): { r: number; g: number; b: number } { + var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); + return { + r: parseInt(result[1], 16), + g: parseInt(result[2], 16), + b: parseInt(result[3], 16), + }; +} + /** * Purpuse: to hold eventListeners */ diff --git a/packages/webamp-modern/tools/eslint-rules/dist/proper-maki-types.js b/packages/webamp-modern/tools/eslint-rules/dist/proper-maki-types.js index 62f35c9c..65e0e4bf 100644 --- a/packages/webamp-modern/tools/eslint-rules/dist/proper-maki-types.js +++ b/packages/webamp-modern/tools/eslint-rules/dist/proper-maki-types.js @@ -1 +1 @@ -var V=Object.create;var p=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var U=Object.getOwnPropertyNames,w=Object.getOwnPropertySymbols,$=Object.getPrototypeOf,E=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable;var j=(e,r,a)=>r in e?p(e,r,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[r]=a,i=(e,r)=>{for(var a in r||(r={}))E.call(r,a)&&j(e,a,r[a]);if(w)for(var a of w(r))z.call(r,a)&&j(e,a,r[a]);return e};var q=e=>p(e,"__esModule",{value:!0});var X=(e,r,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of U(r))!E.call(e,n)&&n!=="default"&&p(e,n,{get:()=>r[n],enumerable:!(a=H(r,n))||a.enumerable});return e},Y=e=>X(q(p(e!=null?V($(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);var K={parent:"@{00000000-0000-0000-0000-000000000000}@",functions:[{result:"String",name:"getClassName",parameters:[]},{result:"String",name:"getId",parameters:[]},{result:"Int",name:"onNotify",parameters:[["String","command"],["String","param"],["int","a"],["int","b"]]}],name:"Object"},J={parent:"Object",functions:[{result:"",name:"onScriptLoaded",parameters:[]},{result:"",name:"onScriptUnloading",parameters:[]},{result:"",name:"onQuit",parameters:[]},{result:"",name:"onSetXuiParam",parameters:[["String","param"],["String","value"]]},{result:"",name:"onKeyDown",parameters:[["String","key"]]},{result:"",name:"onAccelerator",parameters:[["String","action"],["String","section"],["String","key"]]},{result:"",name:"onCreateLayout",parameters:[["Layout","_layout"]]},{result:"",name:"onShowLayout",parameters:[["Layout","_layout"]]},{result:"",name:"onHideLayout",parameters:[["Layout","_layout"]]},{result:"",name:"onViewPortChanged",parameters:[["int","width"],["int","height"]]},{result:"",name:"onStop",parameters:[]},{result:"",name:"onPlay",parameters:[]},{result:"",name:"onPause",parameters:[]},{result:"",name:"onResume",parameters:[]},{result:"",name:"onTitleChange",parameters:[["String","newtitle"]]},{result:"",name:"onTitle2Change",parameters:[["String","newtitle2"]]},{result:"",name:"onUrlChange",parameters:[["String","url"]]},{result:"",name:"onInfoChange",parameters:[["String","info"]]},{result:"",name:"onStatusMsg",parameters:[["String","msg"]]},{result:"",name:"onEqBandChanged",parameters:[["int","band"],["int","newvalue"]]},{result:"",name:"onEqPreampChanged",parameters:[["int","newvalue"]]},{result:"",name:"onEqChanged",parameters:[["int","newstatus"]]},{result:"",name:"onEqFreqChanged",parameters:[["int","isiso"]]},{result:"",name:"onVolumeChanged",parameters:[["int","newvol"]]},{result:"",name:"onSeek",parameters:[["int","newpos"]]},{result:"Container",name:"getContainer",parameters:[["String","container_id"]]},{result:"Container",name:"newDynamicContainer",parameters:[["String","container_id"]]},{result:"Group",name:"newGroup",parameters:[["String","group_id"]]},{result:"Layout",name:"newGroupAsLayout",parameters:[["String","group_id"]]},{result:"Int",name:"getNumContainers",parameters:[]},{result:"Container",name:"enumContainer",parameters:[["Int","num"]]},{result:"String",name:"enumEmbedGUID",parameters:[["int","num"]]},{result:"Wac",name:"getWac",parameters:[["String","wac_guid"]]},{result:"Int",name:"messageBox",parameters:[["String","message"],["String","msgtitle"],["Int","flag"],["String","notanymore_id"]]},{result:"String",name:"getPlayItemString",parameters:[]},{result:"Int",name:"getPlayItemLength",parameters:[]},{result:"String",name:"getPlayItemMetaDataString",parameters:[["String","metadataname"]]},{result:"String",name:"getMetaDataString",parameters:[["String","filename"],["String","metadataname"]]},{result:"String",name:"getPlayItemDisplayTitle",parameters:[]},{result:"Int",name:"getCurrentTrackRating",parameters:[]},{result:"",name:"onCurrentTrackRated",parameters:[["int","rating"]]},{result:"",name:"setCurrentTrackRating",parameters:[["int","rating"]]},{result:"String",name:"getExtFamily",parameters:[["String","ext"]]},{result:"String",name:"getDecoderName",parameters:[["string","playitem"]]},{result:"",name:"playFile",parameters:[["String","playitem"]]},{result:"Int",name:"getAlbumArt",parameters:[["String","playitem"]]},{result:"",name:"downloadMedia",parameters:[["String","url"],["String","destinationPath"],["boolean","wantAddToML"],["boolean","notifyDownloadsList"]]},{result:"",name:"downloadURL",parameters:[["String","url"],["String","destination_filename"],["String","progress_dialog_title"]]},{result:"",name:"onDownloadFinished",parameters:[["String","url"],["boolean","success"],["String","filename"]]},{result:"String",name:"getDownloadPath",parameters:[]},{result:"",name:"setDownloadPath",parameters:[["String","new_path"]]},{result:"",name:"enqueueFile",parameters:[["String","playitem"]]},{result:"Int",name:"getLeftVuMeter",parameters:[]},{result:"Int",name:"getRightVuMeter",parameters:[]},{result:"Int",name:"getVolume",parameters:[]},{result:"",name:"setVolume",parameters:[["Int","vol"]]},{result:"",name:"play",parameters:[]},{result:"",name:"stop",parameters:[]},{result:"",name:"pause",parameters:[]},{result:"",name:"next",parameters:[]},{result:"",name:"previous",parameters:[]},{result:"",name:"eject",parameters:[]},{result:"",name:"seekTo",parameters:[["Int","pos"]]},{result:"Int",name:"getPosition",parameters:[]},{result:"",name:"setEqBand",parameters:[["int","band"],["Int","value"]]},{result:"",name:"setEqPreamp",parameters:[["Int","value"]]},{result:"",name:"setEq",parameters:[["Int","onoff"]]},{result:"Int",name:"getEqBand",parameters:[["int","band"]]},{result:"int",name:"getEqPreamp",parameters:[]},{result:"int",name:"getEq",parameters:[]},{result:"int",name:"getMousePosX",parameters:[]},{result:"int",name:"getMousePosY",parameters:[]},{result:"String",name:"integerToString",parameters:[["Int","value"]]},{result:"Int",name:"StringToInteger",parameters:[["String","str"]]},{result:"String",name:"floatToString",parameters:[["float","value"],["int","ndigits"]]},{result:"Float",name:"stringToFloat",parameters:[["String","str"]]},{result:"String",name:"integerToLongTime",parameters:[["Int","value"]]},{result:"String",name:"integerToTime",parameters:[["Int","value"]]},{result:"String",name:"dateToTime",parameters:[["Int","datetime"]]},{result:"String",name:"dateToLongTime",parameters:[["Int","datetime"]]},{result:"String",name:"formatDate",parameters:[["Int","datetime"]]},{result:"String",name:"formatLongDate",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateYear",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateMonth",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateDay",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateDow",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateDoy",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateHour",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateMin",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateSec",parameters:[["Int","datetime"]]},{result:"Int",name:"getDateDst",parameters:[["Int","datetime"]]},{result:"Int",name:"getDate",parameters:[]},{result:"String",name:"strmid",parameters:[["String","str"],["Int","start"],["Int","len"]]},{result:"String",name:"strleft",parameters:[["string","str"],["int","nchars"]]},{result:"string",name:"strright",parameters:[["string","str"],["int","nchars"]]},{result:"int",name:"strsearch",parameters:[["string","str"],["string","substr"]]},{result:"int",name:"strlen",parameters:[["string","str"]]},{result:"string",name:"strupper",parameters:[["string","str"]]},{result:"string",name:"strlower",parameters:[["string","str"]]},{result:"string",name:"urlEncode",parameters:[["string","url"]]},{result:"string",name:"urlDecode",parameters:[["string","url"]]},{result:"string",name:"parseATF",parameters:[["string","topass"]]},{result:"string",name:"removePath",parameters:[["string","str"]]},{result:"string",name:"getPath",parameters:[["string","str"]]},{result:"string",name:"getExtension",parameters:[["string","str"]]},{result:"string",name:"getToken",parameters:[["string","str"],["string","separator"],["int","tokennum"]]},{result:"double",name:"sin",parameters:[["double","value"]]},{result:"double",name:"cos",parameters:[["double","value"]]},{result:"double",name:"tan",parameters:[["double","value"]]},{result:"double",name:"asin",parameters:[["double","value"]]},{result:"double",name:"acos",parameters:[["double","value"]]},{result:"double",name:"atan",parameters:[["double","value"]]},{result:"double",name:"atan2",parameters:[["double","y"],["double","x"]]},{result:"double",name:"pow",parameters:[["double","value"],["double","pvalue"]]},{result:"double",name:"sqr",parameters:[["double","value"]]},{result:"double",name:"log10",parameters:[["double","value"]]},{result:"double",name:"ln",parameters:[["double","value"]]},{result:"double",name:"sqrt",parameters:[["double","value"]]},{result:"int",name:"random",parameters:[["int","max"]]},{result:"",name:"setPrivateString",parameters:[["string","section"],["string","item"],["string","value"]]},{result:"",name:"setPrivateInt",parameters:[["string","section"],["string","item"],["int","value"]]},{result:"String",name:"getPrivateString",parameters:[["String","section"],["String","item"],["String","defvalue"]]},{result:"Int",name:"getPrivateInt",parameters:[["String","section"],["String","item"],["Int","defvalue"]]},{result:"",name:"setPublicString",parameters:[["String","item"],["String","value"]]},{result:"",name:"setPublicInt",parameters:[["String","item"],["Int","value"]]},{result:"String",name:"getPublicString",parameters:[["String","item"],["String","defvalue"]]},{result:"Int",name:"getPublicInt",parameters:[["String","item"],["Int","defvalue"]]},{result:"String",name:"getParam",parameters:[]},{result:"Group",name:"getScriptGroup",parameters:[]},{result:"Int",name:"getViewportWidth",parameters:[]},{result:"Int",name:"getViewportWidthFromGuiObject",parameters:[["GuiObject","g"]]},{result:"Int",name:"getViewportWidthFromPoint",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getMonitorWidth",parameters:[]},{result:"Int",name:"getMonitorWidthFromPoint",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getMonitorWidthFromGuiObject",parameters:[["GuiObject","g"]]},{result:"",name:"onMouseMove",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getViewportHeight",parameters:[]},{result:"Int",name:"getViewportHeightFromGuiObject",parameters:[["GuiObject","g"]]},{result:"Int",name:"getViewportHeightFromPoint",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getMonitorHeight",parameters:[]},{result:"Int",name:"getMonitorHeightFromPoint",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getMonitorHeightFromGuiObject",parameters:[["GuiObject","g"]]},{result:"Int",name:"getMonitorLeft",parameters:[]},{result:"Int",name:"getMonitorLeftFromGuiObject",parameters:[["GuiObject","g"]]},{result:"Int",name:"getMonitorLeftFromPoint",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getMonitorTop",parameters:[]},{result:"Int",name:"getMonitorTopFromGuiObject",parameters:[["GuiObject","g"]]},{result:"Int",name:"getMonitorTopFromPoint",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getViewportLeft",parameters:[]},{result:"Int",name:"getViewportLeftFromGuiObject",parameters:[["GuiObject","g"]]},{result:"Int",name:"getViewportLeftFromPoint",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getViewportTop",parameters:[]},{result:"Int",name:"getViewportTopFromGuiObject",parameters:[["GuiObject","g"]]},{result:"Int",name:"getViewportTopFromPoint",parameters:[["int","x"],["int","y"]]},{result:"",name:"debugString",parameters:[["String","str"],["Int","severity"]]},{result:"",name:"ddeSend",parameters:[["String","application"],["String","command"],["Int","mininterval"]]},{result:"WindowHolder",name:"onLookForComponent",parameters:[["String","guid"]]},{result:"Int",name:"getCurAppLeft",parameters:[]},{result:"Int",name:"getCurAppTop",parameters:[]},{result:"Int",name:"getCurAppWidth",parameters:[]},{result:"Int",name:"getCurAppHeight",parameters:[]},{result:"Boolean",name:"isAppActive",parameters:[]},{result:"String",name:"getSkinName",parameters:[]},{result:"",name:"switchSkin",parameters:[["String","skinname"]]},{result:"Int",name:"isLoadingSkin",parameters:[]},{result:"",name:"lockUI",parameters:[]},{result:"",name:"unlockUI",parameters:[]},{result:"Browser",name:"getMainBrowser",parameters:[]},{result:"",name:"popMainBrowser",parameters:[]},{result:"",name:"navigateUrl",parameters:[["String","url"]]},{result:"",name:"navigateUrlBrowser",parameters:[["String","url"]]},{result:"Boolean",name:"onOpenURL",parameters:[["string","url"]]},{result:"Boolean",name:"isObjectValid",parameters:[["Object","o"]]},{result:"Int",name:"integer",parameters:[["Double","d"]]},{result:"Double",name:"frac",parameters:[["Double","d"]]},{result:"Int",name:"getTimeOfDay",parameters:[]},{result:"",name:"setMenuTransparency",parameters:[["int","alphavalue"]]},{result:"Boolean",name:"onGetCancelComponent",parameters:[["String","guid"],["boolean","goingvisible"]]},{result:"Int",name:"getStatus",parameters:[]},{result:"Int",name:"isKeyDown",parameters:[["int","vk_code"]]},{result:"",name:"setClipboardText",parameters:[["String","_text"]]},{result:"String",name:"Chr",parameters:[["Int","charnum"]]},{result:"String",name:"translate",parameters:[["String","str"]]},{result:"String",name:"getString",parameters:[["String","table"],["int","id"]]},{result:"String",name:"getLanguageId",parameters:[]},{result:"String",name:"selectFile",parameters:[["String","extlist"],["String","id"],["String","prev_filename"]]},{result:"String",name:"selectFolder",parameters:[["String","wnd_title"],["String","wnd_info"],["String","default_path"]]},{result:"",name:"systemMenu",parameters:[]},{result:"",name:"windowMenu",parameters:[]},{result:"",name:"triggerAction",parameters:[["GuiObject","context"],["String","actionname"],["String","actionparam"]]},{result:"GuiObject",name:"showWindow",parameters:[["String","guidorgroupid"],["String","preferedcontainer"],["Boolean","transient"]]},{result:"",name:"hideWindow",parameters:[["GuiObject","hw"]]},{result:"",name:"hideNamedWindow",parameters:[["String","guidorgroup"]]},{result:"Boolean",name:"isNamedWindowVisible",parameters:[["String","guidorgroup"]]},{result:"",name:"setAtom",parameters:[["String","atomname"],["Object","object"]]},{result:"Object",name:"getAtom",parameters:[["String","atomname"]]},{result:"",name:"invokeDebugger",parameters:[]},{result:"int",name:"hasVideoSupport",parameters:[]},{result:"Int",name:"isVideo",parameters:[]},{result:"Int",name:"isVideoFullscreen",parameters:[]},{result:"Int",name:"getIdealVideoWidth",parameters:[]},{result:"Int",name:"getIdealVideoHeight",parameters:[]},{result:"Int",name:"isMinimized",parameters:[]},{result:"",name:"minimizeApplication",parameters:[]},{result:"",name:"restoreApplication",parameters:[]},{result:"",name:"activateApplication",parameters:[]},{result:"Int",name:"getPlaylistLength",parameters:[]},{result:"Int",name:"getPlaylistIndex",parameters:[]},{result:"",name:"clearPlaylist",parameters:[]},{result:"Boolean",name:"isDesktopAlphaAvailable",parameters:[]},{result:"Boolean",name:"isTransparencyAvailable",parameters:[]},{result:"Int",name:"onShowNotification",parameters:[]},{result:"String",name:"getSongInfoText",parameters:[]},{result:"String",name:"getSongInfoTextTranslated",parameters:[]},{result:"Int",name:"getVisBand",parameters:[["int","channel"],["int","band"]]},{result:"Double",name:"getRuntimeVersion",parameters:[]},{result:"Int",name:"isWa2ComponentVisible",parameters:[["String","guid"]]},{result:"",name:"hideWa2Component",parameters:[["String","guid"]]},{result:"boolean",name:"isProVersion",parameters:[]},{result:"String",name:"getWinampVersion",parameters:[]},{result:"Int",name:"getBuildNumber",parameters:[]},{result:"int",name:"getFileSize",parameters:[["String","fullfilename"]]}],name:"System"},Z={parent:"Object",functions:[{result:"",name:"onSwitchToLayout",parameters:[["Layout","newlayout"]]},{result:"",name:"onBeforeSwitchToLayout",parameters:[["Layout","oldlayout"],["Layout","newlayout"]]},{result:"",name:"setXmlParam",parameters:[["String","param"],["String","value"]]},{result:"",name:"onHideLayout",parameters:[["Layout","_layout"]]},{result:"",name:"onShowLayout",parameters:[["Layout","_layout"]]},{result:"Layout",name:"getLayout",parameters:[["String","layout_id"]]},{result:"Int",name:"getNumLayouts",parameters:[]},{result:"Layout",name:"enumLayout",parameters:[["Int","num"]]},{result:"",name:"switchToLayout",parameters:[["String","layout_id"]]},{result:"",name:"show",parameters:[]},{result:"",name:"hide",parameters:[]},{result:"",name:"close",parameters:[]},{result:"",name:"toggle",parameters:[]},{result:"Int",name:"isDynamic",parameters:[]},{result:"",name:"setName",parameters:[["String","name"]]},{result:"String",name:"getName",parameters:[]},{result:"String",name:"getGuid",parameters:[]},{result:"Layout",name:"getCurLayout",parameters:[]},{result:"",name:"onAddContent",parameters:[["GuiObject","wnd"],["String","id"],["String","guid"]]}],name:"Container"},Q={parent:"Object",functions:[{result:"String",name:"getGuid",parameters:[]},{result:"String",name:"getName",parameters:[]},{result:"Int",name:"sendCommand",parameters:[["String","cmd"],["Int","param1"],["Int","param2"],["String","param3"]]},{result:"",name:"show",parameters:[]},{result:"",name:"hide",parameters:[]},{result:"Boolean",name:"isVisible",parameters:[]},{result:"",name:"onNotify",parameters:[["String","notifstr"],["Int","a"],["Int","b"]]},{result:"",name:"onShow",parameters:[]},{result:"",name:"onHide",parameters:[]},{result:"",name:"setStatusBar",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"getStatusBar",parameters:[]}],name:"Wac"},ee={parent:"Object",functions:[{result:"",name:"addItem",parameters:[["Any","_object"]]},{result:"",name:"removeItem",parameters:[["int","pos"]]},{result:"Any",name:"enumItem",parameters:[["int","pos"]]},{result:"Int",name:"findItem",parameters:[["Any","_object"]]},{result:"Int",name:"findItem2",parameters:[["Any","_object"],["int","startItem"]]},{result:"int",name:"getNumItems",parameters:[]},{result:"",name:"removeAll",parameters:[]}],name:"List"},te={parent:"Object",functions:[{result:"boolean",name:"getItem",parameters:[["int","n"]]},{result:"",name:"setItem",parameters:[["int","n"],["boolean","val"]]},{result:"",name:"setSize",parameters:[["int","s"]]},{result:"int",name:"getSize",parameters:[]}],name:"BitList"},re={parent:"Object",functions:[{result:"Int",name:"getValue",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"getARGBValue",parameters:[["int","x"],["int","y"],["int","channel"]]},{result:"Boolean",name:"inRegion",parameters:[["int","x"],["int","y"]]},{result:"",name:"loadMap",parameters:[["String","bitmapid"]]},{result:"Int",name:"getWidth",parameters:[]},{result:"Int",name:"getHeight",parameters:[]},{result:"Region",name:"getRegion",parameters:[]}],name:"Map"},ae={parent:"Object",functions:[{result:"",name:"addSubMenu",parameters:[["PopupMenu","submenu"],["String","submenutext"]]},{result:"",name:"addCommand",parameters:[["String","cmdtxt"],["Int","cmd_id"],["Boolean","checked"],["Boolean","disabled"]]},{result:"",name:"addSeparator",parameters:[]},{result:"Int",name:"popAtXY",parameters:[["int","x"],["int","y"]]},{result:"Int",name:"popAtMouse",parameters:[]},{result:"Int",name:"getNumCommands",parameters:[]},{result:"",name:"checkCommand",parameters:[["int","cmd_id"],["boolean","check"]]},{result:"",name:"disableCommand",parameters:[["int","cmd_id"],["boolean","disable"]]}],name:"PopupMenu"},ne={parent:"Object",functions:[{result:"",name:"add",parameters:[["Region","reg"]]},{result:"",name:"sub",parameters:[["Region","reg"]]},{result:"",name:"offset",parameters:[["int","x"],["int","y"]]},{result:"",name:"stretch",parameters:[["double","r"]]},{result:"",name:"copy",parameters:[["Region","reg"]]},{result:"",name:"loadFromMap",parameters:[["Map","regionmap"],["Int","threshold"],["Boolean","reversed"]]},{result:"",name:"loadFromBitmap",parameters:[["String","bitmapid"]]},{result:"Int",name:"getBoundingBoxX",parameters:[]},{result:"Int",name:"getBoundingBoxY",parameters:[]},{result:"Int",name:"getBoundingBoxW",parameters:[]},{result:"Int",name:"getBoundingBoxH",parameters:[]}],name:"Region"},se={parent:"Object",functions:[{result:"",name:"onTimer",parameters:[]},{result:"",name:"setDelay",parameters:[["int","millisec"]]},{result:"Int",name:"getDelay",parameters:[]},{result:"",name:"start",parameters:[]},{result:"",name:"stop",parameters:[]},{result:"",name:"isRunning",parameters:[]},{result:"Int",name:"getSkipped",parameters:[]}],name:"Timer"},me={parent:"Object",functions:[{result:"Int",name:"setFeed",parameters:[["String","feed_id"]]},{result:"",name:"releaseFeed",parameters:[]},{result:"",name:"onFeedChange",parameters:[["String","new_feeddata"]]}],name:"FeedWatcher"},le={parent:"Object",functions:[{result:"",name:"show",parameters:[]},{result:"",name:"hide",parameters:[]},{result:"int",name:"isVisible",parameters:[]},{result:"",name:"onSetVisible",parameters:[["Boolean","onoff"]]},{result:"",name:"setAlpha",parameters:[["int","alpha"]]},{result:"int",name:"getAlpha",parameters:[]},{result:"",name:"onLeftButtonUp",parameters:[["int","x"],["int","y"]]},{result:"",name:"onLeftButtonDown",parameters:[["int","x"],["int","y"]]},{result:"",name:"onRightButtonUp",parameters:[["int","x"],["int","y"]]},{result:"",name:"onRightButtonDown",parameters:[["int","x"],["int","y"]]},{result:"",name:"onRightButtonDblClk",parameters:[["int","x"],["int","y"]]},{result:"",name:"onLeftButtonDblClk",parameters:[["int","x"],["int","y"]]},{result:"int",name:"onMouseWheelUp",parameters:[["int","clicked"],["int","lines"]]},{result:"int",name:"onMouseWheelDown",parameters:[["int","clicked"],["int","lines"]]},{result:"",name:"onMouseMove",parameters:[["int","x"],["int","y"]]},{result:"",name:"onEnterArea",parameters:[]},{result:"",name:"onLeaveArea",parameters:[]},{result:"",name:"setEnabled",parameters:[["boolean","onoff"]]},{result:"boolean",name:"getEnabled",parameters:[]},{result:"",name:"onEnable",parameters:[["boolean","onoff"]]},{result:"",name:"resize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]]},{result:"",name:"onResize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]]},{result:"boolean",name:"isMouseOver",parameters:[["int","x"],["int","y"]]},{result:"int",name:"getLeft",parameters:[]},{result:"int",name:"getTop",parameters:[]},{result:"int",name:"getWidth",parameters:[]},{result:"int",name:"getHeight",parameters:[]},{result:"",name:"setTargetX",parameters:[["int","x"]]},{result:"",name:"setTargetY",parameters:[["int","y"]]},{result:"",name:"setTargetW",parameters:[["int","w"]]},{result:"",name:"setTargetH",parameters:[["int","r"]]},{result:"",name:"setTargetA",parameters:[["int","alpha"]]},{result:"",name:"setTargetSpeed",parameters:[["float","insecond"]]},{result:"",name:"gotoTarget",parameters:[]},{result:"",name:"onTargetReached",parameters:[]},{result:"",name:"cancelTarget",parameters:[]},{result:"",name:"reverseTarget",parameters:[["int","reverse"]]},{result:"",name:"onStartup",parameters:[]},{result:"boolean",name:"isGoingToTarget",parameters:[]},{result:"",name:"setXmlParam",parameters:[["String","param"],["String","value"]]},{result:"String",name:"getXmlParam",parameters:[["String","param"]]},{result:"",name:"init",parameters:[["Group","parent"]]},{result:"",name:"bringToFront",parameters:[]},{result:"",name:"bringToBack",parameters:[]},{result:"",name:"bringAbove",parameters:[["GuiObject","guiobj"]]},{result:"",name:"bringBelow",parameters:[["GuiObject","guiobj"]]},{result:"Int",name:"getGuiX",parameters:[]},{result:"Int",name:"getGuiY",parameters:[]},{result:"Int",name:"getGuiW",parameters:[]},{result:"Int",name:"getGuiH",parameters:[]},{result:"Int",name:"getGuiRelatX",parameters:[]},{result:"Int",name:"getGuiRelatY",parameters:[]},{result:"Int",name:"getGuiRelatW",parameters:[]},{result:"Int",name:"getGuiRelatH",parameters:[]},{result:"Boolean",name:"isActive",parameters:[]},{result:"GuiObject",name:"getParent",parameters:[]},{result:"Layout",name:"getParentLayout",parameters:[]},{result:"GuiObject",name:"getTopParent",parameters:[]},{result:"int",name:"runModal",parameters:[]},{result:"",name:"endModal",parameters:[["int","retcode"]]},{result:"GuiObject",name:"findObject",parameters:[["String","id"]]},{result:"GuiObject",name:"findObjectXY",parameters:[["int","x"],["int","y"]]},{result:"String",name:"getName",parameters:[]},{result:"int",name:"clientToScreenX",parameters:[["int","x"]]},{result:"int",name:"clientToScreenY",parameters:[["int","y"]]},{result:"int",name:"clientToScreenW",parameters:[["int","w"]]},{result:"int",name:"clientToScreenH",parameters:[["int","h"]]},{result:"int",name:"screenToClientX",parameters:[["int","x"]]},{result:"int",name:"screenToClientY",parameters:[["int","y"]]},{result:"int",name:"screenToClientW",parameters:[["int","w"]]},{result:"int",name:"screenToClientH",parameters:[["int","h"]]},{result:"int",name:"getAutoWidth",parameters:[]},{result:"int",name:"getAutoHeight",parameters:[]},{result:"",name:"setFocus",parameters:[]},{result:"",name:"onChar",parameters:[["String","c"]]},{result:"",name:"onAccelerator",parameters:[["String","accel"]]},{result:"Boolean",name:"isMouseOverRect",parameters:[]},{result:"Object",name:"getInterface",parameters:[["String","interface_guid"]]},{result:"",name:"onDragEnter",parameters:[]},{result:"",name:"onDragOver",parameters:[["int","x"],["int","y"]]},{result:"",name:"onDragLeave",parameters:[]},{result:"",name:"onKeyDown",parameters:[["int","vk_code"]]},{result:"",name:"onKeyUp",parameters:[["int","vk_code"]]},{result:"",name:"onGetFocus",parameters:[]},{result:"",name:"onKillFocus",parameters:[]},{result:"Int",name:"sendAction",parameters:[["String","action"],["String","param"],["Int","x"],["int","y"],["int","p1"],["int","p2"]]},{result:"Int",name:"onAction",parameters:[["String","action"],["String","param"],["Int","x"],["int","y"],["int","p1"],["int","p2"],["GuiObject","source"]]}],name:"GuiObject"},ie={parent:"GuiObject",functions:[{result:"GuiObject",name:"getObject",parameters:[["String","object_id"]]},{result:"Int",name:"getNumObjects",parameters:[]},{result:"GuiObject",name:"enumObject",parameters:[["Int","num"]]},{result:"",name:"onCreateObject",parameters:[["GuiObject","newobj"]]},{result:"Int",name:"getMousePosX",parameters:[]},{result:"Int",name:"getMousePosY",parameters:[]},{result:"Boolean",name:"isLayout",parameters:[]}],name:"Group"},ue={parent:"Group",functions:[{result:"",name:"onDock",parameters:[["int","side"]]},{result:"",name:"onUndock",parameters:[]},{result:"",name:"onScale",parameters:[["Double","newscalevalue"]]},{result:"Double",name:"getScale",parameters:[]},{result:"",name:"setScale",parameters:[["Double","scalevalue"]]},{result:"",name:"setDesktopAlpha",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"getDesktopAlpha",parameters:[]},{result:"Container",name:"getContainer",parameters:[]},{result:"",name:"center",parameters:[]},{result:"",name:"onMove",parameters:[]},{result:"",name:"onEndMove",parameters:[]},{result:"",name:"onUserResize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]]},{result:"",name:"snapAdjust",parameters:[["int","left"],["int","top"],["int","right"],["int","bottom"]]},{result:"Int",name:"getSnapAdjustTop",parameters:[]},{result:"Int",name:"getSnapAdjustRight",parameters:[]},{result:"Int",name:"getSnapAdjustLeft",parameters:[]},{result:"Int",name:"getSnapAdjustBottom",parameters:[]},{result:"",name:"setRedrawOnResize",parameters:[["int","wantredrawonresize"]]},{result:"",name:"beforeRedock",parameters:[]},{result:"",name:"redock",parameters:[]},{result:"Boolean",name:"isTransparencySafe",parameters:[]},{result:"Boolean",name:"isLayoutAnimationSafe",parameters:[]},{result:"",name:"onMouseEnterLayout",parameters:[]},{result:"",name:"onMouseLeaveLayout",parameters:[]},{result:"",name:"onSnapAdjustChanged",parameters:[]}],name:"Layout"},oe={parent:"GuiObject",functions:[{result:"",name:"setRegionFromMap",parameters:[["Map","regionmap"],["Int","threshold"],["Boolean","reverse"]]},{result:"",name:"setRegion",parameters:[["Region","reg"]]},{result:"GuiObject",name:"getContent",parameters:[]},{result:"String",name:"getGuid",parameters:[]},{result:"String",name:"getComponentName",parameters:[]},{result:"",name:"onGetWac",parameters:[["Wac","wacobj"]]},{result:"",name:"onGiveUpWac",parameters:[["Wac","wacobj"]]},{result:"Wac",name:"getWac",parameters:[]},{result:"",name:"setAcceptWac",parameters:[["Boolean","onoff"]]}],name:"WindowHolder"},pe={parent:"GuiObject",functions:[{result:"Int",name:"getMaxHeight",parameters:[]},{result:"Int",name:"getMaxWidth",parameters:[]},{result:"Int",name:"setScroll",parameters:[["int","x"]]},{result:"Int",name:"getScroll",parameters:[]},{result:"Int",name:"getNumChildren",parameters:[]},{result:"GuiObject",name:"enumChildren",parameters:[["int","n"]]}],name:"ComponentBucket"},ge={parent:"GuiObject",functions:[{result:"",name:"onEnter",parameters:[]},{result:"",name:"onAbort",parameters:[]},{result:"",name:"onIdleEditUpdate",parameters:[]},{result:"",name:"onEditUpdate",parameters:[]},{result:"",name:"setText",parameters:[["String","txt"]]},{result:"",name:"setAutoEnter",parameters:[["boolean","onoff"]]},{result:"Int",name:"getAutoEnter",parameters:[]},{result:"String",name:"getText",parameters:[]},{result:"",name:"selectAll",parameters:[]},{result:"",name:"enter",parameters:[]},{result:"",name:"setIdleEnabled",parameters:[["boolean","onoff"]]},{result:"Int",name:"getIdleEnabled",parameters:[]}],name:"Edit"},ce={parent:"GuiObject",functions:[{result:"",name:"onSetPosition",parameters:[["int","newpos"]]},{result:"",name:"onPostedPosition",parameters:[["int","newpos"]]},{result:"",name:"onSetFinalPosition",parameters:[["int","pos"]]},{result:"",name:"setPosition",parameters:[["int","pos"]]},{result:"Int",name:"getPosition",parameters:[]},{result:"",name:"lock",parameters:[]},{result:"",name:"unlock",parameters:[]}],name:"Slider"},de={parent:"GuiObject",functions:[{result:"",name:"onFrame",parameters:[]},{result:"",name:"setRealtime",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"getRealtime",parameters:[]},{result:"Int",name:"getMode",parameters:[]},{result:"",name:"setMode",parameters:[["Int","mode"]]},{result:"",name:"nextMode",parameters:[]}],name:"Vis"},Ie={parent:"GuiObject",functions:[{result:"",name:"navigateUrl",parameters:[["String","url"]]},{result:"",name:"back",parameters:[]},{result:"",name:"forward",parameters:[]},{result:"",name:"stop",parameters:[]},{result:"",name:"refresh",parameters:[]},{result:"",name:"home",parameters:[]},{result:"",name:"setTargetName",parameters:[["String","targetname"]]},{result:"Boolean",name:"onBeforeNavigate",parameters:[["String","url"],["Int","flags"],["String","targetframename"]]},{result:"",name:"onDocumentComplete",parameters:[["String","url"]]},{result:"",name:"onDocumentReady",parameters:[["String","url"]]},{result:"String",name:"getDocumentTitle",parameters:[]},{result:"",name:"onNavigateError",parameters:[["String","url"],["int","code"]]},{result:"",name:"setCancelIEErrorPage",parameters:[["boolean","cancel"]]},{result:"",name:"scrape",parameters:[]},{result:"string",name:"onMediaLink",parameters:[["string","url"]]}],name:"Browser"},fe={parent:"GuiObject",functions:[],name:"EqVis"},be={parent:"GuiObject",functions:[],name:"Status"},Se={parent:"GuiObject",functions:[{result:"",name:"setText",parameters:[["String","txt"]]},{result:"",name:"setAlternateText",parameters:[["String","txt"]]},{result:"String",name:"getText",parameters:[]},{result:"int",name:"getTextWidth",parameters:[]},{result:"",name:"onTextChanged",parameters:[["String","newtxt"]]}],name:"Text"},Ce={parent:"GuiObject",functions:[],name:"Title"},he={parent:"GuiObject",functions:[{result:"",name:"onBeginResize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]]},{result:"",name:"onEndResize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]]},{result:"",name:"fx_onInit",parameters:[]},{result:"",name:"fx_onFrame",parameters:[]},{result:"Double",name:"fx_onGetPixelR",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]]},{result:"Double",name:"fx_onGetPixelD",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]]},{result:"Double",name:"fx_onGetPixelX",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]]},{result:"Double",name:"fx_onGetPixelY",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]]},{result:"Double",name:"fx_onGetPixelA",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]]},{result:"",name:"setRegionFromMap",parameters:[["Map","regionmap"],["int","threshold"],["boolean","reverse"]]},{result:"",name:"setRegion",parameters:[["Region","reg"]]},{result:"",name:"fx_setEnabled",parameters:[["boolean","onoff"]]},{result:"Boolean",name:"fx_getEnabled",parameters:[]},{result:"",name:"fx_setWrap",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"fx_getWrap",parameters:[]},{result:"",name:"fx_setRect",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"fx_getRect",parameters:[]},{result:"",name:"fx_setBgFx",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"fx_getBgFx",parameters:[]},{result:"",name:"fx_setClear",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"fx_getClear",parameters:[]},{result:"",name:"fx_setSpeed",parameters:[["Int","msperframe"]]},{result:"Int",name:"fx_getSpeed",parameters:[]},{result:"",name:"fx_setRealtime",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"fx_getRealtime",parameters:[]},{result:"",name:"fx_setLocalized",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"fx_getLocalized",parameters:[]},{result:"",name:"fx_setBilinear",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"fx_getBilinear",parameters:[]},{result:"",name:"fx_setAlphaMode",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"fx_getAlphaMode",parameters:[]},{result:"",name:"fx_setGridSize",parameters:[["Int","x"],["Int","y"]]},{result:"",name:"fx_update",parameters:[]},{result:"",name:"fx_restart",parameters:[]},{result:"Boolean",name:"isInvalid",parameters:[]}],name:"Layer"},Be={parent:"GuiObject",functions:[{result:"",name:"onActivate",parameters:[["int","activated"]]},{result:"",name:"onLeftClick",parameters:[]},{result:"",name:"onRightClick",parameters:[]},{result:"",name:"setActivated",parameters:[["Boolean","onoff"]]},{result:"",name:"setActivatedNoCallback",parameters:[["Boolean","onoff"]]},{result:"Boolean",name:"getActivated",parameters:[]},{result:"",name:"leftClick",parameters:[]},{result:"",name:"rightClick",parameters:[]}],name:"Button"},ye={parent:"Layer",functions:[{result:"",name:"onPlay",parameters:[]},{result:"",name:"onPause",parameters:[]},{result:"",name:"onResume",parameters:[]},{result:"",name:"onStop",parameters:[]},{result:"",name:"onFrame",parameters:[["Int","framenum"]]},{result:"",name:"setSpeed",parameters:[["Int","msperframe"]]},{result:"",name:"gotoFrame",parameters:[["int","framenum"]]},{result:"",name:"setStartFrame",parameters:[["Int","framenum"]]},{result:"",name:"setEndFrame",parameters:[["int","framenum"]]},{result:"",name:"setAutoReplay",parameters:[["Boolean","onoff"]]},{result:"",name:"play",parameters:[]},{result:"",name:"stop",parameters:[]},{result:"",name:"pause",parameters:[]},{result:"Boolean",name:"isPlaying",parameters:[]},{result:"Boolean",name:"isPaused",parameters:[]},{result:"Boolean",name:"isStopped",parameters:[]},{result:"Int",name:"getStartFrame",parameters:[]},{result:"Int",name:"getEndFrame",parameters:[]},{result:"Int",name:"getLength",parameters:[]},{result:"Int",name:"getDirection",parameters:[]},{result:"Boolean",name:"getAutoReplay",parameters:[]},{result:"Int",name:"getCurFrame",parameters:[]},{result:"",name:"setRealtime",parameters:[["Boolean","onoff"]]}],name:"AnimatedLayer"},De={parent:"Layer",functions:[{result:"",name:"refresh",parameters:[]},{result:"",name:"isLoading",parameters:[]},{result:"",name:"onAlbumArtLoaded",parameters:[["boolean","success"]]}],name:"AlbumArtLayer"},Te={parent:"Button",functions:[{result:"",name:"onToggle",parameters:[["Boolean","onoff"]]},{result:"int",name:"getCurCfgVal",parameters:[]}],name:"ToggleButton"},Ae={parent:"GuiObject",functions:[{result:"Group",name:"instantiate",parameters:[["String","group_id"],["int","num_groups"]]},{result:"Int",name:"getNumItems",parameters:[]},{result:"Group",name:"enumItem",parameters:[["int","num"]]},{result:"",name:"removeAll",parameters:[]},{result:"",name:"scrollToPercent",parameters:[["Int","percent"]]},{result:"",name:"setRedraw",parameters:[["int","redraw"]]}],name:"GroupList"},xe={parent:"Group",functions:[{result:"Int",name:"cfgGetInt",parameters:[]},{result:"",name:"cfgSetInt",parameters:[["Int","intvalue"]]},{result:"String",name:"cfgGetString",parameters:[]},{result:"Float",name:"cfgGetFloat",parameters:[]},{result:"",name:"cfgSetFloat",parameters:[["Float","floatvalue"]]},{result:"",name:"cfgSetString",parameters:[["String","strvalue"]]},{result:"",name:"onCfgChanged",parameters:[]},{result:"String",name:"cfgGetGuid",parameters:[]},{result:"String",name:"cfgGetName",parameters:[]}],name:"CfgGroup"},Fe={parent:"GuiObject",functions:[{result:"",name:"onResetQuery",parameters:[]}],name:"QueryList"},we={parent:"GuiObject",functions:[{result:"",name:"setRedirection",parameters:[["GuiObject","o"]]},{result:"GuiObject",name:"getRedirection",parameters:[]},{result:"",name:"setRegionFromMap",parameters:[["Map","regionmap"],["Int","threshold"],["Boolean","reverse"]]},{result:"",name:"setRegion",parameters:[["Region","reg"]]}],name:"MouseRedir"},Ee={parent:"GuiObject",functions:[{result:"String",name:"getItemSelected",parameters:[]},{result:"",name:"onSelect",parameters:[["Int","id"],["Int","hover"]]},{result:"",name:"setListHeight",parameters:[["Int","h"]]},{result:"",name:"openList",parameters:[]},{result:"",name:"closeList",parameters:[]},{result:"",name:"setItems",parameters:[["String","lotsofitems"]]},{result:"Int",name:"addItem",parameters:[["String","_text"]]},{result:"",name:"delItem",parameters:[["Int","id"]]},{result:"Int",name:"findItem",parameters:[["String","_text"]]},{result:"Int",name:"getNumItems",parameters:[]},{result:"",name:"selectItem",parameters:[["Int","id"],["Int","hover"]]},{result:"String",name:"getItemText",parameters:[["Int","id"]]},{result:"Int",name:"getSelected",parameters:[]},{result:"String",name:"getSelectedText",parameters:[]},{result:"String",name:"getCustomText",parameters:[]},{result:"",name:"deleteAllItems",parameters:[]},{result:"",name:"setNoItemText",parameters:[["String","txt"]]}],name:"DropDownList"},je={parent:"GuiObject",functions:[{result:"",name:"callme",parameters:[["String","str"]]}],name:"LayoutStatus"},ve={parent:"GuiObject",functions:[{result:"Int",name:"getCurPage",parameters:[]},{result:"",name:"setCurPage",parameters:[["Int","a"]]}],name:"TabSheet"},Le={parent:"GuiObject",functions:[{result:"Int",name:"addColumn",parameters:[["String","name"],["Int","width"],["Int","numeric"]]},{result:"Int",name:"getNumColumns",parameters:[]},{result:"Int",name:"getColumnWidth",parameters:[["Int","column"]]},{result:"",name:"setColumnWidth",parameters:[["Int","column"],["Int","newwidth"]]},{result:"String",name:"getColumnLabel",parameters:[["Int","column"]]},{result:"",name:"setColumnLabel",parameters:[["Int","column"],["String","newlabel"]]},{result:"Int",name:"getColumnNumeric",parameters:[["Int","column"]]},{result:"",name:"setColumnDynamic",parameters:[["Int","column"],["Int","isdynamic"]]},{result:"Int",name:"isColumnDynamic",parameters:[["Int","column"]]},{result:"",name:"invalidateColumns",parameters:[]},{result:"Int",name:"getNumItems",parameters:[]},{result:"Int",name:"getItemCount",parameters:[]},{result:"Int",name:"addItem",parameters:[["String","label"]]},{result:"Int",name:"insertItem",parameters:[["Int","pos"],["String","label"]]},{result:"Int",name:"getLastAddedItemPos",parameters:[]},{result:"",name:"setSubItem",parameters:[["Int","pos"],["Int","subpos"],["String","txt"]]},{result:"",name:"deleteAllItems",parameters:[]},{result:"Int",name:"deleteByPos",parameters:[["Int","pos"]]},{result:"String",name:"getItemLabel",parameters:[["Int","pos"],["Int","subpos"]]},{result:"String",name:"getSubitemText",parameters:[["Int","pos"],["Int","subpos"]]},{result:"",name:"setItemLabel",parameters:[["Int","pos"],["String","_text"]]},{result:"Int",name:"invalidateItem",parameters:[["Int","pos"]]},{result:"Int",name:"getFirstItemVisible",parameters:[]},{result:"Int",name:"getLastItemVisible",parameters:[]},{result:"",name:"setItemIcon",parameters:[["Int","pos"],["String","bitmapId"]]},{result:"String",name:"getItemIcon",parameters:[["Int","pos"]]},{result:"",name:"setMinimumSize",parameters:[["Int","size"]]},{result:"Int",name:"getWantAutoDeselect",parameters:[]},{result:"",name:"setWantAutoDeselect",parameters:[["Int","want"]]},{result:"",name:"onSetVisible",parameters:[["Int","show"]]},{result:"",name:"setAutoSort",parameters:[["Int","dosort"]]},{result:"Int",name:"setFontSize",parameters:[["Int","size"]]},{result:"Int",name:"getFontSize",parameters:[]},{result:"Int",name:"getHeaderHeight",parameters:[]},{result:"Int",name:"getPreventMultipleSelection",parameters:[]},{result:"Int",name:"setPreventMultipleSelection",parameters:[["Int","val"]]},{result:"",name:"setShowIcons",parameters:[["int","showThem"]]},{result:"Int",name:"getShowIcons",parameters:[]},{result:"Int",name:"setIconWidth",parameters:[["int","width"]]},{result:"Int",name:"setIconHeight",parameters:[["int","width"]]},{result:"",name:"getIconWidth",parameters:[]},{result:"",name:"getIconHeight",parameters:[]},{result:"",name:"next",parameters:[]},{result:"",name:"previous",parameters:[]},{result:"",name:"pagedown",parameters:[]},{result:"",name:"pageup",parameters:[]},{result:"",name:"home",parameters:[]},{result:"",name:"end",parameters:[]},{result:"",name:"reset",parameters:[]},{result:"",name:"ensureItemVisible",parameters:[["Int","pos"]]},{result:"Int",name:"scrollAbsolute",parameters:[["Int","x"]]},{result:"Int",name:"scrollRelative",parameters:[["Int","x"]]},{result:"",name:"scrollLeft",parameters:[["Int","lines"]]},{result:"",name:"scrollRight",parameters:[["Int","lines"]]},{result:"",name:"scrollUp",parameters:[["Int","lines"]]},{result:"",name:"scrollDown",parameters:[["Int","lines"]]},{result:"",name:"jumpToNext",parameters:[["Int","c"]]},{result:"",name:"scrollToItem",parameters:[["Int","pos"]]},{result:"",name:"selectCurrent",parameters:[]},{result:"",name:"selectFirstEntry",parameters:[]},{result:"Int",name:"getItemSelected",parameters:[["Int","pos"]]},{result:"Int",name:"isItemFocused",parameters:[["Int","pos"]]},{result:"Int",name:"getItemFocused",parameters:[]},{result:"",name:"setItemFocused",parameters:[["Int","pos"]]},{result:"Int",name:"getFirstItemSelected",parameters:[]},{result:"Int",name:"getNextItemSelected",parameters:[["Int","lastpos"]]},{result:"Int",name:"selectAll",parameters:[]},{result:"Int",name:"deselectAll",parameters:[]},{result:"Int",name:"invertSelection",parameters:[]},{result:"",name:"setSelectionStart",parameters:[["Int","pos"]]},{result:"",name:"setSelectionEnd",parameters:[["Int","pos"]]},{result:"",name:"setSelected",parameters:[["Int","pos"],["Int","selected"]]},{result:"",name:"toggleSelection",parameters:[["Int","pos"],["Int","setfocus"]]},{result:"",name:"resort",parameters:[]},{result:"Int",name:"getSortDirection",parameters:[]},{result:"Int",name:"getSortColumn",parameters:[]},{result:"",name:"setSortColumn",parameters:[["Int","col"]]},{result:"",name:"setSortDirection",parameters:[["Int","dir"]]},{result:"",name:"moveItem",parameters:[["Int","from"],["Int","to"]]},{result:"",name:"onSelectAll",parameters:[]},{result:"",name:"onDelete",parameters:[]},{result:"",name:"onDoubleClick",parameters:[["Int","itemnum"]]},{result:"",name:"onLeftClick",parameters:[["Int","itemnum"]]},{result:"",name:"onSecondLeftClick",parameters:[["Int","itemnum"]]},{result:"Int",name:"onRightClick",parameters:[["Int","itemnum"]]},{result:"Int",name:"onColumnDblClick",parameters:[["Int","col"],["Int","x"],["Int","y"]]},{result:"Int",name:"onColumnLabelClick",parameters:[["Int","col"],["Int","x"],["Int","y"]]},{result:"",name:"onItemSelection",parameters:[["Int","itemnum"],["Int","selected"]]},{result:"Int",name:"onIconLeftClick",parameters:[["int","itemnum"],["int","x"],["int","y"]]}],name:"GuiList"},Oe={parent:"GuiObject",functions:[{result:"Int",name:"onWantAutoContextMenu",parameters:[]},{result:"Int",name:"onMouseWheelUp",parameters:[["Int","clicked"],["Int","lines"]]},{result:"Int",name:"onMouseWheelDown",parameters:[["Int","clicked"],["Int","lines"]]},{result:"Int",name:"onContextMenu",parameters:[["Int","x"],["Int","y"]]},{result:"Int",name:"onChar",parameters:[["Int","c"]]},{result:"",name:"onItemRecvDrop",parameters:[["TreeItem","item"]]},{result:"",name:"onLabelChange",parameters:[["TreeItem","item"]]},{result:"",name:"onItemSelected",parameters:[["TreeItem","item"]]},{result:"",name:"onItemDeselected",parameters:[["TreeItem","item"]]},{result:"Int",name:"getNumRootItems",parameters:[]},{result:"TreeItem",name:"enumRootItem",parameters:[["Int","which"]]},{result:"",name:"jumpToNext",parameters:[["Int","c"]]},{result:"",name:"ensureItemVisible",parameters:[["TreeItem","item"]]},{result:"Int",name:"getContentsWidth",parameters:[]},{result:"Int",name:"getContentsHeight",parameters:[]},{result:"TreeItem",name:"addTreeItem",parameters:[["TreeItem","item"],["TreeItem","par"],["Int","sorted"],["Int","haschildtab"]]},{result:"Int",name:"removeTreeItem",parameters:[["TreeItem","item"]]},{result:"",name:"moveTreeItem",parameters:[["TreeItem","item"],["TreeItem","newparent"]]},{result:"",name:"deleteAllItems",parameters:[]},{result:"Int",name:"expandItem",parameters:[["TreeItem","item"]]},{result:"",name:"expandItemDeferred",parameters:[["TreeItem","item"]]},{result:"Int",name:"collapseItem",parameters:[["TreeItem","item"]]},{result:"",name:"collapseItemDeferred",parameters:[["TreeItem","item"]]},{result:"",name:"selectItem",parameters:[["TreeItem","item"]]},{result:"",name:"selectItemDeferred",parameters:[["TreeItem","item"]]},{result:"",name:"delItemDeferred",parameters:[["TreeItem","item"]]},{result:"",name:"hiliteItem",parameters:[["TreeItem","item"]]},{result:"",name:"unhiliteItem",parameters:[["TreeItem","item"]]},{result:"TreeItem",name:"getCurItem",parameters:[]},{result:"TreeItem",name:"hitTest",parameters:[["Int","x"],["Int","y"]]},{result:"",name:"editItemLabel",parameters:[["TreeItem","item"]]},{result:"",name:"cancelEditLabel",parameters:[["Int","destroyit"]]},{result:"",name:"setAutoEdit",parameters:[["Int","ae"]]},{result:"Int",name:"getAutoEdit",parameters:[]},{result:"TreeItem",name:"getByLabel",parameters:[["TreeItem","item"],["String","name"]]},{result:"",name:"setSorted",parameters:[["Int","dosort"]]},{result:"Int",name:"getSorted",parameters:[]},{result:"",name:"sortTreeItems",parameters:[]},{result:"TreeItem",name:"getSibling",parameters:[["TreeItem","item"]]},{result:"",name:"setAutoCollapse",parameters:[["Int","doautocollapse"]]},{result:"Int",name:"setFontSize",parameters:[["Int","newsize"]]},{result:"Int",name:"getFontSize",parameters:[]},{result:"Int",name:"getNumVisibleChildItems",parameters:[["TreeItem","c"]]},{result:"Int",name:"getNumVisibleItems",parameters:[]},{result:"TreeItem",name:"enumVisibleItems",parameters:[["Int","n"]]},{result:"TreeItem",name:"enumVisibleChildItems",parameters:[["TreeItem","c"],["Int","n"]]},{result:"TreeItem",name:"enumAllItems",parameters:[["Int","n"]]},{result:"Int",name:"getItemRectX",parameters:[["TreeItem","item"]]},{result:"Int",name:"getItemRectY",parameters:[["TreeItem","item"]]},{result:"Int",name:"getItemRectW",parameters:[["TreeItem","item"]]},{result:"Int",name:"getItemRectH",parameters:[["TreeItem","item"]]},{result:"TreeItem",name:"getItemFromPoint",parameters:[["Int","x"],["Int","y"]]}],name:"GuiTree"},Ge={parent:"Object",functions:[{result:"Int",name:"getNumChildren",parameters:[]},{result:"",name:"setLabel",parameters:[["String","label"]]},{result:"String",name:"getLabel",parameters:[]},{result:"",name:"ensureVisible",parameters:[]},{result:"TreeItem",name:"getNthChild",parameters:[["Int","nth"]]},{result:"TreeItem",name:"getChild",parameters:[]},{result:"TreeItem",name:"getChildSibling",parameters:[["TreeItem","_item"]]},{result:"TreeItem",name:"getSibling",parameters:[]},{result:"TreeItem",name:"getParent",parameters:[]},{result:"",name:"editLabel",parameters:[]},{result:"Int",name:"hasSubItems",parameters:[]},{result:"",name:"setSorted",parameters:[["Int","issorted"]]},{result:"",name:"setChildTab",parameters:[["Int","haschildtab"]]},{result:"Int",name:"isSorted",parameters:[]},{result:"Int",name:"isCollapsed",parameters:[]},{result:"Int",name:"isExpanded",parameters:[]},{result:"",name:"invalidate",parameters:[]},{result:"Int",name:"isSelected",parameters:[]},{result:"Int",name:"isHilited",parameters:[]},{result:"",name:"setHilited",parameters:[["Int","ishilited"]]},{result:"Int",name:"collapse",parameters:[]},{result:"Int",name:"expand",parameters:[]},{result:"GuiTree",name:"getTree",parameters:[]},{result:"",name:"onTreeAdd",parameters:[]},{result:"",name:"onTreeRemove",parameters:[]},{result:"",name:"onSelect",parameters:[]},{result:"",name:"onDeselect",parameters:[]},{result:"Int",name:"onLeftDoubleClick",parameters:[]},{result:"Int",name:"onRightDoubleClick",parameters:[]},{result:"Int",name:"onChar",parameters:[["Int","key"]]},{result:"",name:"onExpand",parameters:[]},{result:"",name:"onCollapse",parameters:[]},{result:"Int",name:"onBeginLabelEdit",parameters:[]},{result:"Int",name:"onEndLabelEdit",parameters:[["String","newlabel"]]},{result:"Int",name:"onContextMenu",parameters:[["Int","x"],["Int","y"]]}],name:"TreeItem"},Me={parent:"GuiObject",functions:[{result:"",name:"onOpenMenu",parameters:[]},{result:"",name:"onCloseMenu",parameters:[]},{result:"",name:"onSelectItem",parameters:[["String","item"]]},{result:"",name:"openMenu",parameters:[]},{result:"",name:"closeMenu",parameters:[]}],name:"MenuButton"},_e={parent:"GuiObject",functions:[{result:"",name:"onToggle",parameters:[["int","newstate"]]},{result:"",name:"setChecked",parameters:[["int","checked"]]},{result:"Int",name:"isChecked",parameters:[]},{result:"",name:"setText",parameters:[["String","txt"]]},{result:"String",name:"getText",parameters:[]}],name:"CheckBox"},Re={parent:"GuiObject",functions:[{result:"Int",name:"getContentsHeight",parameters:[]},{result:"",name:"newCell",parameters:[["String","groupname"]]},{result:"",name:"nextRow",parameters:[]},{result:"",name:"deleteAll",parameters:[]}],name:"Form"},Pe={parent:"GuiObject",functions:[{result:"Int",name:"getPosition",parameters:[]},{result:"",name:"setPosition",parameters:[["Int","position"]]},{result:"",name:"onSetPosition",parameters:[["Int","position"]]}],name:"Frame"},ke={parent:"GuiObject",functions:[{result:"",name:"setMenuGroup",parameters:[["String","groupId"]]},{result:"String",name:"getMenuGroup",parameters:[]},{result:"",name:"setMenu",parameters:[["String","menuId"]]},{result:"String",name:"getMenu",parameters:[]},{result:"",name:"spawnMenu",parameters:[["int","monitor"]]},{result:"",name:"cancelMenu",parameters:[]},{result:"",name:"setNormalId",parameters:[["String","id"]]},{result:"",name:"setDownId",parameters:[["String","id"]]},{result:"",name:"setHoverId",parameters:[["String","id"]]},{result:"",name:"onOpenMenu",parameters:[]},{result:"",name:"onCloseMenu",parameters:[]},{result:"",name:"nextMenu",parameters:[]},{result:"",name:"previousMenu",parameters:[]}],name:"Menu"},b={"516549710D874a5191E3A6B53235F3E7":K,D6F50F6493FA49b793F1BA66EFAE3E98:J,E90DC47B840D4ae7B02C040BD275F7FC:Z,"00C074A0FEA249a0BE8DFABBDB161640":Q,B2023AB5434D4ba1BEAE59637503F3C6:ee,"87C65778E74349fe85F909CC532AFD56":te,"38603665461B42a7AA75D83F6667BF73":re,F4787AF4B2BB4ef79CFBE74BA9BEA88D:ae,"3A370C023CBF439f84F186885BCF1E36":ne,"5D0C5BB67DE14b1fA70F8D1659941941":se,A5376FA14E94411a83F605EC5EEA5F0A:me,"4EE3E199C6364bec97CD78BC9C8628B0":le,"45BE95E520724191935CBB5FF9F117FD":ie,"60906D4E537E482eB004CC9461885672":ue,"403ABCC06F224bd68BA410C829932547":oe,"97AA3E4DF4D04fa8817B0AF22A454983":pe,"64E4BBFA81F449d9B0C0A85B2EC3BCFD":ge,"62B65E3F375E408d8DEA76814AB91B77":ce,CE4F97BE77B04e199956D49833C96C27:de,A8C2200D51EB4b2aBA7F5D4BC65D4C71:Ie,"8D1EBA38489E483eB9608D1F43C5C405":fe,"0F08C940AF394b2380F3B8C48F7EBB59":be,EFAA8672310E41faB7DC85A9525BCB4B:Se,"7DFD324437514e7cBF4082AE5F3ADC33":Ce,"5AB9FA159A7D4557ABC86557A6C67CA9":he,"698EDDCD8F1E4fec9B12F944F909FF45":Be,"6B64CD275A264c4b8C59E6A70CF6493A":ye,"6DCB05E48AC448c2B19349F0910EF54A":De,B4DCCFFF81FE4bcc961B720FD5BE0FFF:Te,"01E28CE1B05911d5979FE4DE6F51760A":Ae,"80F0F8BD1BA542a6A0933236A00C8D4A":xe,CDCB785D81F242538F0561B872283CFA:Fe,"9B2E341B6C9840fa8B850C1B6EE89405":we,"36D59B7103FD4af897950502B7DB267A":Ee,"7FD5F210ACC448dfA6A05451576CDC76":je,B5BAA53505B34dcbADC1E618D28F6896:ve,"6129FEC1DAB74d51916501CA0C1B70DB":Le,D59514F7ED3645e8980F3F4EA0522CD9:Oe,"9B3B4B82667A420e8FFC794115809C02":Ge,"1D8631C880D047929F98BD5D36B49136":Me,C7ED319953194798986360B15A298CAA:_e,"2D2D1376BE0A4CB9BC0C57E6E4C999F5":Re,E2BBC14D84F64173BDB3B2EB2F665550:Pe,"73C00594961F401B9B1B672427AC4165":ke};var v={};Object.values(b).forEach(e=>{v[e.name]=e});function m(e,r){return v[e].functions.find(({name:a})=>a===r)}m("Timer","isRunning").result="boolean";m("ToggleButton","onToggle").parameters[0][1]="onoff";m("GuiTree","onChar").parameters[0][0]="string";m("GuiList","onSetVisible").parameters[0][0]="boolean";m("Wac","onNotify").parameters=m("Object","onNotify").parameters;m("Wac","onNotify").result="int";var L=b;var Ne={parent:"Object",functions:[{result:"int",name:"getNumTracks",parameters:[]},{result:"int",name:"getCurrentIndex",parameters:[]},{result:"int",name:"getNumSelectedTracks",parameters:[]},{result:"int",name:"getNextSelectedTrack",parameters:[["int","i"]]},{result:"",name:"showCurrentlyPlayingTrack",parameters:[]},{result:"",name:"showTrack",parameters:[["int","item"]]},{result:"",name:"enqueueFile",parameters:[["string","file"]]},{result:"",name:"clear",parameters:[]},{result:"",name:"removeTrack",parameters:[["int","item"]]},{result:"",name:"swapTracks",parameters:[["int","item1"],["int","item2"]]},{result:"",name:"moveUp",parameters:[["int","item"]]},{result:"",name:"moveDown",parameters:[["int","item"]]},{result:"",name:"moveTo",parameters:[["int","item"],["int","pos"]]},{result:"",name:"playTrack",parameters:[["int","item"]]},{result:"int",name:"getRating",parameters:[["int","item"]]},{result:"",name:"setRating",parameters:[["int","item"],["int","rating"]]},{result:"String",name:"getTitle",parameters:[["int","item"]]},{result:"String",name:"getLength",parameters:[["int","item"]]},{result:"String",name:"getMetaData",parameters:[["int","item"],["String","metadatastring"]]},{result:"String",name:"getFileName",parameters:[["int","item"]]},{result:"",name:"onPleditModified",parameters:[]}],name:"PlEdit"},We={parent:"Object",functions:[{result:"int",name:"getNumItems",parameters:[]},{result:"String",name:"getItemName",parameters:[["int","item"]]},{result:"",name:"showCurrentlyPlayingEntry",parameters:[]},{result:"",name:"refresh",parameters:[]},{result:"",name:"renameItem",parameters:[["int","item"],["String","name"]]},{result:"",name:"enqueueItem",parameters:[["int","item"]]},{result:"",name:"playItem",parameters:[["int","item"]]}],name:"PlDir"},O={"345BEEBC0229492190BE6CB6A49A79D9":Ne,"61A7ABAD7D7941f6B1D0E1808603A4F4":We};var Ve={parent:"Object",functions:[{result:"ConfigItem",name:"getItem",parameters:[["String","item_name"]]},{result:"ConfigItem",name:"getItemByGuid",parameters:[["String","item_guid"]]},{result:"ConfigItem",name:"newItem",parameters:[["String","item_name"],["String","item_guid"]]}],name:"Config"},He={parent:"Object",functions:[{result:"ConfigAttribute",name:"getAttribute",parameters:[["String","attr_name"]]},{result:"ConfigAttribute",name:"newAttribute",parameters:[["String","attr_name"],["String","default_value"]]},{result:"String",name:"getGuid",parameters:[["String","attr_name"]]},{result:"String",name:"getName",parameters:[]}],name:"ConfigItem"},Ue={parent:"Object",functions:[{result:"",name:"setData",parameters:[["String","value"]]},{result:"String",name:"getData",parameters:[]},{result:"",name:"onDataChanged",parameters:[]},{result:"ConfigItem",name:"getParentItem",parameters:[]},{result:"String",name:"getAttributeName",parameters:[]}],name:"ConfigAttribute"},G={"593DBA22D0774976B952F4713655400B":Ve,D40302823AAB4d87878D12326FADFCD5:He,"24DEC283B76E4a368CCC9E24C46B6C73":Ue};var $e={parent:"Object",functions:[{result:"WinampConfigGroup",name:"getGroup",parameters:[["String","config_group_guid"]]}],name:"WinampConfig"},ze={parent:"Object",functions:[{result:"Boolean",name:"getBool",parameters:[["String","itemname"]]},{result:"",name:"setBool",parameters:[["String","itemname"],["Boolean","itemvalue"]]},{result:"Int",name:"getInt",parameters:[["String","itemname"]]},{result:"",name:"setInt",parameters:[["String","itemname"]]},{result:"String",name:"getString",parameters:[["String","itemname"]]},{result:"",name:"setString",parameters:[["String","itemname"]]}],name:"WinampConfigGroup"},M={B2AD3F2B31ED4e31BC6DE9951CD555BB:$e,FC17844EC72B4518A068A8F930A5BA80:ze};var h=i(i(i(i({},L),O),G),M);function B(e){return y[qe(e)]}var y={};Object.keys(h).forEach(e=>{y[e.toLowerCase()]=h[e]});var _={};Object.values(h).forEach(e=>{_[e.name]=e});Object.values(y).forEach(e=>{let r=_[e.parent];if(r==null&&e.parent!=="@{00000000-0000-0000-0000-000000000000}@")throw new Error(`Could not find parent class named ${e.parent}`);e.parentClass=r});function qe(e){return e.replace(/(........)(....)(....)(..)(..)(..)(..)(..)(..)(..)(..)/,"$1$3$2$7$6$5$4$11$10$9$8").toLowerCase()}var D=Y(require("path"));function Xe(e){let r=e.getFilename();return D.default.dirname(r).split(D.default.sep).pop()==="makiClasses"}module.exports=function(e){return Xe(e)?{ClassDeclaration(r){let a=P(r);a==null?e.report({node:r,message:'Expected Maki class to declare a static property "GUID".'}):B(a)==null&&e.report({node:r,message:"Invalid GUID value."})},MethodDefinition(r){let n=r.parent.parent,u=r.key;if(u.type!=="Identifier")return;let N=u.name,T=P(n);if(T==null)return;let A=B(T);if(A==null)return;let c=A.functions.find(s=>s.name.toLowerCase()===N);if(c==null)return;let d=r.value.params,I=c.parameters,x={start:r.value.body.loc.start,end:r.value.body.loc.start},F=c.result;if(F){let s=R(F),l=k(r.value.returnType);if(l==null){e.report({loc:x,message:`Missing return type for Maki method. Expected "${s}".`});return}if(l!==s){e.report({loc:x,message:`Incorrect TypeScript return type for Maki method. Expected "${s}" but found "${l}".`});return}}if(d.length!==I.length){e.report({node:r,message:`Incorrect arity for Maki method. Expected ${I.length} arguments but found ${d.length}.`});return}for(let[s,l]of d.entries()){let[W,Ke]=I[s],f=R(W),o=k(l.typeAnnotation);if(o==null){e.report({node:l,message:"Maki argument missing type annotation."});continue}if(f!=null&&f!==o){e.report({node:o,message:`Incorrect TypeScript type for Maki method argument. Expected "${f}" but found "${o}".`});continue}}}}:{}};function R(e){switch(e.toLowerCase()){case"int":case"double":case"float":return"number";case"string":return"string";case"map":return"MakiMap";case"boolean":return"boolean";case"guiobject":return"GuiObj";case"layout":return"Layout";case"container":return"Container";case"group":return"Group";case"wac":return"Wac";case"configitem":return"ConfigItem";case"configattribute":return"ConfigAttribute";case"winampconfiggroup":return"WinampConfigGroup";default:throw new Error(`Missing maki type: ${e}`)}}function P(e){let r=e.body.body.find(u=>u.static);if(r==null)return null;let a=r.value;if(a.type!=="Literal")return null;let n=a.value;return typeof n!="string"?null:n}function k(e){if(e==null)return null;let r=e.typeAnnotation;switch(r.type){case"TSTypeReference":return r.typeName.name;case"TSNumberKeyword":return"number";case"TSStringKeyword":return"string";case"TSBooleanKeyword":return"boolean";default:return null}} +var Y=Object.create;var o=Object.defineProperty;var K=Object.getOwnPropertyDescriptor;var J=Object.getOwnPropertyNames,j=Object.getOwnPropertySymbols,Z=Object.getPrototypeOf,v=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable;var G=(e,t,r)=>t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,l=(e,t)=>{for(var r in t||(t={}))v.call(t,r)&&G(e,r,t[r]);if(j)for(var r of j(t))Q.call(t,r)&&G(e,r,t[r]);return e};var ee=e=>o(e,"__esModule",{value:!0});var te=(e,t,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of J(t))!v.call(e,s)&&s!=="default"&&o(e,s,{get:()=>t[s],enumerable:!(r=K(t,s))||r.enumerable});return e},L=e=>te(ee(o(e!=null?Y(Z(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);var ae={parent:"@{00000000-0000-0000-0000-000000000000}@",name:"Object",deprecated:!1,functions:[{name:"getClassName",parameters:[],result:"String",deprecated:!1},{name:"getId",parameters:[],result:"String",deprecated:!1},{name:"onNotify",parameters:[["String","command"],["String","param"],["int","a"],["int","b"]],result:"Int",deprecated:!1}]},re={parent:"Object",name:"System",deprecated:!1,functions:[{name:"onScriptLoaded",parameters:[],result:"",deprecated:!1},{name:"onScriptUnloading",parameters:[],result:"",deprecated:!1},{name:"onQuit",parameters:[],result:"",deprecated:!1},{name:"onSetXuiParam",parameters:[["String","param"],["String","value"]],result:"",deprecated:!1},{name:"onKeyDown",parameters:[["String","key"]],result:"",deprecated:!1},{name:"onAccelerator",parameters:[["String","action"],["String","section"],["String","key"]],result:"",deprecated:!1},{name:"onCreateLayout",parameters:[["Layout","_layout"]],result:"",deprecated:!1},{name:"onShowLayout",parameters:[["Layout","_layout"]],result:"",deprecated:!1},{name:"onHideLayout",parameters:[["Layout","_layout"]],result:"",deprecated:!1},{name:"onViewPortChanged",parameters:[["int","width"],["int","height"]],result:"",deprecated:!1},{name:"onStop",parameters:[],result:"",deprecated:!1},{name:"onPlay",parameters:[],result:"",deprecated:!1},{name:"onPause",parameters:[],result:"",deprecated:!1},{name:"onResume",parameters:[],result:"",deprecated:!1},{name:"onTitleChange",parameters:[["String","newtitle"]],result:"",deprecated:!1},{name:"onTitle2Change",parameters:[["String","newtitle2"]],result:"",deprecated:!1},{name:"onUrlChange",parameters:[["String","url"]],result:"",deprecated:!1},{name:"onInfoChange",parameters:[["String","info"]],result:"",deprecated:!1},{name:"onStatusMsg",parameters:[["String","msg"]],result:"",deprecated:!1},{name:"onEqBandChanged",parameters:[["int","band"],["int","newvalue"]],result:"",deprecated:!1},{name:"onEqPreampChanged",parameters:[["int","newvalue"]],result:"",deprecated:!1},{name:"onEqChanged",parameters:[["int","newstatus"]],result:"",deprecated:!1},{name:"onEqFreqChanged",parameters:[["int","isiso"]],result:"",deprecated:!1},{name:"onVolumeChanged",parameters:[["int","newvol"]],result:"",deprecated:!1},{name:"onSeek",parameters:[["int","newpos"]],result:"",deprecated:!1},{name:"getContainer",parameters:[["String","container_id"]],result:"Container",deprecated:!1},{name:"newDynamicContainer",parameters:[["String","container_id"]],result:"Container",deprecated:!1},{name:"newGroup",parameters:[["String","group_id"]],result:"Group",deprecated:!1},{name:"newGroupAsLayout",parameters:[["String","group_id"]],result:"Layout",deprecated:!1},{name:"getNumContainers",parameters:[],result:"Int",deprecated:!1},{name:"enumContainer",parameters:[["Int","num"]],result:"Container",deprecated:!1},{name:"enumEmbedGUID",parameters:[["int","num"]],result:"String",deprecated:!1},{name:"getWac",parameters:[["String","wac_guid"]],result:"Wac",deprecated:!0},{name:"messageBox",parameters:[["String","message"],["String","msgtitle"],["Int","flag"],["String","notanymore_id"]],result:"Int",deprecated:!1},{name:"getPlayItemString",parameters:[],result:"String",deprecated:!1},{name:"getPlayItemLength",parameters:[],result:"Int",deprecated:!1},{name:"getPlayItemMetaDataString",parameters:[["String","metadataname"]],result:"String",deprecated:!1},{name:"getMetaDataString",parameters:[["String","filename"],["String","metadataname"]],result:"String",deprecated:!1},{name:"getPlayItemDisplayTitle",parameters:[],result:"String",deprecated:!1},{name:"getCurrentTrackRating",parameters:[],result:"Int",deprecated:!1},{name:"onCurrentTrackRated",parameters:[["int","rating"]],result:"",deprecated:!1},{name:"setCurrentTrackRating",parameters:[["int","rating"]],result:"",deprecated:!1},{name:"getExtFamily",parameters:[["String","ext"]],result:"String",deprecated:!1},{name:"getDecoderName",parameters:[["string","playitem"]],result:"String",deprecated:!1},{name:"playFile",parameters:[["String","playitem"]],result:"",deprecated:!1},{name:"getAlbumArt",parameters:[["String","playitem"]],result:"Int",deprecated:!1},{name:"downloadMedia",parameters:[["String","url"],["String","destinationPath"],["boolean","wantAddToML"],["boolean","notifyDownloadsList"]],result:"",deprecated:!1},{name:"downloadURL",parameters:[["String","url"],["String","destination_filename"],["String","progress_dialog_title"]],result:"",deprecated:!0},{name:"onDownloadFinished",parameters:[["String","url"],["boolean","success"],["String","filename"]],result:"",deprecated:!1},{name:"getDownloadPath",parameters:[],result:"String",deprecated:!1},{name:"setDownloadPath",parameters:[["String","new_path"]],result:"",deprecated:!1},{name:"enqueueFile",parameters:[["String","playitem"]],result:"",deprecated:!1},{name:"getLeftVuMeter",parameters:[],result:"Int",deprecated:!1},{name:"getRightVuMeter",parameters:[],result:"Int",deprecated:!1},{name:"getVolume",parameters:[],result:"Int",deprecated:!1},{name:"setVolume",parameters:[["Int","vol"]],result:"",deprecated:!1},{name:"play",parameters:[],result:"",deprecated:!1},{name:"stop",parameters:[],result:"",deprecated:!1},{name:"pause",parameters:[],result:"",deprecated:!1},{name:"next",parameters:[],result:"",deprecated:!1},{name:"previous",parameters:[],result:"",deprecated:!1},{name:"eject",parameters:[],result:"",deprecated:!1},{name:"seekTo",parameters:[["Int","pos"]],result:"",deprecated:!1},{name:"getPosition",parameters:[],result:"Int",deprecated:!1},{name:"setEqBand",parameters:[["int","band"],["Int","value"]],result:"",deprecated:!1},{name:"setEqPreamp",parameters:[["Int","value"]],result:"",deprecated:!1},{name:"setEq",parameters:[["Int","onoff"]],result:"",deprecated:!1},{name:"getEqBand",parameters:[["int","band"]],result:"Int",deprecated:!1},{name:"getEqPreamp",parameters:[],result:"int",deprecated:!1},{name:"getEq",parameters:[],result:"int",deprecated:!1},{name:"getMousePosX",parameters:[],result:"int",deprecated:!1},{name:"getMousePosY",parameters:[],result:"int",deprecated:!1},{name:"integerToString",parameters:[["Int","value"]],result:"String",deprecated:!1},{name:"StringToInteger",parameters:[["String","str"]],result:"Int",deprecated:!1},{name:"floatToString",parameters:[["float","value"],["int","ndigits"]],result:"String",deprecated:!1},{name:"stringToFloat",parameters:[["String","str"]],result:"Float",deprecated:!1},{name:"integerToLongTime",parameters:[["Int","value"]],result:"String",deprecated:!1},{name:"integerToTime",parameters:[["Int","value"]],result:"String",deprecated:!1},{name:"dateToTime",parameters:[["Int","datetime"]],result:"String",deprecated:!1},{name:"dateToLongTime",parameters:[["Int","datetime"]],result:"String",deprecated:!1},{name:"formatDate",parameters:[["Int","datetime"]],result:"String",deprecated:!1},{name:"formatLongDate",parameters:[["Int","datetime"]],result:"String",deprecated:!1},{name:"getDateYear",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDateMonth",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDateDay",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDateDow",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDateDoy",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDateHour",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDateMin",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDateSec",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDateDst",parameters:[["Int","datetime"]],result:"Int",deprecated:!1},{name:"getDate",parameters:[],result:"Int",deprecated:!1},{name:"strmid",parameters:[["String","str"],["Int","start"],["Int","len"]],result:"String",deprecated:!1},{name:"strleft",parameters:[["string","str"],["int","nchars"]],result:"String",deprecated:!1},{name:"strright",parameters:[["string","str"],["int","nchars"]],result:"string",deprecated:!1},{name:"strsearch",parameters:[["string","str"],["string","substr"]],result:"int",deprecated:!1},{name:"strlen",parameters:[["string","str"]],result:"int",deprecated:!1},{name:"strupper",parameters:[["string","str"]],result:"string",deprecated:!1},{name:"strlower",parameters:[["string","str"]],result:"string",deprecated:!1},{name:"urlEncode",parameters:[["string","url"]],result:"string",deprecated:!1},{name:"urlDecode",parameters:[["string","url"]],result:"string",deprecated:!1},{name:"parseATF",parameters:[["string","topass"]],result:"string",deprecated:!1},{name:"removePath",parameters:[["string","str"]],result:"string",deprecated:!1},{name:"getPath",parameters:[["string","str"]],result:"string",deprecated:!1},{name:"getExtension",parameters:[["string","str"]],result:"string",deprecated:!1},{name:"getToken",parameters:[["string","str"],["string","separator"],["int","tokennum"]],result:"string",deprecated:!1},{name:"sin",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"cos",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"tan",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"asin",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"acos",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"atan",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"atan2",parameters:[["double","y"],["double","x"]],result:"double",deprecated:!1},{name:"pow",parameters:[["double","value"],["double","pvalue"]],result:"double",deprecated:!1},{name:"sqr",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"log10",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"ln",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"sqrt",parameters:[["double","value"]],result:"double",deprecated:!1},{name:"random",parameters:[["int","max"]],result:"int",deprecated:!1},{name:"setPrivateString",parameters:[["string","section"],["string","item"],["string","value"]],result:"",deprecated:!1},{name:"setPrivateInt",parameters:[["string","section"],["string","item"],["int","value"]],result:"",deprecated:!1},{name:"getPrivateString",parameters:[["String","section"],["String","item"],["String","defvalue"]],result:"String",deprecated:!1},{name:"getPrivateInt",parameters:[["String","section"],["String","item"],["Int","defvalue"]],result:"Int",deprecated:!1},{name:"setPublicString",parameters:[["String","item"],["String","value"]],result:"",deprecated:!1},{name:"setPublicInt",parameters:[["String","item"],["Int","value"]],result:"",deprecated:!1},{name:"getPublicString",parameters:[["String","item"],["String","defvalue"]],result:"String",deprecated:!1},{name:"getPublicInt",parameters:[["String","item"],["Int","defvalue"]],result:"Int",deprecated:!1},{name:"getParam",parameters:[],result:"String",deprecated:!1},{name:"getScriptGroup",parameters:[],result:"Group",deprecated:!1},{name:"getViewportWidth",parameters:[],result:"Int",deprecated:!1},{name:"getViewportWidthFromGuiObject",parameters:[["GuiObject","g"]],result:"Int",deprecated:!1},{name:"getViewportWidthFromPoint",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"getMonitorWidth",parameters:[],result:"Int",deprecated:!1},{name:"getMonitorWidthFromPoint",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"getMonitorWidthFromGuiObject",parameters:[["GuiObject","g"]],result:"Int",deprecated:!1},{name:"onMouseMove",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"getViewportHeight",parameters:[],result:"Int",deprecated:!1},{name:"getViewportHeightFromGuiObject",parameters:[["GuiObject","g"]],result:"Int",deprecated:!1},{name:"getViewportHeightFromPoint",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"getMonitorHeight",parameters:[],result:"Int",deprecated:!1},{name:"getMonitorHeightFromPoint",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"getMonitorHeightFromGuiObject",parameters:[["GuiObject","g"]],result:"Int",deprecated:!1},{name:"getMonitorLeft",parameters:[],result:"Int",deprecated:!1},{name:"getMonitorLeftFromGuiObject",parameters:[["GuiObject","g"]],result:"Int",deprecated:!1},{name:"getMonitorLeftFromPoint",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"getMonitorTop",parameters:[],result:"Int",deprecated:!1},{name:"getMonitorTopFromGuiObject",parameters:[["GuiObject","g"]],result:"Int",deprecated:!1},{name:"getMonitorTopFromPoint",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"getViewportLeft",parameters:[],result:"Int",deprecated:!1},{name:"getViewportLeftFromGuiObject",parameters:[["GuiObject","g"]],result:"Int",deprecated:!1},{name:"getViewportLeftFromPoint",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"getViewportTop",parameters:[],result:"Int",deprecated:!1},{name:"getViewportTopFromGuiObject",parameters:[["GuiObject","g"]],result:"Int",deprecated:!1},{name:"getViewportTopFromPoint",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"debugString",parameters:[["String","str"],["Int","severity"]],result:"",deprecated:!1},{name:"ddeSend",parameters:[["String","application"],["String","command"],["Int","mininterval"]],result:"",deprecated:!1},{name:"onLookForComponent",parameters:[["String","guid"]],result:"WindowHolder",deprecated:!1},{name:"getCurAppLeft",parameters:[],result:"Int",deprecated:!1},{name:"getCurAppTop",parameters:[],result:"Int",deprecated:!1},{name:"getCurAppWidth",parameters:[],result:"Int",deprecated:!1},{name:"getCurAppHeight",parameters:[],result:"Int",deprecated:!1},{name:"isAppActive",parameters:[],result:"Boolean",deprecated:!1},{name:"getSkinName",parameters:[],result:"String",deprecated:!1},{name:"switchSkin",parameters:[["String","skinname"]],result:"",deprecated:!1},{name:"isLoadingSkin",parameters:[],result:"Int",deprecated:!1},{name:"lockUI",parameters:[],result:"",deprecated:!1},{name:"unlockUI",parameters:[],result:"",deprecated:!1},{name:"getMainBrowser",parameters:[],result:"Browser",deprecated:!1},{name:"popMainBrowser",parameters:[],result:"",deprecated:!1},{name:"navigateUrl",parameters:[["String","url"]],result:"",deprecated:!1},{name:"navigateUrlBrowser",parameters:[["String","url"]],result:"",deprecated:!1},{name:"onOpenURL",parameters:[["string","url"]],result:"Boolean",deprecated:!1},{name:"isObjectValid",parameters:[["Object","o"]],result:"Boolean",deprecated:!1},{name:"integer",parameters:[["Double","d"]],result:"Int",deprecated:!1},{name:"frac",parameters:[["Double","d"]],result:"Double",deprecated:!1},{name:"getTimeOfDay",parameters:[],result:"Int",deprecated:!1},{name:"setMenuTransparency",parameters:[["int","alphavalue"]],result:"",deprecated:!1},{name:"onGetCancelComponent",parameters:[["String","guid"],["boolean","goingvisible"]],result:"Boolean",deprecated:!1},{name:"getStatus",parameters:[],result:"Int",deprecated:!1},{name:"isKeyDown",parameters:[["int","vk_code"]],result:"Int",deprecated:!1},{name:"setClipboardText",parameters:[["String","_text"]],result:"",deprecated:!1},{name:"Chr",parameters:[["Int","charnum"]],result:"String",deprecated:!1},{name:"translate",parameters:[["String","str"]],result:"String",deprecated:!1},{name:"getString",parameters:[["String","table"],["int","id"]],result:"String",deprecated:!1},{name:"getLanguageId",parameters:[],result:"String",deprecated:!1},{name:"selectFile",parameters:[["String","extlist"],["String","id"],["String","prev_filename"]],result:"String",deprecated:!0},{name:"selectFolder",parameters:[["String","wnd_title"],["String","wnd_info"],["String","default_path"]],result:"String",deprecated:!1},{name:"systemMenu",parameters:[],result:"",deprecated:!1},{name:"windowMenu",parameters:[],result:"",deprecated:!1},{name:"triggerAction",parameters:[["GuiObject","context"],["String","actionname"],["String","actionparam"]],result:"",deprecated:!1},{name:"showWindow",parameters:[["String","guidorgroupid"],["String","preferedcontainer"],["Boolean","transient"]],result:"GuiObject",deprecated:!1},{name:"hideWindow",parameters:[["GuiObject","hw"]],result:"",deprecated:!1},{name:"hideNamedWindow",parameters:[["String","guidorgroup"]],result:"",deprecated:!1},{name:"isNamedWindowVisible",parameters:[["String","guidorgroup"]],result:"Boolean",deprecated:!1},{name:"setAtom",parameters:[["String","atomname"],["Object","object"]],result:"",deprecated:!1},{name:"getAtom",parameters:[["String","atomname"]],result:"Object",deprecated:!1},{name:"invokeDebugger",parameters:[],result:"",deprecated:!1},{name:"hasVideoSupport",parameters:[],result:"int",deprecated:!1},{name:"isVideo",parameters:[],result:"Int",deprecated:!1},{name:"isVideoFullscreen",parameters:[],result:"Int",deprecated:!1},{name:"getIdealVideoWidth",parameters:[],result:"Int",deprecated:!1},{name:"getIdealVideoHeight",parameters:[],result:"Int",deprecated:!1},{name:"isMinimized",parameters:[],result:"Int",deprecated:!1},{name:"minimizeApplication",parameters:[],result:"",deprecated:!1},{name:"restoreApplication",parameters:[],result:"",deprecated:!1},{name:"activateApplication",parameters:[],result:"",deprecated:!1},{name:"getPlaylistLength",parameters:[],result:"Int",deprecated:!1},{name:"getPlaylistIndex",parameters:[],result:"Int",deprecated:!1},{name:"clearPlaylist",parameters:[],result:"",deprecated:!1},{name:"isDesktopAlphaAvailable",parameters:[],result:"Boolean",deprecated:!1},{name:"isTransparencyAvailable",parameters:[],result:"Boolean",deprecated:!1},{name:"onShowNotification",parameters:[],result:"Int",deprecated:!1},{name:"getSongInfoText",parameters:[],result:"String",deprecated:!1},{name:"getSongInfoTextTranslated",parameters:[],result:"String",deprecated:!1},{name:"getVisBand",parameters:[["int","channel"],["int","band"]],result:"Int",deprecated:!1},{name:"getRuntimeVersion",parameters:[],result:"Double",deprecated:!1},{name:"isWa2ComponentVisible",parameters:[["String","guid"]],result:"Int",deprecated:!1},{name:"hideWa2Component",parameters:[["String","guid"]],result:"",deprecated:!1},{name:"isProVersion",parameters:[],result:"boolean",deprecated:!1},{name:"getWinampVersion",parameters:[],result:"String",deprecated:!1},{name:"getBuildNumber",parameters:[],result:"Int",deprecated:!1},{name:"getFileSize",parameters:[["String","fullfilename"]],result:"int",deprecated:!1}]},se={parent:"Object",name:"Container",deprecated:!1,functions:[{name:"onSwitchToLayout",parameters:[["Layout","newlayout"]],result:"",deprecated:!1},{name:"onBeforeSwitchToLayout",parameters:[["Layout","oldlayout"],["Layout","newlayout"]],result:"",deprecated:!1},{name:"setXmlParam",parameters:[["String","param"],["String","value"]],result:"",deprecated:!1},{name:"onHideLayout",parameters:[["Layout","_layout"]],result:"",deprecated:!1},{name:"onShowLayout",parameters:[["Layout","_layout"]],result:"",deprecated:!1},{name:"getLayout",parameters:[["String","layout_id"]],result:"Layout",deprecated:!1},{name:"getNumLayouts",parameters:[],result:"Int",deprecated:!1},{name:"enumLayout",parameters:[["Int","num"]],result:"Layout",deprecated:!1},{name:"switchToLayout",parameters:[["String","layout_id"]],result:"",deprecated:!1},{name:"show",parameters:[],result:"",deprecated:!1},{name:"hide",parameters:[],result:"",deprecated:!1},{name:"close",parameters:[],result:"",deprecated:!1},{name:"toggle",parameters:[],result:"",deprecated:!1},{name:"isDynamic",parameters:[],result:"Int",deprecated:!1},{name:"setName",parameters:[["String","name"]],result:"",deprecated:!1},{name:"getName",parameters:[],result:"String",deprecated:!1},{name:"getGuid",parameters:[],result:"String",deprecated:!1},{name:"getCurLayout",parameters:[],result:"Layout",deprecated:!1},{name:"onAddContent",parameters:[["GuiObject","wnd"],["String","id"],["String","guid"]],result:"",deprecated:!1}]},ne={parent:"Object",name:"Wac",deprecated:!0,functions:[{name:"getGuid",parameters:[],result:"String",deprecated:!0},{name:"getName",parameters:[],result:"String",deprecated:!0},{name:"sendCommand",parameters:[["String","cmd"],["Int","param1"],["Int","param2"],["String","param3"]],result:"Int",deprecated:!0},{name:"show",parameters:[],result:"",deprecated:!0},{name:"hide",parameters:[],result:"",deprecated:!0},{name:"isVisible",parameters:[],result:"Boolean",deprecated:!0},{name:"onNotify",parameters:[["String","notifstr"],["Int","a"],["Int","b"]],result:"",deprecated:!0},{name:"onShow",parameters:[],result:"",deprecated:!0},{name:"onHide",parameters:[],result:"",deprecated:!0},{name:"setStatusBar",parameters:[["Boolean","onoff"]],result:"",deprecated:!0},{name:"getStatusBar",parameters:[],result:"Boolean",deprecated:!0}]},le={parent:"Object",name:"List",deprecated:!1,functions:[{name:"addItem",parameters:[["Any","_object"]],result:"",deprecated:!1},{name:"removeItem",parameters:[["int","pos"]],result:"",deprecated:!1},{name:"enumItem",parameters:[["int","pos"]],result:"Any",deprecated:!1},{name:"findItem",parameters:[["Any","_object"]],result:"Int",deprecated:!1},{name:"findItem2",parameters:[["Any","_object"],["int","startItem"]],result:"Int",deprecated:!1},{name:"getNumItems",parameters:[],result:"int",deprecated:!1},{name:"removeAll",parameters:[],result:"",deprecated:!1}]},me={parent:"Object",name:"BitList",deprecated:!1,functions:[{name:"getItem",parameters:[["int","n"]],result:"boolean",deprecated:!1},{name:"setItem",parameters:[["int","n"],["boolean","val"]],result:"",deprecated:!1},{name:"setSize",parameters:[["int","s"]],result:"",deprecated:!1},{name:"getSize",parameters:[],result:"int",deprecated:!1}]},de={parent:"Object",name:"Map",deprecated:!1,functions:[{name:"getValue",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"getARGBValue",parameters:[["int","x"],["int","y"],["int","channel"]],result:"Int",deprecated:!1},{name:"inRegion",parameters:[["int","x"],["int","y"]],result:"Boolean",deprecated:!1},{name:"loadMap",parameters:[["String","bitmapid"]],result:"",deprecated:!1},{name:"getWidth",parameters:[],result:"Int",deprecated:!1},{name:"getHeight",parameters:[],result:"Int",deprecated:!1},{name:"getRegion",parameters:[],result:"Region",deprecated:!1}]},pe={parent:"Object",name:"PopupMenu",deprecated:!1,functions:[{name:"addSubMenu",parameters:[["PopupMenu","submenu"],["String","submenutext"]],result:"",deprecated:!1},{name:"addCommand",parameters:[["String","cmdtxt"],["Int","cmd_id"],["Boolean","checked"],["Boolean","disabled"]],result:"",deprecated:!1},{name:"addSeparator",parameters:[],result:"",deprecated:!1},{name:"popAtXY",parameters:[["int","x"],["int","y"]],result:"Int",deprecated:!1},{name:"popAtMouse",parameters:[],result:"Int",deprecated:!1},{name:"getNumCommands",parameters:[],result:"Int",deprecated:!1},{name:"checkCommand",parameters:[["int","cmd_id"],["boolean","check"]],result:"",deprecated:!1},{name:"disableCommand",parameters:[["int","cmd_id"],["boolean","disable"]],result:"",deprecated:!1}]},ie={parent:"Object",name:"Region",deprecated:!1,functions:[{name:"add",parameters:[["Region","reg"]],result:"",deprecated:!1},{name:"sub",parameters:[["Region","reg"]],result:"",deprecated:!1},{name:"offset",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"stretch",parameters:[["double","r"]],result:"",deprecated:!1},{name:"copy",parameters:[["Region","reg"]],result:"",deprecated:!1},{name:"loadFromMap",parameters:[["Map","regionmap"],["Int","threshold"],["Boolean","reversed"]],result:"",deprecated:!1},{name:"loadFromBitmap",parameters:[["String","bitmapid"]],result:"",deprecated:!1},{name:"getBoundingBoxX",parameters:[],result:"Int",deprecated:!1},{name:"getBoundingBoxY",parameters:[],result:"Int",deprecated:!1},{name:"getBoundingBoxW",parameters:[],result:"Int",deprecated:!1},{name:"getBoundingBoxH",parameters:[],result:"Int",deprecated:!1}]},ue={parent:"Object",name:"Timer",deprecated:!1,functions:[{name:"onTimer",parameters:[],result:"",deprecated:!1},{name:"setDelay",parameters:[["int","millisec"]],result:"",deprecated:!1},{name:"getDelay",parameters:[],result:"Int",deprecated:!1},{name:"start",parameters:[],result:"",deprecated:!1},{name:"stop",parameters:[],result:"",deprecated:!1},{name:"isRunning",parameters:[],result:"",deprecated:!1},{name:"getSkipped",parameters:[],result:"Int",deprecated:!1}]},oe={parent:"Object",name:"FeedWatcher",deprecated:!0,functions:[{name:"setFeed",parameters:[["String","feed_id"]],result:"Int",deprecated:!0},{name:"releaseFeed",parameters:[],result:"",deprecated:!0},{name:"onFeedChange",parameters:[["String","new_feeddata"]],result:"",deprecated:!0}]},ce={parent:"Object",name:"GuiObject",deprecated:!1,functions:[{name:"show",parameters:[],result:"",deprecated:!1},{name:"hide",parameters:[],result:"",deprecated:!1},{name:"isVisible",parameters:[],result:"int",deprecated:!1},{name:"onSetVisible",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"setAlpha",parameters:[["int","alpha"]],result:"",deprecated:!1},{name:"getAlpha",parameters:[],result:"int",deprecated:!1},{name:"onLeftButtonUp",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"onLeftButtonDown",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"onRightButtonUp",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"onRightButtonDown",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"onRightButtonDblClk",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"onLeftButtonDblClk",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"onMouseWheelUp",parameters:[["int","clicked"],["int","lines"]],result:"int",deprecated:!1},{name:"onMouseWheelDown",parameters:[["int","clicked"],["int","lines"]],result:"int",deprecated:!1},{name:"onMouseMove",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"onEnterArea",parameters:[],result:"",deprecated:!1},{name:"onLeaveArea",parameters:[],result:"",deprecated:!1},{name:"setEnabled",parameters:[["boolean","onoff"]],result:"",deprecated:!1},{name:"getEnabled",parameters:[],result:"boolean",deprecated:!1},{name:"onEnable",parameters:[["boolean","onoff"]],result:"",deprecated:!1},{name:"resize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]],result:"",deprecated:!1},{name:"onResize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]],result:"",deprecated:!1},{name:"isMouseOver",parameters:[["int","x"],["int","y"]],result:"boolean",deprecated:!1},{name:"getLeft",parameters:[],result:"int",deprecated:!1},{name:"getTop",parameters:[],result:"int",deprecated:!1},{name:"getWidth",parameters:[],result:"int",deprecated:!1},{name:"getHeight",parameters:[],result:"int",deprecated:!1},{name:"setTargetX",parameters:[["int","x"]],result:"",deprecated:!1},{name:"setTargetY",parameters:[["int","y"]],result:"",deprecated:!1},{name:"setTargetW",parameters:[["int","w"]],result:"",deprecated:!1},{name:"setTargetH",parameters:[["int","r"]],result:"",deprecated:!1},{name:"setTargetA",parameters:[["int","alpha"]],result:"",deprecated:!1},{name:"setTargetSpeed",parameters:[["float","insecond"]],result:"",deprecated:!1},{name:"gotoTarget",parameters:[],result:"",deprecated:!1},{name:"onTargetReached",parameters:[],result:"",deprecated:!1},{name:"cancelTarget",parameters:[],result:"",deprecated:!1},{name:"reverseTarget",parameters:[["int","reverse"]],result:"",deprecated:!1},{name:"onStartup",parameters:[],result:"",deprecated:!1},{name:"isGoingToTarget",parameters:[],result:"boolean",deprecated:!1},{name:"setXmlParam",parameters:[["String","param"],["String","value"]],result:"",deprecated:!1},{name:"getXmlParam",parameters:[["String","param"]],result:"String",deprecated:!1},{name:"init",parameters:[["Group","parent"]],result:"",deprecated:!1},{name:"bringToFront",parameters:[],result:"",deprecated:!1},{name:"bringToBack",parameters:[],result:"",deprecated:!1},{name:"bringAbove",parameters:[["GuiObject","guiobj"]],result:"",deprecated:!1},{name:"bringBelow",parameters:[["GuiObject","guiobj"]],result:"",deprecated:!1},{name:"getGuiX",parameters:[],result:"Int",deprecated:!1},{name:"getGuiY",parameters:[],result:"Int",deprecated:!1},{name:"getGuiW",parameters:[],result:"Int",deprecated:!1},{name:"getGuiH",parameters:[],result:"Int",deprecated:!1},{name:"getGuiRelatX",parameters:[],result:"Int",deprecated:!1},{name:"getGuiRelatY",parameters:[],result:"Int",deprecated:!1},{name:"getGuiRelatW",parameters:[],result:"Int",deprecated:!1},{name:"getGuiRelatH",parameters:[],result:"Int",deprecated:!1},{name:"isActive",parameters:[],result:"Boolean",deprecated:!1},{name:"getParent",parameters:[],result:"GuiObject",deprecated:!1},{name:"getParentLayout",parameters:[],result:"Layout",deprecated:!1},{name:"getTopParent",parameters:[],result:"GuiObject",deprecated:!1},{name:"runModal",parameters:[],result:"int",deprecated:!1},{name:"endModal",parameters:[["int","retcode"]],result:"",deprecated:!1},{name:"findObject",parameters:[["String","id"]],result:"GuiObject",deprecated:!1},{name:"findObjectXY",parameters:[["int","x"],["int","y"]],result:"GuiObject",deprecated:!1},{name:"getName",parameters:[],result:"String",deprecated:!1},{name:"clientToScreenX",parameters:[["int","x"]],result:"int",deprecated:!1},{name:"clientToScreenY",parameters:[["int","y"]],result:"int",deprecated:!1},{name:"clientToScreenW",parameters:[["int","w"]],result:"int",deprecated:!1},{name:"clientToScreenH",parameters:[["int","h"]],result:"int",deprecated:!1},{name:"screenToClientX",parameters:[["int","x"]],result:"int",deprecated:!1},{name:"screenToClientY",parameters:[["int","y"]],result:"int",deprecated:!1},{name:"screenToClientW",parameters:[["int","w"]],result:"int",deprecated:!1},{name:"screenToClientH",parameters:[["int","h"]],result:"int",deprecated:!1},{name:"getAutoWidth",parameters:[],result:"int",deprecated:!1},{name:"getAutoHeight",parameters:[],result:"int",deprecated:!1},{name:"setFocus",parameters:[],result:"",deprecated:!1},{name:"onChar",parameters:[["String","c"]],result:"",deprecated:!1},{name:"onAccelerator",parameters:[["String","accel"]],result:"",deprecated:!1},{name:"isMouseOverRect",parameters:[],result:"Boolean",deprecated:!1},{name:"getInterface",parameters:[["String","interface_guid"]],result:"Object",deprecated:!1},{name:"onDragEnter",parameters:[],result:"",deprecated:!1},{name:"onDragOver",parameters:[["int","x"],["int","y"]],result:"",deprecated:!1},{name:"onDragLeave",parameters:[],result:"",deprecated:!1},{name:"onKeyDown",parameters:[["int","vk_code"]],result:"",deprecated:!1},{name:"onKeyUp",parameters:[["int","vk_code"]],result:"",deprecated:!1},{name:"onGetFocus",parameters:[],result:"",deprecated:!1},{name:"onKillFocus",parameters:[],result:"",deprecated:!1},{name:"sendAction",parameters:[["String","action"],["String","param"],["Int","x"],["int","y"],["int","p1"],["int","p2"]],result:"Int",deprecated:!1},{name:"onAction",parameters:[["String","action"],["String","param"],["Int","x"],["int","y"],["int","p1"],["int","p2"],["GuiObject","source"]],result:"Int",deprecated:!1}]},fe={parent:"GuiObject",name:"Group",deprecated:!1,functions:[{name:"getObject",parameters:[["String","object_id"]],result:"GuiObject",deprecated:!1},{name:"getNumObjects",parameters:[],result:"Int",deprecated:!1},{name:"enumObject",parameters:[["Int","num"]],result:"GuiObject",deprecated:!1},{name:"onCreateObject",parameters:[["GuiObject","newobj"]],result:"",deprecated:!1},{name:"getMousePosX",parameters:[],result:"Int",deprecated:!1},{name:"getMousePosY",parameters:[],result:"Int",deprecated:!1},{name:"isLayout",parameters:[],result:"Boolean",deprecated:!1}]},ge={parent:"Group",name:"Layout",deprecated:!1,functions:[{name:"onDock",parameters:[["int","side"]],result:"",deprecated:!1},{name:"onUndock",parameters:[],result:"",deprecated:!1},{name:"onScale",parameters:[["Double","newscalevalue"]],result:"",deprecated:!1},{name:"getScale",parameters:[],result:"Double",deprecated:!1},{name:"setScale",parameters:[["Double","scalevalue"]],result:"",deprecated:!1},{name:"setDesktopAlpha",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"getDesktopAlpha",parameters:[],result:"Boolean",deprecated:!1},{name:"getContainer",parameters:[],result:"Container",deprecated:!1},{name:"center",parameters:[],result:"",deprecated:!1},{name:"onMove",parameters:[],result:"",deprecated:!1},{name:"onEndMove",parameters:[],result:"",deprecated:!1},{name:"onUserResize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]],result:"",deprecated:!1},{name:"snapAdjust",parameters:[["int","left"],["int","top"],["int","right"],["int","bottom"]],result:"",deprecated:!1},{name:"getSnapAdjustTop",parameters:[],result:"Int",deprecated:!1},{name:"getSnapAdjustRight",parameters:[],result:"Int",deprecated:!1},{name:"getSnapAdjustLeft",parameters:[],result:"Int",deprecated:!1},{name:"getSnapAdjustBottom",parameters:[],result:"Int",deprecated:!1},{name:"setRedrawOnResize",parameters:[["int","wantredrawonresize"]],result:"",deprecated:!1},{name:"beforeRedock",parameters:[],result:"",deprecated:!1},{name:"redock",parameters:[],result:"",deprecated:!1},{name:"isTransparencySafe",parameters:[],result:"Boolean",deprecated:!1},{name:"isLayoutAnimationSafe",parameters:[],result:"Boolean",deprecated:!1},{name:"onMouseEnterLayout",parameters:[],result:"",deprecated:!1},{name:"onMouseLeaveLayout",parameters:[],result:"",deprecated:!1},{name:"onSnapAdjustChanged",parameters:[],result:"",deprecated:!1}]},Ie={parent:"GuiObject",name:"WindowHolder",deprecated:!1,functions:[{name:"setRegionFromMap",parameters:[["Map","regionmap"],["Int","threshold"],["Boolean","reverse"]],result:"",deprecated:!1},{name:"setRegion",parameters:[["Region","reg"]],result:"",deprecated:!1},{name:"getContent",parameters:[],result:"GuiObject",deprecated:!1},{name:"getGuid",parameters:[],result:"String",deprecated:!1},{name:"getComponentName",parameters:[],result:"String",deprecated:!1},{name:"onGetWac",parameters:[["Wac","wacobj"]],result:"",deprecated:!0},{name:"onGiveUpWac",parameters:[["Wac","wacobj"]],result:"",deprecated:!0},{name:"getWac",parameters:[],result:"Wac",deprecated:!0},{name:"setAcceptWac",parameters:[["Boolean","onoff"]],result:"",deprecated:!0}]},Se={parent:"GuiObject",name:"ComponentBucket",deprecated:!1,functions:[{name:"getMaxHeight",parameters:[],result:"Int",deprecated:!1},{name:"getMaxWidth",parameters:[],result:"Int",deprecated:!1},{name:"setScroll",parameters:[["int","x"]],result:"Int",deprecated:!1},{name:"getScroll",parameters:[],result:"Int",deprecated:!1},{name:"getNumChildren",parameters:[],result:"Int",deprecated:!1},{name:"enumChildren",parameters:[["int","n"]],result:"GuiObject",deprecated:!1}]},be={parent:"GuiObject",name:"Edit",deprecated:!1,functions:[{name:"onEnter",parameters:[],result:"",deprecated:!1},{name:"onAbort",parameters:[],result:"",deprecated:!1},{name:"onIdleEditUpdate",parameters:[],result:"",deprecated:!1},{name:"onEditUpdate",parameters:[],result:"",deprecated:!1},{name:"setText",parameters:[["String","txt"]],result:"",deprecated:!1},{name:"setAutoEnter",parameters:[["boolean","onoff"]],result:"",deprecated:!1},{name:"getAutoEnter",parameters:[],result:"Int",deprecated:!1},{name:"getText",parameters:[],result:"String",deprecated:!1},{name:"selectAll",parameters:[],result:"",deprecated:!1},{name:"enter",parameters:[],result:"",deprecated:!1},{name:"setIdleEnabled",parameters:[["boolean","onoff"]],result:"",deprecated:!1},{name:"getIdleEnabled",parameters:[],result:"Int",deprecated:!1}]},Ce={parent:"GuiObject",name:"Slider",deprecated:!1,functions:[{name:"onSetPosition",parameters:[["int","newpos"]],result:"",deprecated:!1},{name:"onPostedPosition",parameters:[["int","newpos"]],result:"",deprecated:!1},{name:"onSetFinalPosition",parameters:[["int","pos"]],result:"",deprecated:!1},{name:"setPosition",parameters:[["int","pos"]],result:"",deprecated:!1},{name:"getPosition",parameters:[],result:"Int",deprecated:!1},{name:"lock",parameters:[],result:"",deprecated:!1},{name:"unlock",parameters:[],result:"",deprecated:!1}]},he={parent:"GuiObject",name:"Vis",deprecated:!1,functions:[{name:"onFrame",parameters:[],result:"",deprecated:!1},{name:"setRealtime",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"getRealtime",parameters:[],result:"Boolean",deprecated:!1},{name:"getMode",parameters:[],result:"Int",deprecated:!1},{name:"setMode",parameters:[["Int","mode"]],result:"",deprecated:!1},{name:"nextMode",parameters:[],result:"",deprecated:!1}]},Be={parent:"GuiObject",name:"Browser",deprecated:!1,functions:[{name:"navigateUrl",parameters:[["String","url"]],result:"",deprecated:!1},{name:"back",parameters:[],result:"",deprecated:!1},{name:"forward",parameters:[],result:"",deprecated:!1},{name:"stop",parameters:[],result:"",deprecated:!1},{name:"refresh",parameters:[],result:"",deprecated:!1},{name:"home",parameters:[],result:"",deprecated:!1},{name:"setTargetName",parameters:[["String","targetname"]],result:"",deprecated:!1},{name:"onBeforeNavigate",parameters:[["String","url"],["Int","flags"],["String","targetframename"]],result:"Boolean",deprecated:!1},{name:"onDocumentComplete",parameters:[["String","url"]],result:"",deprecated:!1},{name:"onDocumentReady",parameters:[["String","url"]],result:"",deprecated:!1},{name:"getDocumentTitle",parameters:[],result:"String",deprecated:!1},{name:"onNavigateError",parameters:[["String","url"],["int","code"]],result:"",deprecated:!1},{name:"setCancelIEErrorPage",parameters:[["boolean","cancel"]],result:"",deprecated:!1},{name:"scrape",parameters:[],result:"",deprecated:!1},{name:"onMediaLink",parameters:[["string","url"]],result:"string",deprecated:!1}]},ye={parent:"GuiObject",name:"EqVis",deprecated:!1,functions:[]},De={parent:"GuiObject",name:"Status",deprecated:!1,functions:[]},Te={parent:"GuiObject",name:"Text",deprecated:!1,functions:[{name:"setText",parameters:[["String","txt"]],result:"",deprecated:!1},{name:"setAlternateText",parameters:[["String","txt"]],result:"",deprecated:!1},{name:"getText",parameters:[],result:"String",deprecated:!1},{name:"getTextWidth",parameters:[],result:"int",deprecated:!1},{name:"onTextChanged",parameters:[["String","newtxt"]],result:"",deprecated:!1}]},Ae={parent:"GuiObject",name:"Title",deprecated:!1,functions:[]},xe={parent:"GuiObject",name:"Layer",deprecated:!1,functions:[{name:"onBeginResize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]],result:"",deprecated:!1},{name:"onEndResize",parameters:[["int","x"],["int","y"],["int","w"],["int","h"]],result:"",deprecated:!1},{name:"fx_onInit",parameters:[],result:"",deprecated:!1},{name:"fx_onFrame",parameters:[],result:"",deprecated:!1},{name:"fx_onGetPixelR",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]],result:"Double",deprecated:!1},{name:"fx_onGetPixelD",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]],result:"Double",deprecated:!1},{name:"fx_onGetPixelX",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]],result:"Double",deprecated:!1},{name:"fx_onGetPixelY",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]],result:"Double",deprecated:!1},{name:"fx_onGetPixelA",parameters:[["double","r"],["double","d"],["double","x"],["double","y"]],result:"Double",deprecated:!1},{name:"setRegionFromMap",parameters:[["Map","regionmap"],["int","threshold"],["boolean","reverse"]],result:"",deprecated:!1},{name:"setRegion",parameters:[["Region","reg"]],result:"",deprecated:!1},{name:"fx_setEnabled",parameters:[["boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getEnabled",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setWrap",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getWrap",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setRect",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getRect",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setBgFx",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getBgFx",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setClear",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getClear",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setSpeed",parameters:[["Int","msperframe"]],result:"",deprecated:!1},{name:"fx_getSpeed",parameters:[],result:"Int",deprecated:!1},{name:"fx_setRealtime",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getRealtime",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setLocalized",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getLocalized",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setBilinear",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getBilinear",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setAlphaMode",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"fx_getAlphaMode",parameters:[],result:"Boolean",deprecated:!1},{name:"fx_setGridSize",parameters:[["Int","x"],["Int","y"]],result:"",deprecated:!1},{name:"fx_update",parameters:[],result:"",deprecated:!1},{name:"fx_restart",parameters:[],result:"",deprecated:!1},{name:"isInvalid",parameters:[],result:"Boolean",deprecated:!1}]},Fe={parent:"GuiObject",name:"Button",deprecated:!1,functions:[{name:"onActivate",parameters:[["int","activated"]],result:"",deprecated:!1},{name:"onLeftClick",parameters:[],result:"",deprecated:!1},{name:"onRightClick",parameters:[],result:"",deprecated:!1},{name:"setActivated",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"setActivatedNoCallback",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"getActivated",parameters:[],result:"Boolean",deprecated:!1},{name:"leftClick",parameters:[],result:"",deprecated:!1},{name:"rightClick",parameters:[],result:"",deprecated:!1}]},we={parent:"Layer",name:"AnimatedLayer",deprecated:!1,functions:[{name:"onPlay",parameters:[],result:"",deprecated:!1},{name:"onPause",parameters:[],result:"",deprecated:!1},{name:"onResume",parameters:[],result:"",deprecated:!1},{name:"onStop",parameters:[],result:"",deprecated:!1},{name:"onFrame",parameters:[["Int","framenum"]],result:"",deprecated:!1},{name:"setSpeed",parameters:[["Int","msperframe"]],result:"",deprecated:!1},{name:"gotoFrame",parameters:[["int","framenum"]],result:"",deprecated:!1},{name:"setStartFrame",parameters:[["Int","framenum"]],result:"",deprecated:!1},{name:"setEndFrame",parameters:[["int","framenum"]],result:"",deprecated:!1},{name:"setAutoReplay",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"play",parameters:[],result:"",deprecated:!1},{name:"stop",parameters:[],result:"",deprecated:!1},{name:"pause",parameters:[],result:"",deprecated:!1},{name:"isPlaying",parameters:[],result:"Boolean",deprecated:!1},{name:"isPaused",parameters:[],result:"Boolean",deprecated:!1},{name:"isStopped",parameters:[],result:"Boolean",deprecated:!1},{name:"getStartFrame",parameters:[],result:"Int",deprecated:!1},{name:"getEndFrame",parameters:[],result:"Int",deprecated:!1},{name:"getLength",parameters:[],result:"Int",deprecated:!1},{name:"getDirection",parameters:[],result:"Int",deprecated:!1},{name:"getAutoReplay",parameters:[],result:"Boolean",deprecated:!1},{name:"getCurFrame",parameters:[],result:"Int",deprecated:!1},{name:"setRealtime",parameters:[["Boolean","onoff"]],result:"",deprecated:!1}]},Ee={parent:"Layer",name:"AlbumArtLayer",deprecated:!1,functions:[{name:"refresh",parameters:[],result:"",deprecated:!1},{name:"isLoading",parameters:[],result:"",deprecated:!1},{name:"onAlbumArtLoaded",parameters:[["boolean","success"]],result:"",deprecated:!1}]},je={parent:"Button",name:"ToggleButton",deprecated:!1,functions:[{name:"onToggle",parameters:[["Boolean","onoff"]],result:"",deprecated:!1},{name:"getCurCfgVal",parameters:[],result:"int",deprecated:!1}]},ve={parent:"GuiObject",name:"GroupList",deprecated:!1,functions:[{name:"instantiate",parameters:[["String","group_id"],["int","num_groups"]],result:"Group",deprecated:!1},{name:"getNumItems",parameters:[],result:"Int",deprecated:!1},{name:"enumItem",parameters:[["int","num"]],result:"Group",deprecated:!1},{name:"removeAll",parameters:[],result:"",deprecated:!1},{name:"scrollToPercent",parameters:[["Int","percent"]],result:"",deprecated:!1},{name:"setRedraw",parameters:[["int","redraw"]],result:"",deprecated:!1}]},Ge={parent:"Group",name:"CfgGroup",deprecated:!1,functions:[{name:"cfgGetInt",parameters:[],result:"Int",deprecated:!1},{name:"cfgSetInt",parameters:[["Int","intvalue"]],result:"",deprecated:!1},{name:"cfgGetString",parameters:[],result:"String",deprecated:!1},{name:"cfgGetFloat",parameters:[],result:"Float",deprecated:!1},{name:"cfgSetFloat",parameters:[["Float","floatvalue"]],result:"",deprecated:!1},{name:"cfgSetString",parameters:[["String","strvalue"]],result:"",deprecated:!1},{name:"onCfgChanged",parameters:[],result:"",deprecated:!1},{name:"cfgGetGuid",parameters:[],result:"String",deprecated:!1},{name:"cfgGetName",parameters:[],result:"String",deprecated:!1}]},Le={parent:"GuiObject",name:"QueryList",deprecated:!0,functions:[{name:"onResetQuery",parameters:[],result:"",deprecated:!0}]},Oe={parent:"GuiObject",name:"MouseRedir",deprecated:!1,functions:[{name:"setRedirection",parameters:[["GuiObject","o"]],result:"",deprecated:!1},{name:"getRedirection",parameters:[],result:"GuiObject",deprecated:!1},{name:"setRegionFromMap",parameters:[["Map","regionmap"],["Int","threshold"],["Boolean","reverse"]],result:"",deprecated:!1},{name:"setRegion",parameters:[["Region","reg"]],result:"",deprecated:!1}]},Me={parent:"GuiObject",name:"DropDownList",deprecated:!1,functions:[{name:"getItemSelected",parameters:[],result:"String",deprecated:!1},{name:"onSelect",parameters:[["Int","id"],["Int","hover"]],result:"",deprecated:!1},{name:"setListHeight",parameters:[["Int","h"]],result:"",deprecated:!1},{name:"openList",parameters:[],result:"",deprecated:!1},{name:"closeList",parameters:[],result:"",deprecated:!1},{name:"setItems",parameters:[["String","lotsofitems"]],result:"",deprecated:!1},{name:"addItem",parameters:[["String","_text"]],result:"Int",deprecated:!1},{name:"delItem",parameters:[["Int","id"]],result:"",deprecated:!1},{name:"findItem",parameters:[["String","_text"]],result:"Int",deprecated:!1},{name:"getNumItems",parameters:[],result:"Int",deprecated:!1},{name:"selectItem",parameters:[["Int","id"],["Int","hover"]],result:"",deprecated:!1},{name:"getItemText",parameters:[["Int","id"]],result:"String",deprecated:!1},{name:"getSelected",parameters:[],result:"Int",deprecated:!1},{name:"getSelectedText",parameters:[],result:"String",deprecated:!1},{name:"getCustomText",parameters:[],result:"String",deprecated:!1},{name:"deleteAllItems",parameters:[],result:"",deprecated:!1},{name:"setNoItemText",parameters:[["String","txt"]],result:"",deprecated:!1}]},_e={parent:"GuiObject",name:"LayoutStatus",deprecated:!1,functions:[{name:"callme",parameters:[["String","str"]],result:"",deprecated:!1}]},Pe={parent:"GuiObject",name:"TabSheet",deprecated:!1,functions:[{name:"getCurPage",parameters:[],result:"Int",deprecated:!1},{name:"setCurPage",parameters:[["Int","a"]],result:"",deprecated:!1}]},Re={parent:"GuiObject",name:"GuiList",deprecated:!1,functions:[{name:"addColumn",parameters:[["String","name"],["Int","width"],["Int","numeric"]],result:"Int",deprecated:!1},{name:"getNumColumns",parameters:[],result:"Int",deprecated:!1},{name:"getColumnWidth",parameters:[["Int","column"]],result:"Int",deprecated:!1},{name:"setColumnWidth",parameters:[["Int","column"],["Int","newwidth"]],result:"",deprecated:!1},{name:"getColumnLabel",parameters:[["Int","column"]],result:"String",deprecated:!1},{name:"setColumnLabel",parameters:[["Int","column"],["String","newlabel"]],result:"",deprecated:!1},{name:"getColumnNumeric",parameters:[["Int","column"]],result:"Int",deprecated:!1},{name:"setColumnDynamic",parameters:[["Int","column"],["Int","isdynamic"]],result:"",deprecated:!1},{name:"isColumnDynamic",parameters:[["Int","column"]],result:"Int",deprecated:!1},{name:"invalidateColumns",parameters:[],result:"",deprecated:!1},{name:"getNumItems",parameters:[],result:"Int",deprecated:!1},{name:"getItemCount",parameters:[],result:"Int",deprecated:!1},{name:"addItem",parameters:[["String","label"]],result:"Int",deprecated:!1},{name:"insertItem",parameters:[["Int","pos"],["String","label"]],result:"Int",deprecated:!1},{name:"getLastAddedItemPos",parameters:[],result:"Int",deprecated:!1},{name:"setSubItem",parameters:[["Int","pos"],["Int","subpos"],["String","txt"]],result:"",deprecated:!1},{name:"deleteAllItems",parameters:[],result:"",deprecated:!1},{name:"deleteByPos",parameters:[["Int","pos"]],result:"Int",deprecated:!1},{name:"getItemLabel",parameters:[["Int","pos"],["Int","subpos"]],result:"String",deprecated:!1},{name:"getSubitemText",parameters:[["Int","pos"],["Int","subpos"]],result:"String",deprecated:!1},{name:"setItemLabel",parameters:[["Int","pos"],["String","_text"]],result:"",deprecated:!1},{name:"invalidateItem",parameters:[["Int","pos"]],result:"Int",deprecated:!1},{name:"getFirstItemVisible",parameters:[],result:"Int",deprecated:!1},{name:"getLastItemVisible",parameters:[],result:"Int",deprecated:!1},{name:"setItemIcon",parameters:[["Int","pos"],["String","bitmapId"]],result:"",deprecated:!1},{name:"getItemIcon",parameters:[["Int","pos"]],result:"String",deprecated:!1},{name:"setMinimumSize",parameters:[["Int","size"]],result:"",deprecated:!1},{name:"getWantAutoDeselect",parameters:[],result:"Int",deprecated:!1},{name:"setWantAutoDeselect",parameters:[["Int","want"]],result:"",deprecated:!1},{name:"onSetVisible",parameters:[["Int","show"]],result:"",deprecated:!1},{name:"setAutoSort",parameters:[["Int","dosort"]],result:"",deprecated:!1},{name:"setFontSize",parameters:[["Int","size"]],result:"Int",deprecated:!1},{name:"getFontSize",parameters:[],result:"Int",deprecated:!1},{name:"getHeaderHeight",parameters:[],result:"Int",deprecated:!1},{name:"getPreventMultipleSelection",parameters:[],result:"Int",deprecated:!1},{name:"setPreventMultipleSelection",parameters:[["Int","val"]],result:"Int",deprecated:!1},{name:"setShowIcons",parameters:[["int","showThem"]],result:"",deprecated:!1},{name:"getShowIcons",parameters:[],result:"Int",deprecated:!1},{name:"setIconWidth",parameters:[["int","width"]],result:"Int",deprecated:!1},{name:"setIconHeight",parameters:[["int","width"]],result:"Int",deprecated:!1},{name:"getIconWidth",parameters:[],result:"",deprecated:!1},{name:"getIconHeight",parameters:[],result:"",deprecated:!1},{name:"next",parameters:[],result:"",deprecated:!1},{name:"previous",parameters:[],result:"",deprecated:!1},{name:"pagedown",parameters:[],result:"",deprecated:!1},{name:"pageup",parameters:[],result:"",deprecated:!1},{name:"home",parameters:[],result:"",deprecated:!1},{name:"end",parameters:[],result:"",deprecated:!1},{name:"reset",parameters:[],result:"",deprecated:!1},{name:"ensureItemVisible",parameters:[["Int","pos"]],result:"",deprecated:!1},{name:"scrollAbsolute",parameters:[["Int","x"]],result:"Int",deprecated:!1},{name:"scrollRelative",parameters:[["Int","x"]],result:"Int",deprecated:!1},{name:"scrollLeft",parameters:[["Int","lines"]],result:"",deprecated:!1},{name:"scrollRight",parameters:[["Int","lines"]],result:"",deprecated:!1},{name:"scrollUp",parameters:[["Int","lines"]],result:"",deprecated:!1},{name:"scrollDown",parameters:[["Int","lines"]],result:"",deprecated:!1},{name:"jumpToNext",parameters:[["Int","c"]],result:"",deprecated:!1},{name:"scrollToItem",parameters:[["Int","pos"]],result:"",deprecated:!1},{name:"selectCurrent",parameters:[],result:"",deprecated:!1},{name:"selectFirstEntry",parameters:[],result:"",deprecated:!1},{name:"getItemSelected",parameters:[["Int","pos"]],result:"Int",deprecated:!1},{name:"isItemFocused",parameters:[["Int","pos"]],result:"Int",deprecated:!1},{name:"getItemFocused",parameters:[],result:"Int",deprecated:!1},{name:"setItemFocused",parameters:[["Int","pos"]],result:"",deprecated:!1},{name:"getFirstItemSelected",parameters:[],result:"Int",deprecated:!1},{name:"getNextItemSelected",parameters:[["Int","lastpos"]],result:"Int",deprecated:!1},{name:"selectAll",parameters:[],result:"Int",deprecated:!1},{name:"deselectAll",parameters:[],result:"Int",deprecated:!1},{name:"invertSelection",parameters:[],result:"Int",deprecated:!1},{name:"setSelectionStart",parameters:[["Int","pos"]],result:"",deprecated:!1},{name:"setSelectionEnd",parameters:[["Int","pos"]],result:"",deprecated:!1},{name:"setSelected",parameters:[["Int","pos"],["Int","selected"]],result:"",deprecated:!1},{name:"toggleSelection",parameters:[["Int","pos"],["Int","setfocus"]],result:"",deprecated:!1},{name:"resort",parameters:[],result:"",deprecated:!1},{name:"getSortDirection",parameters:[],result:"Int",deprecated:!1},{name:"getSortColumn",parameters:[],result:"Int",deprecated:!1},{name:"setSortColumn",parameters:[["Int","col"]],result:"",deprecated:!1},{name:"setSortDirection",parameters:[["Int","dir"]],result:"",deprecated:!1},{name:"moveItem",parameters:[["Int","from"],["Int","to"]],result:"",deprecated:!1},{name:"onSelectAll",parameters:[],result:"",deprecated:!1},{name:"onDelete",parameters:[],result:"",deprecated:!1},{name:"onDoubleClick",parameters:[["Int","itemnum"]],result:"",deprecated:!1},{name:"onLeftClick",parameters:[["Int","itemnum"]],result:"",deprecated:!1},{name:"onSecondLeftClick",parameters:[["Int","itemnum"]],result:"",deprecated:!1},{name:"onRightClick",parameters:[["Int","itemnum"]],result:"Int",deprecated:!1},{name:"onColumnDblClick",parameters:[["Int","col"],["Int","x"],["Int","y"]],result:"Int",deprecated:!1},{name:"onColumnLabelClick",parameters:[["Int","col"],["Int","x"],["Int","y"]],result:"Int",deprecated:!1},{name:"onItemSelection",parameters:[["Int","itemnum"],["Int","selected"]],result:"",deprecated:!1},{name:"onIconLeftClick",parameters:[["int","itemnum"],["int","x"],["int","y"]],result:"Int",deprecated:!1}]},ke={parent:"GuiObject",name:"GuiTree",deprecated:!1,functions:[{name:"onWantAutoContextMenu",parameters:[],result:"Int",deprecated:!1},{name:"onMouseWheelUp",parameters:[["Int","clicked"],["Int","lines"]],result:"Int",deprecated:!1},{name:"onMouseWheelDown",parameters:[["Int","clicked"],["Int","lines"]],result:"Int",deprecated:!1},{name:"onContextMenu",parameters:[["Int","x"],["Int","y"]],result:"Int",deprecated:!1},{name:"onChar",parameters:[["Int","c"]],result:"Int",deprecated:!1},{name:"onItemRecvDrop",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"onLabelChange",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"onItemSelected",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"onItemDeselected",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"getNumRootItems",parameters:[],result:"Int",deprecated:!1},{name:"enumRootItem",parameters:[["Int","which"]],result:"TreeItem",deprecated:!1},{name:"jumpToNext",parameters:[["Int","c"]],result:"",deprecated:!1},{name:"ensureItemVisible",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"getContentsWidth",parameters:[],result:"Int",deprecated:!1},{name:"getContentsHeight",parameters:[],result:"Int",deprecated:!1},{name:"addTreeItem",parameters:[["TreeItem","item"],["TreeItem","par"],["Int","sorted"],["Int","haschildtab"]],result:"TreeItem",deprecated:!1},{name:"removeTreeItem",parameters:[["TreeItem","item"]],result:"Int",deprecated:!1},{name:"moveTreeItem",parameters:[["TreeItem","item"],["TreeItem","newparent"]],result:"",deprecated:!1},{name:"deleteAllItems",parameters:[],result:"",deprecated:!1},{name:"expandItem",parameters:[["TreeItem","item"]],result:"Int",deprecated:!1},{name:"expandItemDeferred",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"collapseItem",parameters:[["TreeItem","item"]],result:"Int",deprecated:!1},{name:"collapseItemDeferred",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"selectItem",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"selectItemDeferred",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"delItemDeferred",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"hiliteItem",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"unhiliteItem",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"getCurItem",parameters:[],result:"TreeItem",deprecated:!1},{name:"hitTest",parameters:[["Int","x"],["Int","y"]],result:"TreeItem",deprecated:!1},{name:"editItemLabel",parameters:[["TreeItem","item"]],result:"",deprecated:!1},{name:"cancelEditLabel",parameters:[["Int","destroyit"]],result:"",deprecated:!1},{name:"setAutoEdit",parameters:[["Int","ae"]],result:"",deprecated:!1},{name:"getAutoEdit",parameters:[],result:"Int",deprecated:!1},{name:"getByLabel",parameters:[["TreeItem","item"],["String","name"]],result:"TreeItem",deprecated:!1},{name:"setSorted",parameters:[["Int","dosort"]],result:"",deprecated:!1},{name:"getSorted",parameters:[],result:"Int",deprecated:!1},{name:"sortTreeItems",parameters:[],result:"",deprecated:!1},{name:"getSibling",parameters:[["TreeItem","item"]],result:"TreeItem",deprecated:!1},{name:"setAutoCollapse",parameters:[["Int","doautocollapse"]],result:"",deprecated:!1},{name:"setFontSize",parameters:[["Int","newsize"]],result:"Int",deprecated:!1},{name:"getFontSize",parameters:[],result:"Int",deprecated:!1},{name:"getNumVisibleChildItems",parameters:[["TreeItem","c"]],result:"Int",deprecated:!1},{name:"getNumVisibleItems",parameters:[],result:"Int",deprecated:!1},{name:"enumVisibleItems",parameters:[["Int","n"]],result:"TreeItem",deprecated:!1},{name:"enumVisibleChildItems",parameters:[["TreeItem","c"],["Int","n"]],result:"TreeItem",deprecated:!1},{name:"enumAllItems",parameters:[["Int","n"]],result:"TreeItem",deprecated:!1},{name:"getItemRectX",parameters:[["TreeItem","item"]],result:"Int",deprecated:!1},{name:"getItemRectY",parameters:[["TreeItem","item"]],result:"Int",deprecated:!1},{name:"getItemRectW",parameters:[["TreeItem","item"]],result:"Int",deprecated:!1},{name:"getItemRectH",parameters:[["TreeItem","item"]],result:"Int",deprecated:!1},{name:"getItemFromPoint",parameters:[["Int","x"],["Int","y"]],result:"TreeItem",deprecated:!1}]},Ne={parent:"Object",name:"TreeItem",deprecated:!1,functions:[{name:"getNumChildren",parameters:[],result:"Int",deprecated:!1},{name:"setLabel",parameters:[["String","label"]],result:"",deprecated:!1},{name:"getLabel",parameters:[],result:"String",deprecated:!1},{name:"ensureVisible",parameters:[],result:"",deprecated:!1},{name:"getNthChild",parameters:[["Int","nth"]],result:"TreeItem",deprecated:!1},{name:"getChild",parameters:[],result:"TreeItem",deprecated:!1},{name:"getChildSibling",parameters:[["TreeItem","_item"]],result:"TreeItem",deprecated:!1},{name:"getSibling",parameters:[],result:"TreeItem",deprecated:!1},{name:"getParent",parameters:[],result:"TreeItem",deprecated:!1},{name:"editLabel",parameters:[],result:"",deprecated:!1},{name:"hasSubItems",parameters:[],result:"Int",deprecated:!1},{name:"setSorted",parameters:[["Int","issorted"]],result:"",deprecated:!1},{name:"setChildTab",parameters:[["Int","haschildtab"]],result:"",deprecated:!1},{name:"isSorted",parameters:[],result:"Int",deprecated:!1},{name:"isCollapsed",parameters:[],result:"Int",deprecated:!1},{name:"isExpanded",parameters:[],result:"Int",deprecated:!1},{name:"invalidate",parameters:[],result:"",deprecated:!1},{name:"isSelected",parameters:[],result:"Int",deprecated:!1},{name:"isHilited",parameters:[],result:"Int",deprecated:!1},{name:"setHilited",parameters:[["Int","ishilited"]],result:"",deprecated:!1},{name:"collapse",parameters:[],result:"Int",deprecated:!1},{name:"expand",parameters:[],result:"Int",deprecated:!1},{name:"getTree",parameters:[],result:"GuiTree",deprecated:!1},{name:"onTreeAdd",parameters:[],result:"",deprecated:!1},{name:"onTreeRemove",parameters:[],result:"",deprecated:!1},{name:"onSelect",parameters:[],result:"",deprecated:!1},{name:"onDeselect",parameters:[],result:"",deprecated:!1},{name:"onLeftDoubleClick",parameters:[],result:"Int",deprecated:!1},{name:"onRightDoubleClick",parameters:[],result:"Int",deprecated:!1},{name:"onChar",parameters:[["Int","key"]],result:"Int",deprecated:!1},{name:"onExpand",parameters:[],result:"",deprecated:!1},{name:"onCollapse",parameters:[],result:"",deprecated:!1},{name:"onBeginLabelEdit",parameters:[],result:"Int",deprecated:!1},{name:"onEndLabelEdit",parameters:[["String","newlabel"]],result:"Int",deprecated:!1},{name:"onContextMenu",parameters:[["Int","x"],["Int","y"]],result:"Int",deprecated:!1}]},We={parent:"GuiObject",name:"MenuButton",deprecated:!0,functions:[{name:"onOpenMenu",parameters:[],result:"",deprecated:!0},{name:"onCloseMenu",parameters:[],result:"",deprecated:!0},{name:"onSelectItem",parameters:[["String","item"]],result:"",deprecated:!0},{name:"openMenu",parameters:[],result:"",deprecated:!0},{name:"closeMenu",parameters:[],result:"",deprecated:!0}]},Ve={parent:"GuiObject",name:"CheckBox",deprecated:!1,functions:[{name:"onToggle",parameters:[["int","newstate"]],result:"",deprecated:!1},{name:"setChecked",parameters:[["int","checked"]],result:"",deprecated:!1},{name:"isChecked",parameters:[],result:"Int",deprecated:!1},{name:"setText",parameters:[["String","txt"]],result:"",deprecated:!1},{name:"getText",parameters:[],result:"String",deprecated:!1}]},He={parent:"GuiObject",name:"Form",deprecated:!0,functions:[{name:"getContentsHeight",parameters:[],result:"Int",deprecated:!0},{name:"newCell",parameters:[["String","groupname"]],result:"",deprecated:!0},{name:"nextRow",parameters:[],result:"",deprecated:!0},{name:"deleteAll",parameters:[],result:"",deprecated:!0}]},$e={parent:"GuiObject",name:"Frame",deprecated:!1,functions:[{name:"getPosition",parameters:[],result:"Int",deprecated:!1},{name:"setPosition",parameters:[["Int","position"]],result:"",deprecated:!1},{name:"onSetPosition",parameters:[["Int","position"]],result:"",deprecated:!1}]},Ue={parent:"GuiObject",name:"Menu",deprecated:!1,functions:[{name:"setMenuGroup",parameters:[["String","groupId"]],result:"",deprecated:!1},{name:"getMenuGroup",parameters:[],result:"String",deprecated:!1},{name:"setMenu",parameters:[["String","menuId"]],result:"",deprecated:!1},{name:"getMenu",parameters:[],result:"String",deprecated:!1},{name:"spawnMenu",parameters:[["int","monitor"]],result:"",deprecated:!1},{name:"cancelMenu",parameters:[],result:"",deprecated:!1},{name:"setNormalId",parameters:[["String","id"]],result:"",deprecated:!1},{name:"setDownId",parameters:[["String","id"]],result:"",deprecated:!1},{name:"setHoverId",parameters:[["String","id"]],result:"",deprecated:!1},{name:"onOpenMenu",parameters:[],result:"",deprecated:!1},{name:"onCloseMenu",parameters:[],result:"",deprecated:!1},{name:"nextMenu",parameters:[],result:"",deprecated:!1},{name:"previousMenu",parameters:[],result:"",deprecated:!1}]},b={"516549710D874a5191E3A6B53235F3E7":ae,D6F50F6493FA49b793F1BA66EFAE3E98:re,E90DC47B840D4ae7B02C040BD275F7FC:se,"00C074A0FEA249a0BE8DFABBDB161640":ne,B2023AB5434D4ba1BEAE59637503F3C6:le,"87C65778E74349fe85F909CC532AFD56":me,"38603665461B42a7AA75D83F6667BF73":de,F4787AF4B2BB4ef79CFBE74BA9BEA88D:pe,"3A370C023CBF439f84F186885BCF1E36":ie,"5D0C5BB67DE14b1fA70F8D1659941941":ue,A5376FA14E94411a83F605EC5EEA5F0A:oe,"4EE3E199C6364bec97CD78BC9C8628B0":ce,"45BE95E520724191935CBB5FF9F117FD":fe,"60906D4E537E482eB004CC9461885672":ge,"403ABCC06F224bd68BA410C829932547":Ie,"97AA3E4DF4D04fa8817B0AF22A454983":Se,"64E4BBFA81F449d9B0C0A85B2EC3BCFD":be,"62B65E3F375E408d8DEA76814AB91B77":Ce,CE4F97BE77B04e199956D49833C96C27:he,A8C2200D51EB4b2aBA7F5D4BC65D4C71:Be,"8D1EBA38489E483eB9608D1F43C5C405":ye,"0F08C940AF394b2380F3B8C48F7EBB59":De,EFAA8672310E41faB7DC85A9525BCB4B:Te,"7DFD324437514e7cBF4082AE5F3ADC33":Ae,"5AB9FA159A7D4557ABC86557A6C67CA9":xe,"698EDDCD8F1E4fec9B12F944F909FF45":Fe,"6B64CD275A264c4b8C59E6A70CF6493A":we,"6DCB05E48AC448c2B19349F0910EF54A":Ee,B4DCCFFF81FE4bcc961B720FD5BE0FFF:je,"01E28CE1B05911d5979FE4DE6F51760A":ve,"80F0F8BD1BA542a6A0933236A00C8D4A":Ge,CDCB785D81F242538F0561B872283CFA:Le,"9B2E341B6C9840fa8B850C1B6EE89405":Oe,"36D59B7103FD4af897950502B7DB267A":Me,"7FD5F210ACC448dfA6A05451576CDC76":_e,B5BAA53505B34dcbADC1E618D28F6896:Pe,"6129FEC1DAB74d51916501CA0C1B70DB":Re,D59514F7ED3645e8980F3F4EA0522CD9:ke,"9B3B4B82667A420e8FFC794115809C02":Ne,"1D8631C880D047929F98BD5D36B49136":We,C7ED319953194798986360B15A298CAA:Ve,"2D2D1376BE0A4CB9BC0C57E6E4C999F5":He,E2BBC14D84F64173BDB3B2EB2F665550:$e,"73C00594961F401B9B1B672427AC4165":Ue};var O={};Object.values(b).forEach(e=>{O[e.name]=e});function m(e,t){return O[e].functions.find(({name:r})=>r===t)}m("Timer","isRunning").result="boolean";m("ToggleButton","onToggle").parameters[0][1]="onoff";m("GuiTree","onChar").parameters[0][0]="string";m("GuiList","onSetVisible").parameters[0][0]="boolean";m("Wac","onNotify").parameters=m("Object","onNotify").parameters;m("Wac","onNotify").result="int";var M=b;var ze={parent:"Object",name:"PlEdit",deprecated:!1,functions:[{name:"getNumTracks",parameters:[],result:"int",deprecated:!1},{name:"getCurrentIndex",parameters:[],result:"int",deprecated:!1},{name:"getNumSelectedTracks",parameters:[],result:"int",deprecated:!1},{name:"getNextSelectedTrack",parameters:[["int","i"]],result:"int",deprecated:!1},{name:"showCurrentlyPlayingTrack",parameters:[],result:"",deprecated:!1},{name:"showTrack",parameters:[["int","item"]],result:"",deprecated:!1},{name:"enqueueFile",parameters:[["string","file"]],result:"",deprecated:!1},{name:"clear",parameters:[],result:"",deprecated:!1},{name:"removeTrack",parameters:[["int","item"]],result:"",deprecated:!1},{name:"swapTracks",parameters:[["int","item1"],["int","item2"]],result:"",deprecated:!1},{name:"moveUp",parameters:[["int","item"]],result:"",deprecated:!1},{name:"moveDown",parameters:[["int","item"]],result:"",deprecated:!1},{name:"moveTo",parameters:[["int","item"],["int","pos"]],result:"",deprecated:!1},{name:"playTrack",parameters:[["int","item"]],result:"",deprecated:!1},{name:"getRating",parameters:[["int","item"]],result:"int",deprecated:!1},{name:"setRating",parameters:[["int","item"],["int","rating"]],result:"",deprecated:!1},{name:"getTitle",parameters:[["int","item"]],result:"String",deprecated:!1},{name:"getLength",parameters:[["int","item"]],result:"String",deprecated:!1},{name:"getMetaData",parameters:[["int","item"],["String","metadatastring"]],result:"String",deprecated:!1},{name:"getFileName",parameters:[["int","item"]],result:"String",deprecated:!1},{name:"onPleditModified",parameters:[],result:"",deprecated:!1}]},qe={parent:"Object",name:"PlDir",deprecated:!1,functions:[{name:"getNumItems",parameters:[],result:"int",deprecated:!1},{name:"getItemName",parameters:[["int","item"]],result:"String",deprecated:!1},{name:"showCurrentlyPlayingEntry",parameters:[],result:"",deprecated:!1},{name:"refresh",parameters:[],result:"",deprecated:!1},{name:"renameItem",parameters:[["int","item"],["String","name"]],result:"",deprecated:!1},{name:"enqueueItem",parameters:[["int","item"]],result:"",deprecated:!1},{name:"playItem",parameters:[["int","item"]],result:"",deprecated:!1}]},_={"345BEEBC0229492190BE6CB6A49A79D9":ze,"61A7ABAD7D7941f6B1D0E1808603A4F4":qe};var Xe={parent:"Object",name:"Config",deprecated:!1,functions:[{name:"getItem",parameters:[["String","item_name"]],result:"ConfigItem",deprecated:!1},{name:"getItemByGuid",parameters:[["String","item_guid"]],result:"ConfigItem",deprecated:!1},{name:"newItem",parameters:[["String","item_name"],["String","item_guid"]],result:"ConfigItem",deprecated:!1}]},Ye={parent:"Object",name:"ConfigItem",deprecated:!1,functions:[{name:"getAttribute",parameters:[["String","attr_name"]],result:"ConfigAttribute",deprecated:!1},{name:"newAttribute",parameters:[["String","attr_name"],["String","default_value"]],result:"ConfigAttribute",deprecated:!1},{name:"getGuid",parameters:[["String","attr_name"]],result:"String",deprecated:!1},{name:"getName",parameters:[],result:"String",deprecated:!1}]},Ke={parent:"Object",name:"ConfigAttribute",deprecated:!1,functions:[{name:"setData",parameters:[["String","value"]],result:"",deprecated:!1},{name:"getData",parameters:[],result:"String",deprecated:!1},{name:"onDataChanged",parameters:[],result:"",deprecated:!1},{name:"getParentItem",parameters:[],result:"ConfigItem",deprecated:!1},{name:"getAttributeName",parameters:[],result:"String",deprecated:!1}]},P={"593DBA22D0774976B952F4713655400B":Xe,D40302823AAB4d87878D12326FADFCD5:Ye,"24DEC283B76E4a368CCC9E24C46B6C73":Ke};var Je={parent:"Object",name:"WinampConfig",deprecated:!1,functions:[{name:"getGroup",parameters:[["String","config_group_guid"]],result:"WinampConfigGroup",deprecated:!1}]},Ze={parent:"Object",name:"WinampConfigGroup",deprecated:!1,functions:[{name:"getBool",parameters:[["String","itemname"]],result:"Boolean",deprecated:!1},{name:"setBool",parameters:[["String","itemname"],["Boolean","itemvalue"]],result:"",deprecated:!1},{name:"getInt",parameters:[["String","itemname"]],result:"Int",deprecated:!1},{name:"setInt",parameters:[["String","itemname"]],result:"",deprecated:!1},{name:"getString",parameters:[["String","itemname"]],result:"String",deprecated:!1},{name:"setString",parameters:[["String","itemname"]],result:"",deprecated:!1}]},R={B2AD3F2B31ED4e31BC6DE9951CD555BB:Je,FC17844EC72B4518A068A8F930A5BA80:Ze};var Qe={parent:"Object",name:"Application",deprecated:!1,functions:[{name:"GetApplicationName",parameters:[],result:"String",deprecated:!1},{name:"GetVersionString",parameters:[],result:"String",deprecated:!1},{name:"GetVersionNumberString",parameters:[],result:"String",deprecated:!1},{name:"GetBuildNumber",parameters:[],result:"int",deprecated:!1},{name:"GetGUID",parameters:[],result:"String",deprecated:!1},{name:"GetCommandLine",parameters:[],result:"String",deprecated:!1},{name:"Shutdown",parameters:[],result:"",deprecated:!1},{name:"CancelShutdown",parameters:[],result:"",deprecated:!1},{name:"IsShuttingDown",parameters:[],result:"boolean",deprecated:!1},{name:"GetApplicationPath",parameters:[],result:"String",deprecated:!1},{name:"GetSettingsPath",parameters:[],result:"String",deprecated:!1},{name:"GetWorkingPath",parameters:[],result:"String",deprecated:!1},{name:"SetWorkingPath",parameters:[["String","working_path"]],result:"",deprecated:!1}]},N={B8E867B027154da7A5BA53DBA1FCFEAC:Qe};var et={parent:"Object",name:"File",deprecated:!1,functions:[{name:"load",parameters:[["String","path"]],result:"",deprecated:!1},{name:"exists",parameters:[],result:"boolean",deprecated:!1},{name:"getSize",parameters:[],result:"int",deprecated:!1}]},tt={parent:"File",name:"XmlDoc",deprecated:!1,functions:[{name:"parser_addCallback",parameters:[["String","section"]],result:"",deprecated:!1},{name:"parser_start",parameters:[],result:"",deprecated:!1},{name:"parser_onCallback",parameters:[["String","xmlpath"],["String","xmltag"],["list","paramname"],["list","paramvalue"]],result:"String",deprecated:!1},{name:"parser_onCloseCallback",parameters:[["String","xmlpath"],["String","xmltag"]],result:"String",deprecated:!1},{name:"parser_onError",parameters:[["String","filename"],["int","linenum"],["String","incpath"],["int","errcode"],["String","errstr"]],result:"String",deprecated:!1},{name:"parser_destroy",parameters:[],result:"String",deprecated:!1}]},W={"836F8B2EE0D14db4937F0D0A04C8DCD1":et,"417FFB69987F4be88D87D9965EEEC868":tt};var y=l(l(l(l(l(l({},M),_),P),R),N),W);function D(e){return T[at(e)]}var T={};Object.keys(y).forEach(e=>{T[e.toLowerCase()]=y[e]});var V={};Object.values(y).forEach(e=>{V[e.name]=e});Object.values(T).forEach(e=>{let t=V[e.parent];if(t==null&&e.parent!=="@{00000000-0000-0000-0000-000000000000}@")throw new Error(`Could not find parent class named ${e.parent}`);e.parentClass=t});function at(e){return e.replace(/(........)(....)(....)(..)(..)(..)(..)(..)(..)(..)(..)/,"$1$3$2$7$6$5$4$11$10$9$8").toLowerCase()}var A=L(require("path")),H=L(require("util")),$=!0;function rt(e){let t=e.getFilename();return A.default.dirname(t).split(A.default.sep).pop()==="makiClasses"}module.exports=function(e){return rt(e)?{ClassDeclaration(t){if(t.abstract==!0||t.id.name.endsWith("Handler"))return;let r=z(t);r==null?(e.report({node:t,message:'Expected Maki class to declare a static property "GUID".'}),$&&(e.report({node:t,message:"noguid"+H.inspect(t,{depth:3})}),$=!1)):r=="OFFICIALLY-NO-GUID"||D(r)==null&&e.report({node:t,message:"Invalid GUID value."})},MethodDefinition(t){let s=t.parent.parent,p=t.key;if(p.type!=="Identifier")return;let i=p.name,x=z(s);if(x==null)return;let F=D(x);if(F==null)return;let f=F.functions.find(n=>n.name.toLowerCase()===i);if(f==null)return;let g=t.value.params,I=f.parameters,w={start:t.value.body.loc.start,end:t.value.body.loc.start},E=f.result;if(E){let n=U(E),d=q(t.value.returnType);if(d==null){e.report({loc:w,message:`Missing return type for Maki method '${i}'. Expected "${n}".`});return}if(d!==n){e.report({loc:w,message:`Incorrect TypeScript return type for Maki method '${i}'. Expected "${n}" but found "${d}".`});return}}if(g.length!==I.length){e.report({node:t,message:`Incorrect arity for Maki method '${i}'. Expected ${I.length} arguments but found ${g.length}.`});return}for(let[n,d]of Object.entries(g)){let[X,nt]=I[n],S=U(X),u=q(d.typeAnnotation);if(u==null){e.report({node:d,message:"Maki argument missing type annotation."});continue}if(S!=null&&S!==u){e.report({node:u,message:`Incorrect TypeScript type for Maki method argument. Expected "${S}" but found "${u}".`});continue}}}}:{}};function U(e){switch(e.toLowerCase()){case"int":case"double":case"float":return"number";case"any":return"any";case"string":return"string";case"map":return"MakiMap";case"boolean":return"boolean";case"object":return"BaseObject";case"guiobject":return"GuiObj";case"layout":case"container":case"group":case"wac":case"configitem":case"configattribute":case"winampconfiggroup":case"popupmenu":case"menu":return e;default:throw new Error(`Missing maki type: ${e}`)}}function z(e){let t=e.body.body.find(p=>p.static);if(t==null)return null;let r=t.value;if(r.type!=="Literal")return null;let s=r.value;return typeof s!="string"?null:s}function q(e){if(e==null)return null;let t=e.typeAnnotation;switch(t.type){case"TSTypeReference":return t.typeName.name;case"TSNumberKeyword":return"number";case"TSStringKeyword":return"string";case"TSBooleanKeyword":return"boolean";default:return null}} diff --git a/packages/webamp-modern/tools/eslint-rules/proper-maki-types.ts b/packages/webamp-modern/tools/eslint-rules/proper-maki-types.ts index ae18bfaf..04e31d3b 100644 --- a/packages/webamp-modern/tools/eslint-rules/proper-maki-types.ts +++ b/packages/webamp-modern/tools/eslint-rules/proper-maki-types.ts @@ -2,6 +2,10 @@ import { Rule } from "eslint"; import { ClassDeclaration, PropertyDefinition } from "estree"; import { getClass } from "../../src/maki/objects"; import path from "path"; +// debug stuff +// https://stackoverflow.com/questions/11616630/how-can-i-print-a-circular-structure-in-a-json-like-format +import * as util from "util"; // has no default export +let firstProblem = true; //to throw first only function isMakiModule(context: Rule.RuleContext): boolean { const filePath = context.getFilename(); @@ -15,12 +19,24 @@ module.exports = function (context: Rule.RuleContext): Rule.RuleListener { } return { ClassDeclaration(node) { + if (node["abstract"] == true) return; // any intermediate class must be marked as abstract class + if (node.id.name.endsWith("Handler")) return; // any action/vis-painter must be ended with Handler const guid = guidFromClassDeclaration(node); if (guid == null) { context.report({ node, message: `Expected Maki class to declare a static property "GUID".`, }); + if (firstProblem) { + context.report({ + node, + message: + "noguid" + /* JSON.stringify */ util.inspect(node, { depth: 3 }), + }); + firstProblem = false; + } + } else if (guid == "OFFICIALLY-NO-GUID") { + //? Okay, it seem that the class is never touched by maki script } else { const objectInfo = getClass(guid); if (objectInfo == null) { @@ -78,14 +94,14 @@ module.exports = function (context: Rule.RuleContext): Rule.RuleListener { if (returnType == null) { context.report({ loc: typeLoc, - message: `Missing return type for Maki method. Expected "${expectedTsType}".`, + message: `Missing return type for Maki method '${name}'. Expected "${expectedTsType}".`, }); return; } if (returnType !== expectedTsType) { context.report({ loc: typeLoc, - message: `Incorrect TypeScript return type for Maki method. Expected "${expectedTsType}" but found "${returnType}".`, + message: `Incorrect TypeScript return type for Maki method '${name}'. Expected "${expectedTsType}" but found "${returnType}".`, }); return; } @@ -96,12 +112,12 @@ module.exports = function (context: Rule.RuleContext): Rule.RuleListener { if (args.length !== argDefinitions.length) { context.report({ node, - message: `Incorrect arity for Maki method. Expected ${argDefinitions.length} arguments but found ${args.length}.`, + message: `Incorrect arity for Maki method '${name}'. Expected ${argDefinitions.length} arguments but found ${args.length}.`, }); return; } - for (const [i, arg] of args.entries()) { + for (const [i, arg] of Object.entries(args)) { const [defType, defName] = argDefinitions[i]; const tsDefType = makiTypeToTsType(defType); const tsType = getHumanReadableTSType( @@ -136,28 +152,28 @@ function makiTypeToTsType(makiType: string): string { case "double": case "float": return "number"; + case "any": + return "any"; case "string": return "string"; case "map": return "MakiMap"; case "boolean": return "boolean"; + case "object": + return "BaseObject"; case "guiobject": return "GuiObj"; case "layout": - return "Layout"; case "container": - return "Container"; case "group": - return "Group"; case "wac": - return "Wac"; case "configitem": - return "ConfigItem"; case "configattribute": - return "ConfigAttribute"; case "winampconfiggroup": - return "WinampConfigGroup"; + case "popupmenu": + case "menu": + return makiType; default: throw new Error(`Missing maki type: ${makiType}`); } diff --git a/packages/webamp-modern/tools/extract-object-types.js b/packages/webamp-modern/tools/extract-object-types.js index 3dd70ccc..0e887101 100644 --- a/packages/webamp-modern/tools/extract-object-types.js +++ b/packages/webamp-modern/tools/extract-object-types.js @@ -12,6 +12,7 @@ const files = { std: path.join(lib566, "std.mi"), winampconfig: path.join(lib566, "winampconfig.mi"), application: path.join(lib566, "application.mi"), + fileio: path.join(lib566, "fileio.mi"), }; Object.keys(files).forEach((name) => { @@ -22,5 +23,9 @@ Object.keys(files).forEach((name) => { `../src/maki/objectData/${name}.json` ); - fs.writeFileSync(destinationPath, JSON.stringify(types, null, 2)); + fs.writeFileSync( + destinationPath, + JSON.stringify(types, null, 2) + // `export default ${JSON.stringify(types, null, 2)}` + ); }); diff --git a/packages/webamp-modern/tools/parse-mi.js b/packages/webamp-modern/tools/parse-mi.js index ef1fb717..76721c3f 100644 --- a/packages/webamp-modern/tools/parse-mi.js +++ b/packages/webamp-modern/tools/parse-mi.js @@ -22,12 +22,20 @@ function parseFile(filePath) { const name = classDefinitionMatch[3] .replace(/^_predecl /, "") .replace(/^&/, ""); - objects[name.toLowerCase()] = { id, name, parent, functions: [] }; + const deprecated = /^deprecated\s/.test(line); + objects[name.toLowerCase()] = { + id, + name, + parent, + deprecated, + functions: [], + }; } const methodMatch = /\s*extern(\s+.*)?\s+(.*)\.(.*)\((.*)\);/.exec(line); if (methodMatch) { + const methodDeprecated = /^deprecated\s/.test(line); const result = methodMatch[1] == null ? "" : methodMatch[1].trim(); const className = methodMatch[2].toLowerCase(); const name = methodMatch[3].trim(); @@ -51,14 +59,19 @@ function parseFile(filePath) { )}` ); } - objects[className].functions.push({ result, name, parameters }); + objects[className].functions.push({ + name, + parameters, + result, + deprecated: methodDeprecated, + }); } }); const objectIds = {}; Object.keys(objects).forEach((normalizedName) => { - const { id, parent, functions, name } = objects[normalizedName]; - objectIds[id] = { parent, functions, name }; + const { id, parent, functions, name, deprecated } = objects[normalizedName]; + objectIds[id] = { parent, name, deprecated, functions }; }); return objectIds; diff --git a/packages/webamp-modern/tools/parse-mi.test.js b/packages/webamp-modern/tools/parse-mi.test.js index ecefa1f4..d374cd0a 100644 --- a/packages/webamp-modern/tools/parse-mi.test.js +++ b/packages/webamp-modern/tools/parse-mi.test.js @@ -1,6 +1,6 @@ -import std from "../src/maki/objectData/std.json"; -import config from "../src/maki/objectData/config.json"; -import pldir from "../src/maki/objectData/pldir.json"; +import std from "../src/maki/objectData/std"; +import config from "../src/maki/objectData/config"; +import pldir from "../src/maki/objectData/pldir"; import { parseFile } from "../tools/parse-mi"; import path from "path"; diff --git a/packages/webamp-modern/tools/puppet1.js b/packages/webamp-modern/tools/puppet1.js new file mode 100644 index 00000000..03684e88 --- /dev/null +++ b/packages/webamp-modern/tools/puppet1.js @@ -0,0 +1,25 @@ +const puppeteer = require("puppeteer"); + +(async () => { + const browser = await puppeteer.launch(); + const page = await browser.newPage(); + // const homepage = 'http://localhost:8080'; + // const homepage = 'http://localhost:8080/?skin=assets/MMD3.wal'; + const homepage = "http://localhost:8080/?skin=assets/Gizmo2.0.face"; + await page.goto(homepage, { + // waitUntil: 'networkidle2', + // waitUntil: 'load', + // waitUntil: 'domcontentloaded', + waitUntil: "networkidle0", + }); + + // await new Promise((resolve) => setTimeout(resolve, 10 * 1000)); + // const css = await page.evaluate(() => { + // document.getElementById("web-amp").innerHTML; + // }); + // console.log('ini isi webamp coy', css); + + await page.screenshot({ path: "example.png", omitBackground: true }); + + await browser.close(); +})(); diff --git a/packages/webamp-modern/tsconfig.json b/packages/webamp-modern/tsconfig.json index bc9e5022..525ddf76 100644 --- a/packages/webamp-modern/tsconfig.json +++ b/packages/webamp-modern/tsconfig.json @@ -2,6 +2,7 @@ "compilerOptions": { "esModuleInterop": true, "allowJs": true, - "resolveJsonModule": true + "resolveJsonModule": true, + "target": "es5" } } diff --git a/yarn.lock b/yarn.lock index e477e661..9c6c0855 100644 --- a/yarn.lock +++ b/yarn.lock @@ -99,6 +99,14 @@ dependencies: "@jridgewell/trace-mapping" "^0.3.0" +"@ampproject/remapping@^2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" + integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w== + dependencies: + "@jridgewell/gen-mapping" "^0.1.0" + "@jridgewell/trace-mapping" "^0.3.9" + "@apideck/better-ajv-errors@^0.3.1": version "0.3.6" resolved "https://registry.npmjs.org/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.6.tgz" @@ -134,17 +142,22 @@ dependencies: "@babel/highlight" "^7.18.6" -"@babel/compat-data@^7.12.5": - version "7.20.10" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.10.tgz#9d92fa81b87542fff50e848ed585b4212c1d34ec" - integrity sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg== +"@babel/compat-data@^7.12.5", "@babel/compat-data@^7.16.4", "@babel/compat-data@^7.20.1", "@babel/compat-data@^7.20.5": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.21.0.tgz#c241dc454e5b5917e40d37e525e2f4530c399298" + integrity sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g== -"@babel/compat-data@^7.12.7", "@babel/compat-data@^7.20.0": +"@babel/compat-data@^7.12.7": version "7.20.1" resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz" integrity sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ== -"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.18.8", "@babel/compat-data@^7.19.1": +"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.17.0", "@babel/compat-data@^7.17.10": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.17.10.tgz#711dc726a492dfc8be8220028b1b92482362baab" + integrity sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw== + +"@babel/compat-data@^7.17.7": version "7.19.1" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.19.1.tgz#72d647b4ff6a4f82878d184613353af1dd0290f9" integrity sha512-72a9ghR0gnESIa7jBN53U32FOVCEoztyIlKaNoU05zRhEecduGK9L9c3ww7Mp06JiR+0ls0GBPFJQwwtjn9ksg== @@ -171,20 +184,41 @@ source-map "^0.5.0" "@babel/core@^7.11.1", "@babel/core@^7.11.4", "@babel/core@^7.7.5": - version "7.19.1" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.19.1.tgz#c8fa615c5e88e272564ace3d42fbc8b17bfeb22b" - integrity sha512-1H8VgqXme4UXCRv7/Wa1bq7RVymKOzC7znjyFM8KiEzwFqcKUKYNoQef4GhdklgNvoBXyW4gYhuBNCM5o1zImw== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.0.tgz#1341aefdcc14ccc7553fcc688dd8986a2daffc13" + integrity sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.21.0" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-module-transforms" "^7.21.0" + "@babel/helpers" "^7.21.0" + "@babel/parser" "^7.21.0" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.0" + "@babel/types" "^7.21.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.2" + semver "^6.3.0" + +"@babel/core@^7.11.6", "@babel/core@^7.17.10": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.17.10.tgz#74ef0fbf56b7dfc3f198fc2d927f4f03e12f4b05" + integrity sha512-liKoppandF3ZcBnIYFjfSDHZLKdLHGJRkoWtG8zQyGJBQfIYobpnVGI5+pLBNtS6psFLDzyq8+h5HiVljW9PNA== dependencies: "@ampproject/remapping" "^2.1.0" - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.19.0" - "@babel/helper-compilation-targets" "^7.19.1" - "@babel/helper-module-transforms" "^7.19.0" - "@babel/helpers" "^7.19.0" - "@babel/parser" "^7.19.1" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.1" - "@babel/types" "^7.19.0" + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.17.10" + "@babel/helper-compilation-targets" "^7.17.10" + "@babel/helper-module-transforms" "^7.17.7" + "@babel/helpers" "^7.17.9" + "@babel/parser" "^7.17.10" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.17.10" + "@babel/types" "^7.17.10" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -221,16 +255,17 @@ eslint-visitor-keys "^2.1.0" semver "^6.3.0" -"@babel/generator@^7.12.10", "@babel/generator@^7.17.3", "@babel/generator@^7.19.0", "@babel/generator@^7.20.7", "@babel/generator@^7.9.6": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.20.7.tgz#f8ef57c8242665c5929fe2e8d82ba75460187b4a" - integrity sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw== +"@babel/generator@^7.12.10", "@babel/generator@^7.19.0", "@babel/generator@^7.20.7", "@babel/generator@^7.21.0", "@babel/generator@^7.9.6": + version "7.21.1" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.21.1.tgz#951cc626057bc0af2c35cd23e9c64d384dea83dd" + integrity sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA== dependencies: - "@babel/types" "^7.20.7" + "@babel/types" "^7.21.0" "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" -"@babel/generator@^7.12.11", "@babel/generator@^7.20.1", "@babel/generator@^7.20.2", "@babel/generator@^7.7.2": +"@babel/generator@^7.12.11", "@babel/generator@^7.20.2", "@babel/generator@^7.7.2": version "7.20.4" resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz" integrity sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA== @@ -239,6 +274,24 @@ "@jridgewell/gen-mapping" "^0.3.2" jsesc "^2.5.1" +"@babel/generator@^7.17.10": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.10.tgz#c281fa35b0c349bbe9d02916f4ae08fc85ed7189" + integrity sha512-46MJZZo9y3o4kmhBVc7zW7i8dtR1oIK/sdO5NcfcZRhTGYi+KKJRtHNgsU6c4VUcJmUNV/LQdebD/9Dlv4K+Tg== + dependencies: + "@babel/types" "^7.17.10" + "@jridgewell/gen-mapping" "^0.1.0" + jsesc "^2.5.1" + +"@babel/generator@^7.17.3": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.3.tgz#a2c30b0c4f89858cb87050c3ffdfd36bdf443200" + integrity sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg== + dependencies: + "@babel/types" "^7.17.0" + jsesc "^2.5.1" + source-map "^0.5.0" + "@babel/helper-annotate-as-pure@^7.10.4": version "7.12.10" resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.10.tgz" @@ -267,9 +320,17 @@ "@babel/helper-explode-assignable-expression" "^7.10.4" "@babel/types" "^7.10.4" +"@babel/helper-builder-binary-assignment-operator-visitor@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz#38d138561ea207f0f69eb1626a418e4f7e6a580b" + integrity sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA== + dependencies: + "@babel/helper-explode-assignable-expression" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/helper-builder-binary-assignment-operator-visitor@^7.18.6": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz#acd4edfd7a566d1d51ea975dff38fd52906981bb" integrity sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw== dependencies: "@babel/helper-explode-assignable-expression" "^7.18.6" @@ -285,14 +346,35 @@ browserslist "^4.14.5" semver "^5.5.0" -"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.19.0", "@babel/helper-compilation-targets@^7.19.1", "@babel/helper-compilation-targets@^7.20.0": - version "7.20.0" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz" - integrity sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ== +"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.17.10": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.10.tgz#09c63106d47af93cf31803db6bc49fef354e2ebe" + integrity sha512-gh3RxjWbauw/dFiU/7whjd0qN9K6nPJMqe6+Er7rOavFh0CQUSwhAE3IcTho2rywPJFxej6TUUHDkWcYI6gGqQ== dependencies: - "@babel/compat-data" "^7.20.0" + "@babel/compat-data" "^7.17.10" + "@babel/helper-validator-option" "^7.16.7" + browserslist "^4.20.2" + semver "^6.3.0" + +"@babel/helper-compilation-targets@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz#06e66c5f299601e6c7da350049315e83209d551b" + integrity sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA== + dependencies: + "@babel/compat-data" "^7.16.4" + "@babel/helper-validator-option" "^7.16.7" + browserslist "^4.17.5" + semver "^6.3.0" + +"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.0", "@babel/helper-compilation-targets@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz#a6cd33e93629f5eb473b021aac05df62c4cd09bb" + integrity sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ== + dependencies: + "@babel/compat-data" "^7.20.5" "@babel/helper-validator-option" "^7.18.6" browserslist "^4.21.3" + lru-cache "^5.1.1" semver "^6.3.0" "@babel/helper-create-class-features-plugin@^7.10.3": @@ -317,6 +399,19 @@ "@babel/helper-replace-supers" "^7.12.1" "@babel/helper-split-export-declaration" "^7.10.4" +"@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.17.6": + version "7.17.9" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.9.tgz#71835d7fb9f38bd9f1378e40a4c0902fdc2ea49d" + integrity sha512-kUjip3gruz6AJKOq5i3nC6CoCEEF/oHH3cp6tOZhB+IyyyPyW0g1Gfsxn3mkk6S08pIA2y8GQh609v9G/5sHVQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-function-name" "^7.17.9" + "@babel/helper-member-expression-to-functions" "^7.17.7" + "@babel/helper-optimise-call-expression" "^7.16.7" + "@babel/helper-replace-supers" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/helper-create-class-features-plugin@^7.16.7": version "7.17.6" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.6.tgz#3778c1ed09a7f3e65e6d6e0f6fbfcc53809d92c9" @@ -330,7 +425,7 @@ "@babel/helper-replace-supers" "^7.16.7" "@babel/helper-split-export-declaration" "^7.16.7" -"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.19.0": +"@babel/helper-create-class-features-plugin@^7.18.6": version "7.19.0" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.19.0.tgz#bfd6904620df4e46470bae4850d66be1054c404b" integrity sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw== @@ -356,6 +451,20 @@ "@babel/helper-replace-supers" "^7.20.7" "@babel/helper-split-export-declaration" "^7.18.6" +"@babel/helper-create-class-features-plugin@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.0.tgz#64f49ecb0020532f19b1d014b03bccaa1ab85fb9" + integrity sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-environment-visitor" "^7.18.9" + "@babel/helper-function-name" "^7.21.0" + "@babel/helper-member-expression-to-functions" "^7.21.0" + "@babel/helper-optimise-call-expression" "^7.18.6" + "@babel/helper-replace-supers" "^7.20.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + "@babel/helper-split-export-declaration" "^7.18.6" + "@babel/helper-create-regexp-features-plugin@^7.12.1": version "7.12.7" resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.7.tgz" @@ -364,13 +473,21 @@ "@babel/helper-annotate-as-pure" "^7.10.4" regexpu-core "^4.7.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.19.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz" - integrity sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw== +"@babel/helper-create-regexp-features-plugin@^7.16.7", "@babel/helper-create-regexp-features-plugin@^7.17.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz#1dcc7d40ba0c6b6b25618997c5dbfd310f186fe1" + integrity sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA== + dependencies: + "@babel/helper-annotate-as-pure" "^7.16.7" + regexpu-core "^5.0.1" + +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.20.5": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz#53ff78472e5ce10a52664272a239787107603ebb" + integrity sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - regexpu-core "^5.1.0" + regexpu-core "^5.3.1" "@babel/helper-create-regexp-features-plugin@^7.8.3", "@babel/helper-create-regexp-features-plugin@^7.8.8": version "7.8.8" @@ -389,6 +506,20 @@ "@babel/types" "^7.10.5" lodash "^4.17.19" +"@babel/helper-define-polyfill-provider@^0.3.1": + version "0.3.1" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz#52411b445bdb2e676869e5a74960d2d3826d2665" + integrity sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA== + dependencies: + "@babel/helper-compilation-targets" "^7.13.0" + "@babel/helper-module-imports" "^7.12.13" + "@babel/helper-plugin-utils" "^7.13.0" + "@babel/traverse" "^7.13.0" + debug "^4.1.1" + lodash.debounce "^4.0.8" + resolve "^1.14.2" + semver "^6.1.2" + "@babel/helper-define-polyfill-provider@^0.3.3": version "0.3.3" resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz" @@ -401,9 +532,16 @@ resolve "^1.14.2" semver "^6.1.2" -"@babel/helper-environment-visitor@^7.16.7", "@babel/helper-environment-visitor@^7.18.9": +"@babel/helper-environment-visitor@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" + integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== + dependencies: + "@babel/types" "^7.16.7" + +"@babel/helper-environment-visitor@^7.18.9": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be" integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg== "@babel/helper-explode-assignable-expression@^7.10.4": @@ -413,9 +551,16 @@ dependencies: "@babel/types" "^7.12.1" +"@babel/helper-explode-assignable-expression@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz#12a6d8522fdd834f194e868af6354e8650242b7a" + integrity sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-explode-assignable-expression@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz#41f8228ef0a6f1a036b8dfdfec7ce94f9a6bc096" integrity sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg== dependencies: "@babel/types" "^7.18.6" @@ -445,6 +590,22 @@ "@babel/template" "^7.18.10" "@babel/types" "^7.19.0" +"@babel/helper-function-name@^7.17.9": + version "7.17.9" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz#136fcd54bc1da82fcb47565cf16fd8e444b1ff12" + integrity sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg== + dependencies: + "@babel/template" "^7.16.7" + "@babel/types" "^7.17.0" + +"@babel/helper-function-name@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" + integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg== + dependencies: + "@babel/template" "^7.20.7" + "@babel/types" "^7.21.0" + "@babel/helper-function-name@^7.9.5": version "7.9.5" resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz" @@ -507,6 +668,13 @@ dependencies: "@babel/types" "^7.20.7" +"@babel/helper-member-expression-to-functions@^7.17.7": + version "7.17.7" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz#a34013b57d8542a8c4ff8ba3f747c02452a4d8c4" + integrity sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw== + dependencies: + "@babel/types" "^7.17.0" + "@babel/helper-member-expression-to-functions@^7.18.9": version "7.18.9" resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz" @@ -514,9 +682,16 @@ dependencies: "@babel/types" "^7.18.9" -"@babel/helper-module-imports@^7.10.4", "@babel/helper-module-imports@^7.18.6": +"@babel/helper-member-expression-to-functions@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz#319c6a940431a133897148515877d2f3269c3ba5" + integrity sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q== + dependencies: + "@babel/types" "^7.21.0" + +"@babel/helper-module-imports@^7.10.4", "@babel/helper-module-imports@^7.18.6", "@babel/helper-module-imports@^7.8.3": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== dependencies: "@babel/types" "^7.18.6" @@ -528,21 +703,83 @@ dependencies: "@babel/types" "^7.12.5" -"@babel/helper-module-transforms@^7.12.1", "@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.19.0", "@babel/helper-module-transforms@^7.20.2", "@babel/helper-module-transforms@^7.9.0": - version "7.20.2" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz" - integrity sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA== +"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" + integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== + dependencies: + "@babel/types" "^7.16.7" + +"@babel/helper-module-transforms@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz#7954fec71f5b32c48e4b303b437c34453fd7247c" + integrity sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w== + dependencies: + "@babel/helper-module-imports" "^7.12.1" + "@babel/helper-replace-supers" "^7.12.1" + "@babel/helper-simple-access" "^7.12.1" + "@babel/helper-split-export-declaration" "^7.11.0" + "@babel/helper-validator-identifier" "^7.10.4" + "@babel/template" "^7.10.4" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" + lodash "^4.17.19" + +"@babel/helper-module-transforms@^7.16.7": + version "7.17.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz#3c3b03cc6617e33d68ef5a27a67419ac5199ccd0" + integrity sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA== + dependencies: + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-module-imports" "^7.16.7" + "@babel/helper-simple-access" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/helper-validator-identifier" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.17.3" + "@babel/types" "^7.17.0" + +"@babel/helper-module-transforms@^7.17.7": + version "7.17.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz#3943c7f777139e7954a5355c815263741a9c1cbd" + integrity sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw== + dependencies: + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-module-imports" "^7.16.7" + "@babel/helper-simple-access" "^7.17.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/helper-validator-identifier" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.17.3" + "@babel/types" "^7.17.0" + +"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11", "@babel/helper-module-transforms@^7.20.2", "@babel/helper-module-transforms@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.0.tgz#89a8f86ad748870e3d024e470b2e8405e869db67" + integrity sha512-eD/JQ21IG2i1FraJnTMbUarAUkA7G988ofehG5MDCRXaUU91rEBJuCeSoou2Sk1y4RbLYXzqEg1QLwEmRU4qcQ== dependencies: "@babel/helper-environment-visitor" "^7.18.9" "@babel/helper-module-imports" "^7.18.6" "@babel/helper-simple-access" "^7.20.2" "@babel/helper-split-export-declaration" "^7.18.6" "@babel/helper-validator-identifier" "^7.19.1" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.20.1" - "@babel/types" "^7.20.2" + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.0" + "@babel/types" "^7.21.0" -"@babel/helper-optimise-call-expression@^7.10.1", "@babel/helper-optimise-call-expression@^7.10.3", "@babel/helper-optimise-call-expression@^7.16.7", "@babel/helper-optimise-call-expression@^7.18.6": +"@babel/helper-module-transforms@^7.9.0": + version "7.9.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz#43b34dfe15961918707d247327431388e9fe96e5" + dependencies: + "@babel/helper-module-imports" "^7.8.3" + "@babel/helper-replace-supers" "^7.8.6" + "@babel/helper-simple-access" "^7.8.3" + "@babel/helper-split-export-declaration" "^7.8.3" + "@babel/template" "^7.8.6" + "@babel/types" "^7.9.0" + lodash "^4.17.13" + +"@babel/helper-optimise-call-expression@^7.10.1", "@babel/helper-optimise-call-expression@^7.10.3", "@babel/helper-optimise-call-expression@^7.18.6": version "7.18.6" resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz" integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA== @@ -556,9 +793,34 @@ dependencies: "@babel/types" "^7.12.10" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.1", "@babel/helper-plugin-utils@^7.10.3", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": +"@babel/helper-optimise-call-expression@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz#a34e3560605abbd31a18546bd2aad3e6d9a174f2" + integrity sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w== + dependencies: + "@babel/types" "^7.16.7" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz#9ea293be19babc0f52ff8ca88b34c3611b208670" + +"@babel/helper-plugin-utils@^7.10.1", "@babel/helper-plugin-utils@^7.10.3": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.3.tgz#aac45cccf8bc1873b99a85f34bceef3beb5d3244" + +"@babel/helper-plugin-utils@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" + integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== + +"@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5" + integrity sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA== + +"@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2": version "7.20.2" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz#d1b9000752b18d0877cff85a5c376ce5c3121629" integrity sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ== "@babel/helper-regex@^7.8.3": @@ -576,9 +838,18 @@ "@babel/helper-wrap-function" "^7.10.4" "@babel/types" "^7.12.1" -"@babel/helper-remap-async-to-generator@^7.18.6", "@babel/helper-remap-async-to-generator@^7.18.9": +"@babel/helper-remap-async-to-generator@^7.16.8": + version "7.16.8" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz#29ffaade68a367e2ed09c90901986918d25e57e3" + integrity sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-wrap-function" "^7.16.8" + "@babel/types" "^7.16.8" + +"@babel/helper-remap-async-to-generator@^7.18.9": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz#997458a0e3357080e54e1d79ec347f8a8cd28519" integrity sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" @@ -605,7 +876,7 @@ "@babel/traverse" "^7.12.5" "@babel/types" "^7.12.5" -"@babel/helper-replace-supers@^7.16.7", "@babel/helper-replace-supers@^7.20.7": +"@babel/helper-replace-supers@^7.16.7", "@babel/helper-replace-supers@^7.20.7", "@babel/helper-replace-supers@^7.8.6": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz#243ecd2724d2071532b2c8ad2f0f9f083bcae331" integrity sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A== @@ -617,7 +888,7 @@ "@babel/traverse" "^7.20.7" "@babel/types" "^7.20.7" -"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.18.9", "@babel/helper-replace-supers@^7.19.1": +"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.18.9": version "7.19.1" resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz" integrity sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw== @@ -628,13 +899,20 @@ "@babel/traverse" "^7.19.1" "@babel/types" "^7.19.0" -"@babel/helper-simple-access@^7.12.1", "@babel/helper-simple-access@^7.18.6", "@babel/helper-simple-access@^7.20.2": +"@babel/helper-simple-access@^7.12.1", "@babel/helper-simple-access@^7.16.7", "@babel/helper-simple-access@^7.20.2", "@babel/helper-simple-access@^7.8.3": version "7.20.2" - resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz#0ab452687fe0c2cfb1e2b9e0015de07fc2d62dd9" integrity sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA== dependencies: "@babel/types" "^7.20.2" +"@babel/helper-simple-access@^7.17.7": + version "7.17.7" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz#aaa473de92b7987c6dfa7ce9a7d9674724823367" + integrity sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA== + dependencies: + "@babel/types" "^7.17.0" + "@babel/helper-skip-transparent-expression-wrappers@^7.12.1": version "7.12.1" resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz" @@ -642,12 +920,19 @@ dependencies: "@babel/types" "^7.12.1" -"@babel/helper-skip-transparent-expression-wrappers@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz" - integrity sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw== +"@babel/helper-skip-transparent-expression-wrappers@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz#0ee3388070147c3ae051e487eca3ebb0e2e8bb09" + integrity sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw== dependencies: - "@babel/types" "^7.18.9" + "@babel/types" "^7.16.0" + +"@babel/helper-skip-transparent-expression-wrappers@^7.18.9", "@babel/helper-skip-transparent-expression-wrappers@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz#fbe4c52f60518cab8140d77101f0e63a8a230684" + integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg== + dependencies: + "@babel/types" "^7.20.0" "@babel/helper-split-export-declaration@^7.10.1", "@babel/helper-split-export-declaration@^7.11.0", "@babel/helper-split-export-declaration@^7.16.7", "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" @@ -699,24 +984,34 @@ "@babel/traverse" "^7.10.4" "@babel/types" "^7.10.4" +"@babel/helper-wrap-function@^7.16.8": + version "7.16.8" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz#58afda087c4cd235de92f7ceedebca2c41274200" + integrity sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw== + dependencies: + "@babel/helper-function-name" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.16.8" + "@babel/types" "^7.16.8" + "@babel/helper-wrap-function@^7.18.9": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz" - integrity sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg== + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz#75e2d84d499a0ab3b31c33bcfe59d6b8a45f62e3" + integrity sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q== dependencies: "@babel/helper-function-name" "^7.19.0" "@babel/template" "^7.18.10" - "@babel/traverse" "^7.19.0" - "@babel/types" "^7.19.0" + "@babel/traverse" "^7.20.5" + "@babel/types" "^7.20.5" -"@babel/helpers@^7.19.0", "@babel/helpers@^7.9.6": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.20.7.tgz#04502ff0feecc9f20ecfaad120a18f011a8e6dce" - integrity sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA== +"@babel/helpers@^7.17.9": + version "7.17.9" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.17.9.tgz#b2af120821bfbe44f9907b1826e168e819375a1a" + integrity sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q== dependencies: - "@babel/template" "^7.20.7" - "@babel/traverse" "^7.20.7" - "@babel/types" "^7.20.7" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.17.9" + "@babel/types" "^7.17.0" "@babel/helpers@^7.20.1": version "7.20.1" @@ -727,7 +1022,33 @@ "@babel/traverse" "^7.20.1" "@babel/types" "^7.20.0" -"@babel/highlight@^7.10.4", "@babel/highlight@^7.18.6": +"@babel/helpers@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.21.0.tgz#9dd184fb5599862037917cdc9eecb84577dc4e7e" + integrity sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA== + dependencies: + "@babel/template" "^7.20.7" + "@babel/traverse" "^7.21.0" + "@babel/types" "^7.21.0" + +"@babel/helpers@^7.9.6": + version "7.9.6" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.9.6.tgz#092c774743471d0bb6c7de3ad465ab3d3486d580" + dependencies: + "@babel/template" "^7.8.3" + "@babel/traverse" "^7.9.6" + "@babel/types" "^7.9.6" + +"@babel/highlight@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.4.tgz#7d1bdfd65753538fabe6c38596cdb76d9ac60143" + integrity sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA== + dependencies: + "@babel/helper-validator-identifier" "^7.10.4" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/highlight@^7.18.6": version "7.18.6" resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz" integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== @@ -755,16 +1076,33 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.19.1.tgz#6f6d6c2e621aad19a92544cc217ed13f1aac5b4c" integrity sha512-h7RCSorm1DdTVGJf3P2Mhj3kdnkmF/EiysUkzS2TdgAYqyjFdMQJbVuXOBej2SBJaXan/lIVtT6KkGbyyq753A== +"@babel/parser@^7.17.10": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.10.tgz#873b16db82a8909e0fbd7f115772f4b739f6ce78" + integrity sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ== + "@babel/parser@^7.19.1", "@babel/parser@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.20.7.tgz#66fe23b3c8569220817d5feb8b9dcdc95bb4f71b" integrity sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg== -"@babel/parser@^7.20.1", "@babel/parser@^7.20.2": +"@babel/parser@^7.20.2": version "7.20.3" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz" integrity sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg== +"@babel/parser@^7.21.0": + version "7.21.1" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.21.1.tgz#a8f81ee2fe872af23faea4b17a08fcc869de7bcc" + integrity sha512-JzhBFpkuhBNYUY7qs+wTzNmyCWUHEaAFpQQD2YfU1rPL38/L43Wvid0fFkiOCnHvsGncRZgEPyGnltABLcVDTg== + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz#4eda6d6c2a0aa79c70fa7b6da67763dfe2141050" + integrity sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6": version "7.18.6" resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz" @@ -772,6 +1110,15 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz#cc001234dfc139ac45f6bcf801866198c8c72ff9" + integrity sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" + "@babel/plugin-proposal-optional-chaining" "^7.16.7" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.18.9": version "7.18.9" resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz" @@ -790,13 +1137,22 @@ "@babel/helper-remap-async-to-generator" "^7.12.1" "@babel/plugin-syntax-async-generators" "^7.8.0" -"@babel/plugin-proposal-async-generator-functions@^7.19.1": - version "7.19.1" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.19.1.tgz" - integrity sha512-0yu8vNATgLy4ivqMNBIwb1HebCelqN7YX8SL3FDXORv/RqT0zEEWUCH4GH44JsSrvCu6GqnAdR5EBFAPeNBB4Q== +"@babel/plugin-proposal-async-generator-functions@^7.16.8": + version "7.16.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz#3bdd1ebbe620804ea9416706cd67d60787504bc8" + integrity sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-remap-async-to-generator" "^7.16.8" + "@babel/plugin-syntax-async-generators" "^7.8.4" + +"@babel/plugin-proposal-async-generator-functions@^7.20.1": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz#bfb7276d2d573cb67ba379984a2334e262ba5326" + integrity sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA== dependencies: "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-remap-async-to-generator" "^7.18.9" "@babel/plugin-syntax-async-generators" "^7.8.4" @@ -810,31 +1166,48 @@ "@babel/plugin-proposal-class-properties@^7.16.0", "@babel/plugin-proposal-class-properties@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== dependencies: "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-class-static-block@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz" - integrity sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw== +"@babel/plugin-proposal-class-properties@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz#925cad7b3b1a2fcea7e59ecc8eb5954f961f91b0" + integrity sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww== dependencies: - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-create-class-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + +"@babel/plugin-proposal-class-static-block@^7.17.6": + version "7.17.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz#164e8fd25f0d80fa48c5a4d1438a6629325ad83c" + integrity sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.17.6" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + +"@babel/plugin-proposal-class-static-block@^7.18.6": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz#77bdd66fb7b605f3a61302d224bdfacf5547977d" + integrity sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-proposal-decorators@^7.16.4": - version "7.19.1" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.19.1.tgz" - integrity sha512-LfIKNBBY7Q1OX5C4xAgRQffOg2OnhAo9fnbcOHgOC9Yytm2Sw+4XqHufRYU86tHomzepxtvuVaNO+3EVKR4ivw== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.21.0.tgz#70e0c89fdcd7465c97593edb8f628ba6e4199d63" + integrity sha512-MfgX49uRrFUTL/HvWtmx3zmpyzMMr4MTj3d527MLlr/4RTT9G/ytFFP7qet2uM2Ve03b+BkpWUpK+lRXnQ+v9w== dependencies: - "@babel/helper-create-class-features-plugin" "^7.19.0" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-replace-supers" "^7.19.1" + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-replace-supers" "^7.20.7" "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/plugin-syntax-decorators" "^7.19.0" + "@babel/plugin-syntax-decorators" "^7.21.0" "@babel/plugin-proposal-dynamic-import@^7.12.1": version "7.12.1" @@ -844,9 +1217,17 @@ "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-dynamic-import" "^7.8.0" +"@babel/plugin-proposal-dynamic-import@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz#c19c897eaa46b27634a00fee9fb7d829158704b2" + integrity sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-proposal-dynamic-import@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz#72bcf8d408799f547d759298c3c27c7e7faa4d94" integrity sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -860,9 +1241,17 @@ "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" +"@babel/plugin-proposal-export-namespace-from@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz#09de09df18445a5786a305681423ae63507a6163" + integrity sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/plugin-proposal-export-namespace-from@^7.18.9": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz#5f7313ab348cdb19d590145f9247540e94761203" integrity sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA== dependencies: "@babel/helper-plugin-utils" "^7.18.9" @@ -876,9 +1265,17 @@ "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings" "^7.8.0" +"@babel/plugin-proposal-json-strings@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz#9732cb1d17d9a2626a08c5be25186c195b6fa6e8" + integrity sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-proposal-json-strings@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz#7e8788c1811c393aff762817e7dbf1ebd0c05f0b" integrity sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -892,12 +1289,20 @@ "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz" - integrity sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q== +"@babel/plugin-proposal-logical-assignment-operators@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz#be23c0ba74deec1922e639832904be0bea73cdea" + integrity sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + +"@babel/plugin-proposal-logical-assignment-operators@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz#dfbcaa8f7b4d37b51e8bfb46d94a5aea2bb89d83" + integrity sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" "@babel/plugin-proposal-nullish-coalescing-operator@^7.12.1": @@ -910,12 +1315,20 @@ "@babel/plugin-proposal-nullish-coalescing-operator@^7.16.0", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" +"@babel/plugin-proposal-nullish-coalescing-operator@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz#141fc20b6857e59459d430c850a0011e36561d99" + integrity sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-proposal-numeric-separator@^7.12.7": version "7.12.7" resolved "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.7.tgz" @@ -926,12 +1339,20 @@ "@babel/plugin-proposal-numeric-separator@^7.16.0", "@babel/plugin-proposal-numeric-separator@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz#899b14fbafe87f053d2c5ff05b36029c62e13c75" integrity sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q== dependencies: "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-numeric-separator" "^7.10.4" +"@babel/plugin-proposal-numeric-separator@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz#d6b69f4af63fb38b6ca2558442a7fb191236eba9" + integrity sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/plugin-proposal-object-rest-spread@^7.12.1": version "7.12.1" resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz" @@ -941,16 +1362,27 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.0" "@babel/plugin-transform-parameters" "^7.12.1" -"@babel/plugin-proposal-object-rest-spread@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz" - integrity sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q== +"@babel/plugin-proposal-object-rest-spread@^7.17.3": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz#d9eb649a54628a51701aef7e0ea3d17e2b9dd390" + integrity sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw== dependencies: - "@babel/compat-data" "^7.18.8" - "@babel/helper-compilation-targets" "^7.18.9" - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/compat-data" "^7.17.0" + "@babel/helper-compilation-targets" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.18.8" + "@babel/plugin-transform-parameters" "^7.16.7" + +"@babel/plugin-proposal-object-rest-spread@^7.20.2": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz#aa662940ef425779c75534a5c41e9d936edc390a" + integrity sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg== + dependencies: + "@babel/compat-data" "^7.20.5" + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-transform-parameters" "^7.20.7" "@babel/plugin-proposal-optional-catch-binding@^7.12.1": version "7.12.1" @@ -960,9 +1392,17 @@ "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" +"@babel/plugin-proposal-optional-catch-binding@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz#c623a430674ffc4ab732fd0a0ae7722b67cb74cf" + integrity sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-proposal-optional-catch-binding@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz#f9400d0e6a3ea93ba9ef70b09e72dd6da638a2cb" integrity sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -978,12 +1418,21 @@ "@babel/plugin-syntax-optional-chaining" "^7.8.0" "@babel/plugin-proposal-optional-chaining@^7.16.0", "@babel/plugin-proposal-optional-chaining@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz" - integrity sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz#886f5c8978deb7d30f678b2e24346b287234d3ea" + integrity sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" - "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + +"@babel/plugin-proposal-optional-chaining@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz#7cd629564724816c0e8a969535551f943c64c39a" + integrity sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-proposal-private-methods@^7.12.1": @@ -996,20 +1445,38 @@ "@babel/plugin-proposal-private-methods@^7.16.0", "@babel/plugin-proposal-private-methods@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== dependencies: "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" +"@babel/plugin-proposal-private-methods@^7.16.11": + version "7.16.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz#e8df108288555ff259f4527dbe84813aac3a1c50" + integrity sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.16.10" + "@babel/helper-plugin-utils" "^7.16.7" + +"@babel/plugin-proposal-private-property-in-object@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz#b0b8cef543c2c3d57e59e2c611994861d46a3fce" + integrity sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/plugin-proposal-private-property-in-object@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz" - integrity sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw== + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz#19496bd9883dd83c23c7d7fc45dcd9ad02dfa1dc" + integrity sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-create-class-features-plugin" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-proposal-unicode-property-regex@^7.12.1": @@ -1020,9 +1487,17 @@ "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-proposal-unicode-property-regex@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz#635d18eb10c6214210ffc5ff4932552de08188a2" + integrity sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-proposal-unicode-property-regex@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e" integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.18.6" @@ -1056,7 +1531,7 @@ "@babel/plugin-syntax-class-properties@^7.12.13": version "7.12.13" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" @@ -1069,17 +1544,17 @@ "@babel/plugin-syntax-class-static-block@^7.14.5": version "7.14.5" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-decorators@^7.19.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.19.0.tgz" - integrity sha512-xaBZUEDntt4faL1yN8oIFlhfXeQAWJW7CLKYsHTUqriCUbj8xOra8bfxxKGi/UwExPFBuPdH4XfHc9rGQhrVkQ== +"@babel/plugin-syntax-decorators@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.21.0.tgz#d2b3f31c3e86fa86e16bb540b7660c55bd7d0e78" + integrity sha512-tIoPpGBR8UuM4++ccWN3gifhVvQu7ZizuR1fklhRJrd5ewgbkUS+0KVFeWWxELtn18NTLoW32XV7zyOgIAiz+w== dependencies: - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-dynamic-import@^7.8.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" @@ -1101,12 +1576,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-import-assertions@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz" - integrity sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ== +"@babel/plugin-syntax-import-assertions@^7.20.0": + version "7.20.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4" + integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.19.0" "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.1" @@ -1179,7 +1654,7 @@ "@babel/plugin-syntax-private-property-in-object@^7.14.5": version "7.14.5" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" @@ -1193,7 +1668,7 @@ "@babel/plugin-syntax-top-level-await@^7.14.5": version "7.14.5" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" @@ -1232,12 +1707,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-arrow-functions@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz" - integrity sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ== +"@babel/plugin-transform-arrow-functions@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz#44125e653d94b98db76369de9c396dc14bef4154" + integrity sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.16.7" + +"@babel/plugin-transform-arrow-functions@^7.18.6": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz#bea332b0e8b2dab3dafe55a163d8227531ab0551" + integrity sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-async-to-generator@^7.12.1": version "7.12.1" @@ -1248,14 +1730,23 @@ "@babel/helper-plugin-utils" "^7.10.4" "@babel/helper-remap-async-to-generator" "^7.12.1" +"@babel/plugin-transform-async-to-generator@^7.16.8": + version "7.16.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz#b83dff4b970cf41f1b819f8b49cc0cfbaa53a808" + integrity sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg== + dependencies: + "@babel/helper-module-imports" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-remap-async-to-generator" "^7.16.8" + "@babel/plugin-transform-async-to-generator@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz" - integrity sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag== + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz#dfee18623c8cb31deb796aa3ca84dda9cea94354" + integrity sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q== dependencies: "@babel/helper-module-imports" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-remap-async-to-generator" "^7.18.6" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-remap-async-to-generator" "^7.18.9" "@babel/plugin-transform-block-scoped-functions@^7.12.1": version "7.12.1" @@ -1264,9 +1755,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-block-scoped-functions@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz#4d0d57d9632ef6062cdf354bb717102ee042a620" + integrity sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-block-scoped-functions@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8" integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -1278,12 +1776,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-block-scoping@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz" - integrity sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw== +"@babel/plugin-transform-block-scoping@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz#f50664ab99ddeaee5bc681b8f3a6ea9d72ab4f87" + integrity sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-plugin-utils" "^7.16.7" + +"@babel/plugin-transform-block-scoping@^7.20.2": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz#e737b91037e5186ee16b76e7ae093358a5634f02" + integrity sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-classes@^7.12.1": version "7.12.1" @@ -1299,18 +1804,32 @@ "@babel/helper-split-export-declaration" "^7.10.4" globals "^11.1.0" -"@babel/plugin-transform-classes@^7.19.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.19.0.tgz" - integrity sha512-YfeEE9kCjqTS9IitkgfJuxjcEtLUHMqa8yUJ6zdz8vR7hKuo6mOy2C05P0F1tdMmDCeuyidKnlrw/iTppHcr2A== +"@babel/plugin-transform-classes@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz#8f4b9562850cd973de3b498f1218796eb181ce00" + integrity sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.16.7" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-function-name" "^7.16.7" + "@babel/helper-optimise-call-expression" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-replace-supers" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + globals "^11.1.0" + +"@babel/plugin-transform-classes@^7.20.2": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz#f469d0b07a4c5a7dbb21afad9e27e57b47031665" + integrity sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ== dependencies: "@babel/helper-annotate-as-pure" "^7.18.6" - "@babel/helper-compilation-targets" "^7.19.0" + "@babel/helper-compilation-targets" "^7.20.7" "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" + "@babel/helper-function-name" "^7.21.0" "@babel/helper-optimise-call-expression" "^7.18.6" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-replace-supers" "^7.18.9" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-replace-supers" "^7.20.7" "@babel/helper-split-export-declaration" "^7.18.6" globals "^11.1.0" @@ -1321,12 +1840,20 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-computed-properties@^7.18.9": - version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz" - integrity sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw== +"@babel/plugin-transform-computed-properties@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz#66dee12e46f61d2aae7a73710f591eb3df616470" + integrity sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-plugin-utils" "^7.16.7" + +"@babel/plugin-transform-computed-properties@^7.18.9": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz#704cc2fd155d1c996551db8276d55b9d46e4d0aa" + integrity sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/template" "^7.20.7" "@babel/plugin-transform-destructuring@^7.12.1": version "7.12.1" @@ -1335,12 +1862,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-destructuring@^7.18.13": - version "7.18.13" - resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.13.tgz" - integrity sha512-TodpQ29XekIsex2A+YJPj5ax2plkGa8YYY6mFjCohk/IG9IY42Rtuj1FuDeemfg2ipxIFLzPeA83SIBnlhSIow== +"@babel/plugin-transform-destructuring@^7.17.7": + version "7.17.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz#49dc2675a7afa9a5e4c6bdee636061136c3408d1" + integrity sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.9" + "@babel/helper-plugin-utils" "^7.16.7" + +"@babel/plugin-transform-destructuring@^7.20.2": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.7.tgz#8bda578f71620c7de7c93af590154ba331415454" + integrity sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-dotall-regex@^7.12.1": version "7.12.1" @@ -1350,9 +1884,17 @@ "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-dotall-regex@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz#6b2d67686fab15fb6a7fd4bd895d5982cfc81241" + integrity sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-dotall-regex@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz#b286b3e7aae6c7b861e45bed0a2fafd6b1a4fef8" integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.18.6" @@ -1372,9 +1914,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-duplicate-keys@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz#2207e9ca8f82a0d36a5a67b6536e7ef8b08823c9" + integrity sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-duplicate-keys@^7.18.9": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz#687f15ee3cdad6d85191eb2a372c4528eaa0ae0e" integrity sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw== dependencies: "@babel/helper-plugin-utils" "^7.18.9" @@ -1387,9 +1936,17 @@ "@babel/helper-builder-binary-assignment-operator-visitor" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-exponentiation-operator@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz#efa9862ef97e9e9e5f653f6ddc7b665e8536fe9b" + integrity sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA== + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-exponentiation-operator@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz#421c705f4521888c65e91fdd1af951bfefd4dacd" integrity sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw== dependencies: "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6" @@ -1410,12 +1967,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-for-of@^7.18.8": - version "7.18.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz" - integrity sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ== +"@babel/plugin-transform-for-of@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz#649d639d4617dff502a9a158c479b3b556728d8c" + integrity sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.16.7" + +"@babel/plugin-transform-for-of@^7.18.8": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz#964108c9988de1a60b4be2354a7d7e245f36e86e" + integrity sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-function-name@^7.12.1": version "7.12.1" @@ -1425,9 +1989,18 @@ "@babel/helper-function-name" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-function-name@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz#5ab34375c64d61d083d7d2f05c38d90b97ec65cf" + integrity sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA== + dependencies: + "@babel/helper-compilation-targets" "^7.16.7" + "@babel/helper-function-name" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-function-name@^7.18.9": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz#cc354f8234e62968946c61a46d6365440fc764e0" integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ== dependencies: "@babel/helper-compilation-targets" "^7.18.9" @@ -1441,9 +2014,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-literals@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz#254c9618c5ff749e87cb0c0cef1a0a050c0bdab1" + integrity sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-literals@^7.18.9": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz#72796fdbef80e56fba3c6a699d54f0de557444bc" integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg== dependencies: "@babel/helper-plugin-utils" "^7.18.9" @@ -1455,9 +2035,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-member-expression-literals@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz#6e5dcf906ef8a098e630149d14c867dd28f92384" + integrity sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-member-expression-literals@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e" integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -1471,15 +2058,23 @@ "@babel/helper-plugin-utils" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-amd@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz" - integrity sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg== +"@babel/plugin-transform-modules-amd@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz#b28d323016a7daaae8609781d1f8c9da42b13186" + integrity sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g== dependencies: - "@babel/helper-module-transforms" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-module-transforms" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" babel-plugin-dynamic-import-node "^2.3.3" +"@babel/plugin-transform-modules-amd@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz#3daccca8e4cc309f03c3a0c4b41dc4b26f55214a" + integrity sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g== + dependencies: + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-transform-modules-commonjs@^7.12.1": version "7.12.1" resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.1.tgz" @@ -1490,16 +2085,25 @@ "@babel/helper-simple-access" "^7.12.1" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz" - integrity sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q== +"@babel/plugin-transform-modules-commonjs@^7.17.9": + version "7.17.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.9.tgz#274be1a2087beec0254d4abd4d86e52442e1e5b6" + integrity sha512-2TBFd/r2I6VlYn0YRTz2JdazS+FoUuQ2rIFHoAxtyP/0G3D82SBLaRq9rnUkpqlLg03Byfl/+M32mpxjO6KaPw== dependencies: - "@babel/helper-module-transforms" "^7.18.6" - "@babel/helper-plugin-utils" "^7.18.6" - "@babel/helper-simple-access" "^7.18.6" + "@babel/helper-module-transforms" "^7.17.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-simple-access" "^7.17.7" babel-plugin-dynamic-import-node "^2.3.3" +"@babel/plugin-transform-modules-commonjs@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.20.11.tgz#8cb23010869bf7669fd4b3098598b6b2be6dc607" + integrity sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw== + dependencies: + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-simple-access" "^7.20.2" + "@babel/plugin-transform-modules-systemjs@^7.12.1": version "7.12.1" resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.12.1.tgz" @@ -1511,16 +2115,26 @@ "@babel/helper-validator-identifier" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-systemjs@^7.19.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.0.tgz" - integrity sha512-x9aiR0WXAWmOWsqcsnrzGR+ieaTMVyGyffPVA7F8cXAGt/UxefYv6uSHZLkAFChN5M5Iy1+wjE+xJuPt22H39A== +"@babel/plugin-transform-modules-systemjs@^7.17.8": + version "7.17.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz#81fd834024fae14ea78fbe34168b042f38703859" + integrity sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw== + dependencies: + "@babel/helper-hoist-variables" "^7.16.7" + "@babel/helper-module-transforms" "^7.17.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-validator-identifier" "^7.16.7" + babel-plugin-dynamic-import-node "^2.3.3" + +"@babel/plugin-transform-modules-systemjs@^7.19.6": + version "7.20.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz#467ec6bba6b6a50634eea61c9c232654d8a4696e" + integrity sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw== dependencies: "@babel/helper-hoist-variables" "^7.18.6" - "@babel/helper-module-transforms" "^7.19.0" - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-validator-identifier" "^7.18.6" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-module-transforms" "^7.20.11" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-validator-identifier" "^7.19.1" "@babel/plugin-transform-modules-umd@^7.12.1": version "7.12.1" @@ -1530,9 +2144,17 @@ "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-modules-umd@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz#23dad479fa585283dbd22215bff12719171e7618" + integrity sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ== + dependencies: + "@babel/helper-module-transforms" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-modules-umd@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz#81d3832d6034b75b54e62821ba58f28ed0aab4b9" integrity sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ== dependencies: "@babel/helper-module-transforms" "^7.18.6" @@ -1545,13 +2167,20 @@ dependencies: "@babel/helper-create-regexp-features-plugin" "^7.12.1" -"@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": - version "7.19.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.19.1.tgz" - integrity sha512-oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw== +"@babel/plugin-transform-named-capturing-groups-regex@^7.17.10": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.17.10.tgz#715dbcfafdb54ce8bccd3d12e8917296a4ba66a4" + integrity sha512-v54O6yLaJySCs6mGzaVOUw9T967GnH38T6CQSAtnzdNPwu84l2qAjssKzo/WSO8Yi7NF+7ekm5cVbF/5qiIgNA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.19.0" - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/helper-create-regexp-features-plugin" "^7.17.0" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.19.1": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz#626298dd62ea51d452c3be58b285d23195ba69a8" + integrity sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.20.5" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-new-target@^7.12.1": version "7.12.1" @@ -1560,9 +2189,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-new-target@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz#9967d89a5c243818e0800fdad89db22c5f514244" + integrity sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-new-target@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz#d128f376ae200477f37c4ddfcc722a8a1b3246a8" integrity sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -1575,9 +2211,17 @@ "@babel/helper-plugin-utils" "^7.10.4" "@babel/helper-replace-supers" "^7.12.1" +"@babel/plugin-transform-object-super@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz#ac359cf8d32cf4354d27a46867999490b6c32a94" + integrity sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-replace-supers" "^7.16.7" + "@babel/plugin-transform-object-super@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c" integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -1590,12 +2234,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-parameters@^7.18.8": - version "7.18.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz" - integrity sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg== +"@babel/plugin-transform-parameters@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz#a1721f55b99b736511cb7e0152f61f17688f331f" + integrity sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-plugin-utils" "^7.16.7" + +"@babel/plugin-transform-parameters@^7.20.1", "@babel/plugin-transform-parameters@^7.20.7": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.7.tgz#0ee349e9d1bc96e78e3b37a7af423a4078a7083f" + integrity sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-transform-property-literals@^7.12.1": version "7.12.1" @@ -1604,9 +2255,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-property-literals@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz#2dadac85155436f22c696c4827730e0fe1057a55" + integrity sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-property-literals@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3" integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -1658,14 +2316,21 @@ dependencies: regenerator-transform "^0.14.2" -"@babel/plugin-transform-regenerator@^7.18.6": - version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz" - integrity sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ== +"@babel/plugin-transform-regenerator@^7.17.9": + version "7.17.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.17.9.tgz#0a33c3a61cf47f45ed3232903683a0afd2d3460c" + integrity sha512-Lc2TfbxR1HOyn/c6b4Y/b6NHoTb67n/IoWLxTu4kC7h4KQnWlhCq2S8Tx0t2SVvv5Uu87Hs+6JEJ5kt2tYGylQ== dependencies: - "@babel/helper-plugin-utils" "^7.18.6" regenerator-transform "^0.15.0" +"@babel/plugin-transform-regenerator@^7.18.6": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz#57cda588c7ffb7f4f8483cc83bdcea02a907f04d" + integrity sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + regenerator-transform "^0.15.1" + "@babel/plugin-transform-reserved-words@^7.12.1": version "7.12.1" resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.1.tgz" @@ -1673,9 +2338,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-reserved-words@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz#1d798e078f7c5958eec952059c460b220a63f586" + integrity sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-reserved-words@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz#b1abd8ebf8edaa5f7fe6bbb8d2133d23b6a6f76a" integrity sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -1699,9 +2371,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-shorthand-properties@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz#e8549ae4afcf8382f711794c0c7b6b934c5fbd2a" + integrity sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-shorthand-properties@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9" integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -1714,13 +2393,21 @@ "@babel/helper-plugin-utils" "^7.10.4" "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" -"@babel/plugin-transform-spread@^7.19.0": - version "7.19.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz" - integrity sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w== +"@babel/plugin-transform-spread@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz#a303e2122f9f12e0105daeedd0f30fb197d8ff44" + integrity sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg== dependencies: - "@babel/helper-plugin-utils" "^7.19.0" - "@babel/helper-skip-transparent-expression-wrappers" "^7.18.9" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" + +"@babel/plugin-transform-spread@^7.19.0": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz#c2d83e0b99d3bf83e07b11995ee24bf7ca09401e" + integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-transform-sticky-regex@^7.12.7": version "7.12.7" @@ -1729,9 +2416,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-sticky-regex@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz#c84741d4f4a38072b9a1e2e3fd56d359552e8660" + integrity sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-sticky-regex@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz#c6706eb2b1524028e317720339583ad0f444adcc" integrity sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q== dependencies: "@babel/helper-plugin-utils" "^7.18.6" @@ -1743,9 +2437,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-template-literals@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz#f3d1c45d28967c8e80f53666fc9c3e50618217ab" + integrity sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-template-literals@^7.18.9": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e" integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA== dependencies: "@babel/helper-plugin-utils" "^7.18.9" @@ -1757,9 +2458,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-typeof-symbol@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz#9cdbe622582c21368bd482b660ba87d5545d4f7e" + integrity sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-typeof-symbol@^7.18.9": version "7.18.9" - resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz#c8cea68263e45addcd6afc9091429f80925762c0" integrity sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw== dependencies: "@babel/helper-plugin-utils" "^7.18.9" @@ -1806,9 +2514,16 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-unicode-escapes@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz#da8717de7b3287a2c6d659750c964f302b31ece3" + integrity sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q== + dependencies: + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-unicode-escapes@^7.18.10": version "7.18.10" - resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz#1ecfb0eda83d09bbcb77c09970c2dd55832aa246" integrity sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ== dependencies: "@babel/helper-plugin-utils" "^7.18.9" @@ -1821,26 +2536,34 @@ "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" +"@babel/plugin-transform-unicode-regex@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz#0f7aa4a501198976e25e82702574c34cfebe9ef2" + integrity sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.16.7" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/plugin-transform-unicode-regex@^7.18.6": version "7.18.6" - resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz#194317225d8c201bbae103364ffe9e2cea36cdca" integrity sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA== dependencies: "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" "@babel/preset-env@^7.11.0", "@babel/preset-env@^7.11.5", "@babel/preset-env@^7.12.1", "@babel/preset-env@^7.16.4": - version "7.19.1" - resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.19.1.tgz" - integrity sha512-c8B2c6D16Lp+Nt6HcD+nHl0VbPKVnNPTpszahuxJJnurfMtKeZ80A+qUv48Y7wqvS+dTFuLuaM9oYxyNHbCLWA== + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.20.2.tgz#9b1642aa47bb9f43a86f9630011780dab7f86506" + integrity sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg== dependencies: - "@babel/compat-data" "^7.19.1" - "@babel/helper-compilation-targets" "^7.19.1" - "@babel/helper-plugin-utils" "^7.19.0" + "@babel/compat-data" "^7.20.1" + "@babel/helper-compilation-targets" "^7.20.0" + "@babel/helper-plugin-utils" "^7.20.2" "@babel/helper-validator-option" "^7.18.6" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.18.9" - "@babel/plugin-proposal-async-generator-functions" "^7.19.1" + "@babel/plugin-proposal-async-generator-functions" "^7.20.1" "@babel/plugin-proposal-class-properties" "^7.18.6" "@babel/plugin-proposal-class-static-block" "^7.18.6" "@babel/plugin-proposal-dynamic-import" "^7.18.6" @@ -1849,7 +2572,7 @@ "@babel/plugin-proposal-logical-assignment-operators" "^7.18.9" "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6" "@babel/plugin-proposal-numeric-separator" "^7.18.6" - "@babel/plugin-proposal-object-rest-spread" "^7.18.9" + "@babel/plugin-proposal-object-rest-spread" "^7.20.2" "@babel/plugin-proposal-optional-catch-binding" "^7.18.6" "@babel/plugin-proposal-optional-chaining" "^7.18.9" "@babel/plugin-proposal-private-methods" "^7.18.6" @@ -1860,7 +2583,7 @@ "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.18.6" + "@babel/plugin-syntax-import-assertions" "^7.20.0" "@babel/plugin-syntax-json-strings" "^7.8.3" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" @@ -1873,10 +2596,10 @@ "@babel/plugin-transform-arrow-functions" "^7.18.6" "@babel/plugin-transform-async-to-generator" "^7.18.6" "@babel/plugin-transform-block-scoped-functions" "^7.18.6" - "@babel/plugin-transform-block-scoping" "^7.18.9" - "@babel/plugin-transform-classes" "^7.19.0" + "@babel/plugin-transform-block-scoping" "^7.20.2" + "@babel/plugin-transform-classes" "^7.20.2" "@babel/plugin-transform-computed-properties" "^7.18.9" - "@babel/plugin-transform-destructuring" "^7.18.13" + "@babel/plugin-transform-destructuring" "^7.20.2" "@babel/plugin-transform-dotall-regex" "^7.18.6" "@babel/plugin-transform-duplicate-keys" "^7.18.9" "@babel/plugin-transform-exponentiation-operator" "^7.18.6" @@ -1884,14 +2607,14 @@ "@babel/plugin-transform-function-name" "^7.18.9" "@babel/plugin-transform-literals" "^7.18.9" "@babel/plugin-transform-member-expression-literals" "^7.18.6" - "@babel/plugin-transform-modules-amd" "^7.18.6" - "@babel/plugin-transform-modules-commonjs" "^7.18.6" - "@babel/plugin-transform-modules-systemjs" "^7.19.0" + "@babel/plugin-transform-modules-amd" "^7.19.6" + "@babel/plugin-transform-modules-commonjs" "^7.19.6" + "@babel/plugin-transform-modules-systemjs" "^7.19.6" "@babel/plugin-transform-modules-umd" "^7.18.6" "@babel/plugin-transform-named-capturing-groups-regex" "^7.19.1" "@babel/plugin-transform-new-target" "^7.18.6" "@babel/plugin-transform-object-super" "^7.18.6" - "@babel/plugin-transform-parameters" "^7.18.8" + "@babel/plugin-transform-parameters" "^7.20.1" "@babel/plugin-transform-property-literals" "^7.18.6" "@babel/plugin-transform-regenerator" "^7.18.6" "@babel/plugin-transform-reserved-words" "^7.18.6" @@ -1903,7 +2626,7 @@ "@babel/plugin-transform-unicode-escapes" "^7.18.10" "@babel/plugin-transform-unicode-regex" "^7.18.6" "@babel/preset-modules" "^0.1.5" - "@babel/types" "^7.19.0" + "@babel/types" "^7.20.2" babel-plugin-polyfill-corejs2 "^0.3.3" babel-plugin-polyfill-corejs3 "^0.6.0" babel-plugin-polyfill-regenerator "^0.4.1" @@ -1982,6 +2705,86 @@ core-js-compat "^3.8.0" semver "^5.5.0" +"@babel/preset-env@^7.17.10": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.17.10.tgz#a81b093669e3eb6541bb81a23173c5963c5de69c" + integrity sha512-YNgyBHZQpeoBSRBg0xixsZzfT58Ze1iZrajvv0lJc70qDDGuGfonEnMGfWeSY0mQ3JTuCWFbMkzFRVafOyJx4g== + dependencies: + "@babel/compat-data" "^7.17.10" + "@babel/helper-compilation-targets" "^7.17.10" + "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-validator-option" "^7.16.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.16.7" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.16.7" + "@babel/plugin-proposal-async-generator-functions" "^7.16.8" + "@babel/plugin-proposal-class-properties" "^7.16.7" + "@babel/plugin-proposal-class-static-block" "^7.17.6" + "@babel/plugin-proposal-dynamic-import" "^7.16.7" + "@babel/plugin-proposal-export-namespace-from" "^7.16.7" + "@babel/plugin-proposal-json-strings" "^7.16.7" + "@babel/plugin-proposal-logical-assignment-operators" "^7.16.7" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.7" + "@babel/plugin-proposal-numeric-separator" "^7.16.7" + "@babel/plugin-proposal-object-rest-spread" "^7.17.3" + "@babel/plugin-proposal-optional-catch-binding" "^7.16.7" + "@babel/plugin-proposal-optional-chaining" "^7.16.7" + "@babel/plugin-proposal-private-methods" "^7.16.11" + "@babel/plugin-proposal-private-property-in-object" "^7.16.7" + "@babel/plugin-proposal-unicode-property-regex" "^7.16.7" + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-class-properties" "^7.12.13" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/plugin-syntax-top-level-await" "^7.14.5" + "@babel/plugin-transform-arrow-functions" "^7.16.7" + "@babel/plugin-transform-async-to-generator" "^7.16.8" + "@babel/plugin-transform-block-scoped-functions" "^7.16.7" + "@babel/plugin-transform-block-scoping" "^7.16.7" + "@babel/plugin-transform-classes" "^7.16.7" + "@babel/plugin-transform-computed-properties" "^7.16.7" + "@babel/plugin-transform-destructuring" "^7.17.7" + "@babel/plugin-transform-dotall-regex" "^7.16.7" + "@babel/plugin-transform-duplicate-keys" "^7.16.7" + "@babel/plugin-transform-exponentiation-operator" "^7.16.7" + "@babel/plugin-transform-for-of" "^7.16.7" + "@babel/plugin-transform-function-name" "^7.16.7" + "@babel/plugin-transform-literals" "^7.16.7" + "@babel/plugin-transform-member-expression-literals" "^7.16.7" + "@babel/plugin-transform-modules-amd" "^7.16.7" + "@babel/plugin-transform-modules-commonjs" "^7.17.9" + "@babel/plugin-transform-modules-systemjs" "^7.17.8" + "@babel/plugin-transform-modules-umd" "^7.16.7" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.17.10" + "@babel/plugin-transform-new-target" "^7.16.7" + "@babel/plugin-transform-object-super" "^7.16.7" + "@babel/plugin-transform-parameters" "^7.16.7" + "@babel/plugin-transform-property-literals" "^7.16.7" + "@babel/plugin-transform-regenerator" "^7.17.9" + "@babel/plugin-transform-reserved-words" "^7.16.7" + "@babel/plugin-transform-shorthand-properties" "^7.16.7" + "@babel/plugin-transform-spread" "^7.16.7" + "@babel/plugin-transform-sticky-regex" "^7.16.7" + "@babel/plugin-transform-template-literals" "^7.16.7" + "@babel/plugin-transform-typeof-symbol" "^7.16.7" + "@babel/plugin-transform-unicode-escapes" "^7.16.7" + "@babel/plugin-transform-unicode-regex" "^7.16.7" + "@babel/preset-modules" "^0.1.5" + "@babel/types" "^7.17.10" + babel-plugin-polyfill-corejs2 "^0.3.0" + babel-plugin-polyfill-corejs3 "^0.5.0" + babel-plugin-polyfill-regenerator "^0.3.0" + core-js-compat "^3.22.1" + semver "^6.3.0" + "@babel/preset-modules@^0.1.3": version "0.1.3" resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz" @@ -1994,7 +2797,7 @@ "@babel/preset-modules@^0.1.5": version "0.1.5" - resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -2049,6 +2852,11 @@ "@babel/helper-validator-option" "^7.16.7" "@babel/plugin-transform-typescript" "^7.16.7" +"@babel/regjsgen@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" + integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== + "@babel/runtime-corejs3@^7.10.2": version "7.19.1" resolved "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.19.1.tgz" @@ -2097,7 +2905,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/template@^7.10.3", "@babel/template@^7.20.7": +"@babel/template@^7.10.3", "@babel/template@^7.16.7", "@babel/template@^7.20.7": version "7.20.7" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8" integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw== @@ -2123,7 +2931,7 @@ "@babel/parser" "^7.8.6" "@babel/types" "^7.8.6" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.16.8", "@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1": +"@babel/traverse@^7.1.6", "@babel/traverse@^7.19.1": version "7.19.1" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.1.tgz#0fafe100a8c2a603b4718b1d9bf2568d1d193347" integrity sha512-0j/ZfZMxKukDaag2PtOPDbwuELqIar6lLskVPPJDjXMXjfLb1Obo/1yjxIGqqAJrmfaTIY3z2wFLAQ7qSkLsuA== @@ -2170,19 +2978,35 @@ globals "^11.1.0" lodash "^4.17.19" -"@babel/traverse@^7.20.1": - version "7.20.1" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz" - integrity sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA== +"@babel/traverse@^7.12.1", "@babel/traverse@^7.17.3", "@babel/traverse@^7.20.1", "@babel/traverse@^7.20.5", "@babel/traverse@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.21.0.tgz#0e1807abd5db98e6a19c204b80ed1e3f5bca0edc" + integrity sha512-Xdt2P1H4LKTO8ApPfnO1KmzYMFpp7D/EinoXzLYN/cHcBNrVCAkAtGUcXnHXrl/VGktureU6fkQrHSBE2URfoA== dependencies: "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.1" + "@babel/generator" "^7.21.0" "@babel/helper-environment-visitor" "^7.18.9" - "@babel/helper-function-name" "^7.19.0" + "@babel/helper-function-name" "^7.21.0" "@babel/helper-hoist-variables" "^7.18.6" "@babel/helper-split-export-declaration" "^7.18.6" - "@babel/parser" "^7.20.1" - "@babel/types" "^7.20.0" + "@babel/parser" "^7.21.0" + "@babel/types" "^7.21.0" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/traverse@^7.13.0", "@babel/traverse@^7.16.8", "@babel/traverse@^7.17.10", "@babel/traverse@^7.17.9": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.10.tgz#1ee1a5ac39f4eac844e6cf855b35520e5eb6f8b5" + integrity sha512-VmbrTHQteIdUUQNTb+zE12SHS/xQVIShmBPhlNP12hD5poF2pbITW1Z4172d03HegaQWhLffdkRJYtAzp0AGcw== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.17.10" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-function-name" "^7.17.9" + "@babel/helper-hoist-variables" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/parser" "^7.17.10" + "@babel/types" "^7.17.10" debug "^4.1.0" globals "^11.1.0" @@ -2241,7 +3065,7 @@ lodash "^4.17.19" to-fast-properties "^2.0.0" -"@babel/types@^7.12.6", "@babel/types@^7.16.8", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.2.0": +"@babel/types@^7.12.6", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.2.0": version "7.19.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.19.0.tgz#75f21d73d73dc0351f3368d28db73465f4814600" integrity sha512-YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA== @@ -2250,6 +3074,15 @@ "@babel/helper-validator-identifier" "^7.18.6" to-fast-properties "^2.0.0" +"@babel/types@^7.16.0", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.20.5", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.9.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.0.tgz#1da00d89c2f18b226c9207d96edbeb79316a1819" + integrity sha512-uR7NWq2VNFnDi7EYqiRz2Jv/VQIu38tu64Zy8TX2nQFQ6etJ9V/Rr2msW8BS132mum2rL645qpDrLtAJtVpuow== + dependencies: + "@babel/helper-string-parser" "^7.19.4" + "@babel/helper-validator-identifier" "^7.19.1" + to-fast-properties "^2.0.0" + "@babel/types@^7.16.7", "@babel/types@^7.17.0": version "7.17.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" @@ -2258,22 +3091,12 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@babel/types@^7.20.0", "@babel/types@^7.20.2": - version "7.20.2" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz" - integrity sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog== +"@babel/types@^7.16.8", "@babel/types@^7.17.10": + version "7.17.10" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.10.tgz#d35d7b4467e439fcf06d195f8100e0fea7fc82c4" + integrity sha512-9O26jG0mBYfGkUYCYZRnBwbVLd1UZOICEr2Em6InB6jVfsAv1GKgwXHmrSg+WFWDmeKTA6vyTZiN8tCSM5Oo3A== dependencies: - "@babel/helper-string-parser" "^7.19.4" - "@babel/helper-validator-identifier" "^7.19.1" - to-fast-properties "^2.0.0" - -"@babel/types@^7.20.7": - version "7.20.7" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.20.7.tgz#54ec75e252318423fc07fb644dc6a58a64c09b7f" - integrity sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg== - dependencies: - "@babel/helper-string-parser" "^7.19.4" - "@babel/helper-validator-identifier" "^7.19.1" + "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" "@bcoe/v8-coverage@^0.2.3": @@ -2761,9 +3584,21 @@ jest-util "^27.5.1" slash "^3.0.0" +"@jest/console@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-28.1.0.tgz#db78222c3d3b0c1db82f1b9de51094c2aaff2176" + integrity sha512-tscn3dlJFGay47kb4qVruQg/XWlmvU0xp3EJOjzzY+sBaI+YgwKcvAmTcyYU7xEiLLIY5HCdWRooAL8dqkFlDA== + dependencies: + "@jest/types" "^28.1.0" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^28.1.0" + jest-util "^28.1.0" + slash "^3.0.0" + "@jest/console@^28.1.3": version "28.1.3" - resolved "https://registry.npmjs.org/@jest/console/-/console-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-28.1.3.tgz#2030606ec03a18c31803b8a36382762e447655df" integrity sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw== dependencies: "@jest/types" "^28.1.3" @@ -2807,6 +3642,41 @@ slash "^3.0.0" strip-ansi "^6.0.0" +"@jest/core@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-28.1.0.tgz#784a1e6ce5358b46fcbdcfbbd93b1b713ed4ea80" + integrity sha512-/2PTt0ywhjZ4NwNO4bUqD9IVJfmFVhVKGlhvSpmEfUCuxYf/3NHcKmRFI+I71lYzbTT3wMuYpETDCTHo81gC/g== + dependencies: + "@jest/console" "^28.1.0" + "@jest/reporters" "^28.1.0" + "@jest/test-result" "^28.1.0" + "@jest/transform" "^28.1.0" + "@jest/types" "^28.1.0" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + ci-info "^3.2.0" + exit "^0.1.2" + graceful-fs "^4.2.9" + jest-changed-files "^28.0.2" + jest-config "^28.1.0" + jest-haste-map "^28.1.0" + jest-message-util "^28.1.0" + jest-regex-util "^28.0.2" + jest-resolve "^28.1.0" + jest-resolve-dependencies "^28.1.0" + jest-runner "^28.1.0" + jest-runtime "^28.1.0" + jest-snapshot "^28.1.0" + jest-util "^28.1.0" + jest-validate "^28.1.0" + jest-watcher "^28.1.0" + micromatch "^4.0.4" + pretty-format "^28.1.0" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + "@jest/create-cache-key-function@^27.4.2": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/create-cache-key-function/-/create-cache-key-function-27.5.1.tgz#7448fae15602ea95c828f5eceed35c202a820b31" @@ -2824,6 +3694,31 @@ "@types/node" "*" jest-mock "^27.5.1" +"@jest/environment@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-28.1.0.tgz#dedf7d59ec341b9292fcf459fd0ed819eb2e228a" + integrity sha512-S44WGSxkRngzHslhV6RoAExekfF7Qhwa6R5+IYFa81mpcj0YgdBnRSmvHe3SNwOt64yXaE5GG8Y2xM28ii5ssA== + dependencies: + "@jest/fake-timers" "^28.1.0" + "@jest/types" "^28.1.0" + "@types/node" "*" + jest-mock "^28.1.0" + +"@jest/expect-utils@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-28.1.0.tgz#a5cde811195515a9809b96748ae8bcc331a3538a" + integrity sha512-5BrG48dpC0sB80wpeIX5FU6kolDJI4K0n5BM9a5V38MGx0pyRvUBSS0u2aNTdDzmOrCjhOg8pGs6a20ivYkdmw== + dependencies: + jest-get-type "^28.0.2" + +"@jest/expect@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-28.1.0.tgz#2e5a31db692597070932366a1602b5157f0f217c" + integrity sha512-be9ETznPLaHOmeJqzYNIXv1ADEzENuQonIoobzThOYPuK/6GhrWNIJDVTgBLCrz3Am73PyEU2urQClZp0hLTtA== + dependencies: + expect "^28.1.0" + jest-snapshot "^28.1.0" + "@jest/fake-timers@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz" @@ -2836,6 +3731,18 @@ jest-mock "^27.5.1" jest-util "^27.5.1" +"@jest/fake-timers@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-28.1.0.tgz#ea77878aabd5c5d50e1fc53e76d3226101e33064" + integrity sha512-Xqsf/6VLeAAq78+GNPzI7FZQRf5cCHj1qgQxCjws9n8rKw8r1UYoeaALwBvyuzOkpU3c1I6emeMySPa96rxtIg== + dependencies: + "@jest/types" "^28.1.0" + "@sinonjs/fake-timers" "^9.1.1" + "@types/node" "*" + jest-message-util "^28.1.0" + jest-mock "^28.1.0" + jest-util "^28.1.0" + "@jest/globals@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz" @@ -2845,6 +3752,15 @@ "@jest/types" "^27.5.1" expect "^27.5.1" +"@jest/globals@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-28.1.0.tgz#a4427d2eb11763002ff58e24de56b84ba79eb793" + integrity sha512-3m7sTg52OTQR6dPhsEQSxAvU+LOBbMivZBwOvKEZ+Rb+GyxVnXi9HKgOTYkx/S99T8yvh17U4tNNJPIEQmtwYw== + dependencies: + "@jest/environment" "^28.1.0" + "@jest/expect" "^28.1.0" + "@jest/types" "^28.1.0" + "@jest/reporters@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz" @@ -2876,9 +3792,46 @@ terminal-link "^2.0.0" v8-to-istanbul "^8.1.0" +"@jest/reporters@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-28.1.0.tgz#5183a28b9b593b6000fa9b89b031c7216b58a9a0" + integrity sha512-qxbFfqap/5QlSpIizH9c/bFCDKsQlM4uAKSOvZrP+nIdrjqre3FmKzpTtYyhsaVcOSNK7TTt2kjm+4BJIjysFA== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^28.1.0" + "@jest/test-result" "^28.1.0" + "@jest/transform" "^28.1.0" + "@jest/types" "^28.1.0" + "@jridgewell/trace-mapping" "^0.3.7" + "@types/node" "*" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.9" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^5.1.0" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.1.3" + jest-util "^28.1.0" + jest-worker "^28.1.0" + slash "^3.0.0" + string-length "^4.0.1" + strip-ansi "^6.0.0" + terminal-link "^2.0.0" + v8-to-istanbul "^9.0.0" + +"@jest/schemas@^28.0.2": + version "28.0.2" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-28.0.2.tgz#08c30df6a8d07eafea0aef9fb222c5e26d72e613" + integrity sha512-YVDJZjd4izeTDkij00vHHAymNXQ6WWsdChFRK86qck6Jpr3DCL5W3Is3vslviRlP+bLuMYRLbdp98amMvqudhA== + dependencies: + "@sinclair/typebox" "^0.23.3" + "@jest/schemas@^28.1.3": version "28.1.3" - resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-28.1.3.tgz#ad8b86a66f11f33619e3d7e1dcddd7f2d40ff905" integrity sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg== dependencies: "@sinclair/typebox" "^0.24.1" @@ -2892,6 +3845,15 @@ graceful-fs "^4.2.9" source-map "^0.6.0" +"@jest/source-map@^28.0.2": + version "28.0.2" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-28.0.2.tgz#914546f4410b67b1d42c262a1da7e0406b52dc90" + integrity sha512-Y9dxC8ZpN3kImkk0LkK5XCEneYMAXlZ8m5bflmSL5vrwyeUpJfentacCUg6fOb8NOpOO7hz2+l37MV77T6BFPw== + dependencies: + "@jridgewell/trace-mapping" "^0.3.7" + callsites "^3.0.0" + graceful-fs "^4.2.9" + "@jest/test-result@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz" @@ -2902,9 +3864,19 @@ "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" +"@jest/test-result@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-28.1.0.tgz#fd149dee123510dd2fcadbbf5f0020f98ad7f12c" + integrity sha512-sBBFIyoPzrZho3N+80P35A5oAkSKlGfsEFfXFWuPGBsW40UAjCkGakZhn4UQK4iQlW2vgCDMRDOob9FGKV8YoQ== + dependencies: + "@jest/console" "^28.1.0" + "@jest/types" "^28.1.0" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + "@jest/test-result@^28.1.3": version "28.1.3" - resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-28.1.3.tgz#5eae945fd9f4b8fcfce74d239e6f725b6bf076c5" integrity sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg== dependencies: "@jest/console" "^28.1.3" @@ -2922,6 +3894,16 @@ jest-haste-map "^27.5.1" jest-runtime "^27.5.1" +"@jest/test-sequencer@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-28.1.0.tgz#ce7294bbe986415b9a30e218c7e705e6ebf2cdf2" + integrity sha512-tZCEiVWlWNTs/2iK9yi6o3AlMfbbYgV4uuZInSVdzZ7ftpHZhCMuhvk2HLYhCZzLgPFQ9MnM1YaxMnh3TILFiQ== + dependencies: + "@jest/test-result" "^28.1.0" + graceful-fs "^4.2.9" + jest-haste-map "^28.1.0" + slash "^3.0.0" + "@jest/transform@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz" @@ -2943,9 +3925,30 @@ source-map "^0.6.1" write-file-atomic "^3.0.0" +"@jest/transform@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-28.1.0.tgz#224a3c9ba4cc98e2ff996c0a89a2d59db15c74ce" + integrity sha512-omy2xe5WxlAfqmsTjTPxw+iXRTRnf+NtX0ToG+4S0tABeb4KsKmPUHq5UBuwunHg3tJRwgEQhEp0M/8oiatLEA== + dependencies: + "@babel/core" "^7.11.6" + "@jest/types" "^28.1.0" + "@jridgewell/trace-mapping" "^0.3.7" + babel-plugin-istanbul "^6.1.1" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.9" + jest-haste-map "^28.1.0" + jest-regex-util "^28.0.2" + jest-util "^28.1.0" + micromatch "^4.0.4" + pirates "^4.0.4" + slash "^3.0.0" + write-file-atomic "^4.0.1" + "@jest/types@^24.9.0": version "24.9.0" - resolved "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" @@ -2974,9 +3977,21 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" +"@jest/types@^28.1.0": + version "28.1.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-28.1.0.tgz#508327a89976cbf9bd3e1cc74641a29fd7dfd519" + integrity sha512-xmEggMPr317MIOjjDoZ4ejCSr9Lpbt/u34+dvc99t7DS8YirW5rwZEhzKPC2BMUFkUhI48qs6qLUSGw5FuL0GA== + dependencies: + "@jest/schemas" "^28.0.2" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^17.0.8" + chalk "^4.0.0" + "@jest/types@^28.1.3": version "28.1.3" - resolved "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-28.1.3.tgz#b05de80996ff12512bc5ceb1d208285a7d11748b" integrity sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ== dependencies: "@jest/schemas" "^28.1.3" @@ -2986,33 +4001,56 @@ "@types/yargs" "^17.0.8" chalk "^4.0.0" +"@jridgewell/gen-mapping@^0.1.0": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" + integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w== + dependencies: + "@jridgewell/set-array" "^1.0.0" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": version "0.3.2" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A== dependencies: "@jridgewell/set-array" "^1.0.1" "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" +"@jridgewell/resolve-uri@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" + integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== + "@jridgewell/resolve-uri@^3.0.3": version "3.0.5" resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz" integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== +"@jridgewell/set-array@^1.0.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.1.tgz#36a6acc93987adcf0ba50c66908bd0b70de8afea" + integrity sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ== + "@jridgewell/set-array@^1.0.1": version "1.1.2" - resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== "@jridgewell/source-map@^0.3.2": version "0.3.2" - resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" integrity sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw== dependencies: "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" +"@jridgewell/sourcemap-codec@1.4.14": + version "1.4.14" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" + integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== + "@jridgewell/sourcemap-codec@^1.4.10": version "1.4.11" resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz" @@ -3034,10 +4072,18 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.15" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz" - integrity sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g== +"@jridgewell/trace-mapping@^0.3.14", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.17" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" + integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g== + dependencies: + "@jridgewell/resolve-uri" "3.1.0" + "@jridgewell/sourcemap-codec" "1.4.14" + +"@jridgewell/trace-mapping@^0.3.7": + version "0.3.10" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.10.tgz#db436f0917d655393851bc258918c00226c9b183" + integrity sha512-Q0YbBd6OTsXm8Y21+YUSDXupHnodNC2M4O18jtd3iwJ3+vMZNdKGols0a9G6JOK0dcJ3IdUUHoh908ZI6qhk8Q== dependencies: "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" @@ -5117,14 +6163,19 @@ resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== +"@sinclair/typebox@^0.23.3": + version "0.23.5" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.23.5.tgz#93f7b9f4e3285a7a9ade7557d9a8d36809cbc47d" + integrity sha512-AFBVi/iT4g20DHoujvMH1aEDn8fGJh4xsRGCP6d8RpLPMqsNPvW01Jcn0QysXTsg++/xj25NmJsGyH9xug/wKg== + "@sinclair/typebox@^0.24.1": - version "0.24.42" - resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.42.tgz" - integrity sha512-d+2AtrHGyWek2u2ITF0lHRIv6Tt7X0dEHW+0rP+5aDCEjC3fiN2RBjrLD0yU0at52BcZbRGxLbAtXiR0hFCjYw== + version "0.24.51" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.51.tgz#645f33fe4e02defe26f2f5c0410e1c094eac7f5f" + integrity sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA== "@sindresorhus/is@^0.14.0": version "0.14.0" - resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== "@sindresorhus/is@^0.7.0": @@ -5165,9 +6216,16 @@ dependencies: "@sinonjs/commons" "^1.7.0" +"@sinonjs/fake-timers@^9.1.1": + version "9.1.2" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c" + integrity sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw== + dependencies: + "@sinonjs/commons" "^1.7.0" + "@surma/rollup-plugin-off-main-thread@^2.2.3": version "2.2.3" - resolved "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz" + resolved "https://registry.yarnpkg.com/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz#ee34985952ca21558ab0d952f00298ad2190c053" integrity sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ== dependencies: ejs "^3.1.6" @@ -5669,9 +6727,16 @@ dependencies: "@types/node" "*" +"@types/graceful-fs@^4.1.3": + version "4.1.5" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" + integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== + dependencies: + "@types/node" "*" + "@types/hast@^2.0.0": version "2.3.4" - resolved "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.4.tgz#8aa5ef92c117d20d974a82bdfb6a648b08c0bafc" integrity sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g== dependencies: "@types/unist" "*" @@ -5741,6 +6806,14 @@ jest-diff "^27.0.0" pretty-format "^27.0.0" +"@types/jest@^27.5.0": + version "27.5.0" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.5.0.tgz#e04ed1824ca6b1dd0438997ba60f99a7405d4c7b" + integrity sha512-9RBFx7r4k+msyj/arpfaa0WOOEcaAZNmN+j80KFbFCoSqCJGHTz7YMAMGQW9Xmqm5w6l5c25vbSjMwlikJi5+g== + dependencies: + jest-matcher-utils "^27.0.0" + pretty-format "^27.0.0" + "@types/json-schema@*", "@types/json-schema@^7.0.7": version "7.0.8" resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz" @@ -6080,9 +7153,9 @@ "@types/yargs-parser" "*" "@types/yargs@^17.0.8": - version "17.0.12" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.12.tgz" - integrity sha512-Nz4MPhecOFArtm81gFQvQqdV7XYCrWKx5uUt6GNHredFHn1i2mtWqXTON7EPXMtNi1qjtjEM/VCHDhcHsAMLXQ== + version "17.0.10" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.10.tgz#591522fce85d8739bca7b8bb90d048e4478d186a" + integrity sha512-gmEaFwpj/7f/ROdtIlci1R1VYU1J4j95m8T+Tj3iBgiBFKg1foE/PSl93bBd5T9LDXNPo8UlNN6W0qwD8O5OaA== dependencies: "@types/yargs-parser" "*" @@ -7862,10 +8935,23 @@ babel-jest@^27.4.2, babel-jest@^27.5.1: graceful-fs "^4.2.9" slash "^3.0.0" +babel-jest@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-28.1.0.tgz#95a67f8e2e7c0042e7b3ad3951b8af41a533b5ea" + integrity sha512-zNKk0yhDZ6QUwfxh9k07GII6siNGMJWVUU49gmFj5gfdqDKLqa2RArXOF2CODp4Dr7dLxN2cvAV+667dGJ4b4w== + dependencies: + "@jest/transform" "^28.1.0" + "@types/babel__core" "^7.1.14" + babel-plugin-istanbul "^6.1.1" + babel-preset-jest "^28.0.2" + chalk "^4.0.0" + graceful-fs "^4.2.9" + slash "^3.0.0" + babel-loader@^8.2.3: - version "8.2.5" - resolved "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz" - integrity sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ== + version "8.3.0" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.3.0.tgz#124936e841ba4fe8176786d6ff28add1f134d6a8" + integrity sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q== dependencies: find-cache-dir "^3.3.1" loader-utils "^2.0.0" @@ -7899,9 +8985,19 @@ babel-plugin-jest-hoist@^27.5.1: "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" +babel-plugin-jest-hoist@^28.0.2: + version "28.0.2" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-28.0.2.tgz#9307d03a633be6fc4b1a6bc5c3a87e22bd01dd3b" + integrity sha512-Kizhn/ZL+68ZQHxSnHyuvJv8IchXD62KQxV77TBDV/xoBFBOfgRAk97GNs6hXdTTCiVES9nB2I6+7MXXrk5llQ== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.1.14" + "@types/babel__traverse" "^7.0.6" + babel-plugin-macros@^3.1.0: version "3.1.0" - resolved "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== dependencies: "@babel/runtime" "^7.12.5" @@ -7910,36 +9006,60 @@ babel-plugin-macros@^3.1.0: babel-plugin-named-asset-import@^0.3.8: version "0.3.8" - resolved "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz" + resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz#6b7fa43c59229685368683c28bc9734f24524cc2" integrity sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q== +babel-plugin-polyfill-corejs2@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz#440f1b70ccfaabc6b676d196239b138f8a2cfba5" + integrity sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w== + dependencies: + "@babel/compat-data" "^7.13.11" + "@babel/helper-define-polyfill-provider" "^0.3.1" + semver "^6.1.1" + babel-plugin-polyfill-corejs2@^0.3.3: version "0.3.3" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz#5d1bd3836d0a19e1b84bbf2d9640ccb6f951c122" integrity sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q== dependencies: "@babel/compat-data" "^7.17.7" "@babel/helper-define-polyfill-provider" "^0.3.3" semver "^6.1.1" +babel-plugin-polyfill-corejs3@^0.5.0: + version "0.5.2" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz#aabe4b2fa04a6e038b688c5e55d44e78cd3a5f72" + integrity sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.3.1" + core-js-compat "^3.21.0" + babel-plugin-polyfill-corejs3@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz#56ad88237137eade485a71b52f72dbed57c6230a" integrity sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA== dependencies: "@babel/helper-define-polyfill-provider" "^0.3.3" core-js-compat "^3.25.1" +babel-plugin-polyfill-regenerator@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz#2c0678ea47c75c8cc2fbb1852278d8fb68233990" + integrity sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.3.1" + babel-plugin-polyfill-regenerator@^0.4.1: version "0.4.1" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz#390f91c38d90473592ed43351e801a9d3e0fd747" integrity sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw== dependencies: "@babel/helper-define-polyfill-provider" "^0.3.3" babel-plugin-transform-react-remove-prop-types@^0.4.24: version "0.4.24" - resolved "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz#f2edaf9b4c6a5fbe5c1d678bfb531078c1555f3a" integrity sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA== babel-preset-current-node-syntax@^1.0.0: @@ -7968,6 +9088,14 @@ babel-preset-jest@^27.5.1: babel-plugin-jest-hoist "^27.5.1" babel-preset-current-node-syntax "^1.0.0" +babel-preset-jest@^28.0.2: + version "28.0.2" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-28.0.2.tgz#d8210fe4e46c1017e9fa13d7794b166e93aa9f89" + integrity sha512-sYzXIdgIXXroJTFeB3S6sNDWtlJ2dllCdTEsnZ65ACrMojj3hVNFRmnJ1HZtomGi+Be7aqpY/HJ92fr8OhKVkQ== + dependencies: + babel-plugin-jest-hoist "^28.0.2" + babel-preset-current-node-syntax "^1.0.0" + babel-preset-react-app@^10.0.1: version "10.0.1" resolved "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz" @@ -8395,7 +9523,7 @@ browserslist@^4.14.5, browserslist@^4.15.0: escalade "^3.1.1" node-releases "^1.1.67" -browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.20.3, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.6.6: +browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.6.6: version "4.21.4" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz" integrity sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw== @@ -8405,6 +9533,34 @@ browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.20.3, browserslist@^ node-releases "^2.0.6" update-browserslist-db "^1.0.9" +browserslist@^4.17.5: + version "4.21.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" + integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w== + dependencies: + caniuse-lite "^1.0.30001449" + electron-to-chromium "^1.4.284" + node-releases "^2.0.8" + update-browserslist-db "^1.0.10" + +browserslist@^4.20.2, browserslist@^4.20.3: + version "4.20.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.20.3.tgz#eb7572f49ec430e054f56d52ff0ebe9be915f8bf" + integrity sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg== + dependencies: + caniuse-lite "^1.0.30001332" + electron-to-chromium "^1.4.118" + escalade "^3.1.1" + node-releases "^2.0.3" + picocolors "^1.0.0" + +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + bser@2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz" @@ -8827,11 +9983,21 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001043, caniuse-lite@^1.0.30001164, can resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001412.tgz" integrity sha512-+TeEIee1gS5bYOiuf+PS/kp2mrXic37Hl66VY6EAfxasIk5fELTktK2oOezYed12H8w7jt3s512PpulQidPjwA== +caniuse-lite@^1.0.30001332: + version "1.0.30001338" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001338.tgz#b5dd7a7941a51a16480bdf6ff82bded1628eec0d" + integrity sha512-1gLHWyfVoRDsHieO+CaeYe7jSo/MT7D7lhaXUiwwbuR5BwQxORs0f1tAwUSQr3YbxRXJvxHM/PA5FfPQRnsPeQ== + caniuse-lite@^1.0.30001406: version "1.0.30001431" resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz" integrity sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ== +caniuse-lite@^1.0.30001449: + version "1.0.30001457" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001457.tgz#6af34bb5d720074e2099432aa522c21555a18301" + integrity sha512-SDIV6bgE1aVbK6XyxdURbUE89zY7+k1BBBaOwYwkNCglXlel/E7mELiHC64HQ+W0xSKlqWhV9Wh7iHxUjMs4fA== + canvas-mock@0.0.0: version "0.0.0" resolved "https://registry.npmjs.org/canvas-mock/-/canvas-mock-0.0.0.tgz" @@ -9789,7 +10955,7 @@ copy-template-dir@^1.4.0: copy-webpack-plugin@^6.1.0: version "6.4.1" - resolved "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-6.4.1.tgz" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-6.4.1.tgz#138cd9b436dbca0a6d071720d5414848992ec47e" integrity sha512-MXyPCjdPVx5iiWyl40Va3JGh27bKzOTNY3NjUTrosD2q7dR/cLD0013uqJ3BpFbUjyONINjb6qI7nDIJujrMbA== dependencies: cacache "^15.0.5" @@ -9804,6 +10970,14 @@ copy-webpack-plugin@^6.1.0: serialize-javascript "^5.0.1" webpack-sources "^1.4.3" +core-js-compat@^3.21.0, core-js-compat@^3.22.1: + version "3.22.4" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.22.4.tgz#d700f451e50f1d7672dcad0ac85d910e6691e579" + integrity sha512-dIWcsszDezkFZrfm1cnB4f/J85gyhiCpxbgBdohWCDtSVuAaChTSpPV7ldOQf/Xds2U5xCIJZOK82G4ZPAIswA== + dependencies: + browserslist "^4.20.3" + semver "7.0.0" + core-js-compat@^3.25.1: version "3.25.2" resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.2.tgz" @@ -10368,6 +11542,13 @@ debug@4.3.3, debug@^4.3.2: dependencies: ms "2.1.2" +debug@4.3.4, debug@^4.0.0, debug@^4.3.3, debug@^4.3.4: + version "4.3.4" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + debug@^3.0.0, debug@^3.1.0, debug@^3.1.1, debug@^3.2.6: version "3.2.6" resolved "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz" @@ -10381,13 +11562,6 @@ debug@^3.2.7: dependencies: ms "^2.1.1" -debug@^4.0.0, debug@^4.3.3, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - debug@^4.3.1: version "4.3.2" resolved "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz" @@ -10808,10 +11982,15 @@ devtools-protocol@0.0.960912: resolved "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.960912.tgz" integrity sha512-I3hWmV9rWHbdnUdmMKHF2NuYutIM2kXz2mdXW8ha7TbRlGTVs+PF+PsB5QWvpCek4Fy9B+msiispCfwlhG5Sqg== +devtools-protocol@0.0.982423: + version "0.0.982423" + resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.982423.tgz#39ac3791d4c5b90ebb416d4384663b7b0cc44154" + integrity sha512-FnVW2nDbjGNw1uD/JRC+9U5768W7e1TfUwqbDTcSsAu1jXFjITSX8w3rkW5FEpHRMPPGpvNSmO1pOpqByiWscA== + dezalgo@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz" - integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= + version "1.0.4" + resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz#751235260469084c132157dfa857f386d4c33d81" + integrity sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig== dependencies: asap "^2.0.0" wrappy "1" @@ -10845,6 +12024,11 @@ diff-sequences@^27.5.1: resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz" integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== +diff-sequences@^28.0.2: + version "28.0.2" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-28.0.2.tgz#40f8d4ffa081acbd8902ba35c798458d0ff1af41" + integrity sha512-YtEoNynLDFCRznv/XDalsKGSZDoj0U5kLnXvY0JSq3nBboRrZXjD81+eSiwi+nzcZDwedMmcowcxNwwgFW23mQ== + diff@^4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz" @@ -11182,11 +12366,21 @@ electron-to-chromium@^1.3.612: resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.621.tgz" integrity sha512-FeIuBzArONbAmKmZIsZIFGu/Gc9AVGlVeVbhCq+G2YIl6QkT0TDn2HKN/FMf1btXEB9kEmIuQf3/lBTVAbmFOg== +electron-to-chromium@^1.4.118: + version "1.4.137" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.137.tgz#186180a45617283f1c012284458510cd99d6787f" + integrity sha512-0Rcpald12O11BUogJagX3HsCN3FE83DSqWjgXoHo5a72KUKMSfI39XBgJpgNNxS9fuGzytaFjE06kZkiVFy2qA== + electron-to-chromium@^1.4.251: version "1.4.256" resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.256.tgz" integrity sha512-x+JnqyluoJv8I0U9gVe+Sk2st8vF0CzMt78SXxuoWCooLLY2k5VerIBdpvG7ql6GKI4dzNnPjmqgDJ76EdaAKw== +electron-to-chromium@^1.4.284: + version "1.4.305" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.305.tgz#e4dfe3e06ab783f33171f9bde9e8ed092510fcd0" + integrity sha512-WETy6tG0CT5gm1O+xCbyapWNsCcmIvrn4NHViIGYo2AT8FV2qUCXdaB+WqYxSv/vS5mFqhBYnfZAAkVArjBmUg== + elf-cam@^0.1.1: version "0.1.1" resolved "https://registry.npmjs.org/elf-cam/-/elf-cam-0.1.1.tgz" @@ -11206,7 +12400,7 @@ elliptic@^6.0.0, elliptic@^6.5.2: emittery@^0.10.2: version "0.10.2" - resolved "https://registry.npmjs.org/emittery/-/emittery-0.10.2.tgz" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.10.2.tgz#902eec8aedb8c41938c46e9385e9db7e03182933" integrity sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw== emittery@^0.8.1: @@ -12549,6 +13743,17 @@ expect@^27.5.1: jest-matcher-utils "^27.5.1" jest-message-util "^27.5.1" +expect@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-28.1.0.tgz#10e8da64c0850eb8c39a480199f14537f46e8360" + integrity sha512-qFXKl8Pmxk8TBGfaFKRtcQjfXEnKAs+dmlxdwvukJZorwrAabT7M3h8oLOG01I2utEhkmUTi17CHaPBovZsKdw== + dependencies: + "@jest/expect-utils" "^28.1.0" + jest-get-type "^28.0.2" + jest-matcher-utils "^28.1.0" + jest-message-util "^28.1.0" + jest-util "^28.1.0" + express-async-handler@^1.1.4: version "1.1.4" resolved "https://registry.npmjs.org/express-async-handler/-/express-async-handler-1.1.4.tgz" @@ -12837,7 +14042,7 @@ fast-glob@^3.2.9: merge2 "^1.3.0" micromatch "^4.0.4" -fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" @@ -14725,6 +15930,14 @@ https-proxy-agent@5.0.0, https-proxy-agent@^5.0.0: agent-base "6" debug "4" +https-proxy-agent@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== + dependencies: + agent-base "6" + debug "4" + https-proxy-agent@^2.2.1: version "2.2.4" resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz" @@ -14789,6 +16002,13 @@ icss-utils@^5.0.0, icss-utils@^5.1.0: resolved "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz" integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== +id3-parser@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/id3-parser/-/id3-parser-2.0.0.tgz#e1de845af0943dbefacad9fd7c037f50671d714f" + integrity sha512-bkGeAtUX70rC9sq2mjzIrkmPZjUsGuqCjZKGFJnugKXqYVDuJgfWDa8MehUZaCqlkoCaXkYevYeaRxkHOJsv9w== + dependencies: + promise-a-plus "^0.7.0" + idb@^7.0.1: version "7.1.0" resolved "https://registry.npmjs.org/idb/-/idb-7.1.0.tgz" @@ -15257,17 +16477,24 @@ is-ci@^2.0.0: dependencies: ci-info "^2.0.0" -is-core-module@^2.8.0, is-core-module@^2.8.1: +is-core-module@^2.2.0, is-core-module@^2.9.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" + integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== + dependencies: + has "^1.0.3" + +is-core-module@^2.8.0: version "2.8.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== dependencies: has "^1.0.3" -is-core-module@^2.9.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed" - integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg== +is-core-module@^2.8.1: + version "2.9.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69" + integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A== dependencies: has "^1.0.3" @@ -15849,6 +17076,14 @@ jest-changed-files@^27.5.1: execa "^5.0.0" throat "^6.0.1" +jest-changed-files@^28.0.2: + version "28.0.2" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-28.0.2.tgz#7d7810660a5bd043af9e9cfbe4d58adb05e91531" + integrity sha512-QX9u+5I2s54ZnGoMEjiM2WeBvJR2J7w/8ZUmH2um/WLAuGAYFQcsVXY9+1YL6k0H/AGUdH8pXUAv6erDqEsvIA== + dependencies: + execa "^5.0.0" + throat "^6.0.1" + jest-circus@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz" @@ -15874,6 +17109,31 @@ jest-circus@^27.5.1: stack-utils "^2.0.3" throat "^6.0.1" +jest-circus@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-28.1.0.tgz#e229f590911bd54d60efaf076f7acd9360296dae" + integrity sha512-rNYfqfLC0L0zQKRKsg4n4J+W1A2fbyGH7Ss/kDIocp9KXD9iaL111glsLu7+Z7FHuZxwzInMDXq+N1ZIBkI/TQ== + dependencies: + "@jest/environment" "^28.1.0" + "@jest/expect" "^28.1.0" + "@jest/test-result" "^28.1.0" + "@jest/types" "^28.1.0" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + dedent "^0.7.0" + is-generator-fn "^2.0.0" + jest-each "^28.1.0" + jest-matcher-utils "^28.1.0" + jest-message-util "^28.1.0" + jest-runtime "^28.1.0" + jest-snapshot "^28.1.0" + jest-util "^28.1.0" + pretty-format "^28.1.0" + slash "^3.0.0" + stack-utils "^2.0.3" + throat "^6.0.1" + jest-cli@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz" @@ -15892,6 +17152,24 @@ jest-cli@^27.5.1: prompts "^2.0.1" yargs "^16.2.0" +jest-cli@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-28.1.0.tgz#cd1d8adb9630102d5ba04a22895f63decdd7ac1f" + integrity sha512-fDJRt6WPRriHrBsvvgb93OxgajHHsJbk4jZxiPqmZbMDRcHskfJBBfTyjFko0jjfprP544hOktdSi9HVgl4VUQ== + dependencies: + "@jest/core" "^28.1.0" + "@jest/test-result" "^28.1.0" + "@jest/types" "^28.1.0" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.9" + import-local "^3.0.2" + jest-config "^28.1.0" + jest-util "^28.1.0" + jest-validate "^28.1.0" + prompts "^2.0.1" + yargs "^17.3.1" + jest-config@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz" @@ -15922,6 +17200,34 @@ jest-config@^27.5.1: slash "^3.0.0" strip-json-comments "^3.1.1" +jest-config@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-28.1.0.tgz#fca22ca0760e746fe1ce1f9406f6b307ab818501" + integrity sha512-aOV80E9LeWrmflp7hfZNn/zGA4QKv/xsn2w8QCBP0t0+YqObuCWTSgNbHJ0j9YsTuCO08ZR/wsvlxqqHX20iUA== + dependencies: + "@babel/core" "^7.11.6" + "@jest/test-sequencer" "^28.1.0" + "@jest/types" "^28.1.0" + babel-jest "^28.1.0" + chalk "^4.0.0" + ci-info "^3.2.0" + deepmerge "^4.2.2" + glob "^7.1.3" + graceful-fs "^4.2.9" + jest-circus "^28.1.0" + jest-environment-node "^28.1.0" + jest-get-type "^28.0.2" + jest-regex-util "^28.0.2" + jest-resolve "^28.1.0" + jest-runner "^28.1.0" + jest-util "^28.1.0" + jest-validate "^28.1.0" + micromatch "^4.0.4" + parse-json "^5.2.0" + pretty-format "^28.1.0" + slash "^3.0.0" + strip-json-comments "^3.1.1" + jest-dev-server@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/jest-dev-server/-/jest-dev-server-6.2.0.tgz#2c6d2b919217b376145b7a8303c760f25f4abbd8" @@ -15955,6 +17261,16 @@ jest-diff@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" +jest-diff@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-28.1.0.tgz#77686fef899ec1873dbfbf9330e37dd429703269" + integrity sha512-8eFd3U3OkIKRtlasXfiAQfbovgFgRDb0Ngcs2E+FMeBZ4rUezqIaGjuyggJBp+llosQXNEWofk/Sz4Hr5gMUhA== + dependencies: + chalk "^4.0.0" + diff-sequences "^28.0.2" + jest-get-type "^28.0.2" + pretty-format "^28.1.0" + jest-docblock@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz" @@ -15962,6 +17278,13 @@ jest-docblock@^27.5.1: dependencies: detect-newline "^3.0.0" +jest-docblock@^28.0.2: + version "28.0.2" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-28.0.2.tgz#3cab8abea53275c9d670cdca814fc89fba1298c2" + integrity sha512-FH10WWw5NxLoeSdQlJwu+MTiv60aXV/t8KEwIRGEv74WARE1cXIqh1vGdy2CraHuWOOrnzTWj/azQKqW4fO7xg== + dependencies: + detect-newline "^3.0.0" + jest-each@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz" @@ -15973,6 +17296,17 @@ jest-each@^27.5.1: jest-util "^27.5.1" pretty-format "^27.5.1" +jest-each@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-28.1.0.tgz#54ae66d6a0a5b1913e9a87588d26c2687c39458b" + integrity sha512-a/XX02xF5NTspceMpHujmOexvJ4GftpYXqr6HhhmKmExtMXsyIN/fvanQlt/BcgFoRKN4OCXxLQKth9/n6OPFg== + dependencies: + "@jest/types" "^28.1.0" + chalk "^4.0.0" + jest-get-type "^28.0.2" + jest-util "^28.1.0" + pretty-format "^28.1.0" + jest-environment-jsdom@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz" @@ -15998,6 +17332,18 @@ jest-environment-node@^27.5.1: jest-mock "^27.5.1" jest-util "^27.5.1" +jest-environment-node@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-28.1.0.tgz#6ed2150aa31babba0c488c5b4f4d813a585c68e6" + integrity sha512-gBLZNiyrPw9CSMlTXF1yJhaBgWDPVvH0Pq6bOEwGMXaYNzhzhw2kA/OijNF8egbCgDS0/veRv97249x2CX+udQ== + dependencies: + "@jest/environment" "^28.1.0" + "@jest/fake-timers" "^28.1.0" + "@jest/types" "^28.1.0" + "@types/node" "*" + jest-mock "^28.1.0" + jest-util "^28.1.0" + jest-environment-puppeteer@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/jest-environment-puppeteer/-/jest-environment-puppeteer-6.2.0.tgz#5f831d0e83fd8f58ec6237427040d5dc72ca7bf0" @@ -16024,6 +17370,11 @@ jest-get-type@^27.5.1: resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz" integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== +jest-get-type@^28.0.2: + version "28.0.2" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-28.0.2.tgz#34622e628e4fdcd793d46db8a242227901fcf203" + integrity sha512-ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA== + jest-haste-map@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz" @@ -16044,6 +17395,25 @@ jest-haste-map@^27.5.1: optionalDependencies: fsevents "^2.3.2" +jest-haste-map@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-28.1.0.tgz#6c1ee2daf1c20a3e03dbd8e5b35c4d73d2349cf0" + integrity sha512-xyZ9sXV8PtKi6NCrJlmq53PyNVHzxmcfXNVvIRHpHmh1j/HChC4pwKgyjj7Z9us19JMw8PpQTJsFWOsIfT93Dw== + dependencies: + "@jest/types" "^28.1.0" + "@types/graceful-fs" "^4.1.3" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.9" + jest-regex-util "^28.0.2" + jest-util "^28.1.0" + jest-worker "^28.1.0" + micromatch "^4.0.4" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.3.2" + jest-image-snapshot@^2.12.0: version "2.12.0" resolved "https://registry.npmjs.org/jest-image-snapshot/-/jest-image-snapshot-2.12.0.tgz" @@ -16088,7 +17458,15 @@ jest-leak-detector@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" -jest-matcher-utils@^27.5.1: +jest-leak-detector@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-28.1.0.tgz#b65167776a8787443214d6f3f54935a4c73c8a45" + integrity sha512-uIJDQbxwEL2AMMs2xjhZl2hw8s77c3wrPaQ9v6tXJLGaaQ+4QrNJH5vuw7hA7w/uGT/iJ42a83opAqxGHeyRIA== + dependencies: + jest-get-type "^28.0.2" + pretty-format "^28.1.0" + +jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz" integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== @@ -16098,6 +17476,16 @@ jest-matcher-utils@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" +jest-matcher-utils@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-28.1.0.tgz#2ae398806668eeabd293c61712227cb94b250ccf" + integrity sha512-onnax0n2uTLRQFKAjC7TuaxibrPSvZgKTcSCnNUz/tOjJ9UhxNm7ZmPpoQavmTDUjXvUQ8KesWk2/VdrxIFzTQ== + dependencies: + chalk "^4.0.0" + jest-diff "^28.1.0" + jest-get-type "^28.0.2" + pretty-format "^28.1.0" + jest-message-util@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz" @@ -16113,9 +17501,24 @@ jest-message-util@^27.5.1: slash "^3.0.0" stack-utils "^2.0.3" +jest-message-util@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-28.1.0.tgz#7e8f0b9049e948e7b94c2a52731166774ba7d0af" + integrity sha512-RpA8mpaJ/B2HphDMiDlrAZdDytkmwFqgjDZovM21F35lHGeUeCvYmm6W+sbQ0ydaLpg5bFAUuWG1cjqOl8vqrw== + dependencies: + "@babel/code-frame" "^7.12.13" + "@jest/types" "^28.1.0" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.9" + micromatch "^4.0.4" + pretty-format "^28.1.0" + slash "^3.0.0" + stack-utils "^2.0.3" + jest-message-util@^28.1.3: version "28.1.3" - resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-28.1.3.tgz#232def7f2e333f1eecc90649b5b94b0055e7c43d" integrity sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g== dependencies: "@babel/code-frame" "^7.12.13" @@ -16136,6 +17539,14 @@ jest-mock@^27.5.1: "@jest/types" "^27.5.1" "@types/node" "*" +jest-mock@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-28.1.0.tgz#ccc7cc12a9b330b3182db0c651edc90d163ff73e" + integrity sha512-H7BrhggNn77WhdL7O1apG0Q/iwl0Bdd5E1ydhCJzL3oBLh/UYxAwR3EJLsBZ9XA3ZU4PA3UNw4tQjduBTCTmLw== + dependencies: + "@jest/types" "^28.1.0" + "@types/node" "*" + jest-pnp-resolver@^1.2.2: version "1.2.2" resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz" @@ -16154,9 +17565,9 @@ jest-regex-util@^27.5.1: resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz" integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== -jest-regex-util@^28.0.0: +jest-regex-util@^28.0.0, jest-regex-util@^28.0.2: version "28.0.2" - resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-28.0.2.tgz" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-28.0.2.tgz#afdc377a3b25fb6e80825adcf76c854e5bf47ead" integrity sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw== jest-resolve-dependencies@^27.5.1: @@ -16168,6 +17579,14 @@ jest-resolve-dependencies@^27.5.1: jest-regex-util "^27.5.1" jest-snapshot "^27.5.1" +jest-resolve-dependencies@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-28.1.0.tgz#167becb8bee6e20b5ef4a3a728ec67aef6b0b79b" + integrity sha512-Ue1VYoSZquPwEvng7Uefw8RmZR+me/1kr30H2jMINjGeHgeO/JgrR6wxj2ofkJ7KSAA11W3cOrhNCbj5Dqqd9g== + dependencies: + jest-regex-util "^28.0.2" + jest-snapshot "^28.1.0" + jest-resolve@^27.4.2, jest-resolve@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz" @@ -16184,6 +17603,21 @@ jest-resolve@^27.4.2, jest-resolve@^27.5.1: resolve.exports "^1.1.0" slash "^3.0.0" +jest-resolve@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-28.1.0.tgz#b1f32748a6cee7d1779c7ef639c0a87078de3d35" + integrity sha512-vvfN7+tPNnnhDvISuzD1P+CRVP8cK0FHXRwPAcdDaQv4zgvwvag2n55/h5VjYcM5UJG7L4TwE5tZlzcI0X2Lhw== + dependencies: + chalk "^4.0.0" + graceful-fs "^4.2.9" + jest-haste-map "^28.1.0" + jest-pnp-resolver "^1.2.2" + jest-util "^28.1.0" + jest-validate "^28.1.0" + resolve "^1.20.0" + resolve.exports "^1.1.0" + slash "^3.0.0" + jest-runner@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz" @@ -16211,6 +17645,33 @@ jest-runner@^27.5.1: source-map-support "^0.5.6" throat "^6.0.1" +jest-runner@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-28.1.0.tgz#aefe2a1e618a69baa0b24a50edc54fdd7e728eaa" + integrity sha512-FBpmuh1HB2dsLklAlRdOxNTTHKFR6G1Qmd80pVDvwbZXTriqjWqjei5DKFC1UlM732KjYcE6yuCdiF0WUCOS2w== + dependencies: + "@jest/console" "^28.1.0" + "@jest/environment" "^28.1.0" + "@jest/test-result" "^28.1.0" + "@jest/transform" "^28.1.0" + "@jest/types" "^28.1.0" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.10.2" + graceful-fs "^4.2.9" + jest-docblock "^28.0.2" + jest-environment-node "^28.1.0" + jest-haste-map "^28.1.0" + jest-leak-detector "^28.1.0" + jest-message-util "^28.1.0" + jest-resolve "^28.1.0" + jest-runtime "^28.1.0" + jest-util "^28.1.0" + jest-watcher "^28.1.0" + jest-worker "^28.1.0" + source-map-support "0.5.13" + throat "^6.0.1" + jest-runtime@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz" @@ -16239,6 +17700,34 @@ jest-runtime@^27.5.1: slash "^3.0.0" strip-bom "^4.0.0" +jest-runtime@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-28.1.0.tgz#4847dcb2a4eb4b0f9eaf41306897e51fb1665631" + integrity sha512-wNYDiwhdH/TV3agaIyVF0lsJ33MhyujOe+lNTUiolqKt8pchy1Hq4+tDMGbtD5P/oNLA3zYrpx73T9dMTOCAcg== + dependencies: + "@jest/environment" "^28.1.0" + "@jest/fake-timers" "^28.1.0" + "@jest/globals" "^28.1.0" + "@jest/source-map" "^28.0.2" + "@jest/test-result" "^28.1.0" + "@jest/transform" "^28.1.0" + "@jest/types" "^28.1.0" + chalk "^4.0.0" + cjs-module-lexer "^1.0.0" + collect-v8-coverage "^1.0.0" + execa "^5.0.0" + glob "^7.1.3" + graceful-fs "^4.2.9" + jest-haste-map "^28.1.0" + jest-message-util "^28.1.0" + jest-mock "^28.1.0" + jest-regex-util "^28.0.2" + jest-resolve "^28.1.0" + jest-snapshot "^28.1.0" + jest-util "^28.1.0" + slash "^3.0.0" + strip-bom "^4.0.0" + jest-serializer@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz" @@ -16275,6 +17764,35 @@ jest-snapshot@^27.5.1: pretty-format "^27.5.1" semver "^7.3.2" +jest-snapshot@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-28.1.0.tgz#4b74fa8816707dd10fe9d551c2c258e5a67b53b6" + integrity sha512-ex49M2ZrZsUyQLpLGxQtDbahvgBjlLPgklkqGM0hq/F7W/f8DyqZxVHjdy19QKBm4O93eDp+H5S23EiTbbUmHw== + dependencies: + "@babel/core" "^7.11.6" + "@babel/generator" "^7.7.2" + "@babel/plugin-syntax-typescript" "^7.7.2" + "@babel/traverse" "^7.7.2" + "@babel/types" "^7.3.3" + "@jest/expect-utils" "^28.1.0" + "@jest/transform" "^28.1.0" + "@jest/types" "^28.1.0" + "@types/babel__traverse" "^7.0.6" + "@types/prettier" "^2.1.5" + babel-preset-current-node-syntax "^1.0.0" + chalk "^4.0.0" + expect "^28.1.0" + graceful-fs "^4.2.9" + jest-diff "^28.1.0" + jest-get-type "^28.0.2" + jest-haste-map "^28.1.0" + jest-matcher-utils "^28.1.0" + jest-message-util "^28.1.0" + jest-util "^28.1.0" + natural-compare "^1.4.0" + pretty-format "^28.1.0" + semver "^7.3.5" + jest-util@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz" @@ -16287,9 +17805,21 @@ jest-util@^27.5.1: graceful-fs "^4.2.9" picomatch "^2.2.3" +jest-util@^28.0.0, jest-util@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-28.1.0.tgz#d54eb83ad77e1dd441408738c5a5043642823be5" + integrity sha512-qYdCKD77k4Hwkose2YBEqQk7PzUf/NSE+rutzceduFveQREeH6b+89Dc9+wjX9dAwHcgdx4yedGA3FQlU/qCTA== + dependencies: + "@jest/types" "^28.1.0" + "@types/node" "*" + chalk "^4.0.0" + ci-info "^3.2.0" + graceful-fs "^4.2.9" + picomatch "^2.2.3" + jest-util@^28.1.3: version "28.1.3" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-28.1.3.tgz#f4f932aa0074f0679943220ff9cbba7e497028b0" integrity sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ== dependencies: "@jest/types" "^28.1.3" @@ -16301,7 +17831,7 @@ jest-util@^28.1.3: jest-validate@^24.9.0: version "24.9.0" - resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" integrity sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ== dependencies: "@jest/types" "^24.9.0" @@ -16323,9 +17853,21 @@ jest-validate@^27.5.1: leven "^3.1.0" pretty-format "^27.5.1" +jest-validate@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-28.1.0.tgz#8a6821f48432aba9f830c26e28226ad77b9a0e18" + integrity sha512-Lly7CJYih3vQBfjLeANGgBSBJ7pEa18cxpQfQEq2go2xyEzehnHfQTjoUia8xUv4x4J80XKFIDwJJThXtRFQXQ== + dependencies: + "@jest/types" "^28.1.0" + camelcase "^6.2.0" + chalk "^4.0.0" + jest-get-type "^28.0.2" + leven "^3.1.0" + pretty-format "^28.1.0" + jest-watch-typeahead@^1.0.0: version "1.1.0" - resolved "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-1.1.0.tgz" + resolved "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-1.1.0.tgz#b4a6826dfb9c9420da2f7bc900de59dad11266a9" integrity sha512-Va5nLSJTN7YFtC2jd+7wsoe1pNe5K4ShLux/E5iHEwlB9AxaxmggY7to9KUqKojhaJw3aXqt5WAb4jGPOolpEw== dependencies: ansi-escapes "^4.3.1" @@ -16351,7 +17893,7 @@ jest-watcher@^27.5.1: jest-watcher@^28.0.0: version "28.1.3" - resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-28.1.3.tgz#c6023a59ba2255e3b4c57179fc94164b3e73abd4" integrity sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g== dependencies: "@jest/test-result" "^28.1.3" @@ -16363,9 +17905,23 @@ jest-watcher@^28.0.0: jest-util "^28.1.3" string-length "^4.0.1" +jest-watcher@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-28.1.0.tgz#aaa7b4164a4e77eeb5f7d7b25ede5e7b4e9c9aaf" + integrity sha512-tNHMtfLE8Njcr2IRS+5rXYA4BhU90gAOwI9frTGOqd+jX0P/Au/JfRSNqsf5nUTcWdbVYuLxS1KjnzILSoR5hA== + dependencies: + "@jest/test-result" "^28.1.0" + "@jest/types" "^28.1.0" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + emittery "^0.10.2" + jest-util "^28.1.0" + string-length "^4.0.1" + jest-worker@^26.2.1, jest-worker@^26.5.0: version "26.6.2" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== dependencies: "@types/node" "*" @@ -16383,13 +17939,22 @@ jest-worker@^27.0.2, jest-worker@^27.4.5, jest-worker@^27.5.1: jest-worker@^28.0.2: version "28.1.3" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-28.1.3.tgz#7e3c4ce3fa23d1bb6accb169e7f396f98ed4bb98" integrity sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^8.0.0" +jest-worker@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-28.1.0.tgz#ced54757a035e87591e1208253a6e3aac1a855e5" + integrity sha512-ZHwM6mNwaWBR52Snff8ZvsCTqQsvhCxP/bT1I6T6DAnb6ygkshsyLQIMxFwHpYxht0HOoqt23JlC01viI7T03A== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + jest@^27.4.3, jest@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz" @@ -16399,6 +17964,15 @@ jest@^27.4.3, jest@^27.5.1: import-local "^3.0.2" jest-cli "^27.5.1" +jest@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-28.1.0.tgz#f420e41c8f2395b9a30445a97189ebb57593d831" + integrity sha512-TZR+tHxopPhzw3c3560IJXZWLNHgpcz1Zh0w5A65vynLGNcg/5pZ+VildAd7+XGOu6jd58XMY/HNn0IkZIXVXg== + dependencies: + "@jest/core" "^28.1.0" + import-local "^3.0.2" + jest-cli "^28.1.0" + jmespath@0.15.0: version "0.15.0" resolved "https://registry.npmjs.org/jmespath/-/jmespath-0.15.0.tgz" @@ -16578,16 +18152,21 @@ json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" +json5@2.x, json5@^2.1.2, json5@^2.2.0, json5@^2.2.1: + version "2.2.1" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz" + integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + json5@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz" dependencies: minimist "^1.2.0" -json5@^2.1.2, json5@^2.2.0, json5@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz" - integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== +json5@^2.2.2: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonc-parser@^3.2.0: version "3.2.0" @@ -16726,7 +18305,7 @@ jszip@*, jszip@^3.7.0: readable-stream "~2.3.6" set-immediate-shim "~1.0.1" -jszip@^3.1.5: +jszip@^3.1.3, jszip@^3.1.5: version "3.10.1" resolved "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz" integrity sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g== @@ -17177,74 +18756,74 @@ lodash.clonedeep@^4.5.0: lodash.debounce@^4.0.8: version "4.0.8" - resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz" - integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= lodash.deburr@^4.1.0: version "4.1.0" - resolved "https://registry.npmjs.org/lodash.deburr/-/lodash.deburr-4.1.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.deburr/-/lodash.deburr-4.1.0.tgz#ddb1bbb3ef07458c0177ba07de14422cb033ff9b" integrity sha512-m/M1U1f3ddMCs6Hq2tAsYThTBDaAKFDX3dwDo97GEYzamXi9SqUpjWi/Rrj/gf3X2n8ktwgZrlP1z6E3v/IExQ== lodash.defaults@^4.2.0: version "4.2.0" - resolved "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== lodash.difference@^4.5.0: version "4.5.0" - resolved "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c" integrity sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA== lodash.escape@^3.0.0: version "3.2.0" - resolved "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" integrity sha512-n1PZMXgaaDWZDSvuNZ/8XOcYO2hOKDqZel5adtR30VKQAtoWs/5AOeFA0vPV8moiPzlqe7F4cP2tzpFewQyelQ== dependencies: lodash._root "^3.0.0" lodash.flatten@^4.4.0: version "4.4.0" - resolved "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" integrity sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g== lodash.flattendeep@^4.4.0: version "4.4.0" - resolved "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" integrity sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ== lodash.get@^4.4.2: version "4.4.2" - resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== lodash.isarguments@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" integrity sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg== lodash.isarray@^3.0.0: version "3.0.4" - resolved "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz" + resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" integrity sha512-JwObCrNJuT0Nnbuecmqr5DgtuBppuCvGD9lxjFpAzwnVtdGoDQ1zig+5W8k5/6Gcn0gZ3936HDAlGd28i7sOGQ== lodash.isempty@^4.4.0: version "4.4.0" - resolved "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.isempty/-/lodash.isempty-4.4.0.tgz#6f86cbedd8be4ec987be9aaf33c9684db1b31e7e" integrity sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg== lodash.islength@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/lodash.islength/-/lodash.islength-4.0.1.tgz" + resolved "https://registry.yarnpkg.com/lodash.islength/-/lodash.islength-4.0.1.tgz#4e9868d452575d750affd358c979543dc20ed577" integrity sha512-FlJtdcHNU8YEXbzZXYWMEHLkQOpvmlnGr5o2N1iQKB7hNyr6qPkWAe+Ceczz6JYlIzD4AlTD2igvt/2/0Pb3Zw== lodash.isplainobject@^4.0.6: version "4.0.6" - resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz" + resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== lodash.keys@^3.0.0: version "3.1.2" - resolved "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz" + resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" integrity sha512-CuBsapFjcubOGMn3VD+24HOAPxM79tH+V6ivJL3CHYjtrawauDJHUk//Yew9Hvc6e9rbCrURGk8z6PC+8WJBfQ== dependencies: lodash._getnative "^3.0.0" @@ -17253,10 +18832,10 @@ lodash.keys@^3.0.0: lodash.lowercase@^4.3.0: version "4.3.0" - resolved "https://registry.npmjs.org/lodash.lowercase/-/lodash.lowercase-4.3.0.tgz" + resolved "https://registry.yarnpkg.com/lodash.lowercase/-/lodash.lowercase-4.3.0.tgz#46515aced4acb0b7093133333af068e4c3b14e9d" integrity sha512-UcvP1IZYyDKyEL64mmrwoA1AbFu5ahojhTtkOUr1K9dbuxzS9ev8i4TxMMGCqRC9TE8uDaSoufNAXxRPNTseVA== -lodash.memoize@^4.1.2: +lodash.memoize@4.x, lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz" @@ -17488,7 +19067,7 @@ make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: dependencies: semver "^6.0.0" -make-error@^1.1.1: +make-error@1.x, make-error@^1.1.1: version "1.3.6" resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" @@ -18762,14 +20341,24 @@ node-releases@^1.1.67: resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.67.tgz" integrity sha512-V5QF9noGFl3EymEwUYzO+3NTDpGfQB4ve6Qfnzf3UNydMhjQRVPR1DZTuvWiLzaFJYw2fmDwAfnRNEVb64hSIg== +node-releases@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.4.tgz#f38252370c43854dc48aa431c766c6c398f40476" + integrity sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ== + node-releases@^2.0.6: version "2.0.6" resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz" integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg== +node-releases@^2.0.8: + version "2.0.10" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f" + integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== + node-source-walk@^4.0.0, node-source-walk@^4.2.0, node-source-walk@^4.2.2: version "4.3.0" - resolved "https://registry.npmjs.org/node-source-walk/-/node-source-walk-4.3.0.tgz" + resolved "https://registry.yarnpkg.com/node-source-walk/-/node-source-walk-4.3.0.tgz#8336b56cfed23ac5180fe98f1e3bb6b11fd5317c" integrity sha512-8Q1hXew6ETzqKRAs3jjLioSxNfT1cx74ooiF8RlAONwVMcfq+UdzLC2eB5qcPldUxaE5w3ytLkrmV1TGddhZTA== dependencies: "@babel/parser" "^7.0.0" @@ -20839,9 +22428,19 @@ pretty-format@^27.5.1: ansi-styles "^5.0.0" react-is "^17.0.1" +pretty-format@^28.1.0: + version "28.1.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-28.1.0.tgz#8f5836c6a0dfdb834730577ec18029052191af55" + integrity sha512-79Z4wWOYCdvQkEoEuSlBhHJqWeZ8D8YRPiPctJFCtvuaClGpiwiQYSCUOE6IEKUbbFukKOTFIUAXE8N4EQTo1Q== + dependencies: + "@jest/schemas" "^28.0.2" + ansi-regex "^5.0.1" + ansi-styles "^5.0.0" + react-is "^18.0.0" + pretty-format@^28.1.3: version "28.1.3" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-28.1.3.tgz#c9fba8cedf99ce50963a11b27d982a9ae90970d5" integrity sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q== dependencies: "@jest/schemas" "^28.1.3" @@ -20858,14 +22457,14 @@ pretty-ms@7.0.1: pretty-ms@^5.1.0: version "5.1.0" - resolved "https://registry.npmjs.org/pretty-ms/-/pretty-ms-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-5.1.0.tgz#b906bdd1ec9e9799995c372e2b1c34f073f95384" integrity sha512-4gaK1skD2gwscCfkswYQRmddUb2GJZtzDGRjHWadVHtK/DIKFufa12MvES6/xu1tVbUYeia5bmLcwJtZJQUqnw== dependencies: parse-ms "^2.1.0" prettyjson@^1.2.1: version "1.2.5" - resolved "https://registry.npmjs.org/prettyjson/-/prettyjson-1.2.5.tgz" + resolved "https://registry.yarnpkg.com/prettyjson/-/prettyjson-1.2.5.tgz#ef3cfffcc70505c032abc59785884b4027031835" integrity sha512-rksPWtoZb2ZpT5OVgtmy0KHVM+Dca3iVwWY9ifwhcexfjebtgjg3wmrUt9PvJ59XIYBcknQeYHD8IAnVlh9lAw== dependencies: colors "1.4.0" @@ -20912,6 +22511,11 @@ progress@^1.1.8: resolved "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz" integrity sha512-UdA8mJ4weIkUBO224tIarHzuHs4HuYiJvsuGT7j/SPQiUJVjYvNDBIPa0hAorduOfjGohB/qHWRa/lrrWX/mXw== +promise-a-plus@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/promise-a-plus/-/promise-a-plus-0.7.0.tgz#3d3cad69271dba462554c66b7d35bbd46e752a62" + integrity sha512-cWbWdSKaHiNGWP3aUSAq5nkZFYL1A6glTMgGc/LpFZ6DEJ5FRXzu7T2k4mmi+cD/R5EJ9DHHzWezXnO1IMPb5w== + promise-all-reject-late@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz" @@ -21115,6 +22719,24 @@ puppeteer@^13.3.2: unbzip2-stream "1.4.3" ws "8.5.0" +puppeteer@^14.1.1: + version "14.1.1" + resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-14.1.1.tgz#9a2b4042f9644d0d5fb63dbb6d75042af6a67656" + integrity sha512-4dC6GYR5YlXTmNO3TbYEHTdVSdml1cVD2Ok/h/f/xSTp4ITVdbRWkMjiOaEKRAhtIl6GqaP7B89zx+hfhcNGMQ== + dependencies: + cross-fetch "3.1.5" + debug "4.3.4" + devtools-protocol "0.0.982423" + extract-zip "2.0.1" + https-proxy-agent "5.0.1" + pkg-dir "4.2.0" + progress "2.0.3" + proxy-from-env "1.1.0" + rimraf "3.0.2" + tar-fs "2.1.1" + unbzip2-stream "1.4.3" + ws "8.6.0" + puppeteer@^3.0.4: version "3.3.0" resolved "https://registry.npmjs.org/puppeteer/-/puppeteer-3.3.0.tgz" @@ -21382,6 +23004,15 @@ react-dom@^16.8.6: prop-types "^15.6.2" scheduler "^0.19.1" +react-dom@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23" + integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + scheduler "^0.20.2" + react-dropzone@^11.1.0: version "11.7.1" resolved "https://registry.npmjs.org/react-dropzone/-/react-dropzone-11.7.1.tgz" @@ -21444,19 +23075,19 @@ react-is@^17.0.2: integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== react-is@^18.0.0: - version "18.2.0" - resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" - integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== + version "18.1.0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.1.0.tgz#61aaed3096d30eacf2a2127118b5b41387d32a67" + integrity sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg== react-proptype-conditional-require@^1.0.4: version "1.0.4" - resolved "https://registry.npmjs.org/react-proptype-conditional-require/-/react-proptype-conditional-require-1.0.4.tgz" + resolved "https://registry.yarnpkg.com/react-proptype-conditional-require/-/react-proptype-conditional-require-1.0.4.tgz#69c2d5741e6df5e08f230f36bbc2944ee1222555" integrity sha512-nopsRn7KnGgazBe2c3H2+Kf+Csp6PGDRLiBkYEDMKY8o/EIgft/WnIm/OnAKTawZiLnJXHAqhpFBddvs6NiXlw== -react-redux@^7.2.1: - version "7.2.8" - resolved "https://registry.npmjs.org/react-redux/-/react-redux-7.2.8.tgz" - integrity sha512-6+uDjhs3PSIclqoCk0kd6iX74gzrGc3W5zcAjbrFgEdIjRSQObdIwfx80unTkVUYvbQ95Y8Av3OvFHq1w5EOUw== +react-redux@^7.2.1, react-redux@^7.2.2: + version "7.2.9" + resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-7.2.9.tgz#09488fbb9416a4efe3735b7235055442b042481d" + integrity sha512-Gx4L3uM182jEEayZfRbI/G11ZpYdNAnBs70lFVMNdHJI76XYtR+7m0MN+eAs7UHBPhWXcnFPaS+9owSCJQHNpQ== dependencies: "@babel/runtime" "^7.15.4" "@types/react-redux" "^7.1.20" @@ -21687,6 +23318,14 @@ react@^16.8.6: object-assign "^4.1.1" prop-types "^15.6.2" +react@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037" + integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + read-cache@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz" @@ -21919,6 +23558,13 @@ redux@^4.0.1: dependencies: "@babel/runtime" "^7.9.2" +redux@^4.0.5: + version "4.2.1" + resolved "https://registry.yarnpkg.com/redux/-/redux-4.2.1.tgz#c08f4306826c49b5e9dc901dee0452ea8fce6197" + integrity sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w== + dependencies: + "@babel/runtime" "^7.9.2" + redux@^5.0.0-alpha.0: version "5.0.0-alpha.0" resolved "https://registry.npmjs.org/redux/-/redux-5.0.0-alpha.0.tgz" @@ -21928,12 +23574,19 @@ redux@^5.0.0-alpha.0: reflect.ownkeys@^0.2.0: version "0.2.0" - resolved "https://registry.npmjs.org/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz" + resolved "https://registry.yarnpkg.com/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz#749aceec7f3fdf8b63f927a04809e90c5c0b3460" integrity sha512-qOLsBKHCpSOFKK1NUOCGC5VyeufB6lEsFe92AL2bhIJsacZS1qdoOZSbPk3MYKuT2cFlRDnulKXuuElIrMjGUg== +regenerate-unicode-properties@^10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz#7f442732aa7934a3740c779bb9b3340dccc1fb56" + integrity sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw== + dependencies: + regenerate "^1.4.2" + regenerate-unicode-properties@^10.1.0: version "10.1.0" - resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c" integrity sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ== dependencies: regenerate "^1.4.2" @@ -21950,7 +23603,7 @@ regenerate@^1.4.0: regenerate@^1.4.2: version "1.4.2" - resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== regenerator-runtime@^0.11.0: @@ -21975,11 +23628,18 @@ regenerator-transform@^0.14.2: regenerator-transform@^0.15.0: version "0.15.0" - resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.0.tgz#cbd9ead5d77fae1a48d957cf889ad0586adb6537" integrity sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg== dependencies: "@babel/runtime" "^7.8.4" +regenerator-transform@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.1.tgz#f6c4e99fc1b4591f780db2586328e4d9a9d8dc56" + integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg== + dependencies: + "@babel/runtime" "^7.8.4" + regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz" @@ -22052,45 +23712,57 @@ regexpu-core@^4.7.1: unicode-match-property-ecmascript "^1.0.4" unicode-match-property-value-ecmascript "^1.2.0" -regexpu-core@^5.1.0: - version "5.2.1" - resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.1.tgz" - integrity sha512-HrnlNtpvqP1Xkb28tMhBUO2EbyUHdQlsnlAhzWcwHy8WJR53UWr7/MAvqrsQKMbV4qdpv03oTMG8iIhfsPFktQ== +regexpu-core@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.0.1.tgz#c531122a7840de743dcf9c83e923b5560323ced3" + integrity sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw== dependencies: regenerate "^1.4.2" - regenerate-unicode-properties "^10.1.0" - regjsgen "^0.7.1" - regjsparser "^0.9.1" + regenerate-unicode-properties "^10.0.1" + regjsgen "^0.6.0" + regjsparser "^0.8.2" unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.0.0" +regexpu-core@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.1.tgz#66900860f88def39a5cb79ebd9490e84f17bcdfb" + integrity sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ== + dependencies: + "@babel/regjsgen" "^0.8.0" + regenerate "^1.4.2" + regenerate-unicode-properties "^10.1.0" + regjsparser "^0.9.1" + unicode-match-property-ecmascript "^2.0.0" + unicode-match-property-value-ecmascript "^2.1.0" + registry-auth-token@^4.0.0: version "4.2.2" - resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.2.tgz#f02d49c3668884612ca031419491a13539e21fac" integrity sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg== dependencies: rc "1.2.8" registry-url@^5.0.0: version "5.1.0" - resolved "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz" + resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== dependencies: rc "^1.2.8" regjsgen@^0.5.0: version "0.5.2" - resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== regjsgen@^0.5.1: version "0.5.1" resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz" -regjsgen@^0.7.1: - version "0.7.1" - resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz" - integrity sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA== +regjsgen@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.6.0.tgz#83414c5354afd7d6627b16af5f10f41c4e71808d" + integrity sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA== regjsparser@^0.6.0: version "0.6.9" @@ -22101,7 +23773,14 @@ regjsparser@^0.6.0: regjsparser@^0.6.4: version "0.6.4" - resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.4.tgz#a769f8684308401a66e9b529d2436ff4d0666272" + dependencies: + jsesc "~0.5.0" + +regjsparser@^0.8.2: + version "0.8.4" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.8.4.tgz#8a14285ffcc5de78c5b95d62bbf413b6bc132d5f" + integrity sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA== dependencies: jsesc "~0.5.0" @@ -22129,7 +23808,7 @@ rehype-stringify@^8.0.0: relateurl@^0.2.7: version "0.2.7" - resolved "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" remark-parse@^9.0.0: version "9.0.0" @@ -22140,14 +23819,14 @@ remark-parse@^9.0.0: remark-stringify@^9.0.0: version "9.0.1" - resolved "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz" + resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-9.0.1.tgz#576d06e910548b0a7191a71f27b33f1218862894" integrity sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg== dependencies: mdast-util-to-markdown "^0.6.0" remark@^13.0.0: version "13.0.0" - resolved "https://registry.npmjs.org/remark/-/remark-13.0.0.tgz" + resolved "https://registry.yarnpkg.com/remark/-/remark-13.0.0.tgz#d15d9bf71a402f40287ebe36067b66d54868e425" integrity sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA== dependencies: remark-parse "^9.0.0" @@ -22337,15 +24016,32 @@ resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.15.1, resolve@^1.3.2 dependencies: path-parse "^1.0.6" -resolve@^1.12.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1: +resolve@^1.12.0, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.22.0, resolve@^1.22.1: version "1.22.1" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== dependencies: is-core-module "^2.9.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" +resolve@^1.14.2: + version "1.22.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" + integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== + dependencies: + is-core-module "^2.8.1" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +resolve@^1.20.0: + version "1.20.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + resolve@^2.0.0-next.1, resolve@^2.0.0-next.3: version "2.0.0-next.4" resolved "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz" @@ -22642,6 +24338,14 @@ scheduler@^0.20.1: loose-envify "^1.1.0" object-assign "^4.1.1" +scheduler@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" + integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + scheduler@^0.23.0: version "0.23.0" resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz" @@ -22751,18 +24455,18 @@ semver@7.0.0: version "7.0.0" resolved "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz" -semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: - version "6.3.0" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" - integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== - -semver@^7.0.0, semver@^7.1.3, semver@^7.3.7: +semver@7.x, semver@^7.0.0, semver@^7.1.3, semver@^7.3.7: version "7.3.7" resolved "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz" integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== dependencies: lru-cache "^6.0.0" +semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + semver@^7.1.1, semver@^7.3.4, semver@^7.3.5: version "7.3.5" resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz" @@ -23275,9 +24979,17 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" +source-map-support@0.5.13: + version "0.5.13" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + source-map-support@^0.5.17, source-map-support@~0.5.20: version "0.5.21" - resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== dependencies: buffer-from "^1.0.0" @@ -23608,7 +25320,7 @@ string-width@^1.0.1: "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.2.2, string-width@^4.2.3: version "4.2.3" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" @@ -23996,17 +25708,18 @@ supports-hyperlinks@^2.1.0: supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== svg-parser@^2.0.2: version "2.0.4" - resolved "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz" + resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== svgo@^1.2.2: version "1.3.2" - resolved "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" + integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== dependencies: chalk "^2.4.1" coa "^2.0.2" @@ -24629,6 +26342,20 @@ ts-interface-checker@^0.1.9: resolved "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz" integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== +ts-jest@^28.0.2: + version "28.0.2" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-28.0.2.tgz#e4026357006731f96a033b94db89d01e0d3c0591" + integrity sha512-IOZMb3D0gx6IHO9ywPgiQxJ3Zl4ECylEFwoVpENB55aTn5sdO0Ptyx/7noNBxAaUff708RqQL4XBNxxOVjY0vQ== + dependencies: + bs-logger "0.x" + fast-json-stable-stringify "2.x" + jest-util "^28.0.0" + json5 "2.x" + lodash.memoize "4.x" + make-error "1.x" + semver "7.x" + yargs-parser "^20.x" + ts-morph@12.0.0: version "12.0.0" resolved "https://registry.yarnpkg.com/ts-morph/-/ts-morph-12.0.0.tgz#a601c3538703755cbfa2d42b62c52df73e9dbbd7" @@ -24948,7 +26675,7 @@ unicode-canonical-property-names-ecmascript@^1.0.4: unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== unicode-match-property-ecmascript@^1.0.4: @@ -24960,7 +26687,7 @@ unicode-match-property-ecmascript@^1.0.4: unicode-match-property-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== dependencies: unicode-canonical-property-names-ecmascript "^2.0.0" @@ -24972,17 +26699,22 @@ unicode-match-property-value-ecmascript@^1.1.0, unicode-match-property-value-ecm unicode-match-property-value-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714" integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw== +unicode-match-property-value-ecmascript@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0" + integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== + unicode-property-aliases-ecmascript@^1.0.4: version "1.1.0" resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz" unicode-property-aliases-ecmascript@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz" - integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== + version "2.0.0" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8" + integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ== unified@^9.1.0, unified@^9.2.0: version "9.2.2" @@ -25125,6 +26857,14 @@ upath@^1.1.1, upath@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz" +update-browserslist-db@^1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" + integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ== + dependencies: + escalade "^3.1.1" + picocolors "^1.0.0" + update-browserslist-db@^1.0.9: version "1.0.9" resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.9.tgz" @@ -25372,11 +27112,11 @@ v8-to-istanbul@^8.1.0: source-map "^0.7.3" v8-to-istanbul@^9.0.0: - version "9.0.1" - resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz" - integrity sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w== + version "9.0.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.0.tgz#be0dae58719fc53cb97e5c7ac1d7e6d4f5b19511" + integrity sha512-HcvgY/xaRm7isYmyx+lFKA4uQmfUbN0J4M0nNItvzTvH/iQ9kW5j/t4YSR+Ge323/lrgDAWJoF46tzGQHwBHFw== dependencies: - "@jridgewell/trace-mapping" "^0.3.12" + "@jridgewell/trace-mapping" "^0.3.7" "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" @@ -25578,6 +27318,29 @@ web-streams-polyfill@^3.2.0: resolved "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz" integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q== +webamp@1.5.0, webamp@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/webamp/-/webamp-1.5.0.tgz#f728992c7e28ca921c1155761f9cf96711f9bdfc" + integrity sha512-Rz2L90pUqg6Y/1jbtniS8RCuDD8TMwfjqv6D/4T93UfvGPGvfQR00LE/rfaHRfG6FgQfiOul7RyPXvCaEikCxg== + dependencies: + ani-cursor "^0.0.4" + butterchurn "^3.0.0-beta.3" + butterchurn-presets "3.0.0-beta.4" + classnames "^2.2.5" + fscreen "^1.0.2" + invariant "^2.2.3" + jszip "^3.1.3" + lodash "^4.17.21" + milkdrop-preset-converter-aws "^0.1.6" + music-metadata-browser "^0.6.1" + react "^17.0.1" + react-dom "^17.0.1" + react-redux "^7.2.2" + redux "^4.0.5" + reselect "^3.0.1" + tinyqueue "^1.2.3" + winamp-eqf "^1.0.0" + webcrypto-core@^1.7.4: version "1.7.5" resolved "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.7.5.tgz" @@ -26209,9 +27972,17 @@ write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +write-file-atomic@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.1.tgz#9faa33a964c1c85ff6f849b80b42a88c2c537c8f" + integrity sha512-nSKUxgAbyioruk6hU87QzVbY279oYT6uiwgDoujth2ju4mJ+TZau7SQBhtbTmUyuNYTuXnSyRn66FV0+eCgcrQ== + dependencies: + imurmurhash "^0.1.4" + signal-exit "^3.0.7" + write@^0.2.1: version "0.2.1" - resolved "https://registry.npmjs.org/write/-/write-0.2.1.tgz" + resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" integrity sha512-CJ17OoULEKXpA5pef3qLj5AxTJ6mSt7g84he2WIskKwqFO4T97d5V7Tadl0DYDk7qyUOQD5WlUlOMChaYrhxeA== dependencies: mkdirp "^0.5.1" @@ -26221,6 +27992,11 @@ ws@8.5.0: resolved "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz" integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== +ws@8.6.0: + version "8.6.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.6.0.tgz#e5e9f1d9e7ff88083d0c0dd8281ea662a42c9c23" + integrity sha512-AzmM3aH3gk0aX7/rZLYvjdvZooofDu3fFOzGqcSnQ1tOcTWwhM/o+q++E8mAyVVIyUdajrkzWUGftaVSDLn1bw== + ws@^6.1.0, ws@^6.2.1: version "6.2.1" resolved "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz" @@ -26331,14 +28107,20 @@ yargs-parser@^18.1.2: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^20.0.0, yargs-parser@^20.2.2, yargs-parser@^20.2.9: +yargs-parser@^20.0.0, yargs-parser@^20.2.2, yargs-parser@^20.2.9, yargs-parser@^20.x: version "20.2.9" resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== +yargs-parser@^21.0.0: + version "21.0.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35" + integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg== + yargs@^13.2.4, yargs@^13.3.2: version "13.3.2" - resolved "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== dependencies: cliui "^5.0.0" find-up "^3.0.0" @@ -26381,9 +28163,22 @@ yargs@^16.0.0, yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" +yargs@^17.3.1: + version "17.4.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.4.1.tgz#ebe23284207bb75cee7c408c33e722bfb27b5284" + integrity sha512-WSZD9jgobAg3ZKuCQZSa3g9QOJeCCqLoLAykiWgmXnDo9EPnn4RPf5qVTtzgOx66o6/oqhcA5tHtJXpG8pMt3g== + dependencies: + cliui "^7.0.2" + 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.0.0" + yarn@^1.21.1: version "1.22.19" - resolved "https://registry.npmjs.org/yarn/-/yarn-1.22.19.tgz" + resolved "https://registry.yarnpkg.com/yarn/-/yarn-1.22.19.tgz#4ba7fc5c6e704fce2066ecbfb0b0d8976fe62447" integrity sha512-/0V5q0WbslqnwP91tirOvldvYISzaqhClxzyUKXYxs07yUILIs5jx/k6CFe8bvKSkds5w+eiOqta39Wk3WxdcQ== yauzl@^2.10.0, yauzl@^2.4.2: