@ethan-utils/pay-gateway 1.0.0 → 1.1.0

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.
@@ -0,0 +1 @@
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));Object.defineProperty(exports,`__toESM`,{enumerable:!0,get:function(){return s}});
package/dist/index.cjs ADDED
@@ -0,0 +1 @@
1
+ function e(){console.log("你好,`@ethan-utils/pay-gateway` 支付网关!")}exports.helloPayGateway=e;
@@ -0,0 +1 @@
1
+ const e=require(`../chunk-nOFOJqeH.js`),t=e.__toESM(require(`crypto-js`)),n=e.__toESM(require(`@ethan-utils/axios`));let r,i;const a=[{api:`scanPay`,fields:[`mch_id`,`out_trade_no`,`total_fee`,`body`,`timestamp`,`notify_url`]},{api:`h5Pay`,fields:[`mch_id`,`out_trade_no`,`total_fee`,`body`,`timestamp`,`notify_url`]},{api:`h5JumpPay`,fields:[`mch_id`,`out_trade_no`,`total_fee`,`body`,`timestamp`,`notify_url`]},{api:`jsapiPay`,fields:[`mch_id`,`out_trade_no`,`total_fee`,`body`,`openid`,`timestamp`,`notify_url`]},{api:`jsapiConvenient`,fields:[`mch_id`,`out_trade_no`,`total_fee`,`body`,`timestamp`,`notify_url`]},{api:`appPay`,fields:[`app_id`,`mch_id`,`out_trade_no`,`total_fee`,`body`,`timestamp`,`notify_url`]},{api:`miniProgramPay`,fields:[`mch_id`,`out_trade_no`,`total_fee`,`body`,`timestamp`,`notify_url`]},{api:`refundOrder`,fields:[`mch_id`,`out_trade_no`,`out_refund_no`,`timestamp`,`refund_fee`]},{api:`getWechatOpenid`,fields:[`mch_id`,`timestamp`,`callback_url`]},{api:`getPayOrder`,fields:[`mch_id`,`out_trade_no`,`timestamp`]},{api:`getRefundOrder`,fields:[`mch_id`,`out_refund_no`,`timestamp`]},{api:`notify`,fields:[`code`,`timestamp`,`mch_id`,`order_no`,`out_trade_no`,`pay_no`,`total_fee`]},{api:`refundNotify`,fields:[`code`,`timestamp`,`mch_id`,`order_no`,`out_trade_no`,`pay_no`,`refund_no`,`out_refund_no`,`pay_channel`,`refund_fee`]}];let o={};const s=`ltzf 未初始化或未配置 key,请先调用 setLtzfApiConfig`;function c(e){i={...e,log:e.log!==!1},r=(0,n.createRequest)({baseURL:e.baseURL,timeout:e.timeout});function t(e){return!e||e.length<=4?`****`:e.slice(0,2)+`*`.repeat(e.length-4)+e.slice(-2)}i.signFilter&&(o=i.signFilter,i.log&&console.warn(`【ltzf warn】已启用自定义签名字段过滤,请确保安全性和正确性!`)),i.log&&(console.log(`【ltzf】配置初始化成功:`,{baseURL:e.baseURL,key:t(e.key),notifyUrl:e.notifyUrl,refundUrl:e.refundUrl,returnUrl:e.returnUrl,developerAppid:e.developerAppid,timeout:e.timeout,signFilter:!!e.signFilter}),console.warn(`【ltzf warn】config 项(如 mch_id、notifyUrl、returnUrl 等)无需在业务函数重复传参,SDK 已自动处理,即使文档标注必填也无需重复填写。`))}function l(e,t){function n(e){if(o[e])return o[e];let t=a.find(t=>t.api===e);return t?t.fields:[]}let r=n(t),i={};for(let t of r)e[t]!==void 0&&e[t]!==null&&e[t]!==``&&(i[t]=e[t]);return i}function u(){if(!r||!i||!i.key)throw Error(s);return!0}function d(e){u();let n=Object.fromEntries(Object.entries(e).filter(([e,t])=>e!==`sign`&&t!=null&&t!==``)),r=Object.keys(n).sort(),a=r.map(e=>`${e}=${n[e]}`).join(`&`),o=i.key,s=`${a}&key=${o}`;return t.default.MD5(s).toString().toUpperCase()}const f={verifyPayParams(e){return p(e)},verifyRefundParams(e){return m(e)}};function p(e){if(u(),!e.sign)return!1;let t=l(e,`notify`),n=d(t);return n===e.sign||n===e.sign.toUpperCase()||n===e.sign.toLowerCase()}function m(e){if(u(),!e.sign)return!1;let t=l(e,`refundNotify`),n=d(t);return n===e.sign||n===e.sign.toUpperCase()||n===e.sign.toLowerCase()}async function h(e){u();let t=i.notifyUrl,n=i.developerAppid,a=l({...e,notify_url:t,developer_appid:n},`scanPay`),o=d(a),s={...e,notify_url:t,developer_appid:n,sign:o};return r.post(`/api/wxpay/native`,s)}async function g(e){u();let t=i.notifyUrl,n=i.developerAppid,a=i.returnUrl,o=l({...e,notify_url:t,developer_appid:n,return_url:a},`h5Pay`),s=d(o),c={...e,notify_url:t,developer_appid:n,return_url:a,sign:s};return r.post(`/api/wxpay/wap`,c)}async function _(e){u();let t=i.notifyUrl,n=i.developerAppid,a,o=i.returnUrl,s=l({...e,notify_url:t,developer_appid:n,quit_url:a,return_url:o},`h5JumpPay`),c=d(s),f={...e,notify_url:t,developer_appid:n,quit_url:a,return_url:o,sign:c};return r.post(`/api/wxpay/jump_h5`,f)}async function v(e){u();let t=i.notifyUrl,n=i.developerAppid,a=i.returnUrl,o=l({...e,notify_url:t,developer_appid:n,return_url:a},`jsapiPay`),s=d(o),c={...e,notify_url:t,developer_appid:n,return_url:a,sign:s};return r.post(`/api/wxpay/jsapi`,c)}async function y(e){u();let t=i.notifyUrl,n=i.developerAppid,a=i.returnUrl,o=l({...e,notify_url:t,developer_appid:n,return_url:a},`jsapiConvenient`),s=d(o),c={...e,notify_url:t,developer_appid:n,return_url:a,sign:s};return r.post(`/api/wxpay/jsapi_convenient`,c)}async function b(e){u();let t=i.notifyUrl,n=i.developerAppid,a=l({...e,notify_url:t,developer_appid:n},`appPay`),o=d(a),s={...e,notify_url:t,developer_appid:n,sign:o};return r.post(`/api/wxpay/app`,s)}async function x(e){u();let t=i.notifyUrl,n=i.developerAppid,a=l({...e,notify_url:t,developer_appid:n},`miniProgramPay`),o=d(a),s={...e,notify_url:t,developer_appid:n,sign:o};return r.post(`/api/wxpay/miniprogram`,s)}async function S(e){u();let t=i.refundUrl,n=l({...e,notify_url:t},`refundOrder`),a=d(n),o={...e,notify_url:t,sign:a};return r.post(`/api/wxpay/refund_order`,o)}async function C(e){u();let t=l(e,`getWechatOpenid`),n=d(t),i={...e,sign:n};return r.post(`/api/wxpay/get_wechat_openid`,i)}async function w(e){u();let t=l(e,`getPayOrder`),n=d(t),i={...e,sign:n};return r.post(`/api/wxpay/get_pay_order`,i)}async function T(e){u();let t=l(e,`getRefundOrder`),n=d(t),i={...e,sign:n};return r.post(`/api/wxpay/get_refund_order`,i)}exports.appPay=b,exports.getPayOrder=w,exports.getRefundOrder=T,exports.getWechatOpenid=C,exports.h5JumpPay=_,exports.h5Pay=g,exports.jsapiConvenientPay=y,exports.jsapiPay=v,exports.miniProgramPay=x,exports.notify=f,exports.refundOrder=S,exports.scanPay=h,exports.setLtzfApiConfig=c,exports.signParams=d;
@@ -0,0 +1 @@
1
+ const e=require(`../chunk-nOFOJqeH.js`),t=e.__toESM(require(`crypto-js`)),n=e.__toESM(require(`@ethan-utils/axios`));let r,i;const a=`7pay 未初始化或未配置 key/pid,请先调用 setSevenPayApiConfig`;function o(e){let t=e.baseURL;i={...e,baseURL:t,notify_url:e.notify_url,return_url:e.return_url,log:e.log!==!1},r=(0,n.createRequest)({baseURL:t,timeout:e.timeout});function a(e){return!e||e.length<=4?`****`:e.slice(0,2)+`*`.repeat(e.length-4)+e.slice(-2)}i.log&&(console.log(`【7pay】配置初始化成功:`,{baseURL:t,key:a(e.key),pid:e.pid,timeout:e.timeout,notify_url:e.notify_url,return_url:e.return_url}),console.warn(`【7pay warn】config 项(如 pid、cid、notify_url、return_url 等)无需在业务函数重复传参,SDK 已自动处理,即使文档标注必填也无需重复填写。`))}function s(){return!(!r||!i||!i.key||!i.pid)}function c(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>e!==`sign`&&e!==`sign_type`&&t!=null&&t!==``).sort(([e],[t])=>e.localeCompare(t)))}function l(e,n){let r=c(e),i=Object.entries(r).map(([e,t])=>`${e}=${t}`).join(`&`),a=i+n;return t.default.MD5(a).toString(t.default.enc.Hex).toLowerCase()}function u(e){if(!s())throw Error(a);let t={...e,pid:i.pid,cid:i.cid,notify_url:i.notify_url,return_url:i.return_url,sign_type:`MD5`,sign:``};t.sign=l(c({...t,sign:void 0,sign_type:void 0}),i.key);let n=i.baseURL.endsWith(`/`)?i.baseURL+`submit.php`:i.baseURL+`/submit.php`,r=Object.entries(t).map(([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(String(t))}`).join(`&`);return`${n}?${r}`}async function d(e){if(!s())throw Error(a);let t={...e,pid:i.pid,cid:i.cid,notify_url:i.notify_url,sign_type:`MD5`,sign:``};t.sign=l(c({...t,sign:void 0,sign_type:void 0}),i.key);let n=new URLSearchParams;Object.entries(t).forEach(([e,t])=>n.append(e,String(t)));let o=await r.raw.post(`/mapi.php`,n,{headers:{"Content-Type":`application/x-www-form-urlencoded`}});return o}async function f(){if(!s())throw Error(a);let e={act:`balance`,pid:i.pid,key:i.key},t=await r.raw.get(`/api.php`,{params:e});return t}async function p(e){if(!s())throw Error(a);let t={act:`order`,pid:i.pid,key:i.key,...e},n=await r.raw.get(`/api.php`,{params:t});return n}async function m(e){if(!s())throw Error(a);let t={act:`refund`,pid:i.pid,key:i.key,...e},n=new URLSearchParams;Object.entries(t).forEach(([e,t])=>{t!==void 0&&n.append(e,String(t))});let o=await r.raw.post(`/api.php?act=refund`,n,{headers:{"Content-Type":`application/x-www-form-urlencoded`}});return o}const h={verifyPayParams(e){return g(e)}};function g(e){if(!s())throw Error(a);let t=c(e),n=l(t,i.key);return n===e.sign}exports.apiPay=d,exports.balanceQuery=f,exports.jumpPay=u,exports.notify=h,exports.orderQuery=p,exports.refund=m,exports.setSevenPayApiConfig=o;
package/package.json CHANGED
@@ -1,9 +1,8 @@
1
1
  {
2
2
  "name": "@ethan-utils/pay-gateway",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "蓝兔支付,7Pay 等多种第三方支付的网关工具包",
5
- "type": "module",
6
- "main": "dist/index.js",
5
+ "main": "dist/index.cjs",
7
6
  "module": "dist/index.js",
8
7
  "types": "types/index.d.ts",
9
8
  "files": [
@@ -15,15 +14,17 @@
15
14
  "exports": {
16
15
  ".": {
17
16
  "import": "./dist/index.js",
18
- "require": "./dist/index.js",
17
+ "require": "./dist/index.cjs",
19
18
  "types": "./types/index.d.ts"
20
19
  },
21
20
  "./7pay": {
22
21
  "import": "./dist/pay/sevenPay.js",
22
+ "require": "./dist/pay/sevenPay.cjs",
23
23
  "types": "./types/7pay/index.d.ts"
24
24
  },
25
25
  "./ltzf": {
26
26
  "import": "./dist/pay/ltzf.js",
27
+ "require": "./dist/pay/ltzf.cjs",
27
28
  "types": "./types/ltzf/index.d.ts"
28
29
  }
29
30
  },