@blocklet/payment-react 1.20.16 → 1.20.17
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.
- package/.aigne/doc-smith/config.yaml +7 -1
- package/.aigne/doc-smith/upload-cache.yaml +441 -0
- package/docs/components-business-auto-topup.ja.md +187 -0
- package/docs/components-business-auto-topup.zh-TW.md +187 -0
- package/docs/components-business-auto-topup.zh.md +187 -0
- package/docs/components-business-overdue-invoice-payment.ja.md +196 -0
- package/docs/components-business-overdue-invoice-payment.zh-TW.md +197 -0
- package/docs/components-business-overdue-invoice-payment.zh.md +197 -0
- package/docs/components-business-resume-subscription.ja.md +190 -0
- package/docs/components-business-resume-subscription.zh-TW.md +190 -0
- package/docs/components-business-resume-subscription.zh.md +190 -0
- package/docs/components-business.ja.md +21 -0
- package/docs/components-business.zh-TW.md +21 -0
- package/docs/components-business.zh.md +21 -0
- package/docs/components-checkout-checkout-donate.ja.md +259 -0
- package/docs/components-checkout-checkout-donate.zh-TW.md +259 -0
- package/docs/components-checkout-checkout-donate.zh.md +259 -0
- package/docs/components-checkout-checkout-form.ja.md +163 -0
- package/docs/components-checkout-checkout-form.zh-TW.md +163 -0
- package/docs/components-checkout-checkout-form.zh.md +163 -0
- package/docs/components-checkout-checkout-table.ja.md +148 -0
- package/docs/components-checkout-checkout-table.zh-TW.md +148 -0
- package/docs/components-checkout-checkout-table.zh.md +149 -0
- package/docs/components-checkout.ja.md +65 -0
- package/docs/components-checkout.zh-TW.md +65 -0
- package/docs/components-checkout.zh.md +65 -0
- package/docs/components-history-credit-grants-list.ja.md +73 -0
- package/docs/components-history-credit-grants-list.zh-TW.md +73 -0
- package/docs/components-history-credit-grants-list.zh.md +73 -0
- package/docs/components-history-credit-transactions-list.ja.md +106 -0
- package/docs/components-history-credit-transactions-list.zh-TW.md +106 -0
- package/docs/components-history-credit-transactions-list.zh.md +106 -0
- package/docs/components-history-invoice-list.ja.md +110 -0
- package/docs/components-history-invoice-list.zh-TW.md +110 -0
- package/docs/components-history-invoice-list.zh.md +110 -0
- package/docs/components-history-payment-list.ja.md +44 -0
- package/docs/components-history-payment-list.zh-TW.md +44 -0
- package/docs/components-history-payment-list.zh.md +44 -0
- package/docs/components-history.ja.md +67 -0
- package/docs/components-history.zh-TW.md +67 -0
- package/docs/components-history.zh.md +67 -0
- package/docs/components-ui-form-elements-address-form.ja.md +121 -0
- package/docs/components-ui-form-elements-address-form.zh-TW.md +121 -0
- package/docs/components-ui-form-elements-address-form.zh.md +121 -0
- package/docs/components-ui-form-elements-country-select.ja.md +126 -0
- package/docs/components-ui-form-elements-country-select.zh-TW.md +126 -0
- package/docs/components-ui-form-elements-country-select.zh.md +126 -0
- package/docs/components-ui-form-elements-currency-selector.ja.md +108 -0
- package/docs/components-ui-form-elements-currency-selector.zh-TW.md +108 -0
- package/docs/components-ui-form-elements-currency-selector.zh.md +108 -0
- package/docs/components-ui-form-elements-phone-input.ja.md +138 -0
- package/docs/components-ui-form-elements-phone-input.zh-TW.md +138 -0
- package/docs/components-ui-form-elements-phone-input.zh.md +139 -0
- package/docs/components-ui-form-elements.ja.md +91 -0
- package/docs/components-ui-form-elements.zh-TW.md +91 -0
- package/docs/components-ui-form-elements.zh.md +91 -0
- package/docs/components-ui-payment-summary.ja.md +109 -0
- package/docs/components-ui-payment-summary.zh-TW.md +109 -0
- package/docs/components-ui-payment-summary.zh.md +109 -0
- package/docs/components-ui-pricing-table.ja.md +140 -0
- package/docs/components-ui-pricing-table.zh-TW.md +140 -0
- package/docs/components-ui-pricing-table.zh.md +140 -0
- package/docs/components-ui.ja.md +71 -0
- package/docs/components-ui.zh-TW.md +71 -0
- package/docs/components-ui.zh.md +71 -0
- package/docs/components.ja.md +122 -0
- package/docs/components.zh-TW.md +122 -0
- package/docs/components.zh.md +122 -0
- package/docs/getting-started.ja.md +84 -0
- package/docs/getting-started.zh-TW.md +84 -0
- package/docs/getting-started.zh.md +84 -0
- package/docs/guides-theming.ja.md +213 -0
- package/docs/guides-theming.zh-TW.md +213 -0
- package/docs/guides-theming.zh.md +213 -0
- package/docs/guides-utilities.ja.md +197 -0
- package/docs/guides-utilities.zh-TW.md +197 -0
- package/docs/guides-utilities.zh.md +197 -0
- package/docs/guides.ja.md +18 -0
- package/docs/guides.zh-TW.md +18 -0
- package/docs/guides.zh.md +18 -0
- package/docs/hooks-use-mobile.ja.md +84 -0
- package/docs/hooks-use-mobile.zh-TW.md +84 -0
- package/docs/hooks-use-mobile.zh.md +84 -0
- package/docs/hooks-use-subscription.ja.md +111 -0
- package/docs/hooks-use-subscription.zh-TW.md +111 -0
- package/docs/hooks-use-subscription.zh.md +110 -0
- package/docs/hooks.ja.md +14 -0
- package/docs/hooks.zh-TW.md +14 -0
- package/docs/hooks.zh.md +14 -0
- package/docs/overview.ja.md +80 -0
- package/docs/overview.zh-TW.md +80 -0
- package/docs/overview.zh.md +80 -0
- package/docs/providers-donate-provider.ja.md +153 -0
- package/docs/providers-donate-provider.zh-TW.md +153 -0
- package/docs/providers-donate-provider.zh.md +153 -0
- package/docs/providers-payment-provider.ja.md +191 -0
- package/docs/providers-payment-provider.zh-TW.md +191 -0
- package/docs/providers-payment-provider.zh.md +191 -0
- package/docs/providers.ja.md +42 -0
- package/docs/providers.zh-TW.md +42 -0
- package/docs/providers.zh.md +42 -0
- package/package.json +3 -3
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
# PaymentProvider
|
|
2
|
+
|
|
3
|
+
`PaymentProvider` 是 `@blocklet/payment-react` 库的基石。它作为一个上下文提供者,必须包裹您的应用程序或相关的支付组件。它负责获取必要的设置、管理应用程序状态,并向其所有子组件提供辅助函数和 API 客户端。
|
|
4
|
+
|
|
5
|
+
该库中几乎所有的组件和钩子都需要嵌套在 `PaymentProvider` 中才能正常工作。
|
|
6
|
+
|
|
7
|
+
## 工作原理
|
|
8
|
+
|
|
9
|
+
提供者在挂载时会初始化并从 Payment Kit 后端获取配置数据。这些数据连同用户会话和其他实用工具,通过 `usePaymentContext` 钩子提供给任何后代组件。这种模式确保您的支付组件始终能够访问必要的上下文,而无需进行属性钻取(prop drilling)。
|
|
10
|
+
|
|
11
|
+
```d2
|
|
12
|
+
direction: down
|
|
13
|
+
|
|
14
|
+
Your-Application: {
|
|
15
|
+
label: "你的应用程序"
|
|
16
|
+
shape: rectangle
|
|
17
|
+
|
|
18
|
+
PaymentProvider: {
|
|
19
|
+
label: "PaymentProvider"
|
|
20
|
+
style.fill: "#d1e7dd"
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
Payment-Components: {
|
|
24
|
+
label: "支付组件\n(例如,CheckoutForm)"
|
|
25
|
+
shape: rectangle
|
|
26
|
+
style.fill: "#cfe2ff"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
Payment-Kit-API: {
|
|
31
|
+
label: "Payment Kit API"
|
|
32
|
+
shape: cylinder
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
Your-Application.PaymentProvider -> Payment-Kit-API: "1. 获取设置和方法"
|
|
36
|
+
Your-Application.PaymentProvider -> Your-Application.Payment-Components: "2. 提供上下文(会话、设置、API 客户端)"
|
|
37
|
+
Your-Application.Payment-Components -> Payment-Kit-API: "3. 发起 API 调用(例如,创建结账)"
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## 设置和使用
|
|
42
|
+
|
|
43
|
+
要使用 `PaymentProvider`,您需要从应用程序的身份验证上下文中为其提供 `session` 和 `connect` 对象。在整个文档中,我们将使用自定义钩子 `useSessionContext` 来代表您应用的身份验证逻辑。以下是该钩子的一个典型实现:
|
|
44
|
+
|
|
45
|
+
```typescript SessionContext.tsx icon=logos:react
|
|
46
|
+
import React, { createContext, useContext } from 'react';
|
|
47
|
+
import { SessionProvider, useSessionContext as useDidSessionContext } from '@arcblock/did-connect-react';
|
|
48
|
+
|
|
49
|
+
// 你可以创建自己的上下文或使用现有的上下文
|
|
50
|
+
const AppContext = createContext({});
|
|
51
|
+
|
|
52
|
+
export function AppProvider({ children }) {
|
|
53
|
+
return (
|
|
54
|
+
<SessionProvider>
|
|
55
|
+
<AppContext.Provider value={{}}>
|
|
56
|
+
{children}
|
|
57
|
+
</AppContext.Provider>
|
|
58
|
+
</SessionProvider>
|
|
59
|
+
);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// 这个自定义钩子为 PaymentProvider 提供会话和 connectApi
|
|
63
|
+
export function useSessionContext() {
|
|
64
|
+
const { session, connect } = useDidSessionContext();
|
|
65
|
+
return { session, connectApi: connect };
|
|
66
|
+
}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
一旦您的会话管理就位,请使用 `PaymentProvider` 包裹您的主应用程序组件。
|
|
70
|
+
|
|
71
|
+
```tsx App.tsx icon=logos:react
|
|
72
|
+
import { PaymentProvider } from '@blocklet/payment-react';
|
|
73
|
+
import { useSessionContext } from './SessionContext'; // 你的会话上下文钩子
|
|
74
|
+
import MyPaymentPage from './MyPaymentPage';
|
|
75
|
+
|
|
76
|
+
function App() {
|
|
77
|
+
const { session, connectApi } = useSessionContext();
|
|
78
|
+
|
|
79
|
+
return (
|
|
80
|
+
<PaymentProvider session={session} connect={connectApi}>
|
|
81
|
+
<MyPaymentPage />
|
|
82
|
+
</PaymentProvider>
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export default App;
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Props
|
|
90
|
+
|
|
91
|
+
`PaymentProvider` 组件接受以下 props:
|
|
92
|
+
|
|
93
|
+
| Prop | 类型 | 必需 | 描述 |
|
|
94
|
+
| --- | --- | --- | --- |
|
|
95
|
+
| `session` | `Session` | 是 | 来自您的身份验证上下文(例如,`@arcblock/did-connect-react`)的用户会话对象。 |
|
|
96
|
+
| `connect` | `Connect` | 是 | 来自您的身份验证上下文的 `connect` API 函数,用于 DID Connect 操作。 |
|
|
97
|
+
| `children` | `React.ReactNode` | 是 | 将有权访问支付上下文的子组件。 |
|
|
98
|
+
| `baseUrl` | `string` | 否 | Payment Kit blocklet 的基础 URL。仅在从不同源(跨源)集成支付组件时需要。 |
|
|
99
|
+
| `authToken` | `string` | 否 | 用于 API 请求的特定身份验证令牌。如果提供,它将取代基于会话的身份验证。 |
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
## 上下文值
|
|
103
|
+
|
|
104
|
+
`PaymentProvider` 内的组件可以使用 `usePaymentContext` 钩子访问以下值。
|
|
105
|
+
|
|
106
|
+
```typescript MyComponent.tsx icon=logos:react
|
|
107
|
+
import { usePaymentContext } from '@blocklet/payment-react';
|
|
108
|
+
|
|
109
|
+
function MyComponent() {
|
|
110
|
+
const { settings, livemode, setLivemode } = usePaymentContext();
|
|
111
|
+
|
|
112
|
+
return (
|
|
113
|
+
<div>
|
|
114
|
+
<p>Base Currency: {settings.baseCurrency?.name}</p>
|
|
115
|
+
<p>Mode: {livemode ? 'Live' : 'Test'}</p>
|
|
116
|
+
<button onClick={() => setLivemode(!livemode)}>Toggle Mode</button>
|
|
117
|
+
</div>
|
|
118
|
+
);
|
|
119
|
+
}
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
以下是可用的上下文值的完整列表:
|
|
123
|
+
|
|
124
|
+
| 键 | 类型 | 描述 |
|
|
125
|
+
| --- | --- | --- |
|
|
126
|
+
| `session` | `object` | 经过身份验证的用户会话,包括用户详细信息。 |
|
|
127
|
+
| `connect` | `function` | 用于启动 DID Wallet 交互的 `connect` 函数。 |
|
|
128
|
+
| `livemode` | `boolean` | 指示上下文是处于生产(`true`)模式还是测试(`false`)模式。 |
|
|
129
|
+
| `setLivemode` | `(livemode: boolean) => void` | 一个用于在生产模式和测试模式之间切换的函数。这将触发重新获取设置。 |
|
|
130
|
+
| `settings` | `Settings` | 一个包含从后端获取的 `paymentMethods` 和 `baseCurrency` 配置的对象。 |
|
|
131
|
+
| `refresh` | `(forceRefresh?: boolean) => void` | 一个用于手动触发重新获取设置数据的功能。 |
|
|
132
|
+
| `getCurrency` | `(id: string) => TPaymentCurrency` | 一个辅助函数,用于通过其 ID 检索特定货币的详细信息。 |
|
|
133
|
+
| `getMethod` | `(id: string) => TPaymentMethodExpanded` | 一个辅助函数,用于通过其 ID 检索特定支付方式的详细信息。 |
|
|
134
|
+
| `api` | `AxiosInstance` | 一个预先配置的 Axios 实例,用于向 Payment Kit 后端发出经过身份验证的 API 调用。 |
|
|
135
|
+
| `prefix` | `string` | blocklet 的 URL 前缀。 |
|
|
136
|
+
| `payable` | `boolean` | 一个可用于控制支付操作可用性的状态。 |
|
|
137
|
+
| `setPayable` | `(status: boolean) => void` | 一个用于更新 `payable` 状态的函数。 |
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
## 高级场景
|
|
141
|
+
|
|
142
|
+
### 跨源集成
|
|
143
|
+
|
|
144
|
+
如果您的应用程序和 Payment Kit blocklet 托管在不同的域上,您必须使用 `baseUrl` prop。这使得 `PaymentProvider` 能够正确定位并与 Payment Kit API 通信。
|
|
145
|
+
|
|
146
|
+
```tsx CrossOriginApp.tsx icon=logos:react
|
|
147
|
+
import { PaymentProvider } from '@blocklet/payment-react';
|
|
148
|
+
import { useSessionContext } from './SessionContext';
|
|
149
|
+
|
|
150
|
+
function CrossOriginApp() {
|
|
151
|
+
const { session, connectApi } = useSessionContext();
|
|
152
|
+
|
|
153
|
+
return (
|
|
154
|
+
<PaymentProvider
|
|
155
|
+
session={session}
|
|
156
|
+
connect={connectApi}
|
|
157
|
+
baseUrl="https://payment-kit.another-domain.com"
|
|
158
|
+
>
|
|
159
|
+
{/* 你的支付组件 */}
|
|
160
|
+
</PaymentProvider>
|
|
161
|
+
);
|
|
162
|
+
}
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### 自定义身份验证令牌
|
|
166
|
+
|
|
167
|
+
在某些场景下,您需要使用特定的 API 令牌而不是默认的基于会话的身份验证(例如,用于服务器到服务器的通信或特定的访问授权),您可以传递 `authToken` prop。
|
|
168
|
+
|
|
169
|
+
```tsx TokenAuthApp.tsx icon=logos:react
|
|
170
|
+
import { PaymentProvider } from '@blocklet/payment-react';
|
|
171
|
+
import { useSessionContext } from './SessionContext';
|
|
172
|
+
|
|
173
|
+
function TokenAuthApp() {
|
|
174
|
+
const { session, connectApi } = useSessionContext();
|
|
175
|
+
const myCustomAuthToken = 'sk_xxxxxx'; // 你的秘密令牌
|
|
176
|
+
|
|
177
|
+
return (
|
|
178
|
+
<PaymentProvider
|
|
179
|
+
session={session}
|
|
180
|
+
connect={connectApi}
|
|
181
|
+
authToken={myCustomAuthToken}
|
|
182
|
+
>
|
|
183
|
+
{/* 组件将使用提供的 authToken 进行 API 调用 */}
|
|
184
|
+
</PaymentProvider>
|
|
185
|
+
);
|
|
186
|
+
}
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
设置好 `PaymentProvider` 后,您现在就可以开始将支付组件集成到您的应用程序中了。一个好的下一步是探索如何使用 [CheckoutForm](./components-checkout-checkout-form.md) 组件来创建支付流程。
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# プロバイダー
|
|
2
|
+
|
|
3
|
+
Context Provider は `@blocklet/payment-react` の中心的な概念です。これらはアプリケーションの一部をラップする役割を果たし、React の Context API を使用して、ネストされたすべてのコンポーネントに重要なデータと機能を渡します。これにより、コンポーネントツリーの多くのレベルを通じて手動でプロップを渡す必要がなくなります。
|
|
4
|
+
|
|
5
|
+
このライブラリのほとんどのコンポーネントを使用するには、アプリケーションまたは関連ページを適切なプロバイダーでラップする必要があります。
|
|
6
|
+
|
|
7
|
+
```d2 基本的なプロバイダー構造 icon=graph:flowchart
|
|
8
|
+
direction: down
|
|
9
|
+
|
|
10
|
+
あなたのアプリケーション: {
|
|
11
|
+
shape: rectangle
|
|
12
|
+
|
|
13
|
+
PaymentProvider: {
|
|
14
|
+
label: "PaymentProvider"
|
|
15
|
+
shape: rectangle
|
|
16
|
+
|
|
17
|
+
CheckoutForm: {
|
|
18
|
+
label: "CheckoutForm"
|
|
19
|
+
}
|
|
20
|
+
CustomerInvoiceList: {
|
|
21
|
+
label: "CustomerInvoiceList"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
あなたのアプリケーション -> PaymentProvider: "ラップする"
|
|
27
|
+
PaymentProvider -> CheckoutForm: "コンテキストを提供"
|
|
28
|
+
PaymentProvider -> CustomerInvoiceList: "コンテキストを提供"
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
このライブラリは、それぞれ異なる目的を果たす2つの主要なプロバイダーを提供しています。ニーズに合ったものを選択してください。
|
|
32
|
+
|
|
33
|
+
<x-cards>
|
|
34
|
+
<x-card data-title="PaymentProvider" data-icon="lucide:package" data-href="/providers/payment-provider">
|
|
35
|
+
ほぼすべての支払い関連操作に必要な基本的なプロバイダーです。支払い方法、通貨設定、ユーザーセッション情報を管理し、事前設定されたAPIクライアントを提供します。
|
|
36
|
+
</x-card>
|
|
37
|
+
<x-card data-title="DonateProvider" data-icon="lucide:heart" data-href="/providers/donate-provider">
|
|
38
|
+
寄付機能のための専門プロバイダーです。CheckoutDonateコンポーネントで実装されたような寄付ウィジェットの設定と状態を処理します。
|
|
39
|
+
</x-card>
|
|
40
|
+
</x-cards>
|
|
41
|
+
|
|
42
|
+
上のプロバイダーをクリックすると、必須のプロップや設定例など、詳細なドキュメントが表示されます。
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# 提供者
|
|
2
|
+
|
|
3
|
+
Context Provider 是 `@blocklet/payment-react` 的一個核心概念。它們作為您應用程式部分的包裝器,使用 React 的 Context API 將必要的資料和函式傳遞給所有嵌套在其中的元件。這避免了需要手動將 props 透過多層元件樹向下傳遞。
|
|
4
|
+
|
|
5
|
+
要使用此函式庫中的大多數元件,您必須用適當的 provider 包裝您的應用程式或相關頁面。
|
|
6
|
+
|
|
7
|
+
```d2 基本 Provider 結構 icon=graph:flowchart
|
|
8
|
+
direction: down
|
|
9
|
+
|
|
10
|
+
Your-Application: {
|
|
11
|
+
shape: rectangle
|
|
12
|
+
|
|
13
|
+
PaymentProvider: {
|
|
14
|
+
label: "PaymentProvider"
|
|
15
|
+
shape: rectangle
|
|
16
|
+
|
|
17
|
+
CheckoutForm: {
|
|
18
|
+
label: "CheckoutForm"
|
|
19
|
+
}
|
|
20
|
+
CustomerInvoiceList: {
|
|
21
|
+
label: "CustomerInvoiceList"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
Your-Application -> PaymentProvider: "包裝"
|
|
27
|
+
PaymentProvider -> CheckoutForm: "提供 context"
|
|
28
|
+
PaymentProvider -> CustomerInvoiceList: "提供 context"
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
此函式庫提供兩個主要的 provider,每個都有不同的用途。請選擇適合您需求的 provider。
|
|
32
|
+
|
|
33
|
+
<x-cards>
|
|
34
|
+
<x-card data-title="PaymentProvider" data-icon="lucide:package" data-href="/providers/payment-provider">
|
|
35
|
+
幾乎所有與支付相關的操作都需要的基礎 provider。它管理支付方式、貨幣設定、使用者工作階段資訊,並提供一個預先設定的 API 用戶端。
|
|
36
|
+
</x-card>
|
|
37
|
+
<x-card data-title="DonateProvider" data-icon="lucide:heart" data-href="/providers/donate-provider">
|
|
38
|
+
一個專為捐贈功能設計的 provider。它處理捐贈小工具的設定和狀態,例如使用 CheckoutDonate 元件實作的那些。
|
|
39
|
+
</x-card>
|
|
40
|
+
</x-cards>
|
|
41
|
+
|
|
42
|
+
點擊上方的 provider 以查看其詳細文件,包括必要的 props 和設定範例。
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# 提供者
|
|
2
|
+
|
|
3
|
+
Context 提供者是 `@blocklet/payment-react` 的一个核心概念。它们充当您应用程序部分的包装器,使用 React 的 Context API 将必要的数据和函数传递给嵌套在其中的所有组件。这避免了需要通过组件树的多个层级手动向下传递 props。
|
|
4
|
+
|
|
5
|
+
要使用此库中的大多数组件,您必须使用适当的提供者来包装您的应用程序或相关页面。
|
|
6
|
+
|
|
7
|
+
```d2 Basic Provider Structure icon=graph:flowchart
|
|
8
|
+
direction: down
|
|
9
|
+
|
|
10
|
+
您的应用程序: {
|
|
11
|
+
shape: rectangle
|
|
12
|
+
|
|
13
|
+
PaymentProvider: {
|
|
14
|
+
label: "PaymentProvider"
|
|
15
|
+
shape: rectangle
|
|
16
|
+
|
|
17
|
+
CheckoutForm: {
|
|
18
|
+
label: "CheckoutForm"
|
|
19
|
+
}
|
|
20
|
+
CustomerInvoiceList: {
|
|
21
|
+
label: "CustomerInvoiceList"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
您的应用程序 -> PaymentProvider: "包装"
|
|
27
|
+
PaymentProvider -> CheckoutForm: "提供上下文"
|
|
28
|
+
PaymentProvider -> CustomerInvoiceList: "提供上下文"
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
该库提供了两个主要的提供者,每个都有不同的用途。选择适合您需求的一个。
|
|
32
|
+
|
|
33
|
+
<x-cards>
|
|
34
|
+
<x-card data-title="PaymentProvider" data-icon="lucide:package" data-href="/providers/payment-provider">
|
|
35
|
+
这是几乎所有支付相关操作所需的基础提供者。它管理支付方式、货币设置、用户会话信息,并提供一个预配置的 API 客户端。
|
|
36
|
+
</x-card>
|
|
37
|
+
<x-card data-title="DonateProvider" data-icon="lucide:heart" data-href="/providers/donate-provider">
|
|
38
|
+
一个用于捐赠功能的专用提供者。它处理捐赠小部件的配置和状态,例如使用 CheckoutDonate 组件实现的那些小部件。
|
|
39
|
+
</x-card>
|
|
40
|
+
</x-cards>
|
|
41
|
+
|
|
42
|
+
点击上方的提供者以查看其详细文档,包括所需的 props 和设置示例。
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blocklet/payment-react",
|
|
3
|
-
"version": "1.20.
|
|
3
|
+
"version": "1.20.17",
|
|
4
4
|
"description": "Reusable react components for payment kit v2",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
"@babel/core": "^7.27.4",
|
|
95
95
|
"@babel/preset-env": "^7.27.2",
|
|
96
96
|
"@babel/preset-react": "^7.27.1",
|
|
97
|
-
"@blocklet/payment-types": "1.20.
|
|
97
|
+
"@blocklet/payment-types": "1.20.17",
|
|
98
98
|
"@storybook/addon-essentials": "^7.6.20",
|
|
99
99
|
"@storybook/addon-interactions": "^7.6.20",
|
|
100
100
|
"@storybook/addon-links": "^7.6.20",
|
|
@@ -125,5 +125,5 @@
|
|
|
125
125
|
"vite-plugin-babel": "^1.3.1",
|
|
126
126
|
"vite-plugin-node-polyfills": "^0.23.0"
|
|
127
127
|
},
|
|
128
|
-
"gitHead": "
|
|
128
|
+
"gitHead": "20e9d7519327cb4df0c93375ff85783303fc99d6"
|
|
129
129
|
}
|