"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getLuckymoneyService=exports.destroyLuckymoneyService=exports.default=void 0;var _request2=_interopRequireDefault(require("../utils/request")),_constant=require("../utils/constant"),_luckymoneyStore=require("../store/luckymoney-store"),_luckymoney=require("../utils/luckymoney");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0;--a){var o=this.tryEntries[a],i=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var u=r.call(o,"catchLoc"),s=r.call(o,"finallyLoc");if(u&&s){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),P(r),y}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;P(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:T(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),y}},e}function asyncGeneratorStep(e,t,r,n,a,o,i){try{var u=e[o](i),s=u.value}catch(e){return void r(e)}u.done?t(s):Promise.resolve(s).then(n,a)}function _asyncToGenerator(e){return function(){var t=this,r=arguments;return new Promise(function(n,a){var o=e.apply(t,r);function i(e){asyncGeneratorStep(o,n,a,i,u,"next",e)}function u(e){asyncGeneratorStep(o,n,a,i,u,"throw",e)}i(void 0)})}}function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function _objectSpread(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{}).store;_classCallCheck(this,e),this.luckymoneyStore=t||(0,_luckymoneyStore.getLuckymoneyStore)(),this.sdkInstance=null,this.activityId=null,this.token="",this.sdkUserOptions={},this.updateQueue=[],this.resultDispatchTimerMap=new Map,this.blockedRainRevealSet=new Set}var t,r,n,a,o,i,u,s,c,l,y,d,h;return _createClass(e,[{key:"setStore",value:function(e){e&&(this.luckymoneyStore=e)}},{key:"init",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.sdkInstance&&(this.sdkInstance=e.sdkInstance),(e.ActivityId||e.activityId)&&(this.activityId=e.ActivityId||e.activityId),e.token&&(this.token=e.token),(e.sdkUserOptions||e.options)&&(this.sdkUserOptions=e.sdkUserOptions||e.options)}},{key:"updateConfig",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(e.ActivityId||e.activityId)&&(this.activityId=e.ActivityId||e.activityId),e.token&&(this.token=e.token)}},{key:"destroy",value:function(){this.clearAllResultDispatchTimers(),this.updateQueue=[],this.blockedRainRevealSet.clear()}},{key:"getMainStore",value:function(){var e;return(null===(e=this.sdkInstance)||void 0===e?void 0:e.store)||null}},{key:"getDelayTime",value:function(e){return 1e3*(e&&e>0?e:DEFAULT_RESULT_DELAY)}},{key:"clearResultDispatchTimer",value:function(e){var t=this.resultDispatchTimerMap.get(e);t&&(clearTimeout(t),this.resultDispatchTimerMap.delete(e))}},{key:"clearAllResultDispatchTimers",value:function(){this.resultDispatchTimerMap.forEach(function(e){return clearTimeout(e)}),this.resultDispatchTimerMap.clear()}},{key:"markBlockedRainReveal",value:function(e){e&&this.blockedRainRevealSet.add(e)}},{key:"clearBlockedRainReveal",value:function(e){e&&this.blockedRainRevealSet.delete(e)}},{key:"isBlockedRainReveal",value:function(e){return Boolean(e&&this.blockedRainRevealSet.has(e))}},{key:"buildNoAnimationFlowMap",value:function(e,t){var r,n=_objectSpread({},(null===(r=this.luckymoneyStore.state)||void 0===r?void 0:r.noAnimationFlowMap)||{});return t?n[e]=t:delete n[e],n}},{key:"isNoAnimationFlowStage",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=(0,_luckymoney.getNoAnimationFlowStage)(e,this.luckymoneyStore.state);return Boolean(r&&t.includes(r))}},{key:"removeQueuedRevealResult",value:function(e){this.updateQueue=this.updateQueue.filter(function(t){return(null==t?void 0:t.redPacketID)!==e})}},{key:"clearNoAnimationFlowState",value:function(e){var t=this.luckymoneyStore.state||{},r=void 0===e;this.luckymoneyStore.set("noAnimationFlowMap",r?{}:this.buildNoAnimationFlowMap(e)),(r||t.activeNoAnimationRevealRedPacketID===e)&&this.luckymoneyStore.set("activeNoAnimationRevealRedPacketID",0)}},{key:"startNoAnimationOpening",value:function(e){var t,r=null===(t=(this.luckymoneyStore.state||{}).data)||void 0===t?void 0:t[e];r&&(this.luckymoneyStore.set("current",r),this.luckymoneyStore.set("noAnimationFlowMap",this.buildNoAnimationFlowMap(e,_luckymoney.NoAnimationFlowStage.WAITING_RESULT)))}},{key:"startRevealCountdown",value:function(e){var t,r=null===(t=(this.luckymoneyStore.state||{}).data)||void 0===t?void 0:t[e];r&&(this.luckymoneyStore.set("current",r),this.luckymoneyStore.set("withdrawModalDisplay",!1),this.luckymoneyStore.set("withdrawResultDisplay",!1),this.luckymoneyStore.set("attendModalDisplay",!1),this.luckymoneyStore.set("isLuckymoneyTel",!1),this.luckymoneyStore.set("noAnimationFlowMap",this.buildNoAnimationFlowMap(e,_luckymoney.NoAnimationFlowStage.COUNTDOWN)),this.luckymoneyStore.set("activeNoAnimationRevealRedPacketID",e))}},{key:"finishRevealCountdown",value:function(e){var t;if(this.isNoAnimationFlowStage(e,[_luckymoney.NoAnimationFlowStage.COUNTDOWN])){var r=this.luckymoneyStore.state||{},n=null===(t=r.data)||void 0===t?void 0:t[e];this.luckymoneyStore.set("current",n||_objectSpread({},_luckymoneyStore.defaultCurrent)),this.luckymoneyStore.set("withdrawModalDisplay",!0),this.luckymoneyStore.set("withdrawStep",0),this.luckymoneyStore.set("noAnimationFlowMap",this.buildNoAnimationFlowMap(e)),r.activeNoAnimationRevealRedPacketID===e&&this.luckymoneyStore.set("activeNoAnimationRevealRedPacketID",0)}}},{key:"queueRevealResult",value:function(e){var t,r=null===(t=(this.luckymoneyStore.state||{}).data)||void 0===t?void 0:t[e];r&&(this.removeQueuedRevealResult(e),this.updateQueue.push({type:"reveal_result",redPacketID:e,payload:{current:r,withdrawModalDisplay:!0,withdrawStep:0}}),this.luckymoneyStore.set("noAnimationFlowMap",this.buildNoAnimationFlowMap(e)))}},{key:"_request",value:function(e){var t,r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return null!==(t=this.sdkInstance)&&void 0!==t&&t.request?this.sdkInstance.request(e,n):(0,_request2.default)(e,_objectSpread(_objectSpread({},n),{},{header:_objectSpread(_objectSpread({},null!==(r=n.header)&&void 0!==r?r:{}),{},{jwttoken:this.token}),sdkUserOptions:this.sdkUserOptions}))}},{key:"getLuckymoneyList",value:(h=_asyncToGenerator(_regeneratorRuntime().mark(function e(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.activityId){e.next=2;break}return e.abrupt("return",{RedPacketList:[]});case 2:return e.abrupt("return",this._request(_constant.REQUEST_URL_MAP.LUCKYMONEY_POLLING,{method:"GET",data:{ActivityID:this.activityId}}));case 3:case"end":return e.stop()}},e,this)})),function(){return h.apply(this,arguments)})},{key:"_getLuckymoneyListWithUpdate",value:(d=_asyncToGenerator(_regeneratorRuntime().mark(function e(){var t,r;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getLuckymoneyList();case 2:return(t=e.sent)&&t.RedPacketList&&t.RedPacketList.length&&(r={},t.RedPacketList.forEach(function(e){r[e.RedPacketID]=e}),this.luckymoneyStore.set("data",r),this.updateUserStatusMap(t.RedPacketList)),e.abrupt("return",t);case 5:case"end":return e.stop()}},e,this)})),function(){return d.apply(this,arguments)})},{key:"luckymoneyPolling",value:(y=_asyncToGenerator(_regeneratorRuntime().mark(function e(){var t,r,n,a,o,i=this;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getLuckymoneyList();case 2:if(t=e.sent,console.log("[mini-sdk] luckymoney source=polling",t),(r=(null==t?void 0:t.RedPacketList)||[]).length){e.next=7;break}return e.abrupt("return",t);case 7:return n=this.luckymoneyStore.state.data||{},a=[],o=[],r.forEach(function(e){var t=null==e?void 0:e.RedPacketID;if(t){var r=n[t];r?r.RedPacketStatus!==e.RedPacketStatus&&i.handleImageTextLuckmoneyUpdate({RedPacketID:t,RedPacketStatus:e.RedPacketStatus,TTL:e.TTL}):(o.push({Context:[{ImageTextType:_constant.ImageTextTypes.LUCKMONEY,RedPacket:e}],CreateTime:Date.now(),IsDelete:!1,ImageTextId:-1}),a.push(e))}}),o.length&&this.addLuckymoneyFromImageText(o),a.length&&this.pushNewRedPacketsToImageText(a),e.abrupt("return",t);case 14:case"end":return e.stop()}},e,this)})),function(){return y.apply(this,arguments)})},{key:"getUserRedPacketStatus",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return this._request(_constant.REQUEST_URL_MAP.LUCKYMONEY_USER_STATUS,{method:"GET",data:{ActivityID:this.activityId},query:{OpenRedPacketIDList:[],SendRedPacketIDList:e}})}},{key:"updateUserStatusFromStore",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=this.luckymoneyStore.state.data||{},r=e.length?e.map(function(e){return t[e]}).filter(Boolean):Object.values(t);if(r.length)return this.updateUserStatusMap(r)}},{key:"updateUserStatusMap",value:(l=_asyncToGenerator(_regeneratorRuntime().mark(function e(){var t,r,n,a,o,i,u,s,c,l,y,d,h,p,k=arguments;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=k.length>0&&void 0!==k[0]?k[0]:[],n=!(k.length>1&&void 0!==k[1])||k[1],a=this.luckymoneyStore.state,o=_objectSpread({},a.userStatusMap),i=Array.isArray(r)?r:[r],u=[],i.forEach(function(e){[_luckymoney.RedPacketStatus.OPENING,_luckymoney.RedPacketStatus.SUCCESS].includes(e.RedPacketStatus)||u.push(e.RedPacketID)}),s=null===(t=this.getMainStore())||void 0===t?void 0:t.get("mainInfo.mode"),c=2===s,0!==u.length&&c&&n){e.next=13;break}return i.forEach(function(e){var t=(0,_luckymoney.getUserStatusByStatus)(e.RedPacketStatus,o[e.RedPacketID]);o[e.RedPacketID]=t}),this.luckymoneyStore.set("userStatusMap",o),e.abrupt("return");case 13:return e.prev=13,e.next=16,this._request(_constant.REQUEST_URL_MAP.LUCKYMONEY_USER_STATUS,{method:"GET",data:{ActivityID:this.activityId},query:{OpenRedPacketIDList:[],SendRedPacketIDList:u}});case 16:(l=e.sent)&&(y=l.OpenRedPacketMsg,d=void 0===y?[]:y,h=l.SendRedPacketMsg,p=void 0===h?[]:h,[].concat(_toConsumableArray(d),_toConsumableArray(p)).forEach(function(e){var t=e.RedPacketID,r=e.Status;o[t]=r}),this.luckymoneyStore.set("userStatusMap",o)),e.next=25;break;case 20:e.prev=20,e.t0=e.catch(13),console.error("updateUserStatusMap error",e.t0),i.forEach(function(e){var t=(0,_luckymoney.getUserStatusByStatus)(e.RedPacketStatus,o[e.RedPacketID]);o[e.RedPacketID]=t}),this.luckymoneyStore.set("userStatusMap",o);case 25:case"end":return e.stop()}},e,this,[[13,20]])})),function(){return l.apply(this,arguments)})},{key:"attendLuckymoney",value:(c=_asyncToGenerator(_regeneratorRuntime().mark(function e(t){var r,n,a,o,i,u;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=this.luckymoneyStore.state.data||{},n=r[t]){e.next=4;break}return e.abrupt("return");case 4:if(a=n.BarragePwd,o=this.luckymoneyStore.state,(i=_objectSpread({},o.userStatusMap))[t]!==_luckymoney.LuckyMoneyResult.ATTENDED){e.next=9;break}return e.abrupt("return");case 9:return e.prev=9,e.next=12,this._request(_constant.REQUEST_URL_MAP.LUCKYMONEY_ATTEND,{method:"POST",data:{ActivityID:this.activityId,RedPacketID:t,BarragePwd:a}});case 12:if((u=e.sent)&&[1,2,3].includes(u.Status)){e.next=15;break}throw new Error("Participation failed");case 15:return(0,_luckymoney.hasUndoAwardCondition)(u.UndoAwardCondition)?this.luckymoneyStore.set("current",_objectSpread(_objectSpread({},n),{},{UndoAwardCondition:u.UndoAwardCondition})):(i[t]=_luckymoney.LuckyMoneyResult.ATTENDED,this.luckymoneyStore.set("userStatusMap",i),this.luckymoneyStore.set("attendModalDisplay",!1)),e.abrupt("return",u);case 19:throw e.prev=19,e.t0=e.catch(9),console.error("attendLuckymoney error",e.t0),this.luckymoneyStore.set("attendModalDisplay",!1),e.t0;case 24:case"end":return e.stop()}},e,this,[[9,19]])})),function(e){return c.apply(this,arguments)})},{key:"getLuckymoneyResult",value:(s=_asyncToGenerator(_regeneratorRuntime().mark(function e(t){var r,n,a,o,i,u,s,c,l,y,d,h,p,k,m,v,f,S,R,_=arguments;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=_.length>2&&void 0!==_[2]&&_[2],n=_.length>1&&void 0!==_[1]&&_[1]?_constant.REQUEST_URL_MAP.LUCKYMONEY_WINNER_GET2:_constant.REQUEST_URL_MAP.LUCKYMONEY_WINNER_GET,e.prev=3,e.next=6,this._request(n,{method:"GET",data:{ActivityID:this.activityId,RedPacketID:t}});case 6:if(h=e.sent,p=this.luckymoneyStore.state.data[t]||this.luckymoneyStore.state.current||{},k={RedPacketID:t,result:(null==h||null===(a=h.OwnRedPacket)||void 0===a?void 0:a.Status)||_luckymoney.LuckyMoneyResult.ERROR,Amount:(null==h||null===(o=h.OwnRedPacket)||void 0===o?void 0:o.Amount)||0,RedPacketWinner:(null==h?void 0:h.RedPacketWinner)||[],ClaimText:(null==h||null===(i=h.OwnRedPacket)||void 0===i?void 0:i.ClaimText)||"",EnableCustomRedirect:(null==h||null===(u=h.OwnRedPacket)||void 0===u?void 0:u.EnableCustomRedirect)||!1,CustomRedirectUrl:(null==h||null===(s=h.OwnRedPacket)||void 0===s?void 0:s.CustomRedirectUrl)||"",EnableMiniApp:(null==h||null===(c=h.OwnRedPacket)||void 0===c?void 0:c.EnableMiniApp)||!1,MiniAppId:(null==h||null===(l=h.OwnRedPacket)||void 0===l?void 0:l.MiniAppId)||"",MiniAppRedirectUrl:(null==h||null===(y=h.OwnRedPacket)||void 0===y?void 0:y.MiniAppRedirectUrl)||"",RedPacketType:null==p?void 0:p.RedPacketType,RewardsPointsUnit:null==p?void 0:p.RewardsPointsUnit,HasNoLimit:null==p?void 0:p.HasNoLimit},m=this.luckymoneyStore.state,(v=_objectSpread({},m.RedPacketWinnerRecordMap))[t]=k,f=_objectSpread({},this.luckymoneyStore.state.userStatusMap||{}),void 0!==(null==h||null===(d=h.OwnRedPacket)||void 0===d?void 0:d.Status)&&(f[t]=h.OwnRedPacket.Status),S=this.luckymoneyStore.state||{},(0,_luckymoney.getRedPacketAnimationMode)(p)!==_luckymoney.RedPacketAnimationMode.NO_ANIMATION||r&&!(0,_luckymoney.isRedPacketInNoAnimationFlow)(t,S)){e.next=27;break}if(!this.isNoAnimationFlowStage(t,[_luckymoney.NoAnimationFlowStage.COUNTDOWN])){e.next=22;break}return this.luckymoneyStore.set("RedPacketWinnerRecordMap",v),this.luckymoneyStore.set("userStatusMap",f),e.abrupt("return",h);case 22:return this.luckymoneyStore.set("RedPacketWinnerRecordMap",v),this.luckymoneyStore.set("userStatusMap",f),R=this.luckymoneyStore.state||{},(0,_luckymoney.isRedPacketAnimationRunning)(R)?this.queueRevealResult(t):this.startRevealCountdown(t),e.abrupt("return",h);case 27:if(!this.isBlockedRainReveal(t)||r){e.next=33;break}return this.luckymoneyStore.set("RedPacketWinnerRecordMap",v),this.luckymoneyStore.set("userStatusMap",f),this.clearBlockedRainReveal(t),this.queueRevealResult(t),e.abrupt("return",h);case 33:if(S.rainingRedPacketID!==t){e.next=37;break}return this.luckymoneyStore.set("RedPacketWinnerRecordMap",v),this.luckymoneyStore.set("userStatusMap",f),e.abrupt("return",h);case 37:return this.luckymoneyStore.set("RedPacketWinnerRecordMap",v),this.luckymoneyStore.set("userStatusMap",f),this.luckymoneyStore.set("withdrawModalDisplay",!0),this.luckymoneyStore.set("withdrawStep",0),m.data[t]&&this.luckymoneyStore.set("current",m.data[t]),this.clearBlockedRainReveal(t),this.removeQueuedRevealResult(t),e.abrupt("return",h);case 47:e.prev=47,e.t0=e.catch(3),console.error("getLuckymoneyResult error",e.t0),this.clearNoAnimationFlowState(t);case 51:case"end":return e.stop()}},e,this,[[3,47]])})),function(e){return s.apply(this,arguments)})},{key:"getLuckymoneyResultWithLogin",value:(u=_asyncToGenerator(_regeneratorRuntime().mark(function e(t){var r,n,a,o=arguments;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=o.length>1&&void 0!==o[1]&&o[1],(n=this.luckymoneyStore.state.data[t]||this.luckymoneyStore.state.current||{})&&n.RedPacketID){e.next=4;break}return e.abrupt("return");case 4:return r&&this.luckymoneyStore.set("current",n),a=(null==n?void 0:n.RedPacketStatus)===_luckymoney.RedPacketStatus.FAILED,e.abrupt("return",this.getLuckymoneyResult(t,a,r));case 7:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"getWithdrawStatus",value:function(e){return this._request(_constant.REQUEST_URL_MAP.LUCKYMONEY_WITHDRAW_STATUS,{method:"GET",data:{ActivityID:this.activityId,RedPacketID:e}})}},{key:"getWithdrawResult",value:(i=_asyncToGenerator(_regeneratorRuntime().mark(function e(t){var r,n,a,o,i,u,s,c,l=this;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.getWechatAppInfo(),(r=this.luckymoneyStore.state).RedPacketWinnerRecordMap[t]){e.next=16;break}return e.prev=3,e.next=6,this._request(_constant.REQUEST_URL_MAP.LUCKYMONEY_WINNER_GET,{method:"GET",data:{ActivityID:this.activityId,RedPacketID:t}});case 6:o=e.sent,i={RedPacketID:t,result:(null==o||null===(n=o.OwnRedPacket)||void 0===n?void 0:n.Status)||_luckymoney.LuckyMoneyResult.ERROR,Amount:(null==o||null===(a=o.OwnRedPacket)||void 0===a?void 0:a.Amount)||0,RedPacketWinner:(null==o?void 0:o.RedPacketWinner)||[]},(u=_objectSpread({},r.RedPacketWinnerRecordMap))[t]=i,this.luckymoneyStore.set("RedPacketWinnerRecordMap",u),e.next=16;break;case 13:e.prev=13,e.t0=e.catch(3),console.error("getWithdrawResult winner info error",e.t0);case 16:return r.wechat||this.getWechatUserInfo().then(function(e){e&&e.WechatName&&l.luckymoneyStore.set("wechat",{WechatName:e.WechatName,WechatHeadImage:e.WechatHeadImage,UserId:e.OpenID})}),e.prev=17,e.next=20,this.getWithdrawStatus(t);case 20:s=e.sent,c=this.luckymoneyStore.state.data[t]||this.luckymoneyStore.state.current||{},s&&s.WithdrawalStatus&&parseInt(s.WithdrawalStatus)>_luckymoney.WithdrawStatus.INIT?(this.luckymoneyStore.set("current",_objectSpread(_objectSpread({},c),{},{RedPacketID:t},s)),this.luckymoneyStore.set("withdrawResultDisplay",!0),this.luckymoneyStore.set("withdrawModalDisplay",!1),this.luckymoneyStore.set("withdrawStep",0)):(this.luckymoneyStore.set("current",_objectSpread(_objectSpread({},c),{},{RedPacketID:t},s)),this.luckymoneyStore.set("withdrawResultDisplay",!1),this.luckymoneyStore.set("withdrawModalDisplay",!0),this.luckymoneyStore.set("withdrawStep",1)),e.next=28;break;case 25:e.prev=25,e.t1=e.catch(17),console.error("getWithdrawResult status error",e.t1);case 28:case"end":return e.stop()}},e,this,[[3,13],[17,25]])})),function(e){return i.apply(this,arguments)})},{key:"openLuckymoneyModal",value:(o=_asyncToGenerator(_regeneratorRuntime().mark(function e(t){var r,n,a,o=arguments;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=o.length>1&&void 0!==o[1]&&o[1],(0,_luckymoney.isLuckymoneyEnabled)()){e.next=4;break}return wx.showToast({title:"红包功能未开启",icon:"none"}),e.abrupt("return");case 4:if(n=this.luckymoneyStore.state.data[t]){e.next=9;break}return e.next=8,this._getLuckymoneyListWithUpdate();case 8:n=this.luckymoneyStore.state.data[t];case 9:if(n){e.next=12;break}return wx.showToast({title:"无效红包",icon:"none"}),e.abrupt("return");case 12:this.luckymoneyStore.set("current",n),a=(0,_luckymoney.getVisibleRedPacketStatus)(n,this.luckymoneyStore.state),e.t0=a,e.next=e.t0===_luckymoney.RedPacketStatus.OPENING?17:e.t0===_luckymoney.RedPacketStatus.INIT||e.t0===_luckymoney.RedPacketStatus.SENT?19:e.t0===_luckymoney.RedPacketStatus.RETRACT?21:e.t0===_luckymoney.RedPacketStatus.SUCCESS||e.t0===_luckymoney.RedPacketStatus.FAILED?23:25;break;case 17:return wx.showToast({title:"红包开启中",icon:"none"}),e.abrupt("return");case 19:return r?this.attendLuckymoney(t):this.showAttendModal(t),e.abrupt("return");case 21:return wx.showToast({title:"红包已撤回",icon:"none"}),e.abrupt("return");case 23:return this.getLuckymoneyResultWithLogin(t,!0),e.abrupt("return");case 25:wx.showToast({title:"异常红包状态: ".concat(a),icon:"none"});case 26:case"end":return e.stop()}},e,this)})),function(e){return o.apply(this,arguments)})},{key:"attendLuckymoneyWithToast",value:(a=_asyncToGenerator(_regeneratorRuntime().mark(function e(t){var r,n;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.luckymoneyStore.state.data[t]){e.next=3;break}return e.abrupt("return");case 3:if((this.luckymoneyStore.state.userStatusMap||{})[t]!==_luckymoney.LuckyMoneyResult.ATTENDED){e.next=7;break}return wx.showToast({title:"已参与",icon:"none"}),e.abrupt("return");case 7:return e.prev=7,e.next=10,this.attendLuckymoney(t);case 10:if((r=e.sent)&&[1,2,3].includes(r.Status)){e.next=13;break}throw new Error("Participation failed");case 13:if(!(0,_luckymoney.hasUndoAwardCondition)(r.UndoAwardCondition)){e.next=15;break}return e.abrupt("return");case 15:wx.showToast({title:1===r.Status?"已参与":"参与成功,请等待红包开启",icon:"none"}),e.next=22;break;case 18:e.prev=18,e.t0=e.catch(7),n="红包参与状态已变更"===(null===e.t0||void 0===e.t0?void 0:e.t0.message)?"参与失败,红包已开奖":"活动太火爆了,请稍后再试",wx.showToast({title:n,icon:"none"});case 22:case"end":return e.stop()}},e,this,[[7,18]])})),function(e){return a.apply(this,arguments)})},{key:"sendVerifyCode",value:(n=_asyncToGenerator(_regeneratorRuntime().mark(function e(t){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this._request("/live/platform/v1/activity/tel/verifycode/send",{method:"GET",data:{ActivityId:this.activityId,Tel:t}}));case 1:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"withdrawCash",value:(r=_asyncToGenerator(_regeneratorRuntime().mark(function e(t){var r,n,a;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.RedPacketID,n=t.PhoneNumber,a=t.VerifyCode,e.abrupt("return",this._request("/live/platform/v1/red/packet/user/withdrawal",{method:"POST",data:{ActivityId:this.activityId,RedPacketID:r,PhoneNumber:n,VerifyCode:a}}));case 2:case"end":return e.stop()}},e,this)})),function(e){return r.apply(this,arguments)})},{key:"getWechatUserInfo",value:function(){return this._request(_constant.REQUEST_URL_MAP.LUCKYMONEY_WECHAT_USER,{method:"GET",data:{ActivityID:this.activityId}})}},{key:"getWechatAppInfo",value:function(){var e=this;return this._request(_constant.REQUEST_URL_MAP.LUCKYMONEY_WECHAT_APPID,{method:"GET",data:{ActivityID:String(this.activityId||"")}}).then(function(t){return e.luckymoneyStore.set("hasWechatAppInfo",Boolean((null==t?void 0:t.PublicAppId)&&t.PublicKey)),t})}},{key:"addLuckymoneyFromImageText",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(Array.isArray(e)&&0!==e.length){var r=_objectSpread({},this.luckymoneyStore.state.data||{}),n={},a=!1;if(e.forEach(function(e){((null==e?void 0:e.Context)||[]).forEach(function(e){if((null==e?void 0:e.ImageTextType)===_constant.ImageTextTypes.LUCKMONEY){var t=null==e?void 0:e.RedPacket,o=null==t?void 0:t.RedPacketID;if(o){r[o]||(n[o]=t);var i=_objectSpread(_objectSpread({},r[o]||{}),t||{});JSON.stringify(r[o])!==JSON.stringify(i)&&(a=!0),r[o]=i}}})}),a&&this.luckymoneyStore.set("data",r),Object.keys(n).length>0){var o=Object.values(n),i=t;this.updateUserStatusMap(o,i)}}}},{key:"updateImageTextRedPacketStatus",value:function(e,t){var r=this.getMainStore();if(r){var n,a=r.get("imageTextInfo")||{},o=a.imageText||[];try{n=JSON.parse(JSON.stringify(o))}catch(e){return}var i=!1;n.forEach(function(r){((null==r?void 0:r.Context)||[]).forEach(function(r){if((null==r?void 0:r.ImageTextType)===_constant.ImageTextTypes.LUCKMONEY){var n=null==r?void 0:r.RedPacket;(null==n?void 0:n.RedPacketID)===e&&t>0&&(r.RedPacket=_objectSpread(_objectSpread({},n),{},{RedPacketStatus:t}),i=!0)}})}),i&&r.set("imageTextInfo",_objectSpread(_objectSpread({},a),{},{imageText:n}))}}},{key:"pushNewRedPacketsToImageText",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(null!==(e=this.sdkInstance)&&void 0!==e&&e.updateImageText&&Array.isArray(t)&&0!==t.length){var r=this.getMainStore(),n=(null==r?void 0:r.get("imageTextInfo.imageText"))||[],a=new Set;n.forEach(function(e){((null==e?void 0:e.Context)||[]).forEach(function(e){if((null==e?void 0:e.ImageTextType)===_constant.ImageTextTypes.LUCKMONEY){var t,r=null==e||null===(t=e.RedPacket)||void 0===t?void 0:t.RedPacketID;r&&a.add(r)}})});var o=t.filter(function(e){var t=null==e?void 0:e.RedPacketID;return t&&!a.has(t)});if(0!==o.length){var i=Date.now(),u=o.map(function(e,t){return{Context:[{ImageTextType:_constant.ImageTextTypes.LUCKMONEY,RedPacket:e}],CreateTime:1e3*(e.SendTime||0),IsDelete:!1,ImageTextId:-(i+t+1)}});this.sdkInstance.updateImageText({ImageTexts:u,DeleteImageTextIds:[]})}}}},{key:"handleImageTextLuckmoneyUpdate",value:function(e){var t;try{var r;t=null!=e&&null!==(r=e[0])&&void 0!==r&&r.SendMsg?JSON.parse(e[0].SendMsg):e}catch(e){return}var n=t||{},a=n.RedPacketID,o=n.RedPacketStatus,i=n.TTL;a&&o&&(this.updateOneLuckymoney(a,o,i),this.updateImageTextRedPacketStatus(a,o))}},{key:"updateOneLuckymoney",value:(t=_asyncToGenerator(_regeneratorRuntime().mark(function e(t,r,n){var a,o,i,u,s,c,l,y,d,h,p,k=this;return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(a=this.luckymoneyStore.state,o=_objectSpread({},a.data),i=o[t]){e.next=5;break}return e.abrupt("return");case 5:u=(0,_luckymoney.getRedPacketAnimationMode)(i),i.RedPacketStatus!==_luckymoney.RedPacketStatus.OPENING&&r===_luckymoney.RedPacketStatus.OPENING?u===_luckymoney.RedPacketAnimationMode.NO_ANIMATION?this.startNoAnimationOpening(t):this.startRain(t):[_luckymoney.RedPacketStatus.SUCCESS,_luckymoney.RedPacketStatus.FAILED].includes(i.RedPacketStatus)||r!==_luckymoney.RedPacketStatus.SUCCESS&&r!==_luckymoney.RedPacketStatus.FAILED?r===_luckymoney.RedPacketStatus.RETRACT&&(this.clearResultDispatchTimer(t),this.removeQueuedRevealResult(t),this.clearBlockedRainReveal(t),this.clearNoAnimationFlowState(t)):(this.clearResultDispatchTimer(t),s=r===_luckymoney.RedPacketStatus.FAILED,u===_luckymoney.RedPacketAnimationMode.NO_ANIMATION?(c=setTimeout(function(){k.resultDispatchTimerMap.delete(t),k.getLuckymoneyResult(t,s)},this.getDelayTime(n)),this.resultDispatchTimerMap.set(t,c)):(l=Math.random()*this.getDelayTime(n),y=setTimeout(function(){k.resultDispatchTimerMap.delete(t),k.getLuckymoneyResult(t,s)},l),this.resultDispatchTimerMap.set(t,y))),(0,_luckymoney.validateRedPacketStatusTransition)(i.RedPacketStatus,r)&&(d=_objectSpread(_objectSpread({},i),{},{RedPacketStatus:r>0?r:i.RedPacketStatus}),o[t]=d,this.luckymoneyStore.set("data",o),(null==(h=this.luckymoneyStore.state.current)?void 0:h.RedPacketID)===t&&this.luckymoneyStore.set("current",d),this.luckymoneyStore.state.attendModalDisplay&&(null==h?void 0:h.RedPacketID)===t&&![_luckymoney.RedPacketStatus.INIT,_luckymoney.RedPacketStatus.SENT].includes(d.RedPacketStatus)&&this.closeAttendModal()),(p=o[t]||i)&&![_luckymoney.RedPacketStatus.OPENING,_luckymoney.RedPacketStatus.SUCCESS,_luckymoney.RedPacketStatus.FAILED].includes(r)&&this.updateUserStatusMap([p]);case 10:case"end":return e.stop()}},e,this)})),function(e,r,n){return t.apply(this,arguments)})},{key:"startRain",value:function(e){var t=this.luckymoneyStore.state,r=t.data[e];r&&((0,_luckymoney.isRedPacketAnimationRunning)(t)?this.markBlockedRainReveal(e):(this.clearBlockedRainReveal(e),this.luckymoneyStore.set("withdrawModalDisplay",!1),this.luckymoneyStore.set("withdrawResultDisplay",!1),this.luckymoneyStore.set("attendModalDisplay",!1),this.luckymoneyStore.set("isLuckymoneyTel",!1),this.luckymoneyStore.set("rainingRedPacketID",e),this.luckymoneyStore.set("current",r)))}},{key:"stopRain",value:function(e,t){var r=this.luckymoneyStore.state,n=r.data[e];if(this.luckymoneyStore.set("rainingRedPacketID",0),r.RedPacketWinnerRecordMap[e]){var a={current:n,withdrawModalDisplay:!0,withdrawStep:0},o=r.attendModalDisplay,i=r.withdrawModalDisplay,u=r.withdrawResultDisplay;o||i||u?this.updateQueue.push({type:"reveal_result",redPacketID:e,payload:a}):(this.luckymoneyStore.set("withdrawModalDisplay",!0),this.luckymoneyStore.set("withdrawStep",0),n&&this.luckymoneyStore.set("current",n))}else this.checkQueue()}},{key:"checkQueue",value:function(){var e=this;this.updateQueue.length>0&&setTimeout(function(){var t=e.updateQueue.shift();null!=t&&t.payload&&Object.keys(t.payload).forEach(function(r){e.luckymoneyStore.set(r,t.payload[r])})},500)}},{key:"closeWithdraw",value:function(){this.clearNoAnimationFlowState(),this.luckymoneyStore.set("withdrawModalDisplay",!1),this.luckymoneyStore.set("withdrawResultDisplay",!1),this.luckymoneyStore.set("attendModalDisplay",!1),this.luckymoneyStore.set("current",_objectSpread({},_luckymoneyStore.defaultCurrent)),this.checkQueue()}},{key:"closeWithdrawModal",value:function(){this.luckymoneyStore.set("withdrawModalDisplay",!1),this.checkQueue()}},{key:"closeWithdrawResult",value:function(){this.luckymoneyStore.set("withdrawResultDisplay",!1),this.checkQueue()}},{key:"closeAttendModal",value:function(){this.luckymoneyStore.set("attendModalDisplay",!1),this.checkQueue()}},{key:"showAttendModal",value:function(e){var t=this.luckymoneyStore.state.data[e];t&&(this.luckymoneyStore.set("current",t),this.luckymoneyStore.set("attendModalDisplay",!0),this.luckymoneyStore.set("withdrawModalDisplay",!1),this.luckymoneyStore.set("withdrawResultDisplay",!1))}}]),e}(),serviceMap=new Map,getLuckymoneyService=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(serviceMap.has(e))null!=t&&t.store&&serviceMap.get(e).setStore(t.store);else{var r=t.store||(0,_luckymoneyStore.getLuckymoneyStore)(e);serviceMap.set(e,new LuckymoneyService(_objectSpread(_objectSpread({},t),{},{store:r})))}return serviceMap.get(e)};exports.getLuckymoneyService=getLuckymoneyService;var destroyLuckymoneyService=function(e){var t,r=serviceMap.get(e);null==r||null===(t=r.destroy)||void 0===t||t.call(r),serviceMap.delete(e)};exports.destroyLuckymoneyService=destroyLuckymoneyService;var _default=getLuckymoneyService();exports.default=_default;