Skip to content

Commit 4937ad2

Browse files
Warn when errorFields don't match request[[options]] (#807)
1 parent 974d879 commit 4937ad2

File tree

1 file changed

+53
-17
lines changed

1 file changed

+53
-17
lines changed

index.html

Lines changed: 53 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3125,26 +3125,62 @@ <h2>
31253125
<li>Set <var>response</var>.<a>[[\retryPromise]]</a> to
31263126
<var>retryPromise</var>.
31273127
</li>
3128-
<li data-link-for="PaymentValidationErrors" data-tests=
3129-
"PaymentValidationErrors/retry-shows-error-member-manual.https.html">
3130-
If <var>errorFields</var>'s <a>paymentMethod</a> member was passed,
3131-
and if required by the specification that defines
3132-
<var>response</var>'s <a>payment method</a>, then <a data-cite=
3133-
"WEBIDL#dfn-convert-ecmascript-to-idl-value">convert</a>
3134-
<var>errorFields</var> <a>paymentMethod</a> to an IDL value of the
3135-
type specified there. Otherwise, <a data-cite=
3136-
"WEBIDL#dfn-convert-ecmascript-to-idl-value">convert</a> to
3137-
<a data-cite="WEBIDL#idl-object">object</a>.
3138-
</li>
3139-
<li>If conversion results in a <a data-cite=
3140-
"WEBIDL#dfn-exception">exception</a> <var>error</var>:
3128+
<li>If <var>errorFields</var> was passed:
31413129
<ol>
3142-
<li>Reject <var>retryPromise</var> with <var>error</var>.
3130+
<li>Optionally, show a warning in the developer console if any of
3131+
the following are true:
3132+
<ol>
3133+
<li>
3134+
<var>request</var>.<a>[[\options]]</a>["<a data-link-for=
3135+
"PaymentOptions">requestPayerName</a>"] is false, and
3136+
<var>errorFields</var>["<a data-link-for=
3137+
"PaymentValidationErrors">payer</a>"]["<a data-link-for=
3138+
"PayerErrors">name</a>"] is present.
3139+
</li>
3140+
<li>
3141+
<var>request</var>.<a>[[\options]]</a>["<a data-link-for=
3142+
"PaymentOptions">requestPayerEmail</a>"] is false, and
3143+
<var>errorFields</var>["<a data-link-for=
3144+
"PaymentValidationErrors">payer</a>"]["<a data-link-for=
3145+
"PayerErrors">email</a>"] is present.
3146+
</li>
3147+
<li>
3148+
<var>request</var>.<a>[[\options]]</a>["<a data-link-for=
3149+
"PaymentOptions">requestPayerPhone</a>"] is false, and
3150+
<var>errorFields</var>["<a data-link-for=
3151+
"PaymentValidationErrors">payer</a>"]["<a data-link-for=
3152+
"PayerErrors">phone</a>"] is present.
3153+
</li>
3154+
<li>
3155+
<var>request</var>.<a>[[\options]]</a>["<a data-link-for=
3156+
"PaymentOptions">requestShipping</a>"] is false, and
3157+
<var>errorFields</var>["<a data-link-for=
3158+
"PaymentValidationErrors">shippingAddress</a>"] is present.
3159+
</li>
3160+
</ol>
31433161
</li>
3144-
<li>Set <a>user agent</a>'s <a>payment request is showing</a>
3145-
boolean to false.
3162+
<li data-link-for="PaymentValidationErrors" data-tests=
3163+
"PaymentValidationErrors/retry-shows-error-member-manual.https.html">
3164+
If <var>errorFields</var>["<a>paymentMethod</a>] member was
3165+
passed, and if required by the specification that defines
3166+
<var>response</var>'s <a>payment method</a>, then <a data-cite=
3167+
"WEBIDL#dfn-convert-ecmascript-to-idl-value">convert</a>
3168+
<var>errorFields</var>'s <a>paymentMethod</a> member to an IDL
3169+
value of the type specified there. Otherwise, <a data-cite=
3170+
"WEBIDL#dfn-convert-ecmascript-to-idl-value">convert</a> to
3171+
<a data-cite="WEBIDL#idl-object">object</a>.
31463172
</li>
3147-
<li>Return.
3173+
<li>If conversion results in a <a data-cite=
3174+
"WEBIDL#dfn-exception">exception</a> <var>error</var>:
3175+
<ol>
3176+
<li>Reject <var>retryPromise</var> with <var>error</var>.
3177+
</li>
3178+
<li>Set <a>user agent</a>'s <a>payment request is showing</a>
3179+
boolean to false.
3180+
</li>
3181+
<li>Return.
3182+
</li>
3183+
</ol>
31483184
</li>
31493185
</ol>
31503186
</li>

0 commit comments

Comments
 (0)