Feat/SW-104 add card * feat: add api endpoints for adding and removing credit card * feat(SW-104): Added Sonner toast lib * feat(SW-104): Add route handlers for add card flow * feat(SW-104): Added link to route handler and trigger toast when query params from callback is set * feat(SW-104): Added translations for add card success toast * feat(SW-104): Refactored to use client request for initiate save card * fix(SW-104): Return proper status codes when initiating save card fails * fix(SW-104): remove delete card endpoint because it was added in SW-245 * fix(SW-104): remove console.log * fix(SW-104): Use api.post for save card request * fix(SW-104): move function declaration above export * fix(SW-104): handle response of save card and use Lang enum * fix(SW-104): added comment for why setTimeout is needed for toast and also removed lang prop * fix(SW-104): added type for AddCreditCardButton props * feat: add toasts * fix(SW-104): start using toasts from ToastHandler and fix problem with duplicate toasts * fix(SW-104): remove unnecessary wrapping div Approved-by: Michael Zetterberg
32 lines
634 B
TypeScript
32 lines
634 B
TypeScript
import { z } from "zod"
|
|
|
|
export const getUserInputSchema = z
|
|
.object({
|
|
mask: z.boolean().default(true),
|
|
})
|
|
.default({})
|
|
|
|
export const staysInput = z
|
|
.object({
|
|
cursor: z.number().optional(),
|
|
limit: z.number().min(0).default(6),
|
|
})
|
|
.default({})
|
|
|
|
export const soonestUpcomingStaysInput = z
|
|
.object({
|
|
limit: z.number().int().positive(),
|
|
})
|
|
.default({ limit: 3 })
|
|
|
|
export const initiateSaveCardInput = z.object({
|
|
language: z.string(),
|
|
mobileToken: z.boolean(),
|
|
redirectUrl: z.string(),
|
|
})
|
|
|
|
export const saveCardInput = z.object({
|
|
transactionId: z.string(),
|
|
merchantId: z.string().optional(),
|
|
})
|