@planetaexo/design-system 0.96.1 → 0.97.0

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.d.cts CHANGED
@@ -1906,6 +1906,16 @@ interface PartnerBookingCreatedEmailProps {
1906
1906
  name: string;
1907
1907
  country?: string | null;
1908
1908
  };
1909
+ /**
1910
+ * Notas marcadas como visíveis ao parceiro (visibleToPartner=true), já filtradas
1911
+ * e formatadas pelo backend: `body` é texto puro; `meta` é "Autor · Data" já
1912
+ * montada (pode ser ""). Quando presente e não-vazia, renderiza a seção "Notes
1913
+ * from the team"; ausente/vazia = nada renderizado. Spec offer-notes.
1914
+ */
1915
+ partnerNotes?: {
1916
+ body: string;
1917
+ meta: string;
1918
+ }[];
1909
1919
  agent: {
1910
1920
  name: string;
1911
1921
  whatsappUrl?: string;
@@ -1946,13 +1956,15 @@ interface PartnerBookingCreatedEmailLabels {
1946
1956
  registrationPendingNotice?: string;
1947
1957
  /** Aviso (linha 2, enfatizado) antes do closing — sempre visível. */
1948
1958
  mustReplyToConfirm?: string;
1959
+ /** Heading da seção de notas visíveis ao parceiro (Spec offer-notes). */
1960
+ partnerNotesHeading?: string;
1949
1961
  /** Closing principal quando há agente. Recebe nome + URLs e retorna JSX. */
1950
1962
  closingAgent?: (agentName: string, contact: PartnerBookingCreatedAgentContactLinks) => React.ReactNode;
1951
1963
  /** Closing alternativo sem agente. */
1952
1964
  closingNoAgent?: string;
1953
1965
  teamSignature?: string;
1954
1966
  }
1955
- declare function PartnerBookingCreatedEmail({ topNotice, partnerName, bookingNumber, adventureName, dateRange, travellersCount, optionals, rooms, booker, agent, logoUrl, labels, className, }: PartnerBookingCreatedEmailProps): react_jsx_runtime.JSX.Element;
1967
+ declare function PartnerBookingCreatedEmail({ topNotice, partnerName, bookingNumber, adventureName, dateRange, travellersCount, optionals, rooms, booker, partnerNotes, agent, logoUrl, labels, className, }: PartnerBookingCreatedEmailProps): react_jsx_runtime.JSX.Element;
1956
1968
 
1957
1969
  interface PaymentReceiptEmailLabels {
1958
1970
  logoAlt?: string;
package/dist/index.d.ts CHANGED
@@ -1906,6 +1906,16 @@ interface PartnerBookingCreatedEmailProps {
1906
1906
  name: string;
1907
1907
  country?: string | null;
1908
1908
  };
1909
+ /**
1910
+ * Notas marcadas como visíveis ao parceiro (visibleToPartner=true), já filtradas
1911
+ * e formatadas pelo backend: `body` é texto puro; `meta` é "Autor · Data" já
1912
+ * montada (pode ser ""). Quando presente e não-vazia, renderiza a seção "Notes
1913
+ * from the team"; ausente/vazia = nada renderizado. Spec offer-notes.
1914
+ */
1915
+ partnerNotes?: {
1916
+ body: string;
1917
+ meta: string;
1918
+ }[];
1909
1919
  agent: {
1910
1920
  name: string;
1911
1921
  whatsappUrl?: string;
@@ -1946,13 +1956,15 @@ interface PartnerBookingCreatedEmailLabels {
1946
1956
  registrationPendingNotice?: string;
1947
1957
  /** Aviso (linha 2, enfatizado) antes do closing — sempre visível. */
1948
1958
  mustReplyToConfirm?: string;
1959
+ /** Heading da seção de notas visíveis ao parceiro (Spec offer-notes). */
1960
+ partnerNotesHeading?: string;
1949
1961
  /** Closing principal quando há agente. Recebe nome + URLs e retorna JSX. */
1950
1962
  closingAgent?: (agentName: string, contact: PartnerBookingCreatedAgentContactLinks) => React.ReactNode;
1951
1963
  /** Closing alternativo sem agente. */
1952
1964
  closingNoAgent?: string;
1953
1965
  teamSignature?: string;
1954
1966
  }
1955
- declare function PartnerBookingCreatedEmail({ topNotice, partnerName, bookingNumber, adventureName, dateRange, travellersCount, optionals, rooms, booker, agent, logoUrl, labels, className, }: PartnerBookingCreatedEmailProps): react_jsx_runtime.JSX.Element;
1967
+ declare function PartnerBookingCreatedEmail({ topNotice, partnerName, bookingNumber, adventureName, dateRange, travellersCount, optionals, rooms, booker, partnerNotes, agent, logoUrl, labels, className, }: PartnerBookingCreatedEmailProps): react_jsx_runtime.JSX.Element;
1956
1968
 
1957
1969
  interface PaymentReceiptEmailLabels {
1958
1970
  logoAlt?: string;
package/dist/index.js CHANGED
@@ -7403,6 +7403,7 @@ var DEFAULT_LABELS11 = {
7403
7403
  },
7404
7404
  registrationPendingNotice: "The travellers' registration details will be sent to you as soon as all travellers have completed their forms.",
7405
7405
  mustReplyToConfirm: "Please reply to this email to confirm the booking.",
7406
+ partnerNotesHeading: "Notes from the team",
7406
7407
  closingAgent: (agentName, contact) => /* @__PURE__ */ jsxs(Fragment, { children: [
7407
7408
  "If you have any questions, your contact ",
7408
7409
  agentName,
@@ -7426,6 +7427,7 @@ function PartnerBookingCreatedEmail({
7426
7427
  optionals,
7427
7428
  rooms,
7428
7429
  booker,
7430
+ partnerNotes,
7429
7431
  agent,
7430
7432
  logoUrl,
7431
7433
  labels,
@@ -7499,6 +7501,52 @@ function PartnerBookingCreatedEmail({
7499
7501
  bedArrangementLabels: l.bedArrangementLabels
7500
7502
  }
7501
7503
  ),
7504
+ Array.isArray(partnerNotes) && partnerNotes.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
7505
+ sectionDivider,
7506
+ /* @__PURE__ */ jsx(
7507
+ "p",
7508
+ {
7509
+ style: {
7510
+ marginTop: 0,
7511
+ marginBottom: "16px",
7512
+ paddingBottom: "8px",
7513
+ borderBottom: `2px solid ${emailTokens.primary}`,
7514
+ fontWeight: 700,
7515
+ fontSize: "18px",
7516
+ color: emailTokens.foreground,
7517
+ fontFamily: emailTokens.fontFamily
7518
+ },
7519
+ children: l.partnerNotesHeading
7520
+ }
7521
+ ),
7522
+ /* @__PURE__ */ jsx(
7523
+ "table",
7524
+ {
7525
+ role: "presentation",
7526
+ style: {
7527
+ width: "100%",
7528
+ borderCollapse: "collapse",
7529
+ fontSize: "14px",
7530
+ marginBottom: "24px"
7531
+ },
7532
+ children: /* @__PURE__ */ jsx("tbody", { children: partnerNotes.map((note, i) => /* @__PURE__ */ jsx("tr", { style: { borderBottom: `1px solid ${emailTokens.border}` }, children: /* @__PURE__ */ jsxs("td", { style: { padding: "10px 0", color: emailTokens.bodyText, verticalAlign: "top" }, children: [
7533
+ hasText7(note.meta) && /* @__PURE__ */ jsx(
7534
+ "div",
7535
+ {
7536
+ style: {
7537
+ fontSize: "12px",
7538
+ fontWeight: 600,
7539
+ color: emailTokens.foreground,
7540
+ marginBottom: "4px"
7541
+ },
7542
+ children: note.meta
7543
+ }
7544
+ ),
7545
+ /* @__PURE__ */ jsx("div", { style: { whiteSpace: "pre-wrap" }, children: note.body })
7546
+ ] }) }, i)) })
7547
+ }
7548
+ )
7549
+ ] }),
7502
7550
  sectionDivider,
7503
7551
  /* @__PURE__ */ jsxs(
7504
7552
  "div",