@planetaexo/design-system 0.2.10 → 0.2.12
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/dist/index.cjs +1145 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +170 -1
- package/dist/index.d.ts +170 -1
- package/dist/index.js +1144 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -91,6 +91,175 @@ declare function OfferAdventureCard({ adventure }: {
|
|
|
91
91
|
}): react_jsx_runtime.JSX.Element;
|
|
92
92
|
declare function Offer({ logo, logoAlt, title, subtitle, adventures, subtotal, total, depositInfo, agent, onContinue, continueLabel, externalBookingFlow, summaryNotesSlot, summaryDiscountLine, continueDisabled, className, }: OfferProps): react_jsx_runtime.JSX.Element;
|
|
93
93
|
|
|
94
|
+
type BookingStatus = "pending" | "confirmed" | "cancelled" | "completed";
|
|
95
|
+
interface BookingTraveller {
|
|
96
|
+
id: string;
|
|
97
|
+
firstName: string;
|
|
98
|
+
lastName: string;
|
|
99
|
+
email?: string;
|
|
100
|
+
status: "completed" | "pending";
|
|
101
|
+
isChild?: boolean;
|
|
102
|
+
formUrl?: string;
|
|
103
|
+
}
|
|
104
|
+
interface SuggestedTraveller {
|
|
105
|
+
id: string;
|
|
106
|
+
firstName: string;
|
|
107
|
+
lastName: string;
|
|
108
|
+
}
|
|
109
|
+
interface BookingSummaryLineItem {
|
|
110
|
+
label: string;
|
|
111
|
+
price: string;
|
|
112
|
+
isDiscount?: boolean;
|
|
113
|
+
isBold?: boolean;
|
|
114
|
+
}
|
|
115
|
+
interface BookingAdventure {
|
|
116
|
+
id: string;
|
|
117
|
+
reference?: string;
|
|
118
|
+
image: string;
|
|
119
|
+
imageAlt?: string;
|
|
120
|
+
title: string;
|
|
121
|
+
location?: string;
|
|
122
|
+
partner?: string;
|
|
123
|
+
dateFrom: string;
|
|
124
|
+
dateTo: string;
|
|
125
|
+
slots?: {
|
|
126
|
+
adults: number;
|
|
127
|
+
children?: number;
|
|
128
|
+
seniors?: number;
|
|
129
|
+
};
|
|
130
|
+
tags?: string[];
|
|
131
|
+
travellers: BookingTraveller[];
|
|
132
|
+
description?: string;
|
|
133
|
+
included?: string[];
|
|
134
|
+
notIncluded?: string[];
|
|
135
|
+
cancellationPolicy?: string[];
|
|
136
|
+
lineItems?: BookingSummaryLineItem[];
|
|
137
|
+
subtotal?: string;
|
|
138
|
+
suggestedTravellers?: SuggestedTraveller[];
|
|
139
|
+
formName?: string;
|
|
140
|
+
}
|
|
141
|
+
interface BookingContact {
|
|
142
|
+
name: string;
|
|
143
|
+
email?: string;
|
|
144
|
+
phone?: string;
|
|
145
|
+
country?: string;
|
|
146
|
+
passport?: string;
|
|
147
|
+
}
|
|
148
|
+
interface BookingDepositInfo {
|
|
149
|
+
depositPercent: number;
|
|
150
|
+
depositAmount: string;
|
|
151
|
+
remainingAmount: string;
|
|
152
|
+
balanceDueDate: string;
|
|
153
|
+
isPaidInFull?: boolean;
|
|
154
|
+
}
|
|
155
|
+
interface BookingDetailsProps {
|
|
156
|
+
bookingId: string;
|
|
157
|
+
status: BookingStatus;
|
|
158
|
+
createdAt: string;
|
|
159
|
+
contact: BookingContact;
|
|
160
|
+
agentName?: string;
|
|
161
|
+
agentContactUrl?: string;
|
|
162
|
+
adventures: BookingAdventure[];
|
|
163
|
+
summaryLineItems?: BookingSummaryLineItem[];
|
|
164
|
+
subtotal?: string;
|
|
165
|
+
total: string;
|
|
166
|
+
depositInfo?: BookingDepositInfo;
|
|
167
|
+
onAddContactAsTraveller?: (adventureId: string) => void;
|
|
168
|
+
onEditTraveller?: (adventureId: string, travellerId: string) => void;
|
|
169
|
+
onRemoveTraveller?: (adventureId: string, travellerId: string) => void;
|
|
170
|
+
onAddSuggestedTraveller?: (adventureId: string, travellerId: string) => void;
|
|
171
|
+
onPayBalance?: () => void;
|
|
172
|
+
onCancelRequest?: () => void;
|
|
173
|
+
className?: string;
|
|
174
|
+
}
|
|
175
|
+
declare function BookingDetails({ bookingId, status, createdAt, contact, agentName, agentContactUrl, adventures, summaryLineItems, subtotal, total, depositInfo, onAddContactAsTraveller, onEditTraveller, onRemoveTraveller, onAddSuggestedTraveller, onPayBalance, onCancelRequest, className, }: BookingDetailsProps): react_jsx_runtime.JSX.Element;
|
|
176
|
+
|
|
177
|
+
interface BookingConfirmationEmailProps {
|
|
178
|
+
/** Nome do destinatário (ex: "Maria") */
|
|
179
|
+
recipientName: string;
|
|
180
|
+
/** URL do link para adicionar viajantes. Se omitido, o botão é renderizado sem link. */
|
|
181
|
+
addTravellersUrl?: string;
|
|
182
|
+
/** URL da logo PlanetaEXO. Para e-mails reais, use URL absoluta. Default: /logo-planetaexo.png */
|
|
183
|
+
logoUrl?: string;
|
|
184
|
+
/** Número da reserva */
|
|
185
|
+
bookingNumber: string;
|
|
186
|
+
/** Nome da atividade */
|
|
187
|
+
activity: string;
|
|
188
|
+
/** Nome da aventura */
|
|
189
|
+
adventure: string;
|
|
190
|
+
/** Data de início (formatada) */
|
|
191
|
+
startingDate: string;
|
|
192
|
+
/** Número de pessoas */
|
|
193
|
+
numberOfPeople: number;
|
|
194
|
+
/** Nome do host/anfitrião */
|
|
195
|
+
host: string;
|
|
196
|
+
/** className adicional no container */
|
|
197
|
+
className?: string;
|
|
198
|
+
}
|
|
199
|
+
declare function BookingConfirmationEmail({ recipientName, addTravellersUrl, logoUrl, bookingNumber, activity, adventure, startingDate, numberOfPeople, host, className, }: BookingConfirmationEmailProps): react_jsx_runtime.JSX.Element;
|
|
200
|
+
|
|
201
|
+
interface ConfirmationLineItem {
|
|
202
|
+
label: string;
|
|
203
|
+
price: string;
|
|
204
|
+
isDiscount?: boolean;
|
|
205
|
+
}
|
|
206
|
+
interface ConfirmationTraveller {
|
|
207
|
+
id: string;
|
|
208
|
+
firstName: string;
|
|
209
|
+
lastName: string;
|
|
210
|
+
isChild?: boolean;
|
|
211
|
+
}
|
|
212
|
+
interface ConfirmationAdventure {
|
|
213
|
+
id: string;
|
|
214
|
+
reference?: string;
|
|
215
|
+
image: string;
|
|
216
|
+
imageAlt?: string;
|
|
217
|
+
title: string;
|
|
218
|
+
partner?: string;
|
|
219
|
+
location?: string;
|
|
220
|
+
dateFrom: string;
|
|
221
|
+
dateTo: string;
|
|
222
|
+
slots?: {
|
|
223
|
+
adults: number;
|
|
224
|
+
children?: number;
|
|
225
|
+
};
|
|
226
|
+
description?: string;
|
|
227
|
+
included?: string[];
|
|
228
|
+
notIncluded?: string[];
|
|
229
|
+
lineItems?: ConfirmationLineItem[];
|
|
230
|
+
subtotal?: string;
|
|
231
|
+
travellers?: ConfirmationTraveller[];
|
|
232
|
+
}
|
|
233
|
+
interface ConfirmationDepositInfo {
|
|
234
|
+
depositPercent: number;
|
|
235
|
+
depositAmount: string;
|
|
236
|
+
remainingAmount: string;
|
|
237
|
+
balanceDueDate: string;
|
|
238
|
+
isPaidInFull?: boolean;
|
|
239
|
+
}
|
|
240
|
+
interface BookingConfirmationProps {
|
|
241
|
+
/** Nome do destinatario (ex: "Maria") */
|
|
242
|
+
recipientName: string;
|
|
243
|
+
/** URL da logo. Para e-mails reais, use URL absoluta. Default: /logo-planetaexo.png */
|
|
244
|
+
logoUrl?: string;
|
|
245
|
+
/** Numero da reserva */
|
|
246
|
+
bookingReference: string;
|
|
247
|
+
/** Adventures included in the booking */
|
|
248
|
+
adventures: ConfirmationAdventure[];
|
|
249
|
+
/** Global line items (e.g. coupons, fees) */
|
|
250
|
+
summaryLineItems?: ConfirmationLineItem[];
|
|
251
|
+
subtotal?: string;
|
|
252
|
+
total: string;
|
|
253
|
+
depositInfo?: ConfirmationDepositInfo;
|
|
254
|
+
/** Nome do agente responsavel */
|
|
255
|
+
agent: string;
|
|
256
|
+
/** URL para ver os detalhes completos do booking */
|
|
257
|
+
viewBookingUrl?: string;
|
|
258
|
+
/** className adicional no container */
|
|
259
|
+
className?: string;
|
|
260
|
+
}
|
|
261
|
+
declare function BookingConfirmation({ recipientName, logoUrl, bookingReference, adventures, summaryLineItems, subtotal, total, depositInfo, agent, viewBookingUrl, className, }: BookingConfirmationProps): react_jsx_runtime.JSX.Element;
|
|
262
|
+
|
|
94
263
|
declare function cn(...inputs: ClassValue[]): string;
|
|
95
264
|
|
|
96
|
-
export { Offer, OfferAdventureCard, type OfferAdventureItem, type OfferAgentInfo, type OfferDepositInfo, type OfferOptionalItem, type OfferProps, type OfferSummaryLineItem, cn };
|
|
265
|
+
export { type BookingAdventure, BookingConfirmation, BookingConfirmationEmail, type BookingConfirmationEmailProps, type BookingConfirmationProps, type BookingContact, type BookingDepositInfo, BookingDetails, type BookingDetailsProps, type BookingStatus, type BookingSummaryLineItem, type BookingTraveller, type ConfirmationAdventure, type ConfirmationDepositInfo, type ConfirmationLineItem, type ConfirmationTraveller, Offer, OfferAdventureCard, type OfferAdventureItem, type OfferAgentInfo, type OfferDepositInfo, type OfferOptionalItem, type OfferProps, type OfferSummaryLineItem, type SuggestedTraveller, cn };
|
package/dist/index.d.ts
CHANGED
|
@@ -91,6 +91,175 @@ declare function OfferAdventureCard({ adventure }: {
|
|
|
91
91
|
}): react_jsx_runtime.JSX.Element;
|
|
92
92
|
declare function Offer({ logo, logoAlt, title, subtitle, adventures, subtotal, total, depositInfo, agent, onContinue, continueLabel, externalBookingFlow, summaryNotesSlot, summaryDiscountLine, continueDisabled, className, }: OfferProps): react_jsx_runtime.JSX.Element;
|
|
93
93
|
|
|
94
|
+
type BookingStatus = "pending" | "confirmed" | "cancelled" | "completed";
|
|
95
|
+
interface BookingTraveller {
|
|
96
|
+
id: string;
|
|
97
|
+
firstName: string;
|
|
98
|
+
lastName: string;
|
|
99
|
+
email?: string;
|
|
100
|
+
status: "completed" | "pending";
|
|
101
|
+
isChild?: boolean;
|
|
102
|
+
formUrl?: string;
|
|
103
|
+
}
|
|
104
|
+
interface SuggestedTraveller {
|
|
105
|
+
id: string;
|
|
106
|
+
firstName: string;
|
|
107
|
+
lastName: string;
|
|
108
|
+
}
|
|
109
|
+
interface BookingSummaryLineItem {
|
|
110
|
+
label: string;
|
|
111
|
+
price: string;
|
|
112
|
+
isDiscount?: boolean;
|
|
113
|
+
isBold?: boolean;
|
|
114
|
+
}
|
|
115
|
+
interface BookingAdventure {
|
|
116
|
+
id: string;
|
|
117
|
+
reference?: string;
|
|
118
|
+
image: string;
|
|
119
|
+
imageAlt?: string;
|
|
120
|
+
title: string;
|
|
121
|
+
location?: string;
|
|
122
|
+
partner?: string;
|
|
123
|
+
dateFrom: string;
|
|
124
|
+
dateTo: string;
|
|
125
|
+
slots?: {
|
|
126
|
+
adults: number;
|
|
127
|
+
children?: number;
|
|
128
|
+
seniors?: number;
|
|
129
|
+
};
|
|
130
|
+
tags?: string[];
|
|
131
|
+
travellers: BookingTraveller[];
|
|
132
|
+
description?: string;
|
|
133
|
+
included?: string[];
|
|
134
|
+
notIncluded?: string[];
|
|
135
|
+
cancellationPolicy?: string[];
|
|
136
|
+
lineItems?: BookingSummaryLineItem[];
|
|
137
|
+
subtotal?: string;
|
|
138
|
+
suggestedTravellers?: SuggestedTraveller[];
|
|
139
|
+
formName?: string;
|
|
140
|
+
}
|
|
141
|
+
interface BookingContact {
|
|
142
|
+
name: string;
|
|
143
|
+
email?: string;
|
|
144
|
+
phone?: string;
|
|
145
|
+
country?: string;
|
|
146
|
+
passport?: string;
|
|
147
|
+
}
|
|
148
|
+
interface BookingDepositInfo {
|
|
149
|
+
depositPercent: number;
|
|
150
|
+
depositAmount: string;
|
|
151
|
+
remainingAmount: string;
|
|
152
|
+
balanceDueDate: string;
|
|
153
|
+
isPaidInFull?: boolean;
|
|
154
|
+
}
|
|
155
|
+
interface BookingDetailsProps {
|
|
156
|
+
bookingId: string;
|
|
157
|
+
status: BookingStatus;
|
|
158
|
+
createdAt: string;
|
|
159
|
+
contact: BookingContact;
|
|
160
|
+
agentName?: string;
|
|
161
|
+
agentContactUrl?: string;
|
|
162
|
+
adventures: BookingAdventure[];
|
|
163
|
+
summaryLineItems?: BookingSummaryLineItem[];
|
|
164
|
+
subtotal?: string;
|
|
165
|
+
total: string;
|
|
166
|
+
depositInfo?: BookingDepositInfo;
|
|
167
|
+
onAddContactAsTraveller?: (adventureId: string) => void;
|
|
168
|
+
onEditTraveller?: (adventureId: string, travellerId: string) => void;
|
|
169
|
+
onRemoveTraveller?: (adventureId: string, travellerId: string) => void;
|
|
170
|
+
onAddSuggestedTraveller?: (adventureId: string, travellerId: string) => void;
|
|
171
|
+
onPayBalance?: () => void;
|
|
172
|
+
onCancelRequest?: () => void;
|
|
173
|
+
className?: string;
|
|
174
|
+
}
|
|
175
|
+
declare function BookingDetails({ bookingId, status, createdAt, contact, agentName, agentContactUrl, adventures, summaryLineItems, subtotal, total, depositInfo, onAddContactAsTraveller, onEditTraveller, onRemoveTraveller, onAddSuggestedTraveller, onPayBalance, onCancelRequest, className, }: BookingDetailsProps): react_jsx_runtime.JSX.Element;
|
|
176
|
+
|
|
177
|
+
interface BookingConfirmationEmailProps {
|
|
178
|
+
/** Nome do destinatário (ex: "Maria") */
|
|
179
|
+
recipientName: string;
|
|
180
|
+
/** URL do link para adicionar viajantes. Se omitido, o botão é renderizado sem link. */
|
|
181
|
+
addTravellersUrl?: string;
|
|
182
|
+
/** URL da logo PlanetaEXO. Para e-mails reais, use URL absoluta. Default: /logo-planetaexo.png */
|
|
183
|
+
logoUrl?: string;
|
|
184
|
+
/** Número da reserva */
|
|
185
|
+
bookingNumber: string;
|
|
186
|
+
/** Nome da atividade */
|
|
187
|
+
activity: string;
|
|
188
|
+
/** Nome da aventura */
|
|
189
|
+
adventure: string;
|
|
190
|
+
/** Data de início (formatada) */
|
|
191
|
+
startingDate: string;
|
|
192
|
+
/** Número de pessoas */
|
|
193
|
+
numberOfPeople: number;
|
|
194
|
+
/** Nome do host/anfitrião */
|
|
195
|
+
host: string;
|
|
196
|
+
/** className adicional no container */
|
|
197
|
+
className?: string;
|
|
198
|
+
}
|
|
199
|
+
declare function BookingConfirmationEmail({ recipientName, addTravellersUrl, logoUrl, bookingNumber, activity, adventure, startingDate, numberOfPeople, host, className, }: BookingConfirmationEmailProps): react_jsx_runtime.JSX.Element;
|
|
200
|
+
|
|
201
|
+
interface ConfirmationLineItem {
|
|
202
|
+
label: string;
|
|
203
|
+
price: string;
|
|
204
|
+
isDiscount?: boolean;
|
|
205
|
+
}
|
|
206
|
+
interface ConfirmationTraveller {
|
|
207
|
+
id: string;
|
|
208
|
+
firstName: string;
|
|
209
|
+
lastName: string;
|
|
210
|
+
isChild?: boolean;
|
|
211
|
+
}
|
|
212
|
+
interface ConfirmationAdventure {
|
|
213
|
+
id: string;
|
|
214
|
+
reference?: string;
|
|
215
|
+
image: string;
|
|
216
|
+
imageAlt?: string;
|
|
217
|
+
title: string;
|
|
218
|
+
partner?: string;
|
|
219
|
+
location?: string;
|
|
220
|
+
dateFrom: string;
|
|
221
|
+
dateTo: string;
|
|
222
|
+
slots?: {
|
|
223
|
+
adults: number;
|
|
224
|
+
children?: number;
|
|
225
|
+
};
|
|
226
|
+
description?: string;
|
|
227
|
+
included?: string[];
|
|
228
|
+
notIncluded?: string[];
|
|
229
|
+
lineItems?: ConfirmationLineItem[];
|
|
230
|
+
subtotal?: string;
|
|
231
|
+
travellers?: ConfirmationTraveller[];
|
|
232
|
+
}
|
|
233
|
+
interface ConfirmationDepositInfo {
|
|
234
|
+
depositPercent: number;
|
|
235
|
+
depositAmount: string;
|
|
236
|
+
remainingAmount: string;
|
|
237
|
+
balanceDueDate: string;
|
|
238
|
+
isPaidInFull?: boolean;
|
|
239
|
+
}
|
|
240
|
+
interface BookingConfirmationProps {
|
|
241
|
+
/** Nome do destinatario (ex: "Maria") */
|
|
242
|
+
recipientName: string;
|
|
243
|
+
/** URL da logo. Para e-mails reais, use URL absoluta. Default: /logo-planetaexo.png */
|
|
244
|
+
logoUrl?: string;
|
|
245
|
+
/** Numero da reserva */
|
|
246
|
+
bookingReference: string;
|
|
247
|
+
/** Adventures included in the booking */
|
|
248
|
+
adventures: ConfirmationAdventure[];
|
|
249
|
+
/** Global line items (e.g. coupons, fees) */
|
|
250
|
+
summaryLineItems?: ConfirmationLineItem[];
|
|
251
|
+
subtotal?: string;
|
|
252
|
+
total: string;
|
|
253
|
+
depositInfo?: ConfirmationDepositInfo;
|
|
254
|
+
/** Nome do agente responsavel */
|
|
255
|
+
agent: string;
|
|
256
|
+
/** URL para ver os detalhes completos do booking */
|
|
257
|
+
viewBookingUrl?: string;
|
|
258
|
+
/** className adicional no container */
|
|
259
|
+
className?: string;
|
|
260
|
+
}
|
|
261
|
+
declare function BookingConfirmation({ recipientName, logoUrl, bookingReference, adventures, summaryLineItems, subtotal, total, depositInfo, agent, viewBookingUrl, className, }: BookingConfirmationProps): react_jsx_runtime.JSX.Element;
|
|
262
|
+
|
|
94
263
|
declare function cn(...inputs: ClassValue[]): string;
|
|
95
264
|
|
|
96
|
-
export { Offer, OfferAdventureCard, type OfferAdventureItem, type OfferAgentInfo, type OfferDepositInfo, type OfferOptionalItem, type OfferProps, type OfferSummaryLineItem, cn };
|
|
265
|
+
export { type BookingAdventure, BookingConfirmation, BookingConfirmationEmail, type BookingConfirmationEmailProps, type BookingConfirmationProps, type BookingContact, type BookingDepositInfo, BookingDetails, type BookingDetailsProps, type BookingStatus, type BookingSummaryLineItem, type BookingTraveller, type ConfirmationAdventure, type ConfirmationDepositInfo, type ConfirmationLineItem, type ConfirmationTraveller, Offer, OfferAdventureCard, type OfferAdventureItem, type OfferAgentInfo, type OfferDepositInfo, type OfferOptionalItem, type OfferProps, type OfferSummaryLineItem, type SuggestedTraveller, cn };
|