@flashport/flashportui
Version:
This is a set basic UI components for FlashPort
800 lines • 75.3 kB
JavaScript
var ht = Object.defineProperty;
var at = (d, r, t) => r in d ? ht(d, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : d[r] = t;
var e = (d, r, t) => (at(d, typeof r != "symbol" ? r + "" : r, t), t);
import { Sprite as l, AEvent as _, MouseEvent as h, TextField as S, TextFormat as D, TextFieldAutoSize as U, DropShadowFilter as nt, Tweener as F, Equations as it, Shape as R, BitmapData as P, Rectangle as H, Matrix as p, GradientType as m, TextFieldType as rt, KeyboardEvent as G, FocusEvent as A, SpreadMethod as lt, LineScaleMode as f, TextFormatAlign as V, Keyboard as st, setTimeout as _t, Bitmap as B, Stage as ot } from "@flashport/flashport";
class j extends l {
constructor(t, i, s, a) {
super();
e(this, "_xLabel");
e(this, "_yLabel");
e(this, "OnAddedToStage", (t) => {
this.removeEventListener(_.ADDED_TO_STAGE, this.OnAddedToStage), this.addEventListener(h.MOUSE_OVER, this.onMouseOver);
});
e(this, "onMouseOver", (t) => {
this.addEventListener(h.MOUSE_OUT, this.OnMouseOut), this.scaleX = this.scaleY = 1.5;
});
e(this, "OnMouseOut", (t) => {
this.removeEventListener(h.MOUSE_OUT, this.OnMouseOut), this.scaleX = this.scaleY = 1;
});
this._xLabel = s, this._yLabel = a, this.graphics.beginFill(t), this.graphics.drawCircle(0, 0, i), this.addEventListener(_.ADDED_TO_STAGE, this.OnAddedToStage);
}
get xLabel() {
return this._xLabel;
}
get yLabel() {
return this._yLabel;
}
}
class E extends S {
constructor(r, t = 0, i = 12) {
super(), this.defaultTextFormat = new D("Arial", i, t, !0), this.autoSize = U.LEFT, this.multiline = !1, this.wordWrap = !1, this.embedFonts = !0, this.text = r;
}
}
class dt extends l {
constructor(t, i) {
super();
e(this, "_xLabel");
e(this, "_yLabel");
e(this, "_labelX");
e(this, "_labelY");
e(this, "Draw", () => {
this.graphics.clear();
var t = Math.max(this._labelX.textWidth, this._labelY.textWidth) + 10, i = this._labelX.textHeight + this._labelY.textHeight + 10;
this.graphics.beginFill(16777215), this.graphics.lineStyle(2, 15102720, 1, !0, "none"), this.graphics.lineTo(t, 0), this.graphics.lineTo(t, i / 2 - 5), this.graphics.lineTo(t + 5, i / 2), this.graphics.lineTo(t, i / 2 + 5), this.graphics.lineTo(t, i), this.graphics.lineTo(0, i), this.graphics.lineTo(0, 0);
});
this._xLabel = t, this._yLabel = i, this._labelY = new E(this._yLabel, 3223857, 14), this._labelY.y = this._labelY.x = 2, this._labelX = new E(this._xLabel, 3223857, 14), this._labelX.x = 2, this._labelX.y = this._labelY.textHeight + this._labelY.y, this.addChild(this._labelX), this.addChild(this._labelY), this.Draw(), this.filters = [new nt(4, 45, 0, 0.75, 8, 8, 1)];
}
get xLabel() {
return this._xLabel;
}
set xLabel(t) {
this._xLabel = t, this._labelX.text = this._xLabel, this.Draw();
}
get yLabel() {
return this._yLabel;
}
set yLabel(t) {
this._yLabel = t, this._labelY.text = this._yLabel, this.Draw();
}
}
class wt extends l {
constructor(t, i, s = "", a = "", n = null, c = null) {
super();
e(this, "_width");
e(this, "_height");
e(this, "_data");
e(this, "_xMax");
e(this, "_xMin");
e(this, "_yMax");
e(this, "_yMin");
e(this, "_xLinesMax", 10);
e(this, "_yLinesMax", 10);
e(this, "_yLabelFormatFunc");
e(this, "_xLabelFormatFunc");
e(this, "_plotCircles");
e(this, "_plotLabel");
e(this, "_chart");
e(this, "_lineContainer");
e(this, "OnMouseMove", (t) => {
var i, s;
for (var a of this._plotCircles) {
var n = Math.abs(a.x - this.mouseX);
(isNaN(i) || n < i) && (i = n, s = a);
}
F.removeTweens(this._plotLabel), F.addTween(this._plotLabel, { time: 0.2, x: s.x - this._plotLabel.width, y: s.y - this._plotLabel.height / 2, transition: it.easeOutSine }), this._plotLabel.xLabel = s.xLabel, this._plotLabel.yLabel = s.yLabel, this._chart.addChild(this._plotLabel);
});
e(this, "setData", (t) => {
this._data = t, this._plotCircles = [];
for (var i of t)
this._xMax = isNaN(this._xMax) ? i.x : Math.max(this._xMax, i.x), this._yMax = isNaN(this._yMax) ? i.y : Math.max(this._yMax, i.y), this._xMin = isNaN(this._xMin) ? i.x : Math.min(this._xMin, i.x), this._yMin = isNaN(this._yMin) ? i.y : Math.min(this._yMin, i.y);
this._xMax / this._xLinesMax, this._yMax / this._yLinesMax;
var s = this._width / this._xLinesMax, a = this._height / this._yLinesMax;
this._chart.graphics.lineStyle(1, 8158332, 1, !0, "none");
for (var n = 0; n <= this._yLinesMax; n++) {
this._chart.graphics.moveTo(0, n * a), this._chart.graphics.lineTo(this._width, n * a);
var c = (this._yMax - this._yMin) / this._yLinesMax, u = Math.round(this._yMin + n * c).toString();
this._yLabelFormatFunc != null && (u = this._yLabelFormatFunc(this._yMin + n * c).toString());
var g = new E(u, 16777215, 11);
g.x = 1, g.y = n == 0 ? this._height - g.textHeight : this._height - n * a - 1, this._chart.addChild(g);
}
for (var T = 0; T <= this._xLinesMax; T++) {
this._chart.graphics.moveTo(T * s, 0), this._chart.graphics.lineTo(T * s, this._height);
var Q = (this._xMax - this._xMin) / this._xLinesMax, $ = String(Math.round(this._xMin + T * Q));
this._xLabelFormatFunc != null && ($ = String(this._xLabelFormatFunc(this._xMin + T * Q)));
var I = new E($, 3223857, 11);
I.rotation = 90, I.x = T * s + 4, I.y = this._height - I.textHeight + 14, this._chart.addChild(I);
}
this._lineContainer.graphics.lineStyle(1.5, 15102720, 1, !0, "none"), this._lineContainer.graphics.moveTo(0, this._height - this._height * ((this._data[0].y - this._yMin) / (this._yMax - this._yMin)));
var w = new j(15102720, 4, this._xLabelFormatFunc ? this._xLabelFormatFunc(this._data[0].x) : this._data[0].x.toString(), this._yLabelFormatFunc ? this._yLabelFormatFunc(this._data[0].y) : this._data[0].y.toString());
w.x = 0, w.y = this._height - this._height * ((this._data[0].y - this._yMin) / (this._yMax - this._yMin)), this._plotCircles.push(w), this._lineContainer.addChildAt(w, 0);
for (var v = 1; v < this._data.length; v++)
this._lineContainer.graphics.lineTo(this._width * ((this._data[v].x - this._xMin) / (this._xMax - this._xMin)), this._height - this._height * ((this._data[v].y - this._yMin) / (this._yMax - this._yMin))), w = new j(15102720, 4, this._xLabelFormatFunc ? this._xLabelFormatFunc(this._data[v].x) : this._data[v].x.toString(), this._yLabelFormatFunc ? this._yLabelFormatFunc(this._data[v].y) : this._data[v].y.toString()), w.x = this._width * ((this._data[v].x - this._xMin) / (this._xMax - this._xMin)), w.y = this._height - this._height * ((this._data[v].y - this._yMin) / (this._yMax - this._yMin)), this._plotCircles.push(w), this._lineContainer.addChildAt(w, 0);
});
this._width = t, this._height = i, this._xLabelFormatFunc = n, this._yLabelFormatFunc = c, this.graphics.beginFill(4605510), this.graphics.drawRoundRect(0, 0, t, i, 15, 15), this.graphics.endFill();
var u = new E(s, 3223857, 14);
u.x = (this._width - u.textWidth) / 2, u.y = -u.textHeight - 2, this.addChild(u);
var g = new E(a, 3223857, 14);
g.rotation = 90, g.x = 0, g.y = (this._height - g.textWidth) / 2, this.addChild(g), this._chart = new l(), this.addChild(this._chart), this._lineContainer = new l(), this._chart.addChild(this._lineContainer), this._plotLabel = new dt("Test 1", "Test 2"), this.addEventListener(h.MOUSE_MOVE, this.OnMouseMove);
}
}
class Et {
constructor(r, t) {
e(this, "_x");
e(this, "_y");
this._x = r, this._y = t;
}
get x() {
return this._x;
}
get y() {
return this._y;
}
}
class b extends _ {
constructor(t, i, s = !1, a = !1) {
super(t, s, a);
e(this, "data");
// Override clone
e(this, "clone", () => new b(this.type, this.data, this.bubbles, this.cancelable));
// Override toString
e(this, "toString", () => this.formatToString("DEvent", "type", "bubbles", "cancelable", "eventPhase"));
this.data = i;
}
}
class xt extends l {
constructor() {
super();
e(this, "_mainStage");
e(this, "OnAddedToStage", (t) => {
this._mainStage = this.stage, this.addEventListener(_.REMOVED_FROM_STAGE, this.OnRemovedFromStage), this.stage.addEventListener(_.RESIZE, this.OnResize), this.graphics.clear(), this.graphics.beginFill(0, 0.75), this.graphics.drawRect(0, 0, this.stage.stageWidth, this.stage.stageHeight);
});
e(this, "OnRemovedFromStage", (t) => {
this.removeEventListener(_.REMOVED_FROM_STAGE, this.OnRemovedFromStage), this._mainStage.removeEventListener(_.RESIZE, this.OnResize), this._mainStage = null;
});
e(this, "OnResize", (t) => {
this.graphics.clear(), this.graphics.beginFill(0, 0.75), this.graphics.drawRect(0, 0, this.stage.stageWidth, this.stage.stageHeight);
});
this.mouseChildren = !1, this.addEventListener(_.ADDED_TO_STAGE, this.OnAddedToStage);
}
}
class bt extends R {
constructor(t = 100, i = 1, s = 7829367, a = 1, n = 1, c = 1) {
super();
e(this, "_w");
e(this, "_h");
e(this, "_color");
e(this, "_dotAlpha");
e(this, "_dotWidth");
e(this, "_spacing");
e(this, "drawDottedLine", () => {
this.graphics.clear();
var t = new P(this._dotWidth + this._spacing, this._h + 1, !0), i = new H(0, 0, this._dotWidth, this._h), s = this.returnARGB(this._color, 255);
t.fillRect(i, s);
var a = new H(this._dotWidth, 0, this._dotWidth + this._spacing, this._h);
t.fillRect(a, 0), this.graphics.beginBitmapFill(t, null, !0), this.graphics.drawRect(0, 0, this._w, this._h), this.graphics.endFill();
});
e(this, "returnARGB", (t, i) => {
var s = 0;
return s += i << 24, s += t, s;
});
this._w = t, this._h = i, this._color = s, this.alpha = a, this._dotWidth = n, this._spacing = c, this.drawDottedLine();
}
}
class tt extends l {
/**
* Stores the name to display on the button.
* @param name the name on the button.
*/
constructor(t, i = 12) {
super();
e(this, "_nameText");
e(this, "_fontSize");
e(this, "_buttonName");
e(this, "_pulseBG");
e(this, "_data");
e(this, "_storedWidth");
e(this, "_storedHeight");
e(this, "_storedX");
e(this, "_storedY");
e(this, "_active", !1);
e(this, "_pulsate", !1);
e(this, "_origX");
e(this, "_origY");
e(this, "onAddedToStage", (t) => {
this.removeEventListener(_.ADDED_TO_STAGE, this.onAddedToStage), this._active || (this.addEventListener(h.MOUSE_OVER, this.onMouseOver), this.addEventListener(h.MOUSE_DOWN, this.onMouseDown), this.addEventListener(h.MOUSE_UP, this.onMouseUp));
});
e(this, "onMouseOver", (t) => {
this.addEventListener(h.MOUSE_OUT, this.onMouseOut), this._storedX = this.x, this._storedY = this.y;
var i = this.width, s = this.height;
this.scaleX = this.scaleY = 1.05;
var a = this.width - i, n = this.height - s;
this.x -= a / 2, this.y -= n / 4;
});
e(this, "onMouseOut", (t) => {
this.removeEventListener(h.MOUSE_OUT, this.onMouseOut), this.scaleX = this.scaleY = 1, this.x = this._storedX, this.y = this._storedY;
});
e(this, "onMouseUp", (t) => {
var i = this.width, s = this.height;
this.scaleX = this.scaleY = 1.05;
var a = this.width - i, n = this.height - s;
this.x -= a / 2, this.y -= n / 4;
});
e(this, "onMouseDown", (t) => {
this.scaleX = this.scaleY = 1, this.x = this._storedX, this.y = this._storedY;
});
e(this, "Draw", () => {
this.graphics.clear(), this._buttonName || (this._buttonName = new S()), this._buttonName.defaultTextFormat = new D("Arial", this._fontSize, 4605510, !0), this._buttonName.autoSize = U.CENTER, this._buttonName.wordWrap = !1, this._buttonName.selectable = !1, this._buttonName.text = this._nameText, this._buttonName.x = 7, this._buttonName.y = 0, this.addChild(this._buttonName);
var t = [16777215, 10066329], i = [1, 1], s = [1, 255], a = new p();
a.createGradientBox(this._buttonName.textWidth + 17, this._buttonName.height + 17, 90 / 180 * Math.PI), this.graphics.lineStyle(1.5, 12105912, 1, !0, "none"), this.graphics.beginGradientFill(m.LINEAR, t, i, s, a), this.graphics.drawRoundRect(0, 0, this._buttonName.textWidth + 17, this._buttonName.textHeight + 17, 6, 6), this._buttonName.y = (this.height - this._buttonName.textHeight) / 2 - 2, this.mouseChildren = !1, this.buttonMode = !0, this._storedWidth = this.width, this._storedHeight = this.height, this._origX && (this.x = this._origX), this._origY && (this.y = this._origY);
});
e(this, "onPulseOut", () => {
this._pulsate ? F.addTween(this._pulseBG, { time: 0.5, alpha: 0.2, onComplete: this.onPulseIn }) : this._pulseBG.alpha = 0;
});
e(this, "onPulseIn", () => {
this._pulsate ? F.addTween(this._pulseBG, { time: 0.5, alpha: 0, onComplete: this.onPulseOut }) : this._pulseBG.alpha = 0;
});
this._nameText = t, this._fontSize = i, this.Draw(), this.addEventListener(_.ADDED_TO_STAGE, this.onAddedToStage);
}
/**
* Method to store custom data.
*/
get data() {
return this._data;
}
/**
* Method to retrieve custom data.
*/
set data(t) {
this._data = t;
}
/**
* Set the button to an active or inactive state.
*/
set active(t) {
t == !0 ? (this.alpha = 1, this._active = !1, this.buttonMode = !0, this.addEventListener(h.MOUSE_OVER, this.onMouseOver), this.addEventListener(h.MOUSE_DOWN, this.onMouseDown), this.addEventListener(h.MOUSE_UP, this.onMouseUp)) : (this.alpha = 0.5, this._active = !0, this.buttonMode = !1, this.removeEventListener(h.MOUSE_OVER, this.onMouseOver), this.removeEventListener(h.MOUSE_DOWN, this.onMouseDown), this.removeEventListener(h.MOUSE_UP, this.onMouseUp));
}
get active() {
return this._active;
}
set label(t) {
this._nameText = t, this._origX || (this._origX = this.x, this._origY = this.y), this.Draw();
}
set pulsate(t) {
this._pulsate = t, this._pulsate ? (this._pulseBG || (this._pulseBG = new l(), this._pulseBG.graphics.lineStyle(1.5, 6710886, 1, !0), this._pulseBG.graphics.beginFill(8388608), this._pulseBG.graphics.drawRoundRect(0, 0, this._buttonName.textWidth + 15, this._buttonName.height + 13, 9, 9), this.addChildAt(this._pulseBG, 0)), this.onPulseOut()) : this._pulseBG && (this._pulseBG.alpha = 0);
}
}
class Tt extends l {
constructor(t, i = 300) {
super();
e(this, "_messageTxt");
e(this, "_okBTN");
e(this, "_cancelBTN");
e(this, "OnAddedToStage", (t) => {
this.removeEventListener(_.ADDED_TO_STAGE, this.OnAddedToStage), this.x = (this.stage.stageWidth - this.width) / 2, this.y = (this.stage.stageHeight - this.height) / 2;
});
this._messageTxt = new S(), this._messageTxt.defaultTextFormat = new D("Arial", 16, 4605510), this._messageTxt.selectable = !1, this._messageTxt.multiline = !0, this._messageTxt.autoSize = U.CENTER, this._messageTxt.width = i, this._messageTxt.text = t, this.graphics.lineStyle(1.5, 6710886, 1, !0, "none"), this.graphics.beginFill(16777215), this.graphics.drawRoundRect(0, 0, this._messageTxt.width + 20, this._messageTxt.height + 80, 9, 9), this._messageTxt.x = (this.width - this._messageTxt.width) / 2, this._messageTxt.y = 10, this.addChild(this._messageTxt), this._okBTN = new tt("OK"), this._okBTN.x = 60, this._okBTN.y = this.height - this._okBTN.height - 20, this.addChild(this._okBTN), this._cancelBTN = new tt("CANCEL"), this._cancelBTN.x = this.width - this._cancelBTN.width - 60, this._cancelBTN.y = this.height - this._cancelBTN.height - 20, this.addChild(this._cancelBTN), this.addEventListener(_.ADDED_TO_STAGE, this.OnAddedToStage, !1, 0, !0);
}
get okBTN() {
return this._okBTN;
}
get cancelBTN() {
return this._cancelBTN;
}
set hideCancel(t) {
t ? (this._cancelBTN.visible = !1, this._okBTN.x = (this.width - this._okBTN.width) / 2) : (this._okBTN.x = 60, this._cancelBTN.visible = !0);
}
}
class Ot extends l {
constructor(t, i, s = 13421772, a = 0) {
super();
e(this, "_lineColor");
e(this, "_fillColor");
e(this, "_width");
e(this, "_height");
e(this, "Draw", () => {
this.graphics.lineStyle(2, this._lineColor, 1, !0, "none"), this.graphics.beginFill(this._fillColor), this.graphics.moveTo(-(this._width / 2), -(this._height / 4)), this.graphics.lineTo(0, -(this._height / 4)), this.graphics.lineTo(0, -(this._height / 2)), this.graphics.lineTo(this._width / 2, 0), this.graphics.lineTo(0, this._height / 2), this.graphics.lineTo(0, this._height / 4), this.graphics.lineTo(-(this._width / 2), this._height / 4), this.graphics.lineTo(-(this._width / 2), -(this._height / 4));
});
e(this, "OnRollover", (t = null) => {
this.scaleX = this.scaleY = 1.1, this.addEventListener(h.ROLL_OUT, this.OnRollout), this.addEventListener(h.MOUSE_DOWN, this.OnDown), this.stage.addEventListener(h.ROLL_OVER, this.OnRollout);
});
e(this, "OnDown", (t) => {
this.OnRollout(), this.addEventListener(h.MOUSE_UP, this.OnUp);
});
e(this, "OnUp", (t) => {
this.OnRollover();
});
e(this, "OnRollout", (t = null) => {
this.removeEventListener(h.ROLL_OUT, this.OnRollout), this.removeEventListener(h.CLICK, this.OnDown), this.stage && this.stage.removeEventListener(h.ROLL_OVER, this.OnRollout), this.scaleX = this.scaleY = 1;
});
this._width = t, this._height = i, this._fillColor = s, this._lineColor = a, this.buttonMode = !0, this.Draw(), this.addEventListener(h.ROLL_OVER, this.OnRollover);
}
set active(t) {
t ? (this.addEventListener(h.ROLL_OVER, this.OnRollover), this.addEventListener(h.CLICK, this.OnDown), this.addEventListener(h.MOUSE_DOWN, this.OnDown), this.addEventListener(h.MOUSE_UP, this.OnUp), this.stage && this.stage.addEventListener(h.ROLL_OVER, this.OnRollout), this.alpha = 1, this.scaleX = this.scaleY = 1) : (this.removeEventListener(h.ROLL_OVER, this.OnRollover), this.removeEventListener(h.CLICK, this.OnDown), this.removeEventListener(h.MOUSE_DOWN, this.OnDown), this.removeEventListener(h.MOUSE_UP, this.OnUp), this.stage && this.stage.removeEventListener(h.ROLL_OVER, this.OnRollout), this.alpha = 0.2, this.scaleX = this.scaleY = 1);
}
}
class Mt extends l {
constructor(t = 20) {
super();
e(this, "_size");
e(this, "_check");
e(this, "_checked", !1);
e(this, "_active", !0);
e(this, "OnClicked", (t) => {
this._checked = !this._checked, this._check.visible = this._checked, this.dispatchEvent(new _(_.CHANGE));
});
e(this, "Draw", () => {
this.graphics.lineStyle(1.5, 6710886, 1, !0), this.graphics.beginFill(16777215), this.graphics.drawRoundRect(0, 0, this._size, this._size, 6, 6), this._check = new l(), this._check.graphics.lineStyle(3, 0, 1, !0, "none"), this._check.graphics.moveTo(3, this._size / 2 + 2), this._check.graphics.lineTo(this._size / 4, this._size - 4), this._check.graphics.lineTo(this._size - 6, 4), this._check.x = 3, this._check.y = -3, this._check.visible = !1, this.addChild(this._check);
});
this._size = 20, this.Draw(), this.mouseChildren = !1, this.buttonMode = !0, this.addEventListener(h.CLICK, this.OnClicked);
}
get checked() {
return this._checked;
}
set checked(t) {
this._checked = t, this._check.visible = this._checked;
}
set active(t) {
this._active = t, this._active ? (this.addEventListener(h.CLICK, this.OnClicked), this.alpha = 1) : (this.removeEventListener(h.CLICK, this.OnClicked), this.alpha = 0.35);
}
get active() {
return this._active;
}
}
class z extends l {
constructor(t, i, s = 16777215, a = 4605510, n = 13421772, c = "") {
super();
e(this, "_width");
e(this, "_height");
e(this, "_textColor");
e(this, "_backgroundColor");
e(this, "_borderColor");
e(this, "_hint");
e(this, "_input");
e(this, "Draw", () => {
this.graphics.clear(), this.graphics.lineStyle(1.5, this._borderColor, 1, !0, "none"), this.graphics.beginFill(this._backgroundColor), this.graphics.drawRoundRect(0, 0, this._width, this._height, 6, 6), this._input = new E(this._hint, this._textColor), this._input.type = rt.INPUT, this._input.width = this.width - 5, this._input.height = this._height, this._input.x = 2, this._input.y = (this._height + 2 - this._input.textHeight) / 2 - 2, this._input.alpha = 0.35, this._input.addEventListener(G.KEY_DOWN, this.OnKeyDown), this._input.addEventListener(A.FOCUS_OUT, this.OnFocusOut), this._input.addEventListener(h.MOUSE_DOWN, this.OnMouseDown), this.addChild(this._input);
});
e(this, "OnMouseDown", (t) => {
this._input.text == this._hint && (this._input.text = "", this._input.alpha = 1);
});
e(this, "OnKeyDown", (t) => {
this._input.text == this._hint && (this._input.text = "", this._input.alpha = 1);
});
e(this, "OnFocusOut", (t) => {
this._hint && this._input.text == "" && (this._input.text = this._hint, this._input.alpha = 0.35);
});
e(this, "enableFocus", () => {
this.stage && this._input.setSelection(0, 0);
});
this._width = t, this._height = i, this._textColor = s, this._backgroundColor = a, this._borderColor = n, this._hint = c, this.Draw();
}
get textfield() {
return this._input;
}
set text(t) {
this._input.text = t, this._input.alpha = 1, this._input.y = (this._height + 2 - this._input.textHeight) / 2 - 2;
}
get text() {
return this._input.text;
}
set maxChars(t) {
this._input.maxChars = t;
}
set fontSize(t) {
var i = this._input.getTextFormat();
i.size = t, this._input.defaultTextFormat = i, this._input.setTextFormat(i), this._input.y = (this._height + 2 - this._input.textHeight) / 2 - 2;
}
set underline(t) {
var i = this._input.getTextFormat();
i.underline = t, this._input.defaultTextFormat = i, this._input.setTextFormat(i);
}
set align(t) {
var i = this._input.getTextFormat();
i.align = t, this._input.defaultTextFormat = i, this._input.setTextFormat(i);
}
set restrict(t) {
this._input.restrict = t;
}
}
class Lt extends l {
constructor() {
super();
e(this, "_width", 200);
e(this, "_height", 200);
e(this, "_colorPanel");
e(this, "Draw", () => {
this.graphics.clear(), this.graphics.lineStyle(1.5, 6710886, 1, !0, "none"), this.graphics.beginFill(13421772), this.graphics.drawRect(0, 0, 60, 20), this._colorPanel = new ct(), this._colorPanel.y = this.height + 1, this.addChild(this._colorPanel);
});
this.Draw();
}
}
class ct extends l {
constructor() {
super();
e(this, "_colorBar");
e(this, "_gradient");
e(this, "_marker");
e(this, "_hex");
e(this, "_color", 16777215);
e(this, "_alpha", 100);
e(this, "_prevColor", 16777215);
e(this, "_prevAlpha", 1);
e(this, "_brightness", 1);
e(this, "_saturation", 0);
e(this, "_hue", 0);
e(this, "_red", 0);
e(this, "_green", 0);
e(this, "_blue", 0);
e(this, "Draw", () => {
var t = new p();
t.createGradientBox(150, this.height), this._colorBar.graphics.clear(), this._colorBar.graphics.lineStyle(1, 4210752), this._colorBar.graphics.lineStyle(1, 4210752), this._colorBar.graphics.beginFill(4605510), this._colorBar.graphics.endFill();
var i = this._hue / 360 * 150;
this._colorBar.graphics.lineStyle(1, 14079702, 1, !0), this._colorBar.graphics.beginFill(4605510), this._colorBar.graphics.moveTo(i, -2), this._colorBar.graphics.lineTo(i + 4, -6), this._colorBar.graphics.lineTo(i - 4, -6), t.createGradientBox(150, 150), this.drawGradient(), t.setTo(1, 0, 0, 1, 3, 0), this._marker.x = this._saturation * 150 + this._gradient.x, this._marker.y = 150 - this._brightness * 150 + this._gradient.y;
});
e(this, "drawGradient", () => {
var t = new p();
t.createGradientBox(150, 150, Math.PI / 2, 0, 0), this._gradient.graphics.clear(), this._gradient.graphics.beginGradientFill(m.LINEAR, [0, 0], [0, 1], [0, 255], t, lt.PAD), this._gradient.graphics.drawRect(0, 0, 150, 150);
});
this.graphics.clear(), this.graphics.lineStyle(1.5, 6710886, 1, !0, "none"), this.graphics.beginFill(13421772), this.graphics.drawRect(0, 0, 250, 200), this._colorBar = new R(), this._colorBar.x = 5, this._colorBar.y = 10, this.addChild(this._colorBar), this._gradient = new R(), this._gradient.x = 5, this._gradient.y = 45, this.addChild(this._gradient), this._marker = new R(), this._marker.graphics.clear(), this._marker.graphics.lineStyle(2, 16777215), this._marker.graphics.drawCircle(0, 0, 7), this._marker.graphics.lineStyle(1, 4210752), this._marker.graphics.drawCircle(0, 0, 6), this.addChild(this._marker), this._hex = new z(60, 20), this._hex.x = this.width - this._hex.width - 25, this._hex.y = this.height - this._hex.height - 70, this._hex.text = "FFFFFF", this.addChild(this._hex), this.Draw();
}
}
const W = class extends l {
constructor(t = 250, i = 24) {
super();
e(this, "_width");
e(this, "_height");
e(this, "_track");
e(this, "_handle");
e(this, "_value", 0);
e(this, "_active", !0);
e(this, "_isMouseDown", !1);
e(this, "enable", () => {
this._handle.addEventListener(h.MOUSE_DOWN, this.onHandleDown), this._handle.buttonMode = !0, this._handle.useHandCursor = !0;
});
e(this, "onHandleDown", (t) => {
this._isMouseDown = !0, this.stage.addEventListener(h.MOUSE_UP, this.onStageUp), this.stage.addEventListener(h.MOUSE_MOVE, this.onHandleMouseMove), this._handle.startDrag(!1, new H(0, (this._track.height - this._handle.height) / 2, this._width - this._handle.width, 0));
});
e(this, "onStageUp", (t) => {
this._handle.stopDrag(), this.stage && (this.stage.removeEventListener(h.MOUSE_UP, this.onStageUp), this.stage.removeEventListener(h.MOUSE_MOVE, this.onHandleMouseMove)), this._isMouseDown = !1;
});
e(this, "onHandleMouseMove", (t) => {
var i = this._handle.x, s = this._width - this._handle.width;
this._value = i / s, this.dispatchEvent(new b(W.SLIDE_CHANGE, this._value));
});
e(this, "Draw", () => {
var t = new p();
t.createGradientBox(this._width, this._height, 1.58), this._track.graphics.clear(), this._track.graphics.lineStyle(2, 14342874, 1, !0, f.NONE), this._track.graphics.beginGradientFill(m.LINEAR, [13421772, 4605510], [1, 1], [0, 255], t), this._track.graphics.drawRoundRect(0, 0, this._width, this._height, 5, 5), this._track.graphics.moveTo(10, this._height / 2), this._track.graphics.lineTo(this._width - 10, this._height / 2), this.addChild(this._track);
var i = this._height - 2, s = new p();
s.createGradientBox(i, i, 1.58), this._handle.graphics.clear(), this._handle.graphics.lineStyle(2, 16777215, 0, !0, f.NONE), this._handle.graphics.beginGradientFill(m.LINEAR, [8388608, 4605510], [1, 1], [0, 255], t), this._handle.graphics.drawRoundRect(0, 0, i * 2, i, 5, 5), this._handle.graphics.lineStyle(1, 13421772, 1, !0, f.NONE), this._handle.graphics.moveTo(i / 2 + 4, 7), this._handle.graphics.lineTo(i / 2 + 4, i - 7), this._handle.graphics.moveTo(i, 7), this._handle.graphics.lineTo(i, i - 7), this._handle.graphics.moveTo(i + i / 2 - 4, 7), this._handle.graphics.lineTo(i + i / 2 - 4, i - 7), this._handle.y = (this.height - i) / 2, this._handle.buttonMode = !0, this.addChild(this._handle);
});
this._width = t, this._height = i, this._track = new l(), this._handle = new l(), this._handle.name = "handle", this.Draw(), this.enable();
}
set value(t) {
this._value = t, t > 1 && (t = 1), t < 0 && (t = 0), this._handle.x = (this._width - this._handle.width) * t, this.dispatchEvent(new b(W.SLIDE_CHANGE, this._value));
}
get value() {
return this._value;
}
get isMouseDown() {
return this._isMouseDown;
}
set active(t) {
this._active = t, this._active ? (this._handle.addEventListener(h.MOUSE_DOWN, this.onHandleDown), this._handle.visible = !0) : (this._handle.removeEventListener(h.MOUSE_DOWN, this.onHandleDown), this._handle.visible = !1);
}
};
let x = W;
e(x, "SLIDE_CHANGE", "slideChange");
const X = class extends l {
constructor(t = 150, i = 25, s = "openDown", a = "Select One") {
super();
e(this, "_width");
e(this, "_height");
e(this, "_openDir");
e(this, "_prompt");
e(this, "_header");
e(this, "_itemMenu");
e(this, "_msk");
e(this, "_itemContainer");
e(this, "_selectedItemText");
e(this, "_items", []);
e(this, "_scrollbar");
e(this, "_selectedItem");
e(this, "addItem", (t, i = "", s = 0, a = null) => {
this._items.push(new gt(this._height, this._width, t, s, i, a));
for (var n = 0; n < this._items.length; n++) {
var c = this._items[n];
c.name = "item" + n, c.y = c.height * n - n * 2, c.addEventListener(h.CLICK, this.OnItemClicked), this._itemContainer.addChild(c);
}
this._itemContainer.graphics.clear(), this._itemContainer.graphics.beginFill(16777215, 1), this._itemContainer.graphics.drawRect(0, 0, this._itemContainer.width, this._itemContainer.height);
for (var u of this._items)
u.updateSize(this._itemContainer.width - 1);
var g = this._items.length > 6 ? this._height * 6 - 6 : this._height * this._items.length - 6;
this._msk.graphics.clear(), this._msk.graphics.beginFill(16777215, 0), this._msk.graphics.drawRect(0, 0, this._itemContainer.width + 1 + this._scrollbar.width, g + (this._openDir == X.OPEN_DOWN ? 3 : 0)), this._scrollbar.x = Math.floor(this._itemContainer.width) + Math.floor(this._scrollbar.width) - 1, this._items.length > 6 && this._itemMenu.addChild(this._scrollbar);
});
e(this, "removeAllItems", () => {
for (var t of this._items)
this._itemContainer.removeChild(t), t.destroy();
this._items = [], this._itemContainer.graphics.clear(), this._msk.graphics.clear(), this._itemMenu.contains(this._scrollbar) && this._itemMenu.removeChild(this._scrollbar), this.reset();
});
e(this, "OnItemClicked", (t) => {
var i = t.target;
this._selectedItem = i, this._selectedItemText.text = i.title, this.OnRollout(), this.dispatchEvent(new _(_.CHANGE));
});
e(this, "OnHeaderClicked", (t) => {
if (this.contains(this._itemMenu)) {
this.OnRollout();
return;
}
this._itemMenu.y = this._openDir == X.OPEN_UP ? -this._msk.height : this._header.height - 2, this.addChild(this._itemMenu), this.addEventListener(h.ROLL_OUT, this.OnRollout), this._scrollbar.addEventListener(x.SLIDE_CHANGE, this.OnScrollbarChange), this._items.length > 6 && this.addEventListener(h.MOUSE_WHEEL, this.OnMouseWheel), this.dispatchEvent(new _(_.OPEN));
});
e(this, "OnMouseWheel", (t) => {
t.delta < 0 ? this._scrollbar.value + Math.abs(t.delta / 3 * 0.1) < 1 ? this._scrollbar.value += Math.abs(t.delta / 3 * 0.1) : this._scrollbar.value = 1 : t.delta > 0 && (this._scrollbar.value - Math.abs(t.delta / 3 * 0.1) > 0 ? this._scrollbar.value -= Math.abs(t.delta / 3 * 0.1) : this._scrollbar.value = 0);
});
e(this, "OnScrollbarChange", (t) => {
var i = this._itemContainer.height - this._msk.height;
this._itemContainer.y = -(i * t.data);
});
e(this, "OnRollout", (t = null) => {
this._scrollbar.isMouseDown || (this.removeEventListener(h.ROLL_OUT, this.OnRollout), this._scrollbar.removeEventListener(x.SLIDE_CHANGE, this.OnScrollbarChange), this.stage.removeEventListener(h.MOUSE_WHEEL, this.OnMouseWheel), this.contains(this._itemMenu) && this.removeChild(this._itemMenu));
});
e(this, "Draw", () => {
this._header.graphics.clear();
var t = [16777215, 10066329], i = [1, 1], s = [127, 255], a = new p();
a.createGradientBox(this._width, this._height, 90 / 180 * Math.PI), this._header.graphics.lineStyle(1.5, 6710886, 1, !0, "none"), this._header.graphics.beginGradientFill(m.LINEAR, t, i, s, a), this._header.graphics.drawRoundRect(0, 0, this._width, this._height, 6, 6), this._header.graphics.moveTo(this._width - 20, 0), this._header.graphics.lineTo(this._width - 20, this._height);
var n = this.drawTriangle(0, 0, 8, 4605510);
n.x = this.width - n.width, n.y = this._height - n.height, this._header.addChild(n);
var c = new D("Arial", 14, 0, !0);
this._selectedItemText = new S(), this._selectedItemText.defaultTextFormat = c, this._selectedItemText.multiline = !1, this._selectedItemText.wordWrap = !1, this._selectedItemText.autoSize = U.LEFT, this._selectedItemText.text = this._prompt, this._selectedItemText.height = this._selectedItemText.textHeight + 2, this._selectedItemText.x = 2, this._selectedItemText.y = (this.height - this._selectedItemText.height) / 2 - 2;
var u = new l();
u.graphics.beginFill(16777215, 0), u.graphics.drawRect(0, 0, this._width - 22, this._height), this._selectedItemText.mask = u, this._header.addChild(this._selectedItemText), this._header.addChild(u), this._msk.graphics.clear(), this._msk.graphics.beginFill(16777215, 0);
var g = this._items.length > 6 ? this._height * 6 - 6 : this._height * this._items.length - 6;
this._msk.graphics.drawRect(0, 0, this._width + 1 + this._scrollbar.width, g), this._itemContainer.mask = this._msk, this._itemMenu.addChild(this._itemContainer), this._itemMenu.addChild(this._msk);
});
e(this, "drawTriangle", (t, i, s, a) => {
var n = new R();
return n.graphics.beginFill(a), n.graphics.moveTo(s / 2, i), n.graphics.lineTo(s, s + i), n.graphics.lineTo(t, s + i), n.graphics.lineTo(s / 2, i), n.rotation = 180, n;
});
e(this, "selectedIndex", (t, i = !1) => {
var s = this._items[t];
s.selected = !0, this._selectedItem = s, this._selectedItemText.text = s.title, i && this.dispatchEvent(new _(_.CHANGE));
});
e(this, "reset", () => {
this._scrollbar.value = 0, this._itemContainer.y = 0, this._selectedItemText.text = this._prompt, this._selectedItem = null;
});
e(this, "selectLastItem", () => {
if (this._items.length > 0) {
var t = this._items[this._items.length - 1];
t.selected = !0, this._selectedItem = t, this._selectedItemText.text = t.title, this.dispatchEvent(new _(_.CHANGE));
}
});
e(this, "labelExists", (t) => {
for (var i = 0; i < this._items.length; i++)
if (this._items[i].title == t)
return i;
return -1;
});
this.name = "KCombo", this._width = t, this._height = i, this._openDir = s, this._prompt = a, this._header = new l(), this._header.mouseChildren = !1, this._header.buttonMode = !0, this._header.name = "header", this.addChild(this._header), this._itemMenu = new l(), this._itemMenu.name = "_itemMenu", this._msk = new l(), this._msk.name = "mask", this._itemContainer = new l(), this._itemContainer.name = "_itemContainer", this._scrollbar = new x(this._height * 6 - 6, 20), this._scrollbar.name = "scrollbar", this._scrollbar.rotation = 90, this._scrollbar.y = 2, this._scrollbar.x = this._width + 2, this.Draw(), this._header.addEventListener(h.CLICK, this.OnHeaderClicked);
}
get getSelectedIndex() {
for (var t = 0; t < this._items.length; t++)
if (this._items[t] == this._selectedItem)
return t;
return -1;
}
get selectedItem() {
return this._selectedItem;
}
get selectedItemParams() {
return this._selectedItem.params;
}
};
let N = X;
e(N, "OPEN_UP", "openUP"), e(N, "OPEN_DOWN", "openDown");
class gt extends l {
constructor(t, i, s, a = 0, n = "", c = null) {
super();
e(this, "_width");
e(this, "_height");
e(this, "_title");
e(this, "_params");
e(this, "_selected", !1);
e(this, "destroy", () => {
this.graphics.clear(), this.removeEventListener(h.ROLL_OUT, this.OnRollout);
});
e(this, "OnRollover", (t) => {
this.graphics.clear(), this.graphics.lineStyle(1, 6710886, 1, !0, "none"), this.graphics.beginFill(13421772), this.graphics.drawRect(0, 0, this._width, this._height), this.addEventListener(h.ROLL_OUT, this.OnRollout);
});
e(this, "OnRollout", (t) => {
this.graphics.clear(), this.graphics.lineStyle(1, 6710886, 1, !0, "none"), this.graphics.beginFill(16777215), this.graphics.drawRect(0, 0, this._width, this._height), this.removeEventListener(h.ROLL_OUT, this.OnRollout);
});
e(this, "updateSize", (t) => {
this._width = t, this.graphics.clear(), this.graphics.lineStyle(1, 6710886, 1, !0, "none"), this.graphics.beginFill(16777215), this.graphics.drawRect(0, 0, t, this._height);
});
this._width = i, this._height = t, this._title = s, this._params = c, this.mouseChildren = !1, this.buttonMode = !0, this.graphics.lineStyle(1, 6710886, 1, !0, "none"), this.graphics.beginFill(16777215), this.graphics.drawRect(0, 0, this._width, this._height);
var u = new D("Arial", 14, a, !0), g = new S();
g.defaultTextFormat = u, g.wordWrap = !1, g.multiline = !1, g.autoSize = U.LEFT, g.text = s, g.x = 2, g.y = (this.height - g.height) / 2 - 2, this.addChild(g), this.addEventListener(h.ROLL_OVER, this.OnRollover);
}
get selected() {
return this._selected;
}
set selected(t) {
this._selected = t;
}
get title() {
return this._title;
}
get params() {
return this._params;
}
}
class ut extends l {
constructor() {
super(), this.graphics.beginFill(8388608), this.graphics.drawRoundRectComplex(0, 13, 40, 50, 5, 5, 9, 9), this.graphics.beginFill(8388608), this.graphics.drawRoundRectComplex(-2, 6, 44, 5, 5, 5, 0, 0), this.graphics.drawRect(15, 0, 10, 5), this.graphics.moveTo(8, 21), this.graphics.lineStyle(2, 16777215, 1, !0), this.graphics.lineTo(8, 55), this.graphics.moveTo(20, 21), this.graphics.lineTo(20, 55), this.graphics.moveTo(32, 21), this.graphics.lineTo(32, 55), this.graphics.endFill();
}
}
const q = class extends l {
constructor(t, i = 16, s = null, a = null, n = !1) {
super();
e(this, "_title");
e(this, "_params");
e(this, "_active");
e(this, "_selected", !1);
e(this, "_titleTxt");
e(this, "_deleteBtn");
e(this, "_width", 100);
e(this, "_icon");
e(this, "_msk");
e(this, "OnDelete", (t) => {
t.stopPropagation(), this.dispatchEvent(new _(q.DELETE_ITEM));
});
e(this, "OnRollover", (t) => {
this.addEventListener(h.ROLL_OUT, this.OnRollout), this._selected || (this.graphics.clear(), this.graphics.lineStyle(1, 6710886, 1, !0, "none"), this.graphics.beginFill(14871285), this.graphics.drawRect(0, 0, this._width, this.height)), this._deleteBtn && (this._deleteBtn.visible = !0);
});
e(this, "OnRollout", (t = null) => {
this.removeEventListener(h.ROLL_OUT, this.OnRollout), this._selected || (this.graphics.clear(), this.graphics.lineStyle(1, 16777215, 1, !0, "none"), this.graphics.beginFill(16777215), this.graphics.drawRect(0, 0, this._width, this.height)), this._deleteBtn && (this._deleteBtn.visible = !1);
});
e(this, "setIcon", (t) => {
this._icon && this.contains(this._icon) && this.removeChild(this._icon), this._icon = t, this._icon.x = (40 - this._icon.width) / 2, this._icon.y = (this.height - this._icon.height) / 2, this.addChild(this._icon);
});
this._title = t, this._params = s, this._icon = a, this._active = !0, this.buttonMode = !0, this._titleTxt = new E(t, 3223857, i), this._titleTxt.x = this._icon ? 50 : 10, this._titleTxt.mouseEnabled = !1, this.graphics.beginFill(16777215), this.graphics.drawRect(0, 0, this._width, Math.ceil(this._titleTxt.textHeight) + 5), this.graphics.endFill(), this._msk = new l(), this._msk.graphics.beginFill(0), this._msk.graphics.drawRect(0, 0, this._width, Math.ceil(this._titleTxt.textHeight) + 5), this.addChild(this._msk), this.mask = this._msk, this._icon && (this._icon.x = (40 - this._icon.width) / 2, this._icon.y = (this.height - this._icon.height) / 2, this.addChild(this._icon)), this._titleTxt.y = (this.height - Math.ceil(this._titleTxt.textHeight)) / 2 - 2, this.addChild(this._titleTxt), n && (this._deleteBtn = new ut(), this._deleteBtn.height = this.height - 2, this._deleteBtn.scaleX = this._deleteBtn.scaleY, this._deleteBtn.x = Math.round(this._width - this._deleteBtn.width - 10), this._deleteBtn.y = Math.round((this.height - this._deleteBtn.height) / 2), this._deleteBtn.addEventListener(h.CLICK, this.OnDelete), this._deleteBtn.visible = !1, this.addChild(this._deleteBtn)), this.addEventListener(h.ROLL_OVER, this.OnRollover);
}
set updateWidth(t) {
this._width = t, this.graphics.beginFill(16777215), this.graphics.drawRect(0, 0, this._width, Math.ceil(this._titleTxt.textHeight) + 5), this.graphics.endFill(), this._msk.graphics.clear(), this._msk.graphics.beginFill(0), this._msk.graphics.drawRect(0, 0, this._width, Math.ceil(this._titleTxt.textHeight) + 5), this._titleTxt.y = (this.height - Math.ceil(this._titleTxt.textHeight)) / 2 - 2, this._deleteBtn && (this._deleteBtn.x = Math.round(this._width - this._deleteBtn.width - 10), this._deleteBtn.y = Math.round((this.height - this._deleteBtn.height) / 2));
}
get title() {
return this._title;
}
set title(t) {
this._title = t, this._titleTxt.text = this._title;
}
get params() {
return this._params;
}
get active() {
return this._active;
}
set active(t) {
this._active = t;
}
get selected() {
return this._selected;
}
set selected(t) {
this._selected = t, this._selected ? (this.graphics.clear(), this.graphics.lineStyle(1, 6710886, 1, !0, "none"), this.graphics.beginFill(12899050), this.graphics.drawRect(0, 0, this._width, this.height)) : this.OnRollout();
}
};
let y = q;
e(y, "DELETE_ITEM", "deleteItem");
class Ct extends l {
constructor(t, i) {
super();
e(this, "_width");
e(this, "_height");
e(this, "_container");
e(this, "_containerMask");
e(this, "_scrollbar");
e(this, "_selectedItem");
e(this, "_items", []);
e(this, "Draw", () => {
this.graphics.clear(), this.graphics.lineStyle(1.5, 6710886, 1, !0, "none"), this.graphics.beginFill(13421772), this.graphics.drawRect(0, 0, this._width, this._height), this._containerMask = new l(), this._containerMask.graphics.lineStyle(1.5, 6710886, 1, !0, "none"), this._containerMask.graphics.beginFill(16777215), this._containerMask.graphics.drawRect(0, 5, this._width, this._height - 10), this.addChild(this._containerMask), this._container.mask = this._containerMask;
});
e(this, "addItem", (t, i = 16, s = null, a = !1, n = null) => {
var c = new y(t, i, s, n, a);
c.addEventListener(y.DELETE_ITEM, this.OnDeleteItem), c.updateWidth = this._width - this._scrollbar.width - 10, this._items.push(c), this.RefreshList();
});
e(this, "addItems", (t) => {
for (var i of t)
i.addEventListener(y.DELETE_ITEM, this.OnDeleteItem), i.updateWidth = this._width - this._scrollbar.width - 10, this._items.push(i);
this.RefreshList();
});
e(this, "removeAll", () => {
for (var t of this._items)
this._container.contains(t) && this._container.removeChild(t);
this._items = [], this._selectedItem = null, this.RefreshList(), this._scrollbar.value = 0;
});
e(this, "OnDeleteItem", (t) => {
var i = t.target;
i.active = !1, this.RefreshList();
});
e(this, "RefreshList", () => {
for (var t = 2, i = 0; i < this._items.length; i++) {
var s = this._items[i];
s.active ? (s.x = 5, s.y = t, s.doubleClickEnabled = !0, s.addEventListener(h.CLICK, this.OnItemClicked), s.addEventListener(h.DOUBLE_CLICK, this.OnItemClicked), this._container.addChild(s), t = s.y + s.height + 2) : (this._container.removeChild(s), this._items.splice(i, 1), s.removeEventListener(h.CLICK, this.OnItemClicked), s.removeEventListener(h.DOUBLE_CLICK, this.OnItemClicked), i--);
}
this._container.height > this._height ? (this._scrollbar.active = !0, this._scrollbar.addEventListener(x.SLIDE_CHANGE, this.OnScrollbarChange), this.addEventListener(h.MOUSE_WHEEL, this.OnMouseWheel)) : (this._scrollbar.active = !1, this._scrollbar.removeEventListener(x.SLIDE_CHANGE, this.OnScrollbarChange), this.removeEventListener(h.MOUSE_WHEEL, this.OnMouseWheel)), this._scrollbar.value = this._scrollbar.value;
});
e(this, "OnMouseWheel", (t) => {
var i = (this._items[0].height + 3) / (this._container.height - this._containerMask.height);
t.delta < 0 ? this._scrollbar.value + Math.abs(t.delta / 3 * 0.1) < 1 ? this._scrollbar.value += Math.abs(t.delta / 3 * i) : this._scrollbar.value = 1 : t.delta > 0 && (this._scrollbar.value - Math.abs(t.delta / 3 * 0.1) > 0 ? this._scrollbar.value -= Math.abs(t.delta / 3 * i) : this._scrollbar.value = 0);
});
e(this, "OnScrollbarChange", (t) => {
var i = 2, s = this._container.height - this._containerMask.height + i;
F.addTween(this._container, { time: 0.5, y: -(s * t.data), transition: it.easeOutExpo });
});
e(this, "OnItemClicked", (t) => {
this._selectedItem = t.currentTarget, this.clearSelected(this._selectedItem), this._selectedItem = t.currentTarget, this._selectedItem.selected = !0, this.dispatchEvent(new _(_.CHANGE));
});
e(this, "clearSelected", (t = null) => {
for (var i of this._items)
(t == null || t != i) && (i.selected = !1);
this._selectedItem = null;
});
e(this, "sortOn", (t, i, s = !1) => {
var a = function(n, c) {
return n.params[t].valueOf() < c.params[t].valueOf() ? -1 : n.params[t].valueOf() > c.params[t].valueOf() ? 1 : 0;
};
i == 16 && (this._items.sort(a), s && this._items.reverse()), this.RefreshList();
});
e(this, "selectedIndex", (t, i = !1) => {
t < this._items.length && (this._selectedItem && (this._selectedItem.selected = !1), this._selectedItem = this._items[t], this._selectedItem.selected = !0, i && this.dispatchEvent(new _(_.CHANGE)));
});
e(this, "selectLastItem", () => {
if (this.clearSelected(), this._items.length > 0) {
var t = this._items[this._items.length - 1];
t.selected = !0, this._selectedItem = t;
}
});
e(this, "getItemAt", (t) => t < this._items.length ? this._items[t] : null);
this._width = t, this._height = i, this._container = new l(), this._scrollbar = new x(this._height - 3.5, 18), this._scrollbar.rotation = 90, this._scrollbar.x = this._width - 2, this._scrollbar.y = 2, this._scrollbar.active = !1, this.Draw(), this.addChild(this._container), this.addChild(this._scrollbar);
}
get selectedItem() {
return this._selectedItem;
}
get length() {
return this._items.length;
}
}
class ft extends l {
constructor(t = 33) {
super();
e(this, "_play");
e(this, "_pause");
e(this, "_isPlay", !0);
e(this, "OnPlayClicked", (t = null) => {
this._isPlay ? (this.contains(this._play) && this.removeChild(this._play), this.addChild(this._pause), this._isPlay = !1) : (this.contains(this._pause) && this.removeChild(this._pause), this.addChild(this._play), this._isPlay = !0), t && this.dispatchEvent(new _(_.CHANGE));
});
this.mouseChildren = !1, this.buttonMode = !0;
var i = [16777215, 10066329], s = [1, 1], a = [127, 255], n = new p();
n.createGradientBox(t, t, 90 / 180 * Math.PI), this.graphics.lineStyle(1.5, 6710886, 1, !0, "none"), this.graphics.beginGradientFill(m.LINEAR, i, s, a, n), this.graphics.drawRoundRect(0, 0, t, t, 9, 9), this._play = new l(), this._play.graphics.lineStyle(1.25, 13421772, 1, !0, "none"), this._play.graphics.beginFill(47872), this._play.graphics.moveTo(t / 4, this.y), this._play.graphics.lineTo(t / 2, t / 2 + this.y), this._play.graphics.lineTo(this.x, t / 2 + this.y), this._play.graphics.lineTo(t / 4, this.y), this._play.rotation = 90, this._play.x = this._play.width + this._play.width / 2 - 1, this._play.y = this._play.height / 2, this.addChild(this._play), this._pause = new l(), this._pause.graphics.lineStyle(4, 12517376, 1, !0, "none"), this._pause.graphics.moveTo(t / 3 + 2, t / 3), this._pause.graphics.lineTo(t / 3 + 2, t / 3 * 2), this._pause.graphics.moveTo(t / 3 * 2 - 2, t / 3), this._pause.graphics.lineTo(t / 3 * 2 - 2, t / 3 * 2), this.addEventListener(h.CLICK, this.OnPlayClicked);
}
set enabled(t) {
t ? (this.addEventListener(h.CLICK, this.OnPlayClicked), this.alpha = 1) : (this.removeEventListener(h.CLICK, this.OnPlayClicked), this.alpha = 0.5);
}
get isPlay() {
return this._isPlay;
}
set isPlay(t) {
this._isPlay = t, this.OnPlayClicked();
}
}
class yt extends l {
constructor(t = 33) {
super();
e(this, "_play");
e(this, "_stop");
e(this, "_isPlay", !0);
e(this, "OnPlayClicked", (t = null) => {
this._isPlay ? (this.contains(this._play) && this.removeChild(this._play), this.addChild(this._stop), this._isPlay = !1) : (this.contains(this._stop) && this.removeChild(this._stop), this.addChild(this._play), this._isPlay = !0), t && this.dispatchEvent(new _(_.CHANGE));
});
this.mouseChildren = !1, this.buttonMode = !0;
var i = [16777215, 10066329], s = [1, 1], a = [127, 255], n = new p();
n.createGradientBox(t, t, 90 / 180 * Math.PI), this.graphics.lineStyle(1.5, 6710886, 1, !0, "none"), this.graphics.beginGradientFill(m.LINEAR, i, s, a, n), this.graphics.drawRoundRect(0, 0, t, t, 9, 9), this._play = new l(), this._play.graphics.lineStyle(1.25, 13421772, 1, !0, "none"), this._play.graphics.beginFill(47872), this._play.graphics.moveTo(t / 4, this.y), this._play.graphics.lineTo(t / 2, t / 2 + this.y), this._play.graphics.lineTo(this.x, t / 2 + this.y), this._play.graphics.lineTo(t / 4, this.y), this._play.rotation = 90, this._play.x = this._play.width + this._play.width / 2 - 1, this._play.y = this._play.height / 2, this.addChild(this._play), this._stop = new l(), this._stop.graphics.lineStyle(1.25, 13421772, 1, !0, "none"), this._st