caring-route 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +6 -1
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- function t(t={},e=!0,r="brackets"){let a=e?"?":"",o=[];-1==["indices","brackets","repeat","comma"].indexOf(r)&&(r="brackets");for(let e in t){let a=t[e];if(!(["",void 0,null].indexOf(a)>=0))if(a.constructor===Array)switch(r){case"indices":for(let t=0;t<a.length;t++)o.push(e+"["+t+"]="+a[t]);break;case"brackets":default:a.forEach((t=>{o.push(e+"[]="+t)}));break;case"repeat":a.forEach((t=>{o.push(e+"="+t)}));break;case"comma":let t="";a.forEach((e=>{t+=(t?",":"")+e})),o.push(e+"="+t)}else o.push(e+"="+a)}return o.length?a+o.join("&"):""}const e=["navigateTo","redirectTo","reLaunch"],r=["navigateTo","redirectTo","reLaunch","navigateBack","switchTab"];function a(t){const{routeUrl:e,routeType:r="navigateTo",delta:a=1,events:o}=t;return new Promise(((t,n)=>{uni[r]({url:e,delta:a,events:o,success:e=>t(e),fail:t=>n(t)})}))}class o{handleParams(t={}){const e={};for(let r in t)"object"==typeof t[r]&&(e[r]=encodeURIComponent(JSON.stringify(t[r]))),"string"==typeof t[r]&&t[r].includes("http")&&(t[r]=encodeURIComponent(t[r]));return Object.assign(t,e)}query(t){const e={};for(const r in t)if("object"!=typeof t[r]){const a=decodeURIComponent(t[r]);(a.startsWith("{")||a.startsWith("["))&&"string"==typeof a&&(e[r]=JSON.parse(a))}return Object.assign(t,e)}navigate(t,e){return!!t&&("string"==typeof t?(e||(e={}),e.routeUrl=this.mixinParam(t,e),a(e)):(o=t,"[object Object]"===toString.call(o)?(e=t,r.includes(e.type)&&"string"==typeof e.url?(e.routeUrl=t.url,e.routeType=t.type,Reflect.deleteProperty(e,"url"),Reflect.deleteProperty(e,"type"),e.routeUrl=this.mixinParam(e.routeUrl,e.params),a(e)):this.query(e)):void 0));var o}mixinParam(e,r){e=e&&this.addRootPath(e);let a="";return/.*\/.*\?.*=.*/.test(e)?(a=t(this.handleParams(r),!1),e+"&"+a):(a=t(this.handleParams(r)),e+a)}to(t,e){const r={routeType:"navigateTo",routeUrl:t,params:e};this._navigateMethod(r)}back(t){const e={routeType:"navigateBack",delta:t};this._navigateMethod(e)}tab(t){const e={routeType:"switchTab",routeUrl:t};this._navigateMethod(e)}direct(t,e){const r={routeType:"redirectTo",routeUrl:t,params:e};this._navigateMethod(r)}launch(t,e){const r={routeType:"reLaunch",routeUrl:t,params:e};this._navigateMethod(r)}_navigateMethod(t){return e.includes(t.routeType)?t.routeUrl=this.mixinParam(t.routeUrl,t.params):t.routeUrl=t.routeUrl&&this.addRootPath(t.routeUrl),a(t)}addRootPath(t){return"/"===t[0]?t:`/${t}`}}var n=function(){const t=new o,e=o.prototype.navigate.bind(t);return Object.setPrototypeOf(e,t),e}();export{n as default};
1
+ function e(e={},t=!0,r="brackets"){const o=t?"?":"",a=[];-1==["indices","brackets","repeat","comma"].indexOf(r)&&(r="brackets");for(const t in e){const o=e[t];if(!(["",void 0,null].indexOf(o)>=0))if(o.constructor===Array)switch(r){case"indices":for(let e=0;e<o.length;e++)a.push(`${t}[${e}]=${o[e]}`);break;case"brackets":default:o.forEach((e=>{a.push(`${t}[]=${e}`)}));break;case"repeat":o.forEach((e=>{a.push(`${t}=${e}`)}));break;case"comma":let e="";o.forEach((t=>{e+=(e?",":"")+t})),a.push(`${t}=${e}`)}else a.push(`${t}=${o}`)}return a.length?o+a.join("&"):""}function t(e){if("string"!=typeof e)return!1;try{const t=JSON.parse(e);return"object"==typeof t&&t}catch(e){return!1}}const r=["navigateTo","redirectTo","reLaunch"];function o(e){const{routeUrl:t,routeType:r="navigateTo",delta:o=1,events:a}=e;return new Promise(((e,n)=>{uni[r]({url:t,delta:o,events:a,success:t=>e(t),fail:e=>n(e)})}))}class a{handleParams(e={}){const t={};for(let r in e)"object"==typeof e[r]&&(t[r]=encodeURIComponent(JSON.stringify(e[r]))),"string"==typeof e[r]&&e[r].includes("http")&&(e[r]=encodeURIComponent(e[r]));return Object.assign(e,t)}mini(e,t){return new Promise(((r,o)=>{uni.navigateToMiniProgram({appId:e,path:t,success:e=>{console.log("🚀 ===>res:",e),r()},fail:e=>{console.log("🚀 ===>err:",e),o(e)}})}))}query(e){const r={};for(const o in e)if("object"!=typeof e[o]){const a=decodeURIComponent(e[o]);console.log("🚀 ===>q:",a),t(a)&&(r[o]=JSON.parse(a))}return Object.assign(e,r)}navigate(e,t){return!!e&&("string"==typeof e?(t||(t={}),t.routeUrl=this.mixinParam(e,t),o(t)):(r=e,"[object Object]"===Object.prototype.toString.call(r)?(console.log("isobject"),(t=e).routeUrl=e.url,t.routeType=e.type||"navigateTo",Reflect.deleteProperty(t,"url"),Reflect.deleteProperty(t,"type"),t.routeUrl=this.mixinParam(t.routeUrl,t.params),o(t)):void 0));var r}mixinParam(t,r){t=t&&this.addRootPath(t);let o="";return/.*\/.*\?.*=.*/.test(t)?(o=e(this.handleParams(r),!1),t+"&"+o):(o=e(this.handleParams(r)),t+o)}to(e,t){const r={routeType:"navigateTo",routeUrl:e,params:t};this._navigateMethod(r)}back(e){const t={routeType:"navigateBack",delta:e};this._navigateMethod(t)}tab(e){const t={routeType:"switchTab",routeUrl:e};this._navigateMethod(t)}direct(e,t){const r={routeType:"redirectTo",routeUrl:e,params:t};this._navigateMethod(r)}launch(e,t){const r={routeType:"reLaunch",routeUrl:e,params:t};this._navigateMethod(r)}_navigateMethod(e){return r.includes(e.routeType)?e.routeUrl=this.mixinParam(e.routeUrl,e.params):e.routeUrl=e.routeUrl&&this.addRootPath(e.routeUrl),o(e)}addRootPath(e){return"/"===e[0]?e:`/${e}`}}var n=function(){const e=new a,t=a.prototype.navigate.bind(e);return Object.setPrototypeOf(t,e),t}();export{n as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "caring-route",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "适用于uni-app的路由跳转库",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -18,7 +18,12 @@
18
18
  },
19
19
  "license": "ISC",
20
20
  "devDependencies": {
21
+ "@rollup/plugin-node-resolve": "^15.2.3",
21
22
  "@rollup/plugin-terser": "^0.4.1",
22
23
  "rollup": "^3.21.5"
24
+ },
25
+ "dependencies": {
26
+ "caring-test": "^0.1.1",
27
+ "caring-utils": "^0.0.1"
23
28
  }
24
29
  }