Skip to content

Commit 9db1fc6

Browse files
replace __typename with type
1 parent 5ad8ca7 commit 9db1fc6

File tree

4 files changed

+16
-16
lines changed

4 files changed

+16
-16
lines changed

modules/@shopify/checkout-sheet-kit/src/events.d.ts

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,8 @@ export type CartAddress = CartSelectableAddress;
270270
* Remote token payment credential for delegated payment processing.
271271
*/
272272
export interface RemoteTokenPaymentCredential {
273+
/** Discriminator for credential type */
274+
type: 'remoteToken';
273275
/** The payment token */
274276
token: string;
275277
/** The type of token (e.g., "card") */
@@ -279,12 +281,10 @@ export interface RemoteTokenPaymentCredential {
279281
}
280282

281283
/**
282-
* Cart credential containing payment authentication data.
284+
* Payment credential types.
285+
* Uses discriminated union pattern for extensibility.
283286
*/
284-
export interface CartCredential {
285-
/** Remote token payment credential for tokenized payments */
286-
remoteTokenPaymentCredential?: RemoteTokenPaymentCredential;
287-
}
287+
export type PaymentCredential = RemoteTokenPaymentCredential;
288288

289289
/**
290290
* Payment instrument available for selection at checkout.
@@ -293,12 +293,10 @@ export interface CartCredential {
293293
* @see https://shopify.dev/docs/api/storefront/latest/objects/CartPaymentInstrument
294294
*/
295295
export interface CartPaymentInstrument {
296-
/** Type discriminator for the payment instrument */
297-
__typename?: string;
298296
/** Unique identifier for this payment instrument */
299297
externalReferenceId: string;
300298
/** Payment credentials for this instrument */
301-
credentials?: CartCredential[];
299+
credentials?: PaymentCredential[];
302300
/** Name of the cardholder */
303301
cardHolderName?: string;
304302
/** Last digits of the card number */
@@ -315,10 +313,11 @@ export interface CartPaymentInstrument {
315313

316314
/**
317315
* A payment method containing payment instruments.
316+
* Uses discriminated union pattern for extensibility.
318317
*/
319318
export interface CartPaymentMethod {
320-
/** Type discriminator (e.g., "CreditCardPaymentMethod") */
321-
__typename?: string;
319+
/** Discriminator for payment method type */
320+
type: 'creditCard';
322321
/** Payment instruments for this method */
323322
instruments: CartPaymentInstrument[];
324323
}

modules/@shopify/checkout-sheet-kit/src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -501,7 +501,7 @@ export type {
501501
export type {
502502
Cart,
503503
CartAddress,
504-
CartCredential,
504+
PaymentCredential,
505505
CartPayment,
506506
CartPaymentInstrument,
507507
CartPaymentMethod,

sample/src/screens/BuyNow/CheckoutScreen.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,16 +67,16 @@ export default function CheckoutScreen(props: {
6767
payment: {
6868
methods: [
6969
{
70+
type: 'creditCard',
7071
instruments: [
7172
{
7273
externalReferenceId: 'payment-instrument-123',
7374
credentials: [
7475
{
75-
remoteTokenPaymentCredential: {
76-
token: '1234567890',
77-
tokenType: 'delegated',
78-
tokenHandler: 'shopify',
79-
},
76+
type: 'remoteToken',
77+
token: '1234567890',
78+
tokenType: 'delegated',
79+
tokenHandler: 'shopify',
8080
},
8181
],
8282
},

sample/src/screens/BuyNow/PaymentScreen.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ export default function PaymentScreen() {
115115
payment: {
116116
methods: [
117117
{
118+
type: 'creditCard',
118119
instruments: [selectedPayment.instrument],
119120
},
120121
],

0 commit comments

Comments
 (0)