@wise/dynamic-flow-client-internal 4.16.0-exp-modal-renderer-d460e05 → 4.17.0-exp-modal-renderer-b16f932

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/build/main.mjs CHANGED
@@ -691,6 +691,7 @@ var mapCtaToAlertAction = (callToAction) => {
691
691
  }
692
692
  return void 0;
693
693
  };
694
+ var AlertRenderer_default = AlertRenderer;
694
695
 
695
696
  // ../renderers/src/BoxRenderer.tsx
696
697
  import classNames from "classnames";
@@ -714,6 +715,7 @@ var BoxRenderer = {
714
715
  return hasFixedWidth ? /* @__PURE__ */ jsx2("div", { className: classNames("df-box-renderer-fixed-width", getMargin(margin)), children: contents }) : contents;
715
716
  }
716
717
  };
718
+ var BoxRenderer_default = BoxRenderer;
717
719
 
718
720
  // ../renderers/src/ButtonRenderer.tsx
719
721
  import { Button } from "@transferwise/components";
@@ -784,9 +786,7 @@ var mapSize = (size) => {
784
786
  return "md";
785
787
  }
786
788
  };
787
-
788
- // ../renderers/src/CheckboxInputRenderer.tsx
789
- import { Checkbox } from "@transferwise/components";
789
+ var ButtonRenderer_default = ButtonRenderer;
790
790
 
791
791
  // ../renderers/src/components/FieldInput.tsx
792
792
  import { Field } from "@transferwise/components";
@@ -860,6 +860,7 @@ var mapStatusToSentiment = (validation) => {
860
860
  var FieldInput_default = FieldInput;
861
861
 
862
862
  // ../renderers/src/CheckboxInputRenderer.tsx
863
+ import { Checkbox } from "@transferwise/components";
863
864
  import { jsx as jsx7 } from "react/jsx-runtime";
864
865
  var CheckboxInputRenderer = {
865
866
  canRenderType: "input-checkbox",
@@ -887,6 +888,7 @@ var CheckboxInputRenderer = {
887
888
  return /* @__PURE__ */ jsx7(FieldInput_default, { id, label: "", description: "", validation: validationState, help, children: /* @__PURE__ */ jsx7(Checkbox, __spreadValues({ id }, checkboxProps)) });
888
889
  }
889
890
  };
891
+ var CheckboxInputRenderer_default = CheckboxInputRenderer;
890
892
 
891
893
  // ../renderers/src/ColumnsRenderer.tsx
892
894
  import classNames2 from "classnames";
@@ -907,6 +909,7 @@ var ColumnsRenderer = {
907
909
  }
908
910
  )
909
911
  };
912
+ var ColumnsRenderer_default = ColumnsRenderer;
910
913
 
911
914
  // ../renderers/src/components/VariableDateInput.tsx
912
915
  import { DateInput, DateLookup } from "@transferwise/components";
@@ -1023,6 +1026,7 @@ var DateInputRenderer = {
1023
1026
  );
1024
1027
  }
1025
1028
  };
1029
+ var DateInputRenderer_default = DateInputRenderer;
1026
1030
 
1027
1031
  // ../renderers/src/DecisionRenderer.tsx
1028
1032
  import { Header, NavigationOption, NavigationOptionsList } from "@transferwise/components";
@@ -1176,6 +1180,7 @@ var DecisionRenderer = {
1176
1180
  }) })
1177
1181
  ] })
1178
1182
  };
1183
+ var DecisionRenderer_default = DecisionRenderer;
1179
1184
 
1180
1185
  // ../renderers/src/DividerRenderer.tsx
1181
1186
  import { jsx as jsx18 } from "react/jsx-runtime";
@@ -1183,6 +1188,7 @@ var DividerRenderer = {
1183
1188
  canRenderType: "divider",
1184
1189
  render: ({ margin }) => /* @__PURE__ */ jsx18("hr", { className: `m-t-0 ${getMargin(margin)}` })
1185
1190
  };
1191
+ var DividerRenderer_default = DividerRenderer;
1186
1192
 
1187
1193
  // ../renderers/src/ExternalConfirmationRenderer.tsx
1188
1194
  import { Button as Button2, Markdown as Markdown2, Modal } from "@transferwise/components";
@@ -1274,6 +1280,7 @@ function getOrigin(url) {
1274
1280
  return url;
1275
1281
  }
1276
1282
  }
1283
+ var ExternalConfirmationRenderer_default = ExternalConfirmationRenderer;
1277
1284
 
1278
1285
  // ../renderers/src/FormRenderer.tsx
1279
1286
  import { jsx as jsx20 } from "react/jsx-runtime";
@@ -1281,6 +1288,7 @@ var FormRenderer = {
1281
1288
  canRenderType: "form",
1282
1289
  render: ({ children, margin }) => /* @__PURE__ */ jsx20("div", { className: getMargin(margin), children })
1283
1290
  };
1291
+ var FormRenderer_default = FormRenderer;
1284
1292
 
1285
1293
  // ../renderers/src/FormSectionRenderer.tsx
1286
1294
  import { Header as Header2 } from "@transferwise/components";
@@ -1299,6 +1307,7 @@ var FormSectionRenderer = {
1299
1307
  children
1300
1308
  ] })
1301
1309
  };
1310
+ var FormSectionRenderer_default = FormSectionRenderer;
1302
1311
 
1303
1312
  // ../renderers/src/HeadingRenderer.tsx
1304
1313
  import { Display, Title } from "@transferwise/components";
@@ -1342,6 +1351,7 @@ var getTitleTypeBySize = (size) => {
1342
1351
  };
1343
1352
  return (_a = titleTypes[size]) != null ? _a : "title-subsection";
1344
1353
  };
1354
+ var HeadingRenderer_default = HeadingRenderer;
1345
1355
 
1346
1356
  // ../renderers/src/ImageRenderer/UrlImage.tsx
1347
1357
  import { Image } from "@transferwise/components";
@@ -1503,6 +1513,9 @@ var ImageRenderer = {
1503
1513
  render: (props) => isUrnImage(props.uri) ? /* @__PURE__ */ jsx27(UrnImage, __spreadValues({}, props)) : /* @__PURE__ */ jsx27(UrlImage, __spreadValues({}, props))
1504
1514
  };
1505
1515
 
1516
+ // ../renderers/src/ImageRenderer/index.tsx
1517
+ var ImageRenderer_default = ImageRenderer;
1518
+
1506
1519
  // ../renderers/src/InstructionsRenderer.tsx
1507
1520
  import { Header as Header3, InstructionsList } from "@transferwise/components";
1508
1521
  import { jsx as jsx28, jsxs as jsxs6 } from "react/jsx-runtime";
@@ -1519,6 +1532,7 @@ var InstructionsRenderer = {
1519
1532
  ] });
1520
1533
  }
1521
1534
  };
1535
+ var InstructionsRenderer_default = InstructionsRenderer;
1522
1536
 
1523
1537
  // ../renderers/src/IntegerInputRenderer.tsx
1524
1538
  import { Input, InputGroup } from "@transferwise/components";
@@ -1614,6 +1628,7 @@ var IntegerInputRenderer = {
1614
1628
  );
1615
1629
  }
1616
1630
  };
1631
+ var IntegerInputRenderer_default = IntegerInputRenderer;
1617
1632
 
1618
1633
  // ../renderers/src/ListRenderer.tsx
1619
1634
  import { Body, Header as Header4 } from "@transferwise/components";
@@ -1686,6 +1701,7 @@ var getListAction = (callToAction) => {
1686
1701
  }
1687
1702
  return void 0;
1688
1703
  };
1704
+ var ListRenderer_default = ListRenderer;
1689
1705
 
1690
1706
  // ../renderers/src/LoadingIndicatorRenderer.tsx
1691
1707
  import { Loader } from "@transferwise/components";
@@ -1701,6 +1717,7 @@ var LoadingIndicatorRenderer = {
1701
1717
  }
1702
1718
  )
1703
1719
  };
1720
+ var LoadingIndicatorRenderer_default = LoadingIndicatorRenderer;
1704
1721
 
1705
1722
  // ../renderers/src/MarkdownRenderer.tsx
1706
1723
  import { Markdown as Markdown3 } from "@transferwise/components";
@@ -1709,6 +1726,7 @@ var MarkdownRenderer = {
1709
1726
  canRenderType: "markdown",
1710
1727
  render: ({ content, align, margin }) => /* @__PURE__ */ jsx33("div", { className: getTextAlignmentAndMargin({ align, margin }), children: /* @__PURE__ */ jsx33(Markdown3, { className: "np-text-body-large", config: { link: { target: "_blank" } }, children: content }) })
1711
1728
  };
1729
+ var MarkdownRenderer_default = MarkdownRenderer;
1712
1730
 
1713
1731
  // ../renderers/src/ModalLayoutRenderer.tsx
1714
1732
  import { Button as Button3, Modal as Modal2 } from "@transferwise/components";
@@ -1718,6 +1736,7 @@ var ModalLayoutRenderer = {
1718
1736
  canRenderType: "modal-layout",
1719
1737
  render: (props) => /* @__PURE__ */ jsx34(DFModal, __spreadValues({}, props))
1720
1738
  };
