@blocklet/payment-react 1.20.16 → 1.20.18

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 (102) hide show
  1. package/.aigne/doc-smith/config.yaml +7 -1
  2. package/.aigne/doc-smith/upload-cache.yaml +441 -0
  3. package/docs/components-business-auto-topup.ja.md +187 -0
  4. package/docs/components-business-auto-topup.zh-TW.md +187 -0
  5. package/docs/components-business-auto-topup.zh.md +187 -0
  6. package/docs/components-business-overdue-invoice-payment.ja.md +196 -0
  7. package/docs/components-business-overdue-invoice-payment.zh-TW.md +197 -0
  8. package/docs/components-business-overdue-invoice-payment.zh.md +197 -0
  9. package/docs/components-business-resume-subscription.ja.md +190 -0
  10. package/docs/components-business-resume-subscription.zh-TW.md +190 -0
  11. package/docs/components-business-resume-subscription.zh.md +190 -0
  12. package/docs/components-business.ja.md +21 -0
  13. package/docs/components-business.zh-TW.md +21 -0
  14. package/docs/components-business.zh.md +21 -0
  15. package/docs/components-checkout-checkout-donate.ja.md +259 -0
  16. package/docs/components-checkout-checkout-donate.zh-TW.md +259 -0
  17. package/docs/components-checkout-checkout-donate.zh.md +259 -0
  18. package/docs/components-checkout-checkout-form.ja.md +163 -0
  19. package/docs/components-checkout-checkout-form.zh-TW.md +163 -0
  20. package/docs/components-checkout-checkout-form.zh.md +163 -0
  21. package/docs/components-checkout-checkout-table.ja.md +148 -0
  22. package/docs/components-checkout-checkout-table.zh-TW.md +148 -0
  23. package/docs/components-checkout-checkout-table.zh.md +149 -0
  24. package/docs/components-checkout.ja.md +65 -0
  25. package/docs/components-checkout.zh-TW.md +65 -0
  26. package/docs/components-checkout.zh.md +65 -0
  27. package/docs/components-history-credit-grants-list.ja.md +73 -0
  28. package/docs/components-history-credit-grants-list.zh-TW.md +73 -0
  29. package/docs/components-history-credit-grants-list.zh.md +73 -0
  30. package/docs/components-history-credit-transactions-list.ja.md +106 -0
  31. package/docs/components-history-credit-transactions-list.zh-TW.md +106 -0
  32. package/docs/components-history-credit-transactions-list.zh.md +106 -0
  33. package/docs/components-history-invoice-list.ja.md +110 -0
  34. package/docs/components-history-invoice-list.zh-TW.md +110 -0
  35. package/docs/components-history-invoice-list.zh.md +110 -0
  36. package/docs/components-history-payment-list.ja.md +44 -0
  37. package/docs/components-history-payment-list.zh-TW.md +44 -0
  38. package/docs/components-history-payment-list.zh.md +44 -0
  39. package/docs/components-history.ja.md +67 -0
  40. package/docs/components-history.zh-TW.md +67 -0
  41. package/docs/components-history.zh.md +67 -0
  42. package/docs/components-ui-form-elements-address-form.ja.md +121 -0
  43. package/docs/components-ui-form-elements-address-form.zh-TW.md +121 -0
  44. package/docs/components-ui-form-elements-address-form.zh.md +121 -0
  45. package/docs/components-ui-form-elements-country-select.ja.md +126 -0
  46. package/docs/components-ui-form-elements-country-select.zh-TW.md +126 -0
  47. package/docs/components-ui-form-elements-country-select.zh.md +126 -0
  48. package/docs/components-ui-form-elements-currency-selector.ja.md +108 -0
  49. package/docs/components-ui-form-elements-currency-selector.zh-TW.md +108 -0
  50. package/docs/components-ui-form-elements-currency-selector.zh.md +108 -0
  51. package/docs/components-ui-form-elements-phone-input.ja.md +138 -0
  52. package/docs/components-ui-form-elements-phone-input.zh-TW.md +138 -0
  53. package/docs/components-ui-form-elements-phone-input.zh.md +139 -0
  54. package/docs/components-ui-form-elements.ja.md +91 -0
  55. package/docs/components-ui-form-elements.zh-TW.md +91 -0
  56. package/docs/components-ui-form-elements.zh.md +91 -0
  57. package/docs/components-ui-payment-summary.ja.md +109 -0
  58. package/docs/components-ui-payment-summary.zh-TW.md +109 -0
  59. package/docs/components-ui-payment-summary.zh.md +109 -0
  60. package/docs/components-ui-pricing-table.ja.md +140 -0
  61. package/docs/components-ui-pricing-table.zh-TW.md +140 -0
  62. package/docs/components-ui-pricing-table.zh.md +140 -0
  63. package/docs/components-ui.ja.md +71 -0
  64. package/docs/components-ui.zh-TW.md +71 -0
  65. package/docs/components-ui.zh.md +71 -0
  66. package/docs/components.ja.md +122 -0
  67. package/docs/components.zh-TW.md +122 -0
  68. package/docs/components.zh.md +122 -0
  69. package/docs/getting-started.ja.md +84 -0
  70. package/docs/getting-started.zh-TW.md +84 -0
  71. package/docs/getting-started.zh.md +84 -0
  72. package/docs/guides-theming.ja.md +213 -0
  73. package/docs/guides-theming.zh-TW.md +213 -0
  74. package/docs/guides-theming.zh.md +213 -0
  75. package/docs/guides-utilities.ja.md +197 -0
  76. package/docs/guides-utilities.zh-TW.md +197 -0
  77. package/docs/guides-utilities.zh.md +197 -0
  78. package/docs/guides.ja.md +18 -0
  79. package/docs/guides.zh-TW.md +18 -0
  80. package/docs/guides.zh.md +18 -0
  81. package/docs/hooks-use-mobile.ja.md +84 -0
  82. package/docs/hooks-use-mobile.zh-TW.md +84 -0
  83. package/docs/hooks-use-mobile.zh.md +84 -0
  84. package/docs/hooks-use-subscription.ja.md +111 -0
  85. package/docs/hooks-use-subscription.zh-TW.md +111 -0
  86. package/docs/hooks-use-subscription.zh.md +110 -0
  87. package/docs/hooks.ja.md +14 -0
  88. package/docs/hooks.zh-TW.md +14 -0
  89. package/docs/hooks.zh.md +14 -0
  90. package/docs/overview.ja.md +80 -0
  91. package/docs/overview.zh-TW.md +80 -0
  92. package/docs/overview.zh.md +80 -0
  93. package/docs/providers-donate-provider.ja.md +153 -0
  94. package/docs/providers-donate-provider.zh-TW.md +153 -0
  95. package/docs/providers-donate-provider.zh.md +153 -0
  96. package/docs/providers-payment-provider.ja.md +191 -0
  97. package/docs/providers-payment-provider.zh-TW.md +191 -0
  98. package/docs/providers-payment-provider.zh.md +191 -0
  99. package/docs/providers.ja.md +42 -0
  100. package/docs/providers.zh-TW.md +42 -0
  101. package/docs/providers.zh.md +42 -0
  102. package/package.json +3 -3
