Files
ruo-shan-cloud-pharmacy/miniprogram/package-live/volc-mini-sdk/services/thumb-service.js
T
陈誉午 994b267f5c feat: 电子药箱小程序 - 4Tab药品管理
- 电子药箱: 药品库存管理 + 手动录入 + 今日用药打卡
- 药品百科: 搜索 + 分类筛选 + 20种药品静态数据
- 惠教中心: 4条药品使用指南课程
- 我的: 家庭成员信息管理
- 自定义TabBar + navigation-bar组件
- SVG药品分类插图
2026-07-29 11:20:52 +08:00

1 line
5.4 KiB
JavaScript

"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _eventEmitter=_interopRequireDefault(require("../lib/eventEmitter")),_request=_interopRequireDefault(require("../utils/request")),_constant=require("../utils/constant"),_featureProcess=require("../utils/feature-process");function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _typeof(t){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_typeof(t)}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _defineProperties(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,_toPropertyKey(n.key),n)}}function _createClass(t,e,i){return e&&_defineProperties(t.prototype,e),i&&_defineProperties(t,i),Object.defineProperty(t,"prototype",{writable:!1}),t}function _toPropertyKey(t){var e=_toPrimitive(t,"string");return"symbol"===_typeof(e)?e:String(e)}function _toPrimitive(t,e){if("object"!==_typeof(t)||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,e||"default");if("object"!==_typeof(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}var ThumbService=function(){function t(){_classCallCheck(this,t),this._emitter=new _eventEmitter.default,this.config={isThumbUpEnable:!0,thumbUpEffectUrls:[]},this.totalCount=0,this.bufferCount=0,this.timer=null,this.REPORT_INTERVAL=2e3}return _createClass(t,[{key:"on",value:function(t,e,i){this._emitter.on(t,e,i)}},{key:"off",value:function(t,e){this._emitter.off(t,e)}},{key:"emit",value:function(){this._emitter.emit.apply(this._emitter,arguments)}},{key:"init",value:function(t){t&&(t.sdkInstance&&(this.sdkInstance=t.sdkInstance),t.ActivityId&&(this.activityId&&this.activityId!==t.ActivityId&&(this.totalCount=0,this.bufferCount=0),this.activityId=t.ActivityId),t.token&&(this.token=t.token),t.sdkUserOptions&&(this.sdkUserOptions=t.sdkUserOptions),this.updateConfig(t)),this._emitCountChange(this.totalCount)}},{key:"_addHttpsProtocol",value:function(t){return"string"!=typeof t?t:t.startsWith("//")?"https:"+t:t}},{key:"_emitCountChange",value:function(t){var e,i;this.emit("onCountChange",t),this.sdkInstance&&null!==(e=this.sdkInstance.EVENTS)&&void 0!==e&&null!==(i=e.thumb)&&void 0!==i&&i.countChange&&this.sdkInstance.emit(this.sdkInstance.EVENTS.thumb.countChange,{count:t})}},{key:"updateConfig",value:function(t){var e=this;if(t){var i=t.ThumbUpConfig||t;void 0!==i.IsThumbUpEnable?this.config.isThumbUpEnable=1===i.IsThumbUpEnable:void 0!==i.isThumbUpEnable&&(this.config.isThumbUpEnable=i.isThumbUpEnable),void 0!==i.IsThumbUpNumberEnable&&(this.config.isThumbUpNumberEnable=1===i.IsThumbUpNumberEnable);var n=this.totalCount;void 0!==i.ShowThumbUpNumber?n=i.ShowThumbUpNumber:void 0!==i.likeCount&&(n=i.likeCount),n>this.totalCount&&(this.totalCount=n,this._emitCountChange(this.totalCount)),void 0!==i.ThumbUpVersion&&(this.config.thumbUpVersion=i.ThumbUpVersion),void 0!==i.ThumbUpUrl?this.config.thumbUpUrl=this._addHttpsProtocol(i.ThumbUpUrl):void 0!==i.thumbUpUrl&&(this.config.thumbUpUrl=this._addHttpsProtocol(i.thumbUpUrl)),void 0!==i.ThumbUpEffectUrls?this.config.thumbUpEffectUrls=i.ThumbUpEffectUrls.map(function(t){return e._addHttpsProtocol(t)}):void 0!==t.ThumbUpEffectUrls?this.config.thumbUpEffectUrls=t.ThumbUpEffectUrls.map(function(t){return e._addHttpsProtocol(t)}):void 0!==i.thumbUpEffectUrls&&(this.config.thumbUpEffectUrls=i.thumbUpEffectUrls.map(function(t){return e._addHttpsProtocol(t)})),this.emit("onConfigChange",this.config)}}},{key:"addLike",value:function(){var t,e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return!!this.config.isThumbUpEnable&&!(0,_featureProcess.lockFeatureProcess)(this.sdkInstance,_featureProcess.LockFeatureMap.Thumb)&&(this.totalCount+=i,this.bufferCount+=i,this.sdkInstance&&null!==(t=this.sdkInstance.EVENTS)&&void 0!==t&&null!==(e=t.thumb)&&void 0!==e&&e.click&&this.sdkInstance.emit(this.sdkInstance.EVENTS.thumb.click,{count:i}),this._emitCountChange(this.totalCount),this.scheduleReport(),!0)}},{key:"scheduleReport",value:function(){var t=this;this.timer&&clearTimeout(this.timer),this.timer=setTimeout(function(){t.report()},this.REPORT_INTERVAL)}},{key:"report",value:function(){var t=this;if(this.bufferCount>0&&this.activityId){var e=this.bufferCount;this.bufferCount=0,this.timer=null,(0,_request.default)(_constant.REQUEST_URL_MAP.THUMB,{method:"POST",data:{ActivityId:this.activityId,IncrThumbNumber:e},header:{jwttoken:this.token},sdkUserOptions:this.sdkUserOptions}).then(function(){var i,n;null===(i=t.sdkInstance)||void 0===i||null===(n=i.reportBusiness)||void 0===n||n.call(i,"click_thumb_up",{Count:e})}).catch(function(t){console.error("ThumbService: report failed",t)})}}},{key:"sync",value:function(t){if(t){void 0===t.IsThumbUpEnable&&void 0===t.ThumbUpVersion||this.updateConfig(t);var e=void 0!==t.likeCount?t.likeCount:t.ShowThumbUpNumber;void 0!==e&&e>this.totalCount&&(this.totalCount=e,this.config.showThumbUpNumber=this.totalCount,this._emitCountChange(this.totalCount))}}}],[{key:"getInstance",value:function(){return t.instance||(t.instance=new t),t.instance}}]),t}(),_default=ThumbService.getInstance();exports.default=_default;