var t = require; var e = module; var i = exports; var n = (this && this.__awaiter) || function (t, n, r, l) { return new (r = r || Promise)(function (i, e) { function s(t) { try { a(l.next(t)); } catch (t) { e(t); } } function o(t) { try { a(l.throw(t)); } catch (t) { e(t); } } function a(t) { var e; t.done ? i(t.value) : ((e = t.value) instanceof r ? e : new r(function (t) { t(e); }) ).then(s, o); } a((l = l.apply(t, n || [])).next()); }); }; Object.defineProperty(i, "__esModule", {value: !0}), (i.ConfigManager = i.registerJSONConf = i.registerCfg = i.register = void 0); const o = t("App"), a = t("DataMsrBase"); function r(t, e, i) { (l.jsonFiles[t] = e), (l.jsonParseObjs[t] = i); } (i.register = function (t, e) { l.loadList[e] = t; }), (i.registerCfg = function (t, e) { l.loadList[e] = t; }), (i.registerJSONConf = r); class l { constructor() { (this.configs = {}), (this._serverInfo = null); } getConfig(t) { var e = this.configs[t]; if (e) return e; Log.error( `\u914d\u7f6e\u6587\u4ef6<${t}>\u4e0d\u5b58\u5728,\u53ef\u80fd\u662f\u52a0\u8f7d\u5931\u8d25,\u6216\u8005\u8fd8\u672a\u52a0\u8f7d` ); } getServerCacheInfo() { if (this._serverInfo) return this._serverInfo; let e = !1, t = cc.sys.localStorage.getItem("SERFER_INFO"); if (t) try { (this._serverInfo = JSON.parse(t)), this._serverInfo.game || ((this._serverInfo.game = o.default.ConfigManager.gameConf.serverInfos.game), (e = !0)), this._serverInfo.stat || ((this._serverInfo.stat = o.default.ConfigManager.gameConf.serverInfos.interface), (e = !0)); } catch (t) { (this._serverInfo = { game: o.default.ConfigManager.gameConf.serverInfos.game, stat: o.default.ConfigManager.gameConf.serverInfos.interface }), (e = !0); } else (this._serverInfo = { game: o.default.ConfigManager.gameConf.serverInfos.game, stat: o.default.ConfigManager.gameConf.serverInfos.interface }), (e = !0); return e && this.saveServerInfo(), this._serverInfo; } saveServerInfo() { cc.sys.localStorage.setItem("SERFER_INFO", JSON.stringify(this._serverInfo)); } loadAllConfig(o, a) { return n(this, void 0, void 0, function* () { let s = []; r("GameConf", "game_conf"), r("Server", "files/serverConfig"), r("StageSet", "files/StageSet"), r("FbMap", "files/FbMap"), r("MachineMenu", "files/MachineMenu"), r("AbilityInfo", "files/AbilityInfo"), r("Helper", "files/Helper"), r("RapidCat", "files/RapidCat"), r("Region", "files/Region"), r("Define", "Define"), r("RoleLang", "files/RoleLang"); for (const o in l.jsonFiles) s.push(this.loadJSONConf(o, l.jsonFiles[o])); for (const o in l.loadList) { let t = new l.loadList[o](); (this.configs[o] = t), s.push(t.load()); } if (o) { let e = 0, i = s.length; for (let t = 0; t < i; t++) s[t].then(() => { e++, o.call(a, e, s.length); }); } yield Promise.all(s), (this.gameConf = this.getConfig("GameConf")); }); } loadJSONConf(i, s) { return n(this, void 0, void 0, function* () { let t, e = "config"; return ( "test" == versionInfo.packVersion && ((e = "config_sub"), yield o.default.ResManager.loadBundle( "http://localhost:7556/mini-game/wechatgame/assets/config_sub" )), (t = yield o.default.ResManager.loadInBundle(e, a.CONFIG_FILE_DIR + s, cc.JsonAsset)), l.jsonParseObjs[i] ? (this.configs[i] = l.jsonParseObjs[i].parse(t.json)) : (this.configs[i] = t.json), this.configs[i] ); }); } } (i.ConfigManager = l), (l.loadList = Object.create(null)), (l.jsonFiles = Object.create(null)), (l.jsonParseObjs = Object.create(null));