109 lines
4.0 KiB
JavaScript
109 lines
4.0 KiB
JavaScript
shadow$provide.module$node_modules$pixi_DOT_js$lib$scene$text$AbstractText = function(global, require, module, exports) {
|
|
var ObservablePoint = require("module$node_modules$pixi_DOT_js$lib$maths$point$ObservablePoint"), deprecation = require("module$node_modules$pixi_DOT_js$lib$utils$logging$deprecation");
|
|
global = require("module$node_modules$pixi_DOT_js$lib$scene$view$ViewContainer");
|
|
"use strict";
|
|
class AbstractText extends global.ViewContainer {
|
|
constructor(options, styleClass) {
|
|
const {text, resolution, style, anchor, width, height, roundPixels, ...rest} = options;
|
|
super({...rest});
|
|
this.batched = !0;
|
|
this._resolution = null;
|
|
this._didTextUpdate = this._autoResolution = !0;
|
|
this._styleClass = styleClass;
|
|
this.text = text ?? "";
|
|
this.style = style;
|
|
this.resolution = resolution ?? null;
|
|
this.allowChildren = !1;
|
|
this._anchor = new ObservablePoint.ObservablePoint({_onUpdate:() => {
|
|
this.onViewUpdate();
|
|
}});
|
|
anchor && (this.anchor = anchor);
|
|
this.roundPixels = roundPixels ?? !1;
|
|
void 0 !== width && (this.width = width);
|
|
void 0 !== height && (this.height = height);
|
|
}
|
|
get anchor() {
|
|
return this._anchor;
|
|
}
|
|
set anchor(value) {
|
|
"number" === typeof value ? this._anchor.set(value) : this._anchor.copyFrom(value);
|
|
}
|
|
set text(value) {
|
|
value = value.toString();
|
|
this._text !== value && (this._text = value, this.onViewUpdate());
|
|
}
|
|
get text() {
|
|
return this._text;
|
|
}
|
|
set resolution(value) {
|
|
this._autoResolution = null === value;
|
|
this._resolution = value;
|
|
this.onViewUpdate();
|
|
}
|
|
get resolution() {
|
|
return this._resolution;
|
|
}
|
|
get style() {
|
|
return this._style;
|
|
}
|
|
set style(style) {
|
|
style || (style = {});
|
|
this._style?.off("update", this.onViewUpdate, this);
|
|
this._style = style instanceof this._styleClass ? style : new this._styleClass(style);
|
|
this._style.on("update", this.onViewUpdate, this);
|
|
this.onViewUpdate();
|
|
}
|
|
get width() {
|
|
return Math.abs(this.scale.x) * this.bounds.width;
|
|
}
|
|
set width(value) {
|
|
this._setWidth(value, this.bounds.width);
|
|
}
|
|
get height() {
|
|
return Math.abs(this.scale.y) * this.bounds.height;
|
|
}
|
|
set height(value) {
|
|
this._setHeight(value, this.bounds.height);
|
|
}
|
|
getSize(out) {
|
|
out || (out = {});
|
|
out.width = Math.abs(this.scale.x) * this.bounds.width;
|
|
out.height = Math.abs(this.scale.y) * this.bounds.height;
|
|
return out;
|
|
}
|
|
setSize(value, height) {
|
|
"object" === typeof value ? (height = value.height ?? value.width, value = value.width) : height ?? (height = value);
|
|
void 0 !== value && this._setWidth(value, this.bounds.width);
|
|
void 0 !== height && this._setHeight(height, this.bounds.height);
|
|
}
|
|
containsPoint(point) {
|
|
var width = this.bounds.width;
|
|
const height = this.bounds.height, x1 = -width * this.anchor.x;
|
|
return point.x >= x1 && point.x <= x1 + width && (width = -height * this.anchor.y, point.y >= width && point.y <= width + height) ? !0 : !1;
|
|
}
|
|
onViewUpdate() {
|
|
this.didViewUpdate || (this._didTextUpdate = !0);
|
|
super.onViewUpdate();
|
|
}
|
|
destroy(options = !1) {
|
|
super.destroy(options);
|
|
this._anchor = this._bounds = this.owner = null;
|
|
("boolean" === typeof options ? options : options?.style) && this._style.destroy(options);
|
|
this._text = this._style = null;
|
|
}
|
|
get styleKey() {
|
|
return `${this._text}:${this._style.styleKey}:${this._resolution}`;
|
|
}
|
|
}
|
|
exports.AbstractText = AbstractText;
|
|
exports.ensureTextOptions = function(args, name) {
|
|
let options = args[0] ?? {};
|
|
if ("string" === typeof options || args[1]) {
|
|
deprecation.deprecation(deprecation.v8_0_0, `use new ${name}({ text: "hi!", style }) instead`), options = {text:options, style:args[1]};
|
|
}
|
|
return options;
|
|
};
|
|
};
|
|
|
|
//# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$scene$text$AbstractText.js.map
|