@wise/dynamic-flow-client-internal 5.27.2 → 5.27.3
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.js +483 -202
- package/build/main.mjs +484 -206
- package/build/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +6 -6
package/build/main.mjs
CHANGED
|
@@ -64,7 +64,7 @@ var require_classnames = __commonJS({
|
|
|
64
64
|
(function() {
|
|
65
65
|
"use strict";
|
|
66
66
|
var hasOwn = {}.hasOwnProperty;
|
|
67
|
-
function
|
|
67
|
+
function classNames33() {
|
|
68
68
|
var classes = "";
|
|
69
69
|
for (var i = 0; i < arguments.length; i++) {
|
|
70
70
|
var arg = arguments[i];
|
|
@@ -82,7 +82,7 @@ var require_classnames = __commonJS({
|
|
|
82
82
|
return "";
|
|
83
83
|
}
|
|
84
84
|
if (Array.isArray(arg)) {
|
|
85
|
-
return
|
|
85
|
+
return classNames33.apply(null, arg);
|
|
86
86
|
}
|
|
87
87
|
if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes("[native code]")) {
|
|
88
88
|
return arg.toString();
|
|
@@ -105,14 +105,14 @@ var require_classnames = __commonJS({
|
|
|
105
105
|
return value + newClass;
|
|
106
106
|
}
|
|
107
107
|
if (typeof module !== "undefined" && module.exports) {
|
|
108
|
-
|
|
109
|
-
module.exports =
|
|
108
|
+
classNames33.default = classNames33;
|
|
109
|
+
module.exports = classNames33;
|
|
110
110
|
} else if (typeof define === "function" && typeof define.amd === "object" && define.amd) {
|
|
111
111
|
define("classnames", [], function() {
|
|
112
|
-
return
|
|
112
|
+
return classNames33;
|
|
113
113
|
});
|
|
114
114
|
} else {
|
|
115
|
-
window.classNames =
|
|
115
|
+
window.classNames = classNames33;
|
|
116
116
|
}
|
|
117
117
|
})();
|
|
118
118
|
}
|
|
@@ -127,7 +127,7 @@ import { useDynamicFlow } from "@wise/dynamic-flow-client";
|
|
|
127
127
|
// src/dynamicFlow/telemetry/app-version.ts
|
|
128
128
|
var appVersion = (
|
|
129
129
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
130
|
-
typeof process !== "undefined" ? "5.27.
|
|
130
|
+
typeof process !== "undefined" ? "5.27.3" : "0.0.0"
|
|
131
131
|
);
|
|
132
132
|
|
|
133
133
|
// src/dynamicFlow/context-menu/useContextMenu.tsx
|
|
@@ -326,6 +326,7 @@ import { getDynamicSubflowRenderer } from "@wise/dynamic-flow-client";
|
|
|
326
326
|
import { useState as useState3 } from "react";
|
|
327
327
|
|
|
328
328
|
// ../renderers/src/AlertRenderer/ActionPromptComponent.tsx
|
|
329
|
+
var import_classnames3 = __toESM(require_classnames());
|
|
329
330
|
import { ActionPrompt } from "@transferwise/components";
|
|
330
331
|
|
|
331
332
|
// ../renderers/src/utils/UrnFlag.tsx
|
|
@@ -661,6 +662,17 @@ function OptionMedia(props) {
|
|
|
661
662
|
import { jsx as jsx12 } from "react/jsx-runtime";
|
|
662
663
|
var getInlineMedia = (media) => media ? /* @__PURE__ */ jsx12(Media, { media, preferAvatar: false, size: 24 }) : null;
|
|
663
664
|
|
|
665
|
+
// ../renderers/src/ImageRenderer/UrnFlagImage.tsx
|
|
666
|
+
var import_classnames = __toESM(require_classnames());
|
|
667
|
+
|
|
668
|
+
// ../renderers/src/utils/controlAndTagsToCSSClass.ts
|
|
669
|
+
var controlAndTagsToCSSClass = ({ control, tags }) => {
|
|
670
|
+
var _a;
|
|
671
|
+
const controlClass = control ? `df-control-${control}` : "";
|
|
672
|
+
const tagsClass = (_a = tags == null ? void 0 : tags.map((tag) => `df-tag-${tag}`).join(" ")) != null ? _a : "";
|
|
673
|
+
return [controlClass, tagsClass].join(" ").trim();
|
|
674
|
+
};
|
|
675
|
+
|
|
664
676
|
// ../renderers/src/utils/layout-utils.ts
|
|
665
677
|
var getMargin = (size) => {
|
|
666
678
|
switch (size) {
|
|
@@ -697,18 +709,30 @@ var maxFlagSize = 600;
|
|
|
697
709
|
function UrnFlagImage({
|
|
698
710
|
accessibilityDescription,
|
|
699
711
|
align,
|
|
712
|
+
control,
|
|
700
713
|
margin,
|
|
701
714
|
size,
|
|
715
|
+
tags,
|
|
702
716
|
uri
|
|
703
717
|
}) {
|
|
704
|
-
return /* @__PURE__ */ jsx13(
|
|
718
|
+
return /* @__PURE__ */ jsx13(
|
|
719
|
+
"div",
|
|
720
|
+
{
|
|
721
|
+
className: (0, import_classnames.default)(
|
|
722
|
+
"df-image",
|
|
723
|
+
align,
|
|
724
|
+
size || "md",
|
|
725
|
+
getMargin(margin),
|
|
726
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
727
|
+
),
|
|
728
|
+
children: /* @__PURE__ */ jsx13(UrnFlag, { size: maxFlagSize, urn: uri, accessibilityDescription })
|
|
729
|
+
}
|
|
730
|
+
);
|
|
705
731
|
}
|
|
706
732
|
|
|
707
733
|
// ../renderers/src/ImageRenderer/UrnIllustration.tsx
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
isIllustrationSupport3D
|
|
711
|
-
} from "@wise/art";
|
|
734
|
+
var import_classnames2 = __toESM(require_classnames());
|
|
735
|
+
import { Illustration, isIllustrationSupport3D } from "@wise/art";
|
|
712
736
|
import { useState as useState2 } from "react";
|
|
713
737
|
|
|
714
738
|
// ../renderers/src/ImageRenderer/isAnimated.ts
|
|
@@ -755,8 +779,10 @@ var isUrnIllustration = (uri) => uri.startsWith(urnPrefix);
|
|
|
755
779
|
function UrnIllustration({
|
|
756
780
|
accessibilityDescription,
|
|
757
781
|
align,
|
|
782
|
+
control,
|
|
758
783
|
margin,
|
|
759
784
|
size,
|
|
785
|
+
tags,
|
|
760
786
|
uri
|
|
761
787
|
}) {
|
|
762
788
|
const [has3DFailed, setHas3DFailed] = useState2(false);
|
|
@@ -764,24 +790,46 @@ function UrnIllustration({
|
|
|
764
790
|
const illustrationName = getIllustrationName(uri);
|
|
765
791
|
const illustration3DName = getIllustration3DName(uri);
|
|
766
792
|
if (illustration3DName && isAnimated(uri) && !has3DFailed) {
|
|
767
|
-
return /* @__PURE__ */ jsx15(
|
|
768
|
-
|
|
793
|
+
return /* @__PURE__ */ jsx15(
|
|
794
|
+
"div",
|
|
769
795
|
{
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
796
|
+
className: (0, import_classnames2.default)(
|
|
797
|
+
"df-image",
|
|
798
|
+
align,
|
|
799
|
+
getMargin(margin),
|
|
800
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
801
|
+
),
|
|
802
|
+
children: /* @__PURE__ */ jsx15(
|
|
803
|
+
SafeIllustration3D_default,
|
|
804
|
+
{
|
|
805
|
+
name: illustration3DName,
|
|
806
|
+
size: illustrationSize,
|
|
807
|
+
onError: () => setHas3DFailed(true)
|
|
808
|
+
}
|
|
809
|
+
)
|
|
773
810
|
}
|
|
774
|
-
)
|
|
811
|
+
);
|
|
775
812
|
}
|
|
776
|
-
return /* @__PURE__ */ jsx15(
|
|
777
|
-
|
|
813
|
+
return /* @__PURE__ */ jsx15(
|
|
814
|
+
"div",
|
|
778
815
|
{
|
|
779
|
-
className:
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
816
|
+
className: (0, import_classnames2.default)(
|
|
817
|
+
"df-image",
|
|
818
|
+
align,
|
|
819
|
+
getMargin(margin),
|
|
820
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
821
|
+
),
|
|
822
|
+
children: /* @__PURE__ */ jsx15(
|
|
823
|
+
Illustration,
|
|
824
|
+
{
|
|
825
|
+
className: "df-illustration",
|
|
826
|
+
name: illustrationName,
|
|
827
|
+
size: illustrationSize,
|
|
828
|
+
alt: accessibilityDescription
|
|
829
|
+
}
|
|
830
|
+
)
|
|
783
831
|
}
|
|
784
|
-
)
|
|
832
|
+
);
|
|
785
833
|
}
|
|
786
834
|
var getIllustrationSize = (size) => ({ xs: "small", sm: "small", md: "medium", lg: "large", xl: "large" })[size] || "medium";
|
|
787
835
|
var getIllustrationName = (uri) => {
|
|
@@ -900,7 +948,9 @@ function ActionPromptComponent({
|
|
|
900
948
|
media,
|
|
901
949
|
onDismiss,
|
|
902
950
|
secondaryCallToAction,
|
|
903
|
-
title
|
|
951
|
+
title,
|
|
952
|
+
control,
|
|
953
|
+
tags
|
|
904
954
|
}) {
|
|
905
955
|
return /* @__PURE__ */ jsx19(
|
|
906
956
|
ActionPrompt,
|
|
@@ -908,7 +958,7 @@ function ActionPromptComponent({
|
|
|
908
958
|
title: title != null ? title : "",
|
|
909
959
|
description: mapPromptDescription(markdown),
|
|
910
960
|
sentiment: mapPromptSentiment(context),
|
|
911
|
-
className: getMargin(margin),
|
|
961
|
+
className: (0, import_classnames3.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })),
|
|
912
962
|
media: media && getActionPromptMedia(media),
|
|
913
963
|
action: mapCallToAction(callToAction),
|
|
914
964
|
actionSecondary: secondaryCallToAction ? mapCallToAction(secondaryCallToAction) : void 0,
|
|
@@ -918,6 +968,7 @@ function ActionPromptComponent({
|
|
|
918
968
|
}
|
|
919
969
|
|
|
920
970
|
// ../renderers/src/AlertRenderer/InfoPromptComponent.tsx
|
|
971
|
+
var import_classnames4 = __toESM(require_classnames());
|
|
921
972
|
import { InfoPrompt } from "@transferwise/components";
|
|
922
973
|
import { jsx as jsx20 } from "react/jsx-runtime";
|
|
923
974
|
function InfoPromptComponent({
|
|
@@ -927,7 +978,9 @@ function InfoPromptComponent({
|
|
|
927
978
|
markdown,
|
|
928
979
|
media,
|
|
929
980
|
onDismiss,
|
|
930
|
-
title
|
|
981
|
+
title,
|
|
982
|
+
control,
|
|
983
|
+
tags
|
|
931
984
|
}) {
|
|
932
985
|
return /* @__PURE__ */ jsx20(
|
|
933
986
|
InfoPrompt,
|
|
@@ -935,7 +988,7 @@ function InfoPromptComponent({
|
|
|
935
988
|
title,
|
|
936
989
|
description: mapPromptDescription(markdown),
|
|
937
990
|
sentiment: mapPromptSentiment(context),
|
|
938
|
-
className: getMargin(margin),
|
|
991
|
+
className: (0, import_classnames4.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })),
|
|
939
992
|
media: media && getInfoPromptMedia(media),
|
|
940
993
|
action: callToAction ? mapCallToAction(callToAction) : void 0,
|
|
941
994
|
onDismiss
|
|
@@ -973,32 +1026,38 @@ var shouldRenderActionPrompt = (props) => {
|
|
|
973
1026
|
var AlertRenderer_default = AlertRenderer;
|
|
974
1027
|
|
|
975
1028
|
// ../renderers/src/BoxRenderer.tsx
|
|
976
|
-
var
|
|
1029
|
+
var import_classnames5 = __toESM(require_classnames());
|
|
977
1030
|
import { jsx as jsx22 } from "react/jsx-runtime";
|
|
978
1031
|
var BoxRenderer = {
|
|
979
1032
|
canRenderType: "box",
|
|
980
|
-
render: ({ children, control, margin, width }) => {
|
|
1033
|
+
render: ({ children, control, margin, width, tags }) => {
|
|
981
1034
|
const hasFixedWidth = width !== "xl";
|
|
982
1035
|
const hasBorder = control === "bordered" || control === "bordered-web";
|
|
983
1036
|
const contents = /* @__PURE__ */ jsx22(
|
|
984
1037
|
"div",
|
|
985
1038
|
{
|
|
986
|
-
className: (0,
|
|
987
|
-
"df-box-renderer
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
1039
|
+
className: (0, import_classnames5.default)(
|
|
1040
|
+
"df-box-renderer",
|
|
1041
|
+
{
|
|
1042
|
+
"df-box-renderer-border": hasBorder,
|
|
1043
|
+
[`df-box-renderer-width-${width}`]: hasFixedWidth,
|
|
1044
|
+
[getMargin(margin)]: !hasFixedWidth
|
|
1045
|
+
},
|
|
1046
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
1047
|
+
),
|
|
991
1048
|
children
|
|
992
1049
|
}
|
|
993
1050
|
);
|
|
994
|
-
return hasFixedWidth ? /* @__PURE__ */ jsx22("div", { className: (0,
|
|
1051
|
+
return hasFixedWidth ? /* @__PURE__ */ jsx22("div", { className: (0, import_classnames5.default)("df-box-renderer-fixed-width", getMargin(margin)), children: contents }) : contents;
|
|
995
1052
|
}
|
|
996
1053
|
};
|
|
997
1054
|
var BoxRenderer_default = BoxRenderer;
|
|
998
1055
|
|
|
999
1056
|
// ../renderers/src/ButtonRenderer/AddressValidationButtonRenderer.tsx
|
|
1057
|
+
var import_classnames6 = __toESM(require_classnames());
|
|
1000
1058
|
import { Button, InlineAlert } from "@transferwise/components";
|
|
1001
1059
|
import { useIntl } from "react-intl";
|
|
1060
|
+
import { useEffect as useEffect2, useState as useState4 } from "react";
|
|
1002
1061
|
|
|
1003
1062
|
// ../renderers/src/messages/loading-button.messages.ts
|
|
1004
1063
|
import { defineMessages } from "react-intl";
|
|
@@ -1011,7 +1070,6 @@ var loading_button_messages_default = defineMessages({
|
|
|
1011
1070
|
});
|
|
1012
1071
|
|
|
1013
1072
|
// ../renderers/src/ButtonRenderer/AddressValidationButtonRenderer.tsx
|
|
1014
|
-
import { useEffect as useEffect2, useState as useState4 } from "react";
|
|
1015
1073
|
import { jsx as jsx23, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
1016
1074
|
var AddressValidationButtonRenderer = {
|
|
1017
1075
|
canRenderType: "button",
|
|
@@ -1019,7 +1077,7 @@ var AddressValidationButtonRenderer = {
|
|
|
1019
1077
|
render: AddressValidationButtonComponent
|
|
1020
1078
|
};
|
|
1021
1079
|
function AddressValidationButtonComponent(props) {
|
|
1022
|
-
const { disabled, margin, title, stepLoadingState, onClick } = props;
|
|
1080
|
+
const { disabled, margin, title, stepLoadingState, onClick, control, tags } = props;
|
|
1023
1081
|
const { formatMessage } = useIntl();
|
|
1024
1082
|
const [spinny, setSpinny] = useState4(false);
|
|
1025
1083
|
useEffect2(() => {
|
|
@@ -1032,31 +1090,60 @@ function AddressValidationButtonComponent(props) {
|
|
|
1032
1090
|
setSpinny(false);
|
|
1033
1091
|
}
|
|
1034
1092
|
};
|
|
1035
|
-
return /* @__PURE__ */ jsxs3(
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1093
|
+
return /* @__PURE__ */ jsxs3(
|
|
1094
|
+
"div",
|
|
1095
|
+
{
|
|
1096
|
+
className: (0, import_classnames6.default)(
|
|
1097
|
+
"d-flex flex-column",
|
|
1098
|
+
getMargin(margin),
|
|
1099
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
1100
|
+
),
|
|
1101
|
+
children: [
|
|
1102
|
+
/* @__PURE__ */ jsx23(
|
|
1103
|
+
Button,
|
|
1104
|
+
{
|
|
1105
|
+
v2: true,
|
|
1106
|
+
block: true,
|
|
1107
|
+
disabled,
|
|
1108
|
+
priority: "primary",
|
|
1109
|
+
size: "lg",
|
|
1110
|
+
loading: spinny,
|
|
1111
|
+
onClick: () => {
|
|
1112
|
+
setSpinny(true);
|
|
1113
|
+
onClick();
|
|
1114
|
+
},
|
|
1115
|
+
onBlur,
|
|
1116
|
+
children: title
|
|
1117
|
+
}
|
|
1118
|
+
),
|
|
1119
|
+
spinny && /* @__PURE__ */ jsx23(InlineAlert, { type: "warning", className: "m-x-auto", children: formatMessage(loading_button_messages_default.buttonLoadingMessage) })
|
|
1120
|
+
]
|
|
1121
|
+
}
|
|
1122
|
+
);
|
|
1055
1123
|
}
|
|
1056
1124
|
var AddressValidationButtonRenderer_default = AddressValidationButtonRenderer;
|
|
1057
1125
|
|
|
1058
1126
|
// ../renderers/src/ButtonRenderer/ButtonRenderer.tsx
|
|
1127
|
+
var import_classnames7 = __toESM(require_classnames());
|
|
1059
1128
|
import { Button as Button2 } from "@transferwise/components";
|
|
1129
|
+
import { useEffect as useEffect3, useState as useState5 } from "react";
|
|
1130
|
+
|
|
1131
|
+
// ../renderers/src/components/Media/getAddonStartMedia.ts
|
|
1132
|
+
var getAddonStartMedia = (media) => {
|
|
1133
|
+
if (media.type === "avatar") {
|
|
1134
|
+
if (media.content.length > 0 && media.content[0].type === "uri" && isValidIconUrn(media.content[0].uri)) {
|
|
1135
|
+
return {
|
|
1136
|
+
type: "icon",
|
|
1137
|
+
value: getInlineMedia({
|
|
1138
|
+
type: "image",
|
|
1139
|
+
uri: media.content[0].uri
|
|
1140
|
+
})
|
|
1141
|
+
};
|
|
1142
|
+
}
|
|
1143
|
+
return void 0;
|
|
1144
|
+
}
|
|
1145
|
+
return { type: "icon", value: getInlineMedia(media) };
|
|
1146
|
+
};
|
|
1060
1147
|
|
|
1061
1148
|
// ../renderers/src/utils/isButtonPriority.ts
|
|
1062
1149
|
var validPriorities = ["primary", "secondary", "secondary-neutral", "tertiary"];
|
|
@@ -1081,27 +1168,6 @@ var mapLegacyButtonSize = (size) => {
|
|
|
1081
1168
|
};
|
|
1082
1169
|
|
|
1083
1170
|
// ../renderers/src/ButtonRenderer/ButtonRenderer.tsx
|
|
1084
|
-
import { useEffect as useEffect3, useState as useState5 } from "react";
|
|
1085
|
-
|
|
1086
|
-
// ../renderers/src/components/Media/getAddonStartMedia.ts
|
|
1087
|
-
var getAddonStartMedia = (media) => {
|
|
1088
|
-
if (media.type === "avatar") {
|
|
1089
|
-
if (media.content.length > 0 && media.content[0].type === "uri" && isValidIconUrn(media.content[0].uri)) {
|
|
1090
|
-
return {
|
|
1091
|
-
type: "icon",
|
|
1092
|
-
value: getInlineMedia({
|
|
1093
|
-
type: "image",
|
|
1094
|
-
uri: media.content[0].uri
|
|
1095
|
-
})
|
|
1096
|
-
};
|
|
1097
|
-
}
|
|
1098
|
-
return void 0;
|
|
1099
|
-
}
|
|
1100
|
-
return { type: "icon", value: getInlineMedia(media) };
|
|
1101
|
-
};
|
|
1102
|
-
|
|
1103
|
-
// ../renderers/src/ButtonRenderer/ButtonRenderer.tsx
|
|
1104
|
-
var import_classnames2 = __toESM(require_classnames());
|
|
1105
1171
|
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
1106
1172
|
var ButtonRenderer = {
|
|
1107
1173
|
canRenderType: "button",
|
|
@@ -1135,10 +1201,15 @@ function ButtonComponent(props) {
|
|
|
1135
1201
|
const buttonProps = {
|
|
1136
1202
|
v2: true,
|
|
1137
1203
|
block: control !== "small",
|
|
1138
|
-
className: (0,
|
|
1139
|
-
|
|
1140
|
-
"
|
|
1141
|
-
|
|
1204
|
+
className: (0, import_classnames7.default)(
|
|
1205
|
+
getMargin(margin),
|
|
1206
|
+
"df-button",
|
|
1207
|
+
{
|
|
1208
|
+
small: control === "small",
|
|
1209
|
+
"align-center": tags == null ? void 0 : tags.includes("align-center")
|
|
1210
|
+
},
|
|
1211
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
1212
|
+
),
|
|
1142
1213
|
addonStart: control === "small" && media ? getAddonStartMedia(media) : void 0,
|
|
1143
1214
|
disabled,
|
|
1144
1215
|
priority: getPriority(control, tags),
|
|
@@ -1241,7 +1312,9 @@ function FieldInput({
|
|
|
1241
1312
|
help,
|
|
1242
1313
|
loadingState = "idle",
|
|
1243
1314
|
inlineAlert,
|
|
1244
|
-
features
|
|
1315
|
+
features,
|
|
1316
|
+
control,
|
|
1317
|
+
tags
|
|
1245
1318
|
}) {
|
|
1246
1319
|
var _a;
|
|
1247
1320
|
const labelContent = label && help ? /* @__PURE__ */ jsx27(LabelContentWithHelp, { text: label, help }) : label;
|
|
@@ -1255,6 +1328,7 @@ function FieldInput({
|
|
|
1255
1328
|
message: (_a = validation == null ? void 0 : validation.message) != null ? _a : inlineAlert == null ? void 0 : inlineAlert.content,
|
|
1256
1329
|
messageLoading: loadingState !== "idle",
|
|
1257
1330
|
sentiment: mapStatusToSentiment(validation, inlineAlert == null ? void 0 : inlineAlert.context),
|
|
1331
|
+
className: controlAndTagsToCSSClass({ control, tags }),
|
|
1258
1332
|
children
|
|
1259
1333
|
}
|
|
1260
1334
|
) });
|
|
@@ -1348,6 +1422,8 @@ var CheckboxComponent = (props) => {
|
|
|
1348
1422
|
inlineAlert: rest.inlineAlert,
|
|
1349
1423
|
loadingState: rest.fieldLoadingState,
|
|
1350
1424
|
features: rest.features,
|
|
1425
|
+
control,
|
|
1426
|
+
tags: rest.tags,
|
|
1351
1427
|
children: /* @__PURE__ */ jsx31(Checkbox, __spreadValues({ id }, checkboxProps))
|
|
1352
1428
|
}
|
|
1353
1429
|
);
|
|
@@ -1369,7 +1445,7 @@ var CheckboxItemComponent = (props) => {
|
|
|
1369
1445
|
const { ref } = useScrollToError(validationState, features);
|
|
1370
1446
|
return /* @__PURE__ */ jsx31("div", { ref, children: /* @__PURE__ */ jsx31(
|
|
1371
1447
|
ListItem3,
|
|
1372
|
-
__spreadValues({
|
|
1448
|
+
__spreadProps(__spreadValues({
|
|
1373
1449
|
title,
|
|
1374
1450
|
subtitle: description,
|
|
1375
1451
|
additionalInfo: getAdditionalText(additionalText),
|
|
@@ -1377,7 +1453,9 @@ var CheckboxItemComponent = (props) => {
|
|
|
1377
1453
|
disabled,
|
|
1378
1454
|
prompt: getInlineAlertOrValidation(validationState, inlineAlert),
|
|
1379
1455
|
control: /* @__PURE__ */ jsx31(ListItem3.Checkbox, { checked: value, onChange: () => onChange(!value) })
|
|
1380
|
-
}, getSupportingValues(supportingValues))
|
|
1456
|
+
}, getSupportingValues(supportingValues)), {
|
|
1457
|
+
className: controlAndTagsToCSSClass(props)
|
|
1458
|
+
})
|
|
1381
1459
|
) });
|
|
1382
1460
|
};
|
|
1383
1461
|
var SwitchItemComponent = (props) => {
|
|
@@ -1397,7 +1475,7 @@ var SwitchItemComponent = (props) => {
|
|
|
1397
1475
|
const { ref } = useScrollToError(validationState, features);
|
|
1398
1476
|
return /* @__PURE__ */ jsx31("div", { ref, children: /* @__PURE__ */ jsx31(
|
|
1399
1477
|
ListItem3,
|
|
1400
|
-
__spreadValues({
|
|
1478
|
+
__spreadProps(__spreadValues({
|
|
1401
1479
|
title,
|
|
1402
1480
|
subtitle: description,
|
|
1403
1481
|
additionalInfo: getAdditionalText(additionalText),
|
|
@@ -1405,7 +1483,9 @@ var SwitchItemComponent = (props) => {
|
|
|
1405
1483
|
disabled,
|
|
1406
1484
|
prompt: getInlineAlertOrValidation(validationState, inlineAlert),
|
|
1407
1485
|
control: /* @__PURE__ */ jsx31(ListItem3.Switch, { checked: value, onClick: () => onChange(!value) })
|
|
1408
|
-
}, getSupportingValues(supportingValues))
|
|
1486
|
+
}, getSupportingValues(supportingValues)), {
|
|
1487
|
+
className: controlAndTagsToCSSClass(props)
|
|
1488
|
+
})
|
|
1409
1489
|
) });
|
|
1410
1490
|
};
|
|
1411
1491
|
var getInlineAlertOrValidation = (validationState, inlineAlert) => {
|
|
@@ -2760,7 +2840,13 @@ import {
|
|
|
2760
2840
|
import { CrossCircleFill, Search } from "@transferwise/icons";
|
|
2761
2841
|
import { useIntl as useIntl5 } from "react-intl";
|
|
2762
2842
|
import { jsx as jsx38 } from "react/jsx-runtime";
|
|
2763
|
-
var SearchComponent = ({
|
|
2843
|
+
var SearchComponent = ({
|
|
2844
|
+
state,
|
|
2845
|
+
status,
|
|
2846
|
+
features,
|
|
2847
|
+
control,
|
|
2848
|
+
tags
|
|
2849
|
+
}) => {
|
|
2764
2850
|
const { search } = state;
|
|
2765
2851
|
const { formatMessage } = useIntl5();
|
|
2766
2852
|
if (!search) {
|
|
@@ -2800,6 +2886,8 @@ var SearchComponent = ({ state, status, features }) => {
|
|
|
2800
2886
|
help: "",
|
|
2801
2887
|
label: search.title,
|
|
2802
2888
|
features,
|
|
2889
|
+
control,
|
|
2890
|
+
tags,
|
|
2803
2891
|
children: /* @__PURE__ */ jsx38(InputGroup, { addonStart: { content: /* @__PURE__ */ jsx38(Search, { size: 24 }) }, addonEnd: getAddon(), children: /* @__PURE__ */ jsx38(
|
|
2804
2892
|
Input,
|
|
2805
2893
|
{
|
|
@@ -2868,7 +2956,7 @@ var CollectionRenderer = createCollectionRenderer(() => true);
|
|
|
2868
2956
|
var CollectionRenderer_default = CollectionRenderer;
|
|
2869
2957
|
|
|
2870
2958
|
// ../renderers/src/ColumnsRenderer.tsx
|
|
2871
|
-
var
|
|
2959
|
+
var import_classnames8 = __toESM(require_classnames());
|
|
2872
2960
|
|
|
2873
2961
|
// ../renderers/src/utils/useIsCollapsed.ts
|
|
2874
2962
|
import { useEffect as useEffect8, useState as useState8 } from "react";
|
|
@@ -2897,14 +2985,9 @@ var ColumnsRenderer = {
|
|
|
2897
2985
|
canRenderType: "columns",
|
|
2898
2986
|
render: ColumnsRendererComponent
|
|
2899
2987
|
};
|
|
2900
|
-
function ColumnsRendererComponent({
|
|
2901
|
-
bias,
|
|
2902
|
-
margin,
|
|
2903
|
-
startChildren,
|
|
2904
|
-
endChildren,
|
|
2905
|
-
tags
|
|
2906
|
-
}) {
|
|
2988
|
+
function ColumnsRendererComponent(props) {
|
|
2907
2989
|
var _a;
|
|
2990
|
+
const { bias, margin, startChildren, endChildren, tags } = props;
|
|
2908
2991
|
const isCollapsed = useIsCollapsed();
|
|
2909
2992
|
const reverse = isCollapsed && ((_a = tags == null ? void 0 : tags.includes(RIGHT_FIRST_STACKING)) != null ? _a : false);
|
|
2910
2993
|
const startColumn = /* @__PURE__ */ jsx42("div", { className: "df-columns-renderer-column", children: startChildren });
|
|
@@ -2912,10 +2995,15 @@ function ColumnsRendererComponent({
|
|
|
2912
2995
|
return /* @__PURE__ */ jsxs8(
|
|
2913
2996
|
"div",
|
|
2914
2997
|
{
|
|
2915
|
-
className: (0,
|
|
2916
|
-
"df-columns-renderer-
|
|
2917
|
-
|
|
2918
|
-
|
|
2998
|
+
className: (0, import_classnames8.default)(
|
|
2999
|
+
"df-columns-renderer-container",
|
|
3000
|
+
getMargin(margin),
|
|
3001
|
+
{
|
|
3002
|
+
"df-columns-renderer-bias-start": bias === "start",
|
|
3003
|
+
"df-columns-renderer-bias-end": bias === "end"
|
|
3004
|
+
},
|
|
3005
|
+
controlAndTagsToCSSClass(props)
|
|
3006
|
+
),
|
|
2919
3007
|
children: [
|
|
2920
3008
|
reverse ? endColumn : startColumn,
|
|
2921
3009
|
reverse ? startColumn : endColumn
|
|
@@ -3038,6 +3126,8 @@ var DateInputRenderer = {
|
|
|
3038
3126
|
loadingState: props.fieldLoadingState,
|
|
3039
3127
|
help,
|
|
3040
3128
|
features: props.features,
|
|
3129
|
+
control,
|
|
3130
|
+
tags: props.tags,
|
|
3041
3131
|
children: /* @__PURE__ */ jsx44(VariableDateInput_default, { control, inputProps })
|
|
3042
3132
|
}
|
|
3043
3133
|
);
|
|
@@ -3183,10 +3273,11 @@ var GroupedDecisionList = (_a) => {
|
|
|
3183
3273
|
};
|
|
3184
3274
|
|
|
3185
3275
|
// ../renderers/src/DecisionRenderer/DecisionWrapper.tsx
|
|
3276
|
+
var import_classnames9 = __toESM(require_classnames());
|
|
3186
3277
|
import { Fragment as Fragment5, jsx as jsx46, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
3187
3278
|
var DecisionWrapper = (props) => {
|
|
3188
|
-
const {
|
|
3189
|
-
return /* @__PURE__ */ jsxs10("div", { className: getMargin(margin), children: [
|
|
3279
|
+
const { margin, control, title, tags } = props;
|
|
3280
|
+
return /* @__PURE__ */ jsxs10("div", { className: (0, import_classnames9.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
3190
3281
|
title && /* @__PURE__ */ jsx46(Header3, { as: "h2", title }),
|
|
3191
3282
|
control === "filtered" ? /* @__PURE__ */ jsx46(FilteredDecisionList, __spreadValues({}, props)) : /* @__PURE__ */ jsx46(UnfilteredDecisionList, __spreadValues({}, props))
|
|
3192
3283
|
] });
|
|
@@ -3266,6 +3357,7 @@ var renderDecisionList = ({ options, control }) => {
|
|
|
3266
3357
|
var DecisionRenderer_default = DecisionRenderer;
|
|
3267
3358
|
|
|
3268
3359
|
// ../renderers/src/DividerRenderer.tsx
|
|
3360
|
+
var import_classnames10 = __toESM(require_classnames());
|
|
3269
3361
|
import { Divider } from "@transferwise/components";
|
|
3270
3362
|
import { jsx as jsx48 } from "react/jsx-runtime";
|
|
3271
3363
|
var mapControlToLevel = (control) => {
|
|
@@ -3280,7 +3372,18 @@ var mapControlToLevel = (control) => {
|
|
|
3280
3372
|
};
|
|
3281
3373
|
var DividerRenderer = {
|
|
3282
3374
|
canRenderType: "divider",
|
|
3283
|
-
render: ({ margin, control }) => /* @__PURE__ */ jsx48(
|
|
3375
|
+
render: ({ margin, control, tags }) => /* @__PURE__ */ jsx48(
|
|
3376
|
+
Divider,
|
|
3377
|
+
{
|
|
3378
|
+
className: (0, import_classnames10.default)(
|
|
3379
|
+
"m-t-0",
|
|
3380
|
+
"d-block",
|
|
3381
|
+
getMargin(margin),
|
|
3382
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
3383
|
+
),
|
|
3384
|
+
level: mapControlToLevel(control)
|
|
3385
|
+
}
|
|
3386
|
+
)
|
|
3284
3387
|
};
|
|
3285
3388
|
var DividerRenderer_default = DividerRenderer;
|
|
3286
3389
|
|
|
@@ -3324,7 +3427,9 @@ function ExternalConfirmationRendererComponent({
|
|
|
3324
3427
|
url,
|
|
3325
3428
|
visible,
|
|
3326
3429
|
open,
|
|
3327
|
-
onCancel
|
|
3430
|
+
onCancel,
|
|
3431
|
+
control,
|
|
3432
|
+
tags
|
|
3328
3433
|
}) {
|
|
3329
3434
|
const { formatMessage } = useIntl9();
|
|
3330
3435
|
useEffect9(() => {
|
|
@@ -3355,6 +3460,7 @@ function ExternalConfirmationRendererComponent({
|
|
|
3355
3460
|
/* @__PURE__ */ jsx49(Button5, { v2: true, block: true, className: "m-b-2", priority: "tertiary", size: "md", onClick: onCancel, children: formatMessage(external_confirmation_messages_default.cancel) })
|
|
3356
3461
|
] }) })
|
|
3357
3462
|
] }),
|
|
3463
|
+
className: controlAndTagsToCSSClass({ control, tags }),
|
|
3358
3464
|
onClose: onCancel
|
|
3359
3465
|
}
|
|
3360
3466
|
);
|
|
@@ -3369,10 +3475,11 @@ function getOrigin(url) {
|
|
|
3369
3475
|
var ExternalConfirmationRenderer_default = ExternalConfirmationRenderer;
|
|
3370
3476
|
|
|
3371
3477
|
// ../renderers/src/FormRenderer.tsx
|
|
3478
|
+
var import_classnames11 = __toESM(require_classnames());
|
|
3372
3479
|
import { jsx as jsx50 } from "react/jsx-runtime";
|
|
3373
3480
|
var FormRenderer = {
|
|
3374
3481
|
canRenderType: "form",
|
|
3375
|
-
render: ({ children, margin }) => /* @__PURE__ */ jsx50("div", { className: getMargin(margin), children })
|
|
3482
|
+
render: ({ children, margin, control, tags }) => /* @__PURE__ */ jsx50("div", { className: (0, import_classnames11.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children })
|
|
3376
3483
|
};
|
|
3377
3484
|
var FormRenderer_default = FormRenderer;
|
|
3378
3485
|
|
|
@@ -3381,7 +3488,7 @@ import { Header as Header4 } from "@transferwise/components";
|
|
|
3381
3488
|
import { jsx as jsx51, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
3382
3489
|
var FormSectionRenderer = {
|
|
3383
3490
|
canRenderType: "form-section",
|
|
3384
|
-
render: ({ title, description, children }) => /* @__PURE__ */ jsxs12("fieldset", { children: [
|
|
3491
|
+
render: ({ title, description, children, control, tags }) => /* @__PURE__ */ jsxs12("fieldset", { className: controlAndTagsToCSSClass({ control, tags }), children: [
|
|
3385
3492
|
title && /* @__PURE__ */ jsx51(
|
|
3386
3493
|
Header4,
|
|
3387
3494
|
{
|
|
@@ -3396,15 +3503,19 @@ var FormSectionRenderer = {
|
|
|
3396
3503
|
var FormSectionRenderer_default = FormSectionRenderer;
|
|
3397
3504
|
|
|
3398
3505
|
// ../renderers/src/HeadingRenderer.tsx
|
|
3506
|
+
var import_classnames12 = __toESM(require_classnames());
|
|
3399
3507
|
import { Display, Title } from "@transferwise/components";
|
|
3400
3508
|
import { jsx as jsx52 } from "react/jsx-runtime";
|
|
3401
3509
|
var HeadingRenderer = {
|
|
3402
3510
|
canRenderType: "heading",
|
|
3403
|
-
render:
|
|
3511
|
+
render: Heading
|
|
3404
3512
|
};
|
|
3405
3513
|
function Heading(props) {
|
|
3406
3514
|
const { text, size, align, margin, control } = props;
|
|
3407
|
-
const className =
|
|
3515
|
+
const className = (0, import_classnames12.default)(
|
|
3516
|
+
getTextAlignmentAndMargin({ align, margin }),
|
|
3517
|
+
controlAndTagsToCSSClass(props)
|
|
3518
|
+
);
|
|
3408
3519
|
return control === "display" ? /* @__PURE__ */ jsx52(DisplayHeading, { size, text, className }) : /* @__PURE__ */ jsx52(StandardHeading, { size, text, className });
|
|
3409
3520
|
}
|
|
3410
3521
|
function DisplayHeading({ size, text, className }) {
|
|
@@ -3440,6 +3551,7 @@ var getTitleTypeBySize = (size) => {
|
|
|
3440
3551
|
var HeadingRenderer_default = HeadingRenderer;
|
|
3441
3552
|
|
|
3442
3553
|
// ../renderers/src/ImageRenderer/UrlImage.tsx
|
|
3554
|
+
var import_classnames13 = __toESM(require_classnames());
|
|
3443
3555
|
import { Image } from "@transferwise/components";
|
|
3444
3556
|
import { useEffect as useEffect10, useState as useState10 } from "react";
|
|
3445
3557
|
|
|
@@ -3455,8 +3567,10 @@ import { jsx as jsx53 } from "react/jsx-runtime";
|
|
|
3455
3567
|
function UrlImage({
|
|
3456
3568
|
accessibilityDescription,
|
|
3457
3569
|
align,
|
|
3570
|
+
control,
|
|
3458
3571
|
margin,
|
|
3459
3572
|
size,
|
|
3573
|
+
tags,
|
|
3460
3574
|
uri,
|
|
3461
3575
|
httpClient
|
|
3462
3576
|
}) {
|
|
@@ -3466,16 +3580,28 @@ function UrlImage({
|
|
|
3466
3580
|
void getImageSource(httpClient, uri).then(setImageSource);
|
|
3467
3581
|
}
|
|
3468
3582
|
}, [uri, httpClient]);
|
|
3469
|
-
return /* @__PURE__ */ jsx53(
|
|
3470
|
-
|
|
3583
|
+
return /* @__PURE__ */ jsx53(
|
|
3584
|
+
"div",
|
|
3471
3585
|
{
|
|
3472
|
-
className:
|
|
3473
|
-
|
|
3474
|
-
|
|
3475
|
-
|
|
3476
|
-
|
|
3586
|
+
className: (0, import_classnames13.default)(
|
|
3587
|
+
"df-image",
|
|
3588
|
+
align,
|
|
3589
|
+
size || "md",
|
|
3590
|
+
getMargin(margin),
|
|
3591
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
3592
|
+
),
|
|
3593
|
+
children: /* @__PURE__ */ jsx53(
|
|
3594
|
+
Image,
|
|
3595
|
+
{
|
|
3596
|
+
className: "df-reserve-space",
|
|
3597
|
+
alt: accessibilityDescription != null ? accessibilityDescription : "",
|
|
3598
|
+
src: imageSource,
|
|
3599
|
+
stretch: true,
|
|
3600
|
+
shrink: true
|
|
3601
|
+
}
|
|
3602
|
+
)
|
|
3477
3603
|
}
|
|
3478
|
-
)
|
|
3604
|
+
);
|
|
3479
3605
|
}
|
|
3480
3606
|
var readImageBlobAsDataURL = async (imageBlob) => (
|
|
3481
3607
|
// we can safely assume the type of reader.result is string
|
|
@@ -3520,16 +3646,17 @@ var ImageRenderer = {
|
|
|
3520
3646
|
var ImageRenderer_default = ImageRenderer;
|
|
3521
3647
|
|
|
3522
3648
|
// ../renderers/src/InstructionsRenderer.tsx
|
|
3649
|
+
var import_classnames14 = __toESM(require_classnames());
|
|
3523
3650
|
import { Header as Header5, InstructionsList } from "@transferwise/components";
|
|
3524
3651
|
import { jsx as jsx55, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
3525
3652
|
var doContext = ["positive", "neutral", "proposition"];
|
|
3526
3653
|
var dontContext = ["warning", "negative"];
|
|
3527
3654
|
var InstructionsRenderer = {
|
|
3528
3655
|
canRenderType: "instructions",
|
|
3529
|
-
render: ({ items, margin, title }) => {
|
|
3656
|
+
render: ({ items, margin, title, control, tags }) => {
|
|
3530
3657
|
const dos = items.filter((item) => doContext.includes(item.context)).map(({ text }) => text);
|
|
3531
3658
|
const donts = items.filter((item) => dontContext.includes(item.context)).map(({ text }) => text);
|
|
3532
|
-
return /* @__PURE__ */ jsxs13("div", { className: getMargin(margin), children: [
|
|
3659
|
+
return /* @__PURE__ */ jsxs13("div", { className: (0, import_classnames14.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
3533
3660
|
title ? /* @__PURE__ */ jsx55(Header5, { title }) : null,
|
|
3534
3661
|
/* @__PURE__ */ jsx55(InstructionsList, { dos, donts })
|
|
3535
3662
|
] });
|
|
@@ -3589,6 +3716,8 @@ var IntegerInputRenderer = {
|
|
|
3589
3716
|
loadingState: props.fieldLoadingState,
|
|
3590
3717
|
help,
|
|
3591
3718
|
features: props.features,
|
|
3719
|
+
control: props.control,
|
|
3720
|
+
tags: props.tags,
|
|
3592
3721
|
children: /* @__PURE__ */ jsx56(InputGroup2, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx56(
|
|
3593
3722
|
Input2,
|
|
3594
3723
|
__spreadValues({
|
|
@@ -3612,6 +3741,7 @@ var IntegerInputRenderer = {
|
|
|
3612
3741
|
var IntegerInputRenderer_default = IntegerInputRenderer;
|
|
3613
3742
|
|
|
3614
3743
|
// ../renderers/src/ListRenderer.tsx
|
|
3744
|
+
var import_classnames15 = __toESM(require_classnames());
|
|
3615
3745
|
import { ListItem as ListItem8 } from "@transferwise/components";
|
|
3616
3746
|
|
|
3617
3747
|
// ../renderers/src/components/Header.tsx
|
|
@@ -3632,7 +3762,7 @@ var getHeaderAction = (callToAction) => {
|
|
|
3632
3762
|
import { jsx as jsx58, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
3633
3763
|
var ListRenderer = {
|
|
3634
3764
|
canRenderType: "list",
|
|
3635
|
-
render: ({ callToAction, control, margin, items, tags, title }) => /* @__PURE__ */ jsxs14("div", { className: getMargin(margin), children: [
|
|
3765
|
+
render: ({ callToAction, control, margin, items, tags, title }) => /* @__PURE__ */ jsxs14("div", { className: (0, import_classnames15.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
3636
3766
|
/* @__PURE__ */ jsx58(Header, { title, callToAction }),
|
|
3637
3767
|
items.map((item) => {
|
|
3638
3768
|
var _a, _b;
|
|
@@ -3670,15 +3800,23 @@ var ListRenderer = {
|
|
|
3670
3800
|
var ListRenderer_default = ListRenderer;
|
|
3671
3801
|
|
|
3672
3802
|
// ../renderers/src/LoadingIndicatorRenderer.tsx
|
|
3803
|
+
var import_classnames16 = __toESM(require_classnames());
|
|
3673
3804
|
import { Loader } from "@transferwise/components";
|
|
3674
3805
|
import { jsx as jsx59 } from "react/jsx-runtime";
|
|
3675
3806
|
var LoadingIndicatorRenderer = {
|
|
3676
3807
|
canRenderType: "loading-indicator",
|
|
3677
|
-
render: ({ margin,
|
|
3808
|
+
render: ({ size, margin, control, tags }) => /* @__PURE__ */ jsx59(
|
|
3678
3809
|
Loader,
|
|
3679
3810
|
{
|
|
3680
3811
|
size,
|
|
3681
|
-
classNames: {
|
|
3812
|
+
classNames: {
|
|
3813
|
+
"tw-loader": (0, import_classnames16.default)(
|
|
3814
|
+
"tw-loader",
|
|
3815
|
+
"m-x-auto",
|
|
3816
|
+
getMargin(margin),
|
|
3817
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
3818
|
+
)
|
|
3819
|
+
},
|
|
3682
3820
|
"data-testid": "loading-indicator"
|
|
3683
3821
|
}
|
|
3684
3822
|
)
|
|
@@ -3686,26 +3824,39 @@ var LoadingIndicatorRenderer = {
|
|
|
3686
3824
|
var LoadingIndicatorRenderer_default = LoadingIndicatorRenderer;
|
|
3687
3825
|
|
|
3688
3826
|
// ../renderers/src/MarkdownRenderer.tsx
|
|
3827
|
+
var import_classnames17 = __toESM(require_classnames());
|
|
3689
3828
|
import { Markdown as Markdown4 } from "@transferwise/components";
|
|
3690
|
-
var import_classnames4 = __toESM(require_classnames());
|
|
3691
3829
|
import { jsx as jsx60 } from "react/jsx-runtime";
|
|
3692
3830
|
var MarkdownRenderer = {
|
|
3693
3831
|
canRenderType: "markdown",
|
|
3694
|
-
render: ({ content, align, margin, size
|
|
3695
|
-
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
|
|
3702
|
-
|
|
3703
|
-
|
|
3704
|
-
|
|
3832
|
+
render: ({ content, align, margin, size, control, tags }) => {
|
|
3833
|
+
const isLarge = !["xs", "sm"].includes(size);
|
|
3834
|
+
return /* @__PURE__ */ jsx60(
|
|
3835
|
+
"div",
|
|
3836
|
+
{
|
|
3837
|
+
className: (0, import_classnames17.default)(
|
|
3838
|
+
getTextAlignmentAndMargin({ align, margin }),
|
|
3839
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
3840
|
+
),
|
|
3841
|
+
children: /* @__PURE__ */ jsx60(
|
|
3842
|
+
Markdown4,
|
|
3843
|
+
{
|
|
3844
|
+
className: (0, import_classnames17.default)("df-markdown", {
|
|
3845
|
+
"np-text-body-large": isLarge,
|
|
3846
|
+
"np-text-body-default": !isLarge
|
|
3847
|
+
}),
|
|
3848
|
+
config: { link: { target: "_blank" } },
|
|
3849
|
+
children: content
|
|
3850
|
+
}
|
|
3851
|
+
)
|
|
3852
|
+
}
|
|
3853
|
+
);
|
|
3854
|
+
}
|
|
3705
3855
|
};
|
|
3706
3856
|
var MarkdownRenderer_default = MarkdownRenderer;
|
|
3707
3857
|
|
|
3708
3858
|
// ../renderers/src/MediaRenderer.tsx
|
|
3859
|
+
var import_classnames18 = __toESM(require_classnames());
|
|
3709
3860
|
import { jsx as jsx61 } from "react/jsx-runtime";
|
|
3710
3861
|
var MediaRenderer = {
|
|
3711
3862
|
canRenderType: "media",
|
|
@@ -3725,9 +3876,22 @@ var AvatarMediaRendererComponent = ({
|
|
|
3725
3876
|
media,
|
|
3726
3877
|
align,
|
|
3727
3878
|
margin,
|
|
3728
|
-
size
|
|
3879
|
+
size,
|
|
3880
|
+
control,
|
|
3881
|
+
tags
|
|
3729
3882
|
}) => {
|
|
3730
|
-
return /* @__PURE__ */ jsx61(
|
|
3883
|
+
return /* @__PURE__ */ jsx61(
|
|
3884
|
+
"div",
|
|
3885
|
+
{
|
|
3886
|
+
className: (0, import_classnames18.default)(
|
|
3887
|
+
"df-media-layout-avatar",
|
|
3888
|
+
align,
|
|
3889
|
+
getMargin(margin),
|
|
3890
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
3891
|
+
),
|
|
3892
|
+
children: /* @__PURE__ */ jsx61(Media, { media, size: mapAvatarMediaSize(size) })
|
|
3893
|
+
}
|
|
3894
|
+
);
|
|
3731
3895
|
};
|
|
3732
3896
|
var ImageMediaRendererComponent = (_a) => {
|
|
3733
3897
|
var _b = _a, {
|
|
@@ -3753,6 +3917,7 @@ var mapAvatarMediaSize = (size) => {
|
|
|
3753
3917
|
};
|
|
3754
3918
|
|
|
3755
3919
|
// ../renderers/src/ModalLayoutRenderer.tsx
|
|
3920
|
+
var import_classnames19 = __toESM(require_classnames());
|
|
3756
3921
|
import { Button as Button6, Modal as Modal2 } from "@transferwise/components";
|
|
3757
3922
|
import { useState as useState11 } from "react";
|
|
3758
3923
|
import { jsx as jsx62, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
@@ -3761,10 +3926,10 @@ var ModalLayoutRenderer = {
|
|
|
3761
3926
|
render: (props) => /* @__PURE__ */ jsx62(DFModal, __spreadValues({}, props))
|
|
3762
3927
|
};
|
|
3763
3928
|
var ModalLayoutRenderer_default = ModalLayoutRenderer;
|
|
3764
|
-
function DFModal({ content, margin, trigger }) {
|
|
3929
|
+
function DFModal({ content, margin, trigger, control, tags }) {
|
|
3765
3930
|
const [visible, setVisible] = useState11(false);
|
|
3766
3931
|
const { children, title } = content;
|
|
3767
|
-
return /* @__PURE__ */ jsxs15("div", { className: getMargin(margin), children: [
|
|
3932
|
+
return /* @__PURE__ */ jsxs15("div", { className: (0, import_classnames19.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
3768
3933
|
/* @__PURE__ */ jsx62(Button6, { v2: true, priority: "tertiary", block: true, onClick: () => setVisible(true), children: trigger.title }),
|
|
3769
3934
|
/* @__PURE__ */ jsx62(
|
|
3770
3935
|
Modal2,
|
|
@@ -3785,8 +3950,17 @@ import { Modal as Modal3 } from "@transferwise/components";
|
|
|
3785
3950
|
import { jsx as jsx63 } from "react/jsx-runtime";
|
|
3786
3951
|
var ModalRenderer = {
|
|
3787
3952
|
canRenderType: "modal",
|
|
3788
|
-
render: ({ title, children, open, onClose }) => {
|
|
3789
|
-
return /* @__PURE__ */ jsx63(
|
|
3953
|
+
render: ({ title, children, open, onClose, control, tags }) => {
|
|
3954
|
+
return /* @__PURE__ */ jsx63(
|
|
3955
|
+
Modal3,
|
|
3956
|
+
{
|
|
3957
|
+
open,
|
|
3958
|
+
title,
|
|
3959
|
+
body: children,
|
|
3960
|
+
className: controlAndTagsToCSSClass({ control, tags }),
|
|
3961
|
+
onClose
|
|
3962
|
+
}
|
|
3963
|
+
);
|
|
3790
3964
|
}
|
|
3791
3965
|
};
|
|
3792
3966
|
|
|
@@ -3812,6 +3986,9 @@ function MoneyInputRendererComponent(props) {
|
|
|
3812
3986
|
selectedCurrencyIndex,
|
|
3813
3987
|
placeholder,
|
|
3814
3988
|
currencies,
|
|
3989
|
+
features,
|
|
3990
|
+
control,
|
|
3991
|
+
tags,
|
|
3815
3992
|
onAmountChange,
|
|
3816
3993
|
onCurrencyChange
|
|
3817
3994
|
} = props;
|
|
@@ -3829,7 +4006,9 @@ function MoneyInputRendererComponent(props) {
|
|
|
3829
4006
|
description,
|
|
3830
4007
|
validation: validationState,
|
|
3831
4008
|
help,
|
|
3832
|
-
features
|
|
4009
|
+
features,
|
|
4010
|
+
control,
|
|
4011
|
+
tags,
|
|
3833
4012
|
children: /* @__PURE__ */ jsx64(
|
|
3834
4013
|
MoneyInput,
|
|
3835
4014
|
{
|
|
@@ -3908,12 +4087,13 @@ function InlineComponent(props) {
|
|
|
3908
4087
|
id,
|
|
3909
4088
|
description,
|
|
3910
4089
|
disabled,
|
|
4090
|
+
control,
|
|
3911
4091
|
features,
|
|
3912
4092
|
help,
|
|
3913
4093
|
options,
|
|
3914
4094
|
selectedIndices,
|
|
3915
|
-
tags,
|
|
3916
4095
|
title,
|
|
4096
|
+
tags,
|
|
3917
4097
|
validationState,
|
|
3918
4098
|
onSelect
|
|
3919
4099
|
} = props;
|
|
@@ -3945,6 +4125,8 @@ function InlineComponent(props) {
|
|
|
3945
4125
|
description,
|
|
3946
4126
|
validation: validationState,
|
|
3947
4127
|
features,
|
|
4128
|
+
control,
|
|
4129
|
+
tags,
|
|
3948
4130
|
children: filteredOptions.map((option) => {
|
|
3949
4131
|
var _a;
|
|
3950
4132
|
const {
|
|
@@ -4021,6 +4203,8 @@ function DefaultComponent(props) {
|
|
|
4021
4203
|
selectedIndices,
|
|
4022
4204
|
title,
|
|
4023
4205
|
validationState,
|
|
4206
|
+
control,
|
|
4207
|
+
tags,
|
|
4024
4208
|
onSelect
|
|
4025
4209
|
} = props;
|
|
4026
4210
|
const mergedIndices = stagedIndices != null ? stagedIndices : selectedIndices;
|
|
@@ -4061,6 +4245,8 @@ function DefaultComponent(props) {
|
|
|
4061
4245
|
description,
|
|
4062
4246
|
validation: validationState,
|
|
4063
4247
|
features,
|
|
4248
|
+
control,
|
|
4249
|
+
tags,
|
|
4064
4250
|
children: /* @__PURE__ */ jsx66(
|
|
4065
4251
|
SelectInput,
|
|
4066
4252
|
__spreadValues({
|
|
@@ -4113,6 +4299,8 @@ function InlineCheckboxComponent(props) {
|
|
|
4113
4299
|
selectedIndices,
|
|
4114
4300
|
title,
|
|
4115
4301
|
validationState,
|
|
4302
|
+
control,
|
|
4303
|
+
tags,
|
|
4116
4304
|
onSelect
|
|
4117
4305
|
} = props;
|
|
4118
4306
|
return /* @__PURE__ */ jsx67(
|
|
@@ -4124,6 +4312,8 @@ function InlineCheckboxComponent(props) {
|
|
|
4124
4312
|
description,
|
|
4125
4313
|
validation: validationState,
|
|
4126
4314
|
features,
|
|
4315
|
+
control,
|
|
4316
|
+
tags,
|
|
4127
4317
|
children: options.map((option, index) => {
|
|
4128
4318
|
var _a;
|
|
4129
4319
|
const {
|
|
@@ -4170,8 +4360,8 @@ var MultiSelectInputRenderer = {
|
|
|
4170
4360
|
import { Status, UploadInput } from "@transferwise/components";
|
|
4171
4361
|
|
|
4172
4362
|
// ../renderers/src/components/UploadFieldInput.tsx
|
|
4173
|
-
var import_classnames5 = __toESM(require_classnames());
|
|
4174
4363
|
import { InlineAlert as InlineAlert2 } from "@transferwise/components";
|
|
4364
|
+
var import_classnames20 = __toESM(require_classnames());
|
|
4175
4365
|
import { jsx as jsx69, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
4176
4366
|
function UploadFieldInput({
|
|
4177
4367
|
id,
|
|
@@ -4180,7 +4370,9 @@ function UploadFieldInput({
|
|
|
4180
4370
|
description,
|
|
4181
4371
|
help,
|
|
4182
4372
|
validation,
|
|
4183
|
-
features
|
|
4373
|
+
features,
|
|
4374
|
+
control,
|
|
4375
|
+
tags
|
|
4184
4376
|
}) {
|
|
4185
4377
|
const labelContent = label && help ? /* @__PURE__ */ jsx69(LabelContentWithHelp, { text: label, help }) : label;
|
|
4186
4378
|
const descriptionId = description ? `${id}-description` : void 0;
|
|
@@ -4189,9 +4381,13 @@ function UploadFieldInput({
|
|
|
4189
4381
|
"div",
|
|
4190
4382
|
{
|
|
4191
4383
|
ref,
|
|
4192
|
-
className: (0,
|
|
4193
|
-
"
|
|
4194
|
-
|
|
4384
|
+
className: (0, import_classnames20.default)(
|
|
4385
|
+
"form-group d-block",
|
|
4386
|
+
{
|
|
4387
|
+
"has-error": (validation == null ? void 0 : validation.status) === "invalid"
|
|
4388
|
+
},
|
|
4389
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
4390
|
+
),
|
|
4195
4391
|
children: [
|
|
4196
4392
|
/* @__PURE__ */ jsx69("label", { htmlFor: id, className: "control-label", children: labelContent }),
|
|
4197
4393
|
children,
|
|
@@ -4248,7 +4444,9 @@ var MultiUploadInputRenderer = {
|
|
|
4248
4444
|
validationState,
|
|
4249
4445
|
value,
|
|
4250
4446
|
onInsertFile,
|
|
4251
|
-
onRemoveFile
|
|
4447
|
+
onRemoveFile,
|
|
4448
|
+
control,
|
|
4449
|
+
tags
|
|
4252
4450
|
} = props;
|
|
4253
4451
|
const onUploadFile = async (formData) => {
|
|
4254
4452
|
const file = formData.get("file");
|
|
@@ -4265,6 +4463,8 @@ var MultiUploadInputRenderer = {
|
|
|
4265
4463
|
validation: validationState,
|
|
4266
4464
|
help,
|
|
4267
4465
|
features,
|
|
4466
|
+
control,
|
|
4467
|
+
tags,
|
|
4268
4468
|
children: /* @__PURE__ */ jsx70(
|
|
4269
4469
|
UploadInput,
|
|
4270
4470
|
{
|
|
@@ -4319,6 +4519,8 @@ var NumberInputRenderer = {
|
|
|
4319
4519
|
loadingState: props.fieldLoadingState,
|
|
4320
4520
|
help,
|
|
4321
4521
|
features: props.features,
|
|
4522
|
+
control: props.control,
|
|
4523
|
+
tags: props.tags,
|
|
4322
4524
|
children: /* @__PURE__ */ jsx71(InputGroup3, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx71(
|
|
4323
4525
|
Input3,
|
|
4324
4526
|
__spreadValues({
|
|
@@ -4340,6 +4542,8 @@ var NumberInputRenderer = {
|
|
|
4340
4542
|
var NumberInputRenderer_default = NumberInputRenderer;
|
|
4341
4543
|
|
|
4342
4544
|
// ../renderers/src/ParagraphRenderer.tsx
|
|
4545
|
+
var import_classnames21 = __toESM(require_classnames());
|
|
4546
|
+
import { Button as Button7, Input as Input4 } from "@transferwise/components";
|
|
4343
4547
|
import { useIntl as useIntl13 } from "react-intl";
|
|
4344
4548
|
|
|
4345
4549
|
// ../renderers/src/hooks/useSnackBarIfAvailable.ts
|
|
@@ -4351,10 +4555,6 @@ function useSnackBarIfAvailable() {
|
|
|
4351
4555
|
};
|
|
4352
4556
|
}
|
|
4353
4557
|
|
|
4354
|
-
// ../renderers/src/ParagraphRenderer.tsx
|
|
4355
|
-
var import_classnames6 = __toESM(require_classnames());
|
|
4356
|
-
import { Button as Button7, Input as Input4 } from "@transferwise/components";
|
|
4357
|
-
|
|
4358
4558
|
// ../renderers/src/messages/paragraph.messages.ts
|
|
4359
4559
|
import { defineMessages as defineMessages10 } from "react-intl";
|
|
4360
4560
|
var paragraph_messages_default = defineMessages10({
|
|
@@ -4376,8 +4576,12 @@ var ParagraphRenderer = {
|
|
|
4376
4576
|
canRenderType: "paragraph",
|
|
4377
4577
|
render: (props) => /* @__PURE__ */ jsx72(Paragraph, __spreadValues({}, props))
|
|
4378
4578
|
};
|
|
4379
|
-
function Paragraph(
|
|
4380
|
-
const
|
|
4579
|
+
function Paragraph(props) {
|
|
4580
|
+
const { align, control, margin, size, text } = props;
|
|
4581
|
+
const className = (0, import_classnames21.default)(
|
|
4582
|
+
getTextAlignmentAndMargin({ align, margin }),
|
|
4583
|
+
controlAndTagsToCSSClass(props)
|
|
4584
|
+
);
|
|
4381
4585
|
return control === "copyable" ? /* @__PURE__ */ jsx72(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx72(
|
|
4382
4586
|
"p",
|
|
4383
4587
|
{
|
|
@@ -4405,7 +4609,7 @@ function CopyableParagraph({
|
|
|
4405
4609
|
type: "text",
|
|
4406
4610
|
value: text,
|
|
4407
4611
|
readOnly: true,
|
|
4408
|
-
className: (0,
|
|
4612
|
+
className: (0, import_classnames21.default)("text-ellipsis", inputAlignmentClasses)
|
|
4409
4613
|
}
|
|
4410
4614
|
),
|
|
4411
4615
|
/* @__PURE__ */ jsx72(Button7, { v2: true, block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
|
|
@@ -4414,16 +4618,17 @@ function CopyableParagraph({
|
|
|
4414
4618
|
var ParagraphRenderer_default = ParagraphRenderer;
|
|
4415
4619
|
|
|
4416
4620
|
// ../renderers/src/ProgressRenderer.tsx
|
|
4621
|
+
var import_classnames22 = __toESM(require_classnames());
|
|
4417
4622
|
import { ProgressBar } from "@transferwise/components";
|
|
4418
4623
|
import { jsx as jsx73 } from "react/jsx-runtime";
|
|
4419
4624
|
var ProgressRenderer = {
|
|
4420
4625
|
canRenderType: "progress",
|
|
4421
|
-
render: ({ uid, title, help, progress, progressText, margin, description }) => {
|
|
4626
|
+
render: ({ uid, title, help, progress, progressText, margin, description, control, tags }) => {
|
|
4422
4627
|
return /* @__PURE__ */ jsx73(
|
|
4423
4628
|
ProgressBar,
|
|
4424
4629
|
{
|
|
4425
4630
|
id: uid,
|
|
4426
|
-
className: getMargin(margin),
|
|
4631
|
+
className: (0, import_classnames22.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })),
|
|
4427
4632
|
title: title && help ? /* @__PURE__ */ jsx73(LabelContentWithHelp, { text: title, help }) : title,
|
|
4428
4633
|
description,
|
|
4429
4634
|
progress: {
|
|
@@ -4437,7 +4642,7 @@ var ProgressRenderer = {
|
|
|
4437
4642
|
};
|
|
4438
4643
|
|
|
4439
4644
|
// ../renderers/src/RepeatableRenderer.tsx
|
|
4440
|
-
var
|
|
4645
|
+
var import_classnames23 = __toESM(require_classnames());
|
|
4441
4646
|
import { Button as Button8, Header as Header6, InlineAlert as InlineAlert3, Modal as Modal4, NavigationOption } from "@transferwise/components";
|
|
4442
4647
|
import { Plus } from "@transferwise/icons";
|
|
4443
4648
|
import { useState as useState14 } from "react";
|
|
@@ -4514,13 +4719,13 @@ function Repeatable(props) {
|
|
|
4514
4719
|
setOpenModalType(null);
|
|
4515
4720
|
};
|
|
4516
4721
|
return /* @__PURE__ */ jsxs19(Fragment9, { children: [
|
|
4517
|
-
/* @__PURE__ */ jsxs19("div", { ref, children: [
|
|
4722
|
+
/* @__PURE__ */ jsxs19("div", { ref, className: controlAndTagsToCSSClass(props), children: [
|
|
4518
4723
|
title && /* @__PURE__ */ jsx74(Header6, { title }),
|
|
4519
4724
|
description && /* @__PURE__ */ jsx74("p", { children: description }),
|
|
4520
4725
|
/* @__PURE__ */ jsxs19(
|
|
4521
4726
|
"div",
|
|
4522
4727
|
{
|
|
4523
|
-
className: (0,
|
|
4728
|
+
className: (0, import_classnames23.default)("form-group", {
|
|
4524
4729
|
"has-error": (validationState == null ? void 0 : validationState.status) === "invalid"
|
|
4525
4730
|
}),
|
|
4526
4731
|
children: [
|
|
@@ -4585,13 +4790,14 @@ function ItemSummaryOption({
|
|
|
4585
4790
|
var RepeatableRenderer_default = RepeatableRenderer;
|
|
4586
4791
|
|
|
4587
4792
|
// ../renderers/src/ReviewLegacyRenderer.tsx
|
|
4793
|
+
var import_classnames24 = __toESM(require_classnames());
|
|
4588
4794
|
import { DefinitionList } from "@transferwise/components";
|
|
4589
4795
|
import { Fragment as Fragment10, jsx as jsx75, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
4590
4796
|
var ReviewRenderer = {
|
|
4591
4797
|
canRenderType: "review",
|
|
4592
|
-
render: ({ callToAction, control, fields, margin, title, trackEvent }) => {
|
|
4798
|
+
render: ({ callToAction, control, fields, margin, title, trackEvent, tags }) => {
|
|
4593
4799
|
const orientation = mapControlToDefinitionListLayout(control);
|
|
4594
|
-
return /* @__PURE__ */ jsxs20("div", { className: getMargin(margin), children: [
|
|
4800
|
+
return /* @__PURE__ */ jsxs20("div", { className: (0, import_classnames24.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
4595
4801
|
/* @__PURE__ */ jsx75(Header, { title, callToAction }),
|
|
4596
4802
|
/* @__PURE__ */ jsx75("div", { className: margin, children: /* @__PURE__ */ jsx75(
|
|
4597
4803
|
DefinitionList,
|
|
@@ -4641,6 +4847,7 @@ var getFieldLabel = (label, help, onClick) => {
|
|
|
4641
4847
|
};
|
|
4642
4848
|
|
|
4643
4849
|
// ../renderers/src/ReviewRenderer.tsx
|
|
4850
|
+
var import_classnames25 = __toESM(require_classnames());
|
|
4644
4851
|
import { ListItem as ListItem10, Markdown as Markdown5, Popover } from "@transferwise/components";
|
|
4645
4852
|
import { QuestionMarkCircle } from "@transferwise/icons";
|
|
4646
4853
|
import { useIntl as useIntl15 } from "react-intl";
|
|
@@ -4666,7 +4873,7 @@ var Review = ({
|
|
|
4666
4873
|
trackEvent
|
|
4667
4874
|
}) => {
|
|
4668
4875
|
const intl = useIntl15();
|
|
4669
|
-
return /* @__PURE__ */ jsxs21("div", { className: getMargin(margin), children: [
|
|
4876
|
+
return /* @__PURE__ */ jsxs21("div", { className: (0, import_classnames25.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
4670
4877
|
/* @__PURE__ */ jsx76(Header, { title, callToAction }),
|
|
4671
4878
|
fields.map((field) => {
|
|
4672
4879
|
var _a, _b, _c;
|
|
@@ -4745,10 +4952,12 @@ function BlockSearchRendererComponent({
|
|
|
4745
4952
|
id,
|
|
4746
4953
|
hint,
|
|
4747
4954
|
isLoading,
|
|
4955
|
+
control,
|
|
4748
4956
|
features,
|
|
4749
4957
|
margin,
|
|
4750
4958
|
query,
|
|
4751
4959
|
state,
|
|
4960
|
+
tags,
|
|
4752
4961
|
title,
|
|
4753
4962
|
trackEvent,
|
|
4754
4963
|
onChange
|
|
@@ -4765,6 +4974,8 @@ function BlockSearchRendererComponent({
|
|
|
4765
4974
|
help: "",
|
|
4766
4975
|
label: title,
|
|
4767
4976
|
features,
|
|
4977
|
+
control,
|
|
4978
|
+
tags,
|
|
4768
4979
|
children: /* @__PURE__ */ jsx78(InputGroup4, { addonStart: { content: /* @__PURE__ */ jsx78(Search2, { size: 24 }) }, children: /* @__PURE__ */ jsx78(
|
|
4769
4980
|
Input5,
|
|
4770
4981
|
{
|
|
@@ -4853,9 +5064,11 @@ function InlineSearchRenderer({
|
|
|
4853
5064
|
id,
|
|
4854
5065
|
hint,
|
|
4855
5066
|
isLoading,
|
|
5067
|
+
control,
|
|
4856
5068
|
features,
|
|
4857
5069
|
margin,
|
|
4858
5070
|
state,
|
|
5071
|
+
tags,
|
|
4859
5072
|
title,
|
|
4860
5073
|
onChange,
|
|
4861
5074
|
trackEvent
|
|
@@ -4871,6 +5084,8 @@ function InlineSearchRenderer({
|
|
|
4871
5084
|
help: "",
|
|
4872
5085
|
label: title,
|
|
4873
5086
|
features,
|
|
5087
|
+
control,
|
|
5088
|
+
tags,
|
|
4874
5089
|
children: /* @__PURE__ */ jsx79(
|
|
4875
5090
|
Typeahead,
|
|
4876
5091
|
{
|
|
@@ -4946,6 +5161,7 @@ var SearchRenderer = {
|
|
|
4946
5161
|
var SearchRenderer_default = SearchRenderer;
|
|
4947
5162
|
|
|
4948
5163
|
// ../renderers/src/SectionRenderer.tsx
|
|
5164
|
+
var import_classnames26 = __toESM(require_classnames());
|
|
4949
5165
|
import { Header as Header7 } from "@transferwise/components";
|
|
4950
5166
|
|
|
4951
5167
|
// ../renderers/src/utils/getHeaderAction.tsx
|
|
@@ -4973,11 +5189,17 @@ var getHeaderAction2 = (callToAction) => {
|
|
|
4973
5189
|
import { jsx as jsx81, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
4974
5190
|
var SectionRenderer = {
|
|
4975
5191
|
canRenderType: "section",
|
|
4976
|
-
render: ({ children, callToAction, margin, title }) => {
|
|
4977
|
-
return /* @__PURE__ */ jsxs24(
|
|
4978
|
-
|
|
4979
|
-
|
|
4980
|
-
|
|
5192
|
+
render: ({ children, callToAction, margin, title, control, tags }) => {
|
|
5193
|
+
return /* @__PURE__ */ jsxs24(
|
|
5194
|
+
"section",
|
|
5195
|
+
{
|
|
5196
|
+
className: (0, import_classnames26.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })),
|
|
5197
|
+
children: [
|
|
5198
|
+
(title || callToAction) && /* @__PURE__ */ jsx81(Header7, { title: title != null ? title : "", action: getHeaderAction2(callToAction) }),
|
|
5199
|
+
children
|
|
5200
|
+
]
|
|
5201
|
+
}
|
|
5202
|
+
);
|
|
4981
5203
|
}
|
|
4982
5204
|
};
|
|
4983
5205
|
var SectionRenderer_default = SectionRenderer;
|
|
@@ -4997,6 +5219,8 @@ function RadioInputRendererComponent(props) {
|
|
|
4997
5219
|
options,
|
|
4998
5220
|
selectedIndex,
|
|
4999
5221
|
validationState,
|
|
5222
|
+
control,
|
|
5223
|
+
tags,
|
|
5000
5224
|
onSelect
|
|
5001
5225
|
} = props;
|
|
5002
5226
|
return /* @__PURE__ */ jsxs25(Fragment12, { children: [
|
|
@@ -5009,6 +5233,8 @@ function RadioInputRendererComponent(props) {
|
|
|
5009
5233
|
description,
|
|
5010
5234
|
validation: validationState,
|
|
5011
5235
|
features,
|
|
5236
|
+
control,
|
|
5237
|
+
tags,
|
|
5012
5238
|
children: /* @__PURE__ */ jsx82("span", { children: /* @__PURE__ */ jsx82(
|
|
5013
5239
|
RadioGroup,
|
|
5014
5240
|
{
|
|
@@ -5047,6 +5273,8 @@ function TabInputRendererComponent(props) {
|
|
|
5047
5273
|
options,
|
|
5048
5274
|
selectedIndex,
|
|
5049
5275
|
validationState,
|
|
5276
|
+
control,
|
|
5277
|
+
tags,
|
|
5050
5278
|
onSelect
|
|
5051
5279
|
} = props;
|
|
5052
5280
|
useEffect12(() => {
|
|
@@ -5064,6 +5292,8 @@ function TabInputRendererComponent(props) {
|
|
|
5064
5292
|
description,
|
|
5065
5293
|
validation: validationState,
|
|
5066
5294
|
features,
|
|
5295
|
+
control,
|
|
5296
|
+
tags,
|
|
5067
5297
|
children: /* @__PURE__ */ jsx83(
|
|
5068
5298
|
Tabs,
|
|
5069
5299
|
{
|
|
@@ -5104,6 +5334,8 @@ function SelectInputRendererComponent(props) {
|
|
|
5104
5334
|
required,
|
|
5105
5335
|
selectedIndex,
|
|
5106
5336
|
validationState,
|
|
5337
|
+
control,
|
|
5338
|
+
tags,
|
|
5107
5339
|
onSelect
|
|
5108
5340
|
} = props;
|
|
5109
5341
|
const items = options.map(
|
|
@@ -5144,6 +5376,8 @@ function SelectInputRendererComponent(props) {
|
|
|
5144
5376
|
description,
|
|
5145
5377
|
validation: validationState,
|
|
5146
5378
|
features,
|
|
5379
|
+
control,
|
|
5380
|
+
tags,
|
|
5147
5381
|
children: /* @__PURE__ */ jsx84(
|
|
5148
5382
|
SelectInput2,
|
|
5149
5383
|
__spreadValues({
|
|
@@ -5179,6 +5413,8 @@ function SegmentedInputRendererComponent(props) {
|
|
|
5179
5413
|
options,
|
|
5180
5414
|
selectedIndex,
|
|
5181
5415
|
validationState,
|
|
5416
|
+
control,
|
|
5417
|
+
tags,
|
|
5182
5418
|
onSelect
|
|
5183
5419
|
} = props;
|
|
5184
5420
|
useEffect13(() => {
|
|
@@ -5196,6 +5432,8 @@ function SegmentedInputRendererComponent(props) {
|
|
|
5196
5432
|
description,
|
|
5197
5433
|
validation: validationState,
|
|
5198
5434
|
features,
|
|
5435
|
+
control,
|
|
5436
|
+
tags,
|
|
5199
5437
|
children: /* @__PURE__ */ jsx85(
|
|
5200
5438
|
SegmentedControl,
|
|
5201
5439
|
{
|
|
@@ -5236,7 +5474,7 @@ function RadioItemRendererComponent(props) {
|
|
|
5236
5474
|
onSelect
|
|
5237
5475
|
} = props;
|
|
5238
5476
|
const { ref } = useScrollToError(validationState, features);
|
|
5239
|
-
return /* @__PURE__ */ jsxs29("div", { ref, children: [
|
|
5477
|
+
return /* @__PURE__ */ jsxs29("div", { ref, className: controlAndTagsToCSSClass(props), children: [
|
|
5240
5478
|
rootTitle && /* @__PURE__ */ jsx86(
|
|
5241
5479
|
Header8,
|
|
5242
5480
|
{
|
|
@@ -5295,11 +5533,12 @@ var SelectInputRenderer = {
|
|
|
5295
5533
|
var SelectInputRenderer_default = SelectInputRenderer;
|
|
5296
5534
|
|
|
5297
5535
|
// ../renderers/src/StatusListRenderer.tsx
|
|
5536
|
+
var import_classnames27 = __toESM(require_classnames());
|
|
5298
5537
|
import { AvatarView as AvatarView4, Header as Header9, ListItem as ListItem13 } from "@transferwise/components";
|
|
5299
5538
|
import { jsx as jsx88, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
5300
5539
|
var StatusListRenderer = {
|
|
5301
5540
|
canRenderType: "status-list",
|
|
5302
|
-
render: ({ margin, items, title }) => /* @__PURE__ */ jsxs30("div", { className: getMargin(margin), children: [
|
|
5541
|
+
render: ({ margin, items, title, control, tags }) => /* @__PURE__ */ jsxs30("div", { className: (0, import_classnames27.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
5303
5542
|
title ? /* @__PURE__ */ jsx88(Header9, { title }) : null,
|
|
5304
5543
|
items.map((item) => {
|
|
5305
5544
|
const { callToAction, description, title: itemTitle } = item;
|
|
@@ -5347,6 +5586,9 @@ var mapStatus = (status) => {
|
|
|
5347
5586
|
};
|
|
5348
5587
|
var StatusListRenderer_default = StatusListRenderer;
|
|
5349
5588
|
|
|
5589
|
+
// ../renderers/src/step/SplashCelebrationStepRenderer.tsx
|
|
5590
|
+
var import_classnames28 = __toESM(require_classnames());
|
|
5591
|
+
|
|
5350
5592
|
// ../renderers/src/utils/useCustomTheme.ts
|
|
5351
5593
|
import { useTheme } from "@wise/components-theming";
|
|
5352
5594
|
import { useEffect as useEffect14, useMemo } from "react";
|
|
@@ -5490,17 +5732,24 @@ var SplashCelebrationStepRenderer = {
|
|
|
5490
5732
|
render: SplashCelebrationStepRendererComponent
|
|
5491
5733
|
};
|
|
5492
5734
|
function SplashCelebrationStepRendererComponent(props) {
|
|
5493
|
-
const { back, title, description, toolbar, children, footer, tags, trackEvent } = props;
|
|
5735
|
+
const { back, title, description, toolbar, children, footer, control, tags, trackEvent } = props;
|
|
5494
5736
|
useCustomTheme("forest-green", trackEvent);
|
|
5495
|
-
return /* @__PURE__ */ jsxs35(
|
|
5496
|
-
|
|
5497
|
-
|
|
5498
|
-
|
|
5499
|
-
|
|
5500
|
-
|
|
5737
|
+
return /* @__PURE__ */ jsxs35(
|
|
5738
|
+
"div",
|
|
5739
|
+
{
|
|
5740
|
+
className: (0, import_classnames28.default)("splash-screen", "m-t-5", controlAndTagsToCSSClass({ control, tags })),
|
|
5741
|
+
children: [
|
|
5742
|
+
/* @__PURE__ */ jsx93(TopBar, { back, toolbar, tags }),
|
|
5743
|
+
title || description ? /* @__PURE__ */ jsx93("div", { className: "m-b-4", children: /* @__PURE__ */ jsx93(StepHeader, { title, description, tags }) }) : void 0,
|
|
5744
|
+
children,
|
|
5745
|
+
/* @__PURE__ */ jsx93(StepFooter, { footer, tags })
|
|
5746
|
+
]
|
|
5747
|
+
}
|
|
5748
|
+
);
|
|
5501
5749
|
}
|
|
5502
5750
|
|
|
5503
5751
|
// ../renderers/src/step/SplashStepRenderer.tsx
|
|
5752
|
+
var import_classnames29 = __toESM(require_classnames());
|
|
5504
5753
|
import { jsx as jsx94, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
5505
5754
|
var SplashStepRenderer = {
|
|
5506
5755
|
canRenderType: "step",
|
|
@@ -5508,13 +5757,19 @@ var SplashStepRenderer = {
|
|
|
5508
5757
|
render: SplashStepRendererComponent
|
|
5509
5758
|
};
|
|
5510
5759
|
function SplashStepRendererComponent(props) {
|
|
5511
|
-
const { back, title, description, toolbar, children, footer, tags } = props;
|
|
5512
|
-
return /* @__PURE__ */ jsxs36(
|
|
5513
|
-
|
|
5514
|
-
|
|
5515
|
-
|
|
5516
|
-
|
|
5517
|
-
|
|
5760
|
+
const { back, title, description, toolbar, children, footer, control, tags } = props;
|
|
5761
|
+
return /* @__PURE__ */ jsxs36(
|
|
5762
|
+
"div",
|
|
5763
|
+
{
|
|
5764
|
+
className: (0, import_classnames29.default)("splash-screen", "m-t-5", controlAndTagsToCSSClass({ control, tags })),
|
|
5765
|
+
children: [
|
|
5766
|
+
/* @__PURE__ */ jsx94(TopBar, { back, toolbar, tags }),
|
|
5767
|
+
title || description ? /* @__PURE__ */ jsx94("div", { className: "m-b-4", children: /* @__PURE__ */ jsx94(StepHeader, { title, description, tags }) }) : void 0,
|
|
5768
|
+
children,
|
|
5769
|
+
/* @__PURE__ */ jsx94(StepFooter, { footer, tags })
|
|
5770
|
+
]
|
|
5771
|
+
}
|
|
5772
|
+
);
|
|
5518
5773
|
}
|
|
5519
5774
|
|
|
5520
5775
|
// ../renderers/src/step/StepRenderer.tsx
|
|
@@ -5525,8 +5780,8 @@ var StepRenderer = {
|
|
|
5525
5780
|
render: StepRendererComponent
|
|
5526
5781
|
};
|
|
5527
5782
|
function StepRendererComponent(props) {
|
|
5528
|
-
const { back, description, error, title, children, toolbar, footer, tags } = props;
|
|
5529
|
-
return /* @__PURE__ */ jsxs37("div", { children: [
|
|
5783
|
+
const { back, description, error, title, children, toolbar, footer, control, tags } = props;
|
|
5784
|
+
return /* @__PURE__ */ jsxs37("div", { className: controlAndTagsToCSSClass({ control, tags }), children: [
|
|
5530
5785
|
/* @__PURE__ */ jsx95(TopBar, { back, toolbar, tags }),
|
|
5531
5786
|
title || description ? /* @__PURE__ */ jsx95("div", { className: "m-b-4", children: /* @__PURE__ */ jsx95(StepHeader, { title, description, tags }) }) : void 0,
|
|
5532
5787
|
error ? /* @__PURE__ */ jsx95(Alert, { type: "negative", className: "m-b-2", message: error }) : null,
|
|
@@ -5536,6 +5791,7 @@ function StepRendererComponent(props) {
|
|
|
5536
5791
|
}
|
|
5537
5792
|
|
|
5538
5793
|
// ../renderers/src/TabsRenderer.tsx
|
|
5794
|
+
var import_classnames30 = __toESM(require_classnames());
|
|
5539
5795
|
import { Chips as Chips2, SegmentedControl as SegmentedControl2, Tabs as Tabs2 } from "@transferwise/components";
|
|
5540
5796
|
import { useState as useState17 } from "react";
|
|
5541
5797
|
import { jsx as jsx96, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
@@ -5555,9 +5811,9 @@ var TabsRenderer = {
|
|
|
5555
5811
|
}
|
|
5556
5812
|
}
|
|
5557
5813
|
};
|
|
5558
|
-
function TabsRendererComponent({ uid, margin, tabs }) {
|
|
5814
|
+
function TabsRendererComponent({ uid, margin, tabs, control, tags }) {
|
|
5559
5815
|
const [selectedIndex, setSelectedIndex] = useState17(0);
|
|
5560
|
-
return /* @__PURE__ */ jsx96("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx96(
|
|
5816
|
+
return /* @__PURE__ */ jsx96("div", { className: (0, import_classnames30.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: /* @__PURE__ */ jsx96(
|
|
5561
5817
|
Tabs2,
|
|
5562
5818
|
{
|
|
5563
5819
|
name: uid,
|
|
@@ -5575,10 +5831,10 @@ function TabsRendererComponent({ uid, margin, tabs }) {
|
|
|
5575
5831
|
}
|
|
5576
5832
|
) });
|
|
5577
5833
|
}
|
|
5578
|
-
function SegmentedTabsRendererComponent({ uid, margin, tabs }) {
|
|
5834
|
+
function SegmentedTabsRendererComponent({ uid, margin, tabs, control, tags }) {
|
|
5579
5835
|
var _a;
|
|
5580
5836
|
const [selectedIndex, setSelectedIndex] = useState17(0);
|
|
5581
|
-
return /* @__PURE__ */ jsxs38("div", { className: getMargin(margin), children: [
|
|
5837
|
+
return /* @__PURE__ */ jsxs38("div", { className: (0, import_classnames30.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
5582
5838
|
/* @__PURE__ */ jsx96(
|
|
5583
5839
|
SegmentedControl2,
|
|
5584
5840
|
{
|
|
@@ -5597,10 +5853,10 @@ function SegmentedTabsRendererComponent({ uid, margin, tabs }) {
|
|
|
5597
5853
|
/* @__PURE__ */ jsx96("div", { id: `${uid}-children`, className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
|
|
5598
5854
|
] });
|
|
5599
5855
|
}
|
|
5600
|
-
function ChipsTabsRendererComponent({ margin, tabs }) {
|
|
5856
|
+
function ChipsTabsRendererComponent({ margin, tabs, control, tags }) {
|
|
5601
5857
|
var _a;
|
|
5602
5858
|
const [selectedIndex, setSelectedIndex] = useState17(0);
|
|
5603
|
-
return /* @__PURE__ */ jsxs38("div", { className: getMargin(margin), children: [
|
|
5859
|
+
return /* @__PURE__ */ jsxs38("div", { className: (0, import_classnames30.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
5604
5860
|
/* @__PURE__ */ jsx96("div", { className: "chips-container", children: /* @__PURE__ */ jsx96(
|
|
5605
5861
|
Chips2,
|
|
5606
5862
|
{
|
|
@@ -5717,6 +5973,8 @@ var TextInputRenderer = {
|
|
|
5717
5973
|
loadingState: props.fieldLoadingState,
|
|
5718
5974
|
help,
|
|
5719
5975
|
features: props.features,
|
|
5976
|
+
control: props.control,
|
|
5977
|
+
tags: props.tags,
|
|
5720
5978
|
children: /* @__PURE__ */ jsx98(InputGroup5, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx98(VariableTextInput, __spreadValues({}, inputProps)) })
|
|
5721
5979
|
}
|
|
5722
5980
|
);
|
|
@@ -5745,6 +6003,8 @@ var UploadInputRenderer = {
|
|
|
5745
6003
|
maxSize,
|
|
5746
6004
|
validationState,
|
|
5747
6005
|
value,
|
|
6006
|
+
control,
|
|
6007
|
+
tags,
|
|
5748
6008
|
onUpload
|
|
5749
6009
|
} = props;
|
|
5750
6010
|
const onUploadFile = async (formData) => {
|
|
@@ -5766,6 +6026,8 @@ var UploadInputRenderer = {
|
|
|
5766
6026
|
description: void 0,
|
|
5767
6027
|
validation: validationState,
|
|
5768
6028
|
features,
|
|
6029
|
+
control,
|
|
6030
|
+
tags,
|
|
5769
6031
|
children: /* @__PURE__ */ jsx99(
|
|
5770
6032
|
UploadInput2,
|
|
5771
6033
|
{
|
|
@@ -5807,6 +6069,7 @@ var LargeUploadRenderer = {
|
|
|
5807
6069
|
validationState,
|
|
5808
6070
|
maxSize = null,
|
|
5809
6071
|
features,
|
|
6072
|
+
tags,
|
|
5810
6073
|
onUpload
|
|
5811
6074
|
} = _a, rest = __objRest(_a, [
|
|
5812
6075
|
"id",
|
|
@@ -5820,6 +6083,7 @@ var LargeUploadRenderer = {
|
|
|
5820
6083
|
"validationState",
|
|
5821
6084
|
"maxSize",
|
|
5822
6085
|
"features",
|
|
6086
|
+
"tags",
|
|
5823
6087
|
"onUpload"
|
|
5824
6088
|
]);
|
|
5825
6089
|
const uploadProps = __spreadProps(__spreadValues({}, rest), { id, name: id, maxSize });
|
|
@@ -5843,6 +6107,8 @@ var LargeUploadRenderer = {
|
|
|
5843
6107
|
validation: validationState,
|
|
5844
6108
|
help,
|
|
5845
6109
|
features,
|
|
6110
|
+
control,
|
|
6111
|
+
tags,
|
|
5846
6112
|
children: /* @__PURE__ */ jsx99(
|
|
5847
6113
|
Upload,
|
|
5848
6114
|
__spreadProps(__spreadValues({}, uploadProps), {
|
|
@@ -5859,6 +6125,7 @@ var LargeUploadRenderer = {
|
|
|
5859
6125
|
};
|
|
5860
6126
|
|
|
5861
6127
|
// ../renderers/src/UpsellRenderer.tsx
|
|
6128
|
+
var import_classnames31 = __toESM(require_classnames());
|
|
5862
6129
|
import { Nudge } from "@transferwise/components";
|
|
5863
6130
|
import { useState as useState18 } from "react";
|
|
5864
6131
|
import { jsx as jsx100 } from "react/jsx-runtime";
|
|
@@ -5867,12 +6134,12 @@ var UpsellRenderer = {
|
|
|
5867
6134
|
render: UpsellRendererComponent
|
|
5868
6135
|
};
|
|
5869
6136
|
function UpsellRendererComponent(props) {
|
|
5870
|
-
const { text, callToAction, media, margin, onDismiss } = props;
|
|
6137
|
+
const { text, callToAction, media, margin, onDismiss, control, tags } = props;
|
|
5871
6138
|
const [isVisible, setIsVisible] = useState18(true);
|
|
5872
6139
|
return isVisible ? /* @__PURE__ */ jsx100(
|
|
5873
6140
|
Nudge,
|
|
5874
6141
|
{
|
|
5875
|
-
className: getMargin(margin),
|
|
6142
|
+
className: (0, import_classnames31.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })),
|
|
5876
6143
|
mediaName: getMediaName(media),
|
|
5877
6144
|
title: text,
|
|
5878
6145
|
action: __spreadValues({
|
|
@@ -5916,8 +6183,8 @@ var supportedMediaNames = [
|
|
|
5916
6183
|
];
|
|
5917
6184
|
|
|
5918
6185
|
// ../renderers/src/ButtonRenderer/CircularButtonRenderer.tsx
|
|
6186
|
+
var import_classnames32 = __toESM(require_classnames());
|
|
5919
6187
|
import { CircularButton } from "@transferwise/components";
|
|
5920
|
-
var import_classnames8 = __toESM(require_classnames());
|
|
5921
6188
|
import { jsx as jsx101 } from "react/jsx-runtime";
|
|
5922
6189
|
var CircularButtonRenderer = {
|
|
5923
6190
|
canRenderType: "button",
|
|
@@ -5926,19 +6193,30 @@ var CircularButtonRenderer = {
|
|
|
5926
6193
|
};
|
|
5927
6194
|
function CircularButtonComponent(props) {
|
|
5928
6195
|
var _a;
|
|
5929
|
-
const { context, disabled, margin, media, tags, title, onClick } = props;
|
|
6196
|
+
const { context, control, disabled, margin, media, tags, title, onClick } = props;
|
|
5930
6197
|
const priority = tags == null ? void 0 : tags.find((tag) => tag === "primary" || tag === "secondary");
|
|
5931
|
-
return /* @__PURE__ */ jsx101(
|
|
5932
|
-
|
|
6198
|
+
return /* @__PURE__ */ jsx101(
|
|
6199
|
+
"div",
|
|
5933
6200
|
{
|
|
5934
|
-
|
|
5935
|
-
|
|
5936
|
-
|
|
5937
|
-
|
|
5938
|
-
|
|
5939
|
-
|
|
6201
|
+
className: (0, import_classnames32.default)(
|
|
6202
|
+
getMargin(margin),
|
|
6203
|
+
"df-button",
|
|
6204
|
+
"circular",
|
|
6205
|
+
controlAndTagsToCSSClass({ control, tags })
|
|
6206
|
+
),
|
|
6207
|
+
children: /* @__PURE__ */ jsx101(
|
|
6208
|
+
CircularButton,
|
|
6209
|
+
{
|
|
6210
|
+
disabled,
|
|
6211
|
+
priority: priority != null ? priority : "secondary",
|
|
6212
|
+
type: context === "negative" ? "negative" : "default",
|
|
6213
|
+
icon: media ? (_a = getAddonStartMedia(media)) == null ? void 0 : _a.value : void 0,
|
|
6214
|
+
onClick,
|
|
6215
|
+
children: title
|
|
6216
|
+
}
|
|
6217
|
+
)
|
|
5940
6218
|
}
|
|
5941
|
-
)
|
|
6219
|
+
);
|
|
5942
6220
|
}
|
|
5943
6221
|
|
|
5944
6222
|
// ../renderers/src/getWiseRenderers.ts
|