diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0cb496e..2c866fc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,25 @@
+
+## 0.0.9(2022-4-15)
+1. 优化
+ - 请求 `A/B` 实验的用户 `ID` 兼容 `loginWithKey` 登录的用户 `ID`
+
+## 0.0.8(2022-3-18)
+
+1. 新增
+ - 新增支付宝 `A/B Testing` (需要支付宝 SDK v1.2.0 及以上版本)
+
+
+
+## 0.0.7(2022-2-25)
+
+1. 新增
+ - 支持本地数据存储加密
+
+## 0.0.6(2022-2-21)
+
+1. 新增
+ - `A/B Testing` 支持延迟初始化
+
## 0.0.5(2022-2-9)
1. 修复
diff --git a/README.md b/README.md
index 9878cb4..2d0f07e 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-
+
## 神策简介
@@ -10,33 +10,28 @@
A/B Testing SDK 是一款用于 A/B 测试的 SDK。
-## 集成文档
-
-请参考神策官网 [集成文档](https://manual.sensorsdata.cn/sa/latest/tech_ab_testing-17569307.html)。
+## 神策埋点 SDK 官网
+如需了解神策埋点 SDK 的更多商业授权信息,请访问[神策埋点 SDK 官网](https://jssdk.debugbox.sensorsdata.cn/)获取更多详细信息。
-## 讨论
+## 联系我们
+若您有商业合作或产品集成需求,请通过下面的渠道联系我们获取专业服务与支持。
-| 扫码加入神策数据开源社区 QQ 群
群号:785122381 | 扫码加入神策数据开源社区微信群 |
+| 加微信号:skycode008,或扫码添加联系人
| 扫码关注「神策埋点 SDK」公众号  |
| ------ | ------ |
-| |  |
-
-## 公众号
-| 扫码关注
神策数据开源社区 | 扫码关注
神策数据开源社区服务号 |
-| ------ | ------ |
-| |  |
+## 集成文档
+请参考神策官网 [集成文档](https://manual.sensorsdata.cn/abtesting/latest/a-b-testing-50987201.html)。
## 新书推荐
-| 《数据驱动:从方法到实践》 | 《Android 全埋点解决方案》 | 《iOS 全埋点解决方案》
+| [《数据驱动:从方法到实践》](https://item.jd.com/12322322.html) | [《Android 全埋点解决方案》](https://item.jd.com/12574672.html) | [《iOS 全埋点解决方案》](https://item.jd.com/12867068.html)
| ------ | ------ | ------ |
-| [](https://item.jd.com/12322322.html) | [](https://item.jd.com/12574672.html) | [](https://item.jd.com/12867068.html)
## License
-Copyright 2015-2021 Sensors Data Inc.
+Copyright 2015-2024 Sensors Data Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/alipay/abtest.cmd.min.js b/alipay/abtest.cmd.min.js
new file mode 100644
index 0000000..37445e8
--- /dev/null
+++ b/alipay/abtest.cmd.min.js
@@ -0,0 +1 @@
+"use strict";var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(t){return each(Array.prototype.slice.call(arguments,1),function(e){for(var r in e)void 0!==e[r]&&(t[r]=e[r])}),t}function each(t,e,r){var a=Array.prototype.forEach,i={};if(null==t)return!1;if(a&&t.forEach===a)t.forEach(e,r);else if(t.length===+t.length){for(var n=0,s=t.length;n-1?e.system.split(" ")[1]:e.system}catch(t){log("get system fails")}}function getAppId(){var t;if(my.getAccountInfoSync&&(t=my.getAppIdSync()),isObject(t))return t.appId||""}_.getSystemInfo=getSystemInfo,_.getAppId=getAppId;var para={url:"",project_key:"",retry_times:3,timeout_milliseconds:3e3,update_interval:6e5},info={scene:"",lib_version:"0.0.9",platform:"AlipayMini",storage_key:"sensorsdata2015_ABTest",lib_plugin_name:"alipaymini_abtesting",platform_obj:my},props={$manufacturer:"",$model:"",$os:"",$os_version:""},state={inited:!1,fetchInterval:null,test_list:{},trigger_list:[]};function mixinConfig(t){t.para=para,t.info=info,t.state=state,t.props=props}function mixinStore(t){var e=t.info.platform_obj;if(!e||isEmptyObject(e))return!1;t.store={getStorage:function(t){var r="";try{a=r=e.getStorageSync({key:t}),r=isString(a)?(-1!==a.indexOf("data:enc;")&&(a=rot13defs(a=a.substring("data:enc;".length))),a):a}catch(t){log("\u83b7\u53d6 storage \u5931\u8d25\uff01")}var a;return isJSONString(r)&&(r=JSON.parse(r)),r},setStorage:function(r,a){var i;try{n=i=JSON.stringify(a),s=!1,t&&t._sa&&t._sa.para&&(s=t._sa.para.encrypt_storage),s&&(isObject(n)&&(n=JSON.stringify(n)),n="data:enc;"+rot13obfs(n)),i=n}catch(t){log("\u5e8f\u5217\u5316\u7f13\u5b58\u5bf9\u8c61\u5931\u8d25\uff01")}var n,s;try{e.setStorageSync({key:r,data:i})}catch(t){log("set Storage fail again --",t)}}}}function mixinRequest(t){var e,r=t.info.platform_obj;isObject(r)&&(e=function(t){var e=t.url,a="GET",i=null;t.method&&(a=t.method),t.data&&(i=t.data),r.request({url:e,method:a,data:i,timeout:t.timeout,success:function(e){t.suc(e.data)},fail:function(e){t.fail(e)}})}),t.request=e}function mixinFetch(t){t.fetchTest=function(){var e=0,r=!1,a=t.creatRequestData();function i(e){_.log("\u62c9\u53d6\u5b9e\u9a8c\u7ed3\u679c\u6210\u529f: ",e),r=!0,t.updateData(e.results),t.state.fetchInterval&&clearTimeout(t.state.fetchInterval),t.state.fetchInterval=setTimeout(function(){t.request({url:t.para.url,method:"POST",data:JSON.stringify(a),timeout:t.para.timeout_milliseconds,suc:i,fail:n})},t.para.update_interval)}function n(s){return _.log("\u62c9\u53d6\u5b9e\u9a8c\u7ed3\u679c\u5931\u8d25: ",s),e++,!r&&e0||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cparam_name\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e\uff01param_name:",e.param_name),a=!1);break;case"value_type":_.isString(e.value_type)&&-1!==_.indexOf(VALUE_TYPE_LIST,e.value_type)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cvalue_type\u914d\u7f6e\u9519\u8bef",e.value_type),a=!1);break;case"default_value":void 0===e.default_value?(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u53c2\u6570\u672a\u914d\u7f6e"),a=!1):verifyStore.valueType(e.default_value,e.value_type)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u7c7b\u578b\u5fc5\u987b\u4e0evalue_type\u4e00\u81f4\uff01",e.default_value,e.value_type),a=!1);break;case"callback":_.isFunction(e.callback)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0ccallback\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),a=!1)}}),a}};function defineApi(t,e){for(var r of e)t[r]="fetchCacheABTest"===r?function(t){if(_.log("\u8c03\u7528\u5206\u6d41 API --- A/B Testing \u63d2\u4ef6\u5c1a\u672a\u521d\u59cb\u5316\uff01"),t.hasOwnProperty("default_value"))return t.default_value}:function(t){_.log("\u8c03\u7528\u5206\u6d41 API --- A/B Testing \u63d2\u4ef6\u5c1a\u672a\u521d\u59cb\u5316\uff01"),t&&_.isFunction(t.callback)&&t.hasOwnProperty("default_value")&&t.callback(t.default_value)}}function initAPI(t){t.setPara=function(e){if(!_.isString(e.url)||"http"!==e.url.slice(0,4))return _.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff01"),!1;t.para.url=e.url;var r=_.getQueryParam(e.url,"project-key");return r?(t.para.project_key=r,_.isNumber(e.timeout_milliseconds)&&(e.timeout_milliseconds<200?t.para.timeout_milliseconds=200:t.para.timeout_milliseconds=e.timeout_milliseconds),_.isNumber(e.update_interval)&&(t.para.update_interval=e.update_interval),!0):(_.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff08\u5fc5\u987b\u5305\u542b project-key\uff09\uff01"),!1)},t.asyncFetchABTest=function(e){return _.isObject(e)?!!verifyStore.para("asyncFetchABTest",e,["param_name","value_type","default_value","callback"])&&(_.validTimeout(e),void t.asyncFetch(e)):(_.log("asyncFetchABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1)},t.fastFetchABTest=function(e){if(!_.isObject(e))return _.log("fastFetchABTest \u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1;if(!verifyStore.para("fastFetchABTest",e,["param_name","value_type","default_value","callback"]))return!1;_.validTimeout(e);var r=t.searchLocalExp(e.param_name);if(_.isObject(r)){var a=t.getExpResult(e,r);e.callback(a)}else _.log("fastFetchABTest \u7f13\u5b58\u4e2d\u672a\u8bfb\u53d6\u5230\u6570\u636e\uff0c\u53d1\u8d77\u8bf7\u6c42"),t.asyncFetch(e)},t.fetchCacheABTest=function(e){if(_.isObject(e))return!!verifyStore.para("fetchCacheABTest",e,["param_name","value_type","default_value"])&&t.getExpResult(e);_.log("fetchCacheABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e")},t.asyncFetch=function(e){t.getResultFromServer({para:e,suc:function(r){if(_.isObject(r)&&"SUCCESS"===r.status){_.log("\u83b7\u53d6\u5230\u670d\u52a1\u7aef\u5b9e\u9a8c\u7ed3\u679c\u6570\u636e: ",r),t.updateData(r.results);var a=t.getExpResult(e);e.callback(a)}else e.callback(e.default_value)},fail:function(t){_.log("\u83b7\u53d6\u670d\u52a1\u7aef\u6570\u636e\u5931\u8d25: ",t),e.callback(e.default_value)}})},t.searchLocalExp=function(e){return!!t.state.test_list[e]&&t.state.test_list[e]},t.getExpResult=function(e,r){var a=e.default_value,i=r||t.searchLocalExp(e.param_name);return _.isObject(i)?_.isObject(i.config)&&(i.config.type===e.value_type?(a=i.config.value,t.trackTestTrigger(i)):_.log("\u8bd5\u9a8c\u7ed3\u679c\u7c7b\u578b\u4e0e\u671f\u671b\u7c7b\u578b\u4e0d\u4e00\u81f4\uff0cparam_name\uff1a"+e.param_name+"\uff0c\u5f53\u524d\u8fd4\u56de\u7c7b\u578b\u4e3a\uff1a"+i.config.type+"\uff0c\u671f\u671b\u7c7b\u578b\u4e3a\uff1a"+e.value_type)):_.log("\u672c\u5730\u672a\u67e5\u8be2\u5230\u8bd5\u9a8c\u6570\u636e\uff0c\u8bd5\u9a8c\u53c2\u6570\u540d\u79f0\uff1a"+e.param_name),a},t.getResultFromServer=function(e){var r=(e=_.isObject(e)?e:{}).para||{},a=e.suc,i=e.fail,n=t.creatRequestData(r);t.request({url:t.para.url,method:"POST",data:JSON.stringify(n),contentType:"application/json",timeout:r.timeout_milliseconds||t.para.timeout_milliseconds,suc:a,fail:i}),_.log("\u5411\u670d\u52a1\u7aef\u53d1\u8d77\u8bd5\u9a8c\u8bf7\u6c42")}}function mixinTrack(t){t.trackTestTrigger=function(e){var r=!1,a=!1;if(e.is_white_list)return!1;if(t.state.trigger_list.length>0&&(r=!0),-1!==t.state.trigger_list.indexOf(e.abtest_experiment_id)&&(a=!0),!a){var i={$abtest_experiment_id:e.abtest_experiment_id,$abtest_experiment_group_id:e.abtest_experiment_group_id};if(!r){var n=t.info.lib_plugin_name+":"+t.info.lib_version;i.$lib_plugin_version=[n]}t.state.trigger_list.push(e.abtest_experiment_id),t._sa.track("$ABTestTrigger",i)}}}var ABTest={};mixinConfig(ABTest),mixinFetch(ABTest),mixinTrack(ABTest),mixinRequest(ABTest),mixinStore(ABTest),ABTest.init=function(t,e){if(_.log("\u521d\u59cb\u5316 ABTest \u63d2\u4ef6"),this.state.inited)return!1;if(initAPI(ABTest),!this.setPara(e))return!1;this.state.inited=!0,this._sa=t,this.subId=new t.eventSub(this.handleIdChange);var r=ABTest.store.getStorage(this.info.storage_key);_.isObject(r)?this.state.test_list=r:this.state.test_list={},_.getSystemInfo(this),this.subId.isReady(),this.listenAppLaunch()},ABTest.handleIdChange=function(t){"changeDistinctId"===t&&(ABTest.state.test_list={},ABTest.state.trigger_list=[],ABTest.store.setStorage(ABTest.info.storage_key,ABTest.state.test_list),ABTest.fetchTest())},ABTest.listenAppLaunch=function(){var t=my.getLaunchOptionsSync();t&&t.scene&&(this.info.scene="ali-"+t.scene),this.fetchTest()},defineApi(ABTest,["asyncFetchABTest","fastFetchABTest","fetchCacheABTest"]),module.exports=ABTest;
\ No newline at end of file
diff --git a/alipay/abtest.esm.min.js b/alipay/abtest.esm.min.js
new file mode 100644
index 0000000..d35c32e
--- /dev/null
+++ b/alipay/abtest.esm.min.js
@@ -0,0 +1 @@
+var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(t){return each(Array.prototype.slice.call(arguments,1),function(e){for(var r in e)void 0!==e[r]&&(t[r]=e[r])}),t}function each(t,e,r){var a=Array.prototype.forEach,i={};if(null==t)return!1;if(a&&t.forEach===a)t.forEach(e,r);else if(t.length===+t.length){for(var n=0,s=t.length;n-1?e.system.split(" ")[1]:e.system}catch(t){log("get system fails")}}function getAppId(){var t;if(my.getAccountInfoSync&&(t=my.getAppIdSync()),isObject(t))return t.appId||""}_.getSystemInfo=getSystemInfo,_.getAppId=getAppId;var para={url:"",project_key:"",retry_times:3,timeout_milliseconds:3e3,update_interval:6e5},info={scene:"",lib_version:"0.0.9",platform:"AlipayMini",storage_key:"sensorsdata2015_ABTest",lib_plugin_name:"alipaymini_abtesting",platform_obj:my},props={$manufacturer:"",$model:"",$os:"",$os_version:""},state={inited:!1,fetchInterval:null,test_list:{},trigger_list:[]};function mixinConfig(t){t.para=para,t.info=info,t.state=state,t.props=props}function mixinStore(t){var e=t.info.platform_obj;if(!e||isEmptyObject(e))return!1;t.store={getStorage:function(t){var r="";try{a=r=e.getStorageSync({key:t}),r=isString(a)?(-1!==a.indexOf("data:enc;")&&(a=rot13defs(a=a.substring("data:enc;".length))),a):a}catch(t){log("\u83b7\u53d6 storage \u5931\u8d25\uff01")}var a;return isJSONString(r)&&(r=JSON.parse(r)),r},setStorage:function(r,a){var i;try{n=i=JSON.stringify(a),s=!1,t&&t._sa&&t._sa.para&&(s=t._sa.para.encrypt_storage),s&&(isObject(n)&&(n=JSON.stringify(n)),n="data:enc;"+rot13obfs(n)),i=n}catch(t){log("\u5e8f\u5217\u5316\u7f13\u5b58\u5bf9\u8c61\u5931\u8d25\uff01")}var n,s;try{e.setStorageSync({key:r,data:i})}catch(t){log("set Storage fail again --",t)}}}}function mixinRequest(t){var e,r=t.info.platform_obj;isObject(r)&&(e=function(t){var e=t.url,a="GET",i=null;t.method&&(a=t.method),t.data&&(i=t.data),r.request({url:e,method:a,data:i,timeout:t.timeout,success:function(e){t.suc(e.data)},fail:function(e){t.fail(e)}})}),t.request=e}function mixinFetch(t){t.fetchTest=function(){var e=0,r=!1,a=t.creatRequestData();function i(e){_.log("\u62c9\u53d6\u5b9e\u9a8c\u7ed3\u679c\u6210\u529f: ",e),r=!0,t.updateData(e.results),t.state.fetchInterval&&clearTimeout(t.state.fetchInterval),t.state.fetchInterval=setTimeout(function(){t.request({url:t.para.url,method:"POST",data:JSON.stringify(a),timeout:t.para.timeout_milliseconds,suc:i,fail:n})},t.para.update_interval)}function n(s){return _.log("\u62c9\u53d6\u5b9e\u9a8c\u7ed3\u679c\u5931\u8d25: ",s),e++,!r&&e0||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cparam_name\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e\uff01param_name:",e.param_name),a=!1);break;case"value_type":_.isString(e.value_type)&&-1!==_.indexOf(VALUE_TYPE_LIST,e.value_type)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cvalue_type\u914d\u7f6e\u9519\u8bef",e.value_type),a=!1);break;case"default_value":void 0===e.default_value?(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u53c2\u6570\u672a\u914d\u7f6e"),a=!1):verifyStore.valueType(e.default_value,e.value_type)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u7c7b\u578b\u5fc5\u987b\u4e0evalue_type\u4e00\u81f4\uff01",e.default_value,e.value_type),a=!1);break;case"callback":_.isFunction(e.callback)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0ccallback\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),a=!1)}}),a}};function defineApi(t,e){for(var r of e)t[r]="fetchCacheABTest"===r?function(t){if(_.log("\u8c03\u7528\u5206\u6d41 API --- A/B Testing \u63d2\u4ef6\u5c1a\u672a\u521d\u59cb\u5316\uff01"),t.hasOwnProperty("default_value"))return t.default_value}:function(t){_.log("\u8c03\u7528\u5206\u6d41 API --- A/B Testing \u63d2\u4ef6\u5c1a\u672a\u521d\u59cb\u5316\uff01"),t&&_.isFunction(t.callback)&&t.hasOwnProperty("default_value")&&t.callback(t.default_value)}}function initAPI(t){t.setPara=function(e){if(!_.isString(e.url)||"http"!==e.url.slice(0,4))return _.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff01"),!1;t.para.url=e.url;var r=_.getQueryParam(e.url,"project-key");return r?(t.para.project_key=r,_.isNumber(e.timeout_milliseconds)&&(e.timeout_milliseconds<200?t.para.timeout_milliseconds=200:t.para.timeout_milliseconds=e.timeout_milliseconds),_.isNumber(e.update_interval)&&(t.para.update_interval=e.update_interval),!0):(_.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff08\u5fc5\u987b\u5305\u542b project-key\uff09\uff01"),!1)},t.asyncFetchABTest=function(e){return _.isObject(e)?!!verifyStore.para("asyncFetchABTest",e,["param_name","value_type","default_value","callback"])&&(_.validTimeout(e),void t.asyncFetch(e)):(_.log("asyncFetchABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1)},t.fastFetchABTest=function(e){if(!_.isObject(e))return _.log("fastFetchABTest \u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1;if(!verifyStore.para("fastFetchABTest",e,["param_name","value_type","default_value","callback"]))return!1;_.validTimeout(e);var r=t.searchLocalExp(e.param_name);if(_.isObject(r)){var a=t.getExpResult(e,r);e.callback(a)}else _.log("fastFetchABTest \u7f13\u5b58\u4e2d\u672a\u8bfb\u53d6\u5230\u6570\u636e\uff0c\u53d1\u8d77\u8bf7\u6c42"),t.asyncFetch(e)},t.fetchCacheABTest=function(e){if(_.isObject(e))return!!verifyStore.para("fetchCacheABTest",e,["param_name","value_type","default_value"])&&t.getExpResult(e);_.log("fetchCacheABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e")},t.asyncFetch=function(e){t.getResultFromServer({para:e,suc:function(r){if(_.isObject(r)&&"SUCCESS"===r.status){_.log("\u83b7\u53d6\u5230\u670d\u52a1\u7aef\u5b9e\u9a8c\u7ed3\u679c\u6570\u636e: ",r),t.updateData(r.results);var a=t.getExpResult(e);e.callback(a)}else e.callback(e.default_value)},fail:function(t){_.log("\u83b7\u53d6\u670d\u52a1\u7aef\u6570\u636e\u5931\u8d25: ",t),e.callback(e.default_value)}})},t.searchLocalExp=function(e){return!!t.state.test_list[e]&&t.state.test_list[e]},t.getExpResult=function(e,r){var a=e.default_value,i=r||t.searchLocalExp(e.param_name);return _.isObject(i)?_.isObject(i.config)&&(i.config.type===e.value_type?(a=i.config.value,t.trackTestTrigger(i)):_.log("\u8bd5\u9a8c\u7ed3\u679c\u7c7b\u578b\u4e0e\u671f\u671b\u7c7b\u578b\u4e0d\u4e00\u81f4\uff0cparam_name\uff1a"+e.param_name+"\uff0c\u5f53\u524d\u8fd4\u56de\u7c7b\u578b\u4e3a\uff1a"+i.config.type+"\uff0c\u671f\u671b\u7c7b\u578b\u4e3a\uff1a"+e.value_type)):_.log("\u672c\u5730\u672a\u67e5\u8be2\u5230\u8bd5\u9a8c\u6570\u636e\uff0c\u8bd5\u9a8c\u53c2\u6570\u540d\u79f0\uff1a"+e.param_name),a},t.getResultFromServer=function(e){var r=(e=_.isObject(e)?e:{}).para||{},a=e.suc,i=e.fail,n=t.creatRequestData(r);t.request({url:t.para.url,method:"POST",data:JSON.stringify(n),contentType:"application/json",timeout:r.timeout_milliseconds||t.para.timeout_milliseconds,suc:a,fail:i}),_.log("\u5411\u670d\u52a1\u7aef\u53d1\u8d77\u8bd5\u9a8c\u8bf7\u6c42")}}function mixinTrack(t){t.trackTestTrigger=function(e){var r=!1,a=!1;if(e.is_white_list)return!1;if(t.state.trigger_list.length>0&&(r=!0),-1!==t.state.trigger_list.indexOf(e.abtest_experiment_id)&&(a=!0),!a){var i={$abtest_experiment_id:e.abtest_experiment_id,$abtest_experiment_group_id:e.abtest_experiment_group_id};if(!r){var n=t.info.lib_plugin_name+":"+t.info.lib_version;i.$lib_plugin_version=[n]}t.state.trigger_list.push(e.abtest_experiment_id),t._sa.track("$ABTestTrigger",i)}}}var ABTest={};mixinConfig(ABTest),mixinFetch(ABTest),mixinTrack(ABTest),mixinRequest(ABTest),mixinStore(ABTest),ABTest.init=function(t,e){if(_.log("\u521d\u59cb\u5316 ABTest \u63d2\u4ef6"),this.state.inited)return!1;if(initAPI(ABTest),!this.setPara(e))return!1;this.state.inited=!0,this._sa=t,this.subId=new t.eventSub(this.handleIdChange);var r=ABTest.store.getStorage(this.info.storage_key);_.isObject(r)?this.state.test_list=r:this.state.test_list={},_.getSystemInfo(this),this.subId.isReady(),this.listenAppLaunch()},ABTest.handleIdChange=function(t){"changeDistinctId"===t&&(ABTest.state.test_list={},ABTest.state.trigger_list=[],ABTest.store.setStorage(ABTest.info.storage_key,ABTest.state.test_list),ABTest.fetchTest())},ABTest.listenAppLaunch=function(){var t=my.getLaunchOptionsSync();t&&t.scene&&(this.info.scene="ali-"+t.scene),this.fetchTest()},defineApi(ABTest,["asyncFetchABTest","fastFetchABTest","fetchCacheABTest"]);export default ABTest;
\ No newline at end of file
diff --git a/package.json b/package.json
index 6d4dbe2..eeb56e7 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "ab-sdk-miniprogram",
- "version": "0.0.5",
+ "version": "0.0.9",
"description": "神策小程序 A/B Testing SDk",
"main": "",
"scripts": {
diff --git a/quickapp/abtest.esm.min.js b/quickapp/abtest.esm.min.js
index 6a3e249..b8dbb8c 100644
--- a/quickapp/abtest.esm.min.js
+++ b/quickapp/abtest.esm.min.js
@@ -1 +1 @@
-import device from"@system.device";import storage from"@system.storage";import fetch from"@system.fetch";var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(e){return each(Array.prototype.slice.call(arguments,1),function(t){for(var a in t)void 0!==t[a]&&(e[a]=t[a])}),e}function each(e,t,a){var r=Array.prototype.forEach,i={};if(null==e)return!1;if(r&&e.forEach===r)e.forEach(t,a);else if(e.length===+e.length){for(var s=0,n=e.length;s0||(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cparam_name\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e\uff01param_name:",t.param_name),r=!1);break;case"value_type":_.isString(t.value_type)&&-1!==_.indexOf(VALUE_TYPE_LIST,t.value_type)||(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cvalue_type\u914d\u7f6e\u9519\u8bef",t.value_type),r=!1);break;case"default_value":void 0===t.default_value?(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u53c2\u6570\u672a\u914d\u7f6e"),r=!1):verifyStore.valueType(t.default_value,t.value_type)||(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u7c7b\u578b\u5fc5\u987b\u4e0evalue_type\u4e00\u81f4\uff01",t.default_value,t.value_type),r=!1);break;case"callback":_.isFunction(t.callback)||(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0ccallback\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),r=!1)}}),r}};function initAPI(e){e.setPara=function(t){if(!_.isString(t.url)||"http"!==t.url.slice(0,4))return _.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff01"),!1;e.para.url=t.url;var a=_.getQueryParam(t.url,"project-key");return a?(e.para.project_key=a,_.isNumber(t.timeout_milliseconds)&&(t.timeout_milliseconds<200?e.para.timeout_milliseconds=200:e.para.timeout_milliseconds=t.timeout_milliseconds),_.isNumber(t.update_interval)&&(e.para.update_interval=t.update_interval),!0):(_.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff08\u5fc5\u987b\u5305\u542b project-key\uff09\uff01"),!1)},e.asyncFetchABTest=function(t){return _.isObject(t)?!!verifyStore.para("asyncFetchABTest",t,["param_name","value_type","default_value","callback"])&&(_.validTimeout(t),void e.asyncFetch(t)):(_.log("asyncFetchABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1)},e.fastFetchABTest=function(t){if(!_.isObject(t))return _.log("fastFetchABTest \u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1;if(!verifyStore.para("fastFetchABTest",t,["param_name","value_type","default_value","callback"]))return!1;_.validTimeout(t);var a=e.searchLocalExp(t.param_name);if(_.isObject(a)){var r=e.getExpResult(t,a);t.callback(r)}else _.log("fastFetchABTest \u7f13\u5b58\u4e2d\u672a\u8bfb\u53d6\u5230\u6570\u636e\uff0c\u53d1\u8d77\u8bf7\u6c42"),e.asyncFetch(t)},e.fetchCacheABTest=function(t){if(_.isObject(t))return!!verifyStore.para("fetchCacheABTest",t,["param_name","value_type","default_value"])&&e.getExpResult(t);_.log("fetchCacheABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e")},e.asyncFetch=function(t){e.getResultFromServer({para:t,suc:function(a){if(_.isObject(a)&&"SUCCESS"===a.status){_.log("\u83b7\u53d6\u5230\u670d\u52a1\u7aef\u5b9e\u9a8c\u7ed3\u679c\u6570\u636e: ",a),e.updateData(a.results);var r=e.getExpResult(t);t.callback(r)}else t.callback(t.default_value)},fail:function(e){_.log("\u83b7\u53d6\u670d\u52a1\u7aef\u6570\u636e\u5931\u8d25: ",e),t.callback(t.default_value)}})},e.searchLocalExp=function(t){return!!e.state.test_list[t]&&e.state.test_list[t]},e.getExpResult=function(t,a){var r=t.default_value,i=a||e.searchLocalExp(t.param_name);return _.isObject(i)?_.isObject(i.config)&&(i.config.type===t.value_type?(r=i.config.value,e.trackTestTrigger(i)):_.log("\u8bd5\u9a8c\u7ed3\u679c\u7c7b\u578b\u4e0e\u671f\u671b\u7c7b\u578b\u4e0d\u4e00\u81f4\uff0cparam_name\uff1a"+t.param_name+"\uff0c\u5f53\u524d\u8fd4\u56de\u7c7b\u578b\u4e3a\uff1a"+i.config.type+"\uff0c\u671f\u671b\u7c7b\u578b\u4e3a\uff1a"+t.value_type)):_.log("\u672c\u5730\u672a\u67e5\u8be2\u5230\u8bd5\u9a8c\u6570\u636e\uff0c\u8bd5\u9a8c\u53c2\u6570\u540d\u79f0\uff1a"+t.param_name),r},e.getResultFromServer=function(t){var a=(t=_.isObject(t)?t:{}).para||{},r=t.suc,i=t.fail,s=e.creatRequestData(a);e.request({url:e.para.url,method:"POST",data:JSON.stringify(s),contentType:"application/json",timeout:a.timeout_milliseconds||e.para.timeout_milliseconds,suc:r,fail:i}),_.log("\u5411\u670d\u52a1\u7aef\u53d1\u8d77\u8bd5\u9a8c\u8bf7\u6c42")}}var para={url:"",project_key:"",retry_times:3,timeout_milliseconds:3e3,update_interval:6e5},info={lib_version:"0.0.5",platform:"QuickApp",storage_key:"sensorsdata2015_ABTest",lib_plugin_name:"quickapp_abtesting"},props={$manufacturer:"",$model:"",$brand:"",$os:"",$os_version:""},state={inited:!1,fetchInterval:null,test_list:{},trigger_list:[],store_inited:!1,fetch_queue:[]};function mixinConfig(e){e.para=para,e.info=info,e.state=state,e.props=props}function mixinTrack(e){e.trackTestTrigger=function(t){var a=!1,r=!1;if(t.is_white_list)return!1;if(e.state.trigger_list.length>0&&(a=!0),-1!==e.state.trigger_list.indexOf(t.abtest_experiment_id)&&(r=!0),!r){var i={$abtest_experiment_id:t.abtest_experiment_id,$abtest_experiment_group_id:t.abtest_experiment_group_id};if(!a){var s=e.info.lib_plugin_name+":"+e.info.lib_version;i.$lib_plugin_version=[s]}e.state.trigger_list.push(t.abtest_experiment_id),e._sa.track("$ABTestTrigger",i)}}}var request=function(e){var t=e.url,a="GET",r=null;e.method&&(a=e.method),e.data&&(r=e.data),fetch.fetch({data:r,responseType:"Object",method:a,url:t,success:function(t){var a={};if(t.data)try{a=JSON.parse(t.data)}catch(e){a={}}e.suc(a)},fail:e.fail})};function mixinRequest(e){e.request=request}var ABTest={};mixinConfig(ABTest),mixinFetch(ABTest),initAPI(ABTest),mixinTrack(ABTest),mixinRequest(ABTest),mixinStore(ABTest),ABTest.init=function(e,t){return _.isObject(t.app)?t.app.sensorsABTest=ABTest:_.log("\u8bf7\u4f20\u5165\u6b63\u786e\u7684 App \u5bf9\u8c61\uff01"),_.log("\u521d\u59cb\u5316 ABTest \u63d2\u4ef6"),!this.state.inited&&(!!this.setPara(t)&&(this.state.inited=!0,this._sa=e,this.subId=new e.eventSub(this.handleEvents),this.subId.isReady(),void getStorage(ABTest.info.storage_key,ABTest.getTestList)))},ABTest.handleEvents=function(e){if("changeDistinctId"===e&&(ABTest.state.test_list={},ABTest.state.trigger_list=[],setStorage(ABTest.info.storage_key,ABTest.state.test_list),ABTest.fetchTest()),"initStore"===e){if(ABTest.state.store_inited)return!1;ABTest.state.store_inited=!0,_.getSystemInfo(ABTest,ABTest.fetchTest),ABTest.state.fetch_queue.length>0&&_.each(ABTest.state.fetch_queue,function(e){ABTest[e.event].apply(ABTest,e.arg)})}},ABTest.getTestList=function(e){_.isObject(e)?ABTest.state.test_list=e:ABTest.state.test_list={}},_.each(["fetchTest","asyncFetch"],function(e){var t=ABTest[e];ABTest[e]=function(){ABTest.state.store_inited?t.apply(ABTest,arguments):ABTest.state.fetch_queue.push({event:e,arg:arguments})}});export default ABTest;
\ No newline at end of file
+import device from"@system.device";import storage from"@system.storage";import fetch from"@system.fetch";var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(e){return each(Array.prototype.slice.call(arguments,1),function(t){for(var r in t)void 0!==t[r]&&(e[r]=t[r])}),e}function each(e,t,r){var a=Array.prototype.forEach,i={};if(null==e)return!1;if(a&&e.forEach===a)e.forEach(t,r);else if(e.length===+e.length){for(var n=0,s=e.length;n0||(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cparam_name\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e\uff01param_name:",t.param_name),a=!1);break;case"value_type":_.isString(t.value_type)&&-1!==_.indexOf(VALUE_TYPE_LIST,t.value_type)||(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cvalue_type\u914d\u7f6e\u9519\u8bef",t.value_type),a=!1);break;case"default_value":void 0===t.default_value?(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u53c2\u6570\u672a\u914d\u7f6e"),a=!1):verifyStore.valueType(t.default_value,t.value_type)||(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u7c7b\u578b\u5fc5\u987b\u4e0evalue_type\u4e00\u81f4\uff01",t.default_value,t.value_type),a=!1);break;case"callback":_.isFunction(t.callback)||(_.log(e+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0ccallback\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),a=!1)}}),a}};function defineApi(e,t){for(var r of t)e[r]="fetchCacheABTest"===r?function(e){if(_.log("\u8c03\u7528\u5206\u6d41 API --- A/B Testing \u63d2\u4ef6\u5c1a\u672a\u521d\u59cb\u5316\uff01"),e.hasOwnProperty("default_value"))return e.default_value}:function(e){_.log("\u8c03\u7528\u5206\u6d41 API --- A/B Testing \u63d2\u4ef6\u5c1a\u672a\u521d\u59cb\u5316\uff01"),e&&_.isFunction(e.callback)&&e.hasOwnProperty("default_value")&&e.callback(e.default_value)}}function initAPI(e){e.setPara=function(t){if(!_.isString(t.url)||"http"!==t.url.slice(0,4))return _.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff01"),!1;e.para.url=t.url;var r=_.getQueryParam(t.url,"project-key");return r?(e.para.project_key=r,_.isNumber(t.timeout_milliseconds)&&(t.timeout_milliseconds<200?e.para.timeout_milliseconds=200:e.para.timeout_milliseconds=t.timeout_milliseconds),_.isNumber(t.update_interval)&&(e.para.update_interval=t.update_interval),!0):(_.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff08\u5fc5\u987b\u5305\u542b project-key\uff09\uff01"),!1)},e.asyncFetchABTest=function(t){return _.isObject(t)?!!verifyStore.para("asyncFetchABTest",t,["param_name","value_type","default_value","callback"])&&(_.validTimeout(t),void e.asyncFetch(t)):(_.log("asyncFetchABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1)},e.fastFetchABTest=function(t){if(!_.isObject(t))return _.log("fastFetchABTest \u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1;if(!verifyStore.para("fastFetchABTest",t,["param_name","value_type","default_value","callback"]))return!1;_.validTimeout(t);var r=e.searchLocalExp(t.param_name);if(_.isObject(r)){var a=e.getExpResult(t,r);t.callback(a)}else _.log("fastFetchABTest \u7f13\u5b58\u4e2d\u672a\u8bfb\u53d6\u5230\u6570\u636e\uff0c\u53d1\u8d77\u8bf7\u6c42"),e.asyncFetch(t)},e.fetchCacheABTest=function(t){if(_.isObject(t))return!!verifyStore.para("fetchCacheABTest",t,["param_name","value_type","default_value"])&&e.getExpResult(t);_.log("fetchCacheABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e")},e.asyncFetch=function(t){e.getResultFromServer({para:t,suc:function(r){if(_.isObject(r)&&"SUCCESS"===r.status){_.log("\u83b7\u53d6\u5230\u670d\u52a1\u7aef\u5b9e\u9a8c\u7ed3\u679c\u6570\u636e: ",r),e.updateData(r.results);var a=e.getExpResult(t);t.callback(a)}else t.callback(t.default_value)},fail:function(e){_.log("\u83b7\u53d6\u670d\u52a1\u7aef\u6570\u636e\u5931\u8d25: ",e),t.callback(t.default_value)}})},e.searchLocalExp=function(t){return!!e.state.test_list[t]&&e.state.test_list[t]},e.getExpResult=function(t,r){var a=t.default_value,i=r||e.searchLocalExp(t.param_name);return _.isObject(i)?_.isObject(i.config)&&(i.config.type===t.value_type?(a=i.config.value,e.trackTestTrigger(i)):_.log("\u8bd5\u9a8c\u7ed3\u679c\u7c7b\u578b\u4e0e\u671f\u671b\u7c7b\u578b\u4e0d\u4e00\u81f4\uff0cparam_name\uff1a"+t.param_name+"\uff0c\u5f53\u524d\u8fd4\u56de\u7c7b\u578b\u4e3a\uff1a"+i.config.type+"\uff0c\u671f\u671b\u7c7b\u578b\u4e3a\uff1a"+t.value_type)):_.log("\u672c\u5730\u672a\u67e5\u8be2\u5230\u8bd5\u9a8c\u6570\u636e\uff0c\u8bd5\u9a8c\u53c2\u6570\u540d\u79f0\uff1a"+t.param_name),a},e.getResultFromServer=function(t){var r=(t=_.isObject(t)?t:{}).para||{},a=t.suc,i=t.fail,n=e.creatRequestData(r);e.request({url:e.para.url,method:"POST",data:JSON.stringify(n),contentType:"application/json",timeout:r.timeout_milliseconds||e.para.timeout_milliseconds,suc:a,fail:i}),_.log("\u5411\u670d\u52a1\u7aef\u53d1\u8d77\u8bd5\u9a8c\u8bf7\u6c42")}}var para={url:"",project_key:"",retry_times:3,timeout_milliseconds:3e3,update_interval:6e5},info={lib_version:"0.0.9",platform:"QuickApp",storage_key:"sensorsdata2015_ABTest",lib_plugin_name:"quickapp_abtesting"},props={$manufacturer:"",$model:"",$brand:"",$os:"",$os_version:""},state={inited:!1,fetchInterval:null,test_list:{},trigger_list:[],store_inited:!1,fetch_queue:[]};function mixinConfig(e){e.para=para,e.info=info,e.state=state,e.props=props}function mixinTrack(e){e.trackTestTrigger=function(t){var r=!1,a=!1;if(t.is_white_list)return!1;if(e.state.trigger_list.length>0&&(r=!0),-1!==e.state.trigger_list.indexOf(t.abtest_experiment_id)&&(a=!0),!a){var i={$abtest_experiment_id:t.abtest_experiment_id,$abtest_experiment_group_id:t.abtest_experiment_group_id};if(!r){var n=e.info.lib_plugin_name+":"+e.info.lib_version;i.$lib_plugin_version=[n]}e.state.trigger_list.push(t.abtest_experiment_id),e._sa.track("$ABTestTrigger",i)}}}var request=function(e){var t=e.url,r="GET",a=null;e.method&&(r=e.method),e.data&&(a=e.data),fetch.fetch({data:a,responseType:"Object",method:r,url:t,success:function(t){var r={};if(t.data)try{r=JSON.parse(t.data)}catch(e){r={}}e.suc(r)},fail:e.fail})};function mixinRequest(e){e.request=request}var ABTest={};mixinConfig(ABTest),mixinFetch(ABTest),mixinTrack(ABTest),mixinRequest(ABTest),mixinStore(ABTest),ABTest.init=function(e,t){return _.isObject(t.app)?t.app.sensorsABTest=ABTest:_.log("\u8bf7\u4f20\u5165\u6b63\u786e\u7684 App \u5bf9\u8c61\uff01"),_.log("\u521d\u59cb\u5316 ABTest \u63d2\u4ef6"),!this.state.inited&&(initAPI(ABTest),!!this.setPara(t)&&(this.state.inited=!0,this._sa=e,this.subId=new e.eventSub(this.handleEvents),this.subId.isReady(),void getStorage(ABTest.info.storage_key,ABTest.getTestList)))},ABTest.handleEvents=function(e){if("changeDistinctId"===e&&(ABTest.state.test_list={},ABTest.state.trigger_list=[],setStorage(ABTest.info.storage_key,ABTest.state.test_list),ABTest.fetchTest()),"initStore"===e){if(ABTest.state.store_inited)return!1;ABTest.state.store_inited=!0,_.getSystemInfo(ABTest,ABTest.fetchTest),ABTest.state.fetch_queue.length>0&&_.each(ABTest.state.fetch_queue,function(e){ABTest[e.event].apply(ABTest,e.arg)})}},ABTest.getTestList=function(e){_.isObject(e)?ABTest.state.test_list=e:ABTest.state.test_list={}},_.each(["fetchTest","asyncFetch"],function(e){var t=ABTest[e];ABTest[e]=function(){ABTest.state.store_inited?t.apply(ABTest,arguments):ABTest.state.fetch_queue.push({event:e,arg:arguments})}}),defineApi(ABTest,["asyncFetchABTest","fastFetchABTest","fetchCacheABTest"]);export default ABTest;
\ No newline at end of file
diff --git a/wechat/abtest.cmd.min.js b/wechat/abtest.cmd.min.js
deleted file mode 100644
index b130a25..0000000
--- a/wechat/abtest.cmd.min.js
+++ /dev/null
@@ -1 +0,0 @@
-"use strict";var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(t){return each(Array.prototype.slice.call(arguments,1),function(e){for(var r in e)void 0!==e[r]&&(t[r]=e[r])}),t}function each(t,e,r){var a=Array.prototype.forEach,i={};if(null==t)return!1;if(a&&t.forEach===a)t.forEach(e,r);else if(t.length===+t.length){for(var n=0,s=t.length;n-1?e.system.split(" ")[1]:e.system}catch(t){log("get system fails")}}function getAppId(){var t;if(wx.getAccountInfoSync&&(t=wx.getAccountInfoSync()),isObject(t)&&isObject(t.miniProgram))return t.miniProgram.appId}_.getSystemInfo=getSystemInfo,_.getAppId=getAppId;var para={url:"",project_key:"",retry_times:3,timeout_milliseconds:3e3,update_interval:6e5},info={scene:"",lib_version:"0.0.5",platform:"MiniProgram",storage_key:"sensorsdata2015_ABTest",lib_plugin_name:"miniprogram_abtesting",platform_obj:wx},props={$manufacturer:"",$model:"",$os:"",$os_version:""},state={inited:!1,fetchInterval:null,test_list:{},trigger_list:[]};function mixinConfig(t){t.para=para,t.info=info,t.state=state,t.props=props}function mixinStore(t){var e=t.info.platform_obj;if(!e||isEmptyObject(e))return!1;t.store={getStorage:function(t){var r="";try{r=e.getStorageSync(t)}catch(t){log("\u83b7\u53d6 storage \u5931\u8d25\uff01")}return isJSONString(r)&&(r=JSON.parse(r)),r},setStorage:function(t,r){var a;try{a=JSON.stringify(r)}catch(t){log("\u5e8f\u5217\u5316\u7f13\u5b58\u5bf9\u8c61\u5931\u8d25\uff01")}try{e.setStorageSync(t,a)}catch(t){log("set Storage fail again --",t)}}}}function mixinRequest(t){var e,r=t.info.platform_obj;isObject(r)&&(e=function(t){var e=t.url,a="GET",i=null;t.method&&(a=t.method),t.data&&(i=t.data),r.request({url:e,method:a,data:i,timeout:t.timeout,success:function(e){t.suc(e.data)},fail:function(e){t.fail(e)}})}),t.request=e}function mixinFetch(t){t.fetchTest=function(){var e=0,r=!1,a=t.creatRequestData();function i(e){_.log("\u62c9\u53d6\u5b9e\u9a8c\u7ed3\u679c\u6210\u529f: ",e),r=!0,t.updateData(e.results),t.state.fetchInterval&&clearTimeout(t.state.fetchInterval),t.state.fetchInterval=setTimeout(function(){t.request({url:t.para.url,method:"POST",data:JSON.stringify(a),timeout:t.para.timeout_milliseconds,suc:i,fail:n})},t.para.update_interval)}function n(s){return _.log("\u62c9\u53d6\u5b9e\u9a8c\u7ed3\u679c\u5931\u8d25: ",s),e++,!r&&e0||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cparam_name\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e\uff01param_name:",e.param_name),a=!1);break;case"value_type":_.isString(e.value_type)&&-1!==_.indexOf(VALUE_TYPE_LIST,e.value_type)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cvalue_type\u914d\u7f6e\u9519\u8bef",e.value_type),a=!1);break;case"default_value":void 0===e.default_value?(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u53c2\u6570\u672a\u914d\u7f6e"),a=!1):verifyStore.valueType(e.default_value,e.value_type)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u7c7b\u578b\u5fc5\u987b\u4e0evalue_type\u4e00\u81f4\uff01",e.default_value,e.value_type),a=!1);break;case"callback":_.isFunction(e.callback)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0ccallback\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),a=!1)}}),a}};function initAPI(t){t.setPara=function(e){if(!_.isString(e.url)||"http"!==e.url.slice(0,4))return _.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff01"),!1;t.para.url=e.url;var r=_.getQueryParam(e.url,"project-key");return r?(t.para.project_key=r,_.isNumber(e.timeout_milliseconds)&&(e.timeout_milliseconds<200?t.para.timeout_milliseconds=200:t.para.timeout_milliseconds=e.timeout_milliseconds),_.isNumber(e.update_interval)&&(t.para.update_interval=e.update_interval),!0):(_.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff08\u5fc5\u987b\u5305\u542b project-key\uff09\uff01"),!1)},t.asyncFetchABTest=function(e){return _.isObject(e)?!!verifyStore.para("asyncFetchABTest",e,["param_name","value_type","default_value","callback"])&&(_.validTimeout(e),void t.asyncFetch(e)):(_.log("asyncFetchABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1)},t.fastFetchABTest=function(e){if(!_.isObject(e))return _.log("fastFetchABTest \u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1;if(!verifyStore.para("fastFetchABTest",e,["param_name","value_type","default_value","callback"]))return!1;_.validTimeout(e);var r=t.searchLocalExp(e.param_name);if(_.isObject(r)){var a=t.getExpResult(e,r);e.callback(a)}else _.log("fastFetchABTest \u7f13\u5b58\u4e2d\u672a\u8bfb\u53d6\u5230\u6570\u636e\uff0c\u53d1\u8d77\u8bf7\u6c42"),t.asyncFetch(e)},t.fetchCacheABTest=function(e){if(_.isObject(e))return!!verifyStore.para("fetchCacheABTest",e,["param_name","value_type","default_value"])&&t.getExpResult(e);_.log("fetchCacheABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e")},t.asyncFetch=function(e){t.getResultFromServer({para:e,suc:function(r){if(_.isObject(r)&&"SUCCESS"===r.status){_.log("\u83b7\u53d6\u5230\u670d\u52a1\u7aef\u5b9e\u9a8c\u7ed3\u679c\u6570\u636e: ",r),t.updateData(r.results);var a=t.getExpResult(e);e.callback(a)}else e.callback(e.default_value)},fail:function(t){_.log("\u83b7\u53d6\u670d\u52a1\u7aef\u6570\u636e\u5931\u8d25: ",t),e.callback(e.default_value)}})},t.searchLocalExp=function(e){return!!t.state.test_list[e]&&t.state.test_list[e]},t.getExpResult=function(e,r){var a=e.default_value,i=r||t.searchLocalExp(e.param_name);return _.isObject(i)?_.isObject(i.config)&&(i.config.type===e.value_type?(a=i.config.value,t.trackTestTrigger(i)):_.log("\u8bd5\u9a8c\u7ed3\u679c\u7c7b\u578b\u4e0e\u671f\u671b\u7c7b\u578b\u4e0d\u4e00\u81f4\uff0cparam_name\uff1a"+e.param_name+"\uff0c\u5f53\u524d\u8fd4\u56de\u7c7b\u578b\u4e3a\uff1a"+i.config.type+"\uff0c\u671f\u671b\u7c7b\u578b\u4e3a\uff1a"+e.value_type)):_.log("\u672c\u5730\u672a\u67e5\u8be2\u5230\u8bd5\u9a8c\u6570\u636e\uff0c\u8bd5\u9a8c\u53c2\u6570\u540d\u79f0\uff1a"+e.param_name),a},t.getResultFromServer=function(e){var r=(e=_.isObject(e)?e:{}).para||{},a=e.suc,i=e.fail,n=t.creatRequestData(r);t.request({url:t.para.url,method:"POST",data:JSON.stringify(n),contentType:"application/json",timeout:r.timeout_milliseconds||t.para.timeout_milliseconds,suc:a,fail:i}),_.log("\u5411\u670d\u52a1\u7aef\u53d1\u8d77\u8bd5\u9a8c\u8bf7\u6c42")}}function mixinTrack(t){t.trackTestTrigger=function(e){var r=!1,a=!1;if(e.is_white_list)return!1;if(t.state.trigger_list.length>0&&(r=!0),-1!==t.state.trigger_list.indexOf(e.abtest_experiment_id)&&(a=!0),!a){var i={$abtest_experiment_id:e.abtest_experiment_id,$abtest_experiment_group_id:e.abtest_experiment_group_id};if(!r){var n=t.info.lib_plugin_name+":"+t.info.lib_version;i.$lib_plugin_version=[n]}t.state.trigger_list.push(e.abtest_experiment_id),t._sa.track("$ABTestTrigger",i)}}}var ABTest={};mixinConfig(ABTest),mixinFetch(ABTest),initAPI(ABTest),mixinTrack(ABTest),mixinRequest(ABTest),mixinStore(ABTest),ABTest.init=function(t,e){if(_.log("\u521d\u59cb\u5316 ABTest \u63d2\u4ef6"),this.state.inited)return!1;if(!this.setPara(e))return!1;this.state.inited=!0,this._sa=t,this.subId=new t.eventSub(this.handleIdChange);var r=ABTest.store.getStorage(this.info.storage_key);_.isObject(r)?this.state.test_list=r:this.state.test_list={},_.getSystemInfo(this),this.subId.isReady(),this.listenAppLaunch()},ABTest.handleIdChange=function(t){"changeDistinctId"===t&&(ABTest.state.test_list={},ABTest.state.trigger_list=[],ABTest.store.setStorage(ABTest.info.storage_key,ABTest.state.test_list),ABTest.fetchTest())},ABTest.listenAppLaunch=function(){var t=wx.getLaunchOptionsSync();t&&t.scene&&(this.info.scene="wx-"+t.scene),this.fetchTest()},module.exports=ABTest;
\ No newline at end of file
diff --git a/wechat/abtest.esm.min.js b/wechat/abtest.esm.min.js
deleted file mode 100644
index edacff7..0000000
--- a/wechat/abtest.esm.min.js
+++ /dev/null
@@ -1 +0,0 @@
-var hasOwnProperty=Object.prototype.hasOwnProperty;function extend(t){return each(Array.prototype.slice.call(arguments,1),function(e){for(var r in e)void 0!==e[r]&&(t[r]=e[r])}),t}function each(t,e,r){var a=Array.prototype.forEach,i={};if(null==t)return!1;if(a&&t.forEach===a)t.forEach(e,r);else if(t.length===+t.length){for(var n=0,s=t.length;n-1?e.system.split(" ")[1]:e.system}catch(t){log("get system fails")}}function getAppId(){var t;if(wx.getAccountInfoSync&&(t=wx.getAccountInfoSync()),isObject(t)&&isObject(t.miniProgram))return t.miniProgram.appId}_.getSystemInfo=getSystemInfo,_.getAppId=getAppId;var para={url:"",project_key:"",retry_times:3,timeout_milliseconds:3e3,update_interval:6e5},info={scene:"",lib_version:"0.0.5",platform:"MiniProgram",storage_key:"sensorsdata2015_ABTest",lib_plugin_name:"miniprogram_abtesting",platform_obj:wx},props={$manufacturer:"",$model:"",$os:"",$os_version:""},state={inited:!1,fetchInterval:null,test_list:{},trigger_list:[]};function mixinConfig(t){t.para=para,t.info=info,t.state=state,t.props=props}function mixinStore(t){var e=t.info.platform_obj;if(!e||isEmptyObject(e))return!1;t.store={getStorage:function(t){var r="";try{r=e.getStorageSync(t)}catch(t){log("\u83b7\u53d6 storage \u5931\u8d25\uff01")}return isJSONString(r)&&(r=JSON.parse(r)),r},setStorage:function(t,r){var a;try{a=JSON.stringify(r)}catch(t){log("\u5e8f\u5217\u5316\u7f13\u5b58\u5bf9\u8c61\u5931\u8d25\uff01")}try{e.setStorageSync(t,a)}catch(t){log("set Storage fail again --",t)}}}}function mixinRequest(t){var e,r=t.info.platform_obj;isObject(r)&&(e=function(t){var e=t.url,a="GET",i=null;t.method&&(a=t.method),t.data&&(i=t.data),r.request({url:e,method:a,data:i,timeout:t.timeout,success:function(e){t.suc(e.data)},fail:function(e){t.fail(e)}})}),t.request=e}function mixinFetch(t){t.fetchTest=function(){var e=0,r=!1,a=t.creatRequestData();function i(e){_.log("\u62c9\u53d6\u5b9e\u9a8c\u7ed3\u679c\u6210\u529f: ",e),r=!0,t.updateData(e.results),t.state.fetchInterval&&clearTimeout(t.state.fetchInterval),t.state.fetchInterval=setTimeout(function(){t.request({url:t.para.url,method:"POST",data:JSON.stringify(a),timeout:t.para.timeout_milliseconds,suc:i,fail:n})},t.para.update_interval)}function n(s){return _.log("\u62c9\u53d6\u5b9e\u9a8c\u7ed3\u679c\u5931\u8d25: ",s),e++,!r&&e0||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cparam_name\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e\uff01param_name:",e.param_name),a=!1);break;case"value_type":_.isString(e.value_type)&&-1!==_.indexOf(VALUE_TYPE_LIST,e.value_type)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cvalue_type\u914d\u7f6e\u9519\u8bef",e.value_type),a=!1);break;case"default_value":void 0===e.default_value?(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u53c2\u6570\u672a\u914d\u7f6e"),a=!1):verifyStore.valueType(e.default_value,e.value_type)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0cdefault_value\u7c7b\u578b\u5fc5\u987b\u4e0evalue_type\u4e00\u81f4\uff01",e.default_value,e.value_type),a=!1);break;case"callback":_.isFunction(e.callback)||(_.log(t+"\u65b9\u6cd5\u8c03\u7528\u5931\u8d25\uff0ccallback\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),a=!1)}}),a}};function initAPI(t){t.setPara=function(e){if(!_.isString(e.url)||"http"!==e.url.slice(0,4))return _.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff01"),!1;t.para.url=e.url;var r=_.getQueryParam(e.url,"project-key");return r?(t.para.project_key=r,_.isNumber(e.timeout_milliseconds)&&(e.timeout_milliseconds<200?t.para.timeout_milliseconds=200:t.para.timeout_milliseconds=e.timeout_milliseconds),_.isNumber(e.update_interval)&&(t.para.update_interval=e.update_interval),!0):(_.log("A/B Testing SDK \u521d\u59cb\u5316\u5931\u8d25\uff0c\u8bf7\u4f7f\u7528\u6b63\u786e\u7684 URL\uff08\u5fc5\u987b\u5305\u542b project-key\uff09\uff01"),!1)},t.asyncFetchABTest=function(e){return _.isObject(e)?!!verifyStore.para("asyncFetchABTest",e,["param_name","value_type","default_value","callback"])&&(_.validTimeout(e),void t.asyncFetch(e)):(_.log("asyncFetchABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1)},t.fastFetchABTest=function(e){if(!_.isObject(e))return _.log("fastFetchABTest \u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e"),!1;if(!verifyStore.para("fastFetchABTest",e,["param_name","value_type","default_value","callback"]))return!1;_.validTimeout(e);var r=t.searchLocalExp(e.param_name);if(_.isObject(r)){var a=t.getExpResult(e,r);e.callback(a)}else _.log("fastFetchABTest \u7f13\u5b58\u4e2d\u672a\u8bfb\u53d6\u5230\u6570\u636e\uff0c\u53d1\u8d77\u8bf7\u6c42"),t.asyncFetch(e)},t.fetchCacheABTest=function(e){if(_.isObject(e))return!!verifyStore.para("fetchCacheABTest",e,["param_name","value_type","default_value"])&&t.getExpResult(e);_.log("fetchCacheABTest\u8c03\u7528\u5931\u8d25\uff0c\u53c2\u6570\u672a\u6b63\u786e\u914d\u7f6e")},t.asyncFetch=function(e){t.getResultFromServer({para:e,suc:function(r){if(_.isObject(r)&&"SUCCESS"===r.status){_.log("\u83b7\u53d6\u5230\u670d\u52a1\u7aef\u5b9e\u9a8c\u7ed3\u679c\u6570\u636e: ",r),t.updateData(r.results);var a=t.getExpResult(e);e.callback(a)}else e.callback(e.default_value)},fail:function(t){_.log("\u83b7\u53d6\u670d\u52a1\u7aef\u6570\u636e\u5931\u8d25: ",t),e.callback(e.default_value)}})},t.searchLocalExp=function(e){return!!t.state.test_list[e]&&t.state.test_list[e]},t.getExpResult=function(e,r){var a=e.default_value,i=r||t.searchLocalExp(e.param_name);return _.isObject(i)?_.isObject(i.config)&&(i.config.type===e.value_type?(a=i.config.value,t.trackTestTrigger(i)):_.log("\u8bd5\u9a8c\u7ed3\u679c\u7c7b\u578b\u4e0e\u671f\u671b\u7c7b\u578b\u4e0d\u4e00\u81f4\uff0cparam_name\uff1a"+e.param_name+"\uff0c\u5f53\u524d\u8fd4\u56de\u7c7b\u578b\u4e3a\uff1a"+i.config.type+"\uff0c\u671f\u671b\u7c7b\u578b\u4e3a\uff1a"+e.value_type)):_.log("\u672c\u5730\u672a\u67e5\u8be2\u5230\u8bd5\u9a8c\u6570\u636e\uff0c\u8bd5\u9a8c\u53c2\u6570\u540d\u79f0\uff1a"+e.param_name),a},t.getResultFromServer=function(e){var r=(e=_.isObject(e)?e:{}).para||{},a=e.suc,i=e.fail,n=t.creatRequestData(r);t.request({url:t.para.url,method:"POST",data:JSON.stringify(n),contentType:"application/json",timeout:r.timeout_milliseconds||t.para.timeout_milliseconds,suc:a,fail:i}),_.log("\u5411\u670d\u52a1\u7aef\u53d1\u8d77\u8bd5\u9a8c\u8bf7\u6c42")}}function mixinTrack(t){t.trackTestTrigger=function(e){var r=!1,a=!1;if(e.is_white_list)return!1;if(t.state.trigger_list.length>0&&(r=!0),-1!==t.state.trigger_list.indexOf(e.abtest_experiment_id)&&(a=!0),!a){var i={$abtest_experiment_id:e.abtest_experiment_id,$abtest_experiment_group_id:e.abtest_experiment_group_id};if(!r){var n=t.info.lib_plugin_name+":"+t.info.lib_version;i.$lib_plugin_version=[n]}t.state.trigger_list.push(e.abtest_experiment_id),t._sa.track("$ABTestTrigger",i)}}}var ABTest={};mixinConfig(ABTest),mixinFetch(ABTest),initAPI(ABTest),mixinTrack(ABTest),mixinRequest(ABTest),mixinStore(ABTest),ABTest.init=function(t,e){if(_.log("\u521d\u59cb\u5316 ABTest \u63d2\u4ef6"),this.state.inited)return!1;if(!this.setPara(e))return!1;this.state.inited=!0,this._sa=t,this.subId=new t.eventSub(this.handleIdChange);var r=ABTest.store.getStorage(this.info.storage_key);_.isObject(r)?this.state.test_list=r:this.state.test_list={},_.getSystemInfo(this),this.subId.isReady(),this.listenAppLaunch()},ABTest.handleIdChange=function(t){"changeDistinctId"===t&&(ABTest.state.test_list={},ABTest.state.trigger_list=[],ABTest.store.setStorage(ABTest.info.storage_key,ABTest.state.test_list),ABTest.fetchTest())},ABTest.listenAppLaunch=function(){var t=wx.getLaunchOptionsSync();t&&t.scene&&(this.info.scene="wx-"+t.scene),this.fetchTest()};export default ABTest;
\ No newline at end of file