Files
chuanqi-qycq-web/js/default.thm_a7013eeb.js

411 lines
16 KiB
JavaScript
Raw Normal View History

2025-07-10 23:55:26 +08:00
var __reflect = (this && this.__reflect) || function (p, c, t) {
p.__class__ = c, t ? t.push(c) : t = [c], p.__types__ = p.__types__ ? t.concat(p.__types__) : t;
};
var __extends = this && this.__extends || function __extends(t, e) {
function r() {
this.constructor = t;
}
for (var i in e)
e.hasOwnProperty(i) && (t[i] = e[i]);
r.prototype = e.prototype, t.prototype = new r();
};
var JSONParseClass = /** @class */ (function () {
function JSONParseClass() {
this.skinClass = {};
this.euiNormalizeNames = {
"$eBL": "eui.BitmapLabel",
"$eB": "eui.Button",
"$eCB": "eui.CheckBox",
"$eC": "eui.Component",
"$eDG": "eui.DataGroup",
"$eET": "eui.EditableText",
"$eG": "eui.Group",
"$eHL": "eui.HorizontalLayout",
"$eHSB": "eui.HScrollBar",
"$eHS": "eui.HSlider",
"$eI": "eui.Image",
"$eL": "eui.Label",
"$eLs": "eui.List",
"$eP": "eui.Panel",
"$ePB": "eui.ProgressBar",
"$eRB": "eui.RadioButton",
"$eRBG": "eui.RadioButtonGroup",
"$eRa": "eui.Range",
"$eR": "eui.Rect",
"$eRAl": "eui.RowAlign",
"$eS": "eui.Scroller",
"$eT": "eui.TabBar",
"$eTI": "eui.TextInput",
"$eTL": "eui.TileLayout",
"$eTB": "eui.ToggleButton",
"$eTS": "eui.ToggleSwitch",
"$eVL": "eui.VerticalLayout",
"$eV": "eui.ViewStack",
"$eVSB": "eui.VScrollBar",
"$eVS": "eui.VSlider",
"$eSk": "eui.Skin"
};
}
JSONParseClass.prototype.setData = function (data) {
if (!this.json) {
this.json = data;
this.parseSkinMap(this.json);
}
else {
this.parseSkinMap(data);
for (var a in data) {
this.json[a] = data[a];
}
}
};
JSONParseClass.prototype.generateSkinClass = function (skinData, className, superName) {
if (!skinData)
return null;
var paths = superName.split(".");
var target = window;
for (var _i = 0, paths_1 = paths; _i < paths_1.length; _i++) {
var p = paths_1[_i];
target = target[p];
}
function __SkinClass() {
target.call(this);
window["JSONParseClass"].create(className, this);
}
__extends(__SkinClass, target);
__reflect(__SkinClass, className, [superName]);
return __SkinClass;
};
JSONParseClass.prototype.parseSkinMap = function (skinMap) {
var skinResult = {};
for (var exml in skinMap) {
var skinData = skinMap[exml];
if (!skinData)
continue;
var paths = exml.split(".");
var target = window;
for (var _i = 0, paths_2 = paths; _i < paths_2.length; _i++) {
var p = paths_2[_i];
var parent = target;
if (p !== paths[paths.length - 1]) {
target = target[p];
if (target == undefined) {
target = {};
parent[p] = target;
}
}
}
var superName = this.euiNormalizeNames[skinData["$sC"]] == undefined ? skinData["$sC"] : this.euiNormalizeNames[skinData["$sC"]];
skinResult[exml] = target[paths[paths.length - 1]] = this.generateSkinClass(skinData, exml, superName);
if (skinMap[exml]["$path"]) {
generateEUI2["paths"][skinMap[exml]["$path"]] = skinResult[exml];
}
}
return skinResult;
};
JSONParseClass.prototype.create = function (skinName, target) {
if (!this.json) {
console.log("Missing json defined by eui resource, please modify the theme adapter");
console.log("缺少eui资源定义的json请修改主题适配器");
return;
}
//console.log('skinName=' + skinName);
/** 先解析对应名字的的 */
this.target = target;
this.skinName = skinName;
this.skinClass = this.json[skinName];
//开始生成
this.applyBase();
this.applySkinParts();
this.applyState();
this.applyBinding();
//skinParts 只能最后赋值在comp中引用问题
if (this.skinClass["$sP"] == undefined)
this.target["skinParts"] = [];
else
this.target["skinParts"] = this.skinClass["$sP"];
};
JSONParseClass.prototype.applySkinParts = function () {
if (this.skinClass["$sP"] == undefined)
return;
for (var _i = 0, _a = this.skinClass["$sP"]; _i < _a.length; _i++) {
var component = _a[_i];
if (this.target[component] == undefined)
this.createElementContentOrViewport(component);
}
};
JSONParseClass.prototype.applyBase = function () {
if (this.skinClass["$bs"] == undefined)
return;
this.addCommonProperty("$bs", this.target);
};
JSONParseClass.prototype.createElementContentOrViewport = function (component) {
var result;
var typeStr = this.getNormalizeEuiName(this.skinClass[component].$t);
if (typeStr == "egret.tween.TweenGroup") {
result = this.creatsEgretTweenGroup(component);
}
else {
/** 有可能对象是从外面一定义的皮肤 */
var type_1 = egret.getDefinitionByName(typeStr);
this.$createNewObject(function () {
result = new type_1();
});
this.addCommonProperty(component, result);
}
this.target[component] = result;
return result;
};
/**
* 生成单位有可能会跳出当前皮肤所以统一维护target和skin
* @param callback 创建对象的真实逻辑
*/
JSONParseClass.prototype.$createNewObject = function (callback) {
var skinName = this.skinName;
var target = this.target;
callback();
this.skinName = skinName;
this.skinClass = this.json[this.skinName];
this.target = target;
};
/**
* 生成对应的缓动组
* @param component 名字索引
*/
JSONParseClass.prototype.creatsEgretTweenGroup = function (component) {
var result = this.createTypeObject(component);
var items = [];
for (var _i = 0, _a = this.skinClass[component]["items"]; _i < _a.length; _i++) {
var item = _a[_i];
items.push(this.createEgretTweenItem(item));
}
result["items"] = items;
return result;
};
/**
* 生成对应的缓动单位
* @param tweenItem 名字索引
*/
JSONParseClass.prototype.createEgretTweenItem = function (tweenItem) {
var _this = this;
var result = this.createTypeObject(tweenItem);
var paths = [];
var _loop_1 = function (prop) {
var property = this_1.skinClass[tweenItem][prop];
if (prop == "$t" || prop == "target") {
}
else if (prop == "paths") {
for (var _i = 0, property_1 = property; _i < property_1.length; _i++) {
var path = property_1[_i];
paths.push(this_1.createSetOrTo(path));
}
}
else if (prop == "target") {
this_1.$createNewObject(function () {
result[prop] = _this.createElementContentOrViewport(property);
_this.target[property] = result[prop];
});
}
else {
result[prop] = property;
}
};
var this_1 = this;
for (var prop in this.skinClass[tweenItem]) {
_loop_1(prop);
}
result["paths"] = paths;
this.target[tweenItem] = result;
return result;
};
JSONParseClass.prototype.createSetOrTo = function (key) {
var result = this.createTypeObject(key);
for (var prop in this.skinClass[key]) {
var property = this.skinClass[key][prop];
if (prop == "$t" || prop == "target") {
}
else if (prop == "props") {
result[prop] = this.createObject(property);
this.target[property] = result[prop];
}
else {
result[prop] = property;
}
}
return result;
};
JSONParseClass.prototype.createObject = function (name) {
var result = {};
for (var prop in this.skinClass[name]) {
if (prop == "$t" || prop == "target") {
}
else {
result[prop] = this.skinClass[name][prop];
}
}
return result;
};
JSONParseClass.prototype.addCommonProperty = function (componentName, target) {
var eleC;
var sId;
var _loop_2 = function (prop) {
var property = this_2.skinClass[componentName][prop];
if (prop == "$t") {
}
else if (prop == "layout") {
target[prop] = this_2.createLayout(property);
}
else if (prop == "$eleC") {
eleC = property;
}
else if (prop == "$sId") {
sId = property;
}
else if (prop == "scale9Grid") {
target[prop] = this_2.getScale9Grid(property);
}
else if (prop == "skinName") {
this_2.$createNewObject(function () {
target[prop] = property;
});
}
else if (prop == "itemRendererSkinName") {
this_2.$createNewObject(function () {
var dirPath = property.split(".");
var t = window;
for (var _i = 0, dirPath_1 = dirPath; _i < dirPath_1.length; _i++) {
var p = dirPath_1[_i];
t = t[p];
}
target[prop] = t;
});
}
else if (prop == "itemRenderer") {
target[prop] = egret.getDefinitionByName(property);
}
else if (prop == "dataProvider") {
target[prop] = this_2.createDataProvider(property);
}
else if (prop == "viewport") {
target[prop] = this_2.createElementContentOrViewport(property);
}
else {
target[prop] = property;
}
};
var this_2 = this;
for (var prop in this.skinClass[componentName]) {
_loop_2(prop);
}
var ele = [];
if (eleC && eleC.length > 0) {
for (var _i = 0, eleC_1 = eleC; _i < eleC_1.length; _i++) {
var element = eleC_1[_i];
var e = this.createElementContentOrViewport(element);
ele.push(e);
}
}
target["elementsContent"] = ele;
if (sId && sId.length > 0) {
for (var _a = 0, sId_1 = sId; _a < sId_1.length; _a++) {
var element = sId_1[_a];
this.createElementContentOrViewport(element);
}
}
return target;
};
JSONParseClass.prototype.createLayout = function (componentName) {
var result = this.createTypeObject(componentName);
var component = this.skinClass[componentName];
for (var property in component) {
if (property !== "$t") {
result[property] = component[property];
}
}
this.target[componentName] = result;
return result;
};
JSONParseClass.prototype.applyState = function () {
if (this.skinClass["$s"] == undefined)
return;
var states = [];
for (var state in this.skinClass["$s"]) {
var setProperty = [];
var tempState = this.skinClass["$s"][state];
if (tempState["$saI"]) {
for (var _i = 0, _a = tempState["$saI"]; _i < _a.length; _i++) {
var property = _a[_i];
setProperty.push(new eui.AddItems(property["target"], property["property"], property["position"], property["relativeTo"]));
}
}
if (tempState["$ssP"]) {
for (var _b = 0, _c = tempState["$ssP"]; _b < _c.length; _b++) {
var property = _c[_b];
if (property["name"]) {
var value = property["value"];
if (property["name"] == "scale9Grid") {
value = this.getScale9Grid(property["value"]);
}
setProperty.push(new eui.SetProperty(property["target"], property["name"], value));
}
else {
setProperty.push(new eui.SetStateProperty(this.target, property["templates"], property["chainIndex"], this.target[property["target"]], property["property"]));
}
}
}
states.push(new eui.State(state, setProperty));
}
this.target["states"] = states;
};
JSONParseClass.prototype.applyBinding = function () {
if (this.skinClass["$b"] == undefined)
return;
for (var _i = 0, _a = this.skinClass["$b"]; _i < _a.length; _i++) {
var bindingDate = _a[_i];
if (bindingDate["$bc"] !== undefined) {
eui.Binding.$bindProperties(this.target, bindingDate["$bd"], bindingDate["$bc"], this.target[bindingDate["$bt"]], bindingDate["$bp"]);
}
else {
eui.Binding.bindProperty(this.target, bindingDate["$bd"][0].split("."), this.target[bindingDate["$bt"]], bindingDate["$bp"]);
}
}
};
JSONParseClass.prototype.createDataProvider = function (component) {
if (component == "")
return undefined;
var result = this.createTypeObject(component);
var source = [];
for (var _i = 0, _a = this.skinClass[component]["source"]; _i < _a.length; _i++) {
var sour = _a[_i];
source.push(this.createItemRender(sour));
}
result["source"] = source;
return result;
};
JSONParseClass.prototype.createItemRender = function (itemName) {
var result = this.createTypeObject(itemName);
for (var property in this.skinClass[itemName]) {
if (property != "$t") {
result[property] = this.skinClass[itemName][property];
}
}
return result;
};
JSONParseClass.prototype.getNormalizeEuiName = function (str) {
return this.euiNormalizeNames[str] ? this.euiNormalizeNames[str] : str;
};
JSONParseClass.prototype.createTypeObject = function (component) {
var typestr = this.getNormalizeEuiName(this.skinClass[component].$t);
var type = egret.getDefinitionByName(typestr);
return new type();
};
JSONParseClass.prototype.getScale9Grid = function (data) {
var datalist = data.split(",");
return new egret.Rectangle(parseFloat(datalist[0]), parseFloat(datalist[1]), parseFloat(datalist[2]), parseFloat(datalist[3]));
};
return JSONParseClass;
}());
window["JSONParseClass"] = new JSONParseClass();
window.generateEUI2 = window.generateEUI2||{};
generateEUI2.paths = generateEUI2.paths||{};
generateEUI2.styles = undefined;
generateEUI2.skins = {"eui.Button":"resource/eui_skins/ButtonSkin.exml","eui.CheckBox":"resource/eui_skins/CheckBoxSkin.exml","eui.HScrollBar":"resource/eui_skins/HScrollBarSkin.exml","eui.HSlider":"resource/eui_skins/HSliderSkin.exml","eui.Panel":"resource/eui_skins/PanelSkin.exml","eui.TextInput":"resource/eui_skins/TextInputSkin.exml","eui.ProgressBar":"resource/eui_skins/ProgressBarSkin.exml","eui.RadioButton":"resource/eui_skins/RadioButtonSkin.exml","eui.Scroller":"resource/eui_skins/ScrollerSkin.exml","eui.ToggleSwitch":"resource/eui_skins/ToggleSwitchSkin.exml","eui.VScrollBar":"resource/eui_skins/VScrollBarSkin.exml","eui.VSlider":"resource/eui_skins/VSliderSkin.exml","eui.ItemRenderer":"resource/eui_skins/ItemRendererSkin.exml","app.RuleTipsButton":"resource/eui_skins/web/common/RuleButton.exml","app.RedDotControl":"resource/eui_skins/web/common/RedDotSkin.exml"};