@wise/dynamic-flow-client-internal 4.7.3 → 4.9.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
@@ -639,8 +639,8 @@ import {
639
639
  import { Alert } from "@transferwise/components";
640
640
 
641
641
  // ../renderers/src/utils/layout-utils.ts
642
- var getMargin = (size2) => {
643
- switch (size2) {
642
+ var getMargin = (size) => {
643
+ switch (size) {
644
644
  case "xs":
645
645
  return "m-b-0";
646
646
  case "sm":
@@ -838,7 +838,7 @@ import { Button } from "@transferwise/components";
838
838
  import { jsx as jsx7 } from "react/jsx-runtime";
839
839
  var ButtonRenderer = {
840
840
  canRenderType: "button",
841
- render: ({ control, context, disabled, margin, title, size: size2, onClick }) => {
841
+ render: ({ control, context, disabled, margin, title, size, onClick }) => {
842
842
  const priority = mapControl(control);
843
843
  const type = priority === "tertiary" ? void 0 : mapContext(context);
844
844
  return /* @__PURE__ */ jsx7(
@@ -848,7 +848,7 @@ var ButtonRenderer = {
848
848
  className: getMargin(margin),
849
849
  disabled,
850
850
  priority,
851
- size: mapSize(size2),
851
+ size: mapSize(size),
852
852
  type,
853
853
  onClick,
854
854
  children: title
@@ -874,11 +874,11 @@ var mapControl = (control) => {
874
874
  return "secondary";
875
875
  }
876
876
  };
877
- var mapSize = (size2) => {
878
- if (!size2) {
877
+ var mapSize = (size) => {
878
+ if (!size) {
879
879
  return void 0;
880
880
  }
881
- switch (size2) {
881
+ switch (size) {
882
882
  case "xs":
883
883
  case "sm":
884
884
  return "sm";
@@ -918,9 +918,6 @@ import { DateInput, DateLookup } from "@transferwise/components";
918
918
 
919
919
  // ../renderers/src/validators/type-validators.ts
920
920
  var isNumber = (value) => typeof value === "number" && !Number.isNaN(value);
921
- var isNull = (value) => value === null;
922
- var isUndefined = (value) => typeof value === "undefined";
923
- var isNullish = (v) => isNull(v) || isUndefined(v);
924
921
 
925
922
  // ../renderers/src/utils/value-utils.ts
926
923
  var numericValueOrNull = (newValue) => /^\d+$/.test(newValue) && !Number.isNaN(Number.parseFloat(newValue)) ? newValue : null;
@@ -1037,6 +1034,12 @@ var DateInputRenderer_default = DateInputRenderer;
1037
1034
  // ../renderers/src/DecisionRenderer.tsx
1038
1035
  import { Header, NavigationOption, NavigationOptionsList } from "@transferwise/components";
1039
1036
 
1037
+ // ../renderers/src/components/OptionMedia.tsx
1038
+ import { AvatarView as AvatarView2 } from "@transferwise/components";
1039
+
1040
+ // ../renderers/src/utils/image-utils.tsx
1041
+ import { AvatarView } from "@transferwise/components";
1042
+
1040
1043
  // ../renderers/src/components/icon/FlagIcon.tsx
1041
1044
  import { Flag } from "@wise/art";
1042
1045
  import { jsx as jsx11 } from "react/jsx-runtime";
@@ -1080,27 +1083,33 @@ function DynamicIcon({ name }) {
1080
1083
  }
1081
1084
  var DynamicIcon_default = DynamicIcon;
1082
1085
 
1083
- // ../renderers/src/components/icon/NavigationOptionMedia.tsx
1084
- import { AvatarView } from "@transferwise/components";
1086
+ // ../renderers/src/utils/UrnFlag.tsx
1087
+ import { Flag as Flag2 } from "@wise/art";
1085
1088
  import { jsx as jsx14 } from "react/jsx-runtime";
1086
- function NavigationOptionMedia({ icon, image }) {
1087
- const iconNode = getIconNode(icon);
1088
- const imageNode = getImageNode(image);
1089
- if (imageNode) {
1090
- if (iconNode) {
1091
- return /* @__PURE__ */ jsx14(AvatarView, { badge: { asset: iconNode }, children: imageNode });
1089
+ var countryUrnPrefix = "urn:wise:countries:";
1090
+ var currencyUrnPrefix = "urn:wise:currencies:";
1091
+ var isUrnFlag = (uri) => uri.startsWith(countryUrnPrefix) || uri.startsWith(currencyUrnPrefix);
1092
+ function UrnFlag({ size, urn }) {
1093
+ return /* @__PURE__ */ jsx14(Flag2, { code: getCode(urn), intrinsicSize: size });
1094
+ }
1095
+ var getCode = (urn) => {
1096
+ return urn.replace(countryUrnPrefix, "").replace(currencyUrnPrefix, "").replace(":image", "").split("?")[0];
1097
+ };
1098
+
1099
+ // ../renderers/src/utils/image-utils.tsx
1100
+ import { jsx as jsx15 } from "react/jsx-runtime";
1101
+ var getBadgedMedia = (iconNode, imageNode, size) => {
1102
+ if (iconNode && imageNode) {
1103
+ if (imageNode && iconNode) {
1104
+ return /* @__PURE__ */ jsx15(AvatarView, { size, badge: { asset: iconNode }, children: imageNode });
1092
1105
  }
1093
- return imageNode;
1094
- }
1095
- if (iconNode) {
1096
- return /* @__PURE__ */ jsx14(AvatarView, { children: iconNode });
1097
1106
  }
1098
1107
  return null;
1099
- }
1108
+ };
1100
1109
  var getIconNode = (icon) => {
1101
- if (!isNullish(icon)) {
1110
+ if (icon) {
1102
1111
  if ("name" in icon) {
1103
- return /* @__PURE__ */ jsx14(DynamicIcon_default, { name: icon.name });
1112
+ return /* @__PURE__ */ jsx15(DynamicIcon_default, { name: icon.name });
1104
1113
  }
1105
1114
  if (icon.text) {
1106
1115
  return icon.text;
@@ -1108,32 +1117,58 @@ var getIconNode = (icon) => {
1108
1117
  }
1109
1118
  return null;
1110
1119
  };
1111
- var getImageNode = (image) => {
1120
+ var getImageNode = (image, size) => {
1112
1121
  if (image) {
1113
1122
  const { accessibilityDescription, uri } = image;
1114
1123
  if (!uri.startsWith("urn:")) {
1115
- return /* @__PURE__ */ jsx14("img", { src: uri, alt: accessibilityDescription });
1124
+ return /* @__PURE__ */ jsx15("img", { src: uri, alt: accessibilityDescription, width: `${size}px` });
1125
+ }
1126
+ if (isUrnFlag(uri)) {
1127
+ return /* @__PURE__ */ jsx15(UrnFlag, { urn: uri, accessibilityDescription, size });
1116
1128
  }
1117
1129
  }
1118
1130
  return null;
1119
1131
  };
1120
1132
 
1133
+ // ../renderers/src/components/OptionMedia.tsx
1134
+ import { jsx as jsx16 } from "react/jsx-runtime";
1135
+ var mediaSize = 64;
1136
+ var badgeMediaSize = 48;
1137
+ function OptionMedia({
1138
+ icon,
1139
+ image,
1140
+ preferAvatar
1141
+ }) {
1142
+ const imageNode = getImageNode(image, mediaSize);
1143
+ const iconNode = getIconNode(icon);
1144
+ const badge = getBadgedMedia(iconNode, imageNode, badgeMediaSize);
1145
+ if (badge) {
1146
+ return badge;
1147
+ }
1148
+ if (imageNode) {
1149
+ return preferAvatar ? /* @__PURE__ */ jsx16(AvatarView2, { children: imageNode }) : imageNode;
1150
+ }
1151
+ if (iconNode) {
1152
+ return /* @__PURE__ */ jsx16(AvatarView2, { children: iconNode });
1153
+ }
1154
+ }
1155
+
1121
1156
  // ../renderers/src/DecisionRenderer.tsx
1122
- import { jsx as jsx15, jsxs as jsxs3 } from "react/jsx-runtime";
1157
+ import { jsx as jsx17, jsxs as jsxs3 } from "react/jsx-runtime";
1123
1158
  var DecisionRenderer = {
1124
1159
  canRenderType: "decision",
1125
- render: ({ margin, options, title }) => /* @__PURE__ */ jsxs3("div", { className: getMargin(margin), children: [
1126
- title && /* @__PURE__ */ jsx15(Header, { as: "h2", title }),
1127
- /* @__PURE__ */ jsx15(NavigationOptionsList, { children: options.map((option) => {
1160
+ render: ({ control, margin, options, title }) => /* @__PURE__ */ jsxs3("div", { className: getMargin(margin), children: [
1161
+ title && /* @__PURE__ */ jsx17(Header, { as: "h2", title }),
1162
+ /* @__PURE__ */ jsx17(NavigationOptionsList, { children: options.map((option) => {
1128
1163
  const { description, disabled, icon, image, title: itemTitle, onClick } = option;
1129
- return /* @__PURE__ */ jsx15(
1164
+ return /* @__PURE__ */ jsx17(
1130
1165
  NavigationOption,
1131
1166
  {
1132
1167
  title: itemTitle,
1133
1168
  content: description,
1134
1169
  disabled,
1135
- media: /* @__PURE__ */ jsx15(NavigationOptionMedia, { icon, image }),
1136
- showMediaCircle: Boolean(icon),
1170
+ media: /* @__PURE__ */ jsx17(OptionMedia, { icon, image, preferAvatar: control === "with-avatar" }),
1171
+ showMediaCircle: false,
1137
1172
  showMediaAtAllSizes: true,
1138
1173
  onClick
1139
1174
  },
@@ -1145,35 +1180,35 @@ var DecisionRenderer = {
1145
1180
  var DecisionRenderer_default = DecisionRenderer;
1146
1181
 
1147
1182
  // ../renderers/src/DividerRenderer.tsx
1148
- import { jsx as jsx16 } from "react/jsx-runtime";
1183
+ import { jsx as jsx18 } from "react/jsx-runtime";
1149
1184
  var DividerRenderer = {
1150
1185
  canRenderType: "divider",
1151
- render: ({ margin }) => /* @__PURE__ */ jsx16("hr", { className: `m-t-0 ${getMargin(margin)}` })
1186
+ render: ({ margin }) => /* @__PURE__ */ jsx18("hr", { className: `m-t-0 ${getMargin(margin)}` })
1152
1187
  };
1153
1188
  var DividerRenderer_default = DividerRenderer;
1154
1189
 
1155
1190
  // ../renderers/src/FormRenderer.tsx
1156
- import { jsx as jsx17 } from "react/jsx-runtime";
1191
+ import { jsx as jsx19 } from "react/jsx-runtime";
1157
1192
  var FormRenderer = {
1158
1193
  canRenderType: "form",
1159
- render: ({ children, margin }) => /* @__PURE__ */ jsx17("div", { className: getMargin(margin), children })
1194
+ render: ({ children, margin }) => /* @__PURE__ */ jsx19("div", { className: getMargin(margin), children })
1160
1195
  };
1161
1196
  var FormRenderer_default = FormRenderer;
1162
1197
 
1163
1198
  // ../renderers/src/FormSectionRenderer.tsx
1164
1199
  import { Header as Header2 } from "@transferwise/components";
1165
- import { jsx as jsx18, jsxs as jsxs4 } from "react/jsx-runtime";
1200
+ import { jsx as jsx20, jsxs as jsxs4 } from "react/jsx-runtime";
1166
1201
  var FormSectionRenderer = {
1167
1202
  canRenderType: "section",
1168
1203
  render: ({ title, description, children }) => /* @__PURE__ */ jsxs4("fieldset", { children: [
1169
- title && /* @__PURE__ */ jsx18(
1204
+ title && /* @__PURE__ */ jsx20(
1170
1205
  Header2,
1171
1206
  {
1172
1207
  as: "h2",
1173
1208
  title
1174
1209
  }
1175
1210
  ),
1176
- description && /* @__PURE__ */ jsx18("p", { children: description }),
1211
+ description && /* @__PURE__ */ jsx20("p", { children: description }),
1177
1212
  children
1178
1213
  ] })
1179
1214
  };
@@ -1181,36 +1216,36 @@ var FormSectionRenderer_default = FormSectionRenderer;
1181
1216
 
1182
1217
  // ../renderers/src/HeadingRenderer.tsx
1183
1218
  import { Display } from "@transferwise/components";
1184
- import { jsx as jsx19 } from "react/jsx-runtime";
1219
+ import { jsx as jsx21 } from "react/jsx-runtime";
1185
1220
  var HeadingRenderer = {
1186
1221
  canRenderType: "heading",
1187
- render: (props) => /* @__PURE__ */ jsx19(Heading, __spreadValues({}, props))
1222
+ render: (props) => /* @__PURE__ */ jsx21(Heading, __spreadValues({}, props))
1188
1223
  };
1189
1224
  function Heading(props) {
1190
- const { text, size: size2, align, margin, control } = props;
1225
+ const { text, size, align, margin, control } = props;
1191
1226
  const className = getTextAlignmentAndMargin({ align, margin });
1192
- return control === "display" ? /* @__PURE__ */ jsx19(DisplayHeading, { size: size2, text, className }) : /* @__PURE__ */ jsx19(StandardHeading, { size: size2, text, className });
1227
+ return control === "display" ? /* @__PURE__ */ jsx21(DisplayHeading, { size, text, className }) : /* @__PURE__ */ jsx21(StandardHeading, { size, text, className });
1193
1228
  }
1194
- function DisplayHeading({ size: size2, text, className }) {
1195
- return /* @__PURE__ */ jsx19(Display, { type: getDisplayType(size2), className, children: text });
1229
+ function DisplayHeading({ size, text, className }) {
1230
+ return /* @__PURE__ */ jsx21(Display, { type: getDisplayType(size), className, children: text });
1196
1231
  }
1197
- function StandardHeading({ size: size2, text, className }) {
1198
- switch (size2) {
1232
+ function StandardHeading({ size, text, className }) {
1233
+ switch (size) {
1199
1234
  case "xs":
1200
- return /* @__PURE__ */ jsx19("h5", { className, children: text });
1235
+ return /* @__PURE__ */ jsx21("h5", { className, children: text });
1201
1236
  case "sm":
1202
- return /* @__PURE__ */ jsx19("h4", { className, children: text });
1237
+ return /* @__PURE__ */ jsx21("h4", { className, children: text });
1203
1238
  case "lg":
1204
- return /* @__PURE__ */ jsx19("h2", { className, children: text });
1239
+ return /* @__PURE__ */ jsx21("h2", { className, children: text });
1205
1240
  case "xl":
1206
- return /* @__PURE__ */ jsx19("h1", { className, children: text });
1241
+ return /* @__PURE__ */ jsx21("h1", { className, children: text });
1207
1242
  case "md":
1208
1243
  default:
1209
- return /* @__PURE__ */ jsx19("h3", { className, children: text });
1244
+ return /* @__PURE__ */ jsx21("h3", { className, children: text });
1210
1245
  }
1211
1246
  }
1212
- var getDisplayType = (size2) => {
1213
- switch (size2) {
1247
+ var getDisplayType = (size) => {
1248
+ switch (size) {
1214
1249
  case "xs":
1215
1250
  case "sm":
1216
1251
  return "display-small";
@@ -1236,12 +1271,12 @@ function isRelativePath(url = "") {
1236
1271
  }
1237
1272
 
1238
1273
  // ../renderers/src/ImageRenderer/UrlImage.tsx
1239
- import { jsx as jsx20 } from "react/jsx-runtime";
1274
+ import { jsx as jsx22 } from "react/jsx-runtime";
1240
1275
  function UrlImage({
1241
1276
  accessibilityDescription,
1242
1277
  align,
1243
1278
  margin,
1244
- size: size2,
1279
+ size,
1245
1280
  uri,
1246
1281
  httpClient
1247
1282
  }) {
@@ -1251,7 +1286,7 @@ function UrlImage({
1251
1286
  void getImageSource(httpClient, uri).then(setImageSource);
1252
1287
  }
1253
1288
  }, [uri, httpClient]);
1254
- return /* @__PURE__ */ jsx20("div", { className: `df-image ${align} ${size2 || "md"}`, children: /* @__PURE__ */ jsx20(
1289
+ return /* @__PURE__ */ jsx22("div", { className: `df-image ${align} ${size || "md"}`, children: /* @__PURE__ */ jsx22(
1255
1290
  Image,
1256
1291
  {
1257
1292
  className: `img-responsive ${getMargin(margin)}`,
@@ -1294,6 +1329,19 @@ var getImageSource = async (httpClient, imageUrl) => {
1294
1329
  }
1295
1330
  };
1296
1331
 
1332
+ // ../renderers/src/ImageRenderer/UrnFlagImage.tsx
1333
+ import { jsx as jsx23 } from "react/jsx-runtime";
1334
+ var maxFlagSize = 600;
1335
+ function UrnFlagImage({
1336
+ accessibilityDescription,
1337
+ align,
1338
+ margin,
1339
+ size,
1340
+ uri
1341
+ }) {
1342
+ return /* @__PURE__ */ jsx23("div", { className: `df-image ${align} ${size || "md"} ${getMargin(margin)}`, children: /* @__PURE__ */ jsx23(UrnFlag, { size: maxFlagSize, urn: uri, accessibilityDescription }) });
1343
+ }
1344
+
1297
1345
  // ../renderers/src/ImageRenderer/UrnIllustration.tsx
1298
1346
  import {
1299
1347
  Illustration,
@@ -1315,23 +1363,23 @@ var isAnimated = (uri) => {
1315
1363
  };
1316
1364
 
1317
1365
  // ../renderers/src/ImageRenderer/UrnIllustration.tsx
1318
- import { jsx as jsx21 } from "react/jsx-runtime";
1366
+ import { jsx as jsx24 } from "react/jsx-runtime";
1319
1367
  var urnPrefix = "urn:wise:illustrations:";
1320
1368
  var isUrnIllustration = (uri) => uri.startsWith(urnPrefix);
1321
1369
  function UrnIllustration({
1322
1370
  accessibilityDescription,
1323
1371
  align,
1324
1372
  margin,
1325
- size: size2,
1373
+ size,
1326
1374
  uri
1327
1375
  }) {
1328
- const illustrationSize = getIllustrationSize(size2);
1376
+ const illustrationSize = getIllustrationSize(size);
1329
1377
  const illustrationName = getIllustrationName(uri);
1330
1378
  const illustration3DName = getIllustration3DName(uri);
1331
1379
  if (illustration3DName && isAnimated(uri)) {
1332
- return /* @__PURE__ */ jsx21("div", { className: `df-image ${align} ${getMargin(margin)}`, children: /* @__PURE__ */ jsx21(Illustration3D, { name: illustration3DName, size: illustrationSize }) });
1380
+ return /* @__PURE__ */ jsx24("div", { className: `df-image ${align} ${getMargin(margin)}`, children: /* @__PURE__ */ jsx24(Illustration3D, { name: illustration3DName, size: illustrationSize }) });
1333
1381
  }
1334
- return /* @__PURE__ */ jsx21("div", { className: `df-image ${align} ${getMargin(margin)}`, children: /* @__PURE__ */ jsx21(
1382
+ return /* @__PURE__ */ jsx24("div", { className: `df-image ${align} ${getMargin(margin)}`, children: /* @__PURE__ */ jsx24(
1335
1383
  Illustration,
1336
1384
  {
1337
1385
  className: "df-illustration",
@@ -1341,7 +1389,7 @@ function UrnIllustration({
1341
1389
  }
1342
1390
  ) });
1343
1391
  }
1344
- var getIllustrationSize = (size2) => ({ xs: "small", sm: "small", md: "medium", lg: "large", xl: "large" })[size2] || "medium";
1392
+ var getIllustrationSize = (size) => ({ xs: "small", sm: "small", md: "medium", lg: "large", xl: "large" })[size] || "medium";
1345
1393
  var getIllustrationName = (uri) => {
1346
1394
  return uri.replace(urnPrefix, "").split("?")[0];
1347
1395
  };
@@ -1351,21 +1399,24 @@ var getIllustration3DName = (uri) => {
1351
1399
  };
1352
1400
 
1353
1401
  // ../renderers/src/ImageRenderer/UrnImage.tsx
1354
- import { jsx as jsx22 } from "react/jsx-runtime";
1402
+ import { jsx as jsx25 } from "react/jsx-runtime";
1355
1403
  var isUrnImage = (uri) => uri.startsWith("urn:");
1356
1404
  function UrnImage(props) {
1357
1405
  const { uri } = props;
1358
1406
  if (isUrnIllustration(uri)) {
1359
- return /* @__PURE__ */ jsx22(UrnIllustration, __spreadValues({}, props));
1407
+ return /* @__PURE__ */ jsx25(UrnIllustration, __spreadValues({}, props));
1408
+ }
1409
+ if (isUrnFlag(uri)) {
1410
+ return /* @__PURE__ */ jsx25(UrnFlagImage, __spreadValues({}, props));
1360
1411
  }
1361
1412
  return null;
1362
1413
  }
1363
1414
 
1364
1415
  // ../renderers/src/ImageRenderer/ImageRenderer.tsx
1365
- import { jsx as jsx23 } from "react/jsx-runtime";
1416
+ import { jsx as jsx26 } from "react/jsx-runtime";
1366
1417
  var ImageRenderer = {
1367
1418
  canRenderType: "image",
1368
- render: (props) => isUrnImage(props.uri) ? /* @__PURE__ */ jsx23(UrnImage, __spreadValues({}, props)) : /* @__PURE__ */ jsx23(UrlImage, __spreadValues({}, props))
1419
+ render: (props) => isUrnImage(props.uri) ? /* @__PURE__ */ jsx26(UrnImage, __spreadValues({}, props)) : /* @__PURE__ */ jsx26(UrlImage, __spreadValues({}, props))
1369
1420
  };
1370
1421
 
1371
1422
  // ../renderers/src/ImageRenderer/index.tsx
@@ -1373,7 +1424,7 @@ var ImageRenderer_default = ImageRenderer;
1373
1424
 
1374
1425
  // ../renderers/src/InstructionsRenderer.tsx
1375
1426
  import { Header as Header3, InstructionsList } from "@transferwise/components";
1376
- import { jsx as jsx24, jsxs as jsxs5 } from "react/jsx-runtime";
1427
+ import { jsx as jsx27, jsxs as jsxs5 } from "react/jsx-runtime";
1377
1428
  var doContext = ["positive", "neutral"];
1378
1429
  var dontContext = ["warning", "negative"];
1379
1430
  var InstructionsRenderer = {
@@ -1382,8 +1433,8 @@ var InstructionsRenderer = {
1382
1433
  const dos = items.filter((item) => doContext.includes(item.context)).map(({ text }) => text);
1383
1434
  const donts = items.filter((item) => dontContext.includes(item.context)).map(({ text }) => text);
1384
1435
  return /* @__PURE__ */ jsxs5("div", { className: getMargin(margin), children: [
1385
- title ? /* @__PURE__ */ jsx24(Header3, { title }) : null,
1386
- /* @__PURE__ */ jsx24(InstructionsList, { dos, donts })
1436
+ title ? /* @__PURE__ */ jsx27(Header3, { title }) : null,
1437
+ /* @__PURE__ */ jsx27(InstructionsList, { dos, donts })
1387
1438
  ] });
1388
1439
  }
1389
1440
  };
@@ -1399,25 +1450,25 @@ var onWheel = (event) => {
1399
1450
  }
1400
1451
  };
1401
1452
 
1402
- // ../renderers/src/utils/getIconAvatar.tsx
1403
- import { AvatarView as AvatarView2 } from "@transferwise/components";
1404
- import { jsx as jsx25 } from "react/jsx-runtime";
1405
- var size = 24;
1406
- function getIconAvatar({ icon, image }) {
1407
- if (image) {
1408
- const { accessibilityDescription, uri } = image;
1409
- if (!uri.startsWith("urn:")) {
1410
- return /* @__PURE__ */ jsx25("img", { src: uri, alt: accessibilityDescription, width: `${size}px`, height: `${size}px` });
1411
- }
1453
+ // ../renderers/src/utils/getInlineAvatar.tsx
1454
+ import { AvatarView as AvatarView3 } from "@transferwise/components";
1455
+ import { jsx as jsx28 } from "react/jsx-runtime";
1456
+ var mediaSize2 = 24;
1457
+ function getInlineAvatar({ icon, image }) {
1458
+ const imageNode = getImageNode(image, mediaSize2);
1459
+ const iconNode = getIconNode(icon);
1460
+ const badge = getBadgedMedia(iconNode, imageNode, mediaSize2);
1461
+ if (badge) {
1462
+ return badge;
1412
1463
  }
1413
- if (isFlagIcon2(icon)) {
1414
- return /* @__PURE__ */ jsx25(AvatarView2, { size, children: /* @__PURE__ */ jsx25(DynamicIcon_default, { name: icon.name }) });
1464
+ if (imageNode) {
1465
+ return imageNode;
1415
1466
  }
1416
- if (isNamedIcon2(icon)) {
1417
- return /* @__PURE__ */ jsx25(DynamicIcon_default, { name: icon.name });
1467
+ if (isNamedIcon2(icon) && !isFlagIcon2(icon)) {
1468
+ return iconNode;
1418
1469
  }
1419
- if (icon && "text" in icon) {
1420
- return /* @__PURE__ */ jsx25(AvatarView2, { size, children: icon.text });
1470
+ if (iconNode) {
1471
+ return /* @__PURE__ */ jsx28(AvatarView3, { size: mediaSize2, children: iconNode });
1421
1472
  }
1422
1473
  return null;
1423
1474
  }
@@ -1426,7 +1477,7 @@ var isFlagIcon2 = (icon) => isNamedIcon2(icon) && icon.name.startsWith("flag-");
1426
1477
 
1427
1478
  // ../renderers/src/utils/getInputGroupAddonStart.tsx
1428
1479
  var getInputGroupAddonStart = ({ icon, image }) => {
1429
- const content = getIconAvatar({ icon, image });
1480
+ const content = getInlineAvatar({ icon, image });
1430
1481
  return content ? { content } : void 0;
1431
1482
  };
1432
1483
 
@@ -1440,7 +1491,7 @@ function pick(obj, ...keys) {
1440
1491
  }
1441
1492
 
1442
1493
  // ../renderers/src/IntegerInputRenderer.tsx
1443
- import { jsx as jsx26 } from "react/jsx-runtime";
1494
+ import { jsx as jsx29 } from "react/jsx-runtime";
1444
1495
  var IntegerInputRenderer = {
1445
1496
  canRenderType: "input-integer",
1446
1497
  render: (props) => {
@@ -1455,7 +1506,7 @@ var IntegerInputRenderer = {
1455
1506
  "maximum",
1456
1507
  "minimum"
1457
1508
  );
1458
- return /* @__PURE__ */ jsx26(
1509
+ return /* @__PURE__ */ jsx29(
1459
1510
  FieldInput_default,
1460
1511
  {
1461
1512
  id,
@@ -1463,7 +1514,7 @@ var IntegerInputRenderer = {
1463
1514
  description,
1464
1515
  validation: validationState,
1465
1516
  help,
1466
- children: /* @__PURE__ */ jsx26(InputGroup, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx26(
1517
+ children: /* @__PURE__ */ jsx29(InputGroup, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx29(
1467
1518
  Input,
1468
1519
  __spreadValues({
1469
1520
  id,
@@ -1487,13 +1538,13 @@ var IntegerInputRenderer_default = IntegerInputRenderer;
1487
1538
 
1488
1539
  // ../renderers/src/LoadingIndicatorRenderer.tsx
1489
1540
  import { Loader } from "@transferwise/components";
1490
- import { jsx as jsx27 } from "react/jsx-runtime";
1541
+ import { jsx as jsx30 } from "react/jsx-runtime";
1491
1542
  var LoadingIndicatorRenderer = {
1492
1543
  canRenderType: "loading-indicator",
1493
- render: ({ margin, size: size2 }) => /* @__PURE__ */ jsx27(
1544
+ render: ({ margin, size }) => /* @__PURE__ */ jsx30(
1494
1545
  Loader,
1495
1546
  {
1496
- size: size2,
1547
+ size,
1497
1548
  classNames: { "tw-loader": `tw-loader m-x-auto ${getMargin(margin)}` },
1498
1549
  "data-testid": "loading-indicator"
1499
1550
  }
@@ -1503,28 +1554,28 @@ var LoadingIndicatorRenderer_default = LoadingIndicatorRenderer;
1503
1554
 
1504
1555
  // ../renderers/src/MarkdownRenderer.tsx
1505
1556
  import { Markdown as Markdown2 } from "@transferwise/components";
1506
- import { jsx as jsx28 } from "react/jsx-runtime";
1557
+ import { jsx as jsx31 } from "react/jsx-runtime";
1507
1558
  var MarkdownRenderer = {
1508
1559
  canRenderType: "markdown",
1509
- render: ({ content, align, margin }) => /* @__PURE__ */ jsx28("div", { className: getTextAlignmentAndMargin({ align, margin }), children: /* @__PURE__ */ jsx28(Markdown2, { config: { link: { target: "_blank" } }, children: content }) })
1560
+ render: ({ content, align, margin }) => /* @__PURE__ */ jsx31("div", { className: getTextAlignmentAndMargin({ align, margin }), children: /* @__PURE__ */ jsx31(Markdown2, { config: { link: { target: "_blank" } }, children: content }) })
1510
1561
  };
1511
1562
  var MarkdownRenderer_default = MarkdownRenderer;
1512
1563
 
1513
1564
  // ../renderers/src/ModalRenderer.tsx
1514
1565
  import { Button as Button2, Modal } from "@transferwise/components";
1515
1566
  import { useState as useState2 } from "react";
1516
- import { jsx as jsx29, jsxs as jsxs6 } from "react/jsx-runtime";
1567
+ import { jsx as jsx32, jsxs as jsxs6 } from "react/jsx-runtime";
1517
1568
  var ModalRenderer = {
1518
1569
  canRenderType: "modal",
1519
- render: (props) => /* @__PURE__ */ jsx29(DFModal, __spreadValues({}, props))
1570
+ render: (props) => /* @__PURE__ */ jsx32(DFModal, __spreadValues({}, props))
1520
1571
  };
1521
1572
  var ModalRenderer_default = ModalRenderer;
1522
1573
  function DFModal({ content, margin, trigger }) {
1523
1574
  const [visible, setVisible] = useState2(false);
1524
1575
  const { children, title } = content;
1525
1576
  return /* @__PURE__ */ jsxs6("div", { className: getMargin(margin), children: [
1526
- /* @__PURE__ */ jsx29(Button2, { priority: "tertiary", block: true, onClick: () => setVisible(true), children: trigger.title }),
1527
- /* @__PURE__ */ jsx29(
1577
+ /* @__PURE__ */ jsx32(Button2, { priority: "tertiary", block: true, onClick: () => setVisible(true), children: trigger.title }),
1578
+ /* @__PURE__ */ jsx32(
1528
1579
  Modal,
1529
1580
  {
1530
1581
  scroll: "content",
@@ -1540,24 +1591,7 @@ function DFModal({ content, margin, trigger }) {
1540
1591
 
1541
1592
  // ../renderers/src/MultiSelectInputRenderer.tsx
1542
1593
  import { SelectInput, SelectInputOptionContent } from "@transferwise/components";
1543
-
1544
- // ../renderers/src/SelectInputRenderer/OptionMedia.tsx
1545
- import { Avatar as Avatar2, AvatarType as AvatarType2 } from "@transferwise/components";
1546
- import { jsx as jsx30 } from "react/jsx-runtime";
1547
- function OptionMedia({ icon, image }) {
1548
- if (image && !image.uri.startsWith("urn:")) {
1549
- return /* @__PURE__ */ jsx30("img", { src: image.uri, alt: image.accessibilityDescription || "", width: "64px" });
1550
- }
1551
- if (icon && "name" in icon) {
1552
- return /* @__PURE__ */ jsx30(Avatar2, { type: AvatarType2.ICON, children: /* @__PURE__ */ jsx30(DynamicIcon_default, { name: icon.name }) });
1553
- }
1554
- if (icon && "text" in icon) {
1555
- return /* @__PURE__ */ jsx30(Avatar2, { type: AvatarType2.INITIALS, children: icon.text });
1556
- }
1557
- return null;
1558
- }
1559
-
1560
- // ../renderers/src/MultiSelectInputRenderer.tsx
1594
+ import { useState as useState3 } from "react";
1561
1595
  import { useIntl as useIntl2 } from "react-intl";
1562
1596
 
1563
1597
  // ../renderers/src/messages/multi-select.messages.ts
@@ -1571,11 +1605,10 @@ var multi_select_messages_default = defineMessages2({
1571
1605
  });
1572
1606
 
1573
1607
  // ../renderers/src/MultiSelectInputRenderer.tsx
1574
- import { useState as useState3 } from "react";
1575
- import { jsx as jsx31 } from "react/jsx-runtime";
1608
+ import { jsx as jsx33 } from "react/jsx-runtime";
1576
1609
  var MultiSelectInputRenderer = {
1577
1610
  canRenderType: "input-multi-select",
1578
- render: (props) => /* @__PURE__ */ jsx31(MultiSelectInputRendererComponent, __spreadValues({}, props))
1611
+ render: (props) => /* @__PURE__ */ jsx33(MultiSelectInputRendererComponent, __spreadValues({}, props))
1579
1612
  };
1580
1613
  function MultiSelectInputRendererComponent(props) {
1581
1614
  const { formatMessage } = useIntl2();
@@ -1617,12 +1650,12 @@ function MultiSelectInputRendererComponent(props) {
1617
1650
  const contentProps = {
1618
1651
  title: option.title,
1619
1652
  description: option.description,
1620
- icon: /* @__PURE__ */ jsx31(OptionMedia, { icon: option.icon, image: option.image })
1653
+ icon: /* @__PURE__ */ jsx33(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
1621
1654
  };
1622
- return /* @__PURE__ */ jsx31(SelectInputOptionContent, __spreadValues({}, contentProps));
1655
+ return /* @__PURE__ */ jsx33(SelectInputOptionContent, __spreadValues({}, contentProps));
1623
1656
  };
1624
1657
  const extraProps = { autoComplete };
1625
- return /* @__PURE__ */ jsx31(
1658
+ return /* @__PURE__ */ jsx33(
1626
1659
  FieldInput_default,
1627
1660
  {
1628
1661
  id,
@@ -1630,7 +1663,7 @@ function MultiSelectInputRendererComponent(props) {
1630
1663
  help,
1631
1664
  description,
1632
1665
  validation: validationState,
1633
- children: /* @__PURE__ */ jsx31(
1666
+ children: /* @__PURE__ */ jsx33(
1634
1667
  SelectInput,
1635
1668
  __spreadValues({
1636
1669
  id,
@@ -1674,7 +1707,7 @@ import { UploadInput } from "@transferwise/components";
1674
1707
  // ../renderers/src/components/UploadFieldInput.tsx
1675
1708
  import { InlineAlert } from "@transferwise/components";
1676
1709
  import classNames3 from "classnames";
1677
- import { jsx as jsx32, jsxs as jsxs7 } from "react/jsx-runtime";
1710
+ import { jsx as jsx34, jsxs as jsxs7 } from "react/jsx-runtime";
1678
1711
  function UploadFieldInput({
1679
1712
  id,
1680
1713
  children,
@@ -1683,7 +1716,7 @@ function UploadFieldInput({
1683
1716
  help,
1684
1717
  validation
1685
1718
  }) {
1686
- const labelContent = label && help ? /* @__PURE__ */ jsx32(LabelContentWithHelp, { text: label, help }) : label;
1719
+ const labelContent = label && help ? /* @__PURE__ */ jsx34(LabelContentWithHelp, { text: label, help }) : label;
1687
1720
  const descriptionId = description ? `${id}-description` : void 0;
1688
1721
  return /* @__PURE__ */ jsxs7(
1689
1722
  "div",
@@ -1692,9 +1725,9 @@ function UploadFieldInput({
1692
1725
  "has-error": (validation == null ? void 0 : validation.status) === "invalid"
1693
1726
  }),
1694
1727
  children: [
1695
- /* @__PURE__ */ jsx32("label", { htmlFor: id, className: "control-label", children: labelContent }),
1728
+ /* @__PURE__ */ jsx34("label", { htmlFor: id, className: "control-label", children: labelContent }),
1696
1729
  children,
1697
- (validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx32(InlineAlert, { type: "negative", id: descriptionId, children: validation.message })
1730
+ (validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx34(InlineAlert, { type: "negative", id: descriptionId, children: validation.message })
1698
1731
  ]
1699
1732
  }
1700
1733
  );
@@ -1723,7 +1756,7 @@ var getFileType = (base64Url) => {
1723
1756
  };
1724
1757
 
1725
1758
  // ../renderers/src/MultiUploadInputRenderer.tsx
1726
- import { jsx as jsx33 } from "react/jsx-runtime";
1759
+ import { jsx as jsx35 } from "react/jsx-runtime";
1727
1760
  var MultiUploadInputRenderer = {
1728
1761
  canRenderType: "input-upload-multi",
1729
1762
  render: (props) => {
@@ -1748,7 +1781,7 @@ var MultiUploadInputRenderer = {
1748
1781
  };
1749
1782
  const onDeleteFile = async (fileId) => onRemoveFile(value.findIndex((file) => file.id === fileId));
1750
1783
  const descriptionId = description ? `${id}-description` : void 0;
1751
- return /* @__PURE__ */ jsx33(
1784
+ return /* @__PURE__ */ jsx35(
1752
1785
  UploadFieldInput_default,
1753
1786
  {
1754
1787
  id,
@@ -1756,7 +1789,7 @@ var MultiUploadInputRenderer = {
1756
1789
  description,
1757
1790
  validation: validationState,
1758
1791
  help,
1759
- children: /* @__PURE__ */ jsx33(
1792
+ children: /* @__PURE__ */ jsx35(
1760
1793
  UploadInput,
1761
1794
  {
1762
1795
  id,
@@ -1780,7 +1813,7 @@ var MultiUploadInputRenderer_default = MultiUploadInputRenderer;
1780
1813
 
1781
1814
  // ../renderers/src/NumberInputRenderer.tsx
1782
1815
  import { Input as Input2, InputGroup as InputGroup2 } from "@transferwise/components";
1783
- import { jsx as jsx34 } from "react/jsx-runtime";
1816
+ import { jsx as jsx36 } from "react/jsx-runtime";
1784
1817
  var NumberInputRenderer = {
1785
1818
  canRenderType: "input-number",
1786
1819
  render: (props) => {
@@ -1794,7 +1827,7 @@ var NumberInputRenderer = {
1794
1827
  "maximum",
1795
1828
  "minimum"
1796
1829
  );
1797
- return /* @__PURE__ */ jsx34(
1830
+ return /* @__PURE__ */ jsx36(
1798
1831
  FieldInput_default,
1799
1832
  {
1800
1833
  id,
@@ -1802,7 +1835,7 @@ var NumberInputRenderer = {
1802
1835
  description,
1803
1836
  validation: validationState,
1804
1837
  help,
1805
- children: /* @__PURE__ */ jsx34(InputGroup2, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx34(
1838
+ children: /* @__PURE__ */ jsx36(InputGroup2, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx36(
1806
1839
  Input2,
1807
1840
  __spreadValues({
1808
1841
  id,
@@ -1854,17 +1887,17 @@ var paragraph_messages_default = defineMessages3({
1854
1887
  });
1855
1888
 
1856
1889
  // ../renderers/src/ParagraphRenderer.tsx
1857
- import { jsx as jsx35, jsxs as jsxs8 } from "react/jsx-runtime";
1890
+ import { jsx as jsx37, jsxs as jsxs8 } from "react/jsx-runtime";
1858
1891
  var ParagraphRenderer = {
1859
1892
  canRenderType: "paragraph",
1860
- render: (props) => /* @__PURE__ */ jsx35(Paragraph, __spreadValues({}, props))
1893
+ render: (props) => /* @__PURE__ */ jsx37(Paragraph, __spreadValues({}, props))
1861
1894
  };
1862
1895
  function Paragraph({ align, control, margin, text }) {
1863
1896
  const className = getTextAlignmentAndMargin({ align, margin });
1864
- return control === "copyable" ? /* @__PURE__ */ jsx35(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx35(StandardParagraph, { className, text });
1897
+ return control === "copyable" ? /* @__PURE__ */ jsx37(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx37(StandardParagraph, { className, text });
1865
1898
  }
1866
1899
  function StandardParagraph({ text, className }) {
1867
- return /* @__PURE__ */ jsx35("p", { className: `np-text-body-large ${className}`, children: text });
1900
+ return /* @__PURE__ */ jsx37("p", { className: `np-text-body-large ${className}`, children: text });
1868
1901
  }
1869
1902
  function CopyableParagraph({
1870
1903
  text,
@@ -1879,7 +1912,7 @@ function CopyableParagraph({
1879
1912
  };
1880
1913
  const inputAlignmentClasses = getTextAlignmentAndMargin({ align, margin: "sm" });
1881
1914
  return /* @__PURE__ */ jsxs8("div", { className, children: [
1882
- /* @__PURE__ */ jsx35(
1915
+ /* @__PURE__ */ jsx37(
1883
1916
  Input3,
1884
1917
  {
1885
1918
  type: "text",
@@ -1888,15 +1921,16 @@ function CopyableParagraph({
1888
1921
  className: classNames4("text-ellipsis", inputAlignmentClasses)
1889
1922
  }
1890
1923
  ),
1891
- /* @__PURE__ */ jsx35(Button3, { block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
1924
+ /* @__PURE__ */ jsx37(Button3, { block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
1892
1925
  ] });
1893
1926
  }
1894
1927
  var ParagraphRenderer_default = ParagraphRenderer;
1895
1928
 
1896
1929
  // ../renderers/src/RepeatableRenderer.tsx
1897
- import { Button as Button4, Header as Header4, Modal as Modal2, NavigationOption as NavigationOption2, InlineAlert as InlineAlert2 } from "@transferwise/components";
1898
- import { useState as useState4 } from "react";
1930
+ import { Button as Button4, Header as Header4, InlineAlert as InlineAlert2, Modal as Modal2, NavigationOption as NavigationOption2 } from "@transferwise/components";
1899
1931
  import { Plus } from "@transferwise/icons";
1932
+ import classNames5 from "classnames";
1933
+ import { useState as useState4 } from "react";
1900
1934
  import { useIntl as useIntl4 } from "react-intl";
1901
1935
 
1902
1936
  // ../renderers/src/messages/repeatable.messages.ts
@@ -1925,11 +1959,10 @@ var repeatable_messages_default = defineMessages4({
1925
1959
  });
1926
1960
 
1927
1961
  // ../renderers/src/RepeatableRenderer.tsx
1928
- import classNames5 from "classnames";
1929
- import { Fragment, jsx as jsx36, jsxs as jsxs9 } from "react/jsx-runtime";
1962
+ import { Fragment, jsx as jsx38, jsxs as jsxs9 } from "react/jsx-runtime";
1930
1963
  var RepeatableRenderer = {
1931
1964
  canRenderType: "repeatable",
1932
- render: (props) => /* @__PURE__ */ jsx36(Repeatable, __spreadValues({}, props))
1965
+ render: (props) => /* @__PURE__ */ jsx38(Repeatable, __spreadValues({}, props))
1933
1966
  };
1934
1967
  function Repeatable(props) {
1935
1968
  const {
@@ -1969,8 +2002,8 @@ function Repeatable(props) {
1969
2002
  setOpenModalType(null);
1970
2003
  };
1971
2004
  return /* @__PURE__ */ jsxs9(Fragment, { children: [
1972
- title && /* @__PURE__ */ jsx36(Header4, { title }),
1973
- description && /* @__PURE__ */ jsx36("p", { children: description }),
2005
+ title && /* @__PURE__ */ jsx38(Header4, { title }),
2006
+ description && /* @__PURE__ */ jsx38("p", { children: description }),
1974
2007
  /* @__PURE__ */ jsxs9(
1975
2008
  "div",
1976
2009
  {
@@ -1978,30 +2011,30 @@ function Repeatable(props) {
1978
2011
  "has-error": (validationState == null ? void 0 : validationState.status) === "invalid"
1979
2012
  }),
1980
2013
  children: [
1981
- items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx36(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
1982
- /* @__PURE__ */ jsx36(
2014
+ items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx38(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
2015
+ /* @__PURE__ */ jsx38(
1983
2016
  NavigationOption2,
1984
2017
  {
1985
- media: /* @__PURE__ */ jsx36(Plus, {}),
2018
+ media: /* @__PURE__ */ jsx38(Plus, {}),
1986
2019
  title: addItemTitle || formatMessage(repeatable_messages_default.addItemTitle),
1987
2020
  showMediaAtAllSizes: true,
1988
2021
  onClick: () => onAddItem()
1989
2022
  }
1990
2023
  ),
1991
- (validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx36(InlineAlert2, { type: "negative", children: validationState.message })
2024
+ (validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx38(InlineAlert2, { type: "negative", children: validationState.message })
1992
2025
  ]
1993
2026
  }
1994
2027
  ),
1995
- /* @__PURE__ */ jsx36(
2028
+ /* @__PURE__ */ jsx38(
1996
2029
  Modal2,
1997
2030
  {
1998
2031
  open: openModalType !== null,
1999
2032
  title: (openModalType === "add" ? addItemTitle : editItemTitle) || formatMessage(repeatable_messages_default.addItemTitle),
2000
2033
  body: /* @__PURE__ */ jsxs9(Fragment, { children: [
2001
- /* @__PURE__ */ jsx36("div", { className: "m-b-2", children: editableItem }),
2034
+ /* @__PURE__ */ jsx38("div", { className: "m-b-2", children: editableItem }),
2002
2035
  /* @__PURE__ */ jsxs9("div", { children: [
2003
- /* @__PURE__ */ jsx36(Button4, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
2004
- /* @__PURE__ */ jsx36(Button4, { priority: "secondary", type: "negative", block: true, onClick: () => onRemoveItem(), children: formatMessage(repeatable_messages_default.removeItem) })
2036
+ /* @__PURE__ */ jsx38(Button4, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
2037
+ /* @__PURE__ */ jsx38(Button4, { priority: "secondary", type: "negative", block: true, onClick: () => onRemoveItem(), children: formatMessage(repeatable_messages_default.removeItem) })
2005
2038
  ] })
2006
2039
  ] }),
2007
2040
  onClose: () => onCancelEdit()
@@ -2013,10 +2046,10 @@ function ItemSummaryOption({
2013
2046
  item,
2014
2047
  onClick
2015
2048
  }) {
2016
- return /* @__PURE__ */ jsx36(
2049
+ return /* @__PURE__ */ jsx38(
2017
2050
  NavigationOption2,
2018
2051
  {
2019
- media: /* @__PURE__ */ jsx36(NavigationOptionMedia, __spreadValues({}, item)),
2052
+ media: /* @__PURE__ */ jsx38(OptionMedia, __spreadProps(__spreadValues({}, item), { preferAvatar: false })),
2020
2053
  title: item.title,
2021
2054
  content: item.description,
2022
2055
  showMediaAtAllSizes: true,
@@ -2066,7 +2099,7 @@ var generic_error_messages_default = defineMessages6({
2066
2099
 
2067
2100
  // ../renderers/src/SearchRenderer/ErrorResult.tsx
2068
2101
  import { Button as Button5 } from "@transferwise/components";
2069
- import { jsx as jsx37, jsxs as jsxs10 } from "react/jsx-runtime";
2102
+ import { jsx as jsx39, jsxs as jsxs10 } from "react/jsx-runtime";
2070
2103
  function ErrorResult({ state }) {
2071
2104
  const intl = useIntl5();
2072
2105
  const buttonVisualProps = {
@@ -2077,7 +2110,7 @@ function ErrorResult({ state }) {
2077
2110
  return /* @__PURE__ */ jsxs10("p", { className: "m-t-2", children: [
2078
2111
  intl.formatMessage(generic_error_messages_default.genericError),
2079
2112
  "\xA0",
2080
- /* @__PURE__ */ jsx37(
2113
+ /* @__PURE__ */ jsx39(
2081
2114
  Button5,
2082
2115
  __spreadProps(__spreadValues({}, buttonVisualProps), {
2083
2116
  onClick: () => {
@@ -2090,7 +2123,7 @@ function ErrorResult({ state }) {
2090
2123
  }
2091
2124
 
2092
2125
  // ../renderers/src/SearchRenderer/BlockSearchRendererComponent.tsx
2093
- import { Fragment as Fragment2, jsx as jsx38, jsxs as jsxs11 } from "react/jsx-runtime";
2126
+ import { Fragment as Fragment2, jsx as jsx40, jsxs as jsxs11 } from "react/jsx-runtime";
2094
2127
  function BlockSearchRendererComponent({
2095
2128
  id,
2096
2129
  isLoading,
@@ -2104,7 +2137,7 @@ function BlockSearchRendererComponent({
2104
2137
  const [hasSearched, setHasSearched] = useState5(false);
2105
2138
  const { formatMessage } = useIntl6();
2106
2139
  return /* @__PURE__ */ jsxs11("div", { className: getMargin(margin), children: [
2107
- /* @__PURE__ */ jsx38(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx38(
2140
+ /* @__PURE__ */ jsx40(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx40(
2108
2141
  Input4,
2109
2142
  {
2110
2143
  id,
@@ -2121,7 +2154,7 @@ function BlockSearchRendererComponent({
2121
2154
  }
2122
2155
  }
2123
2156
  ) }),
2124
- isLoading ? /* @__PURE__ */ jsx38(Fragment2, { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx38(SearchResultContent, { state, trackEvent })
2157
+ isLoading ? /* @__PURE__ */ jsx40(Fragment2, { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx40(SearchResultContent, { state, trackEvent })
2125
2158
  ] });
2126
2159
  }
2127
2160
  function SearchResultContent({
@@ -2130,31 +2163,31 @@ function SearchResultContent({
2130
2163
  }) {
2131
2164
  switch (state.type) {
2132
2165
  case "error":
2133
- return /* @__PURE__ */ jsx38(ErrorResult, { state });
2166
+ return /* @__PURE__ */ jsx40(ErrorResult, { state });
2134
2167
  case "results":
2135
- return /* @__PURE__ */ jsx38(SearchResults, { state, trackEvent });
2168
+ return /* @__PURE__ */ jsx40(SearchResults, { state, trackEvent });
2136
2169
  case "noResults":
2137
- return /* @__PURE__ */ jsx38(EmptySearchResult, { state });
2170
+ return /* @__PURE__ */ jsx40(EmptySearchResult, { state });
2138
2171
  case "pending":
2139
2172
  default:
2140
2173
  return null;
2141
2174
  }
2142
2175
  }
2143
2176
  function EmptySearchResult({ state }) {
2144
- return /* @__PURE__ */ jsx38(Markdown3, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
2177
+ return /* @__PURE__ */ jsx40(Markdown3, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
2145
2178
  }
2146
2179
  function SearchResults({
2147
2180
  state,
2148
2181
  trackEvent
2149
2182
  }) {
2150
- return /* @__PURE__ */ jsx38(NavigationOptionsList2, { children: state.results.map((result) => {
2183
+ return /* @__PURE__ */ jsx40(NavigationOptionsList2, { children: state.results.map((result) => {
2151
2184
  const { icon, image } = result;
2152
- return /* @__PURE__ */ jsx38(
2185
+ return /* @__PURE__ */ jsx40(
2153
2186
  NavigationOption3,
2154
2187
  {
2155
2188
  title: result.title,
2156
2189
  content: result.description,
2157
- media: NavigationOptionMedia({ icon, image }),
2190
+ media: OptionMedia({ icon, image, preferAvatar: false }),
2158
2191
  showMediaCircle: false,
2159
2192
  showMediaAtAllSizes: true,
2160
2193
  onClick: () => {
@@ -2175,7 +2208,7 @@ import { Markdown as Markdown4, Typeahead } from "@transferwise/components";
2175
2208
  import { Search } from "@transferwise/icons";
2176
2209
  import { useState as useState6 } from "react";
2177
2210
  import { useIntl as useIntl7 } from "react-intl";
2178
- import { jsx as jsx39 } from "react/jsx-runtime";
2211
+ import { jsx as jsx41 } from "react/jsx-runtime";
2179
2212
  function InlineSearchRenderer({
2180
2213
  id,
2181
2214
  isLoading,
@@ -2187,7 +2220,7 @@ function InlineSearchRenderer({
2187
2220
  }) {
2188
2221
  const [hasSearched, setHasSearched] = useState6(false);
2189
2222
  const intl = useIntl7();
2190
- return /* @__PURE__ */ jsx39("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx39(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx39(
2223
+ return /* @__PURE__ */ jsx41("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx41(FieldInput_default, { id, description: "", validation: void 0, help: "", label: title, children: /* @__PURE__ */ jsx41(
2191
2224
  Typeahead,
2192
2225
  {
2193
2226
  id: "typeahead-input-id",
@@ -2195,10 +2228,10 @@ function InlineSearchRenderer({
2195
2228
  name: "typeahead-input-name",
2196
2229
  size: "md",
2197
2230
  maxHeight: 100,
2198
- footer: /* @__PURE__ */ jsx39(TypeaheadFooter, { state, isLoading }),
2231
+ footer: /* @__PURE__ */ jsx41(TypeaheadFooter, { state, isLoading }),
2199
2232
  multiple: false,
2200
2233
  clearable: false,
2201
- addon: /* @__PURE__ */ jsx39(Search, { size: 24 }),
2234
+ addon: /* @__PURE__ */ jsx41(Search, { size: 24 }),
2202
2235
  options: state.type === "results" ? state.results.map(mapResultToTypeaheadOption) : [],
2203
2236
  minQueryLength: 1,
2204
2237
  onChange: (values) => {
@@ -2235,29 +2268,29 @@ function mapResultToTypeaheadOption(result) {
2235
2268
  function TypeaheadFooter({ state, isLoading }) {
2236
2269
  const { formatMessage } = useIntl7();
2237
2270
  if (state.type === "noResults") {
2238
- return /* @__PURE__ */ jsx39(Markdown4, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
2271
+ return /* @__PURE__ */ jsx41(Markdown4, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
2239
2272
  }
2240
2273
  if (state.type === "error") {
2241
- return /* @__PURE__ */ jsx39("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx39(ErrorResult, { state }) });
2274
+ return /* @__PURE__ */ jsx41("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx41(ErrorResult, { state }) });
2242
2275
  }
2243
2276
  if (state.type === "pending" || isLoading) {
2244
- return /* @__PURE__ */ jsx39("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
2277
+ return /* @__PURE__ */ jsx41("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
2245
2278
  }
2246
2279
  return null;
2247
2280
  }
2248
2281
  var InlineSearchRendererComponent_default = InlineSearchRenderer;
2249
2282
 
2250
2283
  // ../renderers/src/SearchRenderer/SearchRenderer.tsx
2251
- import { jsx as jsx40 } from "react/jsx-runtime";
2284
+ import { jsx as jsx42 } from "react/jsx-runtime";
2252
2285
  var SearchRenderer = {
2253
2286
  canRenderType: "search",
2254
- render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx40(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx40(BlockSearchRendererComponent_default, __spreadValues({}, props))
2287
+ render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx42(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx42(BlockSearchRendererComponent_default, __spreadValues({}, props))
2255
2288
  };
2256
2289
  var SearchRenderer_default = SearchRenderer;
2257
2290
 
2258
2291
  // ../renderers/src/SelectInputRenderer/RadioInputRendererComponent.tsx
2259
2292
  import { RadioGroup } from "@transferwise/components";
2260
- import { Fragment as Fragment3, jsx as jsx41, jsxs as jsxs12 } from "react/jsx-runtime";
2293
+ import { Fragment as Fragment3, jsx as jsx43, jsxs as jsxs12 } from "react/jsx-runtime";
2261
2294
  function RadioInputRendererComponent(props) {
2262
2295
  const {
2263
2296
  id,
@@ -2272,7 +2305,7 @@ function RadioInputRendererComponent(props) {
2272
2305
  onSelect
2273
2306
  } = props;
2274
2307
  return /* @__PURE__ */ jsxs12(Fragment3, { children: [
2275
- /* @__PURE__ */ jsx41(
2308
+ /* @__PURE__ */ jsx43(
2276
2309
  FieldInput_default,
2277
2310
  {
2278
2311
  id,
@@ -2280,7 +2313,7 @@ function RadioInputRendererComponent(props) {
2280
2313
  help,
2281
2314
  description,
2282
2315
  validation: validationState,
2283
- children: /* @__PURE__ */ jsx41("span", { children: /* @__PURE__ */ jsx41(
2316
+ children: /* @__PURE__ */ jsx43("span", { children: /* @__PURE__ */ jsx43(
2284
2317
  RadioGroup,
2285
2318
  {
2286
2319
  name: id,
@@ -2289,7 +2322,7 @@ function RadioInputRendererComponent(props) {
2289
2322
  value: index,
2290
2323
  secondary: option.description,
2291
2324
  disabled: option.disabled || disabled,
2292
- avatar: /* @__PURE__ */ jsx41(OptionMedia, { icon: option.icon, image: option.image })
2325
+ avatar: /* @__PURE__ */ jsx43(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
2293
2326
  })),
2294
2327
  selectedValue: selectedIndex != null ? selectedIndex : void 0,
2295
2328
  onChange: onSelect
@@ -2305,7 +2338,7 @@ function RadioInputRendererComponent(props) {
2305
2338
  // ../renderers/src/SelectInputRenderer/TabInputRendererComponent.tsx
2306
2339
  import { Tabs } from "@transferwise/components";
2307
2340
  import { useEffect as useEffect2 } from "react";
2308
- import { Fragment as Fragment4, jsx as jsx42, jsxs as jsxs13 } from "react/jsx-runtime";
2341
+ import { Fragment as Fragment4, jsx as jsx44, jsxs as jsxs13 } from "react/jsx-runtime";
2309
2342
  function TabInputRendererComponent(props) {
2310
2343
  const {
2311
2344
  id,
@@ -2325,7 +2358,7 @@ function TabInputRendererComponent(props) {
2325
2358
  }
2326
2359
  }, [selectedIndex, onSelect, options.length]);
2327
2360
  return /* @__PURE__ */ jsxs13(Fragment4, { children: [
2328
- /* @__PURE__ */ jsx42(
2361
+ /* @__PURE__ */ jsx44(
2329
2362
  FieldInput_default,
2330
2363
  {
2331
2364
  id,
@@ -2333,7 +2366,7 @@ function TabInputRendererComponent(props) {
2333
2366
  help,
2334
2367
  description,
2335
2368
  validation: validationState,
2336
- children: /* @__PURE__ */ jsx42(
2369
+ children: /* @__PURE__ */ jsx44(
2337
2370
  Tabs,
2338
2371
  {
2339
2372
  name: id,
@@ -2342,7 +2375,7 @@ function TabInputRendererComponent(props) {
2342
2375
  title: option.title,
2343
2376
  // if we pass null, we get some props-types console errors
2344
2377
  // eslint-disable-next-line react/jsx-no-useless-fragment
2345
- content: /* @__PURE__ */ jsx42(Fragment4, {}),
2378
+ content: /* @__PURE__ */ jsx44(Fragment4, {}),
2346
2379
  disabled: option.disabled || disabled
2347
2380
  })),
2348
2381
  onTabSelect: onSelect
@@ -2357,7 +2390,7 @@ var isValidIndex = (index, options) => index !== null && index >= 0 && index < o
2357
2390
 
2358
2391
  // ../renderers/src/SelectInputRenderer/SelectInputRendererComponent.tsx
2359
2392
  import { SelectInput as SelectInput2, SelectInputOptionContent as SelectInputOptionContent2 } from "@transferwise/components";
2360
- import { Fragment as Fragment5, jsx as jsx43, jsxs as jsxs14 } from "react/jsx-runtime";
2393
+ import { Fragment as Fragment5, jsx as jsx45, jsxs as jsxs14 } from "react/jsx-runtime";
2361
2394
  function SelectInputRendererComponent(props) {
2362
2395
  const {
2363
2396
  id,
@@ -2393,17 +2426,17 @@ function SelectInputRendererComponent(props) {
2393
2426
  const contentProps = withinTrigger ? {
2394
2427
  title: option.title,
2395
2428
  note: option.description,
2396
- icon: getIconAvatar(option)
2429
+ icon: getInlineAvatar(option)
2397
2430
  } : {
2398
2431
  title: option.title,
2399
2432
  description: option.description,
2400
- icon: /* @__PURE__ */ jsx43(OptionMedia, { icon: option.icon, image: option.image })
2433
+ icon: /* @__PURE__ */ jsx45(OptionMedia, { icon: option.icon, image: option.image, preferAvatar: false })
2401
2434
  };
2402
- return /* @__PURE__ */ jsx43(SelectInputOptionContent2, __spreadValues({}, contentProps));
2435
+ return /* @__PURE__ */ jsx45(SelectInputOptionContent2, __spreadValues({}, contentProps));
2403
2436
  };
2404
2437
  const extraProps = { autoComplete };
2405
2438
  return /* @__PURE__ */ jsxs14(Fragment5, { children: [
2406
- /* @__PURE__ */ jsx43(
2439
+ /* @__PURE__ */ jsx45(
2407
2440
  FieldInput_default,
2408
2441
  {
2409
2442
  id,
@@ -2411,7 +2444,7 @@ function SelectInputRendererComponent(props) {
2411
2444
  help,
2412
2445
  description,
2413
2446
  validation: validationState,
2414
- children: /* @__PURE__ */ jsx43(
2447
+ children: /* @__PURE__ */ jsx45(
2415
2448
  SelectInput2,
2416
2449
  __spreadValues({
2417
2450
  name: id,
@@ -2434,7 +2467,7 @@ function SelectInputRendererComponent(props) {
2434
2467
  // ../renderers/src/SelectInputRenderer/SegmentedInputRendererComponent.tsx
2435
2468
  import { useEffect as useEffect3 } from "react";
2436
2469
  import { SegmentedControl } from "@transferwise/components";
2437
- import { Fragment as Fragment6, jsx as jsx44, jsxs as jsxs15 } from "react/jsx-runtime";
2470
+ import { Fragment as Fragment6, jsx as jsx46, jsxs as jsxs15 } from "react/jsx-runtime";
2438
2471
  function SegmentedInputRendererComponent(props) {
2439
2472
  const {
2440
2473
  id,
@@ -2453,7 +2486,7 @@ function SegmentedInputRendererComponent(props) {
2453
2486
  }
2454
2487
  }, [selectedIndex, onSelect, options.length]);
2455
2488
  return /* @__PURE__ */ jsxs15(Fragment6, { children: [
2456
- /* @__PURE__ */ jsx44(
2489
+ /* @__PURE__ */ jsx46(
2457
2490
  FieldInput_default,
2458
2491
  {
2459
2492
  id,
@@ -2461,7 +2494,7 @@ function SegmentedInputRendererComponent(props) {
2461
2494
  help,
2462
2495
  description,
2463
2496
  validation: validationState,
2464
- children: /* @__PURE__ */ jsx44(
2497
+ children: /* @__PURE__ */ jsx46(
2465
2498
  SegmentedControl,
2466
2499
  {
2467
2500
  name: `${id}-segmented-control`,
@@ -2478,26 +2511,26 @@ function SegmentedInputRendererComponent(props) {
2478
2511
  )
2479
2512
  }
2480
2513
  ),
2481
- /* @__PURE__ */ jsx44("div", { id: `${id}-children`, children })
2514
+ /* @__PURE__ */ jsx46("div", { id: `${id}-children`, children })
2482
2515
  ] });
2483
2516
  }
2484
2517
  var isValidIndex2 = (index, options) => index !== null && index >= 0 && index < options;
2485
2518
 
2486
2519
  // ../renderers/src/SelectInputRenderer/SelectInputRenderer.tsx
2487
- import { jsx as jsx45 } from "react/jsx-runtime";
2520
+ import { jsx as jsx47 } from "react/jsx-runtime";
2488
2521
  var SelectInputRenderer = {
2489
2522
  canRenderType: "input-select",
2490
2523
  render: (props) => {
2491
2524
  switch (props.control) {
2492
2525
  case "radio":
2493
- return /* @__PURE__ */ jsx45(RadioInputRendererComponent, __spreadValues({}, props));
2526
+ return /* @__PURE__ */ jsx47(RadioInputRendererComponent, __spreadValues({}, props));
2494
2527
  case "tab":
2495
- return props.options.length > 3 ? /* @__PURE__ */ jsx45(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx45(TabInputRendererComponent, __spreadValues({}, props));
2528
+ return props.options.length > 3 ? /* @__PURE__ */ jsx47(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx47(TabInputRendererComponent, __spreadValues({}, props));
2496
2529
  case "segmented":
2497
- return props.options.length > 3 ? /* @__PURE__ */ jsx45(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx45(SegmentedInputRendererComponent, __spreadValues({}, props));
2530
+ return props.options.length > 3 ? /* @__PURE__ */ jsx47(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx47(SegmentedInputRendererComponent, __spreadValues({}, props));
2498
2531
  case "select":
2499
2532
  default:
2500
- return /* @__PURE__ */ jsx45(SelectInputRendererComponent, __spreadValues({}, props));
2533
+ return /* @__PURE__ */ jsx47(SelectInputRendererComponent, __spreadValues({}, props));
2501
2534
  }
2502
2535
  }
2503
2536
  };
@@ -2505,17 +2538,17 @@ var SelectInputRenderer_default = SelectInputRenderer;
2505
2538
 
2506
2539
  // ../renderers/src/StatusListRenderer.tsx
2507
2540
  import { Header as Header5, Summary } from "@transferwise/components";
2508
- import { jsx as jsx46, jsxs as jsxs16 } from "react/jsx-runtime";
2541
+ import { jsx as jsx48, jsxs as jsxs16 } from "react/jsx-runtime";
2509
2542
  var StatusListRenderer = {
2510
2543
  canRenderType: "status-list",
2511
2544
  render: ({ margin, items, title }) => /* @__PURE__ */ jsxs16("div", { className: getMargin(margin), children: [
2512
- title ? /* @__PURE__ */ jsx46(Header5, { title, className: "m-b-2" }) : null,
2513
- items.map(({ callToAction, description, icon, status, title: itemTitle }) => /* @__PURE__ */ jsx46(
2545
+ title ? /* @__PURE__ */ jsx48(Header5, { title, className: "m-b-2" }) : null,
2546
+ items.map(({ callToAction, description, icon, status, title: itemTitle }) => /* @__PURE__ */ jsx48(
2514
2547
  Summary,
2515
2548
  {
2516
2549
  title: itemTitle,
2517
2550
  description,
2518
- icon: icon && "name" in icon ? /* @__PURE__ */ jsx46(DynamicIcon_default, { name: icon.name }) : null,
2551
+ icon: icon && "name" in icon ? /* @__PURE__ */ jsx48(DynamicIcon_default, { name: icon.name }) : null,
2519
2552
  status: mapStatus(status),
2520
2553
  action: getSummaryAction(callToAction)
2521
2554
  },
@@ -2561,7 +2594,7 @@ import {
2561
2594
  TextArea,
2562
2595
  TextareaWithDisplayFormat
2563
2596
  } from "@transferwise/components";
2564
- import { jsx as jsx47 } from "react/jsx-runtime";
2597
+ import { jsx as jsx49 } from "react/jsx-runtime";
2565
2598
  var commonKeys = [
2566
2599
  "autoComplete",
2567
2600
  "autoCapitalize",
@@ -2580,12 +2613,12 @@ function VariableTextInput(inputProps) {
2580
2613
  const commonProps = __spreadProps(__spreadValues({}, pick(inputProps, ...commonKeys)), { name: id });
2581
2614
  switch (control) {
2582
2615
  case "email":
2583
- return /* @__PURE__ */ jsx47(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "email", onChange }));
2616
+ return /* @__PURE__ */ jsx49(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "email", onChange }));
2584
2617
  case "password":
2585
- return /* @__PURE__ */ jsx47(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "password", onChange }));
2618
+ return /* @__PURE__ */ jsx49(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "password", onChange }));
2586
2619
  case "numeric": {
2587
2620
  const numericProps = __spreadProps(__spreadValues({}, commonProps), { type: "number", onWheel });
2588
- return /* @__PURE__ */ jsx47(
2621
+ return /* @__PURE__ */ jsx49(
2589
2622
  TextInput,
2590
2623
  __spreadProps(__spreadValues({}, numericProps), {
2591
2624
  onChange: (newValue) => onChange(numericValueOrNull(newValue))
@@ -2593,9 +2626,9 @@ function VariableTextInput(inputProps) {
2593
2626
  );
2594
2627
  }
2595
2628
  case "phone-number":
2596
- return /* @__PURE__ */ jsx47(PhoneNumberInput, __spreadProps(__spreadValues({ initialValue: value }, commonProps), { onChange }));
2629
+ return /* @__PURE__ */ jsx49(PhoneNumberInput, __spreadProps(__spreadValues({ initialValue: value }, commonProps), { onChange }));
2597
2630
  default: {
2598
- return /* @__PURE__ */ jsx47(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "text", onChange }));
2631
+ return /* @__PURE__ */ jsx49(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "text", onChange }));
2599
2632
  }
2600
2633
  }
2601
2634
  }
@@ -2603,11 +2636,11 @@ function TextInput(props) {
2603
2636
  const _a = props, { control, displayFormat, onChange } = _a, commonProps = __objRest(_a, ["control", "displayFormat", "onChange"]);
2604
2637
  const InputWithPattern = control === "textarea" ? TextareaWithDisplayFormat : InputWithDisplayFormat;
2605
2638
  const InputWithoutPattern = control === "textarea" ? TextArea : Input5;
2606
- return displayFormat ? /* @__PURE__ */ jsx47(InputWithPattern, __spreadProps(__spreadValues({ displayPattern: displayFormat }, commonProps), { onChange })) : /* @__PURE__ */ jsx47(InputWithoutPattern, __spreadProps(__spreadValues({}, commonProps), { onChange: (e) => onChange(e.target.value) }));
2639
+ return displayFormat ? /* @__PURE__ */ jsx49(InputWithPattern, __spreadProps(__spreadValues({ displayPattern: displayFormat }, commonProps), { onChange })) : /* @__PURE__ */ jsx49(InputWithoutPattern, __spreadProps(__spreadValues({}, commonProps), { onChange: (e) => onChange(e.target.value) }));
2607
2640
  }
2608
2641
 
2609
2642
  // ../renderers/src/TextInputRenderer.tsx
2610
- import { jsx as jsx48 } from "react/jsx-runtime";
2643
+ import { jsx as jsx50 } from "react/jsx-runtime";
2611
2644
  var TextInputRenderer = {
2612
2645
  canRenderType: "input-text",
2613
2646
  render: (props) => {
@@ -2642,7 +2675,7 @@ var TextInputRenderer = {
2642
2675
  }
2643
2676
  }
2644
2677
  });
2645
- return /* @__PURE__ */ jsx48(
2678
+ return /* @__PURE__ */ jsx50(
2646
2679
  FieldInput_default,
2647
2680
  {
2648
2681
  id,
@@ -2650,7 +2683,7 @@ var TextInputRenderer = {
2650
2683
  description,
2651
2684
  validation: validationState,
2652
2685
  help,
2653
- children: /* @__PURE__ */ jsx48(InputGroup3, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx48(VariableTextInput, __spreadValues({}, inputProps)) })
2686
+ children: /* @__PURE__ */ jsx50(InputGroup3, { addonStart: getInputGroupAddonStart({ icon, image }), children: /* @__PURE__ */ jsx50(VariableTextInput, __spreadValues({}, inputProps)) })
2654
2687
  }
2655
2688
  );
2656
2689
  }
@@ -2664,7 +2697,7 @@ import { Upload, UploadInput as UploadInput2 } from "@transferwise/components";
2664
2697
  var getRandomId = () => Math.random().toString(36).substring(2);
2665
2698
 
2666
2699
  // ../renderers/src/UploadInputRenderer.tsx
2667
- import { jsx as jsx49 } from "react/jsx-runtime";
2700
+ import { jsx as jsx51 } from "react/jsx-runtime";
2668
2701
  var UploadInputRenderer = {
2669
2702
  canRenderType: "input-upload",
2670
2703
  render: (props) => {
@@ -2680,14 +2713,14 @@ var UploadInputRenderer = {
2680
2713
  };
2681
2714
  return (
2682
2715
  // We don't pass help here as there is no sensible place to display it
2683
- /* @__PURE__ */ jsx49(
2716
+ /* @__PURE__ */ jsx51(
2684
2717
  UploadFieldInput_default,
2685
2718
  {
2686
2719
  id,
2687
2720
  label: void 0,
2688
2721
  description: void 0,
2689
2722
  validation: validationState,
2690
- children: /* @__PURE__ */ jsx49(
2723
+ children: /* @__PURE__ */ jsx51(
2691
2724
  UploadInput2,
2692
2725
  {
2693
2726
  id,
@@ -2744,7 +2777,7 @@ var LargeUploadRenderer = {
2744
2777
  throw e;
2745
2778
  }
2746
2779
  };
2747
- return /* @__PURE__ */ jsx49(
2780
+ return /* @__PURE__ */ jsx51(
2748
2781
  FieldInput_default,
2749
2782
  {
2750
2783
  id,
@@ -2752,7 +2785,7 @@ var LargeUploadRenderer = {
2752
2785
  description,
2753
2786
  validation: validationState,
2754
2787
  help,
2755
- children: /* @__PURE__ */ jsx49(
2788
+ children: /* @__PURE__ */ jsx51(
2756
2789
  Upload,
2757
2790
  __spreadProps(__spreadValues({}, uploadProps), {
2758
2791
  usAccept: getAcceptsString(accepts),
@@ -2769,14 +2802,14 @@ var LargeUploadRenderer = {
2769
2802
 
2770
2803
  // ../renderers/src/ReviewRenderer.tsx
2771
2804
  import { DefinitionList, Header as Header6 } from "@transferwise/components";
2772
- import { Fragment as Fragment7, jsx as jsx50, jsxs as jsxs17 } from "react/jsx-runtime";
2805
+ import { Fragment as Fragment7, jsx as jsx52, jsxs as jsxs17 } from "react/jsx-runtime";
2773
2806
  var ReviewRenderer = {
2774
2807
  canRenderType: "review",
2775
2808
  render: ({ callToAction, control, fields, margin, title }) => {
2776
2809
  const orientation = mapControlToDefinitionListLayout(control);
2777
2810
  return /* @__PURE__ */ jsxs17("div", { className: getMargin(margin), children: [
2778
- (title || callToAction) && /* @__PURE__ */ jsx50(Header6, { title: title != null ? title : "", action: getReviewAction(callToAction) }),
2779
- /* @__PURE__ */ jsx50("div", { className: margin, children: /* @__PURE__ */ jsx50(
2811
+ (title || callToAction) && /* @__PURE__ */ jsx52(Header6, { title: title != null ? title : "", action: getReviewAction(callToAction) }),
2812
+ /* @__PURE__ */ jsx52("div", { className: margin, children: /* @__PURE__ */ jsx52(
2780
2813
  DefinitionList,
2781
2814
  {
2782
2815
  layout: orientation,
@@ -2809,13 +2842,13 @@ var mapControlToDefinitionListLayout = (control) => {
2809
2842
  var getFieldValue = (value, help, orientation) => {
2810
2843
  if (help) {
2811
2844
  return orientation === "HORIZONTAL_RIGHT_ALIGNED" ? /* @__PURE__ */ jsxs17(Fragment7, { children: [
2812
- /* @__PURE__ */ jsx50(Help_default, { help }),
2845
+ /* @__PURE__ */ jsx52(Help_default, { help }),
2813
2846
  " ",
2814
2847
  value
2815
2848
  ] }) : /* @__PURE__ */ jsxs17(Fragment7, { children: [
2816
2849
  value,
2817
2850
  " ",
2818
- /* @__PURE__ */ jsx50(Help_default, { help })
2851
+ /* @__PURE__ */ jsx52(Help_default, { help })
2819
2852
  ] });
2820
2853
  }
2821
2854
  return value;
@@ -2847,11 +2880,11 @@ var getReviewAction = (callToAction) => {
2847
2880
  import { Alert as Alert2, Title } from "@transferwise/components";
2848
2881
 
2849
2882
  // ../renderers/src/step/BackButton.tsx
2850
- import { AvatarView as AvatarView3 } from "@transferwise/components";
2883
+ import { AvatarView as AvatarView4 } from "@transferwise/components";
2851
2884
  import { ArrowLeft } from "@transferwise/icons";
2852
- import { jsx as jsx51, jsxs as jsxs18 } from "react/jsx-runtime";
2885
+ import { jsx as jsx53, jsxs as jsxs18 } from "react/jsx-runtime";
2853
2886
  function BackButton({ title, onClick }) {
2854
- return /* @__PURE__ */ jsx51("div", { className: "m-b-2", children: /* @__PURE__ */ jsxs18(
2887
+ return /* @__PURE__ */ jsx53("div", { className: "m-b-2", children: /* @__PURE__ */ jsxs18(
2855
2888
  "button",
2856
2889
  {
2857
2890
  type: "button",
@@ -2860,8 +2893,8 @@ function BackButton({ title, onClick }) {
2860
2893
  "aria-label": title,
2861
2894
  onClick,
2862
2895
  children: [
2863
- /* @__PURE__ */ jsx51("span", { className: "sr-only", children: title }),
2864
- /* @__PURE__ */ jsx51(AvatarView3, { interactive: true, children: /* @__PURE__ */ jsx51(ArrowLeft, { size: "24" }) })
2896
+ /* @__PURE__ */ jsx53("span", { className: "sr-only", children: title }),
2897
+ /* @__PURE__ */ jsx53(AvatarView4, { interactive: true, children: /* @__PURE__ */ jsx53(ArrowLeft, { size: "24" }) })
2865
2898
  ]
2866
2899
  }
2867
2900
  ) });
@@ -2898,17 +2931,17 @@ var external_confirmation_messages_default = defineMessages7({
2898
2931
 
2899
2932
  // ../renderers/src/step/ExternalConfirmationDialog.tsx
2900
2933
  import { Button as Button6, Markdown as Markdown5 } from "@transferwise/components";
2901
- import { jsx as jsx52, jsxs as jsxs19 } from "react/jsx-runtime";
2934
+ import { jsx as jsx54, jsxs as jsxs19 } from "react/jsx-runtime";
2902
2935
  function ExternalConfirmationDialog({
2903
2936
  external,
2904
2937
  onClose
2905
2938
  }) {
2906
2939
  const { formatMessage } = useIntl8();
2907
- return /* @__PURE__ */ jsx52("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs19("div", { className: "df-box-renderer-width-lg", children: [
2908
- /* @__PURE__ */ jsx52("h2", { className: "text-xs-center m-b-5", children: formatMessage(external_confirmation_messages_default.title) }),
2909
- /* @__PURE__ */ jsx52(Markdown5, { config: { link: { target: "_blank" } }, className: "text-xs-center m-b-5", children: formatMessage(external_confirmation_messages_default.description, { origin: getOrigin(external.url) }) }),
2910
- /* @__PURE__ */ jsx52("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs19("div", { className: "df-box-renderer-width-lg", children: [
2911
- /* @__PURE__ */ jsx52(
2940
+ return /* @__PURE__ */ jsx54("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs19("div", { className: "df-box-renderer-width-lg", children: [
2941
+ /* @__PURE__ */ jsx54("h2", { className: "text-xs-center m-b-5", children: formatMessage(external_confirmation_messages_default.title) }),
2942
+ /* @__PURE__ */ jsx54(Markdown5, { config: { link: { target: "_blank" } }, className: "text-xs-center m-b-5", children: formatMessage(external_confirmation_messages_default.description, { origin: getOrigin(external.url) }) }),
2943
+ /* @__PURE__ */ jsx54("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs19("div", { className: "df-box-renderer-width-lg", children: [
2944
+ /* @__PURE__ */ jsx54(
2912
2945
  Button6,
2913
2946
  {
2914
2947
  block: true,
@@ -2922,7 +2955,7 @@ function ExternalConfirmationDialog({
2922
2955
  children: formatMessage(external_confirmation_messages_default.open)
2923
2956
  }
2924
2957
  ),
2925
- /* @__PURE__ */ jsx52(Button6, { block: true, className: "m-b-2", priority: "tertiary", size: "md", onClick: onClose, children: formatMessage(external_confirmation_messages_default.cancel) })
2958
+ /* @__PURE__ */ jsx54(Button6, { block: true, className: "m-b-2", priority: "tertiary", size: "md", onClick: onClose, children: formatMessage(external_confirmation_messages_default.cancel) })
2926
2959
  ] }) })
2927
2960
  ] }) });
2928
2961
  }
@@ -2951,7 +2984,7 @@ function useExternal(url) {
2951
2984
  }
2952
2985
 
2953
2986
  // ../renderers/src/step/StepRenderer.tsx
2954
- import { Fragment as Fragment8, jsx as jsx53, jsxs as jsxs20 } from "react/jsx-runtime";
2987
+ import { Fragment as Fragment8, jsx as jsx55, jsxs as jsxs20 } from "react/jsx-runtime";
2955
2988
  var StepRenderer = {
2956
2989
  canRenderType: "step",
2957
2990
  render: StepRendererComponent
@@ -2960,15 +2993,15 @@ function StepRendererComponent(props) {
2960
2993
  const { back, description, error, external, title, children } = props;
2961
2994
  const { requiresUserConfirmation, dismissConfirmation } = useExternal(external == null ? void 0 : external.url);
2962
2995
  if ((external == null ? void 0 : external.url) && requiresUserConfirmation) {
2963
- return /* @__PURE__ */ jsx53(ExternalConfirmationDialog, { external, onClose: dismissConfirmation });
2996
+ return /* @__PURE__ */ jsx55(ExternalConfirmationDialog, { external, onClose: dismissConfirmation });
2964
2997
  }
2965
2998
  return /* @__PURE__ */ jsxs20(Fragment8, { children: [
2966
- back ? /* @__PURE__ */ jsx53(BackButton_default, __spreadValues({}, back)) : null,
2999
+ back ? /* @__PURE__ */ jsx55(BackButton_default, __spreadValues({}, back)) : null,
2967
3000
  title || description ? /* @__PURE__ */ jsxs20("div", { className: "m-b-4", children: [
2968
- title ? /* @__PURE__ */ jsx53(Title, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
2969
- description ? /* @__PURE__ */ jsx53("p", { className: "text-xs-center np-text-body-large", children: description }) : void 0
3001
+ title ? /* @__PURE__ */ jsx55(Title, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
3002
+ description ? /* @__PURE__ */ jsx55("p", { className: "text-xs-center np-text-body-large", children: description }) : void 0
2970
3003
  ] }) : void 0,
2971
- error ? /* @__PURE__ */ jsx53(Alert2, { type: "negative", className: "m-b-2", message: error }) : void 0,
3004
+ error ? /* @__PURE__ */ jsx55(Alert2, { type: "negative", className: "m-b-2", message: error }) : void 0,
2972
3005
  children
2973
3006
  ] });
2974
3007
  }
@@ -2976,12 +3009,12 @@ function StepRendererComponent(props) {
2976
3009
  // ../renderers/src/ListRenderer.tsx
2977
3010
  import { Body, Header as Header7 } from "@transferwise/components";
2978
3011
  import classNames6 from "classnames";
2979
- import { jsx as jsx54, jsxs as jsxs21 } from "react/jsx-runtime";
3012
+ import { jsx as jsx56, jsxs as jsxs21 } from "react/jsx-runtime";
2980
3013
  var ListRenderer = {
2981
3014
  canRenderType: "list",
2982
- render: ({ callToAction, margin, items, title }) => /* @__PURE__ */ jsxs21("div", { className: getMargin(margin), children: [
2983
- (title || callToAction) && /* @__PURE__ */ jsx54(Header7, { as: "h2", title: title != null ? title : "", action: getListAction(callToAction) }),
2984
- items.map((props) => /* @__PURE__ */ jsx54(DesignSystemListItem, __spreadValues({}, props), props.title))
3015
+ render: ({ callToAction, control, margin, items, title }) => /* @__PURE__ */ jsxs21("div", { className: getMargin(margin), children: [
3016
+ (title || callToAction) && /* @__PURE__ */ jsx56(Header7, { as: "h2", title: title != null ? title : "", action: getListAction(callToAction) }),
3017
+ items.map((props) => /* @__PURE__ */ jsx56(DesignSystemListItem, __spreadProps(__spreadValues({}, props), { control }), props.title))
2985
3018
  ] })
2986
3019
  };
2987
3020
  var DesignSystemListItem = ({
@@ -2990,8 +3023,9 @@ var DesignSystemListItem = ({
2990
3023
  value,
2991
3024
  subvalue,
2992
3025
  icon,
2993
- image
2994
- }) => /* @__PURE__ */ jsx54(
3026
+ image,
3027
+ control
3028
+ }) => /* @__PURE__ */ jsx56(
2995
3029
  "label",
2996
3030
  {
2997
3031
  className: classNames6("np-option p-a-2", {
@@ -2999,27 +3033,31 @@ var DesignSystemListItem = ({
2999
3033
  "np-option__container-aligned": true
3000
3034
  }),
3001
3035
  children: /* @__PURE__ */ jsxs21("div", { className: "media", children: [
3002
- icon || image ? /* @__PURE__ */ jsx54("div", { className: "media-left", children: /* @__PURE__ */ jsx54(ListItemMedia, { image, icon }) }) : null,
3036
+ icon || image ? /* @__PURE__ */ jsx56("div", { className: "media-left", children: /* @__PURE__ */ jsx56(ListItemMedia, { image, icon, preferAvatar: control === "with-avatar" }) }) : null,
3003
3037
  /* @__PURE__ */ jsxs21("div", { className: "media-body", children: [
3004
3038
  /* @__PURE__ */ jsxs21("div", { className: "d-flex justify-content-between", children: [
3005
- /* @__PURE__ */ jsx54("h4", { className: "np-text-body-large-bold text-primary np-option__title", children: title }),
3006
- /* @__PURE__ */ jsx54("h4", { className: "np-text-body-large-bold text-primary np-option__title", children: value })
3039
+ /* @__PURE__ */ jsx56("h4", { className: "np-text-body-large-bold text-primary np-option__title", children: title }),
3040
+ /* @__PURE__ */ jsx56("h4", { className: "np-text-body-large-bold text-primary np-option__title", children: value })
3007
3041
  ] }),
3008
3042
  /* @__PURE__ */ jsxs21("div", { className: "d-flex justify-content-between", children: [
3009
- /* @__PURE__ */ jsx54(Body, { className: "d-block np-option__body", children: subtitle }),
3010
- /* @__PURE__ */ jsx54(Body, { className: "d-block np-option__body", children: subvalue })
3043
+ /* @__PURE__ */ jsx56(Body, { className: "d-block np-option__body", children: subtitle }),
3044
+ /* @__PURE__ */ jsx56(Body, { className: "d-block np-option__body", children: subvalue })
3011
3045
  ] })
3012
3046
  ] })
3013
3047
  ] })
3014
3048
  },
3015
3049
  title
3016
3050
  );
3017
- var ListItemMedia = ({ icon, image }) => {
3051
+ var ListItemMedia = ({
3052
+ icon,
3053
+ image,
3054
+ preferAvatar
3055
+ }) => {
3018
3056
  if (icon) {
3019
- return /* @__PURE__ */ jsx54("div", { className: "circle circle-sm text-primary circle-inverse", children: /* @__PURE__ */ jsx54(NavigationOptionMedia, { icon, image }) });
3057
+ return /* @__PURE__ */ jsx56("div", { className: "circle circle-sm text-primary circle-inverse", children: /* @__PURE__ */ jsx56(OptionMedia, { icon, image, preferAvatar }) });
3020
3058
  }
3021
3059
  if (image) {
3022
- return /* @__PURE__ */ jsx54("div", { className: "np-option__no-media-circle", children: /* @__PURE__ */ jsx54(NavigationOptionMedia, { icon, image }) });
3060
+ return /* @__PURE__ */ jsx56("div", { className: "np-option__no-media-circle", children: /* @__PURE__ */ jsx56(OptionMedia, { icon, image, preferAvatar }) });
3023
3061
  }
3024
3062
  };
3025
3063
  var getListAction = (callToAction) => {
@@ -3047,7 +3085,7 @@ var getListAction = (callToAction) => {
3047
3085
  var ListRenderer_default = ListRenderer;
3048
3086
 
3049
3087
  // ../renderers/src/step/SplashStepRenderer.tsx
3050
- import { jsx as jsx55, jsxs as jsxs22 } from "react/jsx-runtime";
3088
+ import { jsx as jsx57, jsxs as jsxs22 } from "react/jsx-runtime";
3051
3089
  var SplashStepRenderer = {
3052
3090
  canRenderType: "step",
3053
3091
  canRender: ({ control }) => control === "splash",
@@ -3057,10 +3095,10 @@ function SplashStepRendererComponent(props) {
3057
3095
  const { back, children, external } = props;
3058
3096
  const { requiresUserConfirmation, dismissConfirmation } = useExternal(external == null ? void 0 : external.url);
3059
3097
  if ((external == null ? void 0 : external.url) && requiresUserConfirmation) {
3060
- return /* @__PURE__ */ jsx55(ExternalConfirmationDialog, { external, onClose: dismissConfirmation });
3098
+ return /* @__PURE__ */ jsx57(ExternalConfirmationDialog, { external, onClose: dismissConfirmation });
3061
3099
  }
3062
3100
  return /* @__PURE__ */ jsxs22("div", { className: "splash-screen m-t-5", children: [
3063
- back ? /* @__PURE__ */ jsx55(BackButton_default, __spreadValues({}, back)) : null,
3101
+ back ? /* @__PURE__ */ jsx57(BackButton_default, __spreadValues({}, back)) : null,
3064
3102
  children
3065
3103
  ] });
3066
3104
  }
@@ -3082,7 +3120,7 @@ var useCustomTheme = (theme, trackEvent) => {
3082
3120
  };
3083
3121
 
3084
3122
  // ../renderers/src/step/SplashCelebrationStepRenderer.tsx
3085
- import { jsx as jsx56, jsxs as jsxs23 } from "react/jsx-runtime";
3123
+ import { jsx as jsx58, jsxs as jsxs23 } from "react/jsx-runtime";
3086
3124
  var SplashCelebrationStepRenderer = {
3087
3125
  canRenderType: "step",
3088
3126
  canRender: ({ control }) => control === "splash-celebration",
@@ -3093,10 +3131,10 @@ function SplashCelebrationStepRendererComponent(props) {
3093
3131
  useCustomTheme("forest-green", trackEvent);
3094
3132
  const { requiresUserConfirmation, dismissConfirmation } = useExternal(external == null ? void 0 : external.url);
3095
3133
  if ((external == null ? void 0 : external.url) && requiresUserConfirmation) {
3096
- return /* @__PURE__ */ jsx56(ExternalConfirmationDialog, { external, onClose: dismissConfirmation });
3134
+ return /* @__PURE__ */ jsx58(ExternalConfirmationDialog, { external, onClose: dismissConfirmation });
3097
3135
  }
3098
3136
  return /* @__PURE__ */ jsxs23("div", { className: "splash-screen m-t-5", children: [
3099
- back ? /* @__PURE__ */ jsx56(BackButton_default, __spreadValues({}, back)) : null,
3137
+ back ? /* @__PURE__ */ jsx58(BackButton_default, __spreadValues({}, back)) : null,
3100
3138
  children
3101
3139
  ] });
3102
3140
  }
@@ -3139,7 +3177,7 @@ var getWiseRenderers = () => [
3139
3177
  ];
3140
3178
 
3141
3179
  // src/dynamicFlow/telemetry/app-version.ts
3142
- var appVersion = "4.7.3";
3180
+ var appVersion = "4.9.0";
3143
3181
 
3144
3182
  // src/dynamicFlow/telemetry/getLogEvent.ts
3145
3183
  var getLogEvent = (onLog) => (level, message, extra) => {
@@ -3165,7 +3203,7 @@ var logToRollbar = (level, message, extra) => {
3165
3203
 
3166
3204
  // src/dynamicFlow/telemetry/getTrackEvent.ts
3167
3205
  import { isThemeModern } from "@wise/components-theming";
3168
- var getTrackEvent = (onEvent, onAnalytics, onThemeChange, onLog) => (name, properties) => {
3206
+ var getTrackEvent = (onEvent, onAnalytics, onThemeChange) => (name, properties) => {
3169
3207
  onEvent == null ? void 0 : onEvent(name, properties);
3170
3208
  if (name.includes(ThemeRequiredEventName)) {
3171
3209
  const { theme } = properties != null ? properties : { theme: "personal" };
@@ -3175,23 +3213,15 @@ var getTrackEvent = (onEvent, onAnalytics, onThemeChange, onLog) => (name, prope
3175
3213
  } else {
3176
3214
  onAnalytics == null ? void 0 : onAnalytics(name, properties);
3177
3215
  }
3178
- if (name !== "DynamicFlow - Initiated") {
3179
- if ((properties == null ? void 0 : properties.stepId) === void 0) {
3180
- onLog == null ? void 0 : onLog("warning", "DynamicFlow warning. `stepId` is not defined in the event properties", {
3181
- eventName: name,
3182
- properties: Object.keys(properties != null ? properties : {})
3183
- });
3184
- }
3185
- }
3186
3216
  };
3187
3217
 
3188
3218
  // src/dynamicFlow/DynamicFlow.tsx
3189
- import { jsx as jsx57 } from "react/jsx-runtime";
3219
+ import { jsx as jsx59 } from "react/jsx-runtime";
3190
3220
  var wiseRenderers = getWiseRenderers();
3191
3221
  function DynamicFlowLegacy(props) {
3192
3222
  const { customFetch = globalThis.fetch } = props;
3193
3223
  const coreProps = __spreadProps(__spreadValues({}, props), { httpClient: customFetch });
3194
- return /* @__PURE__ */ jsx57(DynamicFlowCoreLegacy, __spreadValues({}, coreProps));
3224
+ return /* @__PURE__ */ jsx59(DynamicFlowCoreLegacy, __spreadValues({}, coreProps));
3195
3225
  }
3196
3226
  function DynamicFlowRevamp(props) {
3197
3227
  const {
@@ -3207,8 +3237,8 @@ function DynamicFlowRevamp(props) {
3207
3237
  const mergedRenderers = useMemo2(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
3208
3238
  const logEvent = useMemo2(() => getLogEvent(onLog), [onLog]);
3209
3239
  const trackEvent = useMemo2(
3210
- () => getTrackEvent(onEvent, onAnalytics, onThemeChange, logEvent),
3211
- [onEvent, onAnalytics, onThemeChange, logEvent]
3240
+ () => getTrackEvent(onEvent, onAnalytics, onThemeChange),
3241
+ [onEvent, onAnalytics, onThemeChange]
3212
3242
  );
3213
3243
  const coreProps = __spreadProps(__spreadValues({}, props), {
3214
3244
  httpClient,
@@ -3217,7 +3247,7 @@ function DynamicFlowRevamp(props) {
3217
3247
  onLog: logEvent,
3218
3248
  onLink
3219
3249
  });
3220
- return /* @__PURE__ */ jsx57(DynamicFlowCoreRevamp, __spreadValues({}, coreProps));
3250
+ return /* @__PURE__ */ jsx59(DynamicFlowCoreRevamp, __spreadValues({}, coreProps));
3221
3251
  }
3222
3252
  var DynamicForm = forwardRef(function DynamicForm2(props, ref) {
3223
3253
  const {
@@ -3233,8 +3263,8 @@ var DynamicForm = forwardRef(function DynamicForm2(props, ref) {
3233
3263
  const mergedRenderers = useMemo2(() => [...renderers != null ? renderers : [], ...wiseRenderers], [renderers]);
3234
3264
  const logEvent = useMemo2(() => getLogEvent(onLog), [onLog]);
3235
3265
  const trackEvent = useMemo2(
3236
- () => getTrackEvent(onEvent, onAnalytics, onThemeChange, logEvent),
3237
- [onEvent, onAnalytics, onThemeChange, logEvent]
3266
+ () => getTrackEvent(onEvent, onAnalytics, onThemeChange),
3267
+ [onEvent, onAnalytics, onThemeChange]
3238
3268
  );
3239
3269
  const coreProps = __spreadProps(__spreadValues({}, props), {
3240
3270
  httpClient,
@@ -3243,7 +3273,7 @@ var DynamicForm = forwardRef(function DynamicForm2(props, ref) {
3243
3273
  onLog: logEvent,
3244
3274
  onLink
3245
3275
  });
3246
- return /* @__PURE__ */ jsx57(DynamicFormCore, __spreadProps(__spreadValues({}, coreProps), { ref }));
3276
+ return /* @__PURE__ */ jsx59(DynamicFormCore, __spreadProps(__spreadValues({}, coreProps), { ref }));
3247
3277
  });
3248
3278
  var useWiseHttpClient = (httpClient) => {
3249
3279
  const { locale } = useIntl9();