1739
+ var ModalLayoutRenderer_default = ModalLayoutRenderer;
1721
1740
  function DFModal({ content, margin, trigger }) {
1722
1741
  const [visible, setVisible] = useState3(false);
1723
1742
  const { children, title } = content;
@@ -1737,16 +1756,6 @@ function DFModal({ content, margin, trigger }) {
1737
1756
  ] });
1738
1757
  }
1739
1758
 
1740
- // ../renderers/src/ModalRenderer.tsx
1741
- import { Modal as Modal3 } from "@transferwise/components";
1742
- import { jsx as jsx35 } from "react/jsx-runtime";
1743
- var ModalContentRenderer = {
1744
- canRenderType: "modal",
1745
- render: ({ title, children, open, onClose }) => {
1746
- return /* @__PURE__ */ jsx35(Modal3, { open, title, body: children, onClose });
1747
- }
1748
- };
1749
-
1750
1759
  // ../renderers/src/MultiSelectInputRenderer.tsx
1751
1760
  import { SelectInput, SelectInputOptionContent } from "@transferwise/components";
1752
1761
  import { useState as useState4 } from "react";
@@ -1763,10 +1772,10 @@ var multi_select_messages_default = defineMessages3({
1763
1772
  });
1764
1773
 
1765
1774
  // ../renderers/src/MultiSelectInputRenderer.tsx
1766
- import { jsx as jsx36 } from "react/jsx-runtime";
1775
+ import { jsx as jsx35 } from "react/jsx-runtime";
1767
1776
  var MultiSelectInputRenderer = {
1768
1777
  canRenderType: "input-multi-select",
1769
- render: (props) => /* @__PURE__ */ jsx36(MultiSelectInputRendererComponent, __spreadValues({}, props))
1778
+ render: (props) => /* @__PURE__ */ jsx35(MultiSelectInputRendererComponent, __spreadValues({}, props))
1770
1779
  };