@@ -0,0 +1,122 @@
1
+ # 元件
2
+
3
+ `@blocklet/payment-react` 函式庫提供了一套全面的預建 React 元件,旨在加速支付、訂閱和捐贈功能的開發。這些元件經過分類,以幫助您為工作找到合適的工具,無論您需要一個完整的即插即用解決方案,還是需要精細的 UI 元素來建立自訂體驗。
4
+
5
+ 所有元件都設計為在 `PaymentProvider` 上下文中無縫工作,該上下文處理狀態管理和 API 通訊。
6
+
7
+ ## 元件架構
8
+
9
+ 下圖說明了高階元件通常如何互動。面向使用者的元件,如 `CheckoutTable` 或 `CheckoutDonate`,作為入口點,然後利用核心的 `CheckoutForm` 來處理最終的支付處理。
10
+
11
+ ```d2
12
+ direction: down
13
+
14
+ User: {
15
+ shape: c4-person
16
+ }
17
+
18
+ PaymentProvider-Context: {
19
+ label: "PaymentProvider 上下文"
20
+ shape: rectangle
21
+ style: {
22
+ stroke: "#888"
23
+ stroke-width: 2
24
+ stroke-dash: 4
25
+ }
26
+
27
+ Entry-Points: {
28
+ label: "高階元件"
29
+ shape: rectangle
30
+
31
+ CheckoutTable: {
32
+ label: "CheckoutTable"
33
+ }
34
+
35
+ CheckoutDonate: {
36
+ label: "CheckoutDonate"
37
+ }
38
+ }
39
+
40
+ Core-Processor: {
41
+ label: "核心支付處理器"
42
+ shape: rectangle
43
+
44
+ CheckoutForm: {
45
+ label: "CheckoutForm"
46
+ }
47
+ }
48
+ }
49
+
50
+ User -> PaymentProvider-Context.Entry-Points.CheckoutTable: "選擇一個方案"
51
+ User -> PaymentProvider-Context.Entry-Points.CheckoutDonate: "進行一次捐贈"
52
+ PaymentProvider-Context.Entry-Points.CheckoutTable -> PaymentProvider-Context.Core-Processor.CheckoutForm: "啟動結帳"
53
+ PaymentProvider-Context.Entry-Points.CheckoutDonate -> PaymentProvider-Context.Core-Processor.CheckoutForm: "啟動結帳"
54
+ ```
55
+
56
+ ## 元件類別
57
+
58
+ 探索我們的元件類別,找到您需要的建構區塊。
59
+
60
+ ### 結帳元件
61
+
62
+ 這些是高階元件,提供完整、開箱即用的支付體驗。將它們用作您支付流程的主要入口點。
63
+
64
+ <x-cards>
65
+ <x-card data-title="CheckoutForm" data-icon="lucide:credit-card" data-href="/components/checkout/checkout-form">
66
+ 處理支付連結和結帳工作階段的主要元件。
67
+ </x-card>
68
+ <x-card data-title="CheckoutTable" data-icon="lucide:table" data-href="/components/checkout/checkout-table">
69
+ 呈現完整的價格表並處理結帳流程。
70
+ </x-card>
71
+ <x-card data-title="CheckoutDonate" data-icon="lucide:heart-handshake" data-href="/components/checkout/checkout-donate">
72
+ 使用這個靈活的元件實現捐贈功能。
73
+ </x-card>
74
+ </x-cards>
75
+
76
+ ### UI 元件
77
+
78
+ 用於建立自訂支付表單和顯示的精細元件集合。結合這些區塊,建立一個與您應用程式設計完美匹配的使用者介面。
79
+
80
+ <x-cards>
81
+ <x-card data-title="PricingTable" data-icon="lucide:layout-list" data-href="/components/ui/pricing-table">
82
+ 在結構化表格中顯示訂閱方案和價格選項。
83
+ </x-card>
84
+ <x-card data-title="PaymentSummary" data-icon="lucide:receipt" data-href="/components/ui/payment-summary">
85
+ 顯示訂單的詳細摘要,包括項目和總計。
86
+ </x-card>
87
+ <x-card data-title="Form Elements" data-icon="lucide:pencil-ruler" data-href="/components/ui/form-elements">
88
+ 用於建立自訂支付和聯絡表單的輸入元件集合。
89
+ </x-card>
90
+ </x-cards>
91
+
92
+ ### 業務邏輯元件
93
+
94
+ 旨在處理複雜業務工作流程的專用元件,例如管理逾期發票、恢復訂閱和設定自動點數儲值。
95
+
96
+ <x-cards>
97
+ <x-card data-title="OverdueInvoicePayment" data-icon="lucide:file-warning" data-href="/components/business/overdue-invoice-payment">
98
+ 處理客戶或訂閱的逾期發票付款。
99
+ </x-card>
100
+ <x-card data-title="ResumeSubscription" data-icon="lucide:play-circle" data-href="/components/business/resume-subscription">
101
+ 讓使用者輕鬆地恢復已取消的訂閱。
102
+ </x-card>
103
+ <x-card data-title="Auto-Topup Components" data-icon="lucide:battery-charging" data-href="/components/business/auto-topup">
104
+ 管理和設定自動點數儲值功能。
105
+ </x-card>
106
+ </x-cards>
107
+
108
+ ### 歷史記錄元件
109
+
110
+ 向您的使用者顯示歷史支付和點數資料。這些元件可以輕鬆呈現發票、付款和點數交易的列表。
111
+
112
+ <x-cards>
113
+ <x-card data-title="CustomerInvoiceList" data-icon="lucide:history" data-href="/components/history/invoice-list">
114
+ 呈現客戶的發票列表,包含詳細資訊和狀態。
115
+ </x-card>
116
+ <x-card data-title="CustomerPaymentList" data-icon="lucide:landmark" data-href="/components/history/payment-list">
117
+ 顯示客戶的付款歷史,包括交易詳情。
118
+ </x-card>
119
+ <x-card data-title="CreditGrantsList" data-icon="lucide:award" data-href="/components/history/credit-grants-list">
120
+ 顯示點數授予列表,包括狀態和剩餘金額。
121
+ </x-card>
122
+ </x-cards>
@@ -0,0 +1,122 @@
1
+ # 组件
2
+
3
+ `@blocklet/payment-react` 库提供了一套全面的预构建 React 组件,旨在加速支付、订阅和捐赠功能的开发。这些组件进行了分类,以帮助您找到适合工作的工具,无论您需要的是完整的即用型解决方案,还是用于构建自定义体验的精细 UI 元素。
4
+
5
+ 所有组件都设计为在 `PaymentProvider` 上下文中无缝工作,该上下文负责处理状态管理和 API 通信。
6
+
7
+ ## 组件架构
8
+
9
+ 下图说明了高级组件通常如何交互。面向用户的组件(如 `CheckoutTable` 或 `CheckoutDonate`)作为入口点,然后利用核心的 `CheckoutForm` 来处理最终的支付流程。
10
+
11
+ ```d2
12
+ direction: down
13
+
14
+ User: {
15
+ shape: c4-person
16
+ }
17
+
18
+ PaymentProvider-Context: {
19
+ label: "PaymentProvider 上下文"
20
+ shape: rectangle
21
+ style: {
22
+ stroke: "#888"
23
+ stroke-width: 2
24
+ stroke-dash: 4
25
+ }
26
+
27
+ Entry-Points: {
28
+ label: "高级组件"
29
+ shape: rectangle
30
+
31
+ CheckoutTable: {
32
+ label: "CheckoutTable"
33
+ }
34
+
35
+ CheckoutDonate: {
36
+ label: "CheckoutDonate"
37
+ }
38
+ }
39
+
40
+ Core-Processor: {
41
+ label: "核心支付处理器"
42
+ shape: rectangle
43
+
44
+ CheckoutForm: {
45
+ label: "CheckoutForm"
46
+ }
47
+ }
48
+ }
49
+
50
+ User -> PaymentProvider-Context.Entry-Points.CheckoutTable: "选择一个计划"
51
+ User -> PaymentProvider-Context.Entry-Points.CheckoutDonate: "进行捐赠"
52
+ PaymentProvider-Context.Entry-Points.CheckoutTable -> PaymentProvider-Context.Core-Processor.CheckoutForm: "发起结账"
53
+ PaymentProvider-Context.Entry-Points.CheckoutDonate -> PaymentProvider-Context.Core-Processor.CheckoutForm: "发起结账"
54
+ ```
55
+
56
+ ## 组件分类
57
+
58
+ 浏览我们的组件分类,找到您需要的构建模块。
59
+
60
+ ### 结账组件
61
+
62
+ 这些是高级组件,提供完整的、开箱即用的支付体验。将它们用作您支付流程的主要入口点。
63
+
64
+ <x-cards>
65
+ <x-card data-title="CheckoutForm" data-icon="lucide:credit-card" data-href="/components/checkout/checkout-form">
66
+ 用于处理支付链接和结账会话的主要组件。
67
+ </x-card>
68
+ <x-card data-title="CheckoutTable" data-icon="lucide:table" data-href="/components/checkout/checkout-table">
69
+ 渲染一个完整的价格表并处理结账流程。
70
+ </x-card>
71
+ <x-card data-title="CheckoutDonate" data-icon="lucide:heart-handshake" data-href="/components/checkout/checkout-donate">
72
+ 使用这个灵活的组件实现捐赠功能。
73
+ </x-card>
74
+ </x-cards>
75
+
76
+ ### UI 组件
77
+
78
+ 一组用于构建自定义支付表单和显示的精细组件。组合这些模块,创建一个与您的应用程序设计完美匹配的用户界面。
79
+
80
+ <x-cards>
81
+ <x-card data-title="PricingTable" data-icon="lucide:layout-list" data-href="/components/ui/pricing-table">
82
+ 以结构化表格的形式显示订阅计划和价格选项。
83
+ </x-card>
84
+ <x-card data-title="PaymentSummary" data-icon="lucide:receipt" data-href="/components/ui/payment-summary">
85
+ 显示订单的详细摘要,包括订单项和总计。
86
+ </x-card>
87
+ <x-card data-title="Form Elements" data-icon="lucide:pencil-ruler" data-href="/components/ui/form-elements">
88
+ 用于构建自定义支付和联系表单的输入集合。
89
+ </x-card>
90
+ </x-cards>
91
+
92
+ ### 业务逻辑组件
93
+
94
+ 专门用于处理复杂业务工作流的组件,例如管理逾期发票、恢复订阅和配置自动信用充值。
95
+
96
+ <x-cards>
97
+ <x-card data-title="OverdueInvoicePayment" data-icon="lucide:file-warning" data-href="/components/business/overdue-invoice-payment">
98
+ 处理客户或订阅的逾期发票支付。
99
+ </x-card>
100
+ <x-card data-title="ResumeSubscription" data-icon="lucide:play-circle" data-href="/components/business/resume-subscription">
101
+ 允许用户轻松恢复已取消的订阅。
102
+ </x-card>
103
+ <x-card data-title="Auto-Topup Components" data-icon="lucide:battery-charging" data-href="/components/business/auto-topup">
104
+ 管理和配置自动信用充值功能。
105
+ </x-card>
106
+ </x-cards>
107
+
108
+ ### 历史组件
109
+
110
+ 向您的用户显示历史支付和信用数据。这些组件可以轻松渲染发票、支付和信用交易列表。
111
+
112
+ <x-cards>
113
+ <x-card data-title="CustomerInvoiceList" data-icon="lucide:history" data-href="/components/history/invoice-list">
114
+ 渲染客户的发票列表,包含详细信息和状态。
115
+ </x-card>
116
+ <x-card data-title="CustomerPaymentList" data-icon="lucide:landmark" data-href="/components/history/payment-list">
117
+ 显示客户的支付历史,包括交易详情。
118
+ </x-card>
119
+ <x-card data-title="CreditGrantsList" data-icon="lucide:award" data-href="/components/history/credit-grants-list">
120
+ 显示信用授予列表,包括状态和剩余金额。
121
+ </x-card>
122
+ </x-cards>
@@ -0,0 +1,84 @@
1
+ # はじめに
2
+
3
+ このガイドでは、`@blocklet/payment-react`をインストールし、基本的で機能的な支払いフォームをアプリケーションに統合するための重要な手順を説明します。わずか数分で、動作するチェックアウト体験を構築できます。
4
+
5
+ ## ステップ1:インストール
6
+
7
+ まず、npmまたはお好みのパッケージマネージャーを使用して、ライブラリをプロジェクトに追加します。
8
+
9
+ ```bash Installation Command icon=lucide:terminal
10
+ npm install @blocklet/payment-react
11
+ ```
12
+
13
+ ## ステップ2:PaymentProviderのセットアップ
14
+
15
+ このライブラリのほとんどのコンポーネントは、共有の支払いコンテキストへのアクセスを必要とします。`PaymentProvider`コンポーネントがこのコンテキストを提供し、支払いが処理されるアプリケーションまたはコンポーネントツリーのルートに配置する必要があります。
16
+
17
+ 正しく動作するためには、アプリケーションの認証コンテキストから`session`オブジェクトと`connect` API関数が必要です。
18
+
19
+ ```tsx App.tsx icon=logos:react
20
+ import { PaymentProvider } from '@blocklet/payment-react';
21
+ // これはアプリの認証コンテキストフックのプレースホルダーです。
22
+ // 現在のユーザーセッションとAPIコネクタを返す必要があります。
23
+ import { useSessionContext } from './contexts/session';
24
+
25
+ function App({ children }) {
26
+ const { session, connectApi } = useSessionContext();
27
+
28
+ return (
29
+ <PaymentProvider session={session} connect={connectApi}>
30
+ {/* 支払コンポーネントはここに配置されます */}
31
+ {children}
32
+ </PaymentProvider>
33
+ );
34
+ }
35
+ ```
36
+
37
+ > セッションコンテキストの設定や高度な`PaymentProvider`の設定に関する詳細については、[PaymentProviderのドキュメント](./providers-payment-provider.md)をご覧ください。
38
+
39
+ ## ステップ3:CheckoutFormの追加
40
+
41
+ `CheckoutForm`は、支払いフローをレンダリングするための主要なコンポーネントです。支払いリンクから開始される一回限りの支払いとサブスクリプションの両方を処理できます。
42
+
43
+ 使用するには、単に`PaymentProvider`内に配置し、支払いリンク(`plink_...`)またはチェックアウトセッション(`cs_...`)の必須`id`を渡します。
44
+
45
+ ## 完全な例
46
+
47
+ 上記の手順を組み合わせた、完全で最小限の例を以下に示します。このコードを統合の開始点として使用できます。
48
+
49
+ ```tsx PaymentPage.tsx icon=logos:react
50
+ import { PaymentProvider, CheckoutForm } from '@blocklet/payment-react';
51
+ // これはアプリの認証コンテキストフックのプレースホルダーです。
52
+ import { useSessionContext } from './contexts/session';
53
+
54
+ function PaymentPage() {
55
+ const { session, connectApi } = useSessionContext();
56
+
57
+ // 支払いリンクIDは、Payment Kitダッシュボードから生成されます。
58
+ const paymentLinkId = 'plink_xxx';
59
+
60
+ return (
61
+ <PaymentProvider session={session} connect={connectApi}>
62
+ <CheckoutForm
63
+ id={paymentLinkId}
64
+ mode="inline" // フォームをページに直接埋め込みます
65
+ showCheckoutSummary={true}
66
+ onChange={(state) => console.log('Checkout State Changed:', state)}
67
+ onPaid={(result) => console.log('Payment Successful:', result)}
68
+ />
69
+ </PaymentProvider>
70
+ );
71
+ }
72
+
73
+ export default PaymentPage;
74
+ ```
75
+
76
+ この設定により、`CheckoutForm`は完全な支払いUIをレンダリングし、ユーザー入力を処理し、トランザクションをシームレスに処理します。
77
+
78
+ ## 次のステップ
79
+
80
+ おめでとうございます!最初の支払いフォームの統合に成功しました。これで、より高度な機能やコンポーネントを探求する準備が整いました。
81
+
82
+ - **[CheckoutForm](./components-checkout-checkout-form.md)**: `CheckoutForm`のプロパティとカスタマイズオプションについてさらに詳しく学びます。
83
+ - **[Providers](./providers.md)**: ライブラリを支えるコンテキストプロバイダーについて詳しく学びます。
84
+ - **[Components](./components.md)**: 利用可能なUIおよびビジネスロジックコンポーネントの全範囲を発見します。
@@ -0,0 +1,84 @@
1
+ # 入門指南
2
+
3
+ 本指南將引導您完成安裝 `@blocklet/payment-react` 並將一個基本的、功能齊全的支付表單整合到您的應用程式中的必要步驟。只需幾分鐘,您就能擁有一個可運作的結帳體驗。
4
+
5
+ ## 步驟 1:安裝
6
+
7
+ 首先,使用 npm 或您偏好的套件管理器將該函式庫新增至您的專案中。
8
+
9
+ ```bash Installation Command icon=lucide:terminal
10
+ npm install @blocklet/payment-react
11
+ ```
12
+
13
+ ## 步驟 2:設定 PaymentProvider
14
+
15
+ 此函式庫中的大多數元件都需要存取共用的支付上下文。`PaymentProvider` 元件提供了這個上下文,並且必須放置在您的應用程式或將處理支付的元件樹的根部。
16
+
17
+ 它需要來自您應用程式身份驗證上下文的 `session` 物件和 `connect` API 函式才能正常運作。
18
+
19
+ ```tsx App.tsx icon=logos:react
20
+ import { PaymentProvider } from '@blocklet/payment-react';
21
+ // 這是您應用程式身份驗證上下文掛鉤的佔位符。
22
+ // 它應返回當前使用者會話和一個 API 連接器。
23
+ import { useSessionContext } from './contexts/session';
24
+
25
+ function App({ children }) {
26
+ const { session, connectApi } = useSessionContext();
27
+
28
+ return (
29
+ <PaymentProvider session={session} connect={connectApi}>
30
+ {/* 您的支付元件將會放在這裡 */}
31
+ {children}
32
+ </PaymentProvider>
33
+ );
34
+ }
35
+ ```
36
+
37
+ > 有關設定您的會話上下文和進階 `PaymentProvider` 配置的詳細資訊,請參閱 [PaymentProvider 文件](./providers-payment-provider.md)。
38
+
39
+ ## 步驟 3:新增 CheckoutForm
40
+
41
+ `CheckoutForm` 是呈現支付流程的主要元件。它可以處理從支付連結發起的單次支付和訂閱。
42
+
43
+ 要使用它,只需將其放置在 `PaymentProvider` 內部,並傳入支付連結(`plink_...`)或結帳會話(`cs_...`)所需的 `id`。
44
+
45
+ ## 完整範例
46
+
47
+ 這是一個結合了上述步驟的完整、最小化的範例。您可以使用此程式碼作為整合的起點。
48
+
49
+ ```tsx PaymentPage.tsx icon=logos:react
50
+ import { PaymentProvider, CheckoutForm } from '@blocklet/payment-react';
51
+ // 這是您應用程式身份驗證上下文掛鉤的佔位符。
52
+ import { useSessionContext } from './contexts/session';
53
+
54
+ function PaymentPage() {
55
+ const { session, connectApi } = useSessionContext();
56
+
57
+ // 支付連結 ID 是從您的 Payment Kit 儀表板生成的。
58
+ const paymentLinkId = 'plink_xxx';
59
+
60
+ return (
61
+ <PaymentProvider session={session} connect={connectApi}>
62
+ <CheckoutForm
63
+ id={paymentLinkId}
64
+ mode="inline" // 將表單直接嵌入到您的頁面中
65
+ showCheckoutSummary={true}
66
+ onChange={(state) => console.log('Checkout State Changed:', state)}
67
+ onPaid={(result) => console.log('Payment Successful:', result)}
68
+ />
69
+ </PaymentProvider>
70
+ );
71
+ }
72
+
73
+ export default PaymentPage;
74
+ ```
75
+
76
+ 透過此設定,`CheckoutForm` 將呈現一個完整的支付使用者介面,處理使用者輸入,並無縫地處理交易。
77
+
78
+ ## 後續步驟
79
+
80
+ 恭喜!您已成功整合您的第一個支付表單。現在您可以開始探索更多進階功能和元件。
81
+
82
+ - **[CheckoutForm](./components-checkout-checkout-form.md)**:深入了解 `CheckoutForm` 的屬性和自訂選項。
83
+ - **[Providers](./providers.md)**:了解更多關於支援此函式庫的上下文提供者。
84
+ - **[Components](./components.md)**:探索所有可用的 UI 和業務邏輯元件。
@@ -0,0 +1,84 @@
1
+ # 快速入门
2
+
3
+ 本指南将引导您完成安装 `@blocklet/payment-react` 并将一个基础、功能齐全的支付表单集成到您的应用程序中的基本步骤。只需几分钟,您就可以拥有一个可用的结账体验。
4
+
5
+ ## 第 1 步:安装
6
+
7
+ 首先,使用 npm 或您偏好的包管理器将该库添加到您的项目中。
8
+
9
+ ```bash Installation Command icon=lucide:terminal
10
+ npm install @blocklet/payment-react
11
+ ```
12
+
13
+ ## 第 2 步:设置 PaymentProvider
14
+
15
+ 此库中的大多数组件都需要访问共享的支付上下文。`PaymentProvider` 组件提供了此上下文,并且必须放置在将处理支付的应用程序或组件树的根部。
16
+
17
+ 它需要来自您应用程序身份验证上下文的 `session` 对象和 `connect` API 函数才能正常工作。
18
+
19
+ ```tsx App.tsx icon=logos:react
20
+ import { PaymentProvider } from '@blocklet/payment-react';
21
+ // 这是您应用程序身份验证上下文钩子的占位符。
22
+ // 它应返回当前用户会话和一个 API 连接器。
23
+ import { useSessionContext } from './contexts/session';
24
+
25
+ function App({ children }) {
26
+ const { session, connectApi } = useSessionContext();
27
+
28
+ return (
29
+ <PaymentProvider session={session} connect={connectApi}>
30
+ {/* 您的支付组件将放在这里 */}
31
+ {children}
32
+ </PaymentProvider>
33
+ );
34
+ }
35
+ ```
36
+
37
+ > 有关设置会话上下文和高级 `PaymentProvider` 配置的详细信息,请参阅 [PaymentProvider 文档](./providers-payment-provider.md)。
38
+
39
+ ## 第 3 步:添加 CheckoutForm
40
+
41
+ `CheckoutForm` 是用于呈现支付流程的主要组件。它可以处理一次性支付和通过支付链接发起的订阅。
42
+
43
+ 要使用它,只需将其放置在 `PaymentProvider` 内部,并传递支付链接 (`plink_...`) 或结账会话 (`cs_...`) 所需的 `id`。
44
+
45
+ ## 完整示例
46
+
47
+ 这是一个结合了以上步骤的完整、最小化的示例。您可以使用此代码作为集成的起点。
48
+
49
+ ```tsx PaymentPage.tsx icon=logos:react
50
+ import { PaymentProvider, CheckoutForm } from '@blocklet/payment-react';
51
+ // 这是您应用程序身份验证上下文钩子的占位符。
52
+ import { useSessionContext } from './contexts/session';
53
+
54
+ function PaymentPage() {
55
+ const { session, connectApi } = useSessionContext();
56
+
57
+ // 支付链接 ID 是从您的 Payment Kit 仪表板生成的。
58
+ const paymentLinkId = 'plink_xxx';
59
+
60
+ return (
61
+ <PaymentProvider session={session} connect={connectApi}>
62
+ <CheckoutForm
63
+ id={paymentLinkId}
64
+ mode="inline" // 将表单直接嵌入到您的页面中
65
+ showCheckoutSummary={true}
66
+ onChange={(state) => console.log('Checkout State Changed:', state)}
67
+ onPaid={(result) => console.log('Payment Successful:', result)}
68
+ />
69
+ </PaymentProvider>
70
+ );
71
+ }
72
+
73
+ export default PaymentPage;
74
+ ```
75
+
76
+ 通过此设置,`CheckoutForm` 将呈现一个完整的支付 UI,处理用户输入,并无缝处理交易。
77
+
78
+ ## 后续步骤
79
+
80
+ 恭喜!您已成功集成您的第一个支付表单。现在,您可以开始探索更高级的功能和组件了。
81
+
82
+ - **[CheckoutForm](./components-checkout-checkout-form.md)**:深入了解 `CheckoutForm` 的 props 和自定义选项。
83
+ - **[Providers](./providers.md)**:了解更多关于支持该库的上下文提供程序的信息。
84
+ - **[Components](./components.md)**:发现可用的全系列 UI 和业务逻辑组件。