payment-kit 1.13.302 → 1.13.304

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.
@@ -166,7 +166,7 @@ export default {
166
166
  } catch (err) {
167
167
  logger.error('Failed to finalize collect on arcblock', { paymentIntent: paymentIntent.id, error: err });
168
168
  await paymentIntent.update({ status: 'requires_capture' });
169
- return {};
169
+ throw err;
170
170
  }
171
171
  }
172
172
 
@@ -136,7 +136,7 @@ export default {
136
136
  console.error(err);
137
137
  logger.error('Failed to finalize paymentIntent on arcblock', { paymentIntent: paymentIntent.id, error: err });
138
138
  await paymentIntent.update({ status: 'requires_capture' });
139
- return {};
139
+ throw err;
140
140
  }
141
141
  }
142
142
 
@@ -166,7 +166,7 @@ export default {
166
166
  console.error(err);
167
167
  logger.error('Failed to finalize paymentIntent on ethereum', { paymentIntent: paymentIntent.id, error: err });
168
168
  await paymentIntent.update({ status: 'requires_capture' });
169
- return {};
169
+ throw err;
170
170
  }
171
171
  }
172
172
 
@@ -182,7 +182,7 @@ export default {
182
182
  } catch (err) {
183
183
  logger.error('Failed to finalize setup', { setupIntent: setupIntent.id, error: err });
184
184
  await setupIntent.update({ status: 'requires_capture' });
185
- return {};
185
+ throw err;
186
186
  }
187
187
  }
188
188
 
package/blocklet.yml CHANGED
@@ -14,7 +14,7 @@ repository:
14
14
  type: git
15
15
  url: git+https://github.com/blocklet/payment-kit.git
16
16
  specVersion: 1.2.8
17
- version: 1.13.302
17
+ version: 1.13.304
18
18
  logo: logo.png
19
19
  files:
20
20
  - dist
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "payment-kit",
3
- "version": "1.13.302",
3
+ "version": "1.13.304",
4
4
  "scripts": {
5
5
  "dev": "blocklet dev --open",
6
6
  "eject": "vite eject",
@@ -52,7 +52,7 @@
52
52
  "@arcblock/validator": "^1.18.124",
53
53
  "@blocklet/js-sdk": "1.16.28",
54
54
  "@blocklet/logger": "1.16.28",
55
- "@blocklet/payment-react": "1.13.302",
55
+ "@blocklet/payment-react": "1.13.304",
56
56
  "@blocklet/sdk": "1.16.28",
57
57
  "@blocklet/ui-react": "^2.10.3",
58
58
  "@blocklet/uploader": "^0.1.18",
@@ -118,7 +118,7 @@
118
118
  "devDependencies": {
119
119
  "@abtnode/types": "1.16.28",
120
120
  "@arcblock/eslint-config-ts": "^0.3.2",
121
- "@blocklet/payment-types": "1.13.302",
121
+ "@blocklet/payment-types": "1.13.304",
122
122
  "@types/cookie-parser": "^1.4.7",
123
123
  "@types/cors": "^2.8.17",
124
124
  "@types/debug": "^4.1.12",
@@ -160,5 +160,5 @@
160
160
  "parser": "typescript"
161
161
  }
162
162
  },
163
- "gitHead": "366468bdbb1c5e8837a3baff852067fa041609a1"
163
+ "gitHead": "c4b50c470fd96da9ac17e5c29bf351bdb2403ee5"
164
164
  }
@@ -20,7 +20,14 @@ export default function PaymentMethodForm() {
20
20
  name="type"
21
21
  control={control}
22
22
  render={({ field }) => (
23
- <ToggleButtonGroup {...field} onChange={(_, value: string) => setValue(field.name, value)} exclusive>
23
+ <ToggleButtonGroup
24
+ {...field}
25
+ onChange={(_, value: string) => {
26
+ if (value !== null) {
27
+ setValue(field.name, value);
28
+ }
29
+ }}
30
+ exclusive>
24
31
  <ToggleButton value="arcblock">ArcBlock</ToggleButton>
25
32
  <ToggleButton value="stripe">Stripe</ToggleButton>
26
33
  <ToggleButton value="ethereum">Ethereum</ToggleButton>
@@ -95,6 +95,7 @@ export default function PriceForm({ prefix, simple }: PriceFormProps) {
95
95
  const model = useWatch({ control, name: getFieldName('model') });
96
96
  const positive = (v: number) => v >= 0;
97
97
  const quantityPositive = (v: number | undefined) => !v || v.toString().match(/^(0|[1-9]\d*)$/);
98
+ const intervalCountPositive = (v: number) => Number.isInteger(Number(v)) && v > 0;
98
99
 
99
100
  const basePaymentMethod = settings.paymentMethods.find((x) =>
100
101
  x.payment_currencies.some((c) => c.id === settings.baseCurrency.id)
@@ -251,7 +252,14 @@ export default function PriceForm({ prefix, simple }: PriceFormProps) {
251
252
  control={control}
252
253
  disabled={isLocked}
253
254
  render={({ field }) => (
254
- <ToggleButtonGroup {...field} onChange={(_, value: string) => setValue(field.name, value)} exclusive>
255
+ <ToggleButtonGroup
256
+ {...field}
257
+ onChange={(_, value: string) => {
258
+ if (value !== null) {
259
+ setValue(field.name, value);
260
+ }
261
+ }}
262
+ exclusive>
255
263
  <ToggleButton value="recurring">{t('admin.price.types.recurring')}</ToggleButton>
256
264
  <ToggleButton value="one_time">{t('admin.price.types.onetime')}</ToggleButton>
257
265
  </ToggleButtonGroup>
@@ -301,6 +309,8 @@ export default function PriceForm({ prefix, simple }: PriceFormProps) {
301
309
  type="number"
302
310
  size="small"
303
311
  sx={{ width: INPUT_WIDTH }}
312
+ error={!intervalCountPositive(field.value)}
313
+ helperText={!intervalCountPositive(field.value) && t('admin.price.recurring.intervalCountTip')}
304
314
  InputProps={{
305
315
  startAdornment: <InputAdornment position="start">{t('common.every')}</InputAdornment>,
306
316
  endAdornment: (
@@ -138,6 +138,7 @@ export default flat({
138
138
  meteredTip:
139
139
  'Metered billing lets you charge customers based on reported usage at the end of each billing period.',
140
140
  aggregate: 'Charge for metered usage by',
141
+ intervalCountTip: 'Billing interval must be a positive integer',
141
142
  },
142
143
  currency: {
143
144
  add: 'Add more currencies',
@@ -134,6 +134,7 @@ export default flat({
134
134
  metered: '使用量按计量收费?',
135
135
  meteredTip: '计量计费允许您根据每个计费周期结束时的报告的使用情况向客户收费。',
136
136
  aggregate: '按何种方式收费计量使用',
137
+ intervalCountTip: '计费周期必须是正整数',
137
138
  },
138
139
  currency: {
139
140
  add: '添加更多货币',
@@ -146,7 +146,11 @@ function PaymentLinks() {
146
146
  <div className="table-toolbar-left">
147
147
  <ToggleButtonGroup
148
148
  value={search.active}
149
- onChange={(_, value) => setSearch((x) => ({ ...x, active: value }))}
149
+ onChange={(_, value) => {
150
+ if (value !== null) {
151
+ setSearch((x) => ({ ...x, active: value }));
152
+ }
153
+ }}
150
154
  exclusive>
151
155
  <ToggleButton value="">All</ToggleButton>
152
156
  <ToggleButton value="true">Active</ToggleButton>
@@ -130,7 +130,11 @@ function PricingTables() {
130
130
  <div className="table-toolbar-left">
131
131
  <ToggleButtonGroup
132
132
  value={search.active}
133
- onChange={(_, value) => setSearch((x) => ({ ...x, active: value }))}
133
+ onChange={(_, value) => {
134
+ if (value !== null) {
135
+ setSearch((x) => ({ ...x, active: value }));
136
+ }
137
+ }}
134
138
  exclusive>
135
139
  <ToggleButton value="">All</ToggleButton>
136
140
  <ToggleButton value="true">Active</ToggleButton>