1771
1780
  function MultiSelectInputRendererComponent(props) {
1772
1781
  const { formatMessage } = useIntl3();
@@ -1808,12 +1817,12 @@ function MultiSelectInputRendererComponent(props) {
1808
1817
  const contentProps = {
1809
1818
  title: option.title,
1810
1819
  description: option.description,
1811
- icon: /* @__PURE__ */ jsx36(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
1820
+ icon: /* @__PURE__ */ jsx35(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
1812
1821
  };
1813
- return /* @__PURE__ */ jsx36(SelectInputOptionContent, __spreadValues({}, contentProps));
1822
+ return /* @__PURE__ */ jsx35(SelectInputOptionContent, __spreadValues({}, contentProps));
1814
1823
  };
1815
1824
  const extraProps = { autoComplete };
1816
- return /* @__PURE__ */ jsx36(
1825
+ return /* @__PURE__ */ jsx35(
1817
1826
  FieldInput_default,
1818
1827
  {
1819
1828
  id,
@@ -1821,7 +1830,7 @@ function MultiSelectInputRendererComponent(props) {
1821
1830
  help,
1822
1831
  description,
1823
1832
  validation: validationState,
1824
- children: /* @__PURE__ */ jsx36(
1833
+ children: /* @__PURE__ */ jsx35(
1825
1834
  SelectInput,
1826
1835
  __spreadValues({
1827
1836
  id,
@@ -1858,6 +1867,7 @@ function MultiSelectInputRendererComponent(props) {
1858
1867
  }
1859
1868
  );
1860
1869
  }
1870
+ var MultiSelectInputRenderer_default = MultiSelectInputRenderer;
1861
1871
 
1862
1872
  // ../renderers/src/MultiUploadInputRenderer.tsx
1863
1873
  import { UploadInput } from "@transferwise/components";
@@ -1865,7 +1875,7 @@ import { UploadInput } from "@transferwise/components";
1865
1875
  // ../renderers/src/components/UploadFieldInput.tsx
1866
1876
  import { InlineAlert } from "@transferwise/components";
1867
1877
  import classNames4 from "classnames";
1868
- import { jsx as jsx37, jsxs as jsxs9 } from "react/jsx-runtime";
1878
+ import { jsx as jsx36, jsxs as jsxs9 } from "react/jsx-runtime";
1869
1879
  function UploadFieldInput({
1870
1880
  id,
1871
1881
  children,
@@ -1874,7 +1884,7 @@ function UploadFieldInput({
1874
1884
  help,
1875
1885
  validation
1876
1886
  }) {
1877
- const labelContent = label && help ? /* @__PURE__ */ jsx37(LabelContentWithHelp, { text: label, help }) : label;
1887
+ const labelContent = label && help ? /* @__PURE__ */ jsx36(LabelContentWithHelp, { text: label, help }) : label;
1878
1888
  const descriptionId = description ? `${id}-description` : void 0;
1879
1889
  return /* @__PURE__ */ jsxs9(
1880
1890
  "div",
@@ -1883,9 +1893,9 @@ function UploadFieldInput({
1883
1893
  "has-error": (validation == null ? void 0 : validation.status) === "invalid"
1884
1894
  }),
1885
1895
  children: [
1886
- /* @__PURE__ */ jsx37("label", { htmlFor: id, className: "control-label", children: labelContent }),
1896
+ /* @__PURE__ */ jsx36("label", { htmlFor: id, className: "control-label", children: labelContent }),
1887
1897
  children,
1888
- (validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx37(InlineAlert, { type: "negative", id: descriptionId, children: validation.message })
1898
+ (validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx36(InlineAlert, { type: "negative", id: descriptionId, children: validation.message })
1889
1899
  ]
1890
1900
  }
1891
1901
  );
@@ -1914,7 +1924,7 @@ var getFileType = (base64Url) => {
1914
1924
  };
1915
1925
 
1916
1926
  // ../renderers/src/MultiUploadInputRenderer.tsx
1917
- import { jsx as jsx38 } from "react/jsx-runtime";
1927
+ import { jsx as jsx37 } from "react/jsx-runtime";
1918
1928
  var MultiUploadInputRenderer = {
1919
1929
  canRenderType: "input-upload-multi",
1920
1930
  render: (props) => {
@@ -1939,7 +1949,7 @@ var MultiUploadInputRenderer = {
1939
1949
  };
1940
1950
  const onDeleteFile = async (fileId) => onRemoveFile(value.findIndex((file) => file.id === fileId));
1941
1951
  const descriptionId = description ? `${id}-description` : void 0;
1942
- return /* @__PURE__ */ jsx38(
1952
+ return /* @__PURE__ */ jsx37(
1943
1953
  UploadFieldInput_default,
1944
1954
  {
1945
1955
  id,
@@ -1947,7 +1957,7 @@ var MultiUploadInputRenderer = {
1947
1957
  description,
1948
1958
  validation: validationState,
1949
1959
  help,
1950
- children: /* @__PURE__ */ jsx38(
1960
+ children: /* @__PURE__ */ jsx37(
1951
1961
  UploadInput,
1952
1962
  {
1953
1963
  id,
@@ -1967,10 +1977,11 @@ var MultiUploadInputRenderer = {
1967
1977
  );
1968
1978
  }
1969
1979
  };
1980
+ var MultiUploadInputRenderer_default = MultiUploadInputRenderer;
1970
1981
 
1971
1982
  // ../renderers/src/NumberInputRenderer.tsx
1972
1983
  import { Input as Input2, InputGroup as InputGroup2 } from "@transferwise/components";
1973
- import { jsx as jsx39 } from "react/jsx-runtime";
1984
+ import { jsx as jsx38 } from "react/jsx-runtime";
1974
1985
  var NumberInputRenderer = {
1975
1986
  canRenderType: "input-number",
1976
1987
  render: (props) => {
@@ -1984,7 +1995,7 @@ var NumberInputRenderer = {
1984
1995
  "maximum",
1985
1996
  "minimum"
1986
1997
  );
1987
- return /* @__PURE__ */ jsx39(
1998
+ return /* @__PURE__ */ jsx38(
1988
1999
  FieldInput_default,
1989
2000
  {
1990
2001
  id,
@@ -1992,7 +2003,7 @@ var NumberInputRenderer = {
1992
2003
  description,
1993
2004
  validation: validationState,
1994
2005
  help,
1995
- children: /* @__PURE__ */ jsx39(InputGroup2, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx39(
2006
+ children: /* @__PURE__ */ jsx38(InputGroup2, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx38(
1996
2007
  Input2,
1997
2008
  __spreadValues({
1998
2009
  id,
@@ -2010,6 +2021,7 @@ var NumberInputRenderer = {
2010
2021
  );
2011
2022
  }
2012
2023
  };
2024
+ var NumberInputRenderer_default = NumberInputRenderer;
2013
2025
 
2014
2026
  // ../renderers/src/ParagraphRenderer.tsx
2015
2027
  import { useIntl as useIntl4 } from "react-intl";
@@ -2043,17 +2055,17 @@ var paragraph_messages_default = defineMessages4({
2043
2055
  });
2044
2056
 
2045
2057
  // ../renderers/src/ParagraphRenderer.tsx
2046
- import { jsx as jsx40, jsxs as jsxs10 } from "react/jsx-runtime";
2058
+ import { jsx as jsx39, jsxs as jsxs10 } from "react/jsx-runtime";
2047
2059
  var ParagraphRenderer = {
2048
2060
  canRenderType: "paragraph",
2049
- render: (props) => /* @__PURE__ */ jsx40(Paragraph, __spreadValues({}, props))
2061
+ render: (props) => /* @__PURE__ */ jsx39(Paragraph, __spreadValues({}, props))
2050
2062
  };
2051
2063
  function Paragraph({ align, control, margin, text }) {
2052
2064
  const className = getTextAlignmentAndMargin({ align, margin });
2053
- return control === "copyable" ? /* @__PURE__ */ jsx40(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx40(StandardParagraph, { className, text });
2065
+ return control === "copyable" ? /* @__PURE__ */ jsx39(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx39(StandardParagraph, { className, text });
2054
2066
  }
2055
2067
  function StandardParagraph({ text, className }) {
2056
- return /* @__PURE__ */ jsx40("p", { className: `np-text-body-large ${className}`, children: text });
2068
+ return /* @__PURE__ */ jsx39("p", { className: `np-text-body-large ${className}`, children: text });
2057
2069
  }
2058
2070
  function CopyableParagraph({
2059
2071
  text,
@@ -2068,7 +2080,7 @@ function CopyableParagraph({
2068
2080
  };
2069
2081
  const inputAlignmentClasses = getTextAlignmentAndMargin({ align, margin: "sm" });
2070
2082
  return /* @__PURE__ */ jsxs10("div", { className, children: [
2071
- /* @__PURE__ */ jsx40(
2083
+ /* @__PURE__ */ jsx39(
2072
2084
  Input3,
2073
2085
  {
2074
2086
  type: "text",
@@ -2077,12 +2089,13 @@ function CopyableParagraph({
2077
2089
  className: classNames5("text-ellipsis", inputAlignmentClasses)
2078
2090
  }
2079
2091
  ),
2080
- /* @__PURE__ */ jsx40(Button4, { block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
2092
+ /* @__PURE__ */ jsx39(Button4, { block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
2081
2093
  ] });
2082
2094
  }
2095
+ var ParagraphRenderer_default = ParagraphRenderer;
2083
2096
 
2084
2097
  // ../renderers/src/RepeatableRenderer.tsx
2085
- import { Button as Button5, Header as Header5, InlineAlert as InlineAlert2, Modal as Modal4, NavigationOption as NavigationOption2 } from "@transferwise/components";
2098
+ import { Button as Button5, Header as Header5, InlineAlert as InlineAlert2, Modal as Modal3, NavigationOption as NavigationOption2 } from "@transferwise/components";
2086
2099
  import { Plus } from "@transferwise/icons";
2087
2100
  import classNames6 from "classnames";
2088
2101
  import { useState as useState5 } from "react";
@@ -2114,10 +2127,10 @@ var repeatable_messages_default = defineMessages5({
2114
2127
  });
2115
2128
 
2116
2129
  // ../renderers/src/RepeatableRenderer.tsx
2117
- import { Fragment as Fragment2, jsx as jsx41, jsxs as jsxs11 } from "react/jsx-runtime";
2130
+ import { Fragment as Fragment2, jsx as jsx40, jsxs as jsxs11 } from "react/jsx-runtime";
2118
2131
  var RepeatableRenderer = {
2119
2132
  canRenderType: "repeatable",
2120
- render: (props) => /* @__PURE__ */ jsx41(Repeatable, __spreadValues({}, props))
2133
+ render: (props) => /* @__PURE__ */ jsx40(Repeatable, __spreadValues({}, props))
2121
2134
  };
2122
2135
  function Repeatable(props) {
2123
2136
  const {
@@ -2157,8 +2170,8 @@ function Repeatable(props) {
2157
2170
  setOpenModalType(null);
2158
2171
  };
2159
2172
  return /* @__PURE__ */ jsxs11(Fragment2, { children: [
2160
- title && /* @__PURE__ */ jsx41(Header5, { title }),
2161
- description && /* @__PURE__ */ jsx41("p", { children: description }),
2173
+ title && /* @__PURE__ */ jsx40(Header5, { title }),
2174
+ description && /* @__PURE__ */ jsx40("p", { children: description }),
2162
2175
  /* @__PURE__ */ jsxs11(
2163
2176
  "div",
2164
2177
  {
@@ -2166,30 +2179,30 @@ function Repeatable(props) {
2166
2179
  "has-error": (validationState == null ? void 0 : validationState.status) === "invalid"
2167
2180
  }),
2168
2181
  children: [
2169
- items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx41(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
2170
- /* @__PURE__ */ jsx41(
2182
+ items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx40(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
2183
+ /* @__PURE__ */ jsx40(
2171
2184
  NavigationOption2,
2172
2185
  {
2173
- media: /* @__PURE__ */ jsx41(Plus, {}),
2186
+ media: /* @__PURE__ */ jsx40(Plus, {}),
2174
2187
  title: addItemTitle || formatMessage(repeatable_messages_default.addItemTitle),
2175
2188
  showMediaAtAllSizes: true,
2176
2189
  onClick: () => onAddItem()
2177
2190
  }
2178
2191
  ),
2179
- (validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx41(InlineAlert2, { type: "negative", children: validationState.message })
2192
+ (validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx40(InlineAlert2, { type: "negative", children: validationState.message })
2180
2193
  ]
2181
2194
  }
2182
2195
  ),
2183
- /* @__PURE__ */ jsx41(
2184
- Modal4,
2196
+ /* @__PURE__ */ jsx40(
2197
+ Modal3,
2185
2198
  {
2186
2199
  open: openModalType !== null,
2187
2200
  title: (openModalType === "add" ? addItemTitle : editItemTitle) || formatMessage(repeatable_messages_default.addItemTitle),
2188
2201
  body: /* @__PURE__ */ jsxs11(Fragment2, { children: [
2189
- /* @__PURE__ */ jsx41("div", { className: "m-b-2", children: editableItem }),
2202
+ /* @__PURE__ */ jsx40("div", { className: "m-b-2", children: editableItem }),
2190
2203
  /* @__PURE__ */ jsxs11("div", { children: [
2191
- /* @__PURE__ */ jsx41(Button5, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
2192
- /* @__PURE__ */ jsx41(Button5, { priority: "secondary", type: "negative", block: true, onClick: () => onRemoveItem(), children: formatMessage(repeatable_messages_default.removeItem) })
2204
+ /* @__PURE__ */ jsx40(Button5, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
2205
+ /* @__PURE__ */ jsx40(Button5, { priority: "secondary", type: "negative", block: true, onClick: () => onRemoveItem(), children: formatMessage(repeatable_messages_default.removeItem) })
2193
2206
  ] })
2194
2207
  ] }),
2195
2208
  onClose: () => onCancelEdit()
@@ -2201,10 +2214,10 @@ function ItemSummaryOption({
2201
2214
  item,
2202
2215
  onClick
2203
2216
  }) {
2204
- return /* @__PURE__ */ jsx41(
2217
+ return /* @__PURE__ */ jsx40(
2205
2218
  NavigationOption2,
2206
2219
  {
2207
- media: /* @__PURE__ */ jsx41(OptionMedia, __spreadProps(__spreadValues({}, item), { preferAvatar: false })),
2220
+ media: /* @__PURE__ */ jsx40(OptionMedia, __spreadProps(__spreadValues({}, item), { preferAvatar: false })),
2208
2221
  title: item.title,
2209
2222
  content: item.description,
2210
2223
  showMediaAtAllSizes: true,
@@ -2212,6 +2225,7 @@ function ItemSummaryOption({
2212
2225
  }
2213
2226
  );
2214
2227
  }
2228
+ var RepeatableRenderer_default = RepeatableRenderer;
2215
2229
 
2216
2230
  // ../renderers/src/ReviewRenderer.tsx
2217
2231
  import { DefinitionList, Header as Header6 } from "@transferwise/components";
@@ -2238,14 +2252,14 @@ var getHeaderAction = (callToAction) => {
2238
2252
  };
2239
2253
 
2240
2254
  // ../renderers/src/ReviewRenderer.tsx
2241
- import { Fragment as Fragment3, jsx as jsx42, jsxs as jsxs12 } from "react/jsx-runtime";
2255
+ import { Fragment as Fragment3, jsx as jsx41, jsxs as jsxs12 } from "react/jsx-runtime";
2242
2256
  var ReviewRenderer = {
2243
2257
  canRenderType: "review",
2244
2258
  render: ({ callToAction, control, fields, margin, title, trackEvent }) => {
2245
2259
  const orientation = mapControlToDefinitionListLayout(control);
2246
2260
  return /* @__PURE__ */ jsxs12("div", { className: getMargin(margin), children: [
2247
- (title || callToAction) && /* @__PURE__ */ jsx42(Header6, { title: title != null ? title : "", action: getHeaderAction(callToAction) }),
2248
- /* @__PURE__ */ jsx42("div", { className: margin, children: /* @__PURE__ */ jsx42(
2261
+ (title || callToAction) && /* @__PURE__ */ jsx41(Header6, { title: title != null ? title : "", action: getHeaderAction(callToAction) }),
2262
+ /* @__PURE__ */ jsx41("div", { className: margin, children: /* @__PURE__ */ jsx41(
2249
2263
  DefinitionList,
2250
2264
  {
2251
2265
  layout: orientation,
@@ -2266,6 +2280,7 @@ var ReviewRenderer = {
2266
2280
  ] });
2267
2281
  }
2268
2282
  };
2283
+ var ReviewRenderer_default = ReviewRenderer;
2269
2284
  var mapControlToDefinitionListLayout = (control) => {
2270
2285
  switch (control) {
2271
2286
  case "horizontal":
@@ -2284,13 +2299,13 @@ var mapControlToDefinitionListLayout = (control) => {
2284
2299
  var getFieldValue = (value, help, orientation, onClick) => {
2285
2300
  if (help) {
2286
2301
  return orientation === "HORIZONTAL_RIGHT_ALIGNED" ? /* @__PURE__ */ jsxs12(Fragment3, { children: [
2287
- /* @__PURE__ */ jsx42(Help_default, { help, onClick }),
2302
+ /* @__PURE__ */ jsx41(Help_default, { help, onClick }),
2288
2303
  " ",
2289
2304
  value
2290
2305
  ] }) : /* @__PURE__ */ jsxs12(Fragment3, { children: [
2291
2306
  value,
2292
2307
  " ",
2293
- /* @__PURE__ */ jsx42(Help_default, { help, onClick })
2308
+ /* @__PURE__ */ jsx41(Help_default, { help, onClick })
2294
2309
  ] });
2295
2310
  }
2296
2311
  return value;
@@ -2336,7 +2351,7 @@ var generic_error_messages_default = defineMessages7({
2336
2351
 
2337
2352
  // ../renderers/src/SearchRenderer/ErrorResult.tsx
2338
2353
  import { Button as Button6 } from "@transferwise/components";
2339
- import { jsx as jsx43, jsxs as jsxs13 } from "react/jsx-runtime";
2354
+ import { jsx as jsx42, jsxs as jsxs13 } from "react/jsx-runtime";
2340
2355
  function ErrorResult({ state }) {
2341
2356
  const intl = useIntl6();
2342
2357
  const buttonVisualProps = {
@@ -2347,7 +2362,7 @@ function ErrorResult({ state }) {
2347
2362
  return /* @__PURE__ */ jsxs13("p", { className: "m-t-2", children: [
2348
2363
  intl.formatMessage(generic_error_messages_default.genericError),
2349
2364
  "\xA0",
2350
- /* @__PURE__ */ jsx43(
2365
+ /* @__PURE__ */ jsx42(
2351
2366
  Button6,
2352
2367
  __spreadProps(__spreadValues({}, buttonVisualProps), {
2353
2368
  onClick: () => {
@@ -2360,7 +2375,7 @@ function ErrorResult({ state }) {
2360
2375
  }
2361
2376
 
2362
2377
  // ../renderers/src/SearchRenderer/BlockSearchRendererComponent.tsx
2363
- import { Fragment as Fragment4, jsx as jsx44, jsxs as jsxs14 } from "react/jsx-runtime";
2378
+ import { Fragment as Fragment4, jsx as jsx43, jsxs as jsxs14 } from "react/jsx-runtime";
2364
2379
  function BlockSearchRendererComponent({
2365
2380
  id,
2366
2381
  isLoading,
@@ -2374,7 +2389,7 @@ function BlockSearchRendererComponent({
2374
2389
  const [hasSearched, setHasSearched] = useState6(false);
2375
2390
  const { formatMessage } = useIntl7();
2376
2391
  return /* @__PURE__ */ jsxs14("div", { className: getMargin(margin), children: [
2377
- /* @__PURE__ */ jsx44(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx44(
2392
+ /* @__PURE__ */ jsx43(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx43(
2378
2393
  Input4,
2379
2394
  {
2380
2395
  id,
@@ -2391,7 +2406,7 @@ function BlockSearchRendererComponent({
2391
2406
  }
2392
2407
  }
2393
2408
  ) }),
2394
- isLoading ? /* @__PURE__ */ jsx44(Fragment4, { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx44(SearchResultContent, { state, trackEvent })
2409
+ isLoading ? /* @__PURE__ */ jsx43(Fragment4, { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx43(SearchResultContent, { state, trackEvent })
2395
2410
  ] });
2396
2411
  }
2397
2412
  function SearchResultContent({
@@ -2400,26 +2415,26 @@ function SearchResultContent({
2400
2415
  }) {
2401
2416
  switch (state.type) {
2402
2417
  case "error":
2403
- return /* @__PURE__ */ jsx44(ErrorResult, { state });
2418
+ return /* @__PURE__ */ jsx43(ErrorResult, { state });
2404
2419
  case "results":
2405
- return /* @__PURE__ */ jsx44(SearchResults, { state, trackEvent });
2420
+ return /* @__PURE__ */ jsx43(SearchResults, { state, trackEvent });
2406
2421
  case "noResults":
2407
- return /* @__PURE__ */ jsx44(EmptySearchResult, { state });
2422
+ return /* @__PURE__ */ jsx43(EmptySearchResult, { state });
2408
2423
  case "pending":
2409
2424
  default:
2410
2425
  return null;
2411
2426
  }
2412
2427
  }
2413
2428
  function EmptySearchResult({ state }) {
2414
- return /* @__PURE__ */ jsx44(Markdown4, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
2429
+ return /* @__PURE__ */ jsx43(Markdown4, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
2415
2430
  }
2416
2431
  function SearchResults({
2417
2432
  state,
2418
2433
  trackEvent
2419
2434
  }) {
2420
- return /* @__PURE__ */ jsx44(NavigationOptionsList2, { children: state.results.map((result) => {
2435
+ return /* @__PURE__ */ jsx43(NavigationOptionsList2, { children: state.results.map((result) => {
2421
2436
  const { icon, image } = result;
2422
- return /* @__PURE__ */ jsx44(
2437
+ return /* @__PURE__ */ jsx43(
2423
2438
  NavigationOption3,
2424
2439
  {
2425
2440
  title: result.title,
@@ -2445,7 +2460,7 @@ import { Markdown as Markdown5, Typeahead } from "@transferwise/components";
2445
2460
  import { Search } from "@transferwise/icons";
2446
2461
  import { useState as useState7 } from "react";
2447
2462
  import { useIntl as useIntl8 } from "react-intl";
2448
- import { jsx as jsx45 } from "react/jsx-runtime";
2463
+ import { jsx as jsx44 } from "react/jsx-runtime";
2449
2464
  function InlineSearchRenderer({
2450
2465
  id,
2451
2466
  isLoading,
@@ -2457,7 +2472,7 @@ function InlineSearchRenderer({
2457
2472
  }) {
2458
2473
  const [hasSearched, setHasSearched] = useState7(false);
2459
2474
  const intl = useIntl8();
2460
- return /* @__PURE__ */ jsx45("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx45(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx45(
2475
+ return /* @__PURE__ */ jsx44("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx44(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx44(
2461
2476
  Typeahead,
2462
2477
  {
2463
2478
  id: "typeahead-input-id",
@@ -2465,10 +2480,10 @@ function InlineSearchRenderer({
2465
2480
  name: "typeahead-input-name",
2466
2481
  size: "md",
2467
2482
  maxHeight: 100,
2468
- footer: /* @__PURE__ */ jsx45(TypeaheadFooter, { state, isLoading }),
2483
+ footer: /* @__PURE__ */ jsx44(TypeaheadFooter, { state, isLoading }),
2469
2484
  multiple: false,
2470
2485
  clearable: false,
2471
- addon: /* @__PURE__ */ jsx45(Search, { size: 24 }),
2486
+ addon: /* @__PURE__ */ jsx44(Search, { size: 24 }),
2472
2487
  options: state.type === "results" ? state.results.map(mapResultToTypeaheadOption) : [],
2473
2488
  minQueryLength: 1,
2474
2489
  onChange: (values) => {
@@ -2505,41 +2520,43 @@ function mapResultToTypeaheadOption(result) {
2505
2520
  function TypeaheadFooter({ state, isLoading }) {
2506
2521
  const { formatMessage } = useIntl8();
2507
2522
  if (state.type === "noResults") {
2508
- return /* @__PURE__ */ jsx45(Markdown5, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
2523
+ return /* @__PURE__ */ jsx44(Markdown5, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
2509
2524
  }
2510
2525
  if (state.type === "error") {
2511
- return /* @__PURE__ */ jsx45("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx45(ErrorResult, { state }) });
2526
+ return /* @__PURE__ */ jsx44("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx44(ErrorResult, { state }) });
2512
2527
  }
2513
2528
  if (state.type === "pending" || isLoading) {
2514
- return /* @__PURE__ */ jsx45("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
2529
+ return /* @__PURE__ */ jsx44("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
2515
2530
  }
2516
2531
  return null;
2517
2532
  }
2518
2533
  var InlineSearchRendererComponent_default = InlineSearchRenderer;
2519
2534
 
2520
2535
  // ../renderers/src/SearchRenderer/SearchRenderer.tsx
2521
- import { jsx as jsx46 } from "react/jsx-runtime";
2536
+ import { jsx as jsx45 } from "react/jsx-runtime";
2522
2537
  var SearchRenderer = {
2523
2538
  canRenderType: "search",
2524
- render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx46(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx46(BlockSearchRendererComponent_default, __spreadValues({}, props))
2539
+ render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx45(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx45(BlockSearchRendererComponent_default, __spreadValues({}, props))
2525
2540
  };
2541
+ var SearchRenderer_default = SearchRenderer;
2526
2542
 
2527
2543
  // ../renderers/src/SectionRenderer.tsx
2528
2544
  import { Header as Header7 } from "@transferwise/components";
2529
- import { jsx as jsx47, jsxs as jsxs15 } from "react/jsx-runtime";
2545
+ import { jsx as jsx46, jsxs as jsxs15 } from "react/jsx-runtime";
2530
2546
  var SectionRenderer = {
2531
2547
  canRenderType: "section",
2532
2548
  render: ({ children, callToAction, margin, title }) => {
2533
2549
  return /* @__PURE__ */ jsxs15("section", { className: getMargin(margin), children: [
2534
- (title || callToAction) && /* @__PURE__ */ jsx47(Header7, { title: title != null ? title : "", action: getHeaderAction(callToAction) }),
2550
+ (title || callToAction) && /* @__PURE__ */ jsx46(Header7, { title: title != null ? title : "", action: getHeaderAction(callToAction) }),
2535
2551
  children
2536
2552
  ] });
2537
2553
  }
2538
2554
  };
2555
+ var SectionRenderer_default = SectionRenderer;
2539
2556
 
2540
2557
  // ../renderers/src/SelectInputRenderer/RadioInputRendererComponent.tsx
2541
2558
  import { RadioGroup } from "@transferwise/components";
2542
- import { Fragment as Fragment5, jsx as jsx48, jsxs as jsxs16 } from "react/jsx-runtime";
2559
+ import { Fragment as Fragment5, jsx as jsx47, jsxs as jsxs16 } from "react/jsx-runtime";
2543
2560
  function RadioInputRendererComponent(props) {
2544
2561
  const {
2545
2562
  id,
@@ -2554,7 +2571,7 @@ function RadioInputRendererComponent(props) {
2554
2571
  onSelect
2555
2572
  } = props;
2556
2573
  return /* @__PURE__ */ jsxs16(Fragment5, { children: [
2557
- /* @__PURE__ */ jsx48(
2574
+ /* @__PURE__ */ jsx47(
2558
2575
  FieldInput_default,
2559
2576
  {
2560
2577
  id,
@@ -2562,7 +2579,7 @@ function RadioInputRendererComponent(props) {
2562
2579
  help,
2563
2580
  description,
2564
2581
  validation: validationState,
2565
- children: /* @__PURE__ */ jsx48("span", { children: /* @__PURE__ */ jsx48(
2582
+ children: /* @__PURE__ */ jsx47("span", { children: /* @__PURE__ */ jsx47(
2566
2583
  RadioGroup,
2567
2584
  {
2568
2585
  name: id,
@@ -2571,7 +2588,7 @@ function RadioInputRendererComponent(props) {
2571
2588
  value: index,
2572
2589
  secondary: option.description,
2573
2590
  disabled: option.disabled || disabled,
2574
- avatar: /* @__PURE__ */ jsx48(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
2591
+ avatar: /* @__PURE__ */ jsx47(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
2575
2592
  })),
2576
2593
  selectedValue: selectedIndex != null ? selectedIndex : void 0,
2577
2594
  onChange: onSelect
@@ -2584,15 +2601,16 @@ function RadioInputRendererComponent(props) {
2584
2601
  ] });
2585
2602
  }
2586
2603
 
2587
- // ../renderers/src/SelectInputRenderer/SegmentedInputRendererComponent.tsx
2604
+ // ../renderers/src/SelectInputRenderer/TabInputRendererComponent.tsx
2605
+ import { Tabs } from "@transferwise/components";
2588
2606
  import { useEffect as useEffect3 } from "react";
2589
- import { SegmentedControl } from "@transferwise/components";
2590
- import { Fragment as Fragment6, jsx as jsx49, jsxs as jsxs17 } from "react/jsx-runtime";
2591
- function SegmentedInputRendererComponent(props) {
2607
+ import { Fragment as Fragment6, jsx as jsx48, jsxs as jsxs17 } from "react/jsx-runtime";
2608
+ function TabInputRendererComponent(props) {
2592
2609
  const {
2593
2610
  id,
2594
2611
  children,
2595
2612
  description,
2613
+ disabled,
2596
2614
  help,
2597
2615
  title,
2598
2616
  options,
@@ -2606,7 +2624,7 @@ function SegmentedInputRendererComponent(props) {
2606
2624
  }
2607
2625
  }, [selectedIndex, onSelect, options.length]);
2608
2626
  return /* @__PURE__ */ jsxs17(Fragment6, { children: [
2609
- /* @__PURE__ */ jsx49(
2627
+ /* @__PURE__ */ jsx48(
2610
2628
  FieldInput_default,
2611
2629
  {
2612
2630
  id,
@@ -2614,31 +2632,31 @@ function SegmentedInputRendererComponent(props) {
2614
2632
  help,
2615
2633
  description,
2616
2634
  validation: validationState,
2617
- children: /* @__PURE__ */ jsx49(
2618
- SegmentedControl,
2635
+ children: /* @__PURE__ */ jsx48(
2636
+ Tabs,
2619
2637
  {
2620
- name: `${id}-segmented-control`,
2621
- value: String(selectedIndex),
2622
- mode: "view",
2623
- segments: options.map((option, index) => ({
2624
- id: String(index),
2625
- value: String(index),
2626
- label: option.title,
2627
- controls: `${id}-children`
2638
+ name: id,
2639
+ selected: selectedIndex != null ? selectedIndex : 0,
2640
+ tabs: options.map((option) => ({
2641
+ title: option.title,
2642
+ // if we pass null, we get some props-types console errors
2643
+ // eslint-disable-next-line react/jsx-no-useless-fragment
2644
+ content: /* @__PURE__ */ jsx48(Fragment6, {}),
2645
+ disabled: option.disabled || disabled
2628
2646
  })),
2629
- onChange: (value) => onSelect(Number(value))
2647
+ onTabSelect: onSelect
2630
2648
  }
2631
2649
  )
2632
2650
  }
2633
2651
  ),
2634
- /* @__PURE__ */ jsx49("div", { id: `${id}-children`, children })
2652
+ children
2635
2653
  ] });
2636
2654
  }
2637
2655
  var isValidIndex = (index, options) => index !== null && index >= 0 && index < options;
2638
2656
 
2639
2657
  // ../renderers/src/SelectInputRenderer/SelectInputRendererComponent.tsx
2640
2658
  import { SelectInput as SelectInput2, SelectInputOptionContent as SelectInputOptionContent2 } from "@transferwise/components";
2641
- import { Fragment as Fragment7, jsx as jsx50, jsxs as jsxs18 } from "react/jsx-runtime";
2659
+ import { Fragment as Fragment7, jsx as jsx49, jsxs as jsxs18 } from "react/jsx-runtime";
2642
2660
  function SelectInputRendererComponent(props) {
2643
2661
  const {
2644
2662
  id,
@@ -2678,13 +2696,13 @@ function SelectInputRendererComponent(props) {
2678
2696
  } : {
2679
2697
  title: option.title,
2680
2698
  description: option.description,
2681
- icon: /* @__PURE__ */ jsx50(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
2699
+ icon: /* @__PURE__ */ jsx49(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
2682
2700
  };
2683
- return /* @__PURE__ */ jsx50(SelectInputOptionContent2, __spreadValues({}, contentProps));
2701
+ return /* @__PURE__ */ jsx49(SelectInputOptionContent2, __spreadValues({}, contentProps));
2684
2702
  };
2685
2703
  const extraProps = { autoComplete };
2686
2704
  return /* @__PURE__ */ jsxs18(Fragment7, { children: [
2687
- /* @__PURE__ */ jsx50(
2705
+ /* @__PURE__ */ jsx49(
2688
2706
  FieldInput_default,
2689
2707
  {
2690
2708
  id,
@@ -2692,7 +2710,7 @@ function SelectInputRendererComponent(props) {
2692
2710
  help,
2693
2711
  description,
2694
2712
  validation: validationState,
2695
- children: /* @__PURE__ */ jsx50(
2713
+ children: /* @__PURE__ */ jsx49(
2696
2714
  SelectInput2,
2697
2715
  __spreadValues({
2698
2716
  name: id,
@@ -2712,16 +2730,15 @@ function SelectInputRendererComponent(props) {
2712
2730
  ] });
2713
2731
  }
2714
2732
 
2715
- // ../renderers/src/SelectInputRenderer/TabInputRendererComponent.tsx
2716
- import { Tabs } from "@transferwise/components";
2733
+ // ../renderers/src/SelectInputRenderer/SegmentedInputRendererComponent.tsx
2717
2734
  import { useEffect as useEffect4 } from "react";
2718
- import { Fragment as Fragment8, jsx as jsx51, jsxs as jsxs19 } from "react/jsx-runtime";
2719
- function TabInputRendererComponent(props) {
2735
+ import { SegmentedControl } from "@transferwise/components";
2736
+ import { Fragment as Fragment8, jsx as jsx50, jsxs as jsxs19 } from "react/jsx-runtime";
2737
+ function SegmentedInputRendererComponent(props) {
2720
2738
  const {
2721
2739
  id,
2722
2740
  children,
2723
2741
  description,
2724
- disabled,
2725
2742
  help,
2726
2743
  title,
2727
2744
  options,
@@ -2735,7 +2752,7 @@ function TabInputRendererComponent(props) {
2735
2752
  }
2736
2753
  }, [selectedIndex, onSelect, options.length]);
2737
2754
  return /* @__PURE__ */ jsxs19(Fragment8, { children: [
2738
- /* @__PURE__ */ jsx51(
2755
+ /* @__PURE__ */ jsx50(
2739
2756
  FieldInput_default,
2740
2757
  {
2741
2758
  id,
@@ -2743,60 +2760,61 @@ function TabInputRendererComponent(props) {
2743
2760
  help,
2744
2761
  description,
2745
2762
  validation: validationState,
2746
- children: /* @__PURE__ */ jsx51(
2747
- Tabs,
2763
+ children: /* @__PURE__ */ jsx50(
2764
+ SegmentedControl,
2748
2765
  {
2749
- name: id,
2750
- selected: selectedIndex != null ? selectedIndex : 0,
2751
- tabs: options.map((option) => ({
2752
- title: option.title,
2753
- // if we pass null, we get some props-types console errors
2754
- // eslint-disable-next-line react/jsx-no-useless-fragment
2755
- content: /* @__PURE__ */ jsx51(Fragment8, {}),
2756
- disabled: option.disabled || disabled
2766
+ name: `${id}-segmented-control`,
2767
+ value: String(selectedIndex),
2768
+ mode: "view",
2769
+ segments: options.map((option, index) => ({
2770
+ id: String(index),
2771
+ value: String(index),
2772
+ label: option.title,
2773
+ controls: `${id}-children`
2757
2774
  })),
2758
- onTabSelect: onSelect
2775
+ onChange: (value) => onSelect(Number(value))
2759
2776
  }
2760
2777
  )
2761
2778
  }
2762
2779
  ),
2763
- children
2780
+ /* @__PURE__ */ jsx50("div", { id: `${id}-children`, children })
2764
2781
  ] });
2765
2782
  }
2766
2783
  var isValidIndex2 = (index, options) => index !== null && index >= 0 && index < options;
2767
2784
 
2768
2785
  // ../renderers/src/SelectInputRenderer/SelectInputRenderer.tsx
2769
- import { jsx as jsx52 } from "react/jsx-runtime";
2786
+ import { jsx as jsx51 } from "react/jsx-runtime";
2770
2787
  var SelectInputRenderer = {
2771
2788
  canRenderType: "input-select",
2772
2789
  render: (props) => {
2773
2790
  switch (props.control) {
2774
2791
  case "radio":
2775
- return /* @__PURE__ */ jsx52(RadioInputRendererComponent, __spreadValues({}, props));
2792
+ return /* @__PURE__ */ jsx51(RadioInputRendererComponent, __spreadValues({}, props));
2776
2793
  case "tab":
2777
- return props.options.length > 3 ? /* @__PURE__ */ jsx52(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx52(TabInputRendererComponent, __spreadValues({}, props));
2794
+ return props.options.length > 3 ? /* @__PURE__ */ jsx51(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx51(TabInputRendererComponent, __spreadValues({}, props));
2778
2795
  case "segmented":
2779
- return props.options.length > 3 ? /* @__PURE__ */ jsx52(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx52(SegmentedInputRendererComponent, __spreadValues({}, props));
2796
+ return props.options.length > 3 ? /* @__PURE__ */ jsx51(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx51(SegmentedInputRendererComponent, __spreadValues({}, props));
2780
2797
  case "select":
2781
2798
  default:
2782
- return /* @__PURE__ */ jsx52(SelectInputRendererComponent, __spreadValues({}, props));
2799
+ return /* @__PURE__ */ jsx51(SelectInputRendererComponent, __spreadValues({}, props));
2783
2800
  }
2784
2801
  }
2785
2802
  };
2803
+ var SelectInputRenderer_default = SelectInputRenderer;
2786
2804
 
2787
2805
  // ../renderers/src/StatusListRenderer.tsx
2788
2806
  import { Header as Header8, Summary } from "@transferwise/components";
2789
- import { jsx as jsx53, jsxs as jsxs20 } from "react/jsx-runtime";
2807
+ import { jsx as jsx52, jsxs as jsxs20 } from "react/jsx-runtime";
2790
2808
  var StatusListRenderer = {
2791
2809
  canRenderType: "status-list",
2792
2810
  render: ({ margin, items, title }) => /* @__PURE__ */ jsxs20("div", { className: getMargin(margin), children: [
2793
- title ? /* @__PURE__ */ jsx53(Header8, { title, className: "m-b-2" }) : null,
2794
- items.map(({ callToAction, description, icon, status, title: itemTitle }) => /* @__PURE__ */ jsx53(
2811
+ title ? /* @__PURE__ */ jsx52(Header8, { title, className: "m-b-2" }) : null,
2812
+ items.map(({ callToAction, description, icon, status, title: itemTitle }) => /* @__PURE__ */ jsx52(
2795
2813
  Summary,
2796
2814
  {
2797
2815
  title: itemTitle,
2798
2816
  description,
2799
- icon: icon && "name" in icon ? /* @__PURE__ */ jsx53(DynamicIcon_default, { name: icon.name }) : null,
2817
+ icon: icon && "name" in icon ? /* @__PURE__ */ jsx52(DynamicIcon_default, { name: icon.name }) : null,
2800
2818
  status: mapStatus(status),
2801
2819
  action: getSummaryAction(callToAction)
2802
2820
  },
@@ -2804,6 +2822,7 @@ var StatusListRenderer = {
2804
2822
  ))
2805
2823
  ] })
2806
2824
  };
2825
+ var StatusListRenderer_default = StatusListRenderer;
2807
2826
  var getSummaryAction = (callToAction) => {
2808
2827
  if (!callToAction) {
2809
2828
  return void 0;
@@ -2849,9 +2868,9 @@ var useCustomTheme = (theme, trackEvent) => {
2849
2868
  // ../renderers/src/step/BackButton.tsx
2850
2869
  import { AvatarView as AvatarView4 } from "@transferwise/components";
2851
2870
  import { ArrowLeft } from "@transferwise/icons";
2852
- import { jsx as jsx54, jsxs as jsxs21 } from "react/jsx-runtime";
2871
+ import { jsx as jsx53, jsxs as jsxs21 } from "react/jsx-runtime";
2853
2872
  function BackButton({ title, onClick }) {
2854
- return /* @__PURE__ */ jsx54("div", { className: "m-b-2", children: /* @__PURE__ */ jsxs21(
2873
+ return /* @__PURE__ */ jsx53("div", { className: "m-b-2", children: /* @__PURE__ */ jsxs21(
2855
2874
  "button",
2856
2875
  {
2857
2876
  type: "button",
@@ -2860,8 +2879,8 @@ function BackButton({ title, onClick }) {
2860
2879
  "aria-label": title,
2861
2880
  onClick,
2862
2881
  children: [
2863
- /* @__PURE__ */ jsx54("span", { className: "sr-only", children: title }),
2864
- /* @__PURE__ */ jsx54(AvatarView4, { interactive: true, children: /* @__PURE__ */ jsx54(ArrowLeft, { size: "24" }) })
2882
+ /* @__PURE__ */ jsx53("span", { className: "sr-only", children: title }),
2883
+ /* @__PURE__ */ jsx53(AvatarView4, { interactive: true, children: /* @__PURE__ */ jsx53(ArrowLeft, { size: "24" }) })
2865
2884
  ]
2866
2885
  }
2867
2886
  ) });
@@ -2869,7 +2888,7 @@ function BackButton({ title, onClick }) {
2869
2888
  var BackButton_default = BackButton;
2870
2889
 
2871
2890
  // ../renderers/src/step/SplashCelebrationStepRenderer.tsx
2872
- import { jsx as jsx55, jsxs as jsxs22 } from "react/jsx-runtime";
2891
+ import { jsx as jsx54, jsxs as jsxs22 } from "react/jsx-runtime";
2873
2892
  var SplashCelebrationStepRenderer = {
2874
2893
  canRenderType: "step",
2875
2894
  canRender: ({ control }) => control === "splash-celebration",
@@ -2879,13 +2898,13 @@ function SplashCelebrationStepRendererComponent(props) {
2879
2898
  const { back, children, trackEvent } = props;
2880
2899
  useCustomTheme("forest-green", trackEvent);
2881
2900
  return /* @__PURE__ */ jsxs22("div", { className: "splash-screen m-t-5", children: [
2882
- back ? /* @__PURE__ */ jsx55(BackButton_default, __spreadValues({}, back)) : null,
2901
+ back ? /* @__PURE__ */ jsx54(BackButton_default, __spreadValues({}, back)) : null,
2883
2902
  children
2884
2903
  ] });
2885
2904
  }
2886
2905
 
2887
2906
  // ../renderers/src/step/SplashStepRenderer.tsx
2888
- import { jsx as jsx56, jsxs as jsxs23 } from "react/jsx-runtime";
2907
+ import { jsx as jsx55, jsxs as jsxs23 } from "react/jsx-runtime";
2889
2908
  var SplashStepRenderer = {
2890
2909
  canRenderType: "step",
2891
2910
  canRender: ({ control }) => control === "splash",
@@ -2894,14 +2913,14 @@ var SplashStepRenderer = {
2894
2913
  function SplashStepRendererComponent(props) {
2895
2914
  const { back, children } = props;
2896
2915
  return /* @__PURE__ */ jsxs23("div", { className: "splash-screen m-t-5", children: [
2897
- back ? /* @__PURE__ */ jsx56(BackButton_default, __spreadValues({}, back)) : null,
2916
+ back ? /* @__PURE__ */ jsx55(BackButton_default, __spreadValues({}, back)) : null,
2898
2917
  children
2899
2918
  ] });
2900
2919
  }
2901
2920
 
2902
2921
  // ../renderers/src/step/StepRenderer.tsx
2903
2922
  import { Alert as Alert2, Title as Title2 } from "@transferwise/components";
2904
- import { Fragment as Fragment9, jsx as jsx57, jsxs as jsxs24 } from "react/jsx-runtime";
2923
+ import { Fragment as Fragment9, jsx as jsx56, jsxs as jsxs24 } from "react/jsx-runtime";
2905
2924
  var StepRenderer = {
2906
2925
  canRenderType: "step",
2907
2926
  render: StepRendererComponent
@@ -2909,12 +2928,12 @@ var StepRenderer = {
2909
2928
  function StepRendererComponent(props) {
2910
2929
  const { back, description, error, title, children } = props;
2911
2930
  return /* @__PURE__ */ jsxs24(Fragment9, { children: [
2912
- back ? /* @__PURE__ */ jsx57(BackButton_default, __spreadValues({}, back)) : null,
2931
+ back ? /* @__PURE__ */ jsx56(BackButton_default, __spreadValues({}, back)) : null,
2913
2932
  title || description ? /* @__PURE__ */ jsxs24("div", { className: "m-b-4", children: [
2914
- title ? /* @__PURE__ */ jsx57(Title2, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
2915
- description ? /* @__PURE__ */ jsx57("p", { className: "text-xs-center np-text-body-large", children: description }) : void 0
2933
+ title ? /* @__PURE__ */ jsx56(Title2, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
2934
+ description ? /* @__PURE__ */ jsx56("p", { className: "text-xs-center np-text-body-large", children: description }) : void 0
2916
2935
  ] }) : void 0,
2917
- error ? /* @__PURE__ */ jsx57(Alert2, { type: "negative", className: "m-b-2", message: error }) : void 0,
2936
+ error ? /* @__PURE__ */ jsx56(Alert2, { type: "negative", className: "m-b-2", message: error }) : void 0,
2918
2937
  children
2919
2938
  ] });
2920
2939
  }
@@ -2922,26 +2941,26 @@ function StepRendererComponent(props) {
2922
2941
  // ../renderers/src/TabsRenderer.tsx
2923
2942
  import { Chips, SegmentedControl as SegmentedControl2, Tabs as Tabs2 } from "@transferwise/components";
2924
2943
  import { useState as useState8 } from "react";
2925
- import { jsx as jsx58, jsxs as jsxs25 } from "react/jsx-runtime";
2944
+ import { jsx as jsx57, jsxs as jsxs25 } from "react/jsx-runtime";
2926
2945
  var TabsRenderer = {
2927
2946
  canRenderType: "tabs",
2928
2947
  render: (props) => {
2929
2948
  switch (props.control) {
2930
2949
  case "segmented":
2931
2950
  if (props.tabs.length > 3) {
2932
- return /* @__PURE__ */ jsx58(TabsRendererComponent, __spreadValues({}, props));
2951
+ return /* @__PURE__ */ jsx57(TabsRendererComponent, __spreadValues({}, props));
2933
2952
  }
2934
- return /* @__PURE__ */ jsx58(SegmentedTabsRendererComponent, __spreadValues({}, props));
2953
+ return /* @__PURE__ */ jsx57(SegmentedTabsRendererComponent, __spreadValues({}, props));
2935
2954
  case "chips":
2936
- return /* @__PURE__ */ jsx58(ChipsTabsRendererComponent, __spreadValues({}, props));
2955
+ return /* @__PURE__ */ jsx57(ChipsTabsRendererComponent, __spreadValues({}, props));
2937
2956
  default:
2938
- return /* @__PURE__ */ jsx58(TabsRendererComponent, __spreadValues({}, props));
2957
+ return /* @__PURE__ */ jsx57(TabsRendererComponent, __spreadValues({}, props));
2939
2958
  }
2940
2959
  }
2941
2960
  };
2942
2961
  function TabsRendererComponent({ uid, margin, tabs }) {
2943
2962
  const [selectedIndex, setSelectedIndex] = useState8(0);
2944
- return /* @__PURE__ */ jsx58("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx58(
2963
+ return /* @__PURE__ */ jsx57("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx57(
2945
2964
  Tabs2,
2946
2965
  {
2947
2966
  name: uid,
@@ -2963,7 +2982,7 @@ function SegmentedTabsRendererComponent({ uid, margin, tabs }) {
2963
2982
  var _a;
2964
2983
  const [selectedIndex, setSelectedIndex] = useState8(0);
2965
2984
  return /* @__PURE__ */ jsxs25("div", { className: getMargin(margin), children: [
2966
- /* @__PURE__ */ jsx58(
2985
+ /* @__PURE__ */ jsx57(
2967
2986
  SegmentedControl2,
2968
2987
  {
2969
2988
  name: uid,
@@ -2978,14 +2997,14 @@ function SegmentedTabsRendererComponent({ uid, margin, tabs }) {
2978
2997
  onChange: (value) => setSelectedIndex(Number(value))
2979
2998
  }
2980
2999
  ),
2981
- /* @__PURE__ */ jsx58("div", { id: `${uid}-children`, className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
3000
+ /* @__PURE__ */ jsx57("div", { id: `${uid}-children`, className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
2982
3001
  ] });
2983
3002
  }
2984
3003
  function ChipsTabsRendererComponent({ margin, tabs }) {
2985
3004
  var _a;
2986
3005
  const [selectedIndex, setSelectedIndex] = useState8(0);
2987
3006
  return /* @__PURE__ */ jsxs25("div", { className: getMargin(margin), children: [
2988
- /* @__PURE__ */ jsx58("div", { className: "chips-container", children: /* @__PURE__ */ jsx58(
3007
+ /* @__PURE__ */ jsx57("div", { className: "chips-container", children: /* @__PURE__ */ jsx57(
2989
3008
  Chips,
2990
3009
  {
2991
3010
  chips: tabs.map((tab, index) => ({ label: tab.title, value: index })),
@@ -2993,7 +3012,7 @@ function ChipsTabsRendererComponent({ margin, tabs }) {
2993
3012
  onChange: ({ selectedValue }) => setSelectedIndex(Number(selectedValue))
2994
3013
  }
2995
3014
  ) }),
2996
- /* @__PURE__ */ jsx58("div", { className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
3015
+ /* @__PURE__ */ jsx57("div", { className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
2997
3016
  ] });
2998
3017
  }
2999
3018
 
@@ -3008,7 +3027,7 @@ import {
3008
3027
  TextArea,
3009
3028
  TextareaWithDisplayFormat
3010
3029
  } from "@transferwise/components";
3011
- import { jsx as jsx59 } from "react/jsx-runtime";
3030
+ import { jsx as jsx58 } from "react/jsx-runtime";
3012
3031
  var commonKeys = [
3013
3032
  "autoComplete",
3014
3033
  "autoCapitalize",
@@ -3027,12 +3046,12 @@ function VariableTextInput(inputProps) {
3027
3046
  const commonProps = __spreadProps(__spreadValues({}, pick(inputProps, ...commonKeys)), { name: id });
3028
3047
  switch (control) {
3029
3048
  case "email":
3030
- return /* @__PURE__ */ jsx59(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "email", onChange }));
3049
+ return /* @__PURE__ */ jsx58(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "email", onChange }));
3031
3050
  case "password":
3032
- return /* @__PURE__ */ jsx59(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "password", onChange }));
3051
+ return /* @__PURE__ */ jsx58(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "password", onChange }));
3033
3052
  case "numeric": {
3034
3053
  const numericProps = __spreadProps(__spreadValues({}, commonProps), { type: "number", onWheel });
3035
- return /* @__PURE__ */ jsx59(
3054
+ return /* @__PURE__ */ jsx58(
3036
3055
  TextInput,
3037
3056
  __spreadProps(__spreadValues({}, numericProps), {
3038
3057
  onChange: (newValue) => {
@@ -3043,9 +3062,9 @@ function VariableTextInput(inputProps) {
3043
3062
  );
3044
3063
  }
3045
3064
  case "phone-number":
3046
- return /* @__PURE__ */ jsx59(PhoneNumberInput, __spreadProps(__spreadValues({ initialValue: value }, commonProps), { onChange }));
3065
+ return /* @__PURE__ */ jsx58(PhoneNumberInput, __spreadProps(__spreadValues({ initialValue: value }, commonProps), { onChange }));
3047
3066
  default: {
3048
- return /* @__PURE__ */ jsx59(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "text", onChange }));
3067
+ return /* @__PURE__ */ jsx58(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "text", onChange }));
3049
3068
  }
3050
3069
  }
3051
3070
  }
@@ -3053,11 +3072,11 @@ function TextInput(props) {
3053
3072
  const _a = props, { control, displayFormat, onChange } = _a, commonProps = __objRest(_a, ["control", "displayFormat", "onChange"]);
3054
3073
  const InputWithPattern = control === "textarea" ? TextareaWithDisplayFormat : InputWithDisplayFormat;
3055
3074
  const InputWithoutPattern = control === "textarea" ? TextArea : Input5;
3056
- return displayFormat ? /* @__PURE__ */ jsx59(InputWithPattern, __spreadProps(__spreadValues({ displayPattern: displayFormat }, commonProps), { onChange })) : /* @__PURE__ */ jsx59(InputWithoutPattern, __spreadProps(__spreadValues({}, commonProps), { onChange: (e) => onChange(e.target.value) }));
3075
+ return displayFormat ? /* @__PURE__ */ jsx58(InputWithPattern, __spreadProps(__spreadValues({ displayPattern: displayFormat }, commonProps), { onChange })) : /* @__PURE__ */ jsx58(InputWithoutPattern, __spreadProps(__spreadValues({}, commonProps), { onChange: (e) => onChange(e.target.value) }));
3057
3076
  }
3058
3077
 
3059
3078
  // ../renderers/src/TextInputRenderer.tsx
3060
- import { jsx as jsx60 } from "react/jsx-runtime";
3079
+ import { jsx as jsx59 } from "react/jsx-runtime";
3061
3080
  var TextInputRenderer = {
3062
3081
  canRenderType: "input-text",
3063
3082
  render: (props) => {
@@ -3092,7 +3111,7 @@ var TextInputRenderer = {
3092
3111
  }
3093
3112
  }
3094
3113
  });
3095
- return /* @__PURE__ */ jsx60(
3114
+ return /* @__PURE__ */ jsx59(
3096
3115
  FieldInput_default,
3097
3116
  {
3098
3117
  id,
@@ -3100,11 +3119,12 @@ var TextInputRenderer = {
3100
3119
  description,
3101
3120
  validation: validationState,
3102
3121
  help,
3103
- children: /* @__PURE__ */ jsx60(InputGroup3, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx60(VariableTextInput, __spreadValues({}, inputProps)) })
3122
+ children: /* @__PURE__ */ jsx59(InputGroup3, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx59(VariableTextInput, __spreadValues({}, inputProps)) })
3104
3123
  }
3105
3124
  );
3106
3125
  }
3107
3126
  };
3127
+ var TextInputRenderer_default = TextInputRenderer;
3108
3128
 
3109
3129
  // ../renderers/src/UploadInputRenderer.tsx
3110
3130
  import { Upload, UploadInput as UploadInput2 } from "@transferwise/components";
@@ -3113,7 +3133,7 @@ import { Upload, UploadInput as UploadInput2 } from "@transferwise/components";
3113
3133
  var getRandomId = () => Math.random().toString(36).substring(2);
3114
3134
 
3115
3135
  // ../renderers/src/UploadInputRenderer.tsx
3116
- import { jsx as jsx61 } from "react/jsx-runtime";
3136
+ import { jsx as jsx60 } from "react/jsx-runtime";
3117
3137
  var UploadInputRenderer = {
3118
3138
  canRenderType: "input-upload",
3119
3139
  render: (props) => {
@@ -3129,14 +3149,14 @@ var UploadInputRenderer = {
3129
3149
  };
3130
3150
  return (
3131
3151
  // We don't pass help here as there is no sensible place to display it
3132
- /* @__PURE__ */ jsx61(
3152
+ /* @__PURE__ */ jsx60(
3133
3153
  UploadFieldInput_default,
3134
3154
  {
3135
3155
  id,
3136
3156
  label: void 0,
3137
3157
  description: void 0,
3138
3158
  validation: validationState,
3139
- children: /* @__PURE__ */ jsx61(
3159
+ children: /* @__PURE__ */ jsx60(
3140
3160
  UploadInput2,
3141
3161
  {
3142
3162
  id,
@@ -3191,7 +3211,7 @@ var LargeUploadRenderer = {
3191
3211
  throw e;
3192
3212
  }
3193
3213
  };
3194
- return /* @__PURE__ */ jsx61(
3214
+ return /* @__PURE__ */ jsx60(
3195
3215
  FieldInput_default,
3196
3216
  {
3197
3217
  id,
@@ -3199,7 +3219,7 @@ var LargeUploadRenderer = {
3199
3219
  description,
3200
3220
  validation: validationState,
3201
3221
  help,
3202
- children: /* @__PURE__ */ jsx61(
3222
+ children: /* @__PURE__ */ jsx60(
3203
3223
  Upload,
3204
3224
  __spreadProps(__spreadValues({}, uploadProps), {
3205
3225
  usAccept: getAcceptsString(accepts),
@@ -3216,49 +3236,58 @@ var LargeUploadRenderer = {
3216
3236
 
3217
3237
  // ../renderers/src/getWiseRenderers.ts
3218
3238
  var getWiseRenderers = () => [
3219
- AlertRenderer,
3220
- CheckboxInputRenderer,
3221
- BoxRenderer,
3222
- ButtonRenderer,
3223
- ColumnsRenderer,
3224
- DateInputRenderer,
3225
- DecisionRenderer,
3226
- DividerRenderer,
3227
- ExternalConfirmationRenderer,
3228
- FormRenderer,
3229
- FormSectionRenderer,
3230
- HeadingRenderer,
3231
- ImageRenderer,
3232
- InstructionsRenderer,
3233
- IntegerInputRenderer,
3239
+ AlertRenderer_default,
3240
+ CheckboxInputRenderer_default,
3241
+ BoxRenderer_default,
3242
+ ButtonRenderer_default,
3243
+ ColumnsRenderer_default,
3244
+ DateInputRenderer_default,
3245
+ DecisionRenderer_default,
3246
+ DividerRenderer_default,
3247
+ ExternalConfirmationRenderer_default,
3248
+ FormRenderer_default,
3249
+ FormSectionRenderer_default,
3250
+ HeadingRenderer_default,
3251
+ ImageRenderer_default,
3252
+ InstructionsRenderer_default,
3253
+ IntegerInputRenderer_default,
3234
3254
  LargeUploadRenderer,
3235
- ListRenderer,
3236
- LoadingIndicatorRenderer,
3237
- MarkdownRenderer,
3238
- ModalContentRenderer,
3239
- ModalLayoutRenderer,
3240
- MultiSelectInputRenderer,
3241
- MultiUploadInputRenderer,
3242
- NumberInputRenderer,
3243
- ParagraphRenderer,
3244
- RepeatableRenderer,
3245
- ReviewRenderer,
3246
- SearchRenderer,
3247
- SelectInputRenderer,
3248
- SectionRenderer,
3249
- StatusListRenderer,
3255
+ ListRenderer_default,
3256
+ LoadingIndicatorRenderer_default,
3257
+ MarkdownRenderer_default,
3258
+ ModalLayoutRenderer_default,
3259
+ MultiSelectInputRenderer_default,
3260
+ MultiUploadInputRenderer_default,
3261
+ NumberInputRenderer_default,
3262
+ ParagraphRenderer_default,
3263
+ RepeatableRenderer_default,
3264
+ ReviewRenderer_default,
3265
+ SearchRenderer_default,
3266
+ SelectInputRenderer_default,
3267
+ SectionRenderer_default,
3268
+ StatusListRenderer_default,
3250
3269
  TabsRenderer,
3251
- TextInputRenderer,
3270
+ TextInputRenderer_default,
3252
3271
  UploadInputRenderer,
3253
3272
  SplashStepRenderer,
3254
3273
  SplashCelebrationStepRenderer,
3255
3274
  StepRenderer
3256
3275
  ];
3257
3276
 
3277
+ // ../renderers/src/ModalContentRenderer.tsx
3278
+ import { Modal as Modal4 } from "@transferwise/components";
3279
+ import { jsx as jsx61 } from "react/jsx-runtime";
3280
+ var ModalContentRenderer = {
3281
+ canRenderType: "modal",
3282
+ render: ({ title, children, open, onClose }) => {
3283
+ return /* @__PURE__ */ jsx61(Modal4, { open, title, body: children, onClose });
3284
+ }
3285
+ };
3286
+
3258
3287
  // src/dynamicFlow/telemetry/app-version.ts
3259
3288
  var appVersion = (
3260
3289
  // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
3261
- typeof process !== "undefined" ? "4.15.7" : "0.0.0"
3290
+ typeof process !== "undefined" ? "4.16.0" : "0.0.0"
3262
3291
  );
3263
3292
 
3264
3293
  // src/dynamicFlow/telemetry/getLogEvent.ts
@@ -3317,7 +3346,10 @@ function DynamicFlowRevamp(props) {
3317
3346
  onThemeChange
3318
3347
  } = props;
3319
3348
  const httpClient = useWiseHttpClient(customFetch);
3320
- const mergedRenderers = useMemo2(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
3349
+ const mergedRenderers = useMemo2(
3350
+ () => [ModalContentRenderer, ...renderers != null ? renderers : [], ...wiseRenderers],
3351
+ [renderers]
3352
+ );
3321
3353
  const logEvent = useMemo2(() => getLogEvent(onLog), [onLog]);
3322
3354
  const trackEvent = useMemo2(
3323
3355
  () => getTrackEvent(onEvent, onAnalytics, onThemeChange),
@@ -3344,7 +3376,10 @@ var DynamicForm = forwardRef(function DynamicForm2(props, ref) {
3344
3376
  onThemeChange
3345
3377
  } = props;
3346
3378
  const httpClient = useWiseHttpClient(customFetch);
3347
- const mergedRenderers = useMemo2(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
3379
+ const mergedRenderers = useMemo2(
3380
+ () => [ModalContentRenderer, ...renderers != null ? renderers : [], ...wiseRenderers],
3381
+ [renderers]
3382
+ );
3348
3383
  const logEvent = useMemo2(() => getLogEvent(onLog), [onLog]);
3349
3384
  const trackEvent = useMemo2(
3350
3385
  () => getTrackEvent(onEvent, onAnalytics, onThemeChange),