@wise/dynamic-flow-client-internal 3.27.6 → 3.27.9

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
@@ -139,7 +139,7 @@ var init_clsx = __esm({
139
139
 
140
140
  // ../../node_modules/.pnpm/@wise+art@2.17.0_@transferwise+neptune-css@14.20.1_@types+react@18.3.16_react-dom@18.3.1_reac_4hsljgguo7de2wpoipdhgf4kzi/node_modules/@wise/art/dist/index-213daaa3.esm.js
141
141
  import { useState, useEffect, forwardRef, Suspense, lazy } from "react";
142
- import { jsx as jsx12, jsxs as jsxs3, Fragment } from "react/jsx-runtime";
142
+ import { jsx as jsx11, jsxs as jsxs3, Fragment } from "react/jsx-runtime";
143
143
  var unknownFlagName, Flag, Sizes, ImageSizes, imageSizes, Assets, RenderMode;
144
144
  var init_index_213daaa3_esm = __esm({
145
145
  "../../node_modules/.pnpm/@wise+art@2.17.0_@transferwise+neptune-css@14.20.1_@types+react@18.3.16_react-dom@18.3.1_reac_4hsljgguo7de2wpoipdhgf4kzi/node_modules/@wise/art/dist/index-213daaa3.esm.js"() {
@@ -158,7 +158,7 @@ var init_index_213daaa3_esm = __esm({
158
158
  }, [code]);
159
159
  const detailed = intrinsicSize >= 150;
160
160
  const name = fallback !== "unknown" ? `${code.toLowerCase()}${fallback == null && detailed ? "-detailed" : ""}` : unknownFlagName;
161
- return /* @__PURE__ */ jsx12("img", {
161
+ return /* @__PURE__ */ jsx11("img", {
162
162
  className: clsx(`wds-flag wds-flag-${name}`, className),
163
163
  src: false ? `${name}.svg` : `https://wise.com/web-art/assets/flags/${name}.svg`,
164
164
  loading,
@@ -862,7 +862,7 @@ var translations = languages.reduce(
862
862
  var i18n_default = translations;
863
863
 
864
864
  // src/dynamicFlow/DynamicFlow.tsx
865
- import { forwardRef as forwardRef2, useCallback, useMemo as useMemo2 } from "react";
865
+ import { forwardRef as forwardRef2, useCallback, useMemo } from "react";
866
866
  import { useIntl as useIntl9 } from "react-intl";
867
867
  import {
868
868
  DynamicFlow as DynamicFlowCoreLegacy,
@@ -870,16 +870,22 @@ import {
870
870
  DynamicFragmentCore
871
871
  } from "@wise/dynamic-flow-client";
872
872
 
873
- // ../renderers/src/contexts/RendererHttpClientContext.tsx
873
+ // ../renderers/src/contexts/RendererContext.tsx
874
874
  import { createContext, useContext } from "react";
875
- import { jsx } from "react/jsx-runtime";
876
- var HttpClientContext = createContext(void 0);
877
- function RendererHttpClientProvider({ httpClient, children }) {
878
- return /* @__PURE__ */ jsx(HttpClientContext.Provider, { value: httpClient, children });
879
- }
875
+ var RendererContext = createContext({ loadingState: "idle", httpClient: fetch, trackEvent: () => {
876
+ } });
877
+ var RendererContextProvider = RendererContext.Provider;
878
+ var useLoadingContext = () => {
879
+ const { loadingState } = useContext(RendererContext);
880
+ return { loadingState, isLoading: loadingState !== "idle" };
881
+ };
882
+ var useTrackEvent = () => {
883
+ const { trackEvent } = useContext(RendererContext);
884
+ return trackEvent;
885
+ };
880
886
  var useRendererHttpClient = () => {
881
- const contextFetch = useContext(HttpClientContext);
882
- return contextFetch != null ? contextFetch : fetch;
887
+ const { httpClient } = useContext(RendererContext);
888
+ return httpClient;
883
889
  };
884
890
 
885
891
  // ../renderers/src/AlertRenderer.tsx
@@ -916,10 +922,10 @@ var getTextAlignment = (align) => {
916
922
  var getTextAlignmentAndMargin = (component) => `${getTextAlignment(component.align)} ${getMargin(component.margin)}`;
917
923
 
918
924
  // ../renderers/src/AlertRenderer.tsx
919
- import { jsx as jsx2 } from "react/jsx-runtime";
925
+ import { jsx } from "react/jsx-runtime";
920
926
  var AlertRenderer = {
921
927
  canRenderType: "alert",
922
- render: ({ context, markdown, margin, callToAction }) => /* @__PURE__ */ jsx2(
928
+ render: ({ context, markdown, margin, callToAction }) => /* @__PURE__ */ jsx(
923
929
  Alert,
924
930
  {
925
931
  type: context,
@@ -973,14 +979,14 @@ var help_messages_default = defineMessages({
973
979
  });
974
980
 
975
981
  // ../renderers/src/components/Help.tsx
976
- import { jsx as jsx3 } from "react/jsx-runtime";
982
+ import { jsx as jsx2 } from "react/jsx-runtime";
977
983
  function Help({ help }) {
978
984
  const intl = useIntl();
979
- return /* @__PURE__ */ jsx3(
985
+ return /* @__PURE__ */ jsx2(
980
986
  Info,
981
987
  {
982
988
  className: "m-l-1",
983
- content: /* @__PURE__ */ jsx3(Markdown, { config: { link: { target: "_blank" } }, children: help }),
989
+ content: /* @__PURE__ */ jsx2(Markdown, { config: { link: { target: "_blank" } }, children: help }),
984
990
  presentation: "POPOVER",
985
991
  size: "sm",
986
992
  "aria-label": intl.formatMessage(help_messages_default.helpAria)
@@ -990,19 +996,19 @@ function Help({ help }) {
990
996
  var Help_default = Help;
991
997
 
992
998
  // ../renderers/src/components/LabelContentWithHelp.tsx
993
- import { jsx as jsx4, jsxs } from "react/jsx-runtime";
999
+ import { jsx as jsx3, jsxs } from "react/jsx-runtime";
994
1000
  function LabelContentWithHelp({ text, help }) {
995
1001
  return /* @__PURE__ */ jsxs("div", { children: [
996
1002
  text,
997
- /* @__PURE__ */ jsx4(Help_default, { help })
1003
+ /* @__PURE__ */ jsx3(Help_default, { help })
998
1004
  ] });
999
1005
  }
1000
1006
 
1001
1007
  // ../renderers/src/components/FieldInput.tsx
1002
- import { jsx as jsx5 } from "react/jsx-runtime";
1008
+ import { jsx as jsx4 } from "react/jsx-runtime";
1003
1009
  function FieldInput({ id, children, label, validation, description, help }) {
1004
- const labelContent = label && help ? /* @__PURE__ */ jsx5(LabelContentWithHelp, { text: label, help }) : label;
1005
- return /* @__PURE__ */ jsx5(
1010
+ const labelContent = label && help ? /* @__PURE__ */ jsx4(LabelContentWithHelp, { text: label, help }) : label;
1011
+ return /* @__PURE__ */ jsx4(
1006
1012
  Field,
1007
1013
  {
1008
1014
  id,
@@ -1027,7 +1033,7 @@ var FieldInput_default = FieldInput;
1027
1033
 
1028
1034
  // ../renderers/src/BooleanInputRenderer.tsx
1029
1035
  import { Checkbox } from "@transferwise/components";
1030
- import { jsx as jsx6 } from "react/jsx-runtime";
1036
+ import { jsx as jsx5 } from "react/jsx-runtime";
1031
1037
  var BooleanInputRenderer = {
1032
1038
  canRenderType: "input-boolean",
1033
1039
  render: (props) => {
@@ -1051,20 +1057,20 @@ var BooleanInputRenderer = {
1051
1057
  "value"
1052
1058
  ]);
1053
1059
  const checkboxProps = __spreadProps(__spreadValues({}, rest), { label, secondary: description, checked: value });
1054
- return /* @__PURE__ */ jsx6(FieldInput_default, { id, label: "", description: "", validation: validationState, help, children: /* @__PURE__ */ jsx6(Checkbox, __spreadValues({ id }, checkboxProps)) });
1060
+ return /* @__PURE__ */ jsx5(FieldInput_default, { id, label: "", description: "", validation: validationState, help, children: /* @__PURE__ */ jsx5(Checkbox, __spreadValues({ id }, checkboxProps)) });
1055
1061
  }
1056
1062
  };
1057
1063
  var BooleanInputRenderer_default = BooleanInputRenderer;
1058
1064
 
1059
1065
  // ../renderers/src/BoxRenderer.tsx
1060
1066
  var import_classnames = __toESM(require_classnames());
1061
- import { jsx as jsx7 } from "react/jsx-runtime";
1067
+ import { jsx as jsx6 } from "react/jsx-runtime";
1062
1068
  var BoxRenderer = {
1063
1069
  canRenderType: "box",
1064
1070
  render: ({ border, children, control, margin, width }) => {
1065
1071
  const hasFixedWidth = width !== "xl";
1066
1072
  const hasBorder = control === "bordered" || control === "bordered-web" || border;
1067
- const contents = /* @__PURE__ */ jsx7(
1073
+ const contents = /* @__PURE__ */ jsx6(
1068
1074
  "div",
1069
1075
  {
1070
1076
  className: (0, import_classnames.default)({
@@ -1075,30 +1081,14 @@ var BoxRenderer = {
1075
1081
  children
1076
1082
  }
1077
1083
  );
1078
- return hasFixedWidth ? /* @__PURE__ */ jsx7("div", { className: (0, import_classnames.default)("df-box-renderer-fixed-width", getMargin(margin)), children: contents }) : contents;
1084
+ return hasFixedWidth ? /* @__PURE__ */ jsx6("div", { className: (0, import_classnames.default)("df-box-renderer-fixed-width", getMargin(margin)), children: contents }) : contents;
1079
1085
  }
1080
1086
  };
1081
1087
  var BoxRenderer_default = BoxRenderer;
1082
1088
 
1083
1089
  // ../renderers/src/ButtonRenderer.tsx
1084
1090
  import { Button } from "@transferwise/components";
1085
-
1086
- // ../renderers/src/step/StepRendererContext.tsx
1087
- import { createContext as createContext2, useContext as useContext2 } from "react";
1088
- var StepRendererContext = createContext2({ loadingState: "idle", trackEvent: () => {
1089
- } });
1090
- var StepRendererContextProvider = StepRendererContext.Provider;
1091
- var useLoadingContext = () => {
1092
- const { loadingState } = useContext2(StepRendererContext);
1093
- return { loadingState, isLoading: loadingState !== "idle" };
1094
- };
1095
- var useTrackEvent = () => {
1096
- const { trackEvent } = useContext2(StepRendererContext);
1097
- return trackEvent;
1098
- };
1099
-
1100
- // ../renderers/src/ButtonRenderer.tsx
1101
- import { jsx as jsx8 } from "react/jsx-runtime";
1091
+ import { jsx as jsx7 } from "react/jsx-runtime";
1102
1092
  var ButtonRenderer = {
1103
1093
  canRenderType: "button",
1104
1094
  render: ButtonRendererComponent
@@ -1116,7 +1106,7 @@ function ButtonRendererComponent({
1116
1106
  const priority = mapControl(control);
1117
1107
  const type = priority === "tertiary" ? void 0 : mapContext(context);
1118
1108
  const { isLoading } = useLoadingContext();
1119
- return /* @__PURE__ */ jsx8(
1109
+ return /* @__PURE__ */ jsx7(
1120
1110
  Button,
1121
1111
  {
1122
1112
  block: true,
@@ -1144,8 +1134,6 @@ var mapControl = (control) => {
1144
1134
  case "primary":
1145
1135
  case "tertiary":
1146
1136
  return control;
1147
- case "minimal":
1148
- return "tertiary";
1149
1137
  default:
1150
1138
  return "secondary";
1151
1139
  }
@@ -1170,7 +1158,7 @@ var ButtonRenderer_default = ButtonRenderer;
1170
1158
 
1171
1159
  // ../renderers/src/ColumnsRenderer.tsx
1172
1160
  var import_classnames2 = __toESM(require_classnames());
1173
- import { jsx as jsx9, jsxs as jsxs2 } from "react/jsx-runtime";
1161
+ import { jsx as jsx8, jsxs as jsxs2 } from "react/jsx-runtime";
1174
1162
  var ColumnsRenderer = {
1175
1163
  canRenderType: "columns",
1176
1164
  render: ({ bias, margin, startChildren, endChildren }) => /* @__PURE__ */ jsxs2(
@@ -1181,8 +1169,8 @@ var ColumnsRenderer = {
1181
1169
  "df-columns-renderer-bias-end": bias === "end"
1182
1170
  }),
1183
1171
  children: [
1184
- /* @__PURE__ */ jsx9("div", { className: "df-columns-renderer-column", children: startChildren }),
1185
- /* @__PURE__ */ jsx9("div", { className: "df-columns-renderer-column", children: endChildren })
1172
+ /* @__PURE__ */ jsx8("div", { className: "df-columns-renderer-column", children: startChildren }),
1173
+ /* @__PURE__ */ jsx8("div", { className: "df-columns-renderer-column", children: endChildren })
1186
1174
  ]
1187
1175
  }
1188
1176
  )
@@ -1221,7 +1209,7 @@ var dateToDateString = (date) => {
1221
1209
  };
1222
1210
 
1223
1211
  // ../renderers/src/components/VariableDateInput.tsx
1224
- import { jsx as jsx10 } from "react/jsx-runtime";
1212
+ import { jsx as jsx9 } from "react/jsx-runtime";
1225
1213
  function VariableDateInput({
1226
1214
  control,
1227
1215
  inputProps
@@ -1237,7 +1225,7 @@ function VariableDateInput({
1237
1225
  onFocus
1238
1226
  } = inputProps;
1239
1227
  if (control === "date-lookup") {
1240
- return /* @__PURE__ */ jsx10(
1228
+ return /* @__PURE__ */ jsx9(
1241
1229
  DateLookup,
1242
1230
  {
1243
1231
  value: dateStringToDateOrNull(inputProps.value),
@@ -1253,7 +1241,7 @@ function VariableDateInput({
1253
1241
  }
1254
1242
  );
1255
1243
  }
1256
- return /* @__PURE__ */ jsx10(
1244
+ return /* @__PURE__ */ jsx9(
1257
1245
  DateInput,
1258
1246
  __spreadProps(__spreadValues({}, inputProps), {
1259
1247
  dayAutoComplete: getAutocompleteString(autoComplete, "day"),
@@ -1270,7 +1258,7 @@ var getAutocompleteString = (value, suffix) => {
1270
1258
  var VariableDateInput_default = VariableDateInput;
1271
1259
 
1272
1260
  // ../renderers/src/DateInputRenderer.tsx
1273
- import { jsx as jsx11 } from "react/jsx-runtime";
1261
+ import { jsx as jsx10 } from "react/jsx-runtime";
1274
1262
  var DateInputRenderer = {
1275
1263
  canRenderType: "input-date",
1276
1264
  render: (props) => {
@@ -1295,7 +1283,7 @@ var DateInputRenderer = {
1295
1283
  ]);
1296
1284
  const value = initialValue != null ? initialValue : "";
1297
1285
  const inputProps = __spreadProps(__spreadValues({}, rest), { value, id });
1298
- return /* @__PURE__ */ jsx11(
1286
+ return /* @__PURE__ */ jsx10(
1299
1287
  FieldInput_default,
1300
1288
  {
1301
1289
  id,
@@ -1303,7 +1291,7 @@ var DateInputRenderer = {
1303
1291
  description,
1304
1292
  validation: validationState,
1305
1293
  help,
1306
- children: /* @__PURE__ */ jsx11(VariableDateInput_default, { control, inputProps })
1294
+ children: /* @__PURE__ */ jsx10(VariableDateInput_default, { control, inputProps })
1307
1295
  }
1308
1296
  );
1309
1297
  }
@@ -1320,19 +1308,19 @@ import "react";
1320
1308
  import "react/jsx-runtime";
1321
1309
 
1322
1310
  // ../renderers/src/components/icon/FlagIcon.tsx
1323
- import { jsx as jsx13 } from "react/jsx-runtime";
1311
+ import { jsx as jsx12 } from "react/jsx-runtime";
1324
1312
  var isFlagIcon = (name) => name.startsWith("flag-");
1325
1313
  function FlagIcon({ name }) {
1326
1314
  if (!isFlagIcon(name)) {
1327
1315
  return null;
1328
1316
  }
1329
1317
  const code = name.substring(5);
1330
- return /* @__PURE__ */ jsx13(Flag, { code });
1318
+ return /* @__PURE__ */ jsx12(Flag, { code });
1331
1319
  }
1332
1320
 
1333
1321
  // ../renderers/src/components/icon/NamedIcon.tsx
1334
1322
  import * as icons from "@transferwise/icons";
1335
- import { jsx as jsx14 } from "react/jsx-runtime";
1323
+ import { jsx as jsx13 } from "react/jsx-runtime";
1336
1324
  var isNamedIcon = (name) => {
1337
1325
  const iconName = toCapitalisedCamelCase(name);
1338
1326
  return Object.keys(icons).includes(iconName);
@@ -1343,19 +1331,19 @@ function NamedIcon({ name }) {
1343
1331
  }
1344
1332
  const iconName = toCapitalisedCamelCase(name);
1345
1333
  const Icon = icons[iconName];
1346
- return /* @__PURE__ */ jsx14(Icon, { size: 24 });
1334
+ return /* @__PURE__ */ jsx13(Icon, { size: 24 });
1347
1335
  }
1348
1336
  var toCapitalisedCamelCase = (value) => value.split("-").map(capitaliseFirstChar).join("");
1349
1337
  var capitaliseFirstChar = (value) => `${value[0].toUpperCase()}${value.slice(1)}`;
1350
1338
 
1351
1339
  // ../renderers/src/components/icon/DynamicIcon.tsx
1352
- import { jsx as jsx15 } from "react/jsx-runtime";
1340
+ import { jsx as jsx14 } from "react/jsx-runtime";
1353
1341
  function DynamicIcon({ name }) {
1354
1342
  if (isFlagIcon(name)) {
1355
- return /* @__PURE__ */ jsx15(FlagIcon, { name });
1343
+ return /* @__PURE__ */ jsx14(FlagIcon, { name });
1356
1344
  }
1357
1345
  if (isNamedIcon(name)) {
1358
- return /* @__PURE__ */ jsx15(NamedIcon, { name });
1346
+ return /* @__PURE__ */ jsx14(NamedIcon, { name });
1359
1347
  }
1360
1348
  return null;
1361
1349
  }
@@ -1363,25 +1351,25 @@ var DynamicIcon_default = DynamicIcon;
1363
1351
 
1364
1352
  // ../renderers/src/components/icon/NavigationOptionMedia.tsx
1365
1353
  import { Avatar, AvatarType } from "@transferwise/components";
1366
- import { jsx as jsx16 } from "react/jsx-runtime";
1354
+ import { jsx as jsx15 } from "react/jsx-runtime";
1367
1355
  function NavigationOptionMedia({ icon, image }) {
1368
1356
  if (!isNullish(icon)) {
1369
1357
  if ("name" in icon) {
1370
- return /* @__PURE__ */ jsx16(Avatar, { type: AvatarType.ICON, children: /* @__PURE__ */ jsx16(DynamicIcon_default, { name: icon.name }) });
1358
+ return /* @__PURE__ */ jsx15(Avatar, { type: AvatarType.ICON, children: /* @__PURE__ */ jsx15(DynamicIcon_default, { name: icon.name }) });
1371
1359
  }
1372
1360
  if (icon.text) {
1373
- return /* @__PURE__ */ jsx16(Avatar, { type: AvatarType.INITIALS, children: icon.text });
1361
+ return /* @__PURE__ */ jsx15(Avatar, { type: AvatarType.INITIALS, children: icon.text });
1374
1362
  }
1375
1363
  }
1376
1364
  if (image == null ? void 0 : image.url) {
1377
1365
  const { url, accessibilityDescription } = image;
1378
- return /* @__PURE__ */ jsx16("img", { src: url, alt: accessibilityDescription });
1366
+ return /* @__PURE__ */ jsx15("img", { src: url, alt: accessibilityDescription });
1379
1367
  }
1380
1368
  return null;
1381
1369
  }
1382
1370
 
1383
1371
  // ../renderers/src/DecisionRenderer.tsx
1384
- import { jsx as jsx17, jsxs as jsxs4 } from "react/jsx-runtime";
1372
+ import { jsx as jsx16, jsxs as jsxs4 } from "react/jsx-runtime";
1385
1373
  var DecisionRenderer = {
1386
1374
  canRenderType: "decision",
1387
1375
  render: DecisionRendererComponent
@@ -1390,14 +1378,14 @@ var DecisionRenderer_default = DecisionRenderer;
1390
1378
  function DecisionRendererComponent({ margin, options, title }) {
1391
1379
  const { isLoading } = useLoadingContext();
1392
1380
  return /* @__PURE__ */ jsxs4("div", { className: getMargin(margin), children: [
1393
- title && /* @__PURE__ */ jsx17(Header, { as: "h2", title }),
1394
- /* @__PURE__ */ jsx17(NavigationOptionsList, { children: options.map(({ description, disabled, icon, image, title: title2, onClick }) => /* @__PURE__ */ jsx17(
1381
+ title && /* @__PURE__ */ jsx16(Header, { as: "h2", title }),
1382
+ /* @__PURE__ */ jsx16(NavigationOptionsList, { children: options.map(({ description, disabled, icon, image, title: title2, onClick }) => /* @__PURE__ */ jsx16(
1395
1383
  NavigationOption,
1396
1384
  {
1397
1385
  title: title2,
1398
1386
  content: description,
1399
1387
  disabled: isLoading || disabled,
1400
- media: /* @__PURE__ */ jsx17(NavigationOptionMedia, { icon, image }),
1388
+ media: /* @__PURE__ */ jsx16(NavigationOptionMedia, { icon, image }),
1401
1389
  showMediaCircle: false,
1402
1390
  showMediaAtAllSizes: true,
1403
1391
  onClick
@@ -1408,36 +1396,36 @@ function DecisionRendererComponent({ margin, options, title }) {
1408
1396
  }
1409
1397
 
1410
1398
  // ../renderers/src/DividerRenderer.tsx
1411
- import { jsx as jsx18 } from "react/jsx-runtime";
1399
+ import { jsx as jsx17 } from "react/jsx-runtime";
1412
1400
  var DividerRenderer = {
1413
1401
  canRenderType: "divider",
1414
- render: ({ margin }) => /* @__PURE__ */ jsx18("hr", { className: `m-t-0 ${getMargin(margin)}` })
1402
+ render: ({ margin }) => /* @__PURE__ */ jsx17("hr", { className: `m-t-0 ${getMargin(margin)}` })
1415
1403
  };
1416
1404
  var DividerRenderer_default = DividerRenderer;
1417
1405
 
1418
1406
  // ../renderers/src/FormRenderer.tsx
1419
- import { jsx as jsx19 } from "react/jsx-runtime";
1407
+ import { jsx as jsx18 } from "react/jsx-runtime";
1420
1408
  var FormRenderer = {
1421
1409
  canRenderType: "form",
1422
- render: ({ children, margin }) => /* @__PURE__ */ jsx19("div", { className: getMargin(margin), children })
1410
+ render: ({ children, margin }) => /* @__PURE__ */ jsx18("div", { className: getMargin(margin), children })
1423
1411
  };
1424
1412
  var FormRenderer_default = FormRenderer;
1425
1413
 
1426
1414
  // ../renderers/src/FormSectionRenderer.tsx
1427
1415
  import { Header as Header2 } from "@transferwise/components";
1428
- import { jsx as jsx20, jsxs as jsxs5 } from "react/jsx-runtime";
1416
+ import { jsx as jsx19, jsxs as jsxs5 } from "react/jsx-runtime";
1429
1417
  var FormSectionRenderer = {
1430
1418
  canRenderType: "form-section",
1431
1419
  render: ({ title, description, children }) => /* @__PURE__ */ jsxs5("fieldset", { children: [
1432
1420
  title && // TODO - once section headers support help, we could show help in here
1433
- /* @__PURE__ */ jsx20(
1421
+ /* @__PURE__ */ jsx19(
1434
1422
  Header2,
1435
1423
  {
1436
1424
  as: "h2",
1437
1425
  title
1438
1426
  }
1439
1427
  ),
1440
- description && /* @__PURE__ */ jsx20("p", { children: description }),
1428
+ description && /* @__PURE__ */ jsx19("p", { children: description }),
1441
1429
  children
1442
1430
  ] })
1443
1431
  };
@@ -1445,32 +1433,32 @@ var FormSectionRenderer_default = FormSectionRenderer;
1445
1433
 
1446
1434
  // ../renderers/src/HeadingRenderer.tsx
1447
1435
  import { Display } from "@transferwise/components";
1448
- import { jsx as jsx21 } from "react/jsx-runtime";
1436
+ import { jsx as jsx20 } from "react/jsx-runtime";
1449
1437
  var HeadingRenderer = {
1450
1438
  canRenderType: "heading",
1451
- render: (props) => /* @__PURE__ */ jsx21(Heading, __spreadValues({}, props))
1439
+ render: (props) => /* @__PURE__ */ jsx20(Heading, __spreadValues({}, props))
1452
1440
  };
1453
1441
  function Heading(props) {
1454
1442
  const { text, size: size2, align, margin, control } = props;
1455
1443
  const className = getTextAlignmentAndMargin({ align, margin });
1456
- return control === "display" ? /* @__PURE__ */ jsx21(DisplayHeading, { size: size2, text, className }) : /* @__PURE__ */ jsx21(StandardHeading, { size: size2, text, className });
1444
+ return control === "display" ? /* @__PURE__ */ jsx20(DisplayHeading, { size: size2, text, className }) : /* @__PURE__ */ jsx20(StandardHeading, { size: size2, text, className });
1457
1445
  }
1458
1446
  function DisplayHeading({ size: size2, text, className }) {
1459
- return /* @__PURE__ */ jsx21(Display, { type: getDisplayType(size2), className, children: text });
1447
+ return /* @__PURE__ */ jsx20(Display, { type: getDisplayType(size2), className, children: text });
1460
1448
  }
1461
1449
  function StandardHeading({ size: size2, text, className }) {
1462
1450
  switch (size2) {
1463
1451
  case "xs":
1464
- return /* @__PURE__ */ jsx21("h5", { className, children: text });
1452
+ return /* @__PURE__ */ jsx20("h5", { className, children: text });
1465
1453
  case "sm":
1466
- return /* @__PURE__ */ jsx21("h4", { className, children: text });
1454
+ return /* @__PURE__ */ jsx20("h4", { className, children: text });
1467
1455
  case "lg":
1468
- return /* @__PURE__ */ jsx21("h2", { className, children: text });
1456
+ return /* @__PURE__ */ jsx20("h2", { className, children: text });
1469
1457
  case "xl":
1470
- return /* @__PURE__ */ jsx21("h1", { className, children: text });
1458
+ return /* @__PURE__ */ jsx20("h1", { className, children: text });
1471
1459
  case "md":
1472
1460
  default:
1473
- return /* @__PURE__ */ jsx21("h3", { className, children: text });
1461
+ return /* @__PURE__ */ jsx20("h3", { className, children: text });
1474
1462
  }
1475
1463
  }
1476
1464
  var getDisplayType = (size2) => {
@@ -1500,10 +1488,10 @@ function isRelativePath(url = "") {
1500
1488
  }
1501
1489
 
1502
1490
  // ../renderers/src/ImageRenderer.tsx
1503
- import { jsx as jsx22 } from "react/jsx-runtime";
1491
+ import { jsx as jsx21 } from "react/jsx-runtime";
1504
1492
  var ImageRenderer = {
1505
1493
  canRenderType: "image",
1506
- render: (props) => /* @__PURE__ */ jsx22(ImageRendererComponent, __spreadValues({}, props))
1494
+ render: (props) => /* @__PURE__ */ jsx21(ImageRendererComponent, __spreadValues({}, props))
1507
1495
  };
1508
1496
  var ImageRenderer_default = ImageRenderer;
1509
1497
  function ImageRendererComponent({
@@ -1517,7 +1505,7 @@ function ImageRendererComponent({
1517
1505
  useEffect2(() => {
1518
1506
  void getImageSource(httpClient, url).then(setImageSource);
1519
1507
  }, [url, httpClient]);
1520
- return /* @__PURE__ */ jsx22("div", { className: `df-image ${size2 || "md"}`, children: /* @__PURE__ */ jsx22(
1508
+ return /* @__PURE__ */ jsx21("div", { className: `df-image ${size2 || "md"}`, children: /* @__PURE__ */ jsx21(
1521
1509
  Image,
1522
1510
  {
1523
1511
  className: `img-responsive ${getMargin(margin)}`,
@@ -1562,7 +1550,7 @@ var getImageSource = async (httpClient, imageUrl) => {
1562
1550
 
1563
1551
  // ../renderers/src/InstructionsRenderer.tsx
1564
1552
  import { Header as Header3, InstructionsList } from "@transferwise/components";
1565
- import { jsx as jsx23, jsxs as jsxs6 } from "react/jsx-runtime";
1553
+ import { jsx as jsx22, jsxs as jsxs6 } from "react/jsx-runtime";
1566
1554
  var doContext = ["positive", "neutral"];
1567
1555
  var dontContext = ["warning", "negative"];
1568
1556
  var InstructionsRenderer = {
@@ -1571,8 +1559,8 @@ var InstructionsRenderer = {
1571
1559
  const dos = items.filter((item) => doContext.includes(item.context)).map(({ text }) => text);
1572
1560
  const donts = items.filter((item) => dontContext.includes(item.context)).map(({ text }) => text);
1573
1561
  return /* @__PURE__ */ jsxs6("div", { className: getMargin(margin), children: [
1574
- title ? /* @__PURE__ */ jsx23(Header3, { title }) : null,
1575
- /* @__PURE__ */ jsx23(InstructionsList, { dos, donts })
1562
+ title ? /* @__PURE__ */ jsx22(Header3, { title }) : null,
1563
+ /* @__PURE__ */ jsx22(InstructionsList, { dos, donts })
1576
1564
  ] });
1577
1565
  }
1578
1566
  };
@@ -1590,11 +1578,11 @@ var onWheel = (event) => {
1590
1578
 
1591
1579
  // ../renderers/src/utils/getIconAvatar.tsx
1592
1580
  import { Avatar as Avatar2, AvatarType as AvatarType2 } from "@transferwise/components";
1593
- import { jsx as jsx24 } from "react/jsx-runtime";
1581
+ import { jsx as jsx23 } from "react/jsx-runtime";
1594
1582
  var size = 24;
1595
1583
  function getIconAvatar({ icon, image }) {
1596
1584
  if (image == null ? void 0 : image.url) {
1597
- return /* @__PURE__ */ jsx24(
1585
+ return /* @__PURE__ */ jsx23(
1598
1586
  "img",
1599
1587
  {
1600
1588
  src: image.url,
@@ -1605,13 +1593,13 @@ function getIconAvatar({ icon, image }) {
1605
1593
  );
1606
1594
  }
1607
1595
  if (isFlagIcon2(icon)) {
1608
- return /* @__PURE__ */ jsx24(Avatar2, { type: AvatarType2.ICON, size, children: /* @__PURE__ */ jsx24(DynamicIcon_default, { name: icon.name }) });
1596
+ return /* @__PURE__ */ jsx23(Avatar2, { type: AvatarType2.ICON, size, children: /* @__PURE__ */ jsx23(DynamicIcon_default, { name: icon.name }) });
1609
1597
  }
1610
1598
  if (isNamedIcon2(icon)) {
1611
- return /* @__PURE__ */ jsx24(DynamicIcon_default, { name: icon.name });
1599
+ return /* @__PURE__ */ jsx23(DynamicIcon_default, { name: icon.name });
1612
1600
  }
1613
1601
  if (icon && "text" in icon) {
1614
- return /* @__PURE__ */ jsx24(Avatar2, { type: AvatarType2.ICON, size, children: icon.text });
1602
+ return /* @__PURE__ */ jsx23(Avatar2, { type: AvatarType2.ICON, size, children: icon.text });
1615
1603
  }
1616
1604
  return null;
1617
1605
  }
@@ -1625,7 +1613,7 @@ var getInputGroupAddonStart = ({ icon, image }) => {
1625
1613
  };
1626
1614
 
1627
1615
  // ../renderers/src/IntegerInputRenderer.tsx
1628
- import { jsx as jsx25 } from "react/jsx-runtime";
1616
+ import { jsx as jsx24 } from "react/jsx-runtime";
1629
1617
  var IntegerInputRenderer = {
1630
1618
  canRenderType: "input-integer",
1631
1619
  render: (props) => {
@@ -1652,7 +1640,7 @@ var IntegerInputRenderer = {
1652
1640
  "value",
1653
1641
  "onChange"
1654
1642
  ]);
1655
- return /* @__PURE__ */ jsx25(
1643
+ return /* @__PURE__ */ jsx24(
1656
1644
  FieldInput_default,
1657
1645
  {
1658
1646
  id,
@@ -1660,7 +1648,7 @@ var IntegerInputRenderer = {
1660
1648
  description,
1661
1649
  validation: validationState,
1662
1650
  help,
1663
- children: /* @__PURE__ */ jsx25(InputGroup, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx25(
1651
+ children: /* @__PURE__ */ jsx24(InputGroup, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx24(
1664
1652
  Input,
1665
1653
  __spreadValues({
1666
1654
  id,
@@ -1684,10 +1672,10 @@ var IntegerInputRenderer_default = IntegerInputRenderer;
1684
1672
 
1685
1673
  // ../renderers/src/LoadingIndicatorRenderer.tsx
1686
1674
  import { Loader } from "@transferwise/components";
1687
- import { jsx as jsx26 } from "react/jsx-runtime";
1675
+ import { jsx as jsx25 } from "react/jsx-runtime";
1688
1676
  var LoadingIndicatorRenderer = {
1689
1677
  canRenderType: "loading-indicator",
1690
- render: ({ margin, size: size2 }) => /* @__PURE__ */ jsx26(
1678
+ render: ({ margin, size: size2 }) => /* @__PURE__ */ jsx25(
1691
1679
  Loader,
1692
1680
  {
1693
1681
  size: size2,
@@ -1700,28 +1688,28 @@ var LoadingIndicatorRenderer_default = LoadingIndicatorRenderer;
1700
1688
 
1701
1689
  // ../renderers/src/MarkdownRenderer.tsx
1702
1690
  import { Markdown as Markdown2 } from "@transferwise/components";
1703
- import { jsx as jsx27 } from "react/jsx-runtime";
1691
+ import { jsx as jsx26 } from "react/jsx-runtime";
1704
1692
  var MarkdownRenderer = {
1705
1693
  canRenderType: "markdown",
1706
- render: ({ content, align, margin }) => /* @__PURE__ */ jsx27("div", { className: getTextAlignmentAndMargin({ align, margin }), children: /* @__PURE__ */ jsx27(Markdown2, { config: { link: { target: "_blank" } }, children: content }) })
1694
+ render: ({ content, align, margin }) => /* @__PURE__ */ jsx26("div", { className: getTextAlignmentAndMargin({ align, margin }), children: /* @__PURE__ */ jsx26(Markdown2, { config: { link: { target: "_blank" } }, children: content }) })
1707
1695
  };
1708
1696
  var MarkdownRenderer_default = MarkdownRenderer;
1709
1697
 
1710
1698
  // ../renderers/src/ModalRenderer.tsx
1711
1699
  import { Button as Button2, Modal } from "@transferwise/components";
1712
1700
  import { useState as useState3 } from "react";
1713
- import { jsx as jsx28, jsxs as jsxs7 } from "react/jsx-runtime";
1701
+ import { jsx as jsx27, jsxs as jsxs7 } from "react/jsx-runtime";
1714
1702
  var ModalRenderer = {
1715
1703
  canRenderType: "modal",
1716
- render: (props) => /* @__PURE__ */ jsx28(DFModal, __spreadValues({}, props))
1704
+ render: (props) => /* @__PURE__ */ jsx27(DFModal, __spreadValues({}, props))
1717
1705
  };
1718
1706
  var ModalRenderer_default = ModalRenderer;
1719
1707
  function DFModal({ content, margin, trigger }) {
1720
1708
  const [visible, setVisible] = useState3(false);
1721
1709
  const { components, title } = content;
1722
1710
  return /* @__PURE__ */ jsxs7("div", { className: getMargin(margin), children: [
1723
- /* @__PURE__ */ jsx28(Button2, { priority: "tertiary", block: true, onClick: () => setVisible(true), children: trigger.title }),
1724
- /* @__PURE__ */ jsx28(
1711
+ /* @__PURE__ */ jsx27(Button2, { priority: "tertiary", block: true, onClick: () => setVisible(true), children: trigger.title }),
1712
+ /* @__PURE__ */ jsx27(
1725
1713
  Modal,
1726
1714
  {
1727
1715
  scroll: "content",
@@ -1740,16 +1728,16 @@ import { SelectInput, SelectInputOptionContent } from "@transferwise/components"
1740
1728
 
1741
1729
  // ../renderers/src/SelectInputRenderer/OptionMedia.tsx
1742
1730
  import { Avatar as Avatar3, AvatarType as AvatarType3 } from "@transferwise/components";
1743
- import { jsx as jsx29 } from "react/jsx-runtime";
1731
+ import { jsx as jsx28 } from "react/jsx-runtime";
1744
1732
  function OptionMedia({ icon, image }) {
1745
1733
  if (image == null ? void 0 : image.url) {
1746
- return /* @__PURE__ */ jsx29("img", { src: image.url, alt: image.accessibilityDescription || "", width: "64px" });
1734
+ return /* @__PURE__ */ jsx28("img", { src: image.url, alt: image.accessibilityDescription || "", width: "64px" });
1747
1735
  }
1748
1736
  if (icon && "name" in icon) {
1749
- return /* @__PURE__ */ jsx29(Avatar3, { type: AvatarType3.ICON, children: /* @__PURE__ */ jsx29(DynamicIcon_default, { name: icon.name }) });
1737
+ return /* @__PURE__ */ jsx28(Avatar3, { type: AvatarType3.ICON, children: /* @__PURE__ */ jsx28(DynamicIcon_default, { name: icon.name }) });
1750
1738
  }
1751
1739
  if (icon && "text" in icon) {
1752
- return /* @__PURE__ */ jsx29(Avatar3, { type: AvatarType3.INITIALS, children: icon.text });
1740
+ return /* @__PURE__ */ jsx28(Avatar3, { type: AvatarType3.INITIALS, children: icon.text });
1753
1741
  }
1754
1742
  return null;
1755
1743
  }
@@ -1769,10 +1757,10 @@ var multi_select_messages_default = defineMessages2({
1769
1757
 
1770
1758
  // ../renderers/src/MultiSelectInputRenderer.tsx
1771
1759
  import { useState as useState4 } from "react";
1772
- import { jsx as jsx30 } from "react/jsx-runtime";
1760
+ import { jsx as jsx29 } from "react/jsx-runtime";
1773
1761
  var MultiSelectInputRenderer = {
1774
1762
  canRenderType: "input-multi-select",
1775
- render: (props) => /* @__PURE__ */ jsx30(MultiSelectInputRendererComponent, __spreadValues({}, props))
1763
+ render: (props) => /* @__PURE__ */ jsx29(MultiSelectInputRendererComponent, __spreadValues({}, props))
1776
1764
  };
1777
1765
  function MultiSelectInputRendererComponent(props) {
1778
1766
  const { formatMessage } = useIntl2();
@@ -1814,12 +1802,12 @@ function MultiSelectInputRendererComponent(props) {
1814
1802
  const contentProps = {
1815
1803
  title: option.title,
1816
1804
  description: option.description,
1817
- icon: /* @__PURE__ */ jsx30(OptionMedia, { icon: option.icon, image: option.image })
1805
+ icon: /* @__PURE__ */ jsx29(OptionMedia, { icon: option.icon, image: option.image })
1818
1806
  };
1819
- return /* @__PURE__ */ jsx30(SelectInputOptionContent, __spreadValues({}, contentProps));
1807
+ return /* @__PURE__ */ jsx29(SelectInputOptionContent, __spreadValues({}, contentProps));
1820
1808
  };
1821
1809
  const extraProps = { autoComplete };
1822
- return /* @__PURE__ */ jsx30(
1810
+ return /* @__PURE__ */ jsx29(
1823
1811
  FieldInput_default,
1824
1812
  {
1825
1813
  id,
@@ -1827,7 +1815,7 @@ function MultiSelectInputRendererComponent(props) {
1827
1815
  help,
1828
1816
  description,
1829
1817
  validation: validationState,
1830
- children: /* @__PURE__ */ jsx30(
1818
+ children: /* @__PURE__ */ jsx29(
1831
1819
  SelectInput,
1832
1820
  __spreadValues({
1833
1821
  id,
@@ -1871,7 +1859,7 @@ import { UploadInput } from "@transferwise/components";
1871
1859
  // ../renderers/src/components/UploadFieldInput.tsx
1872
1860
  var import_classnames3 = __toESM(require_classnames());
1873
1861
  import { InlineAlert } from "@transferwise/components";
1874
- import { jsx as jsx31, jsxs as jsxs8 } from "react/jsx-runtime";
1862
+ import { jsx as jsx30, jsxs as jsxs8 } from "react/jsx-runtime";
1875
1863
  function UploadFieldInput({
1876
1864
  id,
1877
1865
  children,
@@ -1880,7 +1868,7 @@ function UploadFieldInput({
1880
1868
  help,
1881
1869
  validation
1882
1870
  }) {
1883
- const labelContent = label && help ? /* @__PURE__ */ jsx31(LabelContentWithHelp, { text: label, help }) : label;
1871
+ const labelContent = label && help ? /* @__PURE__ */ jsx30(LabelContentWithHelp, { text: label, help }) : label;
1884
1872
  const descriptionId = description ? `${id}-description` : void 0;
1885
1873
  return /* @__PURE__ */ jsxs8(
1886
1874
  "div",
@@ -1889,9 +1877,9 @@ function UploadFieldInput({
1889
1877
  "has-error": (validation == null ? void 0 : validation.status) === "invalid"
1890
1878
  }),
1891
1879
  children: [
1892
- /* @__PURE__ */ jsx31("label", { htmlFor: id, className: "control-label", children: labelContent }),
1880
+ /* @__PURE__ */ jsx30("label", { htmlFor: id, className: "control-label", children: labelContent }),
1893
1881
  children,
1894
- (validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx31(InlineAlert, { type: "negative", id: descriptionId, children: validation.message })
1882
+ (validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx30(InlineAlert, { type: "negative", id: descriptionId, children: validation.message })
1895
1883
  ]
1896
1884
  }
1897
1885
  );
@@ -1923,7 +1911,7 @@ var getFileType = (base64Url) => {
1923
1911
  var getRandomId = () => Math.random().toString(36).substring(2);
1924
1912
 
1925
1913
  // ../renderers/src/MultiUploadInputRenderer.tsx
1926
- import { jsx as jsx32 } from "react/jsx-runtime";
1914
+ import { jsx as jsx31 } from "react/jsx-runtime";
1927
1915
  var MultiUploadInputRenderer = {
1928
1916
  canRenderType: "input-upload-multi",
1929
1917
  render: (props) => {
@@ -1950,7 +1938,7 @@ var MultiUploadInputRenderer = {
1950
1938
  };
1951
1939
  const onDeleteFile = async (fileId) => onDelete(String(fileId));
1952
1940
  const descriptionId = description ? `${id}-description` : void 0;
1953
- return /* @__PURE__ */ jsx32(
1941
+ return /* @__PURE__ */ jsx31(
1954
1942
  UploadFieldInput_default,
1955
1943
  {
1956
1944
  id,
@@ -1958,7 +1946,7 @@ var MultiUploadInputRenderer = {
1958
1946
  description,
1959
1947
  validation: validationState,
1960
1948
  help,
1961
- children: /* @__PURE__ */ jsx32(
1949
+ children: /* @__PURE__ */ jsx31(
1962
1950
  UploadInput,
1963
1951
  {
1964
1952
  id,
@@ -1982,7 +1970,7 @@ var MultiUploadInputRenderer_default = MultiUploadInputRenderer;
1982
1970
 
1983
1971
  // ../renderers/src/NumberInputRenderer.tsx
1984
1972
  import { Input as Input2, InputGroup as InputGroup2 } from "@transferwise/components";
1985
- import { jsx as jsx33 } from "react/jsx-runtime";
1973
+ import { jsx as jsx32 } from "react/jsx-runtime";
1986
1974
  var NumberInputRenderer = {
1987
1975
  canRenderType: "input-number",
1988
1976
  render: (props) => {
@@ -2009,7 +1997,7 @@ var NumberInputRenderer = {
2009
1997
  "value",
2010
1998
  "onChange"
2011
1999
  ]);
2012
- return /* @__PURE__ */ jsx33(
2000
+ return /* @__PURE__ */ jsx32(
2013
2001
  FieldInput_default,
2014
2002
  {
2015
2003
  id,
@@ -2017,7 +2005,7 @@ var NumberInputRenderer = {
2017
2005
  description,
2018
2006
  validation: validationState,
2019
2007
  help,
2020
- children: /* @__PURE__ */ jsx33(InputGroup2, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx33(
2008
+ children: /* @__PURE__ */ jsx32(InputGroup2, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx32(
2021
2009
  Input2,
2022
2010
  __spreadValues({
2023
2011
  id,
@@ -2042,9 +2030,9 @@ import { useIntl as useIntl3 } from "react-intl";
2042
2030
 
2043
2031
  // ../renderers/src/hooks/useSnackBarIfAvailable.ts
2044
2032
  import { SnackbarContext } from "@transferwise/components";
2045
- import { useContext as useContext3 } from "react";
2033
+ import { useContext as useContext2 } from "react";
2046
2034
  function useSnackBarIfAvailable() {
2047
- const context = useContext3(SnackbarContext);
2035
+ const context = useContext2(SnackbarContext);
2048
2036
  return context ? context.createSnackbar : () => {
2049
2037
  };
2050
2038
  }
@@ -2069,17 +2057,17 @@ var paragraph_messages_default = defineMessages3({
2069
2057
  });
2070
2058
 
2071
2059
  // ../renderers/src/ParagraphRenderer.tsx
2072
- import { jsx as jsx34, jsxs as jsxs9 } from "react/jsx-runtime";
2060
+ import { jsx as jsx33, jsxs as jsxs9 } from "react/jsx-runtime";
2073
2061
  var ParagraphRenderer = {
2074
2062
  canRenderType: "paragraph",
2075
- render: (props) => /* @__PURE__ */ jsx34(Paragraph, __spreadValues({}, props))
2063
+ render: (props) => /* @__PURE__ */ jsx33(Paragraph, __spreadValues({}, props))
2076
2064
  };
2077
2065
  function Paragraph({ align, control, margin, text }) {
2078
2066
  const className = getTextAlignmentAndMargin({ align, margin });
2079
- return control === "copyable" ? /* @__PURE__ */ jsx34(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx34(StandardParagraph, { className, text });
2067
+ return control === "copyable" ? /* @__PURE__ */ jsx33(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx33(StandardParagraph, { className, text });
2080
2068
  }
2081
2069
  function StandardParagraph({ text, className }) {
2082
- return /* @__PURE__ */ jsx34("p", { className: `np-text-body-large ${className}`, children: text });
2070
+ return /* @__PURE__ */ jsx33("p", { className: `np-text-body-large ${className}`, children: text });
2083
2071
  }
2084
2072
  function CopyableParagraph({
2085
2073
  text,
@@ -2094,7 +2082,7 @@ function CopyableParagraph({
2094
2082
  };
2095
2083
  const inputAlignmentClasses = getTextAlignmentAndMargin({ align, margin: "sm" });
2096
2084
  return /* @__PURE__ */ jsxs9("div", { className, children: [
2097
- /* @__PURE__ */ jsx34(
2085
+ /* @__PURE__ */ jsx33(
2098
2086
  Input3,
2099
2087
  {
2100
2088
  type: "text",
@@ -2103,7 +2091,7 @@ function CopyableParagraph({
2103
2091
  className: (0, import_classnames4.default)("text-ellipsis", inputAlignmentClasses)
2104
2092
  }
2105
2093
  ),
2106
- /* @__PURE__ */ jsx34(Button3, { block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
2094
+ /* @__PURE__ */ jsx33(Button3, { block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
2107
2095
  ] });
2108
2096
  }
2109
2097
  var ParagraphRenderer_default = ParagraphRenderer;
@@ -2141,10 +2129,10 @@ var repeatable_messages_default = defineMessages4({
2141
2129
 
2142
2130
  // ../renderers/src/RepeatableRenderer.tsx
2143
2131
  var import_classnames5 = __toESM(require_classnames());
2144
- import { Fragment as Fragment2, jsx as jsx35, jsxs as jsxs10 } from "react/jsx-runtime";
2132
+ import { Fragment as Fragment2, jsx as jsx34, jsxs as jsxs10 } from "react/jsx-runtime";
2145
2133
  var RepeatableRenderer = {
2146
2134
  canRenderType: "repeatable",
2147
- render: (props) => /* @__PURE__ */ jsx35(Repeatable, __spreadValues({}, props))
2135
+ render: (props) => /* @__PURE__ */ jsx34(Repeatable, __spreadValues({}, props))
2148
2136
  };
2149
2137
  function Repeatable(props) {
2150
2138
  const {
@@ -2184,8 +2172,8 @@ function Repeatable(props) {
2184
2172
  setOpenModalType(null);
2185
2173
  };
2186
2174
  return /* @__PURE__ */ jsxs10(Fragment2, { children: [
2187
- title && /* @__PURE__ */ jsx35(Header4, { title }),
2188
- description && /* @__PURE__ */ jsx35("p", { children: description }),
2175
+ title && /* @__PURE__ */ jsx34(Header4, { title }),
2176
+ description && /* @__PURE__ */ jsx34("p", { children: description }),
2189
2177
  /* @__PURE__ */ jsxs10(
2190
2178
  "div",
2191
2179
  {
@@ -2193,30 +2181,30 @@ function Repeatable(props) {
2193
2181
  "has-error": (validationState == null ? void 0 : validationState.status) === "invalid"
2194
2182
  }),
2195
2183
  children: [
2196
- items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx35(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
2197
- /* @__PURE__ */ jsx35(
2184
+ items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx34(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
2185
+ /* @__PURE__ */ jsx34(
2198
2186
  NavigationOption2,
2199
2187
  {
2200
- media: /* @__PURE__ */ jsx35(Plus, {}),
2188
+ media: /* @__PURE__ */ jsx34(Plus, {}),
2201
2189
  title: addItemTitle || formatMessage(repeatable_messages_default.addItemTitle),
2202
2190
  showMediaAtAllSizes: true,
2203
2191
  onClick: () => onAddItem()
2204
2192
  }
2205
2193
  ),
2206
- (validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx35(InlineAlert2, { type: "negative", children: validationState.message })
2194
+ (validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx34(InlineAlert2, { type: "negative", children: validationState.message })
2207
2195
  ]
2208
2196
  }
2209
2197
  ),
2210
- /* @__PURE__ */ jsx35(
2198
+ /* @__PURE__ */ jsx34(
2211
2199
  Modal2,
2212
2200
  {
2213
2201
  open: openModalType !== null,
2214
2202
  title: (openModalType === "add" ? addItemTitle : editItemTitle) || formatMessage(repeatable_messages_default.addItemTitle),
2215
2203
  body: /* @__PURE__ */ jsxs10(Fragment2, { children: [
2216
- /* @__PURE__ */ jsx35("div", { className: "m-b-2", children: editableItem }),
2204
+ /* @__PURE__ */ jsx34("div", { className: "m-b-2", children: editableItem }),
2217
2205
  /* @__PURE__ */ jsxs10("div", { children: [
2218
- /* @__PURE__ */ jsx35(Button4, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
2219
- /* @__PURE__ */ jsx35(Button4, { priority: "secondary", type: "negative", block: true, onClick: () => onRemoveItem(), children: formatMessage(repeatable_messages_default.removeItem) })
2206
+ /* @__PURE__ */ jsx34(Button4, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
2207
+ /* @__PURE__ */ jsx34(Button4, { priority: "secondary", type: "negative", block: true, onClick: () => onRemoveItem(), children: formatMessage(repeatable_messages_default.removeItem) })
2220
2208
  ] })
2221
2209
  ] }),
2222
2210
  onClose: () => onCancelEdit()
@@ -2228,10 +2216,10 @@ function ItemSummaryOption({
2228
2216
  item,
2229
2217
  onClick
2230
2218
  }) {
2231
- return /* @__PURE__ */ jsx35(
2219
+ return /* @__PURE__ */ jsx34(
2232
2220
  NavigationOption2,
2233
2221
  {
2234
- media: /* @__PURE__ */ jsx35(NavigationOptionMedia, __spreadValues({}, item)),
2222
+ media: /* @__PURE__ */ jsx34(NavigationOptionMedia, __spreadValues({}, item)),
2235
2223
  title: item.title,
2236
2224
  content: item.description,
2237
2225
  showMediaAtAllSizes: true,
@@ -2269,7 +2257,7 @@ var generic_error_messages_default = defineMessages5({
2269
2257
 
2270
2258
  // ../renderers/src/SearchRenderer/ErrorResult.tsx
2271
2259
  import { Button as Button5 } from "@transferwise/components";
2272
- import { jsx as jsx36, jsxs as jsxs11 } from "react/jsx-runtime";
2260
+ import { jsx as jsx35, jsxs as jsxs11 } from "react/jsx-runtime";
2273
2261
  function ErrorResult({ state }) {
2274
2262
  const intl = useIntl5();
2275
2263
  const buttonVisualProps = {
@@ -2280,7 +2268,7 @@ function ErrorResult({ state }) {
2280
2268
  return /* @__PURE__ */ jsxs11("p", { className: "m-t-2", children: [
2281
2269
  intl.formatMessage(generic_error_messages_default.genericError),
2282
2270
  "\xA0",
2283
- /* @__PURE__ */ jsx36(
2271
+ /* @__PURE__ */ jsx35(
2284
2272
  Button5,
2285
2273
  __spreadProps(__spreadValues({}, buttonVisualProps), {
2286
2274
  onClick: () => {
@@ -2307,7 +2295,7 @@ var search_messages_default = defineMessages6({
2307
2295
 
2308
2296
  // ../renderers/src/SearchRenderer/BlockSearchRendererComponent.tsx
2309
2297
  import { useIntl as useIntl6 } from "react-intl";
2310
- import { Fragment as Fragment3, jsx as jsx37, jsxs as jsxs12 } from "react/jsx-runtime";
2298
+ import { Fragment as Fragment3, jsx as jsx36, jsxs as jsxs12 } from "react/jsx-runtime";
2311
2299
  function BlockSearchRendererComponent({
2312
2300
  id,
2313
2301
  isLoading,
@@ -2321,7 +2309,7 @@ function BlockSearchRendererComponent({
2321
2309
  const trackEvent = useTrackEvent();
2322
2310
  const { formatMessage } = useIntl6();
2323
2311
  return /* @__PURE__ */ jsxs12("div", { className: getMargin(margin), children: [
2324
- /* @__PURE__ */ jsx37(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx37(
2312
+ /* @__PURE__ */ jsx36(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx36(
2325
2313
  Input4,
2326
2314
  {
2327
2315
  id,
@@ -2338,7 +2326,7 @@ function BlockSearchRendererComponent({
2338
2326
  }
2339
2327
  }
2340
2328
  ) }),
2341
- isLoading ? /* @__PURE__ */ jsx37(Fragment3, { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx37(SearchResultContent, { state, onChange })
2329
+ isLoading ? /* @__PURE__ */ jsx36(Fragment3, { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx36(SearchResultContent, { state, onChange })
2342
2330
  ] });
2343
2331
  }
2344
2332
  function SearchResultContent({
@@ -2347,26 +2335,26 @@ function SearchResultContent({
2347
2335
  }) {
2348
2336
  switch (state.type) {
2349
2337
  case "error":
2350
- return /* @__PURE__ */ jsx37(ErrorResult, { state });
2338
+ return /* @__PURE__ */ jsx36(ErrorResult, { state });
2351
2339
  case "results":
2352
- return /* @__PURE__ */ jsx37(SearchResults, { state, onChange });
2340
+ return /* @__PURE__ */ jsx36(SearchResults, { state, onChange });
2353
2341
  case "noResults":
2354
- return /* @__PURE__ */ jsx37(EmptySearchResult, { state });
2342
+ return /* @__PURE__ */ jsx36(EmptySearchResult, { state });
2355
2343
  case "pending":
2356
2344
  default:
2357
2345
  return null;
2358
2346
  }
2359
2347
  }
2360
2348
  function EmptySearchResult({ state }) {
2361
- return /* @__PURE__ */ jsx37(Markdown3, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
2349
+ return /* @__PURE__ */ jsx36(Markdown3, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
2362
2350
  }
2363
2351
  function SearchResults({
2364
2352
  state
2365
2353
  }) {
2366
2354
  const trackEvent = useTrackEvent();
2367
- return /* @__PURE__ */ jsx37(NavigationOptionsList2, { children: state.results.map((result) => {
2355
+ return /* @__PURE__ */ jsx36(NavigationOptionsList2, { children: state.results.map((result) => {
2368
2356
  const { icon, image } = result;
2369
- return /* @__PURE__ */ jsx37(
2357
+ return /* @__PURE__ */ jsx36(
2370
2358
  NavigationOption3,
2371
2359
  {
2372
2360
  title: result.title,
@@ -2392,7 +2380,7 @@ import { Markdown as Markdown4, Typeahead } from "@transferwise/components";
2392
2380
  import { Search } from "@transferwise/icons";
2393
2381
  import { useState as useState7 } from "react";
2394
2382
  import { useIntl as useIntl7 } from "react-intl";
2395
- import { jsx as jsx38 } from "react/jsx-runtime";
2383
+ import { jsx as jsx37 } from "react/jsx-runtime";
2396
2384
  function InlineSearchRenderer({
2397
2385
  id,
2398
2386
  isLoading,
@@ -2404,7 +2392,7 @@ function InlineSearchRenderer({
2404
2392
  const [hasSearched, setHasSearched] = useState7(false);
2405
2393
  const trackEvent = useTrackEvent();
2406
2394
  const intl = useIntl7();
2407
- return /* @__PURE__ */ jsx38("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx38(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx38(
2395
+ return /* @__PURE__ */ jsx37("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx37(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx37(
2408
2396
  Typeahead,
2409
2397
  {
2410
2398
  id: "typeahead-input-id",
@@ -2412,10 +2400,10 @@ function InlineSearchRenderer({
2412
2400
  name: "typeahead-input-name",
2413
2401
  size: "md",
2414
2402
  maxHeight: 100,
2415
- footer: /* @__PURE__ */ jsx38(TypeaheadFooter, { state, isLoading }),
2403
+ footer: /* @__PURE__ */ jsx37(TypeaheadFooter, { state, isLoading }),
2416
2404
  multiple: false,
2417
2405
  clearable: false,
2418
- addon: /* @__PURE__ */ jsx38(Search, { size: 24 }),
2406
+ addon: /* @__PURE__ */ jsx37(Search, { size: 24 }),
2419
2407
  options: state.type === "results" ? state.results.map(mapResultToTypeaheadOption) : [],
2420
2408
  minQueryLength: 1,
2421
2409
  onChange: (values) => {
@@ -2452,29 +2440,29 @@ function mapResultToTypeaheadOption(result) {
2452
2440
  function TypeaheadFooter({ state, isLoading }) {
2453
2441
  const { formatMessage } = useIntl7();
2454
2442
  if (state.type === "noResults") {
2455
- return /* @__PURE__ */ jsx38(Markdown4, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
2443
+ return /* @__PURE__ */ jsx37(Markdown4, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
2456
2444
  }
2457
2445
  if (state.type === "error") {
2458
- return /* @__PURE__ */ jsx38("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx38(ErrorResult, { state }) });
2446
+ return /* @__PURE__ */ jsx37("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx37(ErrorResult, { state }) });
2459
2447
  }
2460
2448
  if (state.type === "pending" || isLoading) {
2461
- return /* @__PURE__ */ jsx38("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
2449
+ return /* @__PURE__ */ jsx37("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
2462
2450
  }
2463
2451
  return null;
2464
2452
  }
2465
2453
  var InlineSearchRendererComponent_default = InlineSearchRenderer;
2466
2454
 
2467
2455
  // ../renderers/src/SearchRenderer/SearchRenderer.tsx
2468
- import { jsx as jsx39 } from "react/jsx-runtime";
2456
+ import { jsx as jsx38 } from "react/jsx-runtime";
2469
2457
  var SearchRenderer = {
2470
2458
  canRenderType: "search",
2471
- render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx39(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx39(BlockSearchRendererComponent_default, __spreadValues({}, props))
2459
+ render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx38(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx38(BlockSearchRendererComponent_default, __spreadValues({}, props))
2472
2460
  };
2473
2461
  var SearchRenderer_default = SearchRenderer;
2474
2462
 
2475
2463
  // ../renderers/src/SelectInputRenderer/RadioInputRendererComponent.tsx
2476
2464
  import { RadioGroup } from "@transferwise/components";
2477
- import { Fragment as Fragment4, jsx as jsx40, jsxs as jsxs13 } from "react/jsx-runtime";
2465
+ import { Fragment as Fragment4, jsx as jsx39, jsxs as jsxs13 } from "react/jsx-runtime";
2478
2466
  function RadioInputRendererComponent(props) {
2479
2467
  const {
2480
2468
  id,
@@ -2489,7 +2477,7 @@ function RadioInputRendererComponent(props) {
2489
2477
  onSelect
2490
2478
  } = props;
2491
2479
  return /* @__PURE__ */ jsxs13(Fragment4, { children: [
2492
- /* @__PURE__ */ jsx40(
2480
+ /* @__PURE__ */ jsx39(
2493
2481
  FieldInput_default,
2494
2482
  {
2495
2483
  id,
@@ -2497,7 +2485,7 @@ function RadioInputRendererComponent(props) {
2497
2485
  help,
2498
2486
  description,
2499
2487
  validation: validationState,
2500
- children: /* @__PURE__ */ jsx40("span", { children: /* @__PURE__ */ jsx40(
2488
+ children: /* @__PURE__ */ jsx39("span", { children: /* @__PURE__ */ jsx39(
2501
2489
  RadioGroup,
2502
2490
  {
2503
2491
  name: id,
@@ -2506,7 +2494,7 @@ function RadioInputRendererComponent(props) {
2506
2494
  value: index,
2507
2495
  secondary: option.description,
2508
2496
  disabled: option.disabled || disabled,
2509
- avatar: /* @__PURE__ */ jsx40(OptionMedia, { icon: option.icon, image: option.image })
2497
+ avatar: /* @__PURE__ */ jsx39(OptionMedia, { icon: option.icon, image: option.image })
2510
2498
  })),
2511
2499
  selectedValue: selectedIndex != null ? selectedIndex : void 0,
2512
2500
  onChange: onSelect
@@ -2522,7 +2510,7 @@ function RadioInputRendererComponent(props) {
2522
2510
  // ../renderers/src/SelectInputRenderer/TabInputRendererComponent.tsx
2523
2511
  import { Tabs } from "@transferwise/components";
2524
2512
  import { useEffect as useEffect3 } from "react";
2525
- import { Fragment as Fragment5, jsx as jsx41, jsxs as jsxs14 } from "react/jsx-runtime";
2513
+ import { Fragment as Fragment5, jsx as jsx40, jsxs as jsxs14 } from "react/jsx-runtime";
2526
2514
  function TabInputRendererComponent(props) {
2527
2515
  const {
2528
2516
  id,
@@ -2542,7 +2530,7 @@ function TabInputRendererComponent(props) {
2542
2530
  }
2543
2531
  }, [selectedIndex, onSelect, options.length]);
2544
2532
  return /* @__PURE__ */ jsxs14(Fragment5, { children: [
2545
- /* @__PURE__ */ jsx41(
2533
+ /* @__PURE__ */ jsx40(
2546
2534
  FieldInput_default,
2547
2535
  {
2548
2536
  id,
@@ -2550,7 +2538,7 @@ function TabInputRendererComponent(props) {
2550
2538
  help,
2551
2539
  description,
2552
2540
  validation: validationState,
2553
- children: /* @__PURE__ */ jsx41(
2541
+ children: /* @__PURE__ */ jsx40(
2554
2542
  Tabs,
2555
2543
  {
2556
2544
  name: id,
@@ -2559,7 +2547,7 @@ function TabInputRendererComponent(props) {
2559
2547
  title: option.title,
2560
2548
  // if we pass null, we get some props-types console errors
2561
2549
  // eslint-disable-next-line react/jsx-no-useless-fragment
2562
- content: /* @__PURE__ */ jsx41(Fragment5, {}),
2550
+ content: /* @__PURE__ */ jsx40(Fragment5, {}),
2563
2551
  disabled: option.disabled || disabled
2564
2552
  })),
2565
2553
  onTabSelect: onSelect
@@ -2574,7 +2562,7 @@ var isValidIndex = (index, options) => index !== null && index >= 0 && index < o
2574
2562
 
2575
2563
  // ../renderers/src/SelectInputRenderer/SelectInputRendererComponent.tsx
2576
2564
  import { SelectInput as SelectInput2, SelectInputOptionContent as SelectInputOptionContent2 } from "@transferwise/components";
2577
- import { Fragment as Fragment6, jsx as jsx42, jsxs as jsxs15 } from "react/jsx-runtime";
2565
+ import { Fragment as Fragment6, jsx as jsx41, jsxs as jsxs15 } from "react/jsx-runtime";
2578
2566
  function SelectInputRendererComponent(props) {
2579
2567
  const {
2580
2568
  id,
@@ -2614,13 +2602,13 @@ function SelectInputRendererComponent(props) {
2614
2602
  } : {
2615
2603
  title: option.title,
2616
2604
  description: option.description,
2617
- icon: /* @__PURE__ */ jsx42(OptionMedia, { icon: option.icon, image: option.image })
2605
+ icon: /* @__PURE__ */ jsx41(OptionMedia, { icon: option.icon, image: option.image })
2618
2606
  };
2619
- return /* @__PURE__ */ jsx42(SelectInputOptionContent2, __spreadValues({}, contentProps));
2607
+ return /* @__PURE__ */ jsx41(SelectInputOptionContent2, __spreadValues({}, contentProps));
2620
2608
  };
2621
2609
  const extraProps = { autoComplete };
2622
2610
  return /* @__PURE__ */ jsxs15(Fragment6, { children: [
2623
- /* @__PURE__ */ jsx42(
2611
+ /* @__PURE__ */ jsx41(
2624
2612
  FieldInput_default,
2625
2613
  {
2626
2614
  id,
@@ -2628,7 +2616,7 @@ function SelectInputRendererComponent(props) {
2628
2616
  help,
2629
2617
  description,
2630
2618
  validation: validationState,
2631
- children: /* @__PURE__ */ jsx42(
2619
+ children: /* @__PURE__ */ jsx41(
2632
2620
  SelectInput2,
2633
2621
  __spreadValues({
2634
2622
  name: id,
@@ -2651,7 +2639,7 @@ function SelectInputRendererComponent(props) {
2651
2639
  // ../renderers/src/SelectInputRenderer/SegmentedInputRendererComponent.tsx
2652
2640
  import { useEffect as useEffect4 } from "react";
2653
2641
  import { SegmentedControl } from "@transferwise/components";
2654
- import { Fragment as Fragment7, jsx as jsx43, jsxs as jsxs16 } from "react/jsx-runtime";
2642
+ import { Fragment as Fragment7, jsx as jsx42, jsxs as jsxs16 } from "react/jsx-runtime";
2655
2643
  function SegmentedInputRendererComponent(props) {
2656
2644
  const {
2657
2645
  id,
@@ -2670,7 +2658,7 @@ function SegmentedInputRendererComponent(props) {
2670
2658
  }
2671
2659
  }, [selectedIndex, onSelect, options.length]);
2672
2660
  return /* @__PURE__ */ jsxs16(Fragment7, { children: [
2673
- /* @__PURE__ */ jsx43(
2661
+ /* @__PURE__ */ jsx42(
2674
2662
  FieldInput_default,
2675
2663
  {
2676
2664
  id,
@@ -2678,7 +2666,7 @@ function SegmentedInputRendererComponent(props) {
2678
2666
  help,
2679
2667
  description,
2680
2668
  validation: validationState,
2681
- children: /* @__PURE__ */ jsx43(
2669
+ children: /* @__PURE__ */ jsx42(
2682
2670
  SegmentedControl,
2683
2671
  {
2684
2672
  name: `${id}-segmented-control`,
@@ -2695,26 +2683,26 @@ function SegmentedInputRendererComponent(props) {
2695
2683
  )
2696
2684
  }
2697
2685
  ),
2698
- /* @__PURE__ */ jsx43("div", { id: `${id}-children`, children })
2686
+ /* @__PURE__ */ jsx42("div", { id: `${id}-children`, children })
2699
2687
  ] });
2700
2688
  }
2701
2689
  var isValidIndex2 = (index, options) => index !== null && index >= 0 && index < options;
2702
2690
 
2703
2691
  // ../renderers/src/SelectInputRenderer/SelectInputRenderer.tsx
2704
- import { jsx as jsx44 } from "react/jsx-runtime";
2692
+ import { jsx as jsx43 } from "react/jsx-runtime";
2705
2693
  var SelectInputRenderer = {
2706
2694
  canRenderType: "input-select",
2707
2695
  render: (props) => {
2708
2696
  switch (props.control) {
2709
2697
  case "radio":
2710
- return /* @__PURE__ */ jsx44(RadioInputRendererComponent, __spreadValues({}, props));
2698
+ return /* @__PURE__ */ jsx43(RadioInputRendererComponent, __spreadValues({}, props));
2711
2699
  case "tab":
2712
- return props.options.length > 3 ? /* @__PURE__ */ jsx44(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx44(TabInputRendererComponent, __spreadValues({}, props));
2700
+ return props.options.length > 3 ? /* @__PURE__ */ jsx43(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx43(TabInputRendererComponent, __spreadValues({}, props));
2713
2701
  case "segmented":
2714
- return props.options.length > 3 ? /* @__PURE__ */ jsx44(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx44(SegmentedInputRendererComponent, __spreadValues({}, props));
2702
+ return props.options.length > 3 ? /* @__PURE__ */ jsx43(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx43(SegmentedInputRendererComponent, __spreadValues({}, props));
2715
2703
  case "select":
2716
2704
  default:
2717
- return /* @__PURE__ */ jsx44(SelectInputRendererComponent, __spreadValues({}, props));
2705
+ return /* @__PURE__ */ jsx43(SelectInputRendererComponent, __spreadValues({}, props));
2718
2706
  }
2719
2707
  }
2720
2708
  };
@@ -2722,17 +2710,17 @@ var SelectInputRenderer_default = SelectInputRenderer;
2722
2710
 
2723
2711
  // ../renderers/src/StatusListRenderer.tsx
2724
2712
  import { Header as Header5, Summary } from "@transferwise/components";
2725
- import { jsx as jsx45, jsxs as jsxs17 } from "react/jsx-runtime";
2713
+ import { jsx as jsx44, jsxs as jsxs17 } from "react/jsx-runtime";
2726
2714
  var StatusListRenderer = {
2727
2715
  canRenderType: "status-list",
2728
2716
  render: ({ margin, items, title }) => /* @__PURE__ */ jsxs17("div", { className: getMargin(margin), children: [
2729
- title ? /* @__PURE__ */ jsx45(Header5, { title }) : null,
2730
- items.map(({ callToAction, description, icon, status, title: itemTitle }) => /* @__PURE__ */ jsx45(
2717
+ title ? /* @__PURE__ */ jsx44(Header5, { title, className: "m-b-2" }) : null,
2718
+ items.map(({ callToAction, description, icon, status, title: itemTitle }) => /* @__PURE__ */ jsx44(
2731
2719
  Summary,
2732
2720
  {
2733
2721
  title: itemTitle,
2734
2722
  description,
2735
- icon: icon && "name" in icon ? /* @__PURE__ */ jsx45(DynamicIcon_default, { name: icon.name }) : null,
2723
+ icon: icon && "name" in icon ? /* @__PURE__ */ jsx44(DynamicIcon_default, { name: icon.name }) : null,
2736
2724
  status: mapStatus(status),
2737
2725
  action: getSummaryAction(callToAction)
2738
2726
  },
@@ -2778,31 +2766,31 @@ import {
2778
2766
  TextArea,
2779
2767
  TextareaWithDisplayFormat
2780
2768
  } from "@transferwise/components";
2781
- import { jsx as jsx46 } from "react/jsx-runtime";
2769
+ import { jsx as jsx45 } from "react/jsx-runtime";
2782
2770
  function VariableTextInput({
2783
2771
  control,
2784
2772
  inputProps
2785
2773
  }) {
2786
2774
  switch (control) {
2787
2775
  case "password":
2788
- return /* @__PURE__ */ jsx46(TextInput, __spreadValues({ type: "password" }, inputProps));
2776
+ return /* @__PURE__ */ jsx45(TextInput, __spreadValues({ type: "password" }, inputProps));
2789
2777
  case "email":
2790
- return /* @__PURE__ */ jsx46(TextInput, __spreadValues({ type: "email" }, inputProps));
2778
+ return /* @__PURE__ */ jsx45(TextInput, __spreadValues({ type: "email" }, inputProps));
2791
2779
  case "textarea":
2792
- return /* @__PURE__ */ jsx46(TextAreaInput, __spreadValues({}, inputProps));
2780
+ return /* @__PURE__ */ jsx45(TextAreaInput, __spreadValues({}, inputProps));
2793
2781
  case "numeric":
2794
- return /* @__PURE__ */ jsx46(NumericInput, __spreadValues({ type: "number" }, inputProps));
2782
+ return /* @__PURE__ */ jsx45(NumericInput, __spreadValues({ type: "number" }, inputProps));
2795
2783
  case "phone-number":
2796
- return /* @__PURE__ */ jsx46(PhoneNumberInput, __spreadValues({}, inputProps));
2784
+ return /* @__PURE__ */ jsx45(PhoneNumberInput, __spreadValues({}, inputProps));
2797
2785
  default:
2798
- return /* @__PURE__ */ jsx46(TextInput, __spreadValues({ type: "text" }, inputProps));
2786
+ return /* @__PURE__ */ jsx45(TextInput, __spreadValues({ type: "text" }, inputProps));
2799
2787
  }
2800
2788
  }
2801
2789
  function TextInput(_a) {
2802
2790
  var _b = _a, { id, displayFormat, onChange } = _b, rest = __objRest(_b, ["id", "displayFormat", "onChange"]);
2803
2791
  if (typeof displayFormat === "string") {
2804
2792
  const inputProps = __spreadValues({ id, name: id, className: "form-control" }, rest);
2805
- return /* @__PURE__ */ jsx46(
2793
+ return /* @__PURE__ */ jsx45(
2806
2794
  InputWithDisplayFormat,
2807
2795
  __spreadValues({
2808
2796
  displayPattern: displayFormat,
@@ -2810,29 +2798,29 @@ function TextInput(_a) {
2810
2798
  }, inputProps)
2811
2799
  );
2812
2800
  }
2813
- return /* @__PURE__ */ jsx46(Input5, __spreadValues({ id, name: id, onChange: (e) => onChange(e.target.value) }, rest));
2801
+ return /* @__PURE__ */ jsx45(Input5, __spreadValues({ id, name: id, onChange: (e) => onChange(e.target.value) }, rest));
2814
2802
  }
2815
2803
  function TextAreaInput(_a) {
2816
2804
  var _b = _a, { id, displayFormat, onChange } = _b, rest = __objRest(_b, ["id", "displayFormat", "onChange"]);
2817
2805
  const textAreaProps = __spreadValues({ id, name: id }, rest);
2818
- return typeof displayFormat === "string" ? /* @__PURE__ */ jsx46(
2806
+ return typeof displayFormat === "string" ? /* @__PURE__ */ jsx45(
2819
2807
  TextareaWithDisplayFormat,
2820
2808
  __spreadValues({
2821
2809
  displayPattern: displayFormat,
2822
2810
  onChange: (newValue) => onChange(newValue)
2823
2811
  }, textAreaProps)
2824
- ) : /* @__PURE__ */ jsx46(TextArea, __spreadValues({ onChange: (e) => onChange(e.target.value) }, textAreaProps));
2812
+ ) : /* @__PURE__ */ jsx45(TextArea, __spreadValues({ onChange: (e) => onChange(e.target.value) }, textAreaProps));
2825
2813
  }
2826
2814
  function NumericInput(_a) {
2827
2815
  var _b = _a, { id, displayFormat, onChange } = _b, rest = __objRest(_b, ["id", "displayFormat", "onChange"]);
2828
2816
  const numericProps = __spreadValues({ id, name: id, onWheel }, rest);
2829
- return typeof displayFormat === "string" ? /* @__PURE__ */ jsx46(
2817
+ return typeof displayFormat === "string" ? /* @__PURE__ */ jsx45(
2830
2818
  InputWithDisplayFormat,
2831
2819
  __spreadValues({
2832
2820
  displayPattern: displayFormat,
2833
2821
  onChange: (newValue) => onChange(numericValueOrNull(newValue))
2834
2822
  }, numericProps)
2835
- ) : /* @__PURE__ */ jsx46(
2823
+ ) : /* @__PURE__ */ jsx45(
2836
2824
  Input5,
2837
2825
  __spreadValues({
2838
2826
  onChange: ({ target: { value: newValue } }) => onChange(numericValueOrNull(newValue))
@@ -2841,12 +2829,12 @@ function NumericInput(_a) {
2841
2829
  }
2842
2830
  function PhoneNumberInput(_a) {
2843
2831
  var _b = _a, { value } = _b, rest = __objRest(_b, ["value"]);
2844
- return /* @__PURE__ */ jsx46(PhoneNumber, __spreadValues({ initialValue: value }, rest));
2832
+ return /* @__PURE__ */ jsx45(PhoneNumber, __spreadValues({ initialValue: value }, rest));
2845
2833
  }
2846
2834
  var VariableTextInput_default = VariableTextInput;
2847
2835
 
2848
2836
  // ../renderers/src/TextInputRenderer.tsx
2849
- import { jsx as jsx47 } from "react/jsx-runtime";
2837
+ import { jsx as jsx46 } from "react/jsx-runtime";
2850
2838
  var TextInputRenderer = {
2851
2839
  canRenderType: "input-text",
2852
2840
  render: (props) => {
@@ -2881,7 +2869,7 @@ var TextInputRenderer = {
2881
2869
  ]);
2882
2870
  const value = initialValue != null ? initialValue : "";
2883
2871
  const inputProps = __spreadProps(__spreadValues({}, rest), { value, id });
2884
- return /* @__PURE__ */ jsx47(
2872
+ return /* @__PURE__ */ jsx46(
2885
2873
  FieldInput_default,
2886
2874
  {
2887
2875
  id,
@@ -2889,7 +2877,7 @@ var TextInputRenderer = {
2889
2877
  description,
2890
2878
  validation: validationState,
2891
2879
  help,
2892
- children: /* @__PURE__ */ jsx47(InputGroup3, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx47(VariableTextInput_default, { control, inputProps }) })
2880
+ children: /* @__PURE__ */ jsx46(InputGroup3, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx46(VariableTextInput_default, { control, inputProps }) })
2893
2881
  }
2894
2882
  );
2895
2883
  }
@@ -2898,7 +2886,7 @@ var TextInputRenderer_default = TextInputRenderer;
2898
2886
 
2899
2887
  // ../renderers/src/UploadInputRenderer.tsx
2900
2888
  import { Upload, UploadInput as UploadInput2 } from "@transferwise/components";
2901
- import { jsx as jsx48 } from "react/jsx-runtime";
2889
+ import { jsx as jsx47 } from "react/jsx-runtime";
2902
2890
  var UploadInputRenderer = {
2903
2891
  canRenderType: "input-upload",
2904
2892
  render: (props) => {
@@ -2914,14 +2902,14 @@ var UploadInputRenderer = {
2914
2902
  };
2915
2903
  return (
2916
2904
  // We don't pass help here as there is no sensible place to display it
2917
- /* @__PURE__ */ jsx48(
2905
+ /* @__PURE__ */ jsx47(
2918
2906
  UploadFieldInput_default,
2919
2907
  {
2920
2908
  id,
2921
2909
  label: void 0,
2922
2910
  description: void 0,
2923
2911
  validation: validationState,
2924
- children: /* @__PURE__ */ jsx48(
2912
+ children: /* @__PURE__ */ jsx47(
2925
2913
  UploadInput2,
2926
2914
  {
2927
2915
  id,
@@ -2978,7 +2966,7 @@ var LargeUploadRenderer = {
2978
2966
  throw e;
2979
2967
  }
2980
2968
  };
2981
- return /* @__PURE__ */ jsx48(
2969
+ return /* @__PURE__ */ jsx47(
2982
2970
  FieldInput_default,
2983
2971
  {
2984
2972
  id,
@@ -2986,7 +2974,7 @@ var LargeUploadRenderer = {
2986
2974
  description,
2987
2975
  validation: validationState,
2988
2976
  help,
2989
- children: /* @__PURE__ */ jsx48(
2977
+ children: /* @__PURE__ */ jsx47(
2990
2978
  Upload,
2991
2979
  __spreadProps(__spreadValues({}, uploadProps), {
2992
2980
  usAccept: getAcceptsString(accepts),
@@ -3003,14 +2991,14 @@ var LargeUploadRenderer = {
3003
2991
 
3004
2992
  // ../renderers/src/ReviewRenderer.tsx
3005
2993
  import { DefinitionList, Header as Header6 } from "@transferwise/components";
3006
- import { Fragment as Fragment8, jsx as jsx49, jsxs as jsxs18 } from "react/jsx-runtime";
2994
+ import { Fragment as Fragment8, jsx as jsx48, jsxs as jsxs18 } from "react/jsx-runtime";
3007
2995
  var ReviewRenderer = {
3008
2996
  canRenderType: "review",
3009
2997
  render: ({ callToAction, control, fields, margin, title }) => {
3010
2998
  const orientation = mapControlToDefinitionListLayout(control);
3011
2999
  return /* @__PURE__ */ jsxs18("div", { className: getMargin(margin), children: [
3012
- (title || callToAction) && /* @__PURE__ */ jsx49(Header6, { title: title != null ? title : "", action: getReviewAction(callToAction) }),
3013
- /* @__PURE__ */ jsx49("div", { className: margin, children: /* @__PURE__ */ jsx49(
3000
+ (title || callToAction) && /* @__PURE__ */ jsx48(Header6, { title: title != null ? title : "", action: getReviewAction(callToAction) }),
3001
+ /* @__PURE__ */ jsx48("div", { className: margin, children: /* @__PURE__ */ jsx48(
3014
3002
  DefinitionList,
3015
3003
  {
3016
3004
  layout: orientation,
@@ -3043,13 +3031,13 @@ var mapControlToDefinitionListLayout = (control) => {
3043
3031
  var getFieldValue = (value, help, orientation) => {
3044
3032
  if (help) {
3045
3033
  return orientation === "HORIZONTAL_RIGHT_ALIGNED" ? /* @__PURE__ */ jsxs18(Fragment8, { children: [
3046
- /* @__PURE__ */ jsx49(Help_default, { help }),
3034
+ /* @__PURE__ */ jsx48(Help_default, { help }),
3047
3035
  " ",
3048
3036
  value
3049
3037
  ] }) : /* @__PURE__ */ jsxs18(Fragment8, { children: [
3050
3038
  value,
3051
3039
  " ",
3052
- /* @__PURE__ */ jsx49(Help_default, { help })
3040
+ /* @__PURE__ */ jsx48(Help_default, { help })
3053
3041
  ] });
3054
3042
  }
3055
3043
  return value;
@@ -3078,7 +3066,29 @@ var getReviewAction = (callToAction) => {
3078
3066
  };
3079
3067
 
3080
3068
  // ../renderers/src/step/StepRenderer.tsx
3081
- import { useMemo } from "react";
3069
+ import { Alert as Alert2, Title } from "@transferwise/components";
3070
+
3071
+ // ../renderers/src/step/BackButton.tsx
3072
+ import { Avatar as Avatar4 } from "@transferwise/components";
3073
+ import { ArrowLeft } from "@transferwise/icons";
3074
+ import { jsx as jsx49, jsxs as jsxs19 } from "react/jsx-runtime";
3075
+ function BackButton({ title, onClick }) {
3076
+ return /* @__PURE__ */ jsx49("div", { className: "m-b-2", children: /* @__PURE__ */ jsxs19(
3077
+ "button",
3078
+ {
3079
+ type: "button",
3080
+ className: "df-back-btn",
3081
+ title,
3082
+ "aria-label": title,
3083
+ onClick,
3084
+ children: [
3085
+ /* @__PURE__ */ jsx49("span", { className: "sr-only", children: title }),
3086
+ /* @__PURE__ */ jsx49(Avatar4, { type: "icon", children: /* @__PURE__ */ jsx49(ArrowLeft, { size: "24" }) })
3087
+ ]
3088
+ }
3089
+ ) });
3090
+ }
3091
+ var BackButton_default = BackButton;
3082
3092
 
3083
3093
  // ../renderers/src/step/ExternalConfirmationDialog.tsx
3084
3094
  import { useIntl as useIntl8 } from "react-intl";
@@ -3110,16 +3120,16 @@ var external_confirmation_messages_default = defineMessages7({
3110
3120
 
3111
3121
  // ../renderers/src/step/ExternalConfirmationDialog.tsx
3112
3122
  import { Button as Button6, Markdown as Markdown5 } from "@transferwise/components";
3113
- import { jsx as jsx50, jsxs as jsxs19 } from "react/jsx-runtime";
3123
+ import { jsx as jsx50, jsxs as jsxs20 } from "react/jsx-runtime";
3114
3124
  function ExternalConfirmationDialog({
3115
3125
  external,
3116
3126
  onClose
3117
3127
  }) {
3118
3128
  const { formatMessage } = useIntl8();
3119
- return /* @__PURE__ */ jsx50("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs19("div", { className: "df-box-renderer-width-lg", children: [
3129
+ return /* @__PURE__ */ jsx50("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs20("div", { className: "df-box-renderer-width-lg", children: [
3120
3130
  /* @__PURE__ */ jsx50("h2", { className: "text-xs-center m-b-5", children: formatMessage(external_confirmation_messages_default.title) }),
3121
3131
  /* @__PURE__ */ jsx50(Markdown5, { config: { link: { target: "_blank" } }, className: "text-xs-center m-b-5", children: formatMessage(external_confirmation_messages_default.description, { origin: getOrigin(external.url) }) }),
3122
- /* @__PURE__ */ jsx50("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs19("div", { className: "df-box-renderer-width-lg", children: [
3132
+ /* @__PURE__ */ jsx50("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs20("div", { className: "df-box-renderer-width-lg", children: [
3123
3133
  /* @__PURE__ */ jsx50(
3124
3134
  Button6,
3125
3135
  {
@@ -3162,49 +3172,25 @@ function useExternal(url) {
3162
3172
  return { requiresUserConfirmation, dismissConfirmation };
3163
3173
  }
3164
3174
 
3165
- // ../renderers/src/step/BackButton.tsx
3166
- import { Avatar as Avatar4 } from "@transferwise/components";
3167
- import { ArrowLeft } from "@transferwise/icons";
3168
- import { jsx as jsx51, jsxs as jsxs20 } from "react/jsx-runtime";
3169
- function BackButton({ title, onClick }) {
3170
- return /* @__PURE__ */ jsx51("div", { className: "m-b-2", children: /* @__PURE__ */ jsxs20(
3171
- "button",
3172
- {
3173
- type: "button",
3174
- className: "df-back-btn",
3175
- title,
3176
- "aria-label": title,
3177
- onClick,
3178
- children: [
3179
- /* @__PURE__ */ jsx51("span", { className: "sr-only", children: title }),
3180
- /* @__PURE__ */ jsx51(Avatar4, { type: "icon", children: /* @__PURE__ */ jsx51(ArrowLeft, { size: "24" }) })
3181
- ]
3182
- }
3183
- ) });
3184
- }
3185
- var BackButton_default = BackButton;
3186
-
3187
3175
  // ../renderers/src/step/StepRenderer.tsx
3188
- import { Alert as Alert2, Title } from "@transferwise/components";
3189
- import { jsx as jsx52, jsxs as jsxs21 } from "react/jsx-runtime";
3176
+ import { Fragment as Fragment9, jsx as jsx51, jsxs as jsxs21 } from "react/jsx-runtime";
3190
3177
  var StepRenderer = {
3191
3178
  canRenderType: "step",
3192
3179
  render: StepRendererComponent
3193
3180
  };
3194
3181
  function StepRendererComponent(props) {
3195
- const { back, description, error, external, loadingState, title, trackEvent, children } = props;
3196
- const value = useMemo(() => ({ loadingState, trackEvent }), [loadingState, trackEvent]);
3182
+ const { back, description, error, external, title, children } = props;
3197
3183
  const { requiresUserConfirmation, dismissConfirmation } = useExternal(external == null ? void 0 : external.url);
3198
3184
  if ((external == null ? void 0 : external.url) && requiresUserConfirmation) {
3199
- return /* @__PURE__ */ jsx52(ExternalConfirmationDialog, { external, onClose: dismissConfirmation });
3185
+ return /* @__PURE__ */ jsx51(ExternalConfirmationDialog, { external, onClose: dismissConfirmation });
3200
3186
  }
3201
- return /* @__PURE__ */ jsxs21(StepRendererContextProvider, { value, children: [
3202
- back ? /* @__PURE__ */ jsx52(BackButton_default, __spreadValues({}, back)) : null,
3187
+ return /* @__PURE__ */ jsxs21(Fragment9, { children: [
3188
+ back ? /* @__PURE__ */ jsx51(BackButton_default, __spreadValues({}, back)) : null,
3203
3189
  title || description ? /* @__PURE__ */ jsxs21("div", { className: "m-b-4", children: [
3204
- title ? /* @__PURE__ */ jsx52(Title, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
3205
- description ? /* @__PURE__ */ jsx52("p", { className: "text-xs-center np-text-body-large", children: description }) : void 0
3190
+ title ? /* @__PURE__ */ jsx51(Title, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
3191
+ description ? /* @__PURE__ */ jsx51("p", { className: "text-xs-center np-text-body-large", children: description }) : void 0
3206
3192
  ] }) : void 0,
3207
- error ? /* @__PURE__ */ jsx52(Alert2, { type: "negative", className: "m-b-2", message: error }) : void 0,
3193
+ error ? /* @__PURE__ */ jsx51(Alert2, { type: "negative", className: "m-b-2", message: error }) : void 0,
3208
3194
  children
3209
3195
  ] });
3210
3196
  }
@@ -3244,26 +3230,26 @@ var getWiseRenderers = () => [
3244
3230
  ];
3245
3231
 
3246
3232
  // src/dynamicFlow/DynamicFlow.tsx
3247
- import { jsx as jsx53 } from "react/jsx-runtime";
3233
+ import { jsx as jsx52 } from "react/jsx-runtime";
3248
3234
  var wiseRenderers = getWiseRenderers();
3249
3235
  function DynamicFlowLegacy(props) {
3250
3236
  const { customFetch = globalThis.fetch } = props;
3251
3237
  const coreProps = __spreadProps(__spreadValues({}, props), { httpClient: customFetch });
3252
- return /* @__PURE__ */ jsx53(DynamicFlowCoreLegacy, __spreadValues({}, coreProps));
3238
+ return /* @__PURE__ */ jsx52(DynamicFlowCoreLegacy, __spreadValues({}, coreProps));
3253
3239
  }
3254
3240
  function DynamicFlowRevamp(props) {
3255
3241
  const { customFetch = globalThis.fetch, renderers, onLink = openLinkInNewTab } = props;
3256
3242
  const httpClient = useWiseHttpClient(customFetch);
3257
- const mergedRenderers = useMemo2(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
3243
+ const mergedRenderers = useMemo(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
3258
3244
  const coreProps = __spreadProps(__spreadValues({}, props), { httpClient, renderers: mergedRenderers, onLink });
3259
- return /* @__PURE__ */ jsx53(RendererHttpClientProvider, { httpClient, children: /* @__PURE__ */ jsx53(DynamicFlowCoreRevamp, __spreadValues({}, coreProps)) });
3245
+ return /* @__PURE__ */ jsx52(DynamicFlowCoreRevamp, __spreadValues({}, coreProps));
3260
3246
  }
3261
3247
  var DynamicFragment = forwardRef2(function DynamicFragment2(props, ref) {
3262
3248
  const { customFetch = globalThis.fetch, renderers, onLink = openLinkInNewTab } = props;
3263
3249
  const httpClient = useWiseHttpClient(customFetch);
3264
- const mergedRenderers = useMemo2(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
3250
+ const mergedRenderers = useMemo(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
3265
3251
  const coreProps = __spreadProps(__spreadValues({}, props), { httpClient, renderers: mergedRenderers, onLink });
3266
- return /* @__PURE__ */ jsx53(RendererHttpClientProvider, { httpClient, children: /* @__PURE__ */ jsx53(DynamicFragmentCore, __spreadProps(__spreadValues({}, coreProps), { ref })) });
3252
+ return /* @__PURE__ */ jsx52(DynamicFragmentCore, __spreadProps(__spreadValues({}, coreProps), { ref }));
3267
3253
  });
3268
3254
  var useWiseHttpClient = (httpClient) => {
3269
3255
  const { locale } = useIntl9();