@wise/dynamic-flow-client-internal 4.34.0 → 4.35.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/build/main.mjs CHANGED
@@ -795,97 +795,31 @@ var DateInputRenderer_default = DateInputRenderer;
795
795
  // ../renderers/src/DecisionRenderer/DecisionRenderer.tsx
796
796
  import { NavigationOption, NavigationOptionsList } from "@transferwise/components";
797
797
 
798
- // ../renderers/src/DecisionRenderer/DecisionList.tsx
798
+ // ../renderers/src/DecisionRenderer/DecisionWrapper.tsx
799
799
  import { Header as Header2, SearchInput } from "@transferwise/components";
800
+ import { useState as useState3 } from "react";
801
+ import { useIntl as useIntl4 } from "react-intl";
800
802
 
801
- // ../renderers/src/DecisionRenderer/GroupedList.tsx
802
- import { Header, Section } from "@transferwise/components";
803
- import { useIntl as useIntl3 } from "react-intl";
804
-
805
- // ../renderers/src/messages/decision.messages.ts
803
+ // ../renderers/src/messages/filter.messages.ts
806
804
  import { defineMessages as defineMessages3 } from "react-intl";
807
- var decision_messages_default = defineMessages3({
808
- all: {
809
- id: "df.wise.Decision.all",
810
- defaultMessage: "All",
811
- description: "Label for the group of options that encompasses all options"
812
- },
813
- popular: {
814
- id: "df.wise.Decision.popular",
815
- defaultMessage: "Popular",
816
- description: "Label for the group of options that are tagged as popular"
817
- },
818
- recent: {
819
- id: "df.wise.Decision.recent",
820
- defaultMessage: "Recent",
821
- description: "Label for the group of options that are tagged as recent"
822
- },
823
- currenciesWithAccountDetails: {
824
- id: "df.wise.Decision.currenciesWithAccountDetails",
825
- defaultMessage: "Currencies with account details",
826
- description: "Label for the group of options that are tagged as currencies with account details"
827
- },
828
- filterPlaceholder: {
829
- id: "df.wise.Decision.filterPlaceholder",
805
+ var filter_messages_default = defineMessages3({
806
+ placeholder: {
807
+ id: "df.wise.filter.placeholder",
830
808
  defaultMessage: "Start typing to search",
831
809
  description: "Placeholder for the filter input"
832
810
  },
833
811
  results: {
834
- id: "df.wise.Decision.results",
812
+ id: "df.wise.filter.results",
835
813
  defaultMessage: "Search results",
836
814
  description: "Label for the results section"
837
815
  },
838
816
  noResults: {
839
- id: "df.wise.Decision.noResults",
817
+ id: "df.wise.filter.noResults",
840
818
  defaultMessage: "No results",
841
819
  description: "Message for if there are no results"
842
820
  }
843
821
  });
844
822
 
845
- // ../renderers/src/DecisionRenderer/GroupedList.tsx
846
- import { Fragment, jsx as jsx24, jsxs as jsxs4 } from "react/jsx-runtime";
847
- var OPTION_GROUPS = {
848
- popular: "popular",
849
- recent: "recent",
850
- currencyWithAccountDetails: "currencies-with-account-details"
851
- };
852
- var GroupedList = (_a) => {
853
- var _b = _a, { renderDecisionList: renderDecisionList3 } = _b, rest = __objRest(_b, ["renderDecisionList"]);
854
- const { formatMessage } = useIntl3();
855
- const { options } = rest;
856
- const popularOptions = options.filter((option) => option.tag === OPTION_GROUPS.popular);
857
- const recentOptions = options.filter((option) => option.tag === OPTION_GROUPS.recent);
858
- const currencyWithAccountDetailsOptions = options.filter(
859
- (option) => option.tag === OPTION_GROUPS.currencyWithAccountDetails
860
- );
861
- return /* @__PURE__ */ jsxs4(Fragment, { children: [
862
- popularOptions.length > 0 ? /* @__PURE__ */ jsxs4(Section, { children: [
863
- /* @__PURE__ */ jsx24(Header, { as: "h2", title: formatMessage(decision_messages_default.popular) }),
864
- renderDecisionList3(__spreadProps(__spreadValues({}, rest), { options: popularOptions }))
865
- ] }) : null,
866
- recentOptions.length > 0 ? /* @__PURE__ */ jsxs4(Section, { children: [
867
- /* @__PURE__ */ jsx24(Header, { as: "h2", title: formatMessage(decision_messages_default.recent) }),
868
- renderDecisionList3(__spreadProps(__spreadValues({}, rest), { options: recentOptions }))
869
- ] }) : null,
870
- currencyWithAccountDetailsOptions.length > 0 ? /* @__PURE__ */ jsxs4(Section, { children: [
871
- /* @__PURE__ */ jsx24(Header, { as: "h2", title: formatMessage(decision_messages_default.currenciesWithAccountDetails) }),
872
- renderDecisionList3(__spreadProps(__spreadValues({}, rest), { options: currencyWithAccountDetailsOptions }))
873
- ] }) : null,
874
- /* @__PURE__ */ jsxs4(Section, { children: [
875
- /* @__PURE__ */ jsx24(Header, { as: "h2", title: formatMessage(decision_messages_default.all) }),
876
- renderDecisionList3(rest)
877
- ] })
878
- ] });
879
- };
880
- var isGroupedDecision = (options) => {
881
- const possibleGroups = Object.values(OPTION_GROUPS);
882
- return options.some(({ tag }) => tag && possibleGroups.includes(tag));
883
- };
884
-
885
- // ../renderers/src/DecisionRenderer/DecisionList.tsx
886
- import { useIntl as useIntl4 } from "react-intl";
887
- import { useState as useState3 } from "react";
888
-
889
823
  // ../renderers/src/DecisionRenderer/filter-and-sort-decision-options.ts
890
824
  function filterAndSortDecisionOptions(selectOptions, query) {
891
825
  const upperQuery = normalizeAndRemoveAccents(query);
@@ -927,7 +861,69 @@ function filterAndSortDecisionOptions(selectOptions, query) {
927
861
  }
928
862
  var normalizeAndRemoveAccents = (text) => text.trim().toLowerCase().normalize("NFKD").replace(new RegExp("\\p{Diacritic}", "gu"), "");
929
863
 
930
- // ../renderers/src/DecisionRenderer/DecisionList.tsx
864
+ // ../renderers/src/DecisionRenderer/GroupedDecisionList.tsx
865
+ import { Header, Section } from "@transferwise/components";
866
+ import { useIntl as useIntl3 } from "react-intl";
867
+
868
+ // ../renderers/src/messages/group.messages.ts
869
+ import { defineMessages as defineMessages4 } from "react-intl";
870
+ var group_messages_default = defineMessages4({
871
+ all: {
872
+ id: "df.wise.group.all",
873
+ defaultMessage: "All",
874
+ description: "Label for the group of options that encompasses all options"
875
+ },
876
+ popular: {
877
+ id: "df.wise.group.popular",
878
+ defaultMessage: "Popular",
879
+ description: "Label for the group of options that are tagged as popular"
880
+ },
881
+ recent: {
882
+ id: "df.wise.group.recent",
883
+ defaultMessage: "Recent",
884
+ description: "Label for the group of options that are tagged as recent"
885
+ },
886
+ "currencies-with-account-details": {
887
+ id: "df.wise.group.currencies-with-account-details",
888
+ defaultMessage: "Currencies with account details",
889
+ description: "Label for the group of options that are tagged as currencies with account details"
890
+ }
891
+ });
892
+
893
+ // ../renderers/src/utils/grouping-utils.ts
894
+ var getGroupsFromTags = (knownTags, items) => {
895
+ return knownTags.map((tag) => {
896
+ return { tag, items: items.filter((item) => {
897
+ var _a;
898
+ return (_a = item.tags) == null ? void 0 : _a.includes(tag);
899
+ }) };
900
+ }).filter((group) => group.items.length > 0);
901
+ };
902
+
903
+ // ../renderers/src/DecisionRenderer/GroupedDecisionList.tsx
904
+ import { Fragment, jsx as jsx24, jsxs as jsxs4 } from "react/jsx-runtime";
905
+ var groupingTags = Object.keys(group_messages_default).filter((key) => key !== "all");
906
+ var isGroupedDecision = (options) => {
907
+ return getGroupsFromTags(groupingTags, options).length > 0;
908
+ };
909
+ var GroupedDecisionList = (_a) => {
910
+ var _b = _a, { renderDecisionList: renderDecisionList3 } = _b, rest = __objRest(_b, ["renderDecisionList"]);
911
+ const { formatMessage } = useIntl3();
912
+ const { options } = rest;
913
+ const itemsByTag = [...getGroupsFromTags(groupingTags, options), { tag: "all", items: options }];
914
+ return /* @__PURE__ */ jsx24(Fragment, { children: itemsByTag.map(({ tag, items }) => /* @__PURE__ */ jsxs4(Section, { children: [
915
+ /* @__PURE__ */ jsx24(
916
+ Header,
917
+ {
918
+ as: "h2",
919
+ title: tag in group_messages_default ? formatMessage(group_messages_default[tag]) : tag
920
+ }
921
+ ),
922
+ renderDecisionList3(__spreadProps(__spreadValues({}, rest), { options: items }))
923
+ ] }, tag)) });
924
+ };
925
+
926
+ // ../renderers/src/DecisionRenderer/DecisionWrapper.tsx
931
927
  import { Fragment as Fragment2, jsx as jsx25, jsxs as jsxs5 } from "react/jsx-runtime";
932
928
  var DecisionWrapper = (props) => {
933
929
  return /* @__PURE__ */ jsxs5("div", { className: getMargin(props.margin), children: [
@@ -937,7 +933,7 @@ var DecisionWrapper = (props) => {
937
933
  };
938
934
  var UnfilteredDecisionList = (_a) => {
939
935
  var _b = _a, { renderDecisionList: renderDecisionList3 } = _b, rest = __objRest(_b, ["renderDecisionList"]);
940
- return isGroupedDecision(rest.options) ? /* @__PURE__ */ jsx25(GroupedList, __spreadProps(__spreadValues({}, rest), { renderDecisionList: renderDecisionList3 })) : renderDecisionList3(rest);
936
+ return isGroupedDecision(rest.options) ? /* @__PURE__ */ jsx25(GroupedDecisionList, __spreadProps(__spreadValues({}, rest), { renderDecisionList: renderDecisionList3 })) : renderDecisionList3(rest);
941
937
  };
942
938
  var FilteredDecisionList = (props) => {
943
939
  const { formatMessage } = useIntl4();
@@ -949,22 +945,22 @@ var FilteredDecisionList = (props) => {
949
945
  /* @__PURE__ */ jsx25(
950
946
  SearchInput,
951
947
  {
952
- placeholder: formatMessage(decision_messages_default.filterPlaceholder),
948
+ placeholder: formatMessage(filter_messages_default.placeholder),
953
949
  value: query,
950
+ className: "m-b-2",
954
951
  onChange: (e) => {
955
952
  var _a;
956
953
  return setQuery((_a = e.target.value) != null ? _a : "");
957
- },
958
- className: "m-b-2"
954
+ }
959
955
  }
960
956
  ),
961
- isGrouped && query.length === 0 ? /* @__PURE__ */ jsx25(GroupedList, __spreadValues({}, props)) : /* @__PURE__ */ jsxs5(Fragment2, { children: [
962
- query.length > 0 && /* @__PURE__ */ jsx25(Header2, { as: "h2", title: formatMessage(decision_messages_default.results), className: "m-t-4" }),
957
+ isGrouped && query.length === 0 ? /* @__PURE__ */ jsx25(GroupedDecisionList, __spreadValues({}, props)) : /* @__PURE__ */ jsxs5(Fragment2, { children: [
958
+ query.length > 0 && /* @__PURE__ */ jsx25(Header2, { as: "h2", title: formatMessage(filter_messages_default.results), className: "m-t-4" }),
963
959
  filteredOptions.length > 0 ? renderDecisionList3({
964
960
  control,
965
961
  className: query.length === 0 ? "m-t-3" : "",
966
962
  options: filteredOptions
967
- }) : /* @__PURE__ */ jsx25("p", { children: formatMessage(decision_messages_default.noResults) })
963
+ }) : /* @__PURE__ */ jsx25("p", { children: formatMessage(filter_messages_default.noResults) })
968
964
  ] })
969
965
  ] });
970
966
  };
@@ -1026,8 +1022,8 @@ var DividerRenderer_default = DividerRenderer;
1026
1022
  import { Button as Button3, Markdown as Markdown2, Modal } from "@transferwise/components";
1027
1023
 
1028
1024
  // ../renderers/src/messages/external-confirmation.messages.ts
1029
- import { defineMessages as defineMessages4 } from "react-intl";
1030
- var external_confirmation_messages_default = defineMessages4({
1025
+ import { defineMessages as defineMessages5 } from "react-intl";
1026
+ var external_confirmation_messages_default = defineMessages5({
1031
1027
  title: {
1032
1028
  id: "df.wise.ExternalConfirmation.title",
1033
1029
  defaultMessage: "Please confirm",
@@ -1563,7 +1559,14 @@ import { Markdown as Markdown3 } from "@transferwise/components";
1563
1559
  import { jsx as jsx42 } from "react/jsx-runtime";
1564
1560
  var MarkdownRenderer = {
1565
1561
  canRenderType: "markdown",
1566
- render: ({ content, align, margin }) => /* @__PURE__ */ jsx42("div", { className: getTextAlignmentAndMargin({ align, margin }), children: /* @__PURE__ */ jsx42(Markdown3, { className: "np-text-body-large", config: { link: { target: "_blank" } }, children: content }) })
1562
+ render: ({ content, align, margin, size }) => /* @__PURE__ */ jsx42("div", { className: getTextAlignmentAndMargin({ align, margin }), children: /* @__PURE__ */ jsx42(
1563
+ Markdown3,
1564
+ {
1565
+ className: size === "sm" ? "np-text-body-default" : "np-text-body-large",
1566
+ config: { link: { target: "_blank" } },
1567
+ children: content
1568
+ }
1569
+ ) })
1567
1570
  };
1568
1571
  var MarkdownRenderer_default = MarkdownRenderer;
1569
1572
 
@@ -1605,14 +1608,114 @@ var ModalRenderer = {
1605
1608
  }
1606
1609
  };
1607
1610
 
1611
+ // ../renderers/src/MoneyInputRenderer.tsx
1612
+ import { MoneyInput } from "@transferwise/components";
1613
+ import { useEffect as useEffect5 } from "react";
1614
+ import { useIntl as useIntl6 } from "react-intl";
1615
+ import { jsx as jsx45 } from "react/jsx-runtime";
1616
+ var groupingTags2 = Object.keys(group_messages_default).filter((key) => key !== "all");
1617
+ var MoneyInputRenderer = {
1618
+ canRenderType: "money-input",
1619
+ render: MoneyInputRendererComponent
1620
+ };
1621
+ function MoneyInputRendererComponent(props) {
1622
+ var _a;
1623
+ const {
1624
+ uid,
1625
+ title,
1626
+ description,
1627
+ validationState,
1628
+ help,
1629
+ amountValue,
1630
+ selectedCurrencyIndex,
1631
+ placeholder,
1632
+ currencies,
1633
+ onAmountChange,
1634
+ onCurrencyChange
1635
+ } = props;
1636
+ useEffect5(() => {
1637
+ if (!isValidIndex(selectedCurrencyIndex, currencies.length)) {
1638
+ onCurrencyChange(0);
1639
+ }
1640
+ }, [selectedCurrencyIndex, onCurrencyChange, currencies.length]);
1641
+ const { formatMessage } = useIntl6();
1642
+ return /* @__PURE__ */ jsx45(
1643
+ FieldInput_default,
1644
+ {
1645
+ id: uid,
1646
+ label: title,
1647
+ description,
1648
+ validation: validationState,
1649
+ help,
1650
+ children: /* @__PURE__ */ jsx45(
1651
+ MoneyInput,
1652
+ {
1653
+ amount: parseFloatOrNull(amountValue),
1654
+ searchPlaceholder: "",
1655
+ size: "md",
1656
+ currencies: mapCurrencies(currencies, formatMessage),
1657
+ selectedCurrency: getCurrencyOptionItem(
1658
+ currencies[selectedCurrencyIndex != null ? selectedCurrencyIndex : 0],
1659
+ String(selectedCurrencyIndex != null ? selectedCurrencyIndex : 0)
1660
+ ),
1661
+ placeholder: (_a = parseFloatOrNull(placeholder)) != null ? _a : void 0,
1662
+ onAmountChange: (newAmount) => {
1663
+ onAmountChange(String(newAmount));
1664
+ },
1665
+ onCurrencyChange: (item) => {
1666
+ const selectedIndex = Number.parseInt(item.value, 10);
1667
+ onCurrencyChange(selectedIndex);
1668
+ }
1669
+ }
1670
+ )
1671
+ }
1672
+ );
1673
+ }
1674
+ var parseFloatOrNull = (value) => {
1675
+ const parsed = Number.parseFloat(value != null ? value : "");
1676
+ return Number.isNaN(parsed) ? null : parsed;
1677
+ };
1678
+ var mapCurrencies = (options, formatMessage) => {
1679
+ const groupsFromTags = getGroupsFromTags(groupingTags2, options);
1680
+ if (groupsFromTags.length > 0) {
1681
+ return [...groupsFromTags, { tag: "all", items: options }].flatMap(({ tag, items }) => {
1682
+ return [
1683
+ {
1684
+ header: tag in group_messages_default ? formatMessage(group_messages_default[tag]) : tag
1685
+ },
1686
+ ...items.map((item) => getCurrencyOptionItem(item, String(options.indexOf(item))))
1687
+ ];
1688
+ });
1689
+ }
1690
+ return options.map((item, index) => getCurrencyOptionItem(item, String(index)));
1691
+ };
1692
+ var getCurrencyOptionItem = ({ currencyCode, title, description, keywords }, indexValue) => {
1693
+ assertCurrencyCodeIsString(currencyCode);
1694
+ return {
1695
+ currency: currencyCode,
1696
+ label: title != null ? title : "",
1697
+ value: indexValue,
1698
+ note: description,
1699
+ searchable: (keywords != null ? keywords : []).join(", ")
1700
+ };
1701
+ };
1702
+ var isValidIndex = (index, options) => index !== null && index >= 0 && index < options;
1703
+ function assertCurrencyCodeIsString(currencyCode) {
1704
+ if (typeof currencyCode !== "string") {
1705
+ throw new Error(
1706
+ "This MoneyInputRenderer only supports string currency codes. This means the const values in the schema representing currencies must be strings."
1707
+ );
1708
+ }
1709
+ }
1710
+
1608
1711
  // ../renderers/src/MultiSelectInputRenderer.tsx
1609
1712
  import { SelectInput, SelectInputOptionContent } from "@transferwise/components";
1610
1713
  import { useState as useState7 } from "react";
1611
- import { useIntl as useIntl6 } from "react-intl";
1714
+ import { useIntl as useIntl7 } from "react-intl";
1612
1715
 
1613
1716
  // ../renderers/src/messages/multi-select.messages.ts
1614
- import { defineMessages as defineMessages5 } from "react-intl";
1615
- var multi_select_messages_default = defineMessages5({
1717
+ import { defineMessages as defineMessages6 } from "react-intl";
1718
+ var multi_select_messages_default = defineMessages6({
1616
1719
  summary: {
1617
1720
  id: "df.wise.MultiSelect.summary",
1618
1721
  defaultMessage: "{first} and {count} more",
@@ -1621,13 +1724,13 @@ var multi_select_messages_default = defineMessages5({
1621
1724
  });
1622
1725
 
1623
1726
  // ../renderers/src/MultiSelectInputRenderer.tsx
1624
- import { jsx as jsx45 } from "react/jsx-runtime";
1727
+ import { jsx as jsx46 } from "react/jsx-runtime";
1625
1728
  var MultiSelectInputRenderer = {
1626
1729
  canRenderType: "input-multi-select",
1627
- render: (props) => /* @__PURE__ */ jsx45(MultiSelectInputRendererComponent, __spreadValues({}, props))
1730
+ render: (props) => /* @__PURE__ */ jsx46(MultiSelectInputRendererComponent, __spreadValues({}, props))
1628
1731
  };
1629
1732
  function MultiSelectInputRendererComponent(props) {
1630
- const { formatMessage } = useIntl6();
1733
+ const { formatMessage } = useIntl7();
1631
1734
  const [stagedIndices, setStagedIndices] = useState7();
1632
1735
  const {
1633
1736
  id,
@@ -1666,12 +1769,12 @@ function MultiSelectInputRendererComponent(props) {
1666
1769
  const contentProps = {
1667
1770
  title: option.title,
1668
1771
  description: option.description,
1669
- icon: /* @__PURE__ */ jsx45(OptionMedia, { media: option.media, preferAvatar: false })
1772
+ icon: /* @__PURE__ */ jsx46(OptionMedia, { media: option.media, preferAvatar: false })
1670
1773
  };
1671
- return /* @__PURE__ */ jsx45(SelectInputOptionContent, __spreadValues({}, contentProps));
1774
+ return /* @__PURE__ */ jsx46(SelectInputOptionContent, __spreadValues({}, contentProps));
1672
1775
  };
1673
1776
  const extraProps = { autoComplete };
1674
- return /* @__PURE__ */ jsx45(
1777
+ return /* @__PURE__ */ jsx46(
1675
1778
  FieldInput_default,
1676
1779
  {
1677
1780
  id,
@@ -1679,7 +1782,7 @@ function MultiSelectInputRendererComponent(props) {
1679
1782
  help,
1680
1783
  description,
1681
1784
  validation: validationState,
1682
- children: /* @__PURE__ */ jsx45(
1785
+ children: /* @__PURE__ */ jsx46(
1683
1786
  SelectInput,
1684
1787
  __spreadValues({
1685
1788
  id,
@@ -1724,7 +1827,7 @@ import { UploadInput } from "@transferwise/components";
1724
1827
  // ../renderers/src/components/UploadFieldInput.tsx
1725
1828
  import { InlineAlert as InlineAlert2 } from "@transferwise/components";
1726
1829
  import classNames4 from "classnames";
1727
- import { jsx as jsx46, jsxs as jsxs11 } from "react/jsx-runtime";
1830
+ import { jsx as jsx47, jsxs as jsxs11 } from "react/jsx-runtime";
1728
1831
  function UploadFieldInput({
1729
1832
  id,
1730
1833
  children,
@@ -1733,7 +1836,7 @@ function UploadFieldInput({
1733
1836
  help,
1734
1837
  validation
1735
1838
  }) {
1736
- const labelContent = label && help ? /* @__PURE__ */ jsx46(LabelContentWithHelp, { text: label, help }) : label;
1839
+ const labelContent = label && help ? /* @__PURE__ */ jsx47(LabelContentWithHelp, { text: label, help }) : label;
1737
1840
  const descriptionId = description ? `${id}-description` : void 0;
1738
1841
  return /* @__PURE__ */ jsxs11(
1739
1842
  "div",
@@ -1742,9 +1845,9 @@ function UploadFieldInput({
1742
1845
  "has-error": (validation == null ? void 0 : validation.status) === "invalid"
1743
1846
  }),
1744
1847
  children: [
1745
- /* @__PURE__ */ jsx46("label", { htmlFor: id, className: "control-label", children: labelContent }),
1848
+ /* @__PURE__ */ jsx47("label", { htmlFor: id, className: "control-label", children: labelContent }),
1746
1849
  children,
1747
- (validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx46(InlineAlert2, { type: "negative", id: descriptionId, children: validation.message })
1850
+ (validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx47(InlineAlert2, { type: "negative", id: descriptionId, children: validation.message })
1748
1851
  ]
1749
1852
  }
1750
1853
  );
@@ -1779,7 +1882,7 @@ var getSizeLimit = (maxSize) => {
1779
1882
  };
1780
1883
 
1781
1884
  // ../renderers/src/MultiUploadInputRenderer.tsx
1782
- import { jsx as jsx47 } from "react/jsx-runtime";
1885
+ import { jsx as jsx48 } from "react/jsx-runtime";
1783
1886
  var MultiUploadInputRenderer = {
1784
1887
  canRenderType: "input-upload-multi",
1785
1888
  render: (props) => {
@@ -1804,7 +1907,7 @@ var MultiUploadInputRenderer = {
1804
1907
  };
1805
1908
  const onDeleteFile = async (fileId) => onRemoveFile(value.findIndex((file) => file.id === fileId));
1806
1909
  const descriptionId = description ? `${id}-description` : void 0;
1807
- return /* @__PURE__ */ jsx47(
1910
+ return /* @__PURE__ */ jsx48(
1808
1911
  UploadFieldInput_default,
1809
1912
  {
1810
1913
  id,
@@ -1812,7 +1915,7 @@ var MultiUploadInputRenderer = {
1812
1915
  description,
1813
1916
  validation: validationState,
1814
1917
  help,
1815
- children: /* @__PURE__ */ jsx47(
1918
+ children: /* @__PURE__ */ jsx48(
1816
1919
  UploadInput,
1817
1920
  {
1818
1921
  id,
@@ -1836,7 +1939,7 @@ var MultiUploadInputRenderer_default = MultiUploadInputRenderer;
1836
1939
 
1837
1940
  // ../renderers/src/NumberInputRenderer.tsx
1838
1941
  import { Input as Input2, InputGroup as InputGroup2 } from "@transferwise/components";
1839
- import { jsx as jsx48 } from "react/jsx-runtime";
1942
+ import { jsx as jsx49 } from "react/jsx-runtime";
1840
1943
  var NumberInputRenderer = {
1841
1944
  canRenderType: "input-number",
1842
1945
  render: (props) => {
@@ -1850,7 +1953,7 @@ var NumberInputRenderer = {
1850
1953
  "maximum",
1851
1954
  "minimum"
1852
1955
  );
1853
- return /* @__PURE__ */ jsx48(
1956
+ return /* @__PURE__ */ jsx49(
1854
1957
  FieldInput_default,
1855
1958
  {
1856
1959
  id,
@@ -1858,7 +1961,7 @@ var NumberInputRenderer = {
1858
1961
  description,
1859
1962
  validation: validationState,
1860
1963
  help,
1861
- children: /* @__PURE__ */ jsx48(InputGroup2, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx48(
1964
+ children: /* @__PURE__ */ jsx49(InputGroup2, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx49(
1862
1965
  Input2,
1863
1966
  __spreadValues({
1864
1967
  id,
@@ -1879,7 +1982,7 @@ var NumberInputRenderer = {
1879
1982
  var NumberInputRenderer_default = NumberInputRenderer;
1880
1983
 
1881
1984
  // ../renderers/src/ParagraphRenderer.tsx
1882
- import { useIntl as useIntl7 } from "react-intl";
1985
+ import { useIntl as useIntl8 } from "react-intl";
1883
1986
 
1884
1987
  // ../renderers/src/hooks/useSnackBarIfAvailable.ts
1885
1988
  import { SnackbarContext } from "@transferwise/components";
@@ -1895,8 +1998,8 @@ import { Button as Button5, Input as Input3 } from "@transferwise/components";
1895
1998
  import classNames5 from "classnames";
1896
1999
 
1897
2000
  // ../renderers/src/messages/paragraph.messages.ts
1898
- import { defineMessages as defineMessages6 } from "react-intl";
1899
- var paragraph_messages_default = defineMessages6({
2001
+ import { defineMessages as defineMessages7 } from "react-intl";
2002
+ var paragraph_messages_default = defineMessages7({
1900
2003
  copy: {
1901
2004
  id: "df.wise.DynamicParagraph.copy",
1902
2005
  defaultMessage: "Copy",
@@ -1910,24 +2013,21 @@ var paragraph_messages_default = defineMessages6({
1910
2013
  });
1911
2014
 
1912
2015
  // ../renderers/src/ParagraphRenderer.tsx
1913
- import { jsx as jsx49, jsxs as jsxs12 } from "react/jsx-runtime";
2016
+ import { jsx as jsx50, jsxs as jsxs12 } from "react/jsx-runtime";
1914
2017
  var ParagraphRenderer = {
1915
2018
  canRenderType: "paragraph",
1916
- render: (props) => /* @__PURE__ */ jsx49(Paragraph, __spreadValues({}, props))
2019
+ render: (props) => /* @__PURE__ */ jsx50(Paragraph, __spreadValues({}, props))
1917
2020
  };
1918
- function Paragraph({ align, control, margin, text }) {
2021
+ function Paragraph({ align, control, margin, size, text }) {
1919
2022
  const className = getTextAlignmentAndMargin({ align, margin });
1920
- return control === "copyable" ? /* @__PURE__ */ jsx49(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx49(StandardParagraph, { className, text });
1921
- }
1922
- function StandardParagraph({ text, className }) {
1923
- return /* @__PURE__ */ jsx49("p", { className: `np-text-body-large ${className}`, children: text });
2023
+ return control === "copyable" ? /* @__PURE__ */ jsx50(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx50("p", { className: `${size === "sm" ? "np-text-body-default" : "np-text-body-large"} ${className}`, children: text });
1924
2024
  }
1925
2025
  function CopyableParagraph({
1926
2026
  text,
1927
2027
  align,
1928
2028
  className
1929
2029
  }) {
1930
- const { formatMessage } = useIntl7();
2030
+ const { formatMessage } = useIntl8();
1931
2031
  const createSnackbar = useSnackBarIfAvailable();
1932
2032
  const copy = () => {
1933
2033
  navigator.clipboard.writeText(text).then(() => createSnackbar({ text: formatMessage(paragraph_messages_default.copied) })).catch(() => {
@@ -1935,7 +2035,7 @@ function CopyableParagraph({
1935
2035
  };
1936
2036
  const inputAlignmentClasses = getTextAlignmentAndMargin({ align, margin: "sm" });
1937
2037
  return /* @__PURE__ */ jsxs12("div", { className, children: [
1938
- /* @__PURE__ */ jsx49(
2038
+ /* @__PURE__ */ jsx50(
1939
2039
  Input3,
1940
2040
  {
1941
2041
  type: "text",
@@ -1944,7 +2044,7 @@ function CopyableParagraph({
1944
2044
  className: classNames5("text-ellipsis", inputAlignmentClasses)
1945
2045
  }
1946
2046
  ),
1947
- /* @__PURE__ */ jsx49(Button5, { v2: true, block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
2047
+ /* @__PURE__ */ jsx50(Button5, { v2: true, block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
1948
2048
  ] });
1949
2049
  }
1950
2050
  var ParagraphRenderer_default = ParagraphRenderer;
@@ -1954,11 +2054,11 @@ import { Button as Button6, Header as Header6, InlineAlert as InlineAlert3, Moda
1954
2054
  import { Plus } from "@transferwise/icons";
1955
2055
  import classNames6 from "classnames";
1956
2056
  import { useState as useState8 } from "react";
1957
- import { useIntl as useIntl8 } from "react-intl";
2057
+ import { useIntl as useIntl9 } from "react-intl";
1958
2058
 
1959
2059
  // ../renderers/src/messages/repeatable.messages.ts
1960
- import { defineMessages as defineMessages7 } from "react-intl";
1961
- var repeatable_messages_default = defineMessages7({
2060
+ import { defineMessages as defineMessages8 } from "react-intl";
2061
+ var repeatable_messages_default = defineMessages8({
1962
2062
  addItemTitle: {
1963
2063
  id: "df.wise.ArraySchema.addItemTitle",
1964
2064
  defaultMessage: "Add Item",
@@ -1982,10 +2082,10 @@ var repeatable_messages_default = defineMessages7({
1982
2082
  });
1983
2083
 
1984
2084
  // ../renderers/src/RepeatableRenderer.tsx
1985
- import { Fragment as Fragment4, jsx as jsx50, jsxs as jsxs13 } from "react/jsx-runtime";
2085
+ import { Fragment as Fragment4, jsx as jsx51, jsxs as jsxs13 } from "react/jsx-runtime";
1986
2086
  var RepeatableRenderer = {
1987
2087
  canRenderType: "repeatable",
1988
- render: (props) => /* @__PURE__ */ jsx50(Repeatable, __spreadValues({}, props))
2088
+ render: (props) => /* @__PURE__ */ jsx51(Repeatable, __spreadValues({}, props))
1989
2089
  };
1990
2090
  function Repeatable(props) {
1991
2091
  const {
@@ -2001,7 +2101,7 @@ function Repeatable(props) {
2001
2101
  onSave,
2002
2102
  onRemove
2003
2103
  } = props;
2004
- const { formatMessage } = useIntl8();
2104
+ const { formatMessage } = useIntl9();
2005
2105
  const [openModalType, setOpenModalType] = useState8(null);
2006
2106
  const onAddItem = () => {
2007
2107
  onAdd();
@@ -2025,8 +2125,8 @@ function Repeatable(props) {
2025
2125
  setOpenModalType(null);
2026
2126
  };
2027
2127
  return /* @__PURE__ */ jsxs13(Fragment4, { children: [
2028
- title && /* @__PURE__ */ jsx50(Header6, { title }),
2029
- description && /* @__PURE__ */ jsx50("p", { children: description }),
2128
+ title && /* @__PURE__ */ jsx51(Header6, { title }),
2129
+ description && /* @__PURE__ */ jsx51("p", { children: description }),
2030
2130
  /* @__PURE__ */ jsxs13(
2031
2131
  "div",
2032
2132
  {
@@ -2034,30 +2134,30 @@ function Repeatable(props) {
2034
2134
  "has-error": (validationState == null ? void 0 : validationState.status) === "invalid"
2035
2135
  }),
2036
2136
  children: [
2037
- items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx50(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
2038
- /* @__PURE__ */ jsx50(
2137
+ items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx51(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
2138
+ /* @__PURE__ */ jsx51(
2039
2139
  NavigationOption2,
2040
2140
  {
2041
- media: /* @__PURE__ */ jsx50(Plus, {}),
2141
+ media: /* @__PURE__ */ jsx51(Plus, {}),
2042
2142
  title: addItemTitle || formatMessage(repeatable_messages_default.addItemTitle),
2043
2143
  showMediaAtAllSizes: true,
2044
2144
  onClick: () => onAddItem()
2045
2145
  }
2046
2146
  ),
2047
- (validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx50(InlineAlert3, { type: "negative", children: validationState.message })
2147
+ (validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx51(InlineAlert3, { type: "negative", children: validationState.message })
2048
2148
  ]
2049
2149
  }
2050
2150
  ),
2051
- /* @__PURE__ */ jsx50(
2151
+ /* @__PURE__ */ jsx51(
2052
2152
  Modal4,
2053
2153
  {
2054
2154
  open: openModalType !== null,
2055
2155
  title: (openModalType === "add" ? addItemTitle : editItemTitle) || formatMessage(repeatable_messages_default.addItemTitle),
2056
2156
  body: /* @__PURE__ */ jsxs13(Fragment4, { children: [
2057
- /* @__PURE__ */ jsx50("div", { className: "m-b-2", children: editableItem }),
2157
+ /* @__PURE__ */ jsx51("div", { className: "m-b-2", children: editableItem }),
2058
2158
  /* @__PURE__ */ jsxs13("div", { children: [
2059
- /* @__PURE__ */ jsx50(Button6, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
2060
- /* @__PURE__ */ jsx50(
2159
+ /* @__PURE__ */ jsx51(Button6, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
2160
+ /* @__PURE__ */ jsx51(
2061
2161
  Button6,
2062
2162
  {
2063
2163
  v2: true,
@@ -2079,10 +2179,10 @@ function ItemSummaryOption({
2079
2179
  item,
2080
2180
  onClick
2081
2181
  }) {
2082
- return /* @__PURE__ */ jsx50(
2182
+ return /* @__PURE__ */ jsx51(
2083
2183
  NavigationOption2,
2084
2184
  {
2085
- media: /* @__PURE__ */ jsx50(OptionMedia, { media: item.media, preferAvatar: false }),
2185
+ media: /* @__PURE__ */ jsx51(OptionMedia, { media: item.media, preferAvatar: false }),
2086
2186
  title: item.title,
2087
2187
  content: item.description,
2088
2188
  showMediaAtAllSizes: true,
@@ -2098,8 +2198,8 @@ import { DefinitionList } from "@transferwise/components";
2098
2198
 
2099
2199
  // ../renderers/src/components/Header.tsx
2100
2200
  import { Header as DSHeader } from "@transferwise/components";
2101
- import { jsx as jsx51 } from "react/jsx-runtime";
2102
- var Header7 = ({ title, callToAction }) => (title || callToAction) && /* @__PURE__ */ jsx51(DSHeader, { title: title != null ? title : "", action: getHeaderAction(callToAction) });
2201
+ import { jsx as jsx52 } from "react/jsx-runtime";
2202
+ var Header7 = ({ title, callToAction }) => (title || callToAction) && /* @__PURE__ */ jsx52(DSHeader, { title: title != null ? title : "", action: getHeaderAction(callToAction) });
2103
2203
  var getHeaderAction = (callToAction) => {
2104
2204
  if (!callToAction) {
2105
2205
  return void 0;
@@ -2121,14 +2221,14 @@ var getHeaderAction = (callToAction) => {
2121
2221
  };
2122
2222
 
2123
2223
  // ../renderers/src/ReviewRenderer.tsx
2124
- import { Fragment as Fragment5, jsx as jsx52, jsxs as jsxs14 } from "react/jsx-runtime";
2224
+ import { Fragment as Fragment5, jsx as jsx53, jsxs as jsxs14 } from "react/jsx-runtime";
2125
2225
  var ReviewRenderer = {
2126
2226
  canRenderType: "review",
2127
2227
  render: ({ callToAction, control, fields, margin, title, trackEvent }) => {
2128
2228
  const orientation = mapControlToDefinitionListLayout(control);
2129
2229
  return /* @__PURE__ */ jsxs14("div", { className: getMargin(margin), children: [
2130
- /* @__PURE__ */ jsx52(Header7, { title, callToAction }),
2131
- /* @__PURE__ */ jsx52("div", { className: margin, children: /* @__PURE__ */ jsx52(
2230
+ /* @__PURE__ */ jsx53(Header7, { title, callToAction }),
2231
+ /* @__PURE__ */ jsx53("div", { className: margin, children: /* @__PURE__ */ jsx53(
2132
2232
  DefinitionList,
2133
2233
  {
2134
2234
  layout: orientation,
@@ -2169,7 +2269,7 @@ var getFieldLabel = (label, help, onClick) => {
2169
2269
  return /* @__PURE__ */ jsxs14(Fragment5, { children: [
2170
2270
  label,
2171
2271
  " ",
2172
- /* @__PURE__ */ jsx52(Help_default, { help, onClick })
2272
+ /* @__PURE__ */ jsx53(Help_default, { help, onClick })
2173
2273
  ] });
2174
2274
  }
2175
2275
  return label;
@@ -2178,11 +2278,11 @@ var getFieldLabel = (label, help, onClick) => {
2178
2278
  // ../renderers/src/SearchRenderer/BlockSearchRendererComponent.tsx
2179
2279
  import { Input as Input4, Markdown as Markdown4, NavigationOption as NavigationOption3, NavigationOptionsList as NavigationOptionsList2 } from "@transferwise/components";
2180
2280
  import { useState as useState9 } from "react";
2181
- import { useIntl as useIntl10 } from "react-intl";
2281
+ import { useIntl as useIntl11 } from "react-intl";
2182
2282
 
2183
2283
  // ../renderers/src/messages/search.messages.ts
2184
- import { defineMessages as defineMessages8 } from "react-intl";
2185
- var search_messages_default = defineMessages8({
2284
+ import { defineMessages as defineMessages9 } from "react-intl";
2285
+ var search_messages_default = defineMessages9({
2186
2286
  loading: {
2187
2287
  id: "df.wise.SearchLayout.loading",
2188
2288
  defaultMessage: "Loading...",
@@ -2191,11 +2291,11 @@ var search_messages_default = defineMessages8({
2191
2291
  });
2192
2292
 
2193
2293
  // ../renderers/src/SearchRenderer/ErrorResult.tsx
2194
- import { useIntl as useIntl9 } from "react-intl";
2294
+ import { useIntl as useIntl10 } from "react-intl";
2195
2295
 
2196
2296
  // ../renderers/src/messages/generic-error.messages.ts
2197
- import { defineMessages as defineMessages9 } from "react-intl";
2198
- var generic_error_messages_default = defineMessages9({
2297
+ import { defineMessages as defineMessages10 } from "react-intl";
2298
+ var generic_error_messages_default = defineMessages10({
2199
2299
  genericErrorRetryHint: {
2200
2300
  id: "df.wise.PersistAsyncSchema.genericError",
2201
2301
  defaultMessage: "Something went wrong, please try again.",
@@ -2215,18 +2315,18 @@ var generic_error_messages_default = defineMessages9({
2215
2315
 
2216
2316
  // ../renderers/src/SearchRenderer/ErrorResult.tsx
2217
2317
  import { Link } from "@transferwise/components";
2218
- import { jsx as jsx53, jsxs as jsxs15 } from "react/jsx-runtime";
2318
+ import { jsx as jsx54, jsxs as jsxs15 } from "react/jsx-runtime";
2219
2319
  function ErrorResult({ state }) {
2220
- const intl = useIntl9();
2320
+ const intl = useIntl10();
2221
2321
  return /* @__PURE__ */ jsxs15("p", { className: "m-t-2", children: [
2222
2322
  intl.formatMessage(generic_error_messages_default.genericError),
2223
2323
  "\xA0",
2224
- /* @__PURE__ */ jsx53(Link, { onClick: () => state.onRetry(), children: intl.formatMessage(generic_error_messages_default.retry) })
2324
+ /* @__PURE__ */ jsx54(Link, { onClick: () => state.onRetry(), children: intl.formatMessage(generic_error_messages_default.retry) })
2225
2325
  ] });
2226
2326
  }
2227
2327
 
2228
2328
  // ../renderers/src/SearchRenderer/BlockSearchRendererComponent.tsx
2229
- import { jsx as jsx54, jsxs as jsxs16 } from "react/jsx-runtime";
2329
+ import { jsx as jsx55, jsxs as jsxs16 } from "react/jsx-runtime";
2230
2330
  function BlockSearchRendererComponent({
2231
2331
  id,
2232
2332
  isLoading,
@@ -2238,9 +2338,9 @@ function BlockSearchRendererComponent({
2238
2338
  onChange
2239
2339
  }) {
2240
2340
  const [hasSearched, setHasSearched] = useState9(false);
2241
- const { formatMessage } = useIntl10();
2341
+ const { formatMessage } = useIntl11();
2242
2342
  return /* @__PURE__ */ jsxs16("div", { className: getMargin(margin), children: [
2243
- /* @__PURE__ */ jsx54(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx54(
2343
+ /* @__PURE__ */ jsx55(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx55(
2244
2344
  Input4,
2245
2345
  {
2246
2346
  id,
@@ -2257,7 +2357,7 @@ function BlockSearchRendererComponent({
2257
2357
  }
2258
2358
  }
2259
2359
  ) }),
2260
- isLoading ? /* @__PURE__ */ jsx54("span", { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx54(SearchResultContent, { state, trackEvent })
2360
+ isLoading ? /* @__PURE__ */ jsx55("span", { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx55(SearchResultContent, { state, trackEvent })
2261
2361
  ] });
2262
2362
  }
2263
2363
  function SearchResultContent({
@@ -2266,31 +2366,31 @@ function SearchResultContent({
2266
2366
  }) {
2267
2367
  switch (state.type) {
2268
2368
  case "error":
2269
- return /* @__PURE__ */ jsx54(ErrorResult, { state });
2369
+ return /* @__PURE__ */ jsx55(ErrorResult, { state });
2270
2370
  case "results":
2271
- return /* @__PURE__ */ jsx54(SearchResults, { state, trackEvent });
2371
+ return /* @__PURE__ */ jsx55(SearchResults, { state, trackEvent });
2272
2372
  case "noResults":
2273
- return /* @__PURE__ */ jsx54(EmptySearchResult, { state });
2373
+ return /* @__PURE__ */ jsx55(EmptySearchResult, { state });
2274
2374
  case "pending":
2275
2375
  default:
2276
2376
  return null;
2277
2377
  }
2278
2378
  }
2279
2379
  function EmptySearchResult({ state }) {
2280
- return /* @__PURE__ */ jsx54(Markdown4, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
2380
+ return /* @__PURE__ */ jsx55(Markdown4, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
2281
2381
  }
2282
2382
  function SearchResults({
2283
2383
  state,
2284
2384
  trackEvent
2285
2385
  }) {
2286
- return /* @__PURE__ */ jsx54(NavigationOptionsList2, { children: state.results.map((result) => {
2386
+ return /* @__PURE__ */ jsx55(NavigationOptionsList2, { children: state.results.map((result) => {
2287
2387
  const { media } = result;
2288
- return /* @__PURE__ */ jsx54(
2388
+ return /* @__PURE__ */ jsx55(
2289
2389
  NavigationOption3,
2290
2390
  {
2291
2391
  title: result.title,
2292
2392
  content: result.description,
2293
- media: media ? /* @__PURE__ */ jsx54(OptionMedia, { media, preferAvatar: false }) : void 0,
2393
+ media: media ? /* @__PURE__ */ jsx55(OptionMedia, { media, preferAvatar: false }) : void 0,
2294
2394
  showMediaCircle: false,
2295
2395
  showMediaAtAllSizes: true,
2296
2396
  onClick: () => {
@@ -2310,8 +2410,8 @@ var BlockSearchRendererComponent_default = BlockSearchRendererComponent;
2310
2410
  import { Markdown as Markdown5, Typeahead } from "@transferwise/components";
2311
2411
  import { Search } from "@transferwise/icons";
2312
2412
  import { useState as useState10 } from "react";
2313
- import { useIntl as useIntl11 } from "react-intl";
2314
- import { jsx as jsx55 } from "react/jsx-runtime";
2413
+ import { useIntl as useIntl12 } from "react-intl";
2414
+ import { jsx as jsx56 } from "react/jsx-runtime";
2315
2415
  function InlineSearchRenderer({
2316
2416
  id,
2317
2417
  isLoading,
@@ -2322,8 +2422,8 @@ function InlineSearchRenderer({
2322
2422
  trackEvent
2323
2423
  }) {
2324
2424
  const [hasSearched, setHasSearched] = useState10(false);
2325
- const intl = useIntl11();
2326
- return /* @__PURE__ */ jsx55("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx55(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx55(
2425
+ const intl = useIntl12();
2426
+ return /* @__PURE__ */ jsx56("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx56(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx56(
2327
2427
  Typeahead,
2328
2428
  {
2329
2429
  id: "typeahead-input-id",
@@ -2331,10 +2431,10 @@ function InlineSearchRenderer({
2331
2431
  name: "typeahead-input-name",
2332
2432
  size: "md",
2333
2433
  maxHeight: 100,
2334
- footer: /* @__PURE__ */ jsx55(TypeaheadFooter, { state, isLoading }),
2434
+ footer: /* @__PURE__ */ jsx56(TypeaheadFooter, { state, isLoading }),
2335
2435
  multiple: false,
2336
2436
  clearable: false,
2337
- addon: /* @__PURE__ */ jsx55(Search, { size: 24 }),
2437
+ addon: /* @__PURE__ */ jsx56(Search, { size: 24 }),
2338
2438
  options: state.type === "results" ? state.results.map(mapResultToTypeaheadOption) : [],
2339
2439
  minQueryLength: 1,
2340
2440
  onChange: (values) => {
@@ -2369,25 +2469,25 @@ function mapResultToTypeaheadOption(result) {
2369
2469
  };
2370
2470
  }
2371
2471
  function TypeaheadFooter({ state, isLoading }) {
2372
- const { formatMessage } = useIntl11();
2472
+ const { formatMessage } = useIntl12();
2373
2473
  if (state.type === "noResults") {
2374
- return /* @__PURE__ */ jsx55(Markdown5, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
2474
+ return /* @__PURE__ */ jsx56(Markdown5, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
2375
2475
  }
2376
2476
  if (state.type === "error") {
2377
- return /* @__PURE__ */ jsx55("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx55(ErrorResult, { state }) });
2477
+ return /* @__PURE__ */ jsx56("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx56(ErrorResult, { state }) });
2378
2478
  }
2379
2479
  if (state.type === "pending" || isLoading) {
2380
- return /* @__PURE__ */ jsx55("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
2480
+ return /* @__PURE__ */ jsx56("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
2381
2481
  }
2382
2482
  return null;
2383
2483
  }
2384
2484
  var InlineSearchRendererComponent_default = InlineSearchRenderer;
2385
2485
 
2386
2486
  // ../renderers/src/SearchRenderer/SearchRenderer.tsx
2387
- import { jsx as jsx56 } from "react/jsx-runtime";
2487
+ import { jsx as jsx57 } from "react/jsx-runtime";
2388
2488
  var SearchRenderer = {
2389
2489
  canRenderType: "search",
2390
- render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx56(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx56(BlockSearchRendererComponent_default, __spreadValues({}, props))
2490
+ render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx57(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx57(BlockSearchRendererComponent_default, __spreadValues({}, props))
2391
2491
  };
2392
2492
  var SearchRenderer_default = SearchRenderer;
2393
2493
 
@@ -2416,12 +2516,12 @@ var getHeaderAction2 = (callToAction) => {
2416
2516
  };
2417
2517
 
2418
2518
  // ../renderers/src/SectionRenderer.tsx
2419
- import { jsx as jsx57, jsxs as jsxs17 } from "react/jsx-runtime";
2519
+ import { jsx as jsx58, jsxs as jsxs17 } from "react/jsx-runtime";
2420
2520
  var SectionRenderer = {
2421
2521
  canRenderType: "section",
2422
2522
  render: ({ children, callToAction, margin, title }) => {
2423
2523
  return /* @__PURE__ */ jsxs17("section", { className: getMargin(margin), children: [
2424
- (title || callToAction) && /* @__PURE__ */ jsx57(Header8, { title: title != null ? title : "", action: getHeaderAction2(callToAction) }),
2524
+ (title || callToAction) && /* @__PURE__ */ jsx58(Header8, { title: title != null ? title : "", action: getHeaderAction2(callToAction) }),
2425
2525
  children
2426
2526
  ] });
2427
2527
  }
@@ -2430,7 +2530,7 @@ var SectionRenderer_default = SectionRenderer;
2430
2530
 
2431
2531
  // ../renderers/src/SelectInputRenderer/RadioInputRendererComponent.tsx
2432
2532
  import { RadioGroup } from "@transferwise/components";
2433
- import { Fragment as Fragment6, jsx as jsx58, jsxs as jsxs18 } from "react/jsx-runtime";
2533
+ import { Fragment as Fragment6, jsx as jsx59, jsxs as jsxs18 } from "react/jsx-runtime";
2434
2534
  function RadioInputRendererComponent(props) {
2435
2535
  const {
2436
2536
  id,
@@ -2445,7 +2545,7 @@ function RadioInputRendererComponent(props) {
2445
2545
  onSelect
2446
2546
  } = props;
2447
2547
  return /* @__PURE__ */ jsxs18(Fragment6, { children: [
2448
- /* @__PURE__ */ jsx58(
2548
+ /* @__PURE__ */ jsx59(
2449
2549
  FieldInput_default,
2450
2550
  {
2451
2551
  id,
@@ -2453,7 +2553,7 @@ function RadioInputRendererComponent(props) {
2453
2553
  help,
2454
2554
  description,
2455
2555
  validation: validationState,
2456
- children: /* @__PURE__ */ jsx58("span", { children: /* @__PURE__ */ jsx58(
2556
+ children: /* @__PURE__ */ jsx59("span", { children: /* @__PURE__ */ jsx59(
2457
2557
  RadioGroup,
2458
2558
  {
2459
2559
  name: id,
@@ -2462,7 +2562,7 @@ function RadioInputRendererComponent(props) {
2462
2562
  value: index,
2463
2563
  secondary: option.description,
2464
2564
  disabled: option.disabled || disabled,
2465
- avatar: /* @__PURE__ */ jsx58(OptionMedia, { media: option.media, preferAvatar: false })
2565
+ avatar: /* @__PURE__ */ jsx59(OptionMedia, { media: option.media, preferAvatar: false })
2466
2566
  })),
2467
2567
  selectedValue: selectedIndex != null ? selectedIndex : void 0,
2468
2568
  onChange: onSelect
@@ -2477,8 +2577,8 @@ function RadioInputRendererComponent(props) {
2477
2577
 
2478
2578
  // ../renderers/src/SelectInputRenderer/TabInputRendererComponent.tsx
2479
2579
  import { Tabs } from "@transferwise/components";
2480
- import { useEffect as useEffect5 } from "react";
2481
- import { Fragment as Fragment7, jsx as jsx59, jsxs as jsxs19 } from "react/jsx-runtime";
2580
+ import { useEffect as useEffect6 } from "react";
2581
+ import { Fragment as Fragment7, jsx as jsx60, jsxs as jsxs19 } from "react/jsx-runtime";
2482
2582
  function TabInputRendererComponent(props) {
2483
2583
  const {
2484
2584
  id,
@@ -2492,13 +2592,13 @@ function TabInputRendererComponent(props) {
2492
2592
  validationState,
2493
2593
  onSelect
2494
2594
  } = props;
2495
- useEffect5(() => {
2496
- if (!isValidIndex(selectedIndex, options.length)) {
2595
+ useEffect6(() => {
2596
+ if (!isValidIndex2(selectedIndex, options.length)) {
2497
2597
  onSelect(0);
2498
2598
  }
2499
2599
  }, [selectedIndex, onSelect, options.length]);
2500
2600
  return /* @__PURE__ */ jsxs19(Fragment7, { children: [
2501
- /* @__PURE__ */ jsx59(
2601
+ /* @__PURE__ */ jsx60(
2502
2602
  FieldInput_default,
2503
2603
  {
2504
2604
  id,
@@ -2506,7 +2606,7 @@ function TabInputRendererComponent(props) {
2506
2606
  help,
2507
2607
  description,
2508
2608
  validation: validationState,
2509
- children: /* @__PURE__ */ jsx59(
2609
+ children: /* @__PURE__ */ jsx60(
2510
2610
  Tabs,
2511
2611
  {
2512
2612
  name: id,
@@ -2515,7 +2615,7 @@ function TabInputRendererComponent(props) {
2515
2615
  title: option.title,
2516
2616
  // if we pass null, we get some props-types console errors
2517
2617
  // eslint-disable-next-line react/jsx-no-useless-fragment
2518
- content: /* @__PURE__ */ jsx59(Fragment7, {}),
2618
+ content: /* @__PURE__ */ jsx60(Fragment7, {}),
2519
2619
  disabled: option.disabled || disabled
2520
2620
  })),
2521
2621
  onTabSelect: onSelect
@@ -2526,11 +2626,11 @@ function TabInputRendererComponent(props) {
2526
2626
  children
2527
2627
  ] });
2528
2628
  }
2529
- var isValidIndex = (index, options) => index !== null && index >= 0 && index < options;
2629
+ var isValidIndex2 = (index, options) => index !== null && index >= 0 && index < options;
2530
2630
 
2531
2631
  // ../renderers/src/SelectInputRenderer/SelectInputRendererComponent.tsx
2532
2632
  import { SelectInput as SelectInput2, SelectInputOptionContent as SelectInputOptionContent2 } from "@transferwise/components";
2533
- import { Fragment as Fragment8, jsx as jsx60, jsxs as jsxs20 } from "react/jsx-runtime";
2633
+ import { Fragment as Fragment8, jsx as jsx61, jsxs as jsxs20 } from "react/jsx-runtime";
2534
2634
  function SelectInputRendererComponent(props) {
2535
2635
  const {
2536
2636
  id,
@@ -2570,13 +2670,13 @@ function SelectInputRendererComponent(props) {
2570
2670
  } : {
2571
2671
  title: option.title,
2572
2672
  description: option.description,
2573
- icon: /* @__PURE__ */ jsx60(OptionMedia, { media: option.media, preferAvatar: false })
2673
+ icon: /* @__PURE__ */ jsx61(OptionMedia, { media: option.media, preferAvatar: false })
2574
2674
  };
2575
- return /* @__PURE__ */ jsx60(SelectInputOptionContent2, __spreadValues({}, contentProps));
2675
+ return /* @__PURE__ */ jsx61(SelectInputOptionContent2, __spreadValues({}, contentProps));
2576
2676
  };
2577
2677
  const extraProps = { autoComplete };
2578
2678
  return /* @__PURE__ */ jsxs20(Fragment8, { children: [
2579
- /* @__PURE__ */ jsx60(
2679
+ /* @__PURE__ */ jsx61(
2580
2680
  FieldInput_default,
2581
2681
  {
2582
2682
  id,
@@ -2584,7 +2684,7 @@ function SelectInputRendererComponent(props) {
2584
2684
  help,
2585
2685
  description,
2586
2686
  validation: validationState,
2587
- children: /* @__PURE__ */ jsx60(
2687
+ children: /* @__PURE__ */ jsx61(
2588
2688
  SelectInput2,
2589
2689
  __spreadValues({
2590
2690
  name: id,
@@ -2605,9 +2705,9 @@ function SelectInputRendererComponent(props) {
2605
2705
  }
2606
2706
 
2607
2707
  // ../renderers/src/SelectInputRenderer/SegmentedInputRendererComponent.tsx
2608
- import { useEffect as useEffect6 } from "react";
2708
+ import { useEffect as useEffect7 } from "react";
2609
2709
  import { SegmentedControl } from "@transferwise/components";
2610
- import { Fragment as Fragment9, jsx as jsx61, jsxs as jsxs21 } from "react/jsx-runtime";
2710
+ import { Fragment as Fragment9, jsx as jsx62, jsxs as jsxs21 } from "react/jsx-runtime";
2611
2711
  function SegmentedInputRendererComponent(props) {
2612
2712
  const {
2613
2713
  id,
@@ -2620,13 +2720,13 @@ function SegmentedInputRendererComponent(props) {
2620
2720
  validationState,
2621
2721
  onSelect
2622
2722
  } = props;
2623
- useEffect6(() => {
2624
- if (!isValidIndex2(selectedIndex, options.length)) {
2723
+ useEffect7(() => {
2724
+ if (!isValidIndex3(selectedIndex, options.length)) {
2625
2725
  onSelect(0);
2626
2726
  }
2627
2727
  }, [selectedIndex, onSelect, options.length]);
2628
2728
  return /* @__PURE__ */ jsxs21(Fragment9, { children: [
2629
- /* @__PURE__ */ jsx61(
2729
+ /* @__PURE__ */ jsx62(
2630
2730
  FieldInput_default,
2631
2731
  {
2632
2732
  id,
@@ -2634,7 +2734,7 @@ function SegmentedInputRendererComponent(props) {
2634
2734
  help,
2635
2735
  description,
2636
2736
  validation: validationState,
2637
- children: /* @__PURE__ */ jsx61(
2737
+ children: /* @__PURE__ */ jsx62(
2638
2738
  SegmentedControl,
2639
2739
  {
2640
2740
  name: `${id}-segmented-control`,
@@ -2651,26 +2751,26 @@ function SegmentedInputRendererComponent(props) {
2651
2751
  )
2652
2752
  }
2653
2753
  ),
2654
- /* @__PURE__ */ jsx61("div", { id: `${id}-children`, children })
2754
+ /* @__PURE__ */ jsx62("div", { id: `${id}-children`, children })
2655
2755
  ] });
2656
2756
  }
2657
- var isValidIndex2 = (index, options) => index !== null && index >= 0 && index < options;
2757
+ var isValidIndex3 = (index, options) => index !== null && index >= 0 && index < options;
2658
2758
 
2659
2759
  // ../renderers/src/SelectInputRenderer/SelectInputRenderer.tsx
2660
- import { jsx as jsx62 } from "react/jsx-runtime";
2760
+ import { jsx as jsx63 } from "react/jsx-runtime";
2661
2761
  var SelectInputRenderer = {
2662
2762
  canRenderType: "input-select",
2663
2763
  render: (props) => {
2664
2764
  switch (props.control) {
2665
2765
  case "radio":
2666
- return /* @__PURE__ */ jsx62(RadioInputRendererComponent, __spreadValues({}, props));
2766
+ return /* @__PURE__ */ jsx63(RadioInputRendererComponent, __spreadValues({}, props));
2667
2767
  case "tab":
2668
- return props.options.length > 3 ? /* @__PURE__ */ jsx62(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx62(TabInputRendererComponent, __spreadValues({}, props));
2768
+ return props.options.length > 3 ? /* @__PURE__ */ jsx63(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx63(TabInputRendererComponent, __spreadValues({}, props));
2669
2769
  case "segmented":
2670
- return props.options.length > 3 ? /* @__PURE__ */ jsx62(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx62(SegmentedInputRendererComponent, __spreadValues({}, props));
2770
+ return props.options.length > 3 ? /* @__PURE__ */ jsx63(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx63(SegmentedInputRendererComponent, __spreadValues({}, props));
2671
2771
  case "select":
2672
2772
  default:
2673
- return /* @__PURE__ */ jsx62(SelectInputRendererComponent, __spreadValues({}, props));
2773
+ return /* @__PURE__ */ jsx63(SelectInputRendererComponent, __spreadValues({}, props));
2674
2774
  }
2675
2775
  }
2676
2776
  };
@@ -2678,17 +2778,17 @@ var SelectInputRenderer_default = SelectInputRenderer;
2678
2778
 
2679
2779
  // ../renderers/src/StatusListRenderer.tsx
2680
2780
  import { Header as Header9, Summary } from "@transferwise/components";
2681
- import { jsx as jsx63, jsxs as jsxs22 } from "react/jsx-runtime";
2781
+ import { jsx as jsx64, jsxs as jsxs22 } from "react/jsx-runtime";
2682
2782
  var StatusListRenderer = {
2683
2783
  canRenderType: "status-list",
2684
2784
  render: ({ margin, items, title }) => /* @__PURE__ */ jsxs22("div", { className: getMargin(margin), children: [
2685
- title ? /* @__PURE__ */ jsx63(Header9, { title, className: "m-b-2" }) : null,
2686
- items.map(({ callToAction, description, icon, status, title: itemTitle }) => /* @__PURE__ */ jsx63(
2785
+ title ? /* @__PURE__ */ jsx64(Header9, { title, className: "m-b-2" }) : null,
2786
+ items.map(({ callToAction, description, icon, status, title: itemTitle }) => /* @__PURE__ */ jsx64(
2687
2787
  Summary,
2688
2788
  {
2689
2789
  title: itemTitle,
2690
2790
  description,
2691
- icon: icon && "name" in icon ? /* @__PURE__ */ jsx63(DynamicIcon_default, { name: icon.name }) : null,
2791
+ icon: icon && "name" in icon ? /* @__PURE__ */ jsx64(DynamicIcon_default, { name: icon.name }) : null,
2692
2792
  status: mapStatus(status),
2693
2793
  action: getSummaryAction(callToAction)
2694
2794
  },
@@ -2725,12 +2825,12 @@ var mapStatus = (status) => {
2725
2825
 
2726
2826
  // ../renderers/src/utils/useCustomTheme.ts
2727
2827
  import { useTheme } from "@wise/components-theming";
2728
- import { useEffect as useEffect7, useMemo } from "react";
2828
+ import { useEffect as useEffect8, useMemo } from "react";
2729
2829
  var ThemeRequiredEventName = "Theme Required";
2730
2830
  var useCustomTheme = (theme, trackEvent) => {
2731
2831
  const previousThemeHookValue = useTheme();
2732
2832
  const previousTheme = useMemo(() => previousThemeHookValue.theme, []);
2733
- useEffect7(() => {
2833
+ useEffect8(() => {
2734
2834
  trackEvent(ThemeRequiredEventName, { theme });
2735
2835
  return theme !== previousTheme ? () => {
2736
2836
  trackEvent(ThemeRequiredEventName, { theme: previousTheme });
@@ -2742,22 +2842,22 @@ var useCustomTheme = (theme, trackEvent) => {
2742
2842
  // ../renderers/src/step/topbar/BackButton.tsx
2743
2843
  import { IconButton } from "@transferwise/components";
2744
2844
  import { ArrowLeft } from "@transferwise/icons";
2745
- import { jsx as jsx64, jsxs as jsxs23 } from "react/jsx-runtime";
2845
+ import { jsx as jsx65, jsxs as jsxs23 } from "react/jsx-runtime";
2746
2846
  function BackButton({ title, onClick }) {
2747
2847
  return /* @__PURE__ */ jsxs23(IconButton, { className: "df-back-button", priority: "tertiary", onClick, children: [
2748
- /* @__PURE__ */ jsx64("span", { className: "sr-only", children: title }),
2749
- /* @__PURE__ */ jsx64(ArrowLeft, {})
2848
+ /* @__PURE__ */ jsx65("span", { className: "sr-only", children: title }),
2849
+ /* @__PURE__ */ jsx65(ArrowLeft, {})
2750
2850
  ] });
2751
2851
  }
2752
2852
 
2753
2853
  // ../renderers/src/step/topbar/Toolbar.tsx
2754
2854
  import { Button as Button7, IconButton as IconButton2 } from "@transferwise/components";
2755
- import { jsx as jsx65, jsxs as jsxs24 } from "react/jsx-runtime";
2855
+ import { jsx as jsx66, jsxs as jsxs24 } from "react/jsx-runtime";
2756
2856
  var Toolbar = ({ items }) => {
2757
- return (items == null ? void 0 : items.length) > 0 ? /* @__PURE__ */ jsx65("div", { className: "df-toolbar", children: items.map((item, index) => /* @__PURE__ */ jsx65(ToolbarButton, __spreadValues({}, item), `${item.type}-${index}-${item.title}`)) }) : null;
2857
+ return (items == null ? void 0 : items.length) > 0 ? /* @__PURE__ */ jsx66("div", { className: "df-toolbar", children: items.map((item, index) => /* @__PURE__ */ jsx66(ToolbarButton, __spreadValues({}, item), `${item.type}-${index}-${item.title}`)) }) : null;
2758
2858
  };
2759
2859
  function ToolbarButton(props) {
2760
- return prefersMedia(props.control) ? /* @__PURE__ */ jsx65(MediaToolbarButton, __spreadValues({}, props)) : /* @__PURE__ */ jsx65(TextToolbarButton, __spreadValues({}, props));
2860
+ return prefersMedia(props.control) ? /* @__PURE__ */ jsx66(MediaToolbarButton, __spreadValues({}, props)) : /* @__PURE__ */ jsx66(TextToolbarButton, __spreadValues({}, props));
2761
2861
  }
2762
2862
  function MediaToolbarButton(props) {
2763
2863
  var _a;
@@ -2774,7 +2874,7 @@ function MediaToolbarButton(props) {
2774
2874
  type,
2775
2875
  onClick,
2776
2876
  children: [
2777
- accessibilityDescription ? /* @__PURE__ */ jsx65("span", { className: "sr-only", children: accessibilityDescription }) : null,
2877
+ accessibilityDescription ? /* @__PURE__ */ jsx66("span", { className: "sr-only", children: accessibilityDescription }) : null,
2778
2878
  media ? (_a = getAddonStart(media)) == null ? void 0 : _a.value : null
2779
2879
  ]
2780
2880
  }
@@ -2785,7 +2885,7 @@ function TextToolbarButton(props) {
2785
2885
  const addonStart = media ? getAddonStart(media) : void 0;
2786
2886
  const priority = getPriority2(control);
2787
2887
  const sentiment = getSentiment(context);
2788
- return /* @__PURE__ */ jsx65(
2888
+ return /* @__PURE__ */ jsx66(
2789
2889
  Button7,
2790
2890
  {
2791
2891
  v2: true,
@@ -2830,48 +2930,52 @@ var getIconButtonPriority = (control) => {
2830
2930
  };
2831
2931
 
2832
2932
  // ../renderers/src/step/topbar/TopBar.tsx
2833
- import { jsx as jsx66, jsxs as jsxs25 } from "react/jsx-runtime";
2933
+ import { jsx as jsx67, jsxs as jsxs25 } from "react/jsx-runtime";
2834
2934
  function TopBar({ back, toolbar }) {
2835
2935
  return back || toolbar ? /* @__PURE__ */ jsxs25("div", { className: "d-flex m-b-2", children: [
2836
- back ? /* @__PURE__ */ jsx66(BackButton, __spreadValues({}, back)) : null,
2837
- toolbar ? /* @__PURE__ */ jsx66(Toolbar, __spreadValues({}, toolbar)) : null
2936
+ back ? /* @__PURE__ */ jsx67(BackButton, __spreadValues({}, back)) : null,
2937
+ toolbar ? /* @__PURE__ */ jsx67(Toolbar, __spreadValues({}, toolbar)) : null
2838
2938
  ] }) : null;
2839
2939
  }
2840
2940
 
2841
2941
  // ../renderers/src/step/SplashCelebrationStepRenderer.tsx
2842
- import { jsx as jsx67, jsxs as jsxs26 } from "react/jsx-runtime";
2942
+ import { jsx as jsx68, jsxs as jsxs26 } from "react/jsx-runtime";
2843
2943
  var SplashCelebrationStepRenderer = {
2844
2944
  canRenderType: "step",
2845
2945
  canRender: ({ control }) => control === "splash-celebration",
2846
2946
  render: SplashCelebrationStepRendererComponent
2847
2947
  };
2848
2948
  function SplashCelebrationStepRendererComponent(props) {
2849
- const { back, toolbar, children, trackEvent } = props;
2949
+ const { back, toolbar, children, footer, trackEvent } = props;
2950
+ const hasFooter = footer && Array.isArray(footer) && footer.length > 0;
2850
2951
  useCustomTheme("forest-green", trackEvent);
2851
2952
  return /* @__PURE__ */ jsxs26("div", { className: "splash-screen m-t-5", children: [
2852
- /* @__PURE__ */ jsx67(TopBar, { back, toolbar }),
2853
- children
2953
+ /* @__PURE__ */ jsx68(TopBar, { back, toolbar }),
2954
+ children,
2955
+ hasFooter ? /* @__PURE__ */ jsx68("div", { className: "df-step-fixed__footer", children: footer }) : void 0
2854
2956
  ] });
2855
2957
  }
2856
2958
 
2857
2959
  // ../renderers/src/step/SplashStepRenderer.tsx
2858
- import { jsx as jsx68, jsxs as jsxs27 } from "react/jsx-runtime";
2960
+ import { jsx as jsx69, jsxs as jsxs27 } from "react/jsx-runtime";
2859
2961
  var SplashStepRenderer = {
2860
2962
  canRenderType: "step",
2861
2963
  canRender: ({ control }) => control === "splash",
2862
2964
  render: SplashStepRendererComponent
2863
2965
  };
2864
2966
  function SplashStepRendererComponent(props) {
2865
- const { back, toolbar, children } = props;
2967
+ const { back, toolbar, children, footer } = props;
2968
+ const hasFooter = footer && Array.isArray(footer) && footer.length > 0;
2866
2969
  return /* @__PURE__ */ jsxs27("div", { className: "splash-screen m-t-5", children: [
2867
- /* @__PURE__ */ jsx68(TopBar, { back, toolbar }),
2868
- children
2970
+ /* @__PURE__ */ jsx69(TopBar, { back, toolbar }),
2971
+ children,
2972
+ hasFooter ? /* @__PURE__ */ jsx69("div", { className: "df-step-fixed__footer", children: footer }) : void 0
2869
2973
  ] });
2870
2974
  }
2871
2975
 
2872
2976
  // ../renderers/src/step/StepRenderer.tsx
2873
2977
  import { Alert as Alert2, Title as Title2 } from "@transferwise/components";
2874
- import { jsx as jsx69, jsxs as jsxs28 } from "react/jsx-runtime";
2978
+ import { jsx as jsx70, jsxs as jsxs28 } from "react/jsx-runtime";
2875
2979
  var StepRenderer = {
2876
2980
  canRenderType: "step",
2877
2981
  render: StepRendererComponent
@@ -2880,40 +2984,40 @@ function StepRendererComponent(props) {
2880
2984
  const { back, description, error, title, children, toolbar, footer } = props;
2881
2985
  const hasFooter = footer && Array.isArray(footer) && footer.length > 0;
2882
2986
  return /* @__PURE__ */ jsxs28("div", { children: [
2883
- /* @__PURE__ */ jsx69(TopBar, { back, toolbar }),
2987
+ /* @__PURE__ */ jsx70(TopBar, { back, toolbar }),
2884
2988
  title || description ? /* @__PURE__ */ jsxs28("div", { className: "m-b-4", children: [
2885
- title ? /* @__PURE__ */ jsx69(Title2, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
2886
- description ? /* @__PURE__ */ jsx69("p", { className: "text-xs-center np-text-body-large", children: description }) : void 0
2989
+ title ? /* @__PURE__ */ jsx70(Title2, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
2990
+ description ? /* @__PURE__ */ jsx70("p", { className: "text-xs-center np-text-body-large", children: description }) : void 0
2887
2991
  ] }) : void 0,
2888
- error ? /* @__PURE__ */ jsx69(Alert2, { type: "negative", className: "m-b-2", message: error }) : null,
2992
+ error ? /* @__PURE__ */ jsx70(Alert2, { type: "negative", className: "m-b-2", message: error }) : null,
2889
2993
  children,
2890
- hasFooter ? /* @__PURE__ */ jsx69("div", { className: "df-step-fixed__footer", children: footer }) : void 0
2994
+ hasFooter ? /* @__PURE__ */ jsx70("div", { className: "df-step-fixed__footer", children: footer }) : void 0
2891
2995
  ] });
2892
2996
  }
2893
2997
 
2894
2998
  // ../renderers/src/TabsRenderer.tsx
2895
2999
  import { Chips, SegmentedControl as SegmentedControl2, Tabs as Tabs2 } from "@transferwise/components";
2896
3000
  import { useState as useState11 } from "react";
2897
- import { jsx as jsx70, jsxs as jsxs29 } from "react/jsx-runtime";
3001
+ import { jsx as jsx71, jsxs as jsxs29 } from "react/jsx-runtime";
2898
3002
  var TabsRenderer = {
2899
3003
  canRenderType: "tabs",
2900
3004
  render: (props) => {
2901
3005
  switch (props.control) {
2902
3006
  case "segmented":
2903
3007
  if (props.tabs.length > 3) {
2904
- return /* @__PURE__ */ jsx70(TabsRendererComponent, __spreadValues({}, props));
3008
+ return /* @__PURE__ */ jsx71(TabsRendererComponent, __spreadValues({}, props));
2905
3009
  }
2906
- return /* @__PURE__ */ jsx70(SegmentedTabsRendererComponent, __spreadValues({}, props));
3010
+ return /* @__PURE__ */ jsx71(SegmentedTabsRendererComponent, __spreadValues({}, props));
2907
3011
  case "chips":
2908
- return /* @__PURE__ */ jsx70(ChipsTabsRendererComponent, __spreadValues({}, props));
3012
+ return /* @__PURE__ */ jsx71(ChipsTabsRendererComponent, __spreadValues({}, props));
2909
3013
  default:
2910
- return /* @__PURE__ */ jsx70(TabsRendererComponent, __spreadValues({}, props));
3014
+ return /* @__PURE__ */ jsx71(TabsRendererComponent, __spreadValues({}, props));
2911
3015
  }
2912
3016
  }
2913
3017
  };
2914
3018
  function TabsRendererComponent({ uid, margin, tabs }) {
2915
3019
  const [selectedIndex, setSelectedIndex] = useState11(0);
2916
- return /* @__PURE__ */ jsx70("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx70(
3020
+ return /* @__PURE__ */ jsx71("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx71(
2917
3021
  Tabs2,
2918
3022
  {
2919
3023
  name: uid,
@@ -2935,7 +3039,7 @@ function SegmentedTabsRendererComponent({ uid, margin, tabs }) {
2935
3039
  var _a;
2936
3040
  const [selectedIndex, setSelectedIndex] = useState11(0);
2937
3041
  return /* @__PURE__ */ jsxs29("div", { className: getMargin(margin), children: [
2938
- /* @__PURE__ */ jsx70(
3042
+ /* @__PURE__ */ jsx71(
2939
3043
  SegmentedControl2,
2940
3044
  {
2941
3045
  name: uid,
@@ -2950,14 +3054,14 @@ function SegmentedTabsRendererComponent({ uid, margin, tabs }) {
2950
3054
  onChange: (value) => setSelectedIndex(Number(value))
2951
3055
  }
2952
3056
  ),
2953
- /* @__PURE__ */ jsx70("div", { id: `${uid}-children`, className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
3057
+ /* @__PURE__ */ jsx71("div", { id: `${uid}-children`, className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
2954
3058
  ] });
2955
3059
  }
2956
3060
  function ChipsTabsRendererComponent({ margin, tabs }) {
2957
3061
  var _a;
2958
3062
  const [selectedIndex, setSelectedIndex] = useState11(0);
2959
3063
  return /* @__PURE__ */ jsxs29("div", { className: getMargin(margin), children: [
2960
- /* @__PURE__ */ jsx70("div", { className: "chips-container", children: /* @__PURE__ */ jsx70(
3064
+ /* @__PURE__ */ jsx71("div", { className: "chips-container", children: /* @__PURE__ */ jsx71(
2961
3065
  Chips,
2962
3066
  {
2963
3067
  chips: tabs.map((tab, index) => ({ label: tab.title, value: index })),
@@ -2965,7 +3069,7 @@ function ChipsTabsRendererComponent({ margin, tabs }) {
2965
3069
  onChange: ({ selectedValue }) => setSelectedIndex(Number(selectedValue))
2966
3070
  }
2967
3071
  ) }),
2968
- /* @__PURE__ */ jsx70("div", { className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
3072
+ /* @__PURE__ */ jsx71("div", { className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
2969
3073
  ] });
2970
3074
  }
2971
3075
 
@@ -2980,7 +3084,7 @@ import {
2980
3084
  TextArea,
2981
3085
  TextareaWithDisplayFormat
2982
3086
  } from "@transferwise/components";
2983
- import { jsx as jsx71 } from "react/jsx-runtime";
3087
+ import { jsx as jsx72 } from "react/jsx-runtime";
2984
3088
  var commonKeys = [
2985
3089
  "autoComplete",
2986
3090
  "autoCapitalize",
@@ -2999,12 +3103,12 @@ function VariableTextInput(inputProps) {
2999
3103
  const commonProps = __spreadProps(__spreadValues({}, pick(inputProps, ...commonKeys)), { name: id });
3000
3104
  switch (control) {
3001
3105
  case "email":
3002
- return /* @__PURE__ */ jsx71(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "email", onChange }));
3106
+ return /* @__PURE__ */ jsx72(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "email", onChange }));
3003
3107
  case "password":
3004
- return /* @__PURE__ */ jsx71(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "password", onChange }));
3108
+ return /* @__PURE__ */ jsx72(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "password", onChange }));
3005
3109
  case "numeric": {
3006
3110
  const numericProps = __spreadProps(__spreadValues({}, commonProps), { type: "number", onWheel });
3007
- return /* @__PURE__ */ jsx71(
3111
+ return /* @__PURE__ */ jsx72(
3008
3112
  TextInput,
3009
3113
  __spreadProps(__spreadValues({}, numericProps), {
3010
3114
  onChange: (newValue) => {
@@ -3015,9 +3119,9 @@ function VariableTextInput(inputProps) {
3015
3119
  );
3016
3120
  }
3017
3121
  case "phone-number":
3018
- return /* @__PURE__ */ jsx71(PhoneNumberInput, __spreadProps(__spreadValues({ initialValue: value }, commonProps), { onChange }));
3122
+ return /* @__PURE__ */ jsx72(PhoneNumberInput, __spreadProps(__spreadValues({ initialValue: value }, commonProps), { onChange }));
3019
3123
  default: {
3020
- return /* @__PURE__ */ jsx71(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "text", onChange }));
3124
+ return /* @__PURE__ */ jsx72(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "text", onChange }));
3021
3125
  }
3022
3126
  }
3023
3127
  }
@@ -3025,11 +3129,11 @@ function TextInput(props) {
3025
3129
  const _a = props, { control, displayFormat, onChange } = _a, commonProps = __objRest(_a, ["control", "displayFormat", "onChange"]);
3026
3130
  const InputWithPattern = control === "textarea" ? TextareaWithDisplayFormat : InputWithDisplayFormat;
3027
3131
  const InputWithoutPattern = control === "textarea" ? TextArea : Input5;
3028
- return displayFormat ? /* @__PURE__ */ jsx71(InputWithPattern, __spreadProps(__spreadValues({ displayPattern: displayFormat }, commonProps), { onChange })) : /* @__PURE__ */ jsx71(InputWithoutPattern, __spreadProps(__spreadValues({}, commonProps), { onChange: (e) => onChange(e.target.value) }));
3132
+ return displayFormat ? /* @__PURE__ */ jsx72(InputWithPattern, __spreadProps(__spreadValues({ displayPattern: displayFormat }, commonProps), { onChange })) : /* @__PURE__ */ jsx72(InputWithoutPattern, __spreadProps(__spreadValues({}, commonProps), { onChange: (e) => onChange(e.target.value) }));
3029
3133
  }
3030
3134
 
3031
3135
  // ../renderers/src/TextInputRenderer.tsx
3032
- import { jsx as jsx72 } from "react/jsx-runtime";
3136
+ import { jsx as jsx73 } from "react/jsx-runtime";
3033
3137
  var TextInputRenderer = {
3034
3138
  canRenderType: "input-text",
3035
3139
  render: (props) => {
@@ -3062,7 +3166,7 @@ var TextInputRenderer = {
3062
3166
  }
3063
3167
  }
3064
3168
  });
3065
- return /* @__PURE__ */ jsx72(
3169
+ return /* @__PURE__ */ jsx73(
3066
3170
  FieldInput_default,
3067
3171
  {
3068
3172
  id,
@@ -3070,7 +3174,7 @@ var TextInputRenderer = {
3070
3174
  description,
3071
3175
  validation: validationState,
3072
3176
  help,
3073
- children: /* @__PURE__ */ jsx72(InputGroup3, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx72(VariableTextInput, __spreadValues({}, inputProps)) })
3177
+ children: /* @__PURE__ */ jsx73(InputGroup3, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx73(VariableTextInput, __spreadValues({}, inputProps)) })
3074
3178
  }
3075
3179
  );
3076
3180
  }
@@ -3084,7 +3188,7 @@ import { Upload, UploadInput as UploadInput2 } from "@transferwise/components";
3084
3188
  var getRandomId = () => Math.random().toString(36).substring(2);
3085
3189
 
3086
3190
  // ../renderers/src/UploadInputRenderer.tsx
3087
- import { jsx as jsx73 } from "react/jsx-runtime";
3191
+ import { jsx as jsx74 } from "react/jsx-runtime";
3088
3192
  var UploadInputRenderer = {
3089
3193
  canRenderType: "input-upload",
3090
3194
  render: (props) => {
@@ -3100,14 +3204,14 @@ var UploadInputRenderer = {
3100
3204
  };
3101
3205
  return (
3102
3206
  // We don't pass help here as there is no sensible place to display it
3103
- /* @__PURE__ */ jsx73(
3207
+ /* @__PURE__ */ jsx74(
3104
3208
  UploadFieldInput_default,
3105
3209
  {
3106
3210
  id,
3107
3211
  label: void 0,
3108
3212
  description: void 0,
3109
3213
  validation: validationState,
3110
- children: /* @__PURE__ */ jsx73(
3214
+ children: /* @__PURE__ */ jsx74(
3111
3215
  UploadInput2,
3112
3216
  {
3113
3217
  id,
@@ -3166,7 +3270,7 @@ var LargeUploadRenderer = {
3166
3270
  };
3167
3271
  const filetypes = acceptsToFileTypes(accepts);
3168
3272
  const usAccept = filetypes === "*" ? "*" : filetypes.join(",");
3169
- return /* @__PURE__ */ jsx73(
3273
+ return /* @__PURE__ */ jsx74(
3170
3274
  FieldInput_default,
3171
3275
  {
3172
3276
  id,
@@ -3174,7 +3278,7 @@ var LargeUploadRenderer = {
3174
3278
  description,
3175
3279
  validation: validationState,
3176
3280
  help,
3177
- children: /* @__PURE__ */ jsx73(
3281
+ children: /* @__PURE__ */ jsx74(
3178
3282
  Upload,
3179
3283
  __spreadProps(__spreadValues({}, uploadProps), {
3180
3284
  usAccept,
@@ -3194,19 +3298,19 @@ import { ListItem as ListItem4 } from "@transferwise/components";
3194
3298
 
3195
3299
  // ../renderers/src/NewListItem/getInlineAlert.tsx
3196
3300
  import { ListItem as ListItem2 } from "@transferwise/components";
3197
- import { jsx as jsx74 } from "react/jsx-runtime";
3198
- var getInlineAlert = (inlineAlert) => inlineAlert ? /* @__PURE__ */ jsx74(ListItem2.Prompt, { sentiment: inlineAlert == null ? void 0 : inlineAlert.context, children: inlineAlert.content }) : void 0;
3301
+ import { jsx as jsx75 } from "react/jsx-runtime";
3302
+ var getInlineAlert = (inlineAlert) => inlineAlert ? /* @__PURE__ */ jsx75(ListItem2.Prompt, { sentiment: inlineAlert == null ? void 0 : inlineAlert.context, children: inlineAlert.content }) : void 0;
3199
3303
 
3200
3304
  // ../renderers/src/NewListItem/getAdditionalInfo.tsx
3201
3305
  import { ListItem as ListItem3 } from "@transferwise/components";
3202
- import { jsx as jsx75 } from "react/jsx-runtime";
3306
+ import { jsx as jsx76 } from "react/jsx-runtime";
3203
3307
  var getAdditionalInfo = (additionalInfo) => {
3204
3308
  if (!additionalInfo) {
3205
3309
  return void 0;
3206
3310
  }
3207
3311
  const { href, text, onClick } = additionalInfo;
3208
3312
  if (href || onClick) {
3209
- return /* @__PURE__ */ jsx75(
3313
+ return /* @__PURE__ */ jsx76(
3210
3314
  ListItem3.AdditionalInfo,
3211
3315
  {
3212
3316
  action: {
@@ -3218,7 +3322,7 @@ var getAdditionalInfo = (additionalInfo) => {
3218
3322
  }
3219
3323
  );
3220
3324
  }
3221
- return /* @__PURE__ */ jsx75(ListItem3.AdditionalInfo, { children: additionalInfo == null ? void 0 : additionalInfo.text });
3325
+ return /* @__PURE__ */ jsx76(ListItem3.AdditionalInfo, { children: additionalInfo == null ? void 0 : additionalInfo.text });
3222
3326
  };
3223
3327
 
3224
3328
  // ../renderers/src/NewListItem/shouldUseAvatar.ts
@@ -3228,13 +3332,13 @@ var shouldUseAvatar = (control, tags) => {
3228
3332
  };
3229
3333
 
3230
3334
  // ../renderers/src/NewListItem/NewDecisionRenderer.tsx
3231
- import { Fragment as Fragment10, jsx as jsx76 } from "react/jsx-runtime";
3335
+ import { Fragment as Fragment10, jsx as jsx77 } from "react/jsx-runtime";
3232
3336
  var DecisionRenderer2 = {
3233
3337
  canRenderType: "decision",
3234
- render: (props) => /* @__PURE__ */ jsx76(DecisionWrapper, __spreadProps(__spreadValues({}, props), { renderDecisionList: renderDecisionList2 }))
3338
+ render: (props) => /* @__PURE__ */ jsx77(DecisionWrapper, __spreadProps(__spreadValues({}, props), { renderDecisionList: renderDecisionList2 }))
3235
3339
  };
3236
3340
  var renderDecisionList2 = ({ options, control }) => {
3237
- return /* @__PURE__ */ jsx76(Fragment10, { children: options.map((_a) => {
3341
+ return /* @__PURE__ */ jsx77(Fragment10, { children: options.map((_a) => {
3238
3342
  var _b = _a, { disabled, onClick } = _b, rest = __objRest(_b, ["disabled", "onClick"]);
3239
3343
  const {
3240
3344
  description,
@@ -3246,7 +3350,7 @@ var renderDecisionList2 = ({ options, control }) => {
3246
3350
  supportingValues,
3247
3351
  tags
3248
3352
  } = rest;
3249
- return /* @__PURE__ */ jsx76(
3353
+ return /* @__PURE__ */ jsx77(
3250
3354
  ListItem4,
3251
3355
  {
3252
3356
  title: itemTitle,
@@ -3258,7 +3362,7 @@ var renderDecisionList2 = ({ options, control }) => {
3258
3362
  media: getMedia(media, shouldUseAvatar(control, tags)),
3259
3363
  prompt: getInlineAlert(inlineAlert),
3260
3364
  additionalInfo: additionalText ? getAdditionalInfo({ text: additionalText }) : void 0,
3261
- control: href ? /* @__PURE__ */ jsx76(ListItem4.Navigation, { href, target: "_blank" }) : /* @__PURE__ */ jsx76(ListItem4.Navigation, { onClick })
3365
+ control: href ? /* @__PURE__ */ jsx77(ListItem4.Navigation, { href, target: "_blank" }) : /* @__PURE__ */ jsx77(ListItem4.Navigation, { onClick })
3262
3366
  },
3263
3367
  JSON.stringify(rest)
3264
3368
  );
@@ -3271,7 +3375,7 @@ import { ListItem as ListItem6 } from "@transferwise/components";
3271
3375
 
3272
3376
  // ../renderers/src/NewListItem/getCTAControl.tsx
3273
3377
  import { ListItem as ListItem5 } from "@transferwise/components";
3274
- import { jsx as jsx77 } from "react/jsx-runtime";
3378
+ import { jsx as jsx78 } from "react/jsx-runtime";
3275
3379
  var getCTAControl = (callToAction, { ctaSecondary, fullyInteractive }) => {
3276
3380
  if (!callToAction) {
3277
3381
  return void 0;
@@ -3279,7 +3383,7 @@ var getCTAControl = (callToAction, { ctaSecondary, fullyInteractive }) => {
3279
3383
  const { accessibilityDescription, href, title, onClick } = callToAction;
3280
3384
  const priority = ctaSecondary ? "secondary" : "secondary-neutral";
3281
3385
  if (href) {
3282
- return /* @__PURE__ */ jsx77(
3386
+ return /* @__PURE__ */ jsx78(
3283
3387
  ListItem5.Button,
3284
3388
  {
3285
3389
  href,
@@ -3290,7 +3394,7 @@ var getCTAControl = (callToAction, { ctaSecondary, fullyInteractive }) => {
3290
3394
  }
3291
3395
  );
3292
3396
  }
3293
- return /* @__PURE__ */ jsx77(
3397
+ return /* @__PURE__ */ jsx78(
3294
3398
  ListItem5.Button,
3295
3399
  {
3296
3400
  "aria-description": accessibilityDescription,
@@ -3303,11 +3407,11 @@ var getCTAControl = (callToAction, { ctaSecondary, fullyInteractive }) => {
3303
3407
  };
3304
3408
 
3305
3409
  // ../renderers/src/NewListItem/NewListRenderer.tsx
3306
- import { jsx as jsx78, jsxs as jsxs30 } from "react/jsx-runtime";
3410
+ import { jsx as jsx79, jsxs as jsxs30 } from "react/jsx-runtime";
3307
3411
  var ListRenderer2 = {
3308
3412
  canRenderType: "list",
3309
3413
  render: ({ callToAction, control, margin, items, tags, title }) => /* @__PURE__ */ jsxs30("div", { className: getMargin(margin), children: [
3310
- /* @__PURE__ */ jsx78(Header7, { title, callToAction }),
3414
+ /* @__PURE__ */ jsx79(Header7, { title, callToAction }),
3311
3415
  items.map((item) => {
3312
3416
  var _a, _b;
3313
3417
  const {
@@ -3324,7 +3428,7 @@ var ListRenderer2 = {
3324
3428
  ctaSecondary: (_a = itemTags == null ? void 0 : itemTags.includes("cta-secondary")) != null ? _a : false,
3325
3429
  fullyInteractive: (_b = (tags == null ? void 0 : tags.includes("fully-interactive")) && (additionalInfo == null ? void 0 : additionalInfo.onClick) == null) != null ? _b : false
3326
3430
  };
3327
- return /* @__PURE__ */ jsx78(
3431
+ return /* @__PURE__ */ jsx79(
3328
3432
  ListItem6,
3329
3433
  {
3330
3434
  title: itemTitle,
@@ -3346,7 +3450,7 @@ var NewListRenderer_default = ListRenderer2;
3346
3450
  // ../renderers/src/NewListItem/NewReviewRenderer.tsx
3347
3451
  import { ListItem as ListItem7, Markdown as Markdown6, Popover } from "@transferwise/components";
3348
3452
  import { QuestionMarkCircle } from "@transferwise/icons";
3349
- import { jsx as jsx79, jsxs as jsxs31 } from "react/jsx-runtime";
3453
+ import { jsx as jsx80, jsxs as jsxs31 } from "react/jsx-runtime";
3350
3454
  var IGNORED_CONTROLS = [
3351
3455
  "horizontal",
3352
3456
  "horizontal-end-aligned",
@@ -3357,7 +3461,7 @@ var ReviewRenderer2 = {
3357
3461
  canRenderType: "review",
3358
3462
  canRender: ({ control }) => control ? !IGNORED_CONTROLS.includes(control) : true,
3359
3463
  render: ({ callToAction, control, margin, fields, tags, title }) => /* @__PURE__ */ jsxs31("div", { className: getMargin(margin), children: [
3360
- /* @__PURE__ */ jsx79(Header7, { title, callToAction }),
3464
+ /* @__PURE__ */ jsx80(Header7, { title, callToAction }),
3361
3465
  fields.map((field) => {
3362
3466
  var _a, _b, _c;
3363
3467
  const {
@@ -3374,7 +3478,7 @@ var ReviewRenderer2 = {
3374
3478
  ctaSecondary: (_a = itemTags == null ? void 0 : itemTags.includes("cta-secondary")) != null ? _a : false,
3375
3479
  fullyInteractive: (_b = (tags == null ? void 0 : tags.includes("fully-interactive")) && (additionalInfo == null ? void 0 : additionalInfo.onClick) == null) != null ? _b : false
3376
3480
  };
3377
- return /* @__PURE__ */ jsx79(
3481
+ return /* @__PURE__ */ jsx80(
3378
3482
  ListItem7,
3379
3483
  {
3380
3484
  title: value,
@@ -3394,26 +3498,26 @@ var getHelpControl = (help) => {
3394
3498
  if (!help) {
3395
3499
  return void 0;
3396
3500
  }
3397
- return /* @__PURE__ */ jsx79(Popover, { content: /* @__PURE__ */ jsx79(Markdown6, { config: { link: { target: "_blank" } }, children: help }), children: /* @__PURE__ */ jsx79(ListItem7.IconButton, { partiallyInteractive: true, children: /* @__PURE__ */ jsx79(QuestionMarkCircle, {}) }) });
3501
+ return /* @__PURE__ */ jsx80(Popover, { content: /* @__PURE__ */ jsx80(Markdown6, { config: { link: { target: "_blank" } }, children: help }), children: /* @__PURE__ */ jsx80(ListItem7.IconButton, { partiallyInteractive: true, children: /* @__PURE__ */ jsx80(QuestionMarkCircle, {}) }) });
3398
3502
  };
3399
3503
  var NewReviewRenderer_default = ReviewRenderer2;
3400
3504
 
3401
3505
  // ../renderers/src/NewListItem/NewStatusListRenderer.tsx
3402
3506
  import { AvatarView as AvatarView4, Header as Header10, ListItem as ListItem8 } from "@transferwise/components";
3403
- import { jsx as jsx80, jsxs as jsxs32 } from "react/jsx-runtime";
3507
+ import { jsx as jsx81, jsxs as jsxs32 } from "react/jsx-runtime";
3404
3508
  var NewStatusListRenderer = {
3405
3509
  canRenderType: "status-list",
3406
3510
  render: ({ margin, items, title }) => /* @__PURE__ */ jsxs32("div", { className: getMargin(margin), children: [
3407
- title ? /* @__PURE__ */ jsx80(Header10, { title }) : null,
3511
+ title ? /* @__PURE__ */ jsx81(Header10, { title }) : null,
3408
3512
  items.map((item) => {
3409
3513
  const { callToAction, description, icon, status, title: itemTitle } = item;
3410
- return /* @__PURE__ */ jsx80(
3514
+ return /* @__PURE__ */ jsx81(
3411
3515
  ListItem8,
3412
3516
  {
3413
3517
  title: itemTitle,
3414
3518
  subtitle: description,
3415
- media: icon && "name" in icon ? /* @__PURE__ */ jsx80(AvatarView4, { badge: { status: mapStatus2(status) }, children: /* @__PURE__ */ jsx80(DynamicIcon_default, { name: icon.name }) }) : void 0,
3416
- additionalInfo: callToAction ? /* @__PURE__ */ jsx80(
3519
+ media: icon && "name" in icon ? /* @__PURE__ */ jsx81(AvatarView4, { badge: { status: mapStatus2(status) }, children: /* @__PURE__ */ jsx81(DynamicIcon_default, { name: icon.name }) }) : void 0,
3520
+ additionalInfo: callToAction ? /* @__PURE__ */ jsx81(
3417
3521
  ListItem8.AdditionalInfo,
3418
3522
  {
3419
3523
  action: {
@@ -3450,8 +3554,8 @@ var validPriorities = ["primary", "secondary", "secondary-neutral", "tertiary"];
3450
3554
  var isButtonPriority = (control) => validPriorities.includes(control);
3451
3555
 
3452
3556
  // ../renderers/src/ButtonRenderer/ButtonRendererV2.tsx
3453
- import { useEffect as useEffect8, useState as useState12 } from "react";
3454
- import { jsx as jsx81 } from "react/jsx-runtime";
3557
+ import { useEffect as useEffect9, useState as useState12 } from "react";
3558
+ import { jsx as jsx82 } from "react/jsx-runtime";
3455
3559
  var ButtonRendererV2 = {
3456
3560
  canRenderType: "button",
3457
3561
  render: ButtonComponent2
@@ -3459,13 +3563,13 @@ var ButtonRendererV2 = {
3459
3563
  function ButtonComponent2(props) {
3460
3564
  const { control, context, disabled, margin, title, size, stepLoadingState, onClick } = props;
3461
3565
  const [spinny, setSpinny] = useState12(false);
3462
- useEffect8(() => {
3566
+ useEffect9(() => {
3463
3567
  if (stepLoadingState === "idle") {
3464
3568
  setSpinny(false);
3465
3569
  }
3466
3570
  }, [stepLoadingState]);
3467
3571
  const loading = spinny && stepLoadingState !== "idle";
3468
- return /* @__PURE__ */ jsx81(
3572
+ return /* @__PURE__ */ jsx82(
3469
3573
  Button8,
3470
3574
  {
3471
3575
  v2: true,
@@ -3489,16 +3593,16 @@ var getPriority3 = (control) => control && isButtonPriority(control) ? control :
3489
3593
 
3490
3594
  // ../renderers/src/ProgressRenderer.tsx
3491
3595
  import { ProgressBar } from "@transferwise/components";
3492
- import { jsx as jsx82 } from "react/jsx-runtime";
3596
+ import { jsx as jsx83 } from "react/jsx-runtime";
3493
3597
  var ProgressRenderer = {
3494
3598
  canRenderType: "progress",
3495
3599
  render: ({ uid, title, help, progress, progressText, margin, description }) => {
3496
- return /* @__PURE__ */ jsx82(
3600
+ return /* @__PURE__ */ jsx83(
3497
3601
  ProgressBar,
3498
3602
  {
3499
3603
  id: uid,
3500
3604
  className: getMargin(margin),
3501
- title: title && help ? /* @__PURE__ */ jsx82(LabelContentWithHelp, { text: title, help }) : title,
3605
+ title: title && help ? /* @__PURE__ */ jsx83(LabelContentWithHelp, { text: title, help }) : title,
3502
3606
  description,
3503
3607
  progress: {
3504
3608
  max: 1,
@@ -3541,6 +3645,7 @@ var getWiseRenderers = () => [
3541
3645
  MarkdownRenderer_default,
3542
3646
  ModalRenderer,
3543
3647
  ModalLayoutRenderer_default,
3648
+ MoneyInputRenderer,
3544
3649
  MultiSelectInputRenderer_default,
3545
3650
  MultiUploadInputRenderer_default,
3546
3651
  NumberInputRenderer_default,
@@ -3591,13 +3696,6 @@ var cs_default = {
3591
3696
  "df.wise.ControlFeedback.type": "Nespr\xE1vn\xFD typ",
3592
3697
  "df.wise.CopyFeedback.copy": "Zkop\xEDrov\xE1no do schr\xE1nky",
3593
3698
  "df.wise.CopyFeedback.copyFailed": "Kop\xEDrov\xE1n\xED do schr\xE1nky se nezda\u0159ilo",
3594
- "df.wise.Decision.all": "V\u0161e",
3595
- "df.wise.Decision.currenciesWithAccountDetails": "M\u011Bny s detaily \xFA\u010Dtu",
3596
- "df.wise.Decision.filterPlaceholder": "Pro vyhled\xE1v\xE1n\xED za\u010Dn\u011Bte ps\xE1t",
3597
- "df.wise.Decision.noResults": "\u017D\xE1dn\xE9 v\xFDsledky",
3598
- "df.wise.Decision.popular": "Popul\xE1rn\xED",
3599
- "df.wise.Decision.recent": "Ned\xE1vn\xE9",
3600
- "df.wise.Decision.results": "V\xFDsledky hled\xE1n\xED",
3601
3699
  "df.wise.DynamicParagraph.copied": "Zkop\xEDrov\xE1no do schr\xE1nky",
3602
3700
  "df.wise.DynamicParagraph.copy": "Kop\xEDrovat",
3603
3701
  "df.wise.ErrorBoundary.errorAlert": "N\u011Bco se pokazilo.",
@@ -3612,7 +3710,14 @@ var cs_default = {
3612
3710
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Nahrajte {maxItems} nebo m\xE9n\u011B soubor\u016F.",
3613
3711
  "df.wise.MultipleFileUploadSchema.minItemsError": "Nahrajte pros\xEDm alespo\u0148 n\xE1sleduj\xEDc\xED po\u010Det soubor\u016F: {minItems}.",
3614
3712
  "df.wise.PersistAsyncSchema.genericError": "N\u011Bco se pokazilo. Zkuste to pros\xEDm znovu.",
3615
- "df.wise.SearchLayout.loading": "Na\u010D\xEDt\xE1n\xED..."
3713
+ "df.wise.SearchLayout.loading": "Na\u010D\xEDt\xE1n\xED...",
3714
+ "df.wise.filter.noResults": "\u017D\xE1dn\xE9 v\xFDsledky",
3715
+ "df.wise.filter.placeholder": "Pro vyhled\xE1v\xE1n\xED za\u010Dn\u011Bte ps\xE1t",
3716
+ "df.wise.filter.results": "V\xFDsledky vyhled\xE1v\xE1n\xED",
3717
+ "df.wise.group.all": "V\u0161e",
3718
+ "df.wise.group.currencies-with-account-details": "M\u011Bny s detaily \xFA\u010Dtu",
3719
+ "df.wise.group.popular": "Popul\xE1rn\xED",
3720
+ "df.wise.group.recent": "Ned\xE1vn\xE9"
3616
3721
  };
3617
3722
 
3618
3723
  // src/i18n/de.json
@@ -3636,13 +3741,6 @@ var de_default = {
3636
3741
  "df.wise.ControlFeedback.type": "Falscher Typ",
3637
3742
  "df.wise.CopyFeedback.copy": "In Zwischenablage kopiert",
3638
3743
  "df.wise.CopyFeedback.copyFailed": "Kopieren in Zwischenablage fehlgeschlagen",
3639
- "df.wise.Decision.all": "Alle",
3640
- "df.wise.Decision.currenciesWithAccountDetails": "Guthaben mit Bankverbindung",
3641
- "df.wise.Decision.filterPlaceholder": "Gib etwas ein, um die Suche zu beginnen",
3642
- "df.wise.Decision.noResults": "Keine Ergebnisse",
3643
- "df.wise.Decision.popular": "Beliebt",
3644
- "df.wise.Decision.recent": "Neu",
3645
- "df.wise.Decision.results": "Suchergebnisse",
3646
3744
  "df.wise.DynamicParagraph.copied": "In Zwischenablage kopiert",
3647
3745
  "df.wise.DynamicParagraph.copy": "Kopieren",
3648
3746
  "df.wise.ErrorBoundary.errorAlert": "Da ist etwas schiefgegangen.",
@@ -3657,7 +3755,14 @@ var de_default = {
3657
3755
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Bitte lade {maxItems} oder weniger Dateien hoch.",
3658
3756
  "df.wise.MultipleFileUploadSchema.minItemsError": "Bitte lade mindestens {minItems} Datei(en) hoch.",
3659
3757
  "df.wise.PersistAsyncSchema.genericError": "Da ist etwas schiefgegangen. Versuche es bitte nochmal.",
3660
- "df.wise.SearchLayout.loading": "L\xE4dt..."
3758
+ "df.wise.SearchLayout.loading": "L\xE4dt...",
3759
+ "df.wise.filter.noResults": "Keine Ergebnisse",
3760
+ "df.wise.filter.placeholder": "Gib etwas ein, um die Suche zu beginnen",
3761
+ "df.wise.filter.results": "Suchergebnisse",
3762
+ "df.wise.group.all": "Alle",
3763
+ "df.wise.group.currencies-with-account-details": "Guthaben mit Bankverbindung",
3764
+ "df.wise.group.popular": "Beliebt",
3765
+ "df.wise.group.recent": "Neu"
3661
3766
  };
3662
3767
 
3663
3768
  // src/i18n/en.json
@@ -3681,13 +3786,6 @@ var en_default = {
3681
3786
  "df.wise.ControlFeedback.type": "Incorrect type",
3682
3787
  "df.wise.CopyFeedback.copy": "Copied to clipboard",
3683
3788
  "df.wise.CopyFeedback.copyFailed": "Failed to copy to clipboard",
3684
- "df.wise.Decision.all": "All",
3685
- "df.wise.Decision.currenciesWithAccountDetails": "Currencies with account details",
3686
- "df.wise.Decision.filterPlaceholder": "Start typing to search",
3687
- "df.wise.Decision.noResults": "No results",
3688
- "df.wise.Decision.popular": "Popular",
3689
- "df.wise.Decision.recent": "Recent",
3690
- "df.wise.Decision.results": "Search results",
3691
3789
  "df.wise.DynamicParagraph.copied": "Copied to clipboard",
3692
3790
  "df.wise.DynamicParagraph.copy": "Copy",
3693
3791
  "df.wise.ErrorBoundary.errorAlert": "Something went wrong.",
@@ -3702,7 +3800,14 @@ var en_default = {
3702
3800
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Please upload {maxItems} or fewer files.",
3703
3801
  "df.wise.MultipleFileUploadSchema.minItemsError": "Please upload at least {minItems} file(s).",
3704
3802
  "df.wise.PersistAsyncSchema.genericError": "Something went wrong, please try again.",
3705
- "df.wise.SearchLayout.loading": "Loading..."
3803
+ "df.wise.SearchLayout.loading": "Loading...",
3804
+ "df.wise.filter.noResults": "No results",
3805
+ "df.wise.filter.placeholder": "Start typing to search",
3806
+ "df.wise.filter.results": "Search results",
3807
+ "df.wise.group.all": "All",
3808
+ "df.wise.group.currencies-with-account-details": "Currencies with account details",
3809
+ "df.wise.group.popular": "Popular",
3810
+ "df.wise.group.recent": "Recent"
3706
3811
  };
3707
3812
 
3708
3813
  // src/i18n/es.json
@@ -3726,13 +3831,6 @@ var es_default = {
3726
3831
  "df.wise.ControlFeedback.type": "Tipo incorrecto",
3727
3832
  "df.wise.CopyFeedback.copy": "Copiado al portapapeles",
3728
3833
  "df.wise.CopyFeedback.copyFailed": "Error al copiar al portapapeles",
3729
- "df.wise.Decision.all": "Todas",
3730
- "df.wise.Decision.currenciesWithAccountDetails": "Divisas con datos de cuenta",
3731
- "df.wise.Decision.filterPlaceholder": "Empieza a escribir para buscar",
3732
- "df.wise.Decision.noResults": "No hay resultados",
3733
- "df.wise.Decision.popular": "Populares",
3734
- "df.wise.Decision.recent": "Recientes",
3735
- "df.wise.Decision.results": "Resultados de b\xFAsqueda",
3736
3834
  "df.wise.DynamicParagraph.copied": "Copiado al portapapeles",
3737
3835
  "df.wise.DynamicParagraph.copy": "Copiar",
3738
3836
  "df.wise.ErrorBoundary.errorAlert": "Ha habido un error.",
@@ -3747,7 +3845,14 @@ var es_default = {
3747
3845
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Sube {maxItems} o menos archivos.",
3748
3846
  "df.wise.MultipleFileUploadSchema.minItemsError": "Sube al menos {minItems} archivo(s).",
3749
3847
  "df.wise.PersistAsyncSchema.genericError": "Ha habido un error. Int\xE9ntalo de nuevo.",
3750
- "df.wise.SearchLayout.loading": "Cargando..."
3848
+ "df.wise.SearchLayout.loading": "Cargando...",
3849
+ "df.wise.filter.noResults": "No hay resultados",
3850
+ "df.wise.filter.placeholder": "Empieza a escribir para buscar",
3851
+ "df.wise.filter.results": "Resultados de b\xFAsqueda",
3852
+ "df.wise.group.all": "Todas",
3853
+ "df.wise.group.currencies-with-account-details": "Divisas con datos de cuenta",
3854
+ "df.wise.group.popular": "Populares",
3855
+ "df.wise.group.recent": "Recientes"
3751
3856
  };
3752
3857
 
3753
3858
  // src/i18n/fr.json
@@ -3771,13 +3876,6 @@ var fr_default = {
3771
3876
  "df.wise.ControlFeedback.type": "Type incorrect",
3772
3877
  "df.wise.CopyFeedback.copy": "Copi\xE9 dans le presse-papier",
3773
3878
  "df.wise.CopyFeedback.copyFailed": "Impossible de copier dans le presse-papier",
3774
- "df.wise.Decision.all": "Toutes",
3775
- "df.wise.Decision.currenciesWithAccountDetails": "Devises avec num\xE9ros de compte",
3776
- "df.wise.Decision.filterPlaceholder": "Commencez \xE0 \xE9crire pour effectuer une recherche",
3777
- "df.wise.Decision.noResults": "Aucun r\xE9sultat",
3778
- "df.wise.Decision.popular": "Populaires",
3779
- "df.wise.Decision.recent": "R\xE9cents",
3780
- "df.wise.Decision.results": "R\xE9sultats de recherche",
3781
3879
  "df.wise.DynamicParagraph.copied": "Copi\xE9 dans le presse-papier",
3782
3880
  "df.wise.DynamicParagraph.copy": "Copier",
3783
3881
  "df.wise.ErrorBoundary.errorAlert": "Une erreur s'est produite.",
@@ -3792,7 +3890,14 @@ var fr_default = {
3792
3890
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Veuillez t\xE9l\xE9charger {maxItems} fichiers ou moins.",
3793
3891
  "df.wise.MultipleFileUploadSchema.minItemsError": "Veuillez t\xE9l\xE9charger au moins {minItems} fichier(s).",
3794
3892
  "df.wise.PersistAsyncSchema.genericError": "Une erreur s'est produite, veuillez r\xE9essayer.",
3795
- "df.wise.SearchLayout.loading": "Chargement..."
3893
+ "df.wise.SearchLayout.loading": "Chargement...",
3894
+ "df.wise.filter.noResults": "Aucun r\xE9sultat",
3895
+ "df.wise.filter.placeholder": "Commencez \xE0 \xE9crire pour effectuer une recherche",
3896
+ "df.wise.filter.results": "R\xE9sultats de recherche",
3897
+ "df.wise.group.all": "Toutes",
3898
+ "df.wise.group.currencies-with-account-details": "Devises avec num\xE9ros de compte",
3899
+ "df.wise.group.popular": "Populaires",
3900
+ "df.wise.group.recent": "R\xE9cents"
3796
3901
  };
3797
3902
 
3798
3903
  // src/i18n/hu.json
@@ -3816,13 +3921,6 @@ var hu_default = {
3816
3921
  "df.wise.ControlFeedback.type": "Helytelen t\xEDpus",
3817
3922
  "df.wise.CopyFeedback.copy": "V\xE1g\xF3lapra m\xE1solva",
3818
3923
  "df.wise.CopyFeedback.copyFailed": "Nem siker\xFClt a v\xE1g\xF3lapra m\xE1solni",
3819
- "df.wise.Decision.all": "\xD6sszes",
3820
- "df.wise.Decision.currenciesWithAccountDetails": "P\xE9nznemek sz\xE1mlaadatokkal",
3821
- "df.wise.Decision.filterPlaceholder": "Kezdj el g\xE9pelni a keres\xE9shez",
3822
- "df.wise.Decision.noResults": "Nincs tal\xE1lat",
3823
- "df.wise.Decision.popular": "N\xE9pszer\u0171",
3824
- "df.wise.Decision.recent": "Legut\xF3bbi",
3825
- "df.wise.Decision.results": "Keres\xE9si eredm\xE9nyek",
3826
3924
  "df.wise.DynamicParagraph.copied": "V\xE1g\xF3lapra m\xE1solva",
3827
3925
  "df.wise.DynamicParagraph.copy": "M\xE1sol\xE1s",
3828
3926
  "df.wise.ErrorBoundary.errorAlert": "Valami hiba t\xF6rt\xE9nt.",
@@ -3837,7 +3935,14 @@ var hu_default = {
3837
3935
  "df.wise.MultipleFileUploadSchema.maxItemsError": "K\xE9r\xFCnk, hogy legfeljebb {maxItems} f\xE1jlt t\xF6lts fel.",
3838
3936
  "df.wise.MultipleFileUploadSchema.minItemsError": "K\xE9r\xFCnk, hogy legal\xE1bb {minItems} f\xE1jlt t\xF6lts fel.",
3839
3937
  "df.wise.PersistAsyncSchema.genericError": "Valami hiba t\xF6rt\xE9nt. K\xE9r\xFCnk, pr\xF3b\xE1ld \xFAjra.",
3840
- "df.wise.SearchLayout.loading": "Bet\xF6lt\xE9s..."
3938
+ "df.wise.SearchLayout.loading": "Bet\xF6lt\xE9s...",
3939
+ "df.wise.filter.noResults": "Nincs tal\xE1lat",
3940
+ "df.wise.filter.placeholder": "Kezdj el g\xE9pelni a keres\xE9shez",
3941
+ "df.wise.filter.results": "Keres\xE9si eredm\xE9nyek",
3942
+ "df.wise.group.all": "\xD6sszes",
3943
+ "df.wise.group.currencies-with-account-details": "P\xE9nznemek sz\xE1mlaadatokkal",
3944
+ "df.wise.group.popular": "N\xE9pszer\u0171",
3945
+ "df.wise.group.recent": "Legut\xF3bbi"
3841
3946
  };
3842
3947
 
3843
3948
  // src/i18n/id.json
@@ -3861,13 +3966,6 @@ var id_default = {
3861
3966
  "df.wise.ControlFeedback.type": "Tipe salah",
3862
3967
  "df.wise.CopyFeedback.copy": "Disalin ke clipboard",
3863
3968
  "df.wise.CopyFeedback.copyFailed": "Gagal menyalin ke clipboard",
3864
- "df.wise.Decision.all": "Semua",
3865
- "df.wise.Decision.currenciesWithAccountDetails": "Mata uang dengan detail rekening",
3866
- "df.wise.Decision.filterPlaceholder": "Mulai mengetik untuk mencari",
3867
- "df.wise.Decision.noResults": "Tidak ada hasil",
3868
- "df.wise.Decision.popular": "Populer",
3869
- "df.wise.Decision.recent": "Terbaru",
3870
- "df.wise.Decision.results": "Hasil pencarian",
3871
3969
  "df.wise.DynamicParagraph.copied": "Disalin ke clipboard",
3872
3970
  "df.wise.DynamicParagraph.copy": "Salin",
3873
3971
  "df.wise.ErrorBoundary.errorAlert": "Terjadi kesalahan.",
@@ -3882,7 +3980,14 @@ var id_default = {
3882
3980
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Harap unggah {maxItems} file atau kurang.",
3883
3981
  "df.wise.MultipleFileUploadSchema.minItemsError": "Harap unggah sedikitnya {minItems} file.",
3884
3982
  "df.wise.PersistAsyncSchema.genericError": "Terjadi kesalahan, mohon coba lagi.",
3885
- "df.wise.SearchLayout.loading": "Memuat ..."
3983
+ "df.wise.SearchLayout.loading": "Memuat ...",
3984
+ "df.wise.filter.noResults": "Tidak ada hasil",
3985
+ "df.wise.filter.placeholder": "Mulai mengetik untuk mencari",
3986
+ "df.wise.filter.results": "Hasil pencarian",
3987
+ "df.wise.group.all": "Semua",
3988
+ "df.wise.group.currencies-with-account-details": "Mata uang dengan detail rekening",
3989
+ "df.wise.group.popular": "Populer",
3990
+ "df.wise.group.recent": "Terbaru"
3886
3991
  };
3887
3992
 
3888
3993
  // src/i18n/it.json
@@ -3906,13 +4011,6 @@ var it_default = {
3906
4011
  "df.wise.ControlFeedback.type": "Tipo errato",
3907
4012
  "df.wise.CopyFeedback.copy": "Copiato negli appunti",
3908
4013
  "df.wise.CopyFeedback.copyFailed": "Impossibile copiare negli appunti",
3909
- "df.wise.Decision.all": "Tutte",
3910
- "df.wise.Decision.currenciesWithAccountDetails": "Valute con estremi del conto",
3911
- "df.wise.Decision.filterPlaceholder": "Inizia a digitare per cercare",
3912
- "df.wise.Decision.noResults": "Nessun risultato",
3913
- "df.wise.Decision.popular": "Popolari",
3914
- "df.wise.Decision.recent": "Recenti",
3915
- "df.wise.Decision.results": "Risultati della ricerca",
3916
4014
  "df.wise.DynamicParagraph.copied": "Copiato negli appunti",
3917
4015
  "df.wise.DynamicParagraph.copy": "Copia",
3918
4016
  "df.wise.ErrorBoundary.errorAlert": "Qualcosa non ha funzionato.",
@@ -3927,7 +4025,14 @@ var it_default = {
3927
4025
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Carica al massimo {maxItems} file.",
3928
4026
  "df.wise.MultipleFileUploadSchema.minItemsError": "Carica almeno {minItems} file.",
3929
4027
  "df.wise.PersistAsyncSchema.genericError": "Qualcosa \xE8 andato storto. Riprova.",
3930
- "df.wise.SearchLayout.loading": "Caricamento..."
4028
+ "df.wise.SearchLayout.loading": "Caricamento...",
4029
+ "df.wise.filter.noResults": "Nessun risultato",
4030
+ "df.wise.filter.placeholder": "Inizia a digitare per cercare",
4031
+ "df.wise.filter.results": "Risultati della ricerca",
4032
+ "df.wise.group.all": "Tutte",
4033
+ "df.wise.group.currencies-with-account-details": "Valute con estremi del conto",
4034
+ "df.wise.group.popular": "Popolari",
4035
+ "df.wise.group.recent": "Recenti"
3931
4036
  };
3932
4037
 
3933
4038
  // src/i18n/ja.json
@@ -3951,13 +4056,6 @@ var ja_default = {
3951
4056
  "df.wise.ControlFeedback.type": "\u4E0D\u6B63\u306A\u30BF\u30A4\u30D7",
3952
4057
  "df.wise.CopyFeedback.copy": "\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u3078\u30B3\u30D4\u30FC\u3057\u307E\u3057\u305F",
3953
4058
  "df.wise.CopyFeedback.copyFailed": "\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u306B\u30B3\u30D4\u30FC\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F",
3954
- "df.wise.Decision.all": "\u3059\u3079\u3066",
3955
- "df.wise.Decision.currenciesWithAccountDetails": "\u53E3\u5EA7\u60C5\u5831\u3092\u53D6\u5F97\u3067\u304D\u308B\u901A\u8CA8",
3956
- "df.wise.Decision.filterPlaceholder": "\u691C\u7D22\u8A9E\u53E5\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",
3957
- "df.wise.Decision.noResults": "\u691C\u7D22\u7D50\u679C\u304C\u3042\u308A\u307E\u305B\u3093",
3958
- "df.wise.Decision.popular": "\u4EBA\u6C17",
3959
- "df.wise.Decision.recent": "\u6700\u8FD1",
3960
- "df.wise.Decision.results": "\u691C\u7D22\u7D50\u679C",
3961
4059
  "df.wise.DynamicParagraph.copied": "\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u3078\u30B3\u30D4\u30FC\u3057\u307E\u3057\u305F",
3962
4060
  "df.wise.DynamicParagraph.copy": "\u30B3\u30D4\u30FC\u3059\u308B",
3963
4061
  "df.wise.ErrorBoundary.errorAlert": "\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002",
@@ -3972,7 +4070,14 @@ var ja_default = {
3972
4070
  "df.wise.MultipleFileUploadSchema.maxItemsError": "{maxItems}\u500B\u4EE5\u4E0B\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
3973
4071
  "df.wise.MultipleFileUploadSchema.minItemsError": "{minItems}\u500B\u4EE5\u4E0A\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
3974
4072
  "df.wise.PersistAsyncSchema.genericError": "\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u518D\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002",
3975
- "df.wise.SearchLayout.loading": "\u8AAD\u307F\u8FBC\u307F\u4E2D\u2026"
4073
+ "df.wise.SearchLayout.loading": "\u8AAD\u307F\u8FBC\u307F\u4E2D\u2026",
4074
+ "df.wise.filter.noResults": "\u691C\u7D22\u7D50\u679C\u304C\u3042\u308A\u307E\u305B\u3093",
4075
+ "df.wise.filter.placeholder": "\u691C\u7D22\u8A9E\u53E5\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",
4076
+ "df.wise.filter.results": "\u691C\u7D22\u7D50\u679C",
4077
+ "df.wise.group.all": "\u3059\u3079\u3066",
4078
+ "df.wise.group.currencies-with-account-details": "\u53E3\u5EA7\u60C5\u5831\u3092\u53D6\u5F97\u3067\u304D\u308B\u901A\u8CA8",
4079
+ "df.wise.group.popular": "\u4EBA\u6C17",
4080
+ "df.wise.group.recent": "\u6700\u8FD1"
3976
4081
  };
3977
4082
 
3978
4083
  // src/i18n/nl.json
@@ -3996,13 +4101,6 @@ var nl_default = {
3996
4101
  "df.wise.ControlFeedback.type": "Onjuist type",
3997
4102
  "df.wise.CopyFeedback.copy": "Naar klembord gekopieerd",
3998
4103
  "df.wise.CopyFeedback.copyFailed": "Naar klembord kopi\xEBren mislukt",
3999
- "df.wise.Decision.all": "Alles",
4000
- "df.wise.Decision.currenciesWithAccountDetails": "Valuta met rekeninggegevens",
4001
- "df.wise.Decision.filterPlaceholder": "Begin met typen om te zoeken",
4002
- "df.wise.Decision.noResults": "Geen resultaten",
4003
- "df.wise.Decision.popular": "Populair",
4004
- "df.wise.Decision.recent": "Recent",
4005
- "df.wise.Decision.results": "Zoekresultaten",
4006
4104
  "df.wise.DynamicParagraph.copied": "Naar klembord gekopieerd",
4007
4105
  "df.wise.DynamicParagraph.copy": "Kopi\xEBren",
4008
4106
  "df.wise.ErrorBoundary.errorAlert": "Er is iets misgegaan.",
@@ -4017,7 +4115,14 @@ var nl_default = {
4017
4115
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Upload {maxItems} of minder bestanden.",
4018
4116
  "df.wise.MultipleFileUploadSchema.minItemsError": "Upload minimaal {minItems} bestand(en).",
4019
4117
  "df.wise.PersistAsyncSchema.genericError": "Er is iets misgegaan, probeer het opnieuw.",
4020
- "df.wise.SearchLayout.loading": "Laden..."
4118
+ "df.wise.SearchLayout.loading": "Laden...",
4119
+ "df.wise.filter.noResults": "Geen resultaten",
4120
+ "df.wise.filter.placeholder": "Begin met typen om te zoeken",
4121
+ "df.wise.filter.results": "Zoekresultaten",
4122
+ "df.wise.group.all": "Alles",
4123
+ "df.wise.group.currencies-with-account-details": "Valuta's met rekeninggegevens",
4124
+ "df.wise.group.popular": "Populair",
4125
+ "df.wise.group.recent": "Recent"
4021
4126
  };
4022
4127
 
4023
4128
  // src/i18n/pl.json
@@ -4041,13 +4146,6 @@ var pl_default = {
4041
4146
  "df.wise.ControlFeedback.type": "Nieprawid\u0142owy typ",
4042
4147
  "df.wise.CopyFeedback.copy": "Skopiowano do schowka",
4043
4148
  "df.wise.CopyFeedback.copyFailed": "Nie uda\u0142o si\u0119 skopiowa\u0107 do schowka",
4044
- "df.wise.Decision.all": "Wszystkie",
4045
- "df.wise.Decision.currenciesWithAccountDetails": "Waluty z danymi bankowymi",
4046
- "df.wise.Decision.filterPlaceholder": "Zacznij pisa\u0107, \u017Ceby wyszuka\u0107",
4047
- "df.wise.Decision.noResults": "Brak wynik\xF3w",
4048
- "df.wise.Decision.popular": "Popularne",
4049
- "df.wise.Decision.recent": "Ostatnie",
4050
- "df.wise.Decision.results": "Wyniki wyszukiwania",
4051
4149
  "df.wise.DynamicParagraph.copied": "Skopiowano do schowka",
4052
4150
  "df.wise.DynamicParagraph.copy": "Kopiuj",
4053
4151
  "df.wise.ErrorBoundary.errorAlert": "Co\u015B posz\u0142o nie tak.",
@@ -4062,7 +4160,14 @@ var pl_default = {
4062
4160
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Prze\u015Blij do {maxItems} plik\xF3w.",
4063
4161
  "df.wise.MultipleFileUploadSchema.minItemsError": "Prze\u015Blij co najmniej nast\u0119puj\u0105c\u0105 liczb\u0119 plik\xF3w: {minItems}.",
4064
4162
  "df.wise.PersistAsyncSchema.genericError": "Wyst\u0105pi\u0142 b\u0142\u0105d, prosimy spr\xF3bowa\u0107 ponownie.",
4065
- "df.wise.SearchLayout.loading": "\u0141adowanie..."
4163
+ "df.wise.SearchLayout.loading": "\u0141adowanie...",
4164
+ "df.wise.filter.noResults": "Brak wynik\xF3w",
4165
+ "df.wise.filter.placeholder": "Zacznij pisa\u0107, \u017Ceby wyszuka\u0107",
4166
+ "df.wise.filter.results": "Wyniki wyszukiwania",
4167
+ "df.wise.group.all": "Wszystkie",
4168
+ "df.wise.group.currencies-with-account-details": "Waluty z danymi bankowymi",
4169
+ "df.wise.group.popular": "Popularne",
4170
+ "df.wise.group.recent": "Ostatnie"
4066
4171
  };
4067
4172
 
4068
4173
  // src/i18n/pt.json
@@ -4086,13 +4191,6 @@ var pt_default = {
4086
4191
  "df.wise.ControlFeedback.type": "Tipo incorreto",
4087
4192
  "df.wise.CopyFeedback.copy": "Copiado",
4088
4193
  "df.wise.CopyFeedback.copyFailed": "Falha ao copiar para \xE1rea de transfer\xEAncia",
4089
- "df.wise.Decision.all": "Todos",
4090
- "df.wise.Decision.currenciesWithAccountDetails": "Moedas com dados de conta",
4091
- "df.wise.Decision.filterPlaceholder": "Comece a digitar para pesquisar",
4092
- "df.wise.Decision.noResults": "Nenhum resultado",
4093
- "df.wise.Decision.popular": "Populares",
4094
- "df.wise.Decision.recent": "Recente",
4095
- "df.wise.Decision.results": "Resultados da busca",
4096
4194
  "df.wise.DynamicParagraph.copied": "Copiado",
4097
4195
  "df.wise.DynamicParagraph.copy": "Copiar",
4098
4196
  "df.wise.ErrorBoundary.errorAlert": "Algo deu errado.",
@@ -4107,7 +4205,14 @@ var pt_default = {
4107
4205
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Por favor, envie {maxItems} ou menos arquivos.",
4108
4206
  "df.wise.MultipleFileUploadSchema.minItemsError": "Por favor, envie pelo menos {minItems} arquivo(s).",
4109
4207
  "df.wise.PersistAsyncSchema.genericError": "Ocorreu um erro. Por favor, tente novamente.",
4110
- "df.wise.SearchLayout.loading": "Carregando..."
4208
+ "df.wise.SearchLayout.loading": "Carregando...",
4209
+ "df.wise.filter.noResults": "Nenhum resultado",
4210
+ "df.wise.filter.placeholder": "Comece a digitar para pesquisar",
4211
+ "df.wise.filter.results": "Resultados da busca",
4212
+ "df.wise.group.all": "Todos",
4213
+ "df.wise.group.currencies-with-account-details": "Moedas com dados de conta",
4214
+ "df.wise.group.popular": "Populares",
4215
+ "df.wise.group.recent": "Recente"
4111
4216
  };
4112
4217
 
4113
4218
  // src/i18n/ro.json
@@ -4131,13 +4236,6 @@ var ro_default = {
4131
4236
  "df.wise.ControlFeedback.type": "Tip incorect",
4132
4237
  "df.wise.CopyFeedback.copy": "Copiat \xEEn clipboard",
4133
4238
  "df.wise.CopyFeedback.copyFailed": "Copierea \xEEn clipboard a e\u0219uat",
4134
- "df.wise.Decision.all": "Toate",
4135
- "df.wise.Decision.currenciesWithAccountDetails": "Monede cu detalii de cont",
4136
- "df.wise.Decision.filterPlaceholder": "\xCEncepe s\u0103 tastezi pentru a c\u0103uta",
4137
- "df.wise.Decision.noResults": "Niciun rezultat",
4138
- "df.wise.Decision.popular": "Populare",
4139
- "df.wise.Decision.recent": "Recente",
4140
- "df.wise.Decision.results": "Rezultatele c\u0103ut\u0103rii",
4141
4239
  "df.wise.DynamicParagraph.copied": "Copiat \xEEn clipboard",
4142
4240
  "df.wise.DynamicParagraph.copy": "Copiaz\u0103",
4143
4241
  "df.wise.ErrorBoundary.errorAlert": "Ceva nu a mers bine.",
@@ -4152,7 +4250,14 @@ var ro_default = {
4152
4250
  "df.wise.MultipleFileUploadSchema.maxItemsError": "Te rug\u0103m s\u0103 \xEEncarci {maxItems} fi\u0219iere sau mai pu\u021Bine.",
4153
4251
  "df.wise.MultipleFileUploadSchema.minItemsError": "Te rug\u0103m s\u0103 \xEEncarci cel pu\u021Bin {minItems} fi\u0219ier(e).",
4154
4252
  "df.wise.PersistAsyncSchema.genericError": "Ceva nu a mers bine, te rug\u0103m s\u0103 \xEEncerci din nou.",
4155
- "df.wise.SearchLayout.loading": "Se \xEEncarc\u0103..."
4253
+ "df.wise.SearchLayout.loading": "Se \xEEncarc\u0103...",
4254
+ "df.wise.filter.noResults": "Niciun rezultat",
4255
+ "df.wise.filter.placeholder": "\xCEncepe s\u0103 tastezi pentru a c\u0103uta",
4256
+ "df.wise.filter.results": "Rezultatele c\u0103ut\u0103rii",
4257
+ "df.wise.group.all": "Toate",
4258
+ "df.wise.group.currencies-with-account-details": "Monede cu detalii de cont",
4259
+ "df.wise.group.popular": "Populare",
4260
+ "df.wise.group.recent": "Recente"
4156
4261
  };
4157
4262
 
4158
4263
  // src/i18n/ru.json
@@ -4176,13 +4281,6 @@ var ru_default = {
4176
4281
  "df.wise.ControlFeedback.type": "\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0442\u0438\u043F",
4177
4282
  "df.wise.CopyFeedback.copy": "\u0421\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u043E \u0432 \u0431\u0443\u0444\u0435\u0440 \u043E\u0431\u043C\u0435\u043D\u0430",
4178
4283
  "df.wise.CopyFeedback.copyFailed": "\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0441\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0432 \u0431\u0443\u0444\u0435\u0440 \u043E\u0431\u043C\u0435\u043D\u0430",
4179
- "df.wise.Decision.all": "\u0412\u0441\u0435",
4180
- "df.wise.Decision.currenciesWithAccountDetails": "\u0412\u0430\u043B\u044E\u0442\u044B \u0441 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u0430\u043C\u0438 \u0441\u0447\u0435\u0442\u0430",
4181
- "df.wise.Decision.filterPlaceholder": "\u041D\u0430\u0447\u043D\u0438\u0442\u0435 \u0432\u0432\u043E\u0434\u0438\u0442\u044C \u0437\u0430\u043F\u0440\u043E\u0441 \u0434\u043B\u044F \u043F\u043E\u0438\u0441\u043A\u0430",
4182
- "df.wise.Decision.noResults": "\u041D\u0435\u0442 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u043E\u0432",
4183
- "df.wise.Decision.popular": "\u041F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u044B\u0435",
4184
- "df.wise.Decision.recent": "\u041D\u0435\u0434\u0430\u0432\u043D\u0438\u0435",
4185
- "df.wise.Decision.results": "\u0420\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u044B \u043F\u043E\u0438\u0441\u043A\u0430",
4186
4284
  "df.wise.DynamicParagraph.copied": "\u0421\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u043E \u0432 \u0431\u0443\u0444\u0435\u0440 \u043E\u0431\u043C\u0435\u043D\u0430",
4187
4285
  "df.wise.DynamicParagraph.copy": "\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C",
4188
4286
  "df.wise.ErrorBoundary.errorAlert": "\u0427\u0442\u043E-\u0442\u043E \u043F\u043E\u0448\u043B\u043E \u043D\u0435 \u0442\u0430\u043A.",
@@ -4197,7 +4295,14 @@ var ru_default = {
4197
4295
  "df.wise.MultipleFileUploadSchema.maxItemsError": "\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435 \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {maxItems} \u0444\u0430\u0439\u043B\u043E\u0432.",
4198
4296
  "df.wise.MultipleFileUploadSchema.minItemsError": "\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435 \u043F\u043E \u043A\u0440\u0430\u0439\u043D\u0435\u0439 \u043C\u0435\u0440\u0435 {minItems} \u0444\u0430\u0439\u043B(-\u0430/\u043E\u0432).",
4199
4297
  "df.wise.PersistAsyncSchema.genericError": "\u0427\u0442\u043E-\u0442\u043E \u043F\u043E\u0448\u043B\u043E \u043D\u0435 \u0442\u0430\u043A, \u043F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 \u0435\u0449\u0435 \u0440\u0430\u0437.",
4200
- "df.wise.SearchLayout.loading": "\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430..."
4298
+ "df.wise.SearchLayout.loading": "\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430...",
4299
+ "df.wise.filter.noResults": "\u041D\u0435\u0442 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u043E\u0432",
4300
+ "df.wise.filter.placeholder": "\u041D\u0430\u0447\u043D\u0438\u0442\u0435 \u0432\u0432\u043E\u0434\u0438\u0442\u044C \u0437\u0430\u043F\u0440\u043E\u0441 \u0434\u043B\u044F \u043F\u043E\u0438\u0441\u043A\u0430",
4301
+ "df.wise.filter.results": "\u0420\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u044B \u043F\u043E\u0438\u0441\u043A\u0430",
4302
+ "df.wise.group.all": "\u0412\u0441\u0435",
4303
+ "df.wise.group.currencies-with-account-details": "\u0412\u0430\u043B\u044E\u0442\u044B \u0441 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u0430\u043C\u0438 \u0441\u0447\u0435\u0442\u0430",
4304
+ "df.wise.group.popular": "\u041F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u044B\u0435",
4305
+ "df.wise.group.recent": "\u041D\u0435\u0434\u0430\u0432\u043D\u0438\u0435"
4201
4306
  };
4202
4307
 
4203
4308
  // src/i18n/th.json
@@ -4221,13 +4326,6 @@ var th_default = {
4221
4326
  "df.wise.ControlFeedback.type": "\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07",
4222
4327
  "df.wise.CopyFeedback.copy": "\u0E04\u0E31\u0E14\u0E25\u0E2D\u0E01\u0E44\u0E1B\u0E22\u0E31\u0E07\u0E04\u0E25\u0E34\u0E1B\u0E1A\u0E2D\u0E23\u0E4C\u0E14",
4223
4328
  "df.wise.CopyFeedback.copyFailed": "\u0E04\u0E31\u0E14\u0E25\u0E2D\u0E01\u0E44\u0E1B\u0E22\u0E31\u0E07\u0E04\u0E25\u0E34\u0E1B\u0E1A\u0E2D\u0E23\u0E4C\u0E14\u0E44\u0E21\u0E48\u0E2A\u0E33\u0E40\u0E23\u0E47\u0E08",
4224
- "df.wise.Decision.all": "\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14",
4225
- "df.wise.Decision.currenciesWithAccountDetails": "\u0E2A\u0E01\u0E38\u0E25\u0E40\u0E07\u0E34\u0E19\u0E15\u0E48\u0E32\u0E07\u0E46 \u0E1E\u0E23\u0E49\u0E2D\u0E21\u0E23\u0E32\u0E22\u0E25\u0E30\u0E40\u0E2D\u0E35\u0E22\u0E14\u0E1A\u0E31\u0E0D\u0E0A\u0E35",
4226
- "df.wise.Decision.filterPlaceholder": "\u0E40\u0E23\u0E34\u0E48\u0E21\u0E1E\u0E34\u0E21\u0E1E\u0E4C\u0E40\u0E1E\u0E37\u0E48\u0E2D\u0E04\u0E49\u0E19\u0E2B\u0E32\u0E40\u0E25\u0E22",
4227
- "df.wise.Decision.noResults": "\u0E44\u0E21\u0E48\u0E21\u0E35\u0E1C\u0E25\u0E25\u0E31\u0E1E\u0E18\u0E4C",
4228
- "df.wise.Decision.popular": "\u0E2A\u0E01\u0E38\u0E25\u0E22\u0E2D\u0E14\u0E19\u0E34\u0E22\u0E21",
4229
- "df.wise.Decision.recent": "\u0E25\u0E48\u0E32\u0E2A\u0E38\u0E14",
4230
- "df.wise.Decision.results": "\u0E1C\u0E25\u0E01\u0E32\u0E23\u0E04\u0E49\u0E19\u0E2B\u0E32",
4231
4329
  "df.wise.DynamicParagraph.copied": "\u0E04\u0E31\u0E14\u0E25\u0E2D\u0E01\u0E44\u0E1B\u0E22\u0E31\u0E07\u0E04\u0E25\u0E34\u0E1B\u0E1A\u0E2D\u0E23\u0E4C\u0E14",
4232
4330
  "df.wise.DynamicParagraph.copy": "\u0E04\u0E31\u0E14\u0E25\u0E2D\u0E01",
4233
4331
  "df.wise.ErrorBoundary.errorAlert": "\u0E40\u0E01\u0E34\u0E14\u0E02\u0E49\u0E2D\u0E1C\u0E34\u0E14\u0E1E\u0E25\u0E32\u0E14\u0E1A\u0E32\u0E07\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E02\u0E36\u0E49\u0E19",
@@ -4242,7 +4340,14 @@ var th_default = {
4242
4340
  "df.wise.MultipleFileUploadSchema.maxItemsError": "\u0E42\u0E1B\u0E23\u0E14\u0E2D\u0E31\u0E1B\u0E42\u0E2B\u0E25\u0E14 {maxItems} \u0E44\u0E1F\u0E25\u0E4C\u0E2B\u0E23\u0E37\u0E2D\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",
4243
4341
  "df.wise.MultipleFileUploadSchema.minItemsError": "\u0E42\u0E1B\u0E23\u0E14\u0E2D\u0E31\u0E1B\u0E42\u0E2B\u0E25\u0E14\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22 {minItems} \u0E44\u0E1F\u0E25\u0E4C",
4244
4342
  "df.wise.PersistAsyncSchema.genericError": "\u0E40\u0E01\u0E34\u0E14\u0E02\u0E49\u0E2D\u0E1C\u0E34\u0E14\u0E1E\u0E25\u0E32\u0E14\u0E1A\u0E32\u0E07\u0E2D\u0E22\u0E48\u0E32\u0E07 \u0E42\u0E1B\u0E23\u0E14\u0E25\u0E2D\u0E07\u0E2D\u0E35\u0E01\u0E04\u0E23\u0E31\u0E49\u0E07",
4245
- "df.wise.SearchLayout.loading": "\u0E01\u0E33\u0E25\u0E31\u0E07\u0E42\u0E2B\u0E25\u0E14..."
4343
+ "df.wise.SearchLayout.loading": "\u0E01\u0E33\u0E25\u0E31\u0E07\u0E42\u0E2B\u0E25\u0E14...",
4344
+ "df.wise.filter.noResults": "\u0E44\u0E21\u0E48\u0E21\u0E35\u0E1C\u0E25\u0E25\u0E31\u0E1E\u0E18\u0E4C",
4345
+ "df.wise.filter.placeholder": "\u0E40\u0E23\u0E34\u0E48\u0E21\u0E1E\u0E34\u0E21\u0E1E\u0E4C\u0E40\u0E1E\u0E37\u0E48\u0E2D\u0E04\u0E49\u0E19\u0E2B\u0E32\u0E40\u0E25\u0E22",
4346
+ "df.wise.filter.results": "\u0E1C\u0E25\u0E01\u0E32\u0E23\u0E04\u0E49\u0E19\u0E2B\u0E32",
4347
+ "df.wise.group.all": "\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14",
4348
+ "df.wise.group.currencies-with-account-details": "\u0E2A\u0E01\u0E38\u0E25\u0E40\u0E07\u0E34\u0E19\u0E15\u0E48\u0E32\u0E07\u0E46 \u0E1E\u0E23\u0E49\u0E2D\u0E21\u0E23\u0E32\u0E22\u0E25\u0E30\u0E40\u0E2D\u0E35\u0E22\u0E14\u0E1A\u0E31\u0E0D\u0E0A\u0E35",
4349
+ "df.wise.group.popular": "\u0E2A\u0E01\u0E38\u0E25\u0E22\u0E2D\u0E14\u0E19\u0E34\u0E22\u0E21",
4350
+ "df.wise.group.recent": "\u0E25\u0E48\u0E32\u0E2A\u0E38\u0E14"
4246
4351
  };
4247
4352
 
4248
4353
  // src/i18n/tr.json
@@ -4266,13 +4371,6 @@ var tr_default = {
4266
4371
  "df.wise.ControlFeedback.type": "Ge\xE7ersiz se\xE7im",
4267
4372
  "df.wise.CopyFeedback.copy": "Panoya kopyaland\u0131",
4268
4373
  "df.wise.CopyFeedback.copyFailed": "Panoya kopyalama ba\u015Far\u0131s\u0131z oldu",
4269
- "df.wise.Decision.all": "T\xFCm\xFC",
4270
- "df.wise.Decision.currenciesWithAccountDetails": "Hesap bilgileri olan bakiyeler",
4271
- "df.wise.Decision.filterPlaceholder": "Aramak i\xE7in yazmaya ba\u015Flay\u0131n",
4272
- "df.wise.Decision.noResults": "Sonu\xE7 yok",
4273
- "df.wise.Decision.popular": "Pop\xFCler",
4274
- "df.wise.Decision.recent": "Yak\u0131n zamanl\u0131",
4275
- "df.wise.Decision.results": "Arama sonu\xE7lar\u0131",
4276
4374
  "df.wise.DynamicParagraph.copied": "Panoya kopyaland\u0131",
4277
4375
  "df.wise.DynamicParagraph.copy": "Kopyala",
4278
4376
  "df.wise.ErrorBoundary.errorAlert": "Bir sorun olu\u015Ftu.",
@@ -4287,7 +4385,14 @@ var tr_default = {
4287
4385
  "df.wise.MultipleFileUploadSchema.maxItemsError": "L\xFCtfen {maxItems} veya daha az dosya y\xFCkleyin.",
4288
4386
  "df.wise.MultipleFileUploadSchema.minItemsError": "L\xFCtfen en az {minItems} dosya y\xFCkleyin.",
4289
4387
  "df.wise.PersistAsyncSchema.genericError": "Bir \u015Feyler ters gitti, l\xFCtfen tekrar deneyin.",
4290
- "df.wise.SearchLayout.loading": "Y\xFCkleniyor..."
4388
+ "df.wise.SearchLayout.loading": "Y\xFCkleniyor...",
4389
+ "df.wise.filter.noResults": "Sonu\xE7 yok",
4390
+ "df.wise.filter.placeholder": "Aramak i\xE7in yazmaya ba\u015Flay\u0131n",
4391
+ "df.wise.filter.results": "Arama sonu\xE7lar\u0131",
4392
+ "df.wise.group.all": "T\xFCm\xFC",
4393
+ "df.wise.group.currencies-with-account-details": "Hesap bilgileri olan bakiyeler",
4394
+ "df.wise.group.popular": "Pop\xFCler",
4395
+ "df.wise.group.recent": "Yak\u0131n zamanl\u0131"
4291
4396
  };
4292
4397
 
4293
4398
  // src/i18n/zh_CN.json
@@ -4311,13 +4416,6 @@ var zh_CN_default = {
4311
4416
  "df.wise.ControlFeedback.type": "\u7C7B\u578B\u9519\u8BEF",
4312
4417
  "df.wise.CopyFeedback.copy": "\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F",
4313
4418
  "df.wise.CopyFeedback.copyFailed": "\u590D\u5236\u5230\u526A\u8D34\u677F\u5931\u8D25",
4314
- "df.wise.Decision.all": "\u5168\u90E8",
4315
- "df.wise.Decision.currenciesWithAccountDetails": "\u5E26\u6709\u8D26\u6237\u8BE6\u7EC6\u4FE1\u606F\u7684\u8D27\u5E01",
4316
- "df.wise.Decision.filterPlaceholder": "\u5F00\u59CB\u8F93\u5165\u4EE5\u641C\u7D22",
4317
- "df.wise.Decision.noResults": "\u6682\u65E0\u7ED3\u679C",
4318
- "df.wise.Decision.popular": "\u70ED\u95E8",
4319
- "df.wise.Decision.recent": "\u6700\u8FD1",
4320
- "df.wise.Decision.results": "\u641C\u7D22\u7ED3\u679C",
4321
4419
  "df.wise.DynamicParagraph.copied": "\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F",
4322
4420
  "df.wise.DynamicParagraph.copy": "\u590D\u5236",
4323
4421
  "df.wise.ErrorBoundary.errorAlert": "\u51FA\u9519\u4E86\u3002",
@@ -4332,7 +4430,14 @@ var zh_CN_default = {
4332
4430
  "df.wise.MultipleFileUploadSchema.maxItemsError": "\u8BF7\u4E0A\u4F20\u4E0D\u8D85\u8FC7 {maxItems} \u4E2A\u6587\u4EF6\u3002",
4333
4431
  "df.wise.MultipleFileUploadSchema.minItemsError": "\u8BF7\u4E0A\u4F20\u81F3\u5C11 {minItems} \u4E2A\u6587\u4EF6\u3002",
4334
4432
  "df.wise.PersistAsyncSchema.genericError": "\u51FA\u9519\u4E86\uFF0C\u8BF7\u91CD\u8BD5\u3002",
4335
- "df.wise.SearchLayout.loading": "\u6B63\u5728\u52A0\u8F7D\u2026"
4433
+ "df.wise.SearchLayout.loading": "\u6B63\u5728\u52A0\u8F7D\u2026",
4434
+ "df.wise.filter.noResults": "\u6682\u65E0\u7ED3\u679C",
4435
+ "df.wise.filter.placeholder": "\u5F00\u59CB\u8F93\u5165\u4EE5\u641C\u7D22",
4436
+ "df.wise.filter.results": "\u641C\u7D22\u7ED3\u679C",
4437
+ "df.wise.group.all": "\u5168\u90E8",
4438
+ "df.wise.group.currencies-with-account-details": "\u5E26\u6709\u8D26\u6237\u8BE6\u7EC6\u4FE1\u606F\u7684\u8D27\u5E01",
4439
+ "df.wise.group.popular": "\u70ED\u95E8",
4440
+ "df.wise.group.recent": "\u6700\u8FD1"
4336
4441
  };
4337
4442
 
4338
4443
  // src/i18n/zh_HK.json
@@ -4356,13 +4461,6 @@ var zh_HK_default = {
4356
4461
  "df.wise.ControlFeedback.type": "\u932F\u8AA4\u7684\u985E\u578B",
4357
4462
  "df.wise.CopyFeedback.copy": "\u8907\u88FD\u5230\u526A\u8CBC\u677F",
4358
4463
  "df.wise.CopyFeedback.copyFailed": "\u7121\u6CD5\u8907\u88FD\u5230\u526A\u8CBC\u677F",
4359
- "df.wise.Decision.all": "\u5168\u90E8",
4360
- "df.wise.Decision.currenciesWithAccountDetails": "\u63D0\u4F9B\u8CEC\u6236\u8CC7\u6599\u7684\u8CA8\u5E63",
4361
- "df.wise.Decision.filterPlaceholder": "\u958B\u59CB\u8F38\u5165\u4EE5\u641C\u5C0B",
4362
- "df.wise.Decision.noResults": "\u6C92\u6709\u7D50\u679C",
4363
- "df.wise.Decision.popular": "\u71B1\u9580",
4364
- "df.wise.Decision.recent": "\u6700\u8FD1\u7684",
4365
- "df.wise.Decision.results": "\u641C\u5C0B\u7D50\u679C",
4366
4464
  "df.wise.DynamicParagraph.copied": "\u8907\u88FD\u5230\u526A\u8CBC\u677F",
4367
4465
  "df.wise.DynamicParagraph.copy": "\u8907\u88FD",
4368
4466
  "df.wise.ErrorBoundary.errorAlert": "\u51FA\u4E86\u4E9B\u554F\u984C\u3002",
@@ -4377,7 +4475,14 @@ var zh_HK_default = {
4377
4475
  "df.wise.MultipleFileUploadSchema.maxItemsError": "\u8ACB\u4E0D\u8981\u4E0A\u8F09\u8D85\u904E{maxItems}\u500B\u6A94\u6848\u3002",
4378
4476
  "df.wise.MultipleFileUploadSchema.minItemsError": "\u8ACB\u4E0A\u8F09\u81F3\u5C11{minItems}\u500B\u6A94\u6848\u3002",
4379
4477
  "df.wise.PersistAsyncSchema.genericError": "\u51FA\u73FE\u4E86\u554F\u984C\uFF0C\u8ACB\u518D\u8A66\u4E00\u6B21\u3002",
4380
- "df.wise.SearchLayout.loading": "\u8F09\u5165\u4E2D\u2026"
4478
+ "df.wise.SearchLayout.loading": "\u8F09\u5165\u4E2D\u2026",
4479
+ "df.wise.filter.noResults": "\u6C92\u6709\u7D50\u679C",
4480
+ "df.wise.filter.placeholder": "\u958B\u59CB\u8F38\u5165\u4EE5\u641C\u5C0B",
4481
+ "df.wise.filter.results": "\u641C\u5C0B\u7D50\u679C",
4482
+ "df.wise.group.all": "\u5168\u90E8",
4483
+ "df.wise.group.currencies-with-account-details": "\u63D0\u4F9B\u8CEC\u6236\u8CC7\u6599\u7684\u8CA8\u5E63",
4484
+ "df.wise.group.popular": "\u71B1\u9580",
4485
+ "df.wise.group.recent": "\u6700\u8FD1\u7684"
4381
4486
  };
4382
4487
 
4383
4488
  // src/i18n/index.ts
@@ -4413,7 +4518,7 @@ var i18n_default = translations;
4413
4518
 
4414
4519
  // src/dynamicFlow/DynamicFlow.tsx
4415
4520
  import { forwardRef, useCallback, useMemo as useMemo2 } from "react";
4416
- import { useIntl as useIntl12 } from "react-intl";
4521
+ import { useIntl as useIntl13 } from "react-intl";
4417
4522
  import {
4418
4523
  DynamicFlow as DynamicFlowCoreLegacy,
4419
4524
  DynamicFlowCoreRevamp,
@@ -4423,7 +4528,7 @@ import {
4423
4528
  // src/dynamicFlow/telemetry/app-version.ts
4424
4529
  var appVersion = (
4425
4530
  // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
4426
- typeof process !== "undefined" ? "4.34.0" : "0.0.0"
4531
+ typeof process !== "undefined" ? "4.35.0" : "0.0.0"
4427
4532
  );
4428
4533
 
4429
4534
  // src/dynamicFlow/telemetry/getLogEvent.ts
@@ -4463,8 +4568,8 @@ var getTrackEvent = (onEvent, onAnalytics, onThemeChange) => (name, properties)
4463
4568
  };
4464
4569
 
4465
4570
  // src/dynamicFlow/messages.ts
4466
- import { defineMessages as defineMessages10 } from "react-intl";
4467
- var messages_default = defineMessages10({
4571
+ import { defineMessages as defineMessages11 } from "react-intl";
4572
+ var messages_default = defineMessages11({
4468
4573
  copied: {
4469
4574
  id: "df.wise.CopyFeedback.copy",
4470
4575
  defaultMessage: "Copied to clipboard",
@@ -4478,12 +4583,12 @@ var messages_default = defineMessages10({
4478
4583
  });
4479
4584
 
4480
4585
  // src/dynamicFlow/DynamicFlow.tsx
4481
- import { jsx as jsx83 } from "react/jsx-runtime";
4586
+ import { jsx as jsx84 } from "react/jsx-runtime";
4482
4587
  var wiseRenderers = getWiseRenderers();
4483
4588
  function DynamicFlowLegacy(props) {
4484
4589
  const { customFetch = globalThis.fetch } = props;
4485
4590
  const coreProps = __spreadProps(__spreadValues({}, props), { httpClient: customFetch });
4486
- return /* @__PURE__ */ jsx83(DynamicFlowCoreLegacy, __spreadValues({}, coreProps));
4591
+ return /* @__PURE__ */ jsx84(DynamicFlowCoreLegacy, __spreadValues({}, coreProps));
4487
4592
  }
4488
4593
  function DynamicFlowRevamp(props) {
4489
4594
  const {
@@ -4496,7 +4601,7 @@ function DynamicFlowRevamp(props) {
4496
4601
  onLink = openLinkInNewTab,
4497
4602
  onThemeChange
4498
4603
  } = props;
4499
- const { formatMessage } = useIntl12();
4604
+ const { formatMessage } = useIntl13();
4500
4605
  const createSnackBar = useSnackBarIfAvailable();
4501
4606
  const httpClient = useWiseHttpClient(customFetch);
4502
4607
  const mergedRenderers = useMemo2(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
@@ -4520,7 +4625,7 @@ function DynamicFlowRevamp(props) {
4520
4625
  onLink,
4521
4626
  onCopy
4522
4627
  });
4523
- return /* @__PURE__ */ jsx83("div", { className, children: /* @__PURE__ */ jsx83(DynamicFlowCoreRevamp, __spreadValues({}, coreProps)) });
4628
+ return /* @__PURE__ */ jsx84("div", { className, children: /* @__PURE__ */ jsx84(DynamicFlowCoreRevamp, __spreadValues({}, coreProps)) });
4524
4629
  }
4525
4630
  var DynamicForm = forwardRef(function DynamicForm2(props, ref) {
4526
4631
  const {
@@ -4533,7 +4638,7 @@ var DynamicForm = forwardRef(function DynamicForm2(props, ref) {
4533
4638
  onLink = openLinkInNewTab,
4534
4639
  onThemeChange
4535
4640
  } = props;
4536
- const { formatMessage } = useIntl12();
4641
+ const { formatMessage } = useIntl13();
4537
4642
  const createSnackBar = useSnackBarIfAvailable();
4538
4643
  const httpClient = useWiseHttpClient(customFetch);
4539
4644
  const mergedRenderers = useMemo2(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
@@ -4557,10 +4662,10 @@ var DynamicForm = forwardRef(function DynamicForm2(props, ref) {
4557
4662
  onLink,
4558
4663
  onCopy
4559
4664
  });
4560
- return /* @__PURE__ */ jsx83("div", { className, children: /* @__PURE__ */ jsx83(DynamicFormCore, __spreadProps(__spreadValues({}, coreProps), { ref })) });
4665
+ return /* @__PURE__ */ jsx84("div", { className, children: /* @__PURE__ */ jsx84(DynamicFormCore, __spreadProps(__spreadValues({}, coreProps), { ref })) });
4561
4666
  });
4562
4667
  var useWiseHttpClient = (httpClient) => {
4563
- const { locale } = useIntl12();
4668
+ const { locale } = useIntl13();
4564
4669
  return useCallback(
4565
4670
  async (input, init = {}) => {
4566
4671
  const headers = new Headers(init.headers);