@automattic/newspack-blocks 4.32.0 → 4.32.1

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/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## @automattic/newspack-blocks [4.32.1](https://github.com/Automattic/newspack-workspace/compare/newspack-blocks@4.32.0...newspack-blocks@4.32.1) (2026-09-16)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **checkout:** tighten modal checkout request handling ([#1065](https://github.com/Automattic/newspack-workspace/issues/1065)) ([89e1ab3](https://github.com/Automattic/newspack-workspace/commit/89e1ab3a6655e7378647bba77fa94ceacaa88c45))
7
+
1
8
  # @automattic/newspack-blocks [4.32.0](https://github.com/Automattic/newspack-workspace/compare/newspack-blocks@4.31.2...newspack-blocks@4.32.0) (2026-09-14)
2
9
 
3
10
 
@@ -15,6 +15,17 @@ defined( 'ABSPATH' ) || exit;
15
15
  * Modal Checkout Class.
16
16
  */
17
17
  final class Modal_Checkout {
18
+ /**
19
+ * Whether the current request is a validation-only checkout that process_checkout_action()
20
+ * accepted. Set true only alongside the woocommerce_checkout_update_totals write, which is
21
+ * what stops process_checkout() from creating an order — that coupling is the guarantee, not
22
+ * the nonce, which is only a CSRF check. Request-scoped on purpose: the filters that consult
23
+ * it run on every checkout request, so the request flag on its own is never enough.
24
+ *
25
+ * @var bool
26
+ */
27
+ private static $is_validation_only_request = false;
28
+
18
29
  /**
19
30
  * Checkout registration flag.
20
31
  *
@@ -397,8 +408,13 @@ final class Modal_Checkout {
397
408
  // rely on this checkout nonce requried by process checkout.
398
409
  $_REQUEST['woocommerce-process-checkout-nonce'] = wp_create_nonce( 'woocommerce-process_checkout' );
399
410
 
400
- // If this is a validation-only request, set the flag that tells process_checkout() to only validate the order.
411
+ // Accept the validation-only flag here, coupled with the update-totals write
412
+ // in the same branch. That write is what actually stops process_checkout()
413
+ // from creating an order, so the flag must never be true without it. Setting
414
+ // it before the WOOCOMMERCE_CHECKOUT early return above would let the two
415
+ // diverge on a request where WooCommerce has already defined the constant.
401
416
  if ( isset( $_POST['is_validation_only'] ) ) {
417
+ self::$is_validation_only_request = true;
402
418
  $_POST['woocommerce_checkout_update_totals'] = '1';
403
419
  }
404
420
 
@@ -2458,10 +2474,13 @@ final class Modal_Checkout {
2458
2474
  /**
2459
2475
  * Is the current request only to validate billing field inputs on the first modal screen?
2460
2476
  *
2477
+ * True only for a request whose nonce process_checkout_action() has verified and
2478
+ * which it accepted as validation-only.
2479
+ *
2461
2480
  * @return bool True if the request is for validation only.
2462
2481
  */
2463
2482
  private static function is_validation_only() {
2464
- return boolval( filter_input( INPUT_POST, 'is_validation_only', FILTER_SANITIZE_NUMBER_INT ) );
2483
+ return self::$is_validation_only_request;
2465
2484
  }
2466
2485
 
2467
2486
  /**
@@ -2,7 +2,7 @@ msgid ""
2
2
  msgstr ""
3
3
  "Project-Id-Version: Newspack Blocks\n"
4
4
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/newspack-blocks\n"
5
- "POT-Creation-Date: 2026-09-14T18:14:26+00:00\n"
5
+ "POT-Creation-Date: 2026-09-16T00:59:08+00:00\n"
6
6
  "PO-Revision-Date: 2024-08-30 08:45-0700\n"
7
7
  "Last-Translator: \n"
8
8
  "Language-Team: \n"
@@ -45,125 +45,125 @@ msgstr ""
45
45
  msgid "Automattic"
46
46
  msgstr ""
47
47
 
48
- #: includes/class-modal-checkout.php:377 includes/class-modal-checkout.php:646
48
+ #: includes/class-modal-checkout.php:388 includes/class-modal-checkout.php:662
49
49
  msgid "Invalid nonce."
50
50
  msgstr ""
51
51
 
52
- #: includes/class-modal-checkout.php:656
52
+ #: includes/class-modal-checkout.php:672
53
53
  msgid "Cart has been emptied."
54
54
  msgstr ""
55
55
 
56
56
  #. Translators: %s is the maximum price.
57
- #: includes/class-modal-checkout.php:773
57
+ #: includes/class-modal-checkout.php:789
58
58
  #, php-format
59
59
  msgid "Adjusted price must be less than the maximum of %s."
60
60
  msgstr ""
61
61
 
62
62
  #. Translators: %s is the name-your-price custom price.
63
- #: includes/class-modal-checkout.php:802
63
+ #: includes/class-modal-checkout.php:818
64
64
  #, php-format
65
65
  msgid "Adjusted price must be greater than base price of %s."
66
66
  msgstr ""
67
67
 
68
- #: includes/class-modal-checkout.php:829 includes/class-modal-checkout.php:933
68
+ #: includes/class-modal-checkout.php:845 includes/class-modal-checkout.php:949
69
69
  msgid "This product could not be added to the cart."
70
70
  msgstr ""
71
71
 
72
- #: includes/class-modal-checkout.php:892
72
+ #: includes/class-modal-checkout.php:908
73
73
  msgid ""
74
74
  "Go back and choose the number you want before changing your subscription."
75
75
  msgstr ""
76
76
 
77
- #: includes/class-modal-checkout.php:909
77
+ #: includes/class-modal-checkout.php:925
78
78
  msgid "This product is not in the cart."
79
79
  msgstr ""
80
80
 
81
- #: includes/class-modal-checkout.php:995
81
+ #: includes/class-modal-checkout.php:1011
82
82
  msgid "Updated."
83
83
  msgstr ""
84
84
 
85
- #: includes/class-modal-checkout.php:1050
86
- #: includes/class-modal-checkout.php:1133 dist/editor.js:26
85
+ #: includes/class-modal-checkout.php:1066
86
+ #: includes/class-modal-checkout.php:1149 dist/editor.js:26
87
87
  #: src/components/reorder-modal.js:254
88
88
  msgid "Close"
89
89
  msgstr ""
90
90
 
91
- #: includes/class-modal-checkout.php:1076
91
+ #: includes/class-modal-checkout.php:1092
92
92
  msgid "per"
93
93
  msgstr ""
94
94
 
95
- #: includes/class-modal-checkout.php:1187
95
+ #: includes/class-modal-checkout.php:1203
96
96
  msgid "Something went wrong. Please try again."
97
97
  msgstr ""
98
98
 
99
- #: includes/class-modal-checkout.php:1191
99
+ #: includes/class-modal-checkout.php:1207
100
100
  msgid "Or"
101
101
  msgstr ""
102
102
 
103
- #: includes/class-modal-checkout.php:1425
104
- #: includes/class-modal-checkout.php:1429
103
+ #: includes/class-modal-checkout.php:1441
104
+ #: includes/class-modal-checkout.php:1445
105
105
  msgid "Processing payment..."
106
106
  msgstr ""
107
107
 
108
- #: includes/class-modal-checkout.php:1433
108
+ #: includes/class-modal-checkout.php:1449
109
109
  msgid "Verifying details..."
110
110
  msgstr ""
111
111
 
112
- #: includes/class-modal-checkout.php:1437
112
+ #: includes/class-modal-checkout.php:1453
113
113
  msgid "Finalizing transaction..."
114
114
  msgstr ""
115
115
 
116
- #: includes/class-modal-checkout.php:1493
116
+ #: includes/class-modal-checkout.php:1509
117
117
  msgid ""
118
118
  "We're sorry, there was an unexpected error. Please try again in a few "
119
119
  "minutes."
120
120
  msgstr ""
121
121
 
122
- #: includes/class-modal-checkout.php:1505
122
+ #: includes/class-modal-checkout.php:1521
123
123
  msgid "Go back"
124
124
  msgstr ""
125
125
 
126
- #: includes/class-modal-checkout.php:1945
126
+ #: includes/class-modal-checkout.php:1961
127
127
  msgid "Password mismatch"
128
128
  msgstr ""
129
129
 
130
- #: includes/class-modal-checkout.php:1946
130
+ #: includes/class-modal-checkout.php:1962
131
131
  msgid "Password strength: Very weak"
132
132
  msgstr ""
133
133
 
134
- #: includes/class-modal-checkout.php:1947
134
+ #: includes/class-modal-checkout.php:1963
135
135
  msgid "Password strength: Weak"
136
136
  msgstr ""
137
137
 
138
- #: includes/class-modal-checkout.php:1948
138
+ #: includes/class-modal-checkout.php:1964
139
139
  msgid "Password strength: Medium"
140
140
  msgstr ""
141
141
 
142
- #: includes/class-modal-checkout.php:1949
142
+ #: includes/class-modal-checkout.php:1965
143
143
  msgid "Password strength: Strong"
144
144
  msgstr ""
145
145
 
146
- #: includes/class-modal-checkout.php:2329
146
+ #: includes/class-modal-checkout.php:2345
147
147
  msgid "Please enter someone else' email address to receive this gift."
148
148
  msgstr ""
149
149
 
150
- #: includes/class-modal-checkout.php:2330
150
+ #: includes/class-modal-checkout.php:2346
151
151
  msgid "Please enter a valid email address to receive this gift."
152
152
  msgstr ""
153
153
 
154
- #: includes/class-modal-checkout.php:2444
154
+ #: includes/class-modal-checkout.php:2460
155
155
  msgid "Close window"
156
156
  msgstr ""
157
157
 
158
158
  #. translators: %s: Site name.
159
- #: includes/class-modal-checkout.php:2535
159
+ #: includes/class-modal-checkout.php:2554
160
160
  #, php-format
161
161
  msgid ""
162
162
  "You're already a subscriber! You can only have one active subscription at a "
163
163
  "time. Thank you for supporting %s."
164
164
  msgstr ""
165
165
 
166
- #: includes/class-modal-checkout.php:2546
166
+ #: includes/class-modal-checkout.php:2565
167
167
  msgid ""
168
168
  "You're already a subscriber! You can only have one subscription at a time. "
169
169
  "If you wish to renew an expired subscription, please sign in and visit the "
@@ -173,106 +173,106 @@ msgstr ""
173
173
  #. translators: 1: Checkout button confirmation text. 2: Order total.
174
174
  #. translators: 1 is the name of the item. 2 is the price of the item.
175
175
  #. translators: keep %1$s first: it repeats the button's visible label, which speech input matches on. 1: the control's visible label. 2: title of the content being moved.
176
- #: includes/class-modal-checkout.php:2700
176
+ #: includes/class-modal-checkout.php:2719
177
177
  #: includes/modal-checkout/class-checkout-data.php:72 dist/editor.js:24
178
178
  #: src/components/reorder-modal.js:57
179
179
  #, php-format
180
180
  msgid "%1$s: %2$s"
181
181
  msgstr ""
182
182
 
183
- #: includes/class-modal-checkout.php:2883 dist/editor.js:67
183
+ #: includes/class-modal-checkout.php:2902 dist/editor.js:67
184
184
  #: src/blocks/iframe/iframe-placeholder.js:153
185
185
  msgid "Update"
186
186
  msgstr ""
187
187
 
188
- #: includes/class-modal-checkout.php:3161
188
+ #: includes/class-modal-checkout.php:3180
189
189
  msgid "Billing details"
190
190
  msgstr ""
191
191
 
192
- #: includes/class-modal-checkout.php:3162
192
+ #: includes/class-modal-checkout.php:3181
193
193
  msgid "Shipping details"
194
194
  msgstr ""
195
195
 
196
- #: includes/class-modal-checkout.php:3163
196
+ #: includes/class-modal-checkout.php:3182
197
197
  msgid "Gift recipient"
198
198
  msgstr ""
199
199
 
200
- #: includes/class-modal-checkout.php:3164
201
- #: includes/class-modal-checkout.php:3165
202
- #: includes/class-modal-checkout.php:3166
200
+ #: includes/class-modal-checkout.php:3183
201
+ #: includes/class-modal-checkout.php:3184
202
+ #: includes/class-modal-checkout.php:3185
203
203
  msgid "Complete your transaction"
204
204
  msgstr ""
205
205
 
206
- #: includes/class-modal-checkout.php:3167
206
+ #: includes/class-modal-checkout.php:3186
207
207
  msgctxt "Login modal title when logged out user attempts to checkout."
208
208
  msgid "Sign in to complete transaction"
209
209
  msgstr ""
210
210
 
211
- #: includes/class-modal-checkout.php:3172
211
+ #: includes/class-modal-checkout.php:3191
212
212
  msgctxt "Login modal title when unregistered user attempts to checkout"
213
213
  msgid "Register to complete transaction"
214
214
  msgstr ""
215
215
 
216
- #: includes/class-modal-checkout.php:3177
216
+ #: includes/class-modal-checkout.php:3196
217
217
  msgid "Continue browsing"
218
218
  msgstr ""
219
219
 
220
- #: includes/class-modal-checkout.php:3178
220
+ #: includes/class-modal-checkout.php:3197
221
221
  msgid "This donation is a gift"
222
222
  msgstr ""
223
223
 
224
- #: includes/class-modal-checkout.php:3183
224
+ #: includes/class-modal-checkout.php:3202
225
225
  msgid "This purchase is a gift"
226
226
  msgstr ""
227
227
 
228
- #: includes/class-modal-checkout.php:3185
228
+ #: includes/class-modal-checkout.php:3204
229
229
  msgid "Complete transaction"
230
230
  msgstr ""
231
231
 
232
- #: includes/class-modal-checkout.php:3186
232
+ #: includes/class-modal-checkout.php:3205
233
233
  msgid "Purchase"
234
234
  msgstr ""
235
235
 
236
- #: includes/class-modal-checkout.php:3187
236
+ #: includes/class-modal-checkout.php:3206
237
237
  msgid "Edit billing information"
238
238
  msgstr ""
239
239
 
240
- #: includes/class-modal-checkout.php:3188 dist/editor.js:26 dist/editor.js:40
240
+ #: includes/class-modal-checkout.php:3207 dist/editor.js:26 dist/editor.js:40
241
241
  #: dist/editor.js:43 src/blocks/checkout-button/coupon-control.js:145
242
242
  #: src/blocks/checkout-button/edit.js:198 src/components/reorder-modal.js:272
243
243
  #: src/components/reorder-modal.js:351
244
244
  msgid "Cancel"
245
245
  msgstr ""
246
246
 
247
- #: includes/class-modal-checkout.php:3189
247
+ #: includes/class-modal-checkout.php:3208
248
248
  msgid "Transaction successful"
249
249
  msgstr ""
250
250
 
251
- #: includes/class-modal-checkout.php:3190
251
+ #: includes/class-modal-checkout.php:3209
252
252
  msgid ""
253
253
  "Your contribution directly funds our work. If you're moved to do so, you can "
254
254
  "opt to pay more than the standard rate."
255
255
  msgstr ""
256
256
 
257
- #: includes/class-modal-checkout.php:3191
257
+ #: includes/class-modal-checkout.php:3210
258
258
  msgid "Thank you for your generosity! We couldn't do this without you!"
259
259
  msgstr ""
260
260
 
261
- #: includes/class-modal-checkout.php:3192
261
+ #: includes/class-modal-checkout.php:3211
262
262
  msgid "Increase your support"
263
263
  msgstr ""
264
264
 
265
- #: includes/class-modal-checkout.php:3193
265
+ #: includes/class-modal-checkout.php:3212
266
266
  #: src/modal-checkout/templates/form-coupon.php:29
267
267
  msgid "Apply"
268
268
  msgstr ""
269
269
 
270
- #: includes/class-modal-checkout.php:3194
270
+ #: includes/class-modal-checkout.php:3213
271
271
  msgid "We ran into a problem processing this request. Please try again."
272
272
  msgstr ""
273
273
 
274
274
  #. Translators: %s is the site name.
275
- #: includes/class-modal-checkout.php:3332
275
+ #: includes/class-modal-checkout.php:3351
276
276
  #, php-format
277
277
  msgid ""
278
278
  "Thank you for supporting %s. Your transaction was completed successfully."
@@ -2,7 +2,7 @@ msgid ""
2
2
  msgstr ""
3
3
  "Project-Id-Version: Newspack Blocks 1.0.0-alpha.20\n"
4
4
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/newspack-blocks\n"
5
- "POT-Creation-Date: 2026-09-14T18:14:26+00:00\n"
5
+ "POT-Creation-Date: 2026-09-16T00:59:08+00:00\n"
6
6
  "PO-Revision-Date: 2025-08-12T14:56:45+00:00\n"
7
7
  "Last-Translator: \n"
8
8
  "Language-Team: \n"
@@ -37,125 +37,125 @@ msgstr ""
37
37
  msgid "Automattic"
38
38
  msgstr ""
39
39
 
40
- #: includes/class-modal-checkout.php:377 includes/class-modal-checkout.php:646
40
+ #: includes/class-modal-checkout.php:388 includes/class-modal-checkout.php:662
41
41
  msgid "Invalid nonce."
42
42
  msgstr ""
43
43
 
44
- #: includes/class-modal-checkout.php:656
44
+ #: includes/class-modal-checkout.php:672
45
45
  msgid "Cart has been emptied."
46
46
  msgstr ""
47
47
 
48
48
  #. Translators: %s is the maximum price.
49
- #: includes/class-modal-checkout.php:773
49
+ #: includes/class-modal-checkout.php:789
50
50
  #, php-format
51
51
  msgid "Adjusted price must be less than the maximum of %s."
52
52
  msgstr ""
53
53
 
54
54
  #. Translators: %s is the name-your-price custom price.
55
- #: includes/class-modal-checkout.php:802
55
+ #: includes/class-modal-checkout.php:818
56
56
  #, php-format
57
57
  msgid "Adjusted price must be greater than base price of %s."
58
58
  msgstr ""
59
59
 
60
- #: includes/class-modal-checkout.php:829 includes/class-modal-checkout.php:933
60
+ #: includes/class-modal-checkout.php:845 includes/class-modal-checkout.php:949
61
61
  msgid "This product could not be added to the cart."
62
62
  msgstr ""
63
63
 
64
- #: includes/class-modal-checkout.php:892
64
+ #: includes/class-modal-checkout.php:908
65
65
  msgid ""
66
66
  "Go back and choose the number you want before changing your subscription."
67
67
  msgstr ""
68
68
 
69
- #: includes/class-modal-checkout.php:909
69
+ #: includes/class-modal-checkout.php:925
70
70
  msgid "This product is not in the cart."
71
71
  msgstr ""
72
72
 
73
- #: includes/class-modal-checkout.php:995
73
+ #: includes/class-modal-checkout.php:1011
74
74
  msgid "Updated."
75
75
  msgstr ""
76
76
 
77
- #: includes/class-modal-checkout.php:1050
78
- #: includes/class-modal-checkout.php:1133 dist/editor.js:26
77
+ #: includes/class-modal-checkout.php:1066
78
+ #: includes/class-modal-checkout.php:1149 dist/editor.js:26
79
79
  #: src/components/reorder-modal.js:254
80
80
  msgid "Close"
81
81
  msgstr ""
82
82
 
83
- #: includes/class-modal-checkout.php:1076
83
+ #: includes/class-modal-checkout.php:1092
84
84
  msgid "per"
85
85
  msgstr ""
86
86
 
87
- #: includes/class-modal-checkout.php:1187
87
+ #: includes/class-modal-checkout.php:1203
88
88
  msgid "Something went wrong. Please try again."
89
89
  msgstr ""
90
90
 
91
- #: includes/class-modal-checkout.php:1191
91
+ #: includes/class-modal-checkout.php:1207
92
92
  msgid "Or"
93
93
  msgstr ""
94
94
 
95
- #: includes/class-modal-checkout.php:1425
96
- #: includes/class-modal-checkout.php:1429
95
+ #: includes/class-modal-checkout.php:1441
96
+ #: includes/class-modal-checkout.php:1445
97
97
  msgid "Processing payment..."
98
98
  msgstr ""
99
99
 
100
- #: includes/class-modal-checkout.php:1433
100
+ #: includes/class-modal-checkout.php:1449
101
101
  msgid "Verifying details..."
102
102
  msgstr ""
103
103
 
104
- #: includes/class-modal-checkout.php:1437
104
+ #: includes/class-modal-checkout.php:1453
105
105
  msgid "Finalizing transaction..."
106
106
  msgstr ""
107
107
 
108
- #: includes/class-modal-checkout.php:1493
108
+ #: includes/class-modal-checkout.php:1509
109
109
  msgid ""
110
110
  "We're sorry, there was an unexpected error. Please try again in a few "
111
111
  "minutes."
112
112
  msgstr ""
113
113
 
114
- #: includes/class-modal-checkout.php:1505
114
+ #: includes/class-modal-checkout.php:1521
115
115
  msgid "Go back"
116
116
  msgstr ""
117
117
 
118
- #: includes/class-modal-checkout.php:1945
118
+ #: includes/class-modal-checkout.php:1961
119
119
  msgid "Password mismatch"
120
120
  msgstr ""
121
121
 
122
- #: includes/class-modal-checkout.php:1946
122
+ #: includes/class-modal-checkout.php:1962
123
123
  msgid "Password strength: Very weak"
124
124
  msgstr ""
125
125
 
126
- #: includes/class-modal-checkout.php:1947
126
+ #: includes/class-modal-checkout.php:1963
127
127
  msgid "Password strength: Weak"
128
128
  msgstr ""
129
129
 
130
- #: includes/class-modal-checkout.php:1948
130
+ #: includes/class-modal-checkout.php:1964
131
131
  msgid "Password strength: Medium"
132
132
  msgstr ""
133
133
 
134
- #: includes/class-modal-checkout.php:1949
134
+ #: includes/class-modal-checkout.php:1965
135
135
  msgid "Password strength: Strong"
136
136
  msgstr ""
137
137
 
138
- #: includes/class-modal-checkout.php:2329
138
+ #: includes/class-modal-checkout.php:2345
139
139
  msgid "Please enter someone else' email address to receive this gift."
140
140
  msgstr ""
141
141
 
142
- #: includes/class-modal-checkout.php:2330
142
+ #: includes/class-modal-checkout.php:2346
143
143
  msgid "Please enter a valid email address to receive this gift."
144
144
  msgstr ""
145
145
 
146
- #: includes/class-modal-checkout.php:2444
146
+ #: includes/class-modal-checkout.php:2460
147
147
  msgid "Close window"
148
148
  msgstr ""
149
149
 
150
150
  #. translators: %s: Site name.
151
- #: includes/class-modal-checkout.php:2535
151
+ #: includes/class-modal-checkout.php:2554
152
152
  #, php-format
153
153
  msgid ""
154
154
  "You're already a subscriber! You can only have one active subscription at a "
155
155
  "time. Thank you for supporting %s."
156
156
  msgstr ""
157
157
 
158
- #: includes/class-modal-checkout.php:2546
158
+ #: includes/class-modal-checkout.php:2565
159
159
  msgid ""
160
160
  "You're already a subscriber! You can only have one subscription at a time. "
161
161
  "If you wish to renew an expired subscription, please sign in and visit the "
@@ -165,106 +165,106 @@ msgstr ""
165
165
  #. translators: 1: Checkout button confirmation text. 2: Order total.
166
166
  #. translators: 1 is the name of the item. 2 is the price of the item.
167
167
  #. translators: keep %1$s first: it repeats the button's visible label, which speech input matches on. 1: the control's visible label. 2: title of the content being moved.
168
- #: includes/class-modal-checkout.php:2700
168
+ #: includes/class-modal-checkout.php:2719
169
169
  #: includes/modal-checkout/class-checkout-data.php:72 dist/editor.js:24
170
170
  #: src/components/reorder-modal.js:57
171
171
  #, php-format
172
172
  msgid "%1$s: %2$s"
173
173
  msgstr ""
174
174
 
175
- #: includes/class-modal-checkout.php:2883 dist/editor.js:67
175
+ #: includes/class-modal-checkout.php:2902 dist/editor.js:67
176
176
  #: src/blocks/iframe/iframe-placeholder.js:153
177
177
  msgid "Update"
178
178
  msgstr ""
179
179
 
180
- #: includes/class-modal-checkout.php:3161
180
+ #: includes/class-modal-checkout.php:3180
181
181
  msgid "Billing details"
182
182
  msgstr ""
183
183
 
184
- #: includes/class-modal-checkout.php:3162
184
+ #: includes/class-modal-checkout.php:3181
185
185
  msgid "Shipping details"
186
186
  msgstr ""
187
187
 
188
- #: includes/class-modal-checkout.php:3163
188
+ #: includes/class-modal-checkout.php:3182
189
189
  msgid "Gift recipient"
190
190
  msgstr ""
191
191
 
192
- #: includes/class-modal-checkout.php:3164
193
- #: includes/class-modal-checkout.php:3165
194
- #: includes/class-modal-checkout.php:3166
192
+ #: includes/class-modal-checkout.php:3183
193
+ #: includes/class-modal-checkout.php:3184
194
+ #: includes/class-modal-checkout.php:3185
195
195
  msgid "Complete your transaction"
196
196
  msgstr ""
197
197
 
198
- #: includes/class-modal-checkout.php:3167
198
+ #: includes/class-modal-checkout.php:3186
199
199
  msgctxt "Login modal title when logged out user attempts to checkout."
200
200
  msgid "Sign in to complete transaction"
201
201
  msgstr ""
202
202
 
203
- #: includes/class-modal-checkout.php:3172
203
+ #: includes/class-modal-checkout.php:3191
204
204
  msgctxt "Login modal title when unregistered user attempts to checkout"
205
205
  msgid "Register to complete transaction"
206
206
  msgstr ""
207
207
 
208
- #: includes/class-modal-checkout.php:3177
208
+ #: includes/class-modal-checkout.php:3196
209
209
  msgid "Continue browsing"
210
210
  msgstr ""
211
211
 
212
- #: includes/class-modal-checkout.php:3178
212
+ #: includes/class-modal-checkout.php:3197
213
213
  msgid "This donation is a gift"
214
214
  msgstr ""
215
215
 
216
- #: includes/class-modal-checkout.php:3183
216
+ #: includes/class-modal-checkout.php:3202
217
217
  msgid "This purchase is a gift"
218
218
  msgstr ""
219
219
 
220
- #: includes/class-modal-checkout.php:3185
220
+ #: includes/class-modal-checkout.php:3204
221
221
  msgid "Complete transaction"
222
222
  msgstr ""
223
223
 
224
- #: includes/class-modal-checkout.php:3186
224
+ #: includes/class-modal-checkout.php:3205
225
225
  msgid "Purchase"
226
226
  msgstr ""
227
227
 
228
- #: includes/class-modal-checkout.php:3187
228
+ #: includes/class-modal-checkout.php:3206
229
229
  msgid "Edit billing information"
230
230
  msgstr ""
231
231
 
232
- #: includes/class-modal-checkout.php:3188 dist/editor.js:26 dist/editor.js:40
232
+ #: includes/class-modal-checkout.php:3207 dist/editor.js:26 dist/editor.js:40
233
233
  #: dist/editor.js:43 src/blocks/checkout-button/coupon-control.js:145
234
234
  #: src/blocks/checkout-button/edit.js:198 src/components/reorder-modal.js:272
235
235
  #: src/components/reorder-modal.js:351
236
236
  msgid "Cancel"
237
237
  msgstr ""
238
238
 
239
- #: includes/class-modal-checkout.php:3189
239
+ #: includes/class-modal-checkout.php:3208
240
240
  msgid "Transaction successful"
241
241
  msgstr ""
242
242
 
243
- #: includes/class-modal-checkout.php:3190
243
+ #: includes/class-modal-checkout.php:3209
244
244
  msgid ""
245
245
  "Your contribution directly funds our work. If you're moved to do so, you can "
246
246
  "opt to pay more than the standard rate."
247
247
  msgstr ""
248
248
 
249
- #: includes/class-modal-checkout.php:3191
249
+ #: includes/class-modal-checkout.php:3210
250
250
  msgid "Thank you for your generosity! We couldn't do this without you!"
251
251
  msgstr ""
252
252
 
253
- #: includes/class-modal-checkout.php:3192
253
+ #: includes/class-modal-checkout.php:3211
254
254
  msgid "Increase your support"
255
255
  msgstr ""
256
256
 
257
- #: includes/class-modal-checkout.php:3193
257
+ #: includes/class-modal-checkout.php:3212
258
258
  #: src/modal-checkout/templates/form-coupon.php:29
259
259
  msgid "Apply"
260
260
  msgstr ""
261
261
 
262
- #: includes/class-modal-checkout.php:3194
262
+ #: includes/class-modal-checkout.php:3213
263
263
  msgid "We ran into a problem processing this request. Please try again."
264
264
  msgstr ""
265
265
 
266
266
  #. Translators: %s is the site name.
267
- #: includes/class-modal-checkout.php:3332
267
+ #: includes/class-modal-checkout.php:3351
268
268
  #, php-format
269
269
  msgid ""
270
270
  "Thank you for supporting %s. Your transaction was completed successfully."