feat(gopay): support GoPay Plus checkout flow

This commit is contained in:
朴圣佑
2026-05-01 02:02:33 +08:00
committed by QLHazyCoder
parent 2eb913e00b
commit d851cc4d36
24 changed files with 3798 additions and 162 deletions
+51 -7
View File
@@ -228,19 +228,24 @@
<span class="data-label">Plus 模式</span>
<div class="data-inline setting-pair">
<div class="setting-group setting-group-primary">
<label class="toggle-switch" for="input-plus-mode-enabled" title="开启后使用 Plus Checkout 订阅流程">
<label class="toggle-switch" for="input-plus-mode-enabled" title="开启后使用 Plus Checkout 支付授权流程">
<input type="checkbox" id="input-plus-mode-enabled" />
<span class="toggle-switch-track" aria-hidden="true">
<span class="toggle-switch-thumb"></span>
</span>
</label>
</div>
<div class="setting-group setting-group-secondary">
<select id="select-plus-payment-method" class="data-select plus-payment-method-select" style="display:none;" aria-label="Plus 支付方式">
<option value="paypal">PayPal 支付</option>
<option value="gopay">GoPay 支付</option>
</select>
</div>
<span class="setting-caption">Plus 订阅链路</span>
</div>
</div>
<div class="data-row" id="row-plus-payment-method" style="display:none;">
<span class="data-label">Plus 支付</span>
<div class="data-inline">
<select id="select-plus-payment-method" class="data-select">
<option value="paypal">PayPal</option>
<option value="gopay">GoPay</option>
</select>
<span class="setting-caption" id="plus-payment-method-caption">PayPal 订阅链路</span>
</div>
</div>
<div class="data-row" id="row-paypal-account" style="display:none;">
@@ -252,6 +257,44 @@
<button id="btn-add-paypal-account" class="btn btn-outline btn-sm data-inline-btn" type="button">添加</button>
</div>
</div>
<div class="data-row" id="row-gopay-country-code" style="display:none;">
<span class="data-label">GoPay 区号</span>
<select id="select-gopay-country-code" class="data-select">
<option value="+86">中国 +86</option>
<option value="+62">印度尼西亚 +62</option>
<option value="+1">美国/加拿大 +1</option>
<option value="+852">香港 +852</option>
<option value="+853">澳门 +853</option>
<option value="+886">台湾 +886</option>
<option value="+60">马来西亚 +60</option>
<option value="+65">新加坡 +65</option>
<option value="+66">泰国 +66</option>
<option value="+84">越南 +84</option>
<option value="+63">菲律宾 +63</option>
<option value="+91">印度 +91</option>
</select>
</div>
<div class="data-row" id="row-gopay-phone" style="display:none;">
<span class="data-label">GoPay 手机</span>
<input type="text" id="input-gopay-phone" class="data-input"
placeholder="请输入不含区号的 GoPay / WhatsApp 手机号" autocomplete="tel" />
</div>
<div class="data-row" id="row-gopay-otp" style="display:none;">
<span class="data-label">GoPay 验证码</span>
<input type="text" id="input-gopay-otp" class="data-input"
placeholder="可选;留空时执行中会弹窗手动输入" inputmode="numeric" autocomplete="one-time-code" />
</div>
<div class="data-row" id="row-gopay-pin" style="display:none;">
<span class="data-label">GoPay PIN</span>
<div class="input-with-icon">
<input type="password" id="input-gopay-pin" class="data-input data-input-with-icon"
placeholder="请输入 GoPay PIN" autocomplete="off" />
<button id="btn-toggle-gopay-pin" class="input-icon-btn" type="button"
data-password-toggle="input-gopay-pin" data-show-label="显示 GoPay PIN"
data-hide-label="隐藏 GoPay PIN" aria-label="显示 GoPay PIN"
title="显示 GoPay PIN"></button>
</div>
</div>
<div class="data-row module-divider-start" id="row-mail-provider">
<span class="data-label">邮箱服务</span>
<div class="data-inline">
@@ -1783,6 +1826,7 @@
<script src="../managed-alias-utils.js"></script>
<script src="../mail2925-utils.js"></script>
<script src="../paypal-utils.js"></script>
<script src="../gopay-utils.js"></script>
<script src="../phone-sms/providers/hero-sms.js"></script>
<script src="../phone-sms/providers/five-sim.js"></script>
<script src="../phone-sms/providers/registry.js"></script>