@wise/dynamic-flow-client-internal 5.32.0 → 5.33.0-experimental-f7c2300
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/i18n/cs.json +2 -2
- package/build/i18n/en.json +2 -0
- package/build/i18n/hu.json +2 -2
- package/build/i18n/it.json +2 -2
- package/build/i18n/ja.json +2 -2
- package/build/i18n/nl.json +2 -2
- package/build/i18n/pl.json +2 -2
- package/build/i18n/pt.json +2 -2
- package/build/i18n/ro.json +2 -2
- package/build/i18n/ru.json +2 -2
- package/build/i18n/zh_HK.json +2 -2
- package/build/main.css +24 -0
- package/build/main.js +1245 -867
- package/build/main.mjs +1039 -656
- package/build/tsconfig.types.tsbuildinfo +1 -1
- package/package.json +8 -7
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 classNames38() {
|
|
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 classNames38.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
|
+
classNames38.default = classNames38;
|
|
109
|
+
module.exports = classNames38;
|
|
110
110
|
} else if (typeof define === "function" && typeof define.amd === "object" && define.amd) {
|
|
111
111
|
define("classnames", [], function() {
|
|
112
|
-
return
|
|
112
|
+
return classNames38;
|
|
113
113
|
});
|
|
114
114
|
} else {
|
|
115
|
-
window.classNames =
|
|
115
|
+
window.classNames = classNames38;
|
|
116
116
|
}
|
|
117
117
|
})();
|
|
118
118
|
}
|
|
@@ -1643,8 +1643,9 @@ var getInlineAlertOrValidation = (validationState, inlineAlert) => {
|
|
|
1643
1643
|
};
|
|
1644
1644
|
var CheckboxInputRenderer_default = CheckboxInputRenderer;
|
|
1645
1645
|
|
|
1646
|
-
// ../renderers/src/CollectionRenderer/
|
|
1646
|
+
// ../renderers/src/CollectionRenderer/CollectionRendererComponent.tsx
|
|
1647
1647
|
import { InlinePrompt, Link as DSLink } from "@transferwise/components";
|
|
1648
|
+
import { AnimatePresence, motion, MotionConfig } from "motion/react";
|
|
1648
1649
|
|
|
1649
1650
|
// ../renderers/src/messages/generic-error.messages.ts
|
|
1650
1651
|
import { defineMessages as defineMessages3 } from "react-intl";
|
|
@@ -1666,6 +1667,58 @@ var generic_error_messages_default = defineMessages3({
|
|
|
1666
1667
|
}
|
|
1667
1668
|
});
|
|
1668
1669
|
|
|
1670
|
+
// ../renderers/src/CollectionRenderer/CollectionRendererComponent.tsx
|
|
1671
|
+
import { useIntl as useIntl3 } from "react-intl";
|
|
1672
|
+
import { jsx as jsx35, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
1673
|
+
var CollectionRendererComponent = (props) => {
|
|
1674
|
+
const { state, depth, pop, Search: Search5, Filters, Results, FocusedResults } = props;
|
|
1675
|
+
const { status, search } = state;
|
|
1676
|
+
const isForked = depth > 0;
|
|
1677
|
+
const isError = status.type === "error" && (status.reason === "search" || status.reason === "filter");
|
|
1678
|
+
return /* @__PURE__ */ jsx35(
|
|
1679
|
+
"div",
|
|
1680
|
+
{
|
|
1681
|
+
role: "presentation",
|
|
1682
|
+
onBlur: (event) => {
|
|
1683
|
+
const { target, relatedTarget, currentTarget } = event;
|
|
1684
|
+
const lostFocus = relatedTarget === null && (!target.isConnected || target.matches(":disabled"));
|
|
1685
|
+
if (isForked && !(search == null ? void 0 : search.query) && !lostFocus && !currentTarget.contains(relatedTarget)) {
|
|
1686
|
+
pop();
|
|
1687
|
+
}
|
|
1688
|
+
},
|
|
1689
|
+
children: /* @__PURE__ */ jsxs6(MotionConfig, { reducedMotion: "user", children: [
|
|
1690
|
+
/* @__PURE__ */ jsx35(Search5, __spreadValues({}, props)),
|
|
1691
|
+
/* @__PURE__ */ jsx35(Filters, __spreadValues({}, props)),
|
|
1692
|
+
/* @__PURE__ */ jsx35(AnimatePresence, { mode: "wait", initial: false, children: /* @__PURE__ */ jsx35(
|
|
1693
|
+
motion.div,
|
|
1694
|
+
{
|
|
1695
|
+
variants: contentVariants,
|
|
1696
|
+
initial: "enter",
|
|
1697
|
+
animate: "visible",
|
|
1698
|
+
exit: "exit",
|
|
1699
|
+
transition: { duration: 0.15, ease: "easeOut" },
|
|
1700
|
+
children: isError ? /* @__PURE__ */ jsx35(SearchError, { retry: status.retry }) : isForked ? /* @__PURE__ */ jsx35(FocusedResults, __spreadValues({}, props)) : /* @__PURE__ */ jsx35(Results, __spreadValues({}, props))
|
|
1701
|
+
},
|
|
1702
|
+
isForked ? "forked" : "root"
|
|
1703
|
+
) })
|
|
1704
|
+
] })
|
|
1705
|
+
}
|
|
1706
|
+
);
|
|
1707
|
+
};
|
|
1708
|
+
var contentVariants = {
|
|
1709
|
+
enter: () => ({ opacity: 0, y: 12 }),
|
|
1710
|
+
visible: { opacity: 1, y: 0 },
|
|
1711
|
+
exit: () => ({ opacity: 0, y: -12 })
|
|
1712
|
+
};
|
|
1713
|
+
var SearchError = ({ retry }) => {
|
|
1714
|
+
const { formatMessage } = useIntl3();
|
|
1715
|
+
return /* @__PURE__ */ jsxs6(InlinePrompt, { width: "full", sentiment: "negative", children: [
|
|
1716
|
+
formatMessage(generic_error_messages_default.genericError),
|
|
1717
|
+
"\xA0",
|
|
1718
|
+
/* @__PURE__ */ jsx35(DSLink, { onClick: retry, children: formatMessage(generic_error_messages_default.retry) })
|
|
1719
|
+
] });
|
|
1720
|
+
};
|
|
1721
|
+
|
|
1669
1722
|
// ../../node_modules/.pnpm/@tanstack+react-virtual@3.14.10_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/@tanstack/react-virtual/dist/esm/index.js
|
|
1670
1723
|
import * as React from "react";
|
|
1671
1724
|
import { flushSync } from "react-dom";
|
|
@@ -3202,14 +3255,14 @@ function useWindowVirtualizer(options) {
|
|
|
3202
3255
|
}, options));
|
|
3203
3256
|
}
|
|
3204
3257
|
|
|
3205
|
-
// ../renderers/src/CollectionRenderer/components/
|
|
3258
|
+
// ../renderers/src/CollectionRenderer/components/VirtualisedContentComponent.tsx
|
|
3206
3259
|
import { ProcessIndicator, Button as Button4 } from "@transferwise/components";
|
|
3207
3260
|
import { useRef as useRef4, useEffect as useEffect7, useLayoutEffect as useLayoutEffect2, useState as useState8 } from "react";
|
|
3208
3261
|
|
|
3209
3262
|
// ../renderers/src/step/StepFooter.tsx
|
|
3210
3263
|
import { Button as Button3 } from "@transferwise/components";
|
|
3211
3264
|
import { useEffect as useEffect6, useRef as useRef3, useState as useState7 } from "react";
|
|
3212
|
-
import { useIntl as
|
|
3265
|
+
import { useIntl as useIntl4 } from "react-intl";
|
|
3213
3266
|
|
|
3214
3267
|
// ../renderers/src/messages/step.messages.ts
|
|
3215
3268
|
import { defineMessages as defineMessages4 } from "react-intl";
|
|
@@ -3222,23 +3275,23 @@ var step_messages_default = defineMessages4({
|
|
|
3222
3275
|
});
|
|
3223
3276
|
|
|
3224
3277
|
// ../renderers/src/step/StepFooter.tsx
|
|
3225
|
-
import { Fragment as Fragment2, jsx as
|
|
3278
|
+
import { Fragment as Fragment2, jsx as jsx36, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
3226
3279
|
var SCROLL_TO_BOTTOM = "scroll-to-bottom";
|
|
3227
3280
|
var StepFooter = ({ footer, tags }) => {
|
|
3228
3281
|
if (tags == null ? void 0 : tags.includes(SCROLL_TO_BOTTOM)) {
|
|
3229
|
-
return /* @__PURE__ */
|
|
3282
|
+
return /* @__PURE__ */ jsx36(FooterWithScrollButton, { footer });
|
|
3230
3283
|
}
|
|
3231
|
-
return /* @__PURE__ */
|
|
3284
|
+
return /* @__PURE__ */ jsx36(DefaultFooter, { footer });
|
|
3232
3285
|
};
|
|
3233
3286
|
var DefaultFooter = ({ footer }) => {
|
|
3234
3287
|
const hasFooter = footer && Array.isArray(footer) && footer.length > 0;
|
|
3235
|
-
return hasFooter ? /* @__PURE__ */
|
|
3288
|
+
return hasFooter ? /* @__PURE__ */ jsx36("div", { className: "df-step-fixed__footer", children: footer }) : void 0;
|
|
3236
3289
|
};
|
|
3237
3290
|
var FooterWithScrollButton = ({ footer }) => {
|
|
3238
|
-
const { formatMessage } =
|
|
3291
|
+
const { formatMessage } = useIntl4();
|
|
3239
3292
|
const endOfLayoutRef = useRef3(null);
|
|
3240
3293
|
const isElementVisible = useIsElementVisible(endOfLayoutRef);
|
|
3241
|
-
const scrollButton = /* @__PURE__ */
|
|
3294
|
+
const scrollButton = /* @__PURE__ */ jsx36(
|
|
3242
3295
|
Button3,
|
|
3243
3296
|
{
|
|
3244
3297
|
className: "m-b-1",
|
|
@@ -3254,11 +3307,11 @@ var FooterWithScrollButton = ({ footer }) => {
|
|
|
3254
3307
|
);
|
|
3255
3308
|
const hasStepFooterContent = footer && Array.isArray(footer) && footer.length > 0;
|
|
3256
3309
|
if (isElementVisible && !hasStepFooterContent) {
|
|
3257
|
-
return /* @__PURE__ */
|
|
3310
|
+
return /* @__PURE__ */ jsx36("div", { ref: endOfLayoutRef, "aria-hidden": "true" });
|
|
3258
3311
|
}
|
|
3259
|
-
return /* @__PURE__ */
|
|
3260
|
-
/* @__PURE__ */
|
|
3261
|
-
/* @__PURE__ */
|
|
3312
|
+
return /* @__PURE__ */ jsxs7(Fragment2, { children: [
|
|
3313
|
+
/* @__PURE__ */ jsx36("div", { ref: endOfLayoutRef, "aria-hidden": "true" }),
|
|
3314
|
+
/* @__PURE__ */ jsxs7("div", { className: "df-step-fixed__footer", children: [
|
|
3262
3315
|
!isElementVisible && scrollButton,
|
|
3263
3316
|
footer
|
|
3264
3317
|
] })
|
|
@@ -3281,8 +3334,8 @@ var useIsElementVisible = (elementRef, root = null) => {
|
|
|
3281
3334
|
return isVisible;
|
|
3282
3335
|
};
|
|
3283
3336
|
|
|
3284
|
-
// ../renderers/src/CollectionRenderer/components/
|
|
3285
|
-
import { useIntl as
|
|
3337
|
+
// ../renderers/src/CollectionRenderer/components/VirtualisedContentComponent.tsx
|
|
3338
|
+
import { useIntl as useIntl5 } from "react-intl";
|
|
3286
3339
|
|
|
3287
3340
|
// ../renderers/src/messages/collection.messages.ts
|
|
3288
3341
|
import { defineMessages as defineMessages5 } from "react-intl";
|
|
@@ -3296,6 +3349,16 @@ var collection_messages_default = defineMessages5({
|
|
|
3296
3349
|
id: "df.wise.Collection.clearText",
|
|
3297
3350
|
defaultMessage: "Clear text",
|
|
3298
3351
|
description: "A message shown at the edge of the search bar to clear the users query"
|
|
3352
|
+
},
|
|
3353
|
+
showMoreResultsButton: {
|
|
3354
|
+
id: "df.wise.Collection.showMoreResultsButton",
|
|
3355
|
+
defaultMessage: "Show all {count} results",
|
|
3356
|
+
description: "A message shown at the bottom of a truncated list of items, clicking will expand to show more"
|
|
3357
|
+
},
|
|
3358
|
+
showLessResultsButton: {
|
|
3359
|
+
id: "df.wise.Collection.showLessResultsButton",
|
|
3360
|
+
defaultMessage: "Show less results",
|
|
3361
|
+
description: "A message shown at the bottom of an expanded list of items, clicking will truncate to show only a few"
|
|
3299
3362
|
}
|
|
3300
3363
|
});
|
|
3301
3364
|
|
|
@@ -3319,10 +3382,48 @@ var getScrollableAncestor = (element) => {
|
|
|
3319
3382
|
return null;
|
|
3320
3383
|
};
|
|
3321
3384
|
|
|
3322
|
-
// ../renderers/src/CollectionRenderer/components/
|
|
3323
|
-
|
|
3324
|
-
|
|
3325
|
-
|
|
3385
|
+
// ../renderers/src/CollectionRenderer/components/flattenCollectionItems.ts
|
|
3386
|
+
var flattenCollectionItems = (sections) => {
|
|
3387
|
+
return sections.flatMap((section) => {
|
|
3388
|
+
if (section.type === "items") {
|
|
3389
|
+
return flattenItemsBody(section);
|
|
3390
|
+
}
|
|
3391
|
+
if (section.type === "layout") {
|
|
3392
|
+
return flattenLayoutBody(section);
|
|
3393
|
+
}
|
|
3394
|
+
return [];
|
|
3395
|
+
});
|
|
3396
|
+
};
|
|
3397
|
+
var flattenItemsBody = (section) => {
|
|
3398
|
+
return [
|
|
3399
|
+
...flattenSectionHeader(section),
|
|
3400
|
+
...section.items.map((item) => ({
|
|
3401
|
+
item,
|
|
3402
|
+
type: "item"
|
|
3403
|
+
}))
|
|
3404
|
+
];
|
|
3405
|
+
};
|
|
3406
|
+
var flattenLayoutBody = (section) => [
|
|
3407
|
+
...flattenSectionHeader(section),
|
|
3408
|
+
__spreadProps(__spreadValues({}, section), {
|
|
3409
|
+
type: "layout"
|
|
3410
|
+
})
|
|
3411
|
+
];
|
|
3412
|
+
var flattenSectionHeader = (section) => section.title ? [
|
|
3413
|
+
{
|
|
3414
|
+
type: "header",
|
|
3415
|
+
title: section.title,
|
|
3416
|
+
items: section.type === "items" ? section.items : void 0,
|
|
3417
|
+
id: section.id,
|
|
3418
|
+
callToAction: section.callToAction
|
|
3419
|
+
}
|
|
3420
|
+
] : [];
|
|
3421
|
+
|
|
3422
|
+
// ../renderers/src/CollectionRenderer/components/VirtualisedContentComponent.tsx
|
|
3423
|
+
import { jsx as jsx37, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
3424
|
+
var VirtualisedContentComponent = (props) => {
|
|
3425
|
+
const { state, SectionHeader, Item } = props;
|
|
3426
|
+
const { status } = state;
|
|
3326
3427
|
const contentRef = useRef4(null);
|
|
3327
3428
|
const [scrollElement, setScrollElement] = useState8(null);
|
|
3328
3429
|
useLayoutEffect2(() => {
|
|
@@ -3339,34 +3440,20 @@ var ContentComponent = (props) => {
|
|
|
3339
3440
|
status.loadMore();
|
|
3340
3441
|
}
|
|
3341
3442
|
}, [isBottomVisible, state.afterSectionsProps.length, status]);
|
|
3342
|
-
const stateCount = state.sections.reduce(
|
|
3343
|
-
|
|
3344
|
-
0
|
|
3345
|
-
);
|
|
3346
|
-
const items = state.sections
|
|
3347
|
-
...section.title ? [
|
|
3348
|
-
{
|
|
3349
|
-
type: "header",
|
|
3350
|
-
title: section.title,
|
|
3351
|
-
items: section.items,
|
|
3352
|
-
id: section.id,
|
|
3353
|
-
callToAction: section.callToAction
|
|
3354
|
-
}
|
|
3355
|
-
] : [],
|
|
3356
|
-
...section.items.map((item) => ({
|
|
3357
|
-
item,
|
|
3358
|
-
type: "item"
|
|
3359
|
-
}))
|
|
3360
|
-
]);
|
|
3443
|
+
const stateCount = state.sections.reduce((total, section) => {
|
|
3444
|
+
const count = section.type === "items" ? section.items.length : 1;
|
|
3445
|
+
return count + total + (section.title ? 1 : 0);
|
|
3446
|
+
}, 0);
|
|
3447
|
+
const items = flattenCollectionItems(state.sections);
|
|
3361
3448
|
const listRef = useRef4(null);
|
|
3362
3449
|
const listOffsetRef = useRef4(0);
|
|
3363
3450
|
useLayoutEffect2(() => {
|
|
3364
3451
|
var _a, _b;
|
|
3365
3452
|
listOffsetRef.current = (_b = (_a = listRef.current) == null ? void 0 : _a.offsetTop) != null ? _b : 0;
|
|
3366
3453
|
});
|
|
3367
|
-
return /* @__PURE__ */
|
|
3454
|
+
return /* @__PURE__ */ jsxs8("div", { ref: contentRef, children: [
|
|
3368
3455
|
state.beforeSections,
|
|
3369
|
-
scrollElement ? /* @__PURE__ */
|
|
3456
|
+
scrollElement ? /* @__PURE__ */ jsx37(
|
|
3370
3457
|
ElementVirtualizedItems,
|
|
3371
3458
|
{
|
|
3372
3459
|
Item,
|
|
@@ -3375,7 +3462,7 @@ var ContentComponent = (props) => {
|
|
|
3375
3462
|
scrollElement,
|
|
3376
3463
|
stateCount
|
|
3377
3464
|
}
|
|
3378
|
-
) : /* @__PURE__ */
|
|
3465
|
+
) : /* @__PURE__ */ jsx37(
|
|
3379
3466
|
WindowVirtualizedItems,
|
|
3380
3467
|
{
|
|
3381
3468
|
Item,
|
|
@@ -3384,7 +3471,7 @@ var ContentComponent = (props) => {
|
|
|
3384
3471
|
stateCount
|
|
3385
3472
|
}
|
|
3386
3473
|
),
|
|
3387
|
-
/* @__PURE__ */
|
|
3474
|
+
/* @__PURE__ */ jsx37("div", { ref: endOfContentRef, className: "d-flex m-x-auto m-y-2", children: /* @__PURE__ */ jsx37(PaginationComponent, { state }) }),
|
|
3388
3475
|
state.afterSections
|
|
3389
3476
|
] });
|
|
3390
3477
|
};
|
|
@@ -3396,7 +3483,7 @@ var WindowVirtualizedItems = (props) => {
|
|
|
3396
3483
|
estimateSize: () => 120,
|
|
3397
3484
|
overscan: 10
|
|
3398
3485
|
});
|
|
3399
|
-
return /* @__PURE__ */
|
|
3486
|
+
return /* @__PURE__ */ jsx37(VirtualizedItems, __spreadProps(__spreadValues({}, props), { virtualItemsRef, virtualizer }));
|
|
3400
3487
|
};
|
|
3401
3488
|
var ElementVirtualizedItems = (props) => {
|
|
3402
3489
|
const { scrollElement, stateCount } = props;
|
|
@@ -3407,7 +3494,7 @@ var ElementVirtualizedItems = (props) => {
|
|
|
3407
3494
|
estimateSize: () => 120,
|
|
3408
3495
|
overscan: 10
|
|
3409
3496
|
});
|
|
3410
|
-
return /* @__PURE__ */
|
|
3497
|
+
return /* @__PURE__ */ jsx37(VirtualizedItems, __spreadProps(__spreadValues({}, props), { virtualItemsRef, virtualizer }));
|
|
3411
3498
|
};
|
|
3412
3499
|
var VirtualizedItems = ({
|
|
3413
3500
|
Item,
|
|
@@ -3415,7 +3502,7 @@ var VirtualizedItems = ({
|
|
|
3415
3502
|
items,
|
|
3416
3503
|
virtualItemsRef,
|
|
3417
3504
|
virtualizer
|
|
3418
|
-
}) => /* @__PURE__ */
|
|
3505
|
+
}) => /* @__PURE__ */ jsx37(
|
|
3419
3506
|
"div",
|
|
3420
3507
|
{
|
|
3421
3508
|
ref: virtualItemsRef,
|
|
@@ -3429,7 +3516,7 @@ var VirtualizedItems = ({
|
|
|
3429
3516
|
if (!i) {
|
|
3430
3517
|
return null;
|
|
3431
3518
|
}
|
|
3432
|
-
return /* @__PURE__ */
|
|
3519
|
+
return /* @__PURE__ */ jsxs8(
|
|
3433
3520
|
"div",
|
|
3434
3521
|
{
|
|
3435
3522
|
ref: virtualizer.measureElement,
|
|
@@ -3441,17 +3528,19 @@ var VirtualizedItems = ({
|
|
|
3441
3528
|
width: "100%",
|
|
3442
3529
|
transform: `translateY(${item.start - virtualizer.options.scrollMargin}px)`
|
|
3443
3530
|
},
|
|
3444
|
-
children:
|
|
3531
|
+
children: [
|
|
3532
|
+
i.type === "header" && /* @__PURE__ */ jsx37(SectionHeader, __spreadValues({}, i)),
|
|
3533
|
+
i.type === "item" && /* @__PURE__ */ jsx37(Item, __spreadValues({}, i.item)),
|
|
3534
|
+
i.type === "layout" && i.children
|
|
3535
|
+
]
|
|
3445
3536
|
},
|
|
3446
3537
|
item.key
|
|
3447
3538
|
);
|
|
3448
3539
|
})
|
|
3449
3540
|
}
|
|
3450
3541
|
);
|
|
3451
|
-
var PaginationComponent = ({
|
|
3452
|
-
status
|
|
3453
|
-
state
|
|
3454
|
-
}) => {
|
|
3542
|
+
var PaginationComponent = ({ state }) => {
|
|
3543
|
+
const { status } = state;
|
|
3455
3544
|
const isPaginationError = status.type === "error" && status.reason === "pagination";
|
|
3456
3545
|
const isPaginationLoading = status.type === "loading" && status.reason === "pagination";
|
|
3457
3546
|
const loadMore = status.type === "idle" ? status.loadMore : void 0;
|
|
@@ -3459,34 +3548,41 @@ var PaginationComponent = ({
|
|
|
3459
3548
|
return null;
|
|
3460
3549
|
}
|
|
3461
3550
|
if (isPaginationError) {
|
|
3462
|
-
return /* @__PURE__ */
|
|
3551
|
+
return /* @__PURE__ */ jsx37(LoadMoreButton, { onClick: status.retry });
|
|
3463
3552
|
}
|
|
3464
3553
|
if (state.afterSectionsProps.length > 0 && loadMore) {
|
|
3465
|
-
return /* @__PURE__ */
|
|
3554
|
+
return /* @__PURE__ */ jsx37(LoadMoreButton, { onClick: loadMore });
|
|
3466
3555
|
}
|
|
3467
|
-
return /* @__PURE__ */
|
|
3556
|
+
return /* @__PURE__ */ jsx37(ProcessIndicator, { size: "xs", "data-testid": "collection-pagination-loader" });
|
|
3468
3557
|
};
|
|
3469
3558
|
var LoadMoreButton = ({ onClick }) => {
|
|
3470
|
-
const { formatMessage } =
|
|
3471
|
-
return /* @__PURE__ */
|
|
3559
|
+
const { formatMessage } = useIntl5();
|
|
3560
|
+
return /* @__PURE__ */ jsx37("div", { className: "d-flex m-x-auto", children: /* @__PURE__ */ jsx37(Button4, { v2: true, size: "sm", priority: "secondary-neutral", onClick, children: formatMessage(collection_messages_default.loadMoreButton) }) });
|
|
3472
3561
|
};
|
|
3473
3562
|
|
|
3474
|
-
// ../renderers/src/CollectionRenderer/
|
|
3563
|
+
// ../renderers/src/CollectionRenderer/v1/FilterComponent.tsx
|
|
3475
3564
|
import { Chips } from "@transferwise/components";
|
|
3476
|
-
import { jsx as
|
|
3477
|
-
var FiltersComponent = (
|
|
3478
|
-
const {
|
|
3479
|
-
|
|
3480
|
-
|
|
3481
|
-
|
|
3565
|
+
import { jsx as jsx38 } from "react/jsx-runtime";
|
|
3566
|
+
var FiltersComponent = (props) => {
|
|
3567
|
+
const _a = props, { Filter } = _a, collectionProps = __objRest(_a, ["Filter"]);
|
|
3568
|
+
const { filters } = collectionProps.state;
|
|
3569
|
+
return /* @__PURE__ */ jsx38("div", { className: "df-filters-container", children: filters.map((filter) => {
|
|
3570
|
+
var _a2;
|
|
3571
|
+
return /* @__PURE__ */ jsx38(
|
|
3572
|
+
Filter,
|
|
3573
|
+
__spreadProps(__spreadValues({}, collectionProps), {
|
|
3574
|
+
filter
|
|
3575
|
+
}),
|
|
3576
|
+
JSON.stringify((_a2 = filter.options) == null ? void 0 : _a2.map((o) => o.value))
|
|
3577
|
+
);
|
|
3482
3578
|
}) });
|
|
3483
3579
|
};
|
|
3484
|
-
var FilterComponent = (filter) => {
|
|
3580
|
+
var FilterComponent = ({ filter }) => {
|
|
3485
3581
|
const { multiSelect, options } = filter;
|
|
3486
3582
|
if (!options) {
|
|
3487
3583
|
return null;
|
|
3488
3584
|
}
|
|
3489
|
-
return /* @__PURE__ */
|
|
3585
|
+
return /* @__PURE__ */ jsx38(
|
|
3490
3586
|
Chips,
|
|
3491
3587
|
{
|
|
3492
3588
|
className: "m-b-1",
|
|
@@ -3516,7 +3612,7 @@ import { ListItem as ListItem6 } from "@transferwise/components";
|
|
|
3516
3612
|
|
|
3517
3613
|
// ../renderers/src/utils/listItem/getAdditionalInfo.tsx
|
|
3518
3614
|
import { ListItem as ListItem4 } from "@transferwise/components";
|
|
3519
|
-
import { jsx as
|
|
3615
|
+
import { jsx as jsx39 } from "react/jsx-runtime";
|
|
3520
3616
|
var getAdditionalInfo = (additionalInfo) => {
|
|
3521
3617
|
var _a, _b;
|
|
3522
3618
|
if (!additionalInfo) {
|
|
@@ -3524,7 +3620,7 @@ var getAdditionalInfo = (additionalInfo) => {
|
|
|
3524
3620
|
}
|
|
3525
3621
|
const { href, text, onClick } = additionalInfo;
|
|
3526
3622
|
if (href || onClick) {
|
|
3527
|
-
return /* @__PURE__ */
|
|
3623
|
+
return /* @__PURE__ */ jsx39(
|
|
3528
3624
|
ListItem4.AdditionalInfo,
|
|
3529
3625
|
{
|
|
3530
3626
|
action: __spreadValues({
|
|
@@ -3533,19 +3629,19 @@ var getAdditionalInfo = (additionalInfo) => {
|
|
|
3533
3629
|
}
|
|
3534
3630
|
);
|
|
3535
3631
|
}
|
|
3536
|
-
return /* @__PURE__ */
|
|
3632
|
+
return /* @__PURE__ */ jsx39(ListItem4.AdditionalInfo, { children: additionalInfo == null ? void 0 : additionalInfo.text });
|
|
3537
3633
|
};
|
|
3538
3634
|
|
|
3539
3635
|
// ../renderers/src/utils/listItem/getCTAControl.tsx
|
|
3540
3636
|
import { ListItem as ListItem5 } from "@transferwise/components";
|
|
3541
|
-
import { jsx as
|
|
3637
|
+
import { jsx as jsx40 } from "react/jsx-runtime";
|
|
3542
3638
|
var getCTAControl = (callToAction, { ctaSecondary, fullyInteractive }) => {
|
|
3543
3639
|
if (!callToAction) {
|
|
3544
3640
|
return void 0;
|
|
3545
3641
|
}
|
|
3546
3642
|
const { accessibilityDescription, title, context } = callToAction;
|
|
3547
3643
|
const { priority, sentiment } = getPriorityAndSentiment(ctaSecondary, context);
|
|
3548
|
-
return /* @__PURE__ */
|
|
3644
|
+
return /* @__PURE__ */ jsx40(
|
|
3549
3645
|
ListItem5.Button,
|
|
3550
3646
|
__spreadProps(__spreadValues({}, callToAction.getAnchorProps()), {
|
|
3551
3647
|
partiallyInteractive: !fullyInteractive,
|
|
@@ -3570,7 +3666,7 @@ var shouldUseAvatar = (control, tags) => {
|
|
|
3570
3666
|
};
|
|
3571
3667
|
|
|
3572
3668
|
// ../renderers/src/CollectionRenderer/components/ItemComponent.tsx
|
|
3573
|
-
import { jsx as
|
|
3669
|
+
import { jsx as jsx41 } from "react/jsx-runtime";
|
|
3574
3670
|
var ItemComponent = (props) => {
|
|
3575
3671
|
var _a, _b;
|
|
3576
3672
|
const {
|
|
@@ -3592,7 +3688,7 @@ var ItemComponent = (props) => {
|
|
|
3592
3688
|
ctaSecondary: (_a = tags == null ? void 0 : tags.includes("cta-secondary")) != null ? _a : false,
|
|
3593
3689
|
fullyInteractive: (_b = (tags == null ? void 0 : tags.includes("fully-interactive")) && (additionalInfo == null ? void 0 : additionalInfo.onClick) == null) != null ? _b : false
|
|
3594
3690
|
};
|
|
3595
|
-
return /* @__PURE__ */
|
|
3691
|
+
return /* @__PURE__ */ jsx41(
|
|
3596
3692
|
ListItem6,
|
|
3597
3693
|
{
|
|
3598
3694
|
title,
|
|
@@ -3609,15 +3705,15 @@ var ItemComponent = (props) => {
|
|
|
3609
3705
|
};
|
|
3610
3706
|
var getNavigationControl = (onClick, href) => {
|
|
3611
3707
|
if (href) {
|
|
3612
|
-
return /* @__PURE__ */
|
|
3708
|
+
return /* @__PURE__ */ jsx41(ListItem6.Navigation, { href });
|
|
3613
3709
|
}
|
|
3614
3710
|
if (onClick) {
|
|
3615
|
-
return /* @__PURE__ */
|
|
3711
|
+
return /* @__PURE__ */ jsx41(ListItem6.Navigation, { onClick });
|
|
3616
3712
|
}
|
|
3617
3713
|
return null;
|
|
3618
3714
|
};
|
|
3619
3715
|
|
|
3620
|
-
// ../renderers/src/CollectionRenderer/
|
|
3716
|
+
// ../renderers/src/CollectionRenderer/v1/SearchComponent.tsx
|
|
3621
3717
|
import {
|
|
3622
3718
|
InputGroup,
|
|
3623
3719
|
Input,
|
|
@@ -3625,46 +3721,41 @@ import {
|
|
|
3625
3721
|
IconButton
|
|
3626
3722
|
} from "@transferwise/components";
|
|
3627
3723
|
import { CrossCircleFill, Search } from "@transferwise/icons";
|
|
3628
|
-
import { useIntl as
|
|
3629
|
-
import { jsx as
|
|
3630
|
-
var SearchComponent = ({
|
|
3631
|
-
|
|
3632
|
-
status,
|
|
3633
|
-
features,
|
|
3634
|
-
control,
|
|
3635
|
-
tags
|
|
3636
|
-
}) => {
|
|
3724
|
+
import { useIntl as useIntl6 } from "react-intl";
|
|
3725
|
+
import { jsx as jsx42 } from "react/jsx-runtime";
|
|
3726
|
+
var SearchComponent = ({ state, features, control, tags }) => {
|
|
3727
|
+
var _a;
|
|
3637
3728
|
const { search } = state;
|
|
3638
|
-
const { formatMessage } =
|
|
3729
|
+
const { formatMessage } = useIntl6();
|
|
3639
3730
|
if (!search) {
|
|
3640
3731
|
return;
|
|
3641
3732
|
}
|
|
3642
3733
|
const getAddon = () => {
|
|
3643
|
-
var
|
|
3644
|
-
if (status.type === "loading") {
|
|
3645
|
-
return { content: /* @__PURE__ */
|
|
3734
|
+
var _a2;
|
|
3735
|
+
if (state.status.type === "loading") {
|
|
3736
|
+
return { content: /* @__PURE__ */ jsx42(ProcessIndicator2, { size: "xs", "data-testid": "collection-search-loader" }) };
|
|
3646
3737
|
}
|
|
3647
|
-
if ((
|
|
3738
|
+
if ((_a2 = state.search) == null ? void 0 : _a2.query) {
|
|
3648
3739
|
return {
|
|
3649
3740
|
interactive: true,
|
|
3650
|
-
content: /* @__PURE__ */
|
|
3741
|
+
content: /* @__PURE__ */ jsx42(
|
|
3651
3742
|
IconButton,
|
|
3652
3743
|
{
|
|
3653
3744
|
priority: "minimal",
|
|
3654
3745
|
size: 24,
|
|
3655
3746
|
"aria-label": formatMessage(collection_messages_default.clearTextLabel),
|
|
3656
3747
|
onClick: () => {
|
|
3657
|
-
var
|
|
3658
|
-
return (
|
|
3748
|
+
var _a3;
|
|
3749
|
+
return (_a3 = state.search) == null ? void 0 : _a3.onChange("");
|
|
3659
3750
|
},
|
|
3660
|
-
children: /* @__PURE__ */
|
|
3751
|
+
children: /* @__PURE__ */ jsx42(CrossCircleFill, {})
|
|
3661
3752
|
}
|
|
3662
3753
|
)
|
|
3663
3754
|
};
|
|
3664
3755
|
}
|
|
3665
3756
|
return void 0;
|
|
3666
3757
|
};
|
|
3667
|
-
return /* @__PURE__ */
|
|
3758
|
+
return /* @__PURE__ */ jsx42(
|
|
3668
3759
|
FieldInput_default,
|
|
3669
3760
|
{
|
|
3670
3761
|
id: "search",
|
|
@@ -3675,13 +3766,13 @@ var SearchComponent = ({
|
|
|
3675
3766
|
features,
|
|
3676
3767
|
control,
|
|
3677
3768
|
tags,
|
|
3678
|
-
children: /* @__PURE__ */
|
|
3769
|
+
children: /* @__PURE__ */ jsx42(InputGroup, { addonStart: { content: /* @__PURE__ */ jsx42(Search, { size: 24 }) }, addonEnd: getAddon(), children: /* @__PURE__ */ jsx42(
|
|
3679
3770
|
Input,
|
|
3680
3771
|
{
|
|
3681
3772
|
id: "search",
|
|
3682
3773
|
name: "search",
|
|
3683
3774
|
shape: "pill",
|
|
3684
|
-
placeholder: search.
|
|
3775
|
+
placeholder: (_a = search.hints) == null ? void 0 : _a[0],
|
|
3685
3776
|
type: "text",
|
|
3686
3777
|
value: search.query,
|
|
3687
3778
|
onChange: ({ currentTarget: { value } }) => {
|
|
@@ -3694,14 +3785,74 @@ var SearchComponent = ({
|
|
|
3694
3785
|
};
|
|
3695
3786
|
|
|
3696
3787
|
// ../renderers/src/CollectionRenderer/components/SectionHeaderComponent.tsx
|
|
3697
|
-
import { jsx as
|
|
3788
|
+
import { jsx as jsx43 } from "react/jsx-runtime";
|
|
3698
3789
|
var SectionHeaderComponent = ({
|
|
3699
3790
|
title,
|
|
3700
3791
|
callToAction
|
|
3701
|
-
}) => /* @__PURE__ */
|
|
3792
|
+
}) => /* @__PURE__ */ jsx43(Header, { title, callToAction });
|
|
3793
|
+
|
|
3794
|
+
// ../renderers/src/CollectionRenderer/components/CollapsibleContentComponent.tsx
|
|
3795
|
+
import { useState as useState9 } from "react";
|
|
3796
|
+
import { Button as Button5 } from "@transferwise/components";
|
|
3797
|
+
import { useIntl as useIntl7 } from "react-intl";
|
|
3798
|
+
import { Fragment as Fragment3, jsx as jsx44, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
3799
|
+
var CollapsibleContentComponent = (props) => {
|
|
3800
|
+
var _a;
|
|
3801
|
+
const { state, SectionHeader, Item } = props;
|
|
3802
|
+
const { search, status } = state;
|
|
3803
|
+
const [isShowingInitialState, setIsShowingInitialState] = useState9(true);
|
|
3804
|
+
const isSearchRunning = status.type === "loading" && status.reason === "search";
|
|
3805
|
+
const shouldShowInitialState = !(search == null ? void 0 : search.query) || isSearchRunning && isShowingInitialState;
|
|
3806
|
+
if (shouldShowInitialState !== isShowingInitialState) {
|
|
3807
|
+
setIsShowingInitialState(shouldShowInitialState);
|
|
3808
|
+
}
|
|
3809
|
+
const sections = shouldShowInitialState ? (_a = search == null ? void 0 : search.initialSections) != null ? _a : state.sections : state.sections;
|
|
3810
|
+
return (
|
|
3811
|
+
// keep focus in the search input when clicking the results, so clicking doesn't blur it and
|
|
3812
|
+
// pop the collection before the click is handled
|
|
3813
|
+
/* @__PURE__ */ jsx44("div", { role: "presentation", onMouseDown: (event) => event.preventDefault(), children: sections.map((section) => {
|
|
3814
|
+
return /* @__PURE__ */ jsx44(Section, { section, SectionHeader, Item }, section.id);
|
|
3815
|
+
}) })
|
|
3816
|
+
);
|
|
3817
|
+
};
|
|
3818
|
+
var Section = ({ section, SectionHeader, Item }) => {
|
|
3819
|
+
const { formatMessage } = useIntl7();
|
|
3820
|
+
const [expanded, setExpanded] = useState9(false);
|
|
3821
|
+
const itemIds = section.type === "items" ? section.items.map(({ id }) => id).join("") : section.id;
|
|
3822
|
+
const [prevItemIds, setPrevItemIds] = useState9(itemIds);
|
|
3823
|
+
if (itemIds !== prevItemIds) {
|
|
3824
|
+
setExpanded(false);
|
|
3825
|
+
setPrevItemIds(itemIds);
|
|
3826
|
+
}
|
|
3827
|
+
const showLoadMore = section.type === "items" && section.items.some((item) => {
|
|
3828
|
+
var _a;
|
|
3829
|
+
return (_a = item.tags) == null ? void 0 : _a.includes("hidden");
|
|
3830
|
+
});
|
|
3831
|
+
return /* @__PURE__ */ jsxs9(Fragment3, { children: [
|
|
3832
|
+
/* @__PURE__ */ jsx44(SectionHeader, __spreadValues({}, section)),
|
|
3833
|
+
section.type === "items" && section.items.filter((item) => {
|
|
3834
|
+
var _a;
|
|
3835
|
+
return expanded || !((_a = item.tags) == null ? void 0 : _a.includes("hidden"));
|
|
3836
|
+
}).map((item) => /* @__PURE__ */ jsx44(Item, __spreadValues({}, item), item.id)),
|
|
3837
|
+
section.type === "layout" && section.children,
|
|
3838
|
+
showLoadMore ? /* @__PURE__ */ jsx44(
|
|
3839
|
+
Button5,
|
|
3840
|
+
{
|
|
3841
|
+
priority: "tertiary",
|
|
3842
|
+
onClick: () => {
|
|
3843
|
+
setExpanded(!expanded);
|
|
3844
|
+
},
|
|
3845
|
+
children: expanded ? /* @__PURE__ */ jsxs9("span", { children: [
|
|
3846
|
+
formatMessage(collection_messages_default.showLessResultsButton),
|
|
3847
|
+
" "
|
|
3848
|
+
] }) : /* @__PURE__ */ jsx44("span", { children: formatMessage(collection_messages_default.showMoreResultsButton, { count: section.items.length }) })
|
|
3849
|
+
}
|
|
3850
|
+
) : void 0
|
|
3851
|
+
] });
|
|
3852
|
+
};
|
|
3702
3853
|
|
|
3703
3854
|
// ../renderers/src/CollectionRenderer/createCollectionRenderer.tsx
|
|
3704
|
-
import { jsx as
|
|
3855
|
+
import { jsx as jsx45 } from "react/jsx-runtime";
|
|
3705
3856
|
var createCollectionRenderer = (canRender, components) => {
|
|
3706
3857
|
const componentsWithDefaults = __spreadValues({
|
|
3707
3858
|
Search: SearchComponent,
|
|
@@ -3709,48 +3860,208 @@ var createCollectionRenderer = (canRender, components) => {
|
|
|
3709
3860
|
Filter: FilterComponent,
|
|
3710
3861
|
Item: ItemComponent,
|
|
3711
3862
|
SectionHeader: SectionHeaderComponent,
|
|
3712
|
-
Results:
|
|
3863
|
+
Results: VirtualisedContentComponent,
|
|
3864
|
+
FocusedResults: CollapsibleContentComponent
|
|
3713
3865
|
}, components);
|
|
3714
3866
|
return {
|
|
3715
3867
|
canRenderType: "collection",
|
|
3716
3868
|
canRender,
|
|
3717
3869
|
render: (props) => {
|
|
3718
|
-
return /* @__PURE__ */
|
|
3870
|
+
return /* @__PURE__ */ jsx45(CollectionRendererComponent, __spreadValues(__spreadValues({}, props), componentsWithDefaults));
|
|
3719
3871
|
}
|
|
3720
3872
|
};
|
|
3721
3873
|
};
|
|
3722
3874
|
|
|
3723
|
-
// ../renderers/src/CollectionRenderer/
|
|
3724
|
-
|
|
3725
|
-
|
|
3726
|
-
|
|
3727
|
-
|
|
3728
|
-
|
|
3729
|
-
|
|
3730
|
-
|
|
3731
|
-
|
|
3732
|
-
|
|
3875
|
+
// ../renderers/src/CollectionRenderer/v1/CollectionRendererV1.tsx
|
|
3876
|
+
var CollectionRendererV1 = createCollectionRenderer(
|
|
3877
|
+
() => true
|
|
3878
|
+
);
|
|
3879
|
+
var CollectionRendererV1_default = CollectionRendererV1;
|
|
3880
|
+
|
|
3881
|
+
// ../renderers/src/CollectionRenderer/v2/FilterComponent.tsx
|
|
3882
|
+
var import_classnames12 = __toESM(require_classnames());
|
|
3883
|
+
import { Chips as Chips2 } from "@transferwise/components";
|
|
3884
|
+
import { AnimatePresence as AnimatePresence2, motion as motion2 } from "motion/react";
|
|
3885
|
+
import { jsx as jsx46 } from "react/jsx-runtime";
|
|
3886
|
+
var FiltersComponent2 = (props) => {
|
|
3887
|
+
var _b;
|
|
3888
|
+
const _a = props, { Filter } = _a, collectionProps = __objRest(_a, ["Filter"]);
|
|
3889
|
+
const { state, depth } = collectionProps;
|
|
3890
|
+
const { filters, status } = state;
|
|
3891
|
+
const isHidden = depth > 0 && !((_b = state.search) == null ? void 0 : _b.query);
|
|
3892
|
+
return /* @__PURE__ */ jsx46(AnimatePresence2, { initial: false, children: !isHidden && /* @__PURE__ */ jsx46(
|
|
3893
|
+
motion2.div,
|
|
3894
|
+
{
|
|
3895
|
+
variants: filtersVariants,
|
|
3896
|
+
initial: "collapsed",
|
|
3897
|
+
animate: "expanded",
|
|
3898
|
+
exit: "collapsed",
|
|
3899
|
+
transition: { duration: 0.15, ease: "easeOut" },
|
|
3900
|
+
children: /* @__PURE__ */ jsx46(
|
|
3901
|
+
"div",
|
|
3902
|
+
{
|
|
3903
|
+
className: (0, import_classnames12.default)("df-filters-container", {
|
|
3904
|
+
"df-filter-loader": status.type === "loading" && status.reason === "search"
|
|
3905
|
+
}),
|
|
3906
|
+
children: filters.map((filter) => {
|
|
3907
|
+
var _a2;
|
|
3908
|
+
return /* @__PURE__ */ jsx46(
|
|
3909
|
+
Filter,
|
|
3910
|
+
__spreadProps(__spreadValues({}, collectionProps), {
|
|
3911
|
+
filter
|
|
3912
|
+
}),
|
|
3913
|
+
JSON.stringify((_a2 = filter.options) == null ? void 0 : _a2.map((o) => o.value))
|
|
3914
|
+
);
|
|
3915
|
+
})
|
|
3916
|
+
}
|
|
3917
|
+
)
|
|
3918
|
+
},
|
|
3919
|
+
"filters"
|
|
3920
|
+
) });
|
|
3733
3921
|
};
|
|
3734
|
-
var
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3739
|
-
|
|
3740
|
-
|
|
3922
|
+
var filtersVariants = {
|
|
3923
|
+
collapsed: { height: 0, opacity: 0, overflow: "hidden" },
|
|
3924
|
+
expanded: { height: "auto", opacity: 1, transitionEnd: { overflow: "visible" } }
|
|
3925
|
+
};
|
|
3926
|
+
var FilterComponent2 = ({
|
|
3927
|
+
filter,
|
|
3928
|
+
state
|
|
3929
|
+
}) => {
|
|
3930
|
+
const { multiSelect, options } = filter;
|
|
3931
|
+
const { status } = state;
|
|
3932
|
+
const disabled = status.type === "loading" && status.reason === "search";
|
|
3933
|
+
if (!options) {
|
|
3934
|
+
return null;
|
|
3935
|
+
}
|
|
3936
|
+
return /* @__PURE__ */ jsx46(
|
|
3937
|
+
Chips2,
|
|
3938
|
+
{
|
|
3939
|
+
className: "m-b-1",
|
|
3940
|
+
multiple: multiSelect,
|
|
3941
|
+
selected: options.some((option) => option.selected) ? options.filter((option) => option.selected).map((option) => option.value) : multiSelect ? [] : "",
|
|
3942
|
+
chips: [
|
|
3943
|
+
...options.map((option) => ({
|
|
3944
|
+
value: option.value,
|
|
3945
|
+
label: option.title
|
|
3946
|
+
}))
|
|
3947
|
+
],
|
|
3948
|
+
onChange: (value) => {
|
|
3949
|
+
var _a;
|
|
3950
|
+
if (disabled) {
|
|
3951
|
+
return;
|
|
3952
|
+
}
|
|
3953
|
+
if (value.selectedValue === "") {
|
|
3954
|
+
options == null ? void 0 : options.filter((option) => option.selected).map((option) => option == null ? void 0 : option.onSelect());
|
|
3955
|
+
return;
|
|
3956
|
+
}
|
|
3957
|
+
(_a = options == null ? void 0 : options.find((option) => value.selectedValue === option.value)) == null ? void 0 : _a.onSelect();
|
|
3958
|
+
}
|
|
3959
|
+
},
|
|
3960
|
+
JSON.stringify(options)
|
|
3961
|
+
);
|
|
3741
3962
|
};
|
|
3742
|
-
|
|
3743
|
-
|
|
3963
|
+
|
|
3964
|
+
// ../renderers/src/CollectionRenderer/v2/SearchComponent.tsx
|
|
3965
|
+
import {
|
|
3966
|
+
InputGroup as InputGroup2,
|
|
3967
|
+
Input as Input2,
|
|
3968
|
+
ProcessIndicator as ProcessIndicator3,
|
|
3969
|
+
IconButton as IconButton2
|
|
3970
|
+
} from "@transferwise/components";
|
|
3971
|
+
import { CrossCircleFill as CrossCircleFill2, Search as Search2 } from "@transferwise/icons";
|
|
3972
|
+
import { useRef as useRef5 } from "react";
|
|
3973
|
+
import { useIntl as useIntl8 } from "react-intl";
|
|
3974
|
+
import { jsx as jsx47 } from "react/jsx-runtime";
|
|
3975
|
+
var SearchComponent2 = ({
|
|
3976
|
+
state,
|
|
3977
|
+
depth,
|
|
3978
|
+
fork,
|
|
3979
|
+
features,
|
|
3980
|
+
control,
|
|
3981
|
+
tags
|
|
3982
|
+
}) => {
|
|
3983
|
+
var _a;
|
|
3984
|
+
const { search } = state;
|
|
3985
|
+
const { formatMessage } = useIntl8();
|
|
3986
|
+
const inputRef = useRef5(null);
|
|
3987
|
+
if (!search) {
|
|
3988
|
+
return;
|
|
3989
|
+
}
|
|
3990
|
+
const isForked = depth > 0;
|
|
3991
|
+
const getAddon = () => {
|
|
3992
|
+
if (state.status.type === "loading") {
|
|
3993
|
+
return { content: /* @__PURE__ */ jsx47(ProcessIndicator3, { size: "xs", "data-testid": "collection-search-loader" }) };
|
|
3994
|
+
}
|
|
3995
|
+
if (search.query) {
|
|
3996
|
+
return {
|
|
3997
|
+
interactive: true,
|
|
3998
|
+
content: /* @__PURE__ */ jsx47(
|
|
3999
|
+
IconButton2,
|
|
4000
|
+
{
|
|
4001
|
+
priority: "minimal",
|
|
4002
|
+
size: 24,
|
|
4003
|
+
"aria-label": formatMessage(collection_messages_default.clearTextLabel),
|
|
4004
|
+
onClick: () => {
|
|
4005
|
+
var _a2;
|
|
4006
|
+
search.onChange("");
|
|
4007
|
+
(_a2 = inputRef.current) == null ? void 0 : _a2.focus();
|
|
4008
|
+
},
|
|
4009
|
+
children: /* @__PURE__ */ jsx47(CrossCircleFill2, {})
|
|
4010
|
+
}
|
|
4011
|
+
)
|
|
4012
|
+
};
|
|
4013
|
+
}
|
|
4014
|
+
return void 0;
|
|
4015
|
+
};
|
|
4016
|
+
return /* @__PURE__ */ jsx47(
|
|
4017
|
+
FieldInput_default,
|
|
4018
|
+
{
|
|
4019
|
+
id: "search",
|
|
4020
|
+
description: "",
|
|
4021
|
+
validation: void 0,
|
|
4022
|
+
help: "",
|
|
4023
|
+
label: search.title,
|
|
4024
|
+
features,
|
|
4025
|
+
control,
|
|
4026
|
+
tags,
|
|
4027
|
+
children: /* @__PURE__ */ jsx47(InputGroup2, { addonStart: { content: /* @__PURE__ */ jsx47(Search2, { size: 24 }) }, addonEnd: getAddon(), children: /* @__PURE__ */ jsx47(
|
|
4028
|
+
Input2,
|
|
4029
|
+
{
|
|
4030
|
+
ref: inputRef,
|
|
4031
|
+
id: "search",
|
|
4032
|
+
name: "search",
|
|
4033
|
+
shape: "pill",
|
|
4034
|
+
placeholder: (_a = search.hints) == null ? void 0 : _a[0],
|
|
4035
|
+
type: "text",
|
|
4036
|
+
value: search.query,
|
|
4037
|
+
onFocus: () => {
|
|
4038
|
+
if (!isForked) {
|
|
4039
|
+
fork();
|
|
4040
|
+
}
|
|
4041
|
+
},
|
|
4042
|
+
onChange: ({ currentTarget: { value } }) => search.onChange(value)
|
|
4043
|
+
}
|
|
4044
|
+
) })
|
|
4045
|
+
}
|
|
4046
|
+
);
|
|
4047
|
+
};
|
|
4048
|
+
|
|
4049
|
+
// ../renderers/src/CollectionRenderer/v2/CollectionRendererV2.tsx
|
|
4050
|
+
var CollectionRendererV2 = createCollectionRenderer(
|
|
4051
|
+
({ control }) => control === "contacts-collection-v2",
|
|
4052
|
+
{ Search: SearchComponent2, Filters: FiltersComponent2, Filter: FilterComponent2 }
|
|
4053
|
+
);
|
|
4054
|
+
var CollectionRendererV2_default = CollectionRendererV2;
|
|
3744
4055
|
|
|
3745
4056
|
// ../renderers/src/ColumnsRenderer.tsx
|
|
3746
|
-
var
|
|
4057
|
+
var import_classnames13 = __toESM(require_classnames());
|
|
3747
4058
|
|
|
3748
4059
|
// ../renderers/src/utils/useIsCollapsed.ts
|
|
3749
|
-
import { useEffect as useEffect8, useState as
|
|
4060
|
+
import { useEffect as useEffect8, useState as useState10 } from "react";
|
|
3750
4061
|
var COLLAPSE_QUERY = "(max-width: 767.98px)";
|
|
3751
4062
|
var supportsMatchMedia = () => typeof window !== "undefined" && !!window.matchMedia;
|
|
3752
4063
|
var useIsCollapsed = () => {
|
|
3753
|
-
const [collapsed, setCollapsed] =
|
|
4064
|
+
const [collapsed, setCollapsed] = useState10(
|
|
3754
4065
|
() => supportsMatchMedia() && window.matchMedia(COLLAPSE_QUERY).matches
|
|
3755
4066
|
);
|
|
3756
4067
|
useEffect8(() => {
|
|
@@ -3766,7 +4077,7 @@ var useIsCollapsed = () => {
|
|
|
3766
4077
|
};
|
|
3767
4078
|
|
|
3768
4079
|
// ../renderers/src/ColumnsRenderer.tsx
|
|
3769
|
-
import { jsx as
|
|
4080
|
+
import { jsx as jsx48, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
3770
4081
|
var RIGHT_FIRST_STACKING = "right-first-stacking";
|
|
3771
4082
|
var ColumnsRenderer = {
|
|
3772
4083
|
canRenderType: "columns",
|
|
@@ -3777,12 +4088,12 @@ function ColumnsRendererComponent(props) {
|
|
|
3777
4088
|
const { bias, margin, startChildren, endChildren, tags } = props;
|
|
3778
4089
|
const isCollapsed = useIsCollapsed();
|
|
3779
4090
|
const reverse = isCollapsed && ((_a = tags == null ? void 0 : tags.includes(RIGHT_FIRST_STACKING)) != null ? _a : false);
|
|
3780
|
-
const startColumn = /* @__PURE__ */
|
|
3781
|
-
const endColumn = /* @__PURE__ */
|
|
3782
|
-
return /* @__PURE__ */
|
|
4091
|
+
const startColumn = /* @__PURE__ */ jsx48("div", { className: "df-columns-renderer-column", children: startChildren });
|
|
4092
|
+
const endColumn = /* @__PURE__ */ jsx48("div", { className: "df-columns-renderer-column", children: endChildren });
|
|
4093
|
+
return /* @__PURE__ */ jsxs10(
|
|
3783
4094
|
"div",
|
|
3784
4095
|
{
|
|
3785
|
-
className: (0,
|
|
4096
|
+
className: (0, import_classnames13.default)(
|
|
3786
4097
|
"df-columns-renderer-container",
|
|
3787
4098
|
getMargin(margin),
|
|
3788
4099
|
{
|
|
@@ -3800,23 +4111,6 @@ function ColumnsRendererComponent(props) {
|
|
|
3800
4111
|
}
|
|
3801
4112
|
var ColumnsRenderer_default = ColumnsRenderer;
|
|
3802
4113
|
|
|
3803
|
-
// ../renderers/src/components/VariableDateInput.tsx
|
|
3804
|
-
import { DateInput, DateLookup } from "@transferwise/components";
|
|
3805
|
-
|
|
3806
|
-
// ../renderers/src/hooks/useAvailabilityRules.ts
|
|
3807
|
-
import { useState as useState10 } from "react";
|
|
3808
|
-
import { useIntl as useIntl7 } from "react-intl";
|
|
3809
|
-
|
|
3810
|
-
// ../renderers/src/messages/date-input.messages.ts
|
|
3811
|
-
import { defineMessages as defineMessages6 } from "react-intl";
|
|
3812
|
-
var date_input_messages_default = defineMessages6({
|
|
3813
|
-
unavailableDates: {
|
|
3814
|
-
id: "df.wise.DateInput.unavailableDates",
|
|
3815
|
-
defaultMessage: "Some dates are unavailable.",
|
|
3816
|
-
description: "General explanation shown below a calendar containing unavailable dates"
|
|
3817
|
-
}
|
|
3818
|
-
});
|
|
3819
|
-
|
|
3820
4114
|
// ../renderers/src/validators/type-validators.ts
|
|
3821
4115
|
var isNumber = (value) => typeof value === "number" && !Number.isNaN(value);
|
|
3822
4116
|
|
|
@@ -3845,14 +4139,31 @@ var dateToDateString = (date) => {
|
|
|
3845
4139
|
return [year, formattedMonth, formattedDay].join("-");
|
|
3846
4140
|
};
|
|
3847
4141
|
|
|
4142
|
+
// ../renderers/src/DateInputRenderer/DateLookupControl.tsx
|
|
4143
|
+
import { DateLookup } from "@transferwise/components";
|
|
4144
|
+
|
|
4145
|
+
// ../renderers/src/hooks/useAvailabilityRules.ts
|
|
4146
|
+
import { useState as useState11 } from "react";
|
|
4147
|
+
import { useIntl as useIntl9 } from "react-intl";
|
|
4148
|
+
|
|
4149
|
+
// ../renderers/src/messages/date-input.messages.ts
|
|
4150
|
+
import { defineMessages as defineMessages6 } from "react-intl";
|
|
4151
|
+
var date_input_messages_default = defineMessages6({
|
|
4152
|
+
unavailableDates: {
|
|
4153
|
+
id: "df.wise.DateInput.unavailableDates",
|
|
4154
|
+
defaultMessage: "Some dates are unavailable.",
|
|
4155
|
+
description: "General explanation shown below a calendar containing unavailable dates"
|
|
4156
|
+
}
|
|
4157
|
+
});
|
|
4158
|
+
|
|
3848
4159
|
// ../renderers/src/hooks/useAvailabilityRules.ts
|
|
3849
4160
|
var useAvailabilityRules = (availability) => {
|
|
3850
4161
|
var _a, _b;
|
|
3851
|
-
const { formatMessage } =
|
|
3852
|
-
const [focusedDate, setFocusedDate] =
|
|
4162
|
+
const { formatMessage } = useIntl9();
|
|
4163
|
+
const [focusedDate, setFocusedDate] = useState11(null);
|
|
3853
4164
|
const unavailableMessage = (_b = (_a = focusedDate ? getUnavailableDateReason(focusedDate, availability) : null) != null ? _a : availability == null ? void 0 : availability.message) != null ? _b : formatMessage(date_input_messages_default.unavailableDates);
|
|
3854
4165
|
const onDateSelect = ({ date }) => {
|
|
3855
|
-
setFocusedDate(date);
|
|
4166
|
+
setFocusedDate((current) => (current == null ? void 0 : current.getTime()) === date.getTime() ? current : date);
|
|
3856
4167
|
};
|
|
3857
4168
|
return {
|
|
3858
4169
|
disabledRules: mapAvailabilityToDisabledRules(availability, unavailableMessage),
|
|
@@ -3900,64 +4211,124 @@ var matchesDateRule = (date, weekday, rule) => {
|
|
|
3900
4211
|
};
|
|
3901
4212
|
var isDate = (date) => date !== null;
|
|
3902
4213
|
|
|
3903
|
-
// ../renderers/src/
|
|
3904
|
-
import { jsx as
|
|
3905
|
-
|
|
3906
|
-
|
|
3907
|
-
|
|
3908
|
-
|
|
3909
|
-
|
|
3910
|
-
|
|
3911
|
-
|
|
3912
|
-
|
|
3913
|
-
|
|
3914
|
-
|
|
3915
|
-
|
|
3916
|
-
onBlur,
|
|
3917
|
-
onChange,
|
|
3918
|
-
onFocus
|
|
3919
|
-
} = inputProps;
|
|
4214
|
+
// ../renderers/src/DateInputRenderer/DateLookupControl.tsx
|
|
4215
|
+
import { jsx as jsx49 } from "react/jsx-runtime";
|
|
4216
|
+
var DateLookupControl = ({
|
|
4217
|
+
value,
|
|
4218
|
+
minimumDate,
|
|
4219
|
+
maximumDate,
|
|
4220
|
+
placeholder,
|
|
4221
|
+
disabled,
|
|
4222
|
+
availability,
|
|
4223
|
+
onChange,
|
|
4224
|
+
onBlur,
|
|
4225
|
+
onFocus
|
|
4226
|
+
}) => {
|
|
3920
4227
|
const { disabledRules, onDateSelect, resetFocusedDate } = useAvailabilityRules(availability);
|
|
3921
|
-
|
|
3922
|
-
|
|
3923
|
-
|
|
4228
|
+
return /* @__PURE__ */ jsx49(
|
|
4229
|
+
DateLookup,
|
|
4230
|
+
{
|
|
4231
|
+
value: dateStringToDateOrNull(value),
|
|
4232
|
+
min: dateStringToDateOrNull(minimumDate),
|
|
4233
|
+
max: dateStringToDateOrNull(maximumDate),
|
|
4234
|
+
placeholder,
|
|
4235
|
+
disabled,
|
|
4236
|
+
disabledRules,
|
|
4237
|
+
onChange: (date) => {
|
|
4238
|
+
onChange(date !== null ? dateToDateString(date) : null);
|
|
4239
|
+
},
|
|
4240
|
+
onDateSelect,
|
|
4241
|
+
onBlur,
|
|
4242
|
+
onFocus: () => {
|
|
4243
|
+
resetFocusedDate();
|
|
4244
|
+
onFocus();
|
|
4245
|
+
}
|
|
4246
|
+
}
|
|
4247
|
+
);
|
|
4248
|
+
};
|
|
4249
|
+
|
|
4250
|
+
// ../renderers/src/DateInputRenderer/CalendarControl.tsx
|
|
4251
|
+
import { Calendar } from "@transferwise/components";
|
|
4252
|
+
import { jsx as jsx50 } from "react/jsx-runtime";
|
|
4253
|
+
var CalendarControl = ({
|
|
4254
|
+
id,
|
|
4255
|
+
title,
|
|
4256
|
+
value,
|
|
4257
|
+
minimumDate,
|
|
4258
|
+
maximumDate,
|
|
4259
|
+
validationState,
|
|
4260
|
+
availability,
|
|
4261
|
+
onChange,
|
|
4262
|
+
onFocus,
|
|
4263
|
+
onBlur
|
|
4264
|
+
}) => {
|
|
4265
|
+
const { disabledRules, onDateSelect, resetFocusedDate } = useAvailabilityRules(availability);
|
|
4266
|
+
const handleDateFocus = (date, { isEnabled }) => {
|
|
4267
|
+
if (date === null) {
|
|
4268
|
+
resetFocusedDate();
|
|
4269
|
+
return;
|
|
4270
|
+
}
|
|
4271
|
+
onDateSelect({ date, isEnabled });
|
|
4272
|
+
};
|
|
4273
|
+
return (
|
|
4274
|
+
// Wrapping in a <fieldset> to address some a11y gaps in the current inline Calendar component
|
|
4275
|
+
/* @__PURE__ */ jsx50(
|
|
4276
|
+
"fieldset",
|
|
3924
4277
|
{
|
|
3925
|
-
|
|
3926
|
-
|
|
3927
|
-
|
|
3928
|
-
|
|
3929
|
-
|
|
3930
|
-
|
|
3931
|
-
|
|
3932
|
-
|
|
4278
|
+
id,
|
|
4279
|
+
"aria-label": title,
|
|
4280
|
+
"aria-invalid": (validationState == null ? void 0 : validationState.status) === "invalid",
|
|
4281
|
+
onFocus: (event) => {
|
|
4282
|
+
if (!event.currentTarget.contains(event.relatedTarget)) {
|
|
4283
|
+
resetFocusedDate();
|
|
4284
|
+
onFocus();
|
|
4285
|
+
}
|
|
3933
4286
|
},
|
|
3934
|
-
|
|
3935
|
-
|
|
3936
|
-
|
|
3937
|
-
|
|
3938
|
-
|
|
3939
|
-
|
|
4287
|
+
onBlur: (event) => {
|
|
4288
|
+
if (!event.currentTarget.contains(event.relatedTarget)) {
|
|
4289
|
+
onBlur();
|
|
4290
|
+
}
|
|
4291
|
+
},
|
|
4292
|
+
children: /* @__PURE__ */ jsx50(
|
|
4293
|
+
Calendar,
|
|
4294
|
+
{
|
|
4295
|
+
value: dateStringToDateOrNull(value),
|
|
4296
|
+
min: dateStringToDateOrNull(minimumDate),
|
|
4297
|
+
max: dateStringToDateOrNull(maximumDate),
|
|
4298
|
+
disabledRules,
|
|
4299
|
+
onChange: (date) => {
|
|
4300
|
+
onChange(date !== null ? dateToDateString(date) : null);
|
|
4301
|
+
},
|
|
4302
|
+
onDateFocus: handleDateFocus
|
|
4303
|
+
}
|
|
4304
|
+
)
|
|
3940
4305
|
}
|
|
3941
|
-
)
|
|
3942
|
-
|
|
3943
|
-
|
|
4306
|
+
)
|
|
4307
|
+
);
|
|
4308
|
+
};
|
|
4309
|
+
|
|
4310
|
+
// ../renderers/src/DateInputRenderer/DateInputControl.tsx
|
|
4311
|
+
import { DateInput } from "@transferwise/components";
|
|
4312
|
+
import { jsx as jsx51 } from "react/jsx-runtime";
|
|
4313
|
+
var DateInputControl = (_a) => {
|
|
4314
|
+
var _b = _a, { autoComplete } = _b, props = __objRest(_b, ["autoComplete"]);
|
|
4315
|
+
return /* @__PURE__ */ jsx51(
|
|
3944
4316
|
DateInput,
|
|
3945
|
-
__spreadProps(__spreadValues({},
|
|
4317
|
+
__spreadProps(__spreadValues({}, props), {
|
|
3946
4318
|
dayAutoComplete: getAutocompleteString(autoComplete, "day"),
|
|
3947
4319
|
yearAutoComplete: getAutocompleteString(autoComplete, "year")
|
|
3948
4320
|
})
|
|
3949
4321
|
);
|
|
3950
|
-
}
|
|
4322
|
+
};
|
|
3951
4323
|
var getAutocompleteString = (value, suffix) => {
|
|
3952
4324
|
if (value === "bday") {
|
|
3953
4325
|
return `${value}-${suffix}`;
|
|
3954
4326
|
}
|
|
3955
4327
|
return void 0;
|
|
3956
4328
|
};
|
|
3957
|
-
var VariableDateInput_default = VariableDateInput;
|
|
3958
4329
|
|
|
3959
|
-
// ../renderers/src/DateInputRenderer.tsx
|
|
3960
|
-
import { jsx as
|
|
4330
|
+
// ../renderers/src/DateInputRenderer/DateInputRenderer.tsx
|
|
4331
|
+
import { jsx as jsx52 } from "react/jsx-runtime";
|
|
3961
4332
|
var DateInputRenderer = {
|
|
3962
4333
|
canRenderType: "input-date",
|
|
3963
4334
|
render: (props) => {
|
|
@@ -3981,8 +4352,17 @@ var DateInputRenderer = {
|
|
|
3981
4352
|
"value"
|
|
3982
4353
|
]);
|
|
3983
4354
|
const value = initialValue != null ? initialValue : "";
|
|
3984
|
-
const inputProps = __spreadProps(__spreadValues({}, rest), { value, id });
|
|
3985
|
-
|
|
4355
|
+
const inputProps = __spreadProps(__spreadValues({}, rest), { value, id, title, validationState });
|
|
4356
|
+
const UIComponent = (() => {
|
|
4357
|
+
if (control === "calendar") {
|
|
4358
|
+
return !props.disabled ? CalendarControl : DateLookupControl;
|
|
4359
|
+
}
|
|
4360
|
+
if (control === "date-lookup") {
|
|
4361
|
+
return DateLookupControl;
|
|
4362
|
+
}
|
|
4363
|
+
return DateInputControl;
|
|
4364
|
+
})();
|
|
4365
|
+
return /* @__PURE__ */ jsx52(
|
|
3986
4366
|
FieldInput_default,
|
|
3987
4367
|
{
|
|
3988
4368
|
id,
|
|
@@ -3995,7 +4375,7 @@ var DateInputRenderer = {
|
|
|
3995
4375
|
features: props.features,
|
|
3996
4376
|
control,
|
|
3997
4377
|
tags: props.tags,
|
|
3998
|
-
children: /* @__PURE__ */
|
|
4378
|
+
children: /* @__PURE__ */ jsx52(UIComponent, __spreadValues({}, inputProps))
|
|
3999
4379
|
}
|
|
4000
4380
|
);
|
|
4001
4381
|
}
|
|
@@ -4007,8 +4387,8 @@ import { ListItem as ListItem7 } from "@transferwise/components";
|
|
|
4007
4387
|
|
|
4008
4388
|
// ../renderers/src/DecisionRenderer/DecisionWrapper.tsx
|
|
4009
4389
|
import { Header as Header3, SearchInput } from "@transferwise/components";
|
|
4010
|
-
import { useState as
|
|
4011
|
-
import { useIntl as
|
|
4390
|
+
import { useState as useState12 } from "react";
|
|
4391
|
+
import { useIntl as useIntl11 } from "react-intl";
|
|
4012
4392
|
|
|
4013
4393
|
// ../renderers/src/messages/filter.messages.ts
|
|
4014
4394
|
import { defineMessages as defineMessages7 } from "react-intl";
|
|
@@ -4078,8 +4458,8 @@ function filterAndSortItems(options, query) {
|
|
|
4078
4458
|
var normalizeAndRemoveAccents = (text) => text.trim().toLowerCase().normalize("NFKD").replace(new RegExp("\\p{Diacritic}", "gu"), "");
|
|
4079
4459
|
|
|
4080
4460
|
// ../renderers/src/DecisionRenderer/GroupedDecisionList.tsx
|
|
4081
|
-
import { Header as Header2, Section } from "@transferwise/components";
|
|
4082
|
-
import { useIntl as
|
|
4461
|
+
import { Header as Header2, Section as Section2 } from "@transferwise/components";
|
|
4462
|
+
import { useIntl as useIntl10 } from "react-intl";
|
|
4083
4463
|
|
|
4084
4464
|
// ../renderers/src/messages/group.messages.ts
|
|
4085
4465
|
import { defineMessages as defineMessages8 } from "react-intl";
|
|
@@ -4117,18 +4497,18 @@ var getGroupsFromTags = (knownTags, items) => {
|
|
|
4117
4497
|
};
|
|
4118
4498
|
|
|
4119
4499
|
// ../renderers/src/DecisionRenderer/GroupedDecisionList.tsx
|
|
4120
|
-
import { Fragment as Fragment4, jsx as
|
|
4500
|
+
import { Fragment as Fragment4, jsx as jsx53, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
4121
4501
|
var groupingTags = Object.keys(group_messages_default).filter((key) => key !== "all");
|
|
4122
4502
|
var isGroupedDecision = (options) => {
|
|
4123
4503
|
return getGroupsFromTags(groupingTags, options).length > 0;
|
|
4124
4504
|
};
|
|
4125
4505
|
var GroupedDecisionList = (_a) => {
|
|
4126
4506
|
var _b = _a, { renderDecisionList: renderDecisionList2 } = _b, rest = __objRest(_b, ["renderDecisionList"]);
|
|
4127
|
-
const { formatMessage } =
|
|
4507
|
+
const { formatMessage } = useIntl10();
|
|
4128
4508
|
const { options } = rest;
|
|
4129
4509
|
const itemsByTag = [...getGroupsFromTags(groupingTags, options), { tag: "all", items: options }];
|
|
4130
|
-
return /* @__PURE__ */
|
|
4131
|
-
/* @__PURE__ */
|
|
4510
|
+
return /* @__PURE__ */ jsx53(Fragment4, { children: itemsByTag.map(({ tag, items }) => /* @__PURE__ */ jsxs11(Section2, { children: [
|
|
4511
|
+
/* @__PURE__ */ jsx53(
|
|
4132
4512
|
Header2,
|
|
4133
4513
|
{
|
|
4134
4514
|
as: "h2",
|
|
@@ -4140,27 +4520,27 @@ var GroupedDecisionList = (_a) => {
|
|
|
4140
4520
|
};
|
|
4141
4521
|
|
|
4142
4522
|
// ../renderers/src/DecisionRenderer/DecisionWrapper.tsx
|
|
4143
|
-
var
|
|
4144
|
-
import { Fragment as Fragment5, jsx as
|
|
4523
|
+
var import_classnames14 = __toESM(require_classnames());
|
|
4524
|
+
import { Fragment as Fragment5, jsx as jsx54, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
4145
4525
|
var DecisionWrapper = (props) => {
|
|
4146
4526
|
const { margin, control, title, tags } = props;
|
|
4147
|
-
return /* @__PURE__ */
|
|
4148
|
-
title && /* @__PURE__ */
|
|
4149
|
-
control === "filtered" ? /* @__PURE__ */
|
|
4527
|
+
return /* @__PURE__ */ jsxs12("div", { className: (0, import_classnames14.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
4528
|
+
title && /* @__PURE__ */ jsx54(Header3, { as: "h2", title }),
|
|
4529
|
+
control === "filtered" ? /* @__PURE__ */ jsx54(FilteredDecisionList, __spreadValues({}, props)) : /* @__PURE__ */ jsx54(UnfilteredDecisionList, __spreadValues({}, props))
|
|
4150
4530
|
] });
|
|
4151
4531
|
};
|
|
4152
4532
|
var UnfilteredDecisionList = (_a) => {
|
|
4153
4533
|
var _b = _a, { renderDecisionList: renderDecisionList2 } = _b, rest = __objRest(_b, ["renderDecisionList"]);
|
|
4154
|
-
return isGroupedDecision(rest.options) ? /* @__PURE__ */
|
|
4534
|
+
return isGroupedDecision(rest.options) ? /* @__PURE__ */ jsx54(GroupedDecisionList, __spreadProps(__spreadValues({}, rest), { renderDecisionList: renderDecisionList2 })) : renderDecisionList2(rest);
|
|
4155
4535
|
};
|
|
4156
4536
|
var FilteredDecisionList = (props) => {
|
|
4157
|
-
const { formatMessage } =
|
|
4158
|
-
const [query, setQuery] =
|
|
4537
|
+
const { formatMessage } = useIntl11();
|
|
4538
|
+
const [query, setQuery] = useState12("");
|
|
4159
4539
|
const { control, options, renderDecisionList: renderDecisionList2 } = props;
|
|
4160
4540
|
const filteredOptions = (query == null ? void 0 : query.length) > 0 ? filterAndSortItems(options, query) : options;
|
|
4161
4541
|
const isGrouped = isGroupedDecision(options);
|
|
4162
|
-
return /* @__PURE__ */
|
|
4163
|
-
/* @__PURE__ */
|
|
4542
|
+
return /* @__PURE__ */ jsxs12(Fragment5, { children: [
|
|
4543
|
+
/* @__PURE__ */ jsx54(
|
|
4164
4544
|
SearchInput,
|
|
4165
4545
|
{
|
|
4166
4546
|
placeholder: formatMessage(filter_messages_default.placeholder),
|
|
@@ -4172,25 +4552,25 @@ var FilteredDecisionList = (props) => {
|
|
|
4172
4552
|
}
|
|
4173
4553
|
}
|
|
4174
4554
|
),
|
|
4175
|
-
isGrouped && query.length === 0 ? /* @__PURE__ */
|
|
4176
|
-
query.length > 0 && /* @__PURE__ */
|
|
4555
|
+
isGrouped && query.length === 0 ? /* @__PURE__ */ jsx54(GroupedDecisionList, __spreadValues({}, props)) : /* @__PURE__ */ jsxs12(Fragment5, { children: [
|
|
4556
|
+
query.length > 0 && /* @__PURE__ */ jsx54(Header3, { as: "h2", title: formatMessage(filter_messages_default.results), className: "m-t-4" }),
|
|
4177
4557
|
filteredOptions.length > 0 ? renderDecisionList2({
|
|
4178
4558
|
control,
|
|
4179
4559
|
className: query.length === 0 ? "m-t-3" : "",
|
|
4180
4560
|
options: filteredOptions
|
|
4181
|
-
}) : /* @__PURE__ */
|
|
4561
|
+
}) : /* @__PURE__ */ jsx54("p", { children: formatMessage(filter_messages_default.noResults) })
|
|
4182
4562
|
] })
|
|
4183
4563
|
] });
|
|
4184
4564
|
};
|
|
4185
4565
|
|
|
4186
4566
|
// ../renderers/src/DecisionRenderer/DecisionRenderer.tsx
|
|
4187
|
-
import { Fragment as Fragment6, jsx as
|
|
4567
|
+
import { Fragment as Fragment6, jsx as jsx55 } from "react/jsx-runtime";
|
|
4188
4568
|
var DecisionRenderer = {
|
|
4189
4569
|
canRenderType: "decision",
|
|
4190
|
-
render: (props) => /* @__PURE__ */
|
|
4570
|
+
render: (props) => /* @__PURE__ */ jsx55(DecisionWrapper, __spreadProps(__spreadValues({}, props), { renderDecisionList }))
|
|
4191
4571
|
};
|
|
4192
4572
|
var renderDecisionList = ({ options, control }) => {
|
|
4193
|
-
return /* @__PURE__ */
|
|
4573
|
+
return /* @__PURE__ */ jsx55(Fragment6, { children: options.map((_a) => {
|
|
4194
4574
|
var _b = _a, { onClick } = _b, rest = __objRest(_b, ["onClick"]);
|
|
4195
4575
|
const {
|
|
4196
4576
|
description,
|
|
@@ -4203,7 +4583,7 @@ var renderDecisionList = ({ options, control }) => {
|
|
|
4203
4583
|
supportingValues,
|
|
4204
4584
|
tags
|
|
4205
4585
|
} = rest;
|
|
4206
|
-
return /* @__PURE__ */
|
|
4586
|
+
return /* @__PURE__ */ jsx55(
|
|
4207
4587
|
ListItem7,
|
|
4208
4588
|
{
|
|
4209
4589
|
title: itemTitle,
|
|
@@ -4215,7 +4595,7 @@ var renderDecisionList = ({ options, control }) => {
|
|
|
4215
4595
|
media: getMedia(media, shouldUseAvatar(control, tags)),
|
|
4216
4596
|
prompt: getInlineAlert(inlineAlert),
|
|
4217
4597
|
additionalInfo: additionalText ? getAdditionalInfo({ text: additionalText }) : void 0,
|
|
4218
|
-
control: /* @__PURE__ */
|
|
4598
|
+
control: /* @__PURE__ */ jsx55(ListItem7.Navigation, __spreadValues({}, getAnchorProps()))
|
|
4219
4599
|
},
|
|
4220
4600
|
JSON.stringify(rest)
|
|
4221
4601
|
);
|
|
@@ -4224,9 +4604,9 @@ var renderDecisionList = ({ options, control }) => {
|
|
|
4224
4604
|
var DecisionRenderer_default = DecisionRenderer;
|
|
4225
4605
|
|
|
4226
4606
|
// ../renderers/src/DividerRenderer.tsx
|
|
4227
|
-
var
|
|
4607
|
+
var import_classnames15 = __toESM(require_classnames());
|
|
4228
4608
|
import { Divider } from "@transferwise/components";
|
|
4229
|
-
import { jsx as
|
|
4609
|
+
import { jsx as jsx56 } from "react/jsx-runtime";
|
|
4230
4610
|
var mapControlToLevel = (control) => {
|
|
4231
4611
|
switch (control) {
|
|
4232
4612
|
case "section":
|
|
@@ -4239,10 +4619,10 @@ var mapControlToLevel = (control) => {
|
|
|
4239
4619
|
};
|
|
4240
4620
|
var DividerRenderer = {
|
|
4241
4621
|
canRenderType: "divider",
|
|
4242
|
-
render: ({ margin, control, tags }) => /* @__PURE__ */
|
|
4622
|
+
render: ({ margin, control, tags }) => /* @__PURE__ */ jsx56(
|
|
4243
4623
|
Divider,
|
|
4244
4624
|
{
|
|
4245
|
-
className: (0,
|
|
4625
|
+
className: (0, import_classnames15.default)(
|
|
4246
4626
|
"m-t-0",
|
|
4247
4627
|
"d-block",
|
|
4248
4628
|
getMargin(margin),
|
|
@@ -4255,7 +4635,7 @@ var DividerRenderer = {
|
|
|
4255
4635
|
var DividerRenderer_default = DividerRenderer;
|
|
4256
4636
|
|
|
4257
4637
|
// ../renderers/src/ExternalConfirmationRenderer.tsx
|
|
4258
|
-
import { Button as
|
|
4638
|
+
import { Button as Button6, Markdown as Markdown3, Modal } from "@transferwise/components";
|
|
4259
4639
|
|
|
4260
4640
|
// ../renderers/src/messages/external-confirmation.messages.ts
|
|
4261
4641
|
import { defineMessages as defineMessages9 } from "react-intl";
|
|
@@ -4283,9 +4663,9 @@ var external_confirmation_messages_default = defineMessages9({
|
|
|
4283
4663
|
});
|
|
4284
4664
|
|
|
4285
4665
|
// ../renderers/src/ExternalConfirmationRenderer.tsx
|
|
4286
|
-
import { useIntl as
|
|
4666
|
+
import { useIntl as useIntl12 } from "react-intl";
|
|
4287
4667
|
import { useEffect as useEffect9 } from "react";
|
|
4288
|
-
import { Fragment as Fragment7, jsx as
|
|
4668
|
+
import { Fragment as Fragment7, jsx as jsx57, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
4289
4669
|
var ExternalConfirmationRenderer = {
|
|
4290
4670
|
canRenderType: "external-confirmation",
|
|
4291
4671
|
render: ExternalConfirmationRendererComponent
|
|
@@ -4298,20 +4678,20 @@ function ExternalConfirmationRendererComponent({
|
|
|
4298
4678
|
control,
|
|
4299
4679
|
tags
|
|
4300
4680
|
}) {
|
|
4301
|
-
const { formatMessage } =
|
|
4681
|
+
const { formatMessage } = useIntl12();
|
|
4302
4682
|
useEffect9(() => {
|
|
4303
4683
|
open();
|
|
4304
4684
|
}, []);
|
|
4305
|
-
return /* @__PURE__ */
|
|
4685
|
+
return /* @__PURE__ */ jsx57(
|
|
4306
4686
|
Modal,
|
|
4307
4687
|
{
|
|
4308
4688
|
open: visible,
|
|
4309
4689
|
title: formatMessage(external_confirmation_messages_default.title),
|
|
4310
|
-
body: /* @__PURE__ */
|
|
4311
|
-
/* @__PURE__ */
|
|
4312
|
-
/* @__PURE__ */
|
|
4313
|
-
/* @__PURE__ */
|
|
4314
|
-
|
|
4690
|
+
body: /* @__PURE__ */ jsxs13(Fragment7, { children: [
|
|
4691
|
+
/* @__PURE__ */ jsx57(Markdown3, { config: { link: { target: "_blank" } }, className: "text-xs-center m-b-5", children: formatMessage(external_confirmation_messages_default.description, { origin: getOrigin(url) }) }),
|
|
4692
|
+
/* @__PURE__ */ jsx57("div", { className: "df-box-renderer-fixed-width", children: /* @__PURE__ */ jsxs13("div", { className: "df-box-renderer-width-lg", children: [
|
|
4693
|
+
/* @__PURE__ */ jsx57(
|
|
4694
|
+
Button6,
|
|
4315
4695
|
{
|
|
4316
4696
|
v2: true,
|
|
4317
4697
|
block: true,
|
|
@@ -4324,7 +4704,7 @@ function ExternalConfirmationRendererComponent({
|
|
|
4324
4704
|
children: formatMessage(external_confirmation_messages_default.open)
|
|
4325
4705
|
}
|
|
4326
4706
|
),
|
|
4327
|
-
/* @__PURE__ */
|
|
4707
|
+
/* @__PURE__ */ jsx57(Button6, { v2: true, block: true, className: "m-b-2", priority: "tertiary", size: "md", onClick: onCancel, children: formatMessage(external_confirmation_messages_default.cancel) })
|
|
4328
4708
|
] }) })
|
|
4329
4709
|
] }),
|
|
4330
4710
|
className: controlAndTagsToCSSClass({ control, tags }),
|
|
@@ -4342,51 +4722,51 @@ function getOrigin(url) {
|
|
|
4342
4722
|
var ExternalConfirmationRenderer_default = ExternalConfirmationRenderer;
|
|
4343
4723
|
|
|
4344
4724
|
// ../renderers/src/FormRenderer.tsx
|
|
4345
|
-
var
|
|
4346
|
-
import { jsx as
|
|
4725
|
+
var import_classnames16 = __toESM(require_classnames());
|
|
4726
|
+
import { jsx as jsx58 } from "react/jsx-runtime";
|
|
4347
4727
|
var FormRenderer = {
|
|
4348
4728
|
canRenderType: "form",
|
|
4349
|
-
render: ({ children, margin, control, tags }) => /* @__PURE__ */
|
|
4729
|
+
render: ({ children, margin, control, tags }) => /* @__PURE__ */ jsx58("div", { className: (0, import_classnames16.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children })
|
|
4350
4730
|
};
|
|
4351
4731
|
var FormRenderer_default = FormRenderer;
|
|
4352
4732
|
|
|
4353
4733
|
// ../renderers/src/FormSectionRenderer.tsx
|
|
4354
4734
|
import { Header as Header4 } from "@transferwise/components";
|
|
4355
|
-
import { jsx as
|
|
4735
|
+
import { jsx as jsx59, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
4356
4736
|
var FormSectionRenderer = {
|
|
4357
4737
|
canRenderType: "form-section",
|
|
4358
|
-
render: ({ title, description, children, control, tags }) => /* @__PURE__ */
|
|
4359
|
-
title && /* @__PURE__ */
|
|
4738
|
+
render: ({ title, description, children, control, tags }) => /* @__PURE__ */ jsxs14("fieldset", { className: controlAndTagsToCSSClass({ control, tags }), children: [
|
|
4739
|
+
title && /* @__PURE__ */ jsx59(
|
|
4360
4740
|
Header4,
|
|
4361
4741
|
{
|
|
4362
4742
|
as: "h2",
|
|
4363
4743
|
title
|
|
4364
4744
|
}
|
|
4365
4745
|
),
|
|
4366
|
-
description && /* @__PURE__ */
|
|
4746
|
+
description && /* @__PURE__ */ jsx59("p", { children: description }),
|
|
4367
4747
|
children
|
|
4368
4748
|
] })
|
|
4369
4749
|
};
|
|
4370
4750
|
var FormSectionRenderer_default = FormSectionRenderer;
|
|
4371
4751
|
|
|
4372
4752
|
// ../renderers/src/HeadingRenderer.tsx
|
|
4373
|
-
var
|
|
4753
|
+
var import_classnames17 = __toESM(require_classnames());
|
|
4374
4754
|
import { Display, Title } from "@transferwise/components";
|
|
4375
|
-
import { jsx as
|
|
4755
|
+
import { jsx as jsx60 } from "react/jsx-runtime";
|
|
4376
4756
|
var HeadingRenderer = {
|
|
4377
4757
|
canRenderType: "heading",
|
|
4378
4758
|
render: Heading
|
|
4379
4759
|
};
|
|
4380
4760
|
function Heading(props) {
|
|
4381
4761
|
const { text, size, align, margin, control } = props;
|
|
4382
|
-
const className = (0,
|
|
4762
|
+
const className = (0, import_classnames17.default)(
|
|
4383
4763
|
getTextAlignmentAndMargin({ align, margin }),
|
|
4384
4764
|
controlAndTagsToCSSClass(props)
|
|
4385
4765
|
);
|
|
4386
|
-
return control === "display" ? /* @__PURE__ */
|
|
4766
|
+
return control === "display" ? /* @__PURE__ */ jsx60(DisplayHeading, { size, text, className }) : /* @__PURE__ */ jsx60(StandardHeading, { size, text, className });
|
|
4387
4767
|
}
|
|
4388
4768
|
function DisplayHeading({ size, text, className }) {
|
|
4389
|
-
return /* @__PURE__ */
|
|
4769
|
+
return /* @__PURE__ */ jsx60(Display, { type: getDisplayType(size), className, children: text });
|
|
4390
4770
|
}
|
|
4391
4771
|
var getDisplayType = (size) => {
|
|
4392
4772
|
switch (size) {
|
|
@@ -4402,7 +4782,7 @@ var getDisplayType = (size) => {
|
|
|
4402
4782
|
}
|
|
4403
4783
|
};
|
|
4404
4784
|
function StandardHeading({ size, text, className }) {
|
|
4405
|
-
return /* @__PURE__ */
|
|
4785
|
+
return /* @__PURE__ */ jsx60(Title, { type: getTitleTypeBySize(size), className, children: text });
|
|
4406
4786
|
}
|
|
4407
4787
|
var getTitleTypeBySize = (size) => {
|
|
4408
4788
|
var _a;
|
|
@@ -4418,9 +4798,9 @@ var getTitleTypeBySize = (size) => {
|
|
|
4418
4798
|
var HeadingRenderer_default = HeadingRenderer;
|
|
4419
4799
|
|
|
4420
4800
|
// ../renderers/src/ImageRenderer/UrlImage.tsx
|
|
4421
|
-
var
|
|
4801
|
+
var import_classnames18 = __toESM(require_classnames());
|
|
4422
4802
|
import { Image } from "@transferwise/components";
|
|
4423
|
-
import { useEffect as useEffect10, useState as
|
|
4803
|
+
import { useEffect as useEffect10, useState as useState13 } from "react";
|
|
4424
4804
|
|
|
4425
4805
|
// ../renderers/src/utils/api-utils.ts
|
|
4426
4806
|
function isRelativePath(url = "") {
|
|
@@ -4430,7 +4810,7 @@ function isRelativePath(url = "") {
|
|
|
4430
4810
|
}
|
|
4431
4811
|
|
|
4432
4812
|
// ../renderers/src/ImageRenderer/UrlImage.tsx
|
|
4433
|
-
import { jsx as
|
|
4813
|
+
import { jsx as jsx61 } from "react/jsx-runtime";
|
|
4434
4814
|
function UrlImage({
|
|
4435
4815
|
accessibilityDescription,
|
|
4436
4816
|
align,
|
|
@@ -4441,23 +4821,23 @@ function UrlImage({
|
|
|
4441
4821
|
uri,
|
|
4442
4822
|
httpClient
|
|
4443
4823
|
}) {
|
|
4444
|
-
const [imageSource, setImageSource] =
|
|
4824
|
+
const [imageSource, setImageSource] = useState13("");
|
|
4445
4825
|
useEffect10(() => {
|
|
4446
4826
|
if (!uri.startsWith("urn:")) {
|
|
4447
4827
|
void getImageSource(httpClient, uri).then(setImageSource);
|
|
4448
4828
|
}
|
|
4449
4829
|
}, [uri, httpClient]);
|
|
4450
|
-
return /* @__PURE__ */
|
|
4830
|
+
return /* @__PURE__ */ jsx61(
|
|
4451
4831
|
"div",
|
|
4452
4832
|
{
|
|
4453
|
-
className: (0,
|
|
4833
|
+
className: (0, import_classnames18.default)(
|
|
4454
4834
|
"df-image",
|
|
4455
4835
|
align,
|
|
4456
4836
|
size || "md",
|
|
4457
4837
|
getMargin(margin),
|
|
4458
4838
|
controlAndTagsToCSSClass({ control, tags })
|
|
4459
4839
|
),
|
|
4460
|
-
children: /* @__PURE__ */
|
|
4840
|
+
children: /* @__PURE__ */ jsx61(
|
|
4461
4841
|
Image,
|
|
4462
4842
|
{
|
|
4463
4843
|
className: "df-reserve-space",
|
|
@@ -4503,19 +4883,19 @@ var getImageSource = async (httpClient, imageUrl) => {
|
|
|
4503
4883
|
};
|
|
4504
4884
|
|
|
4505
4885
|
// ../renderers/src/ImageRenderer/ImageRenderer.tsx
|
|
4506
|
-
import { jsx as
|
|
4886
|
+
import { jsx as jsx62 } from "react/jsx-runtime";
|
|
4507
4887
|
var ImageRenderer = {
|
|
4508
4888
|
canRenderType: "image",
|
|
4509
|
-
render: (props) => isUrnImage(props.uri) ? /* @__PURE__ */
|
|
4889
|
+
render: (props) => isUrnImage(props.uri) ? /* @__PURE__ */ jsx62(UrnImage, __spreadValues({}, props)) : /* @__PURE__ */ jsx62(UrlImage, __spreadValues({}, props))
|
|
4510
4890
|
};
|
|
4511
4891
|
|
|
4512
4892
|
// ../renderers/src/ImageRenderer/index.tsx
|
|
4513
4893
|
var ImageRenderer_default = ImageRenderer;
|
|
4514
4894
|
|
|
4515
4895
|
// ../renderers/src/InstructionsRenderer.tsx
|
|
4516
|
-
var
|
|
4896
|
+
var import_classnames19 = __toESM(require_classnames());
|
|
4517
4897
|
import { Header as Header5, InstructionsList } from "@transferwise/components";
|
|
4518
|
-
import { jsx as
|
|
4898
|
+
import { jsx as jsx63, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
4519
4899
|
var doContext = ["positive", "neutral", "proposition"];
|
|
4520
4900
|
var dontContext = ["warning", "negative"];
|
|
4521
4901
|
var InstructionsRenderer = {
|
|
@@ -4523,16 +4903,16 @@ var InstructionsRenderer = {
|
|
|
4523
4903
|
render: ({ items, margin, title, control, tags }) => {
|
|
4524
4904
|
const dos = items.filter((item) => doContext.includes(item.context)).map(({ text }) => text);
|
|
4525
4905
|
const donts = items.filter((item) => dontContext.includes(item.context)).map(({ text }) => text);
|
|
4526
|
-
return /* @__PURE__ */
|
|
4527
|
-
title ? /* @__PURE__ */
|
|
4528
|
-
/* @__PURE__ */
|
|
4906
|
+
return /* @__PURE__ */ jsxs15("div", { className: (0, import_classnames19.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
4907
|
+
title ? /* @__PURE__ */ jsx63(Header5, { title }) : null,
|
|
4908
|
+
/* @__PURE__ */ jsx63(InstructionsList, { dos, donts })
|
|
4529
4909
|
] });
|
|
4530
4910
|
}
|
|
4531
4911
|
};
|
|
4532
4912
|
var InstructionsRenderer_default = InstructionsRenderer;
|
|
4533
4913
|
|
|
4534
4914
|
// ../renderers/src/IntegerInputRenderer.tsx
|
|
4535
|
-
import { Input as
|
|
4915
|
+
import { Input as Input3, InputGroup as InputGroup3 } from "@transferwise/components";
|
|
4536
4916
|
|
|
4537
4917
|
// ../renderers/src/utils/input-utils.ts
|
|
4538
4918
|
var onWheel = (event) => {
|
|
@@ -4557,7 +4937,7 @@ function pick(obj, ...keys) {
|
|
|
4557
4937
|
}
|
|
4558
4938
|
|
|
4559
4939
|
// ../renderers/src/IntegerInputRenderer.tsx
|
|
4560
|
-
import { jsx as
|
|
4940
|
+
import { jsx as jsx64 } from "react/jsx-runtime";
|
|
4561
4941
|
var IntegerInputRenderer = {
|
|
4562
4942
|
canRenderType: "input-integer",
|
|
4563
4943
|
render: (props) => {
|
|
@@ -4572,7 +4952,7 @@ var IntegerInputRenderer = {
|
|
|
4572
4952
|
"maximum",
|
|
4573
4953
|
"minimum"
|
|
4574
4954
|
);
|
|
4575
|
-
return /* @__PURE__ */
|
|
4955
|
+
return /* @__PURE__ */ jsx64(
|
|
4576
4956
|
FieldInput_default,
|
|
4577
4957
|
{
|
|
4578
4958
|
id,
|
|
@@ -4585,8 +4965,8 @@ var IntegerInputRenderer = {
|
|
|
4585
4965
|
features: props.features,
|
|
4586
4966
|
control: props.control,
|
|
4587
4967
|
tags: props.tags,
|
|
4588
|
-
children: /* @__PURE__ */
|
|
4589
|
-
|
|
4968
|
+
children: /* @__PURE__ */ jsx64(InputGroup3, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx64(
|
|
4969
|
+
Input3,
|
|
4590
4970
|
__spreadValues({
|
|
4591
4971
|
id,
|
|
4592
4972
|
name: id,
|
|
@@ -4608,13 +4988,13 @@ var IntegerInputRenderer = {
|
|
|
4608
4988
|
var IntegerInputRenderer_default = IntegerInputRenderer;
|
|
4609
4989
|
|
|
4610
4990
|
// ../renderers/src/ListRenderer.tsx
|
|
4611
|
-
var
|
|
4991
|
+
var import_classnames20 = __toESM(require_classnames());
|
|
4612
4992
|
import { ListItem as ListItem8 } from "@transferwise/components";
|
|
4613
4993
|
|
|
4614
4994
|
// ../renderers/src/components/Header.tsx
|
|
4615
4995
|
import { Header as DSHeader } from "@transferwise/components";
|
|
4616
|
-
import { jsx as
|
|
4617
|
-
var Header = ({ title, callToAction }) => (title || callToAction) && /* @__PURE__ */
|
|
4996
|
+
import { jsx as jsx65 } from "react/jsx-runtime";
|
|
4997
|
+
var Header = ({ title, callToAction }) => (title || callToAction) && /* @__PURE__ */ jsx65(DSHeader, { title: title != null ? title : "", action: getHeaderAction(callToAction) });
|
|
4618
4998
|
var getHeaderAction = (callToAction) => {
|
|
4619
4999
|
if (!callToAction) {
|
|
4620
5000
|
return void 0;
|
|
@@ -4626,11 +5006,11 @@ var getHeaderAction = (callToAction) => {
|
|
|
4626
5006
|
};
|
|
4627
5007
|
|
|
4628
5008
|
// ../renderers/src/ListRenderer.tsx
|
|
4629
|
-
import { jsx as
|
|
5009
|
+
import { jsx as jsx66, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
4630
5010
|
var ListRenderer = {
|
|
4631
5011
|
canRenderType: "list",
|
|
4632
|
-
render: ({ callToAction, control, margin, items, tags, title }) => /* @__PURE__ */
|
|
4633
|
-
/* @__PURE__ */
|
|
5012
|
+
render: ({ callToAction, control, margin, items, tags, title }) => /* @__PURE__ */ jsxs16("div", { className: (0, import_classnames20.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
5013
|
+
/* @__PURE__ */ jsx66(Header, { title, callToAction }),
|
|
4634
5014
|
items.map((item) => {
|
|
4635
5015
|
var _a, _b;
|
|
4636
5016
|
const {
|
|
@@ -4647,7 +5027,7 @@ var ListRenderer = {
|
|
|
4647
5027
|
ctaSecondary: (_a = itemTags == null ? void 0 : itemTags.includes("cta-secondary")) != null ? _a : false,
|
|
4648
5028
|
fullyInteractive: (_b = (tags == null ? void 0 : tags.includes("fully-interactive")) && (additionalInfo == null ? void 0 : additionalInfo.onClick) == null) != null ? _b : false
|
|
4649
5029
|
};
|
|
4650
|
-
return /* @__PURE__ */
|
|
5030
|
+
return /* @__PURE__ */ jsx66(
|
|
4651
5031
|
ListItem8,
|
|
4652
5032
|
{
|
|
4653
5033
|
title: itemTitle,
|
|
@@ -4667,17 +5047,17 @@ var ListRenderer = {
|
|
|
4667
5047
|
var ListRenderer_default = ListRenderer;
|
|
4668
5048
|
|
|
4669
5049
|
// ../renderers/src/LoadingIndicatorRenderer.tsx
|
|
4670
|
-
var
|
|
5050
|
+
var import_classnames21 = __toESM(require_classnames());
|
|
4671
5051
|
import { Loader } from "@transferwise/components";
|
|
4672
|
-
import { jsx as
|
|
5052
|
+
import { jsx as jsx67 } from "react/jsx-runtime";
|
|
4673
5053
|
var LoadingIndicatorRenderer = {
|
|
4674
5054
|
canRenderType: "loading-indicator",
|
|
4675
|
-
render: ({ size, margin, control, tags }) => /* @__PURE__ */
|
|
5055
|
+
render: ({ size, margin, control, tags }) => /* @__PURE__ */ jsx67(
|
|
4676
5056
|
Loader,
|
|
4677
5057
|
{
|
|
4678
5058
|
size,
|
|
4679
5059
|
classNames: {
|
|
4680
|
-
"tw-loader": (0,
|
|
5060
|
+
"tw-loader": (0, import_classnames21.default)(
|
|
4681
5061
|
"tw-loader",
|
|
4682
5062
|
"m-x-auto",
|
|
4683
5063
|
getMargin(margin),
|
|
@@ -4691,24 +5071,24 @@ var LoadingIndicatorRenderer = {
|
|
|
4691
5071
|
var LoadingIndicatorRenderer_default = LoadingIndicatorRenderer;
|
|
4692
5072
|
|
|
4693
5073
|
// ../renderers/src/MarkdownRenderer.tsx
|
|
4694
|
-
var
|
|
5074
|
+
var import_classnames22 = __toESM(require_classnames());
|
|
4695
5075
|
import { Markdown as Markdown4 } from "@transferwise/components";
|
|
4696
|
-
import { jsx as
|
|
5076
|
+
import { jsx as jsx68 } from "react/jsx-runtime";
|
|
4697
5077
|
var MarkdownRenderer = {
|
|
4698
5078
|
canRenderType: "markdown",
|
|
4699
5079
|
render: ({ content, align, margin, size, control, tags }) => {
|
|
4700
5080
|
const isLarge = !["xs", "sm"].includes(size);
|
|
4701
|
-
return /* @__PURE__ */
|
|
5081
|
+
return /* @__PURE__ */ jsx68(
|
|
4702
5082
|
"div",
|
|
4703
5083
|
{
|
|
4704
|
-
className: (0,
|
|
5084
|
+
className: (0, import_classnames22.default)(
|
|
4705
5085
|
getTextAlignmentAndMargin({ align, margin }),
|
|
4706
5086
|
controlAndTagsToCSSClass({ control, tags })
|
|
4707
5087
|
),
|
|
4708
|
-
children: /* @__PURE__ */
|
|
5088
|
+
children: /* @__PURE__ */ jsx68(
|
|
4709
5089
|
Markdown4,
|
|
4710
5090
|
{
|
|
4711
|
-
className: (0,
|
|
5091
|
+
className: (0, import_classnames22.default)("df-markdown", {
|
|
4712
5092
|
"np-text-body-large": isLarge,
|
|
4713
5093
|
"np-text-body-default": !isLarge
|
|
4714
5094
|
}),
|
|
@@ -4723,17 +5103,17 @@ var MarkdownRenderer = {
|
|
|
4723
5103
|
var MarkdownRenderer_default = MarkdownRenderer;
|
|
4724
5104
|
|
|
4725
5105
|
// ../renderers/src/MediaRenderer.tsx
|
|
4726
|
-
var
|
|
4727
|
-
import { jsx as
|
|
5106
|
+
var import_classnames23 = __toESM(require_classnames());
|
|
5107
|
+
import { jsx as jsx69 } from "react/jsx-runtime";
|
|
4728
5108
|
var MediaRenderer = {
|
|
4729
5109
|
canRenderType: "media",
|
|
4730
5110
|
render: (_a) => {
|
|
4731
5111
|
var _b = _a, { media } = _b, rest = __objRest(_b, ["media"]);
|
|
4732
5112
|
switch (media.type) {
|
|
4733
5113
|
case "avatar":
|
|
4734
|
-
return /* @__PURE__ */
|
|
5114
|
+
return /* @__PURE__ */ jsx69(AvatarMediaRendererComponent, __spreadValues({ media }, rest));
|
|
4735
5115
|
case "image":
|
|
4736
|
-
return /* @__PURE__ */
|
|
5116
|
+
return /* @__PURE__ */ jsx69(ImageMediaRendererComponent, __spreadValues({ media }, rest));
|
|
4737
5117
|
case "legacy":
|
|
4738
5118
|
return null;
|
|
4739
5119
|
}
|
|
@@ -4747,16 +5127,16 @@ var AvatarMediaRendererComponent = ({
|
|
|
4747
5127
|
control,
|
|
4748
5128
|
tags
|
|
4749
5129
|
}) => {
|
|
4750
|
-
return /* @__PURE__ */
|
|
5130
|
+
return /* @__PURE__ */ jsx69(
|
|
4751
5131
|
"div",
|
|
4752
5132
|
{
|
|
4753
|
-
className: (0,
|
|
5133
|
+
className: (0, import_classnames23.default)(
|
|
4754
5134
|
"df-media-layout-avatar",
|
|
4755
5135
|
align,
|
|
4756
5136
|
getMargin(margin),
|
|
4757
5137
|
controlAndTagsToCSSClass({ control, tags })
|
|
4758
5138
|
),
|
|
4759
|
-
children: /* @__PURE__ */
|
|
5139
|
+
children: /* @__PURE__ */ jsx69(Media, { media, size: mapAvatarMediaSize(size) })
|
|
4760
5140
|
}
|
|
4761
5141
|
);
|
|
4762
5142
|
};
|
|
@@ -4769,14 +5149,14 @@ var ImageMediaRendererComponent = (_a) => {
|
|
|
4769
5149
|
"size"
|
|
4770
5150
|
]);
|
|
4771
5151
|
var _a2, _b2;
|
|
4772
|
-
return isUrnImage(media.uri) ? /* @__PURE__ */
|
|
5152
|
+
return isUrnImage(media.uri) ? /* @__PURE__ */ jsx69(
|
|
4773
5153
|
UrnImage,
|
|
4774
5154
|
__spreadValues({
|
|
4775
5155
|
uri: media.uri,
|
|
4776
5156
|
size: (_a2 = media.size) != null ? _a2 : size,
|
|
4777
5157
|
accessibilityDescription: media.accessibilityDescription
|
|
4778
5158
|
}, rest)
|
|
4779
|
-
) : /* @__PURE__ */
|
|
5159
|
+
) : /* @__PURE__ */ jsx69(
|
|
4780
5160
|
UrlImage,
|
|
4781
5161
|
__spreadValues({
|
|
4782
5162
|
uri: media.uri,
|
|
@@ -4801,21 +5181,21 @@ var mapAvatarMediaSize = (size) => {
|
|
|
4801
5181
|
};
|
|
4802
5182
|
|
|
4803
5183
|
// ../renderers/src/ModalLayoutRenderer.tsx
|
|
4804
|
-
var
|
|
4805
|
-
import { Button as
|
|
4806
|
-
import { useState as
|
|
4807
|
-
import { jsx as
|
|
5184
|
+
var import_classnames24 = __toESM(require_classnames());
|
|
5185
|
+
import { Button as Button7, Modal as Modal2 } from "@transferwise/components";
|
|
5186
|
+
import { useState as useState14 } from "react";
|
|
5187
|
+
import { jsx as jsx70, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
4808
5188
|
var ModalLayoutRenderer = {
|
|
4809
5189
|
canRenderType: "modal-layout",
|
|
4810
|
-
render: (props) => /* @__PURE__ */
|
|
5190
|
+
render: (props) => /* @__PURE__ */ jsx70(DFModal, __spreadValues({}, props))
|
|
4811
5191
|
};
|
|
4812
5192
|
var ModalLayoutRenderer_default = ModalLayoutRenderer;
|
|
4813
5193
|
function DFModal({ content, margin, trigger, control, tags }) {
|
|
4814
|
-
const [visible, setVisible] =
|
|
5194
|
+
const [visible, setVisible] = useState14(false);
|
|
4815
5195
|
const { children, title } = content;
|
|
4816
|
-
return /* @__PURE__ */
|
|
4817
|
-
/* @__PURE__ */
|
|
4818
|
-
/* @__PURE__ */
|
|
5196
|
+
return /* @__PURE__ */ jsxs17("div", { className: (0, import_classnames24.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
5197
|
+
/* @__PURE__ */ jsx70(Button7, { v2: true, priority: "tertiary", block: true, onClick: () => setVisible(true), children: trigger.title }),
|
|
5198
|
+
/* @__PURE__ */ jsx70(
|
|
4819
5199
|
Modal2,
|
|
4820
5200
|
{
|
|
4821
5201
|
scroll: "content",
|
|
@@ -4831,11 +5211,11 @@ function DFModal({ content, margin, trigger, control, tags }) {
|
|
|
4831
5211
|
|
|
4832
5212
|
// ../renderers/src/ModalRenderer.tsx
|
|
4833
5213
|
import { Modal as Modal3 } from "@transferwise/components";
|
|
4834
|
-
import { jsx as
|
|
5214
|
+
import { jsx as jsx71 } from "react/jsx-runtime";
|
|
4835
5215
|
var ModalRenderer = {
|
|
4836
5216
|
canRenderType: "modal",
|
|
4837
5217
|
render: ({ title, children, open, onClose, control, tags }) => {
|
|
4838
|
-
return /* @__PURE__ */
|
|
5218
|
+
return /* @__PURE__ */ jsx71(
|
|
4839
5219
|
Modal3,
|
|
4840
5220
|
{
|
|
4841
5221
|
open,
|
|
@@ -4851,8 +5231,8 @@ var ModalRenderer = {
|
|
|
4851
5231
|
// ../renderers/src/MoneyInputRenderer.tsx
|
|
4852
5232
|
import { MoneyInput } from "@transferwise/components";
|
|
4853
5233
|
import { useEffect as useEffect11 } from "react";
|
|
4854
|
-
import { useIntl as
|
|
4855
|
-
import { jsx as
|
|
5234
|
+
import { useIntl as useIntl13 } from "react-intl";
|
|
5235
|
+
import { jsx as jsx72 } from "react/jsx-runtime";
|
|
4856
5236
|
var groupingTags2 = Object.keys(group_messages_default).filter((key) => key !== "all");
|
|
4857
5237
|
var MoneyInputRenderer = {
|
|
4858
5238
|
canRenderType: "money-input",
|
|
@@ -4881,8 +5261,8 @@ function MoneyInputRendererComponent(props) {
|
|
|
4881
5261
|
onCurrencyChange(0);
|
|
4882
5262
|
}
|
|
4883
5263
|
}, [selectedCurrencyIndex, onCurrencyChange, currencies.length]);
|
|
4884
|
-
const { formatMessage } =
|
|
4885
|
-
return /* @__PURE__ */
|
|
5264
|
+
const { formatMessage } = useIntl13();
|
|
5265
|
+
return /* @__PURE__ */ jsx72(
|
|
4886
5266
|
FieldInput_default,
|
|
4887
5267
|
{
|
|
4888
5268
|
id: uid,
|
|
@@ -4893,7 +5273,7 @@ function MoneyInputRendererComponent(props) {
|
|
|
4893
5273
|
features,
|
|
4894
5274
|
control,
|
|
4895
5275
|
tags,
|
|
4896
|
-
children: /* @__PURE__ */
|
|
5276
|
+
children: /* @__PURE__ */ jsx72(
|
|
4897
5277
|
MoneyInput,
|
|
4898
5278
|
{
|
|
4899
5279
|
amount: parseFloatOrNull(amountValue),
|
|
@@ -4956,8 +5336,8 @@ function assertCurrencyCodeIsString(currencyCode) {
|
|
|
4956
5336
|
|
|
4957
5337
|
// ../renderers/src/MultiSelectInputRenderer/InlineComponent.tsx
|
|
4958
5338
|
import { ListItem as ListItem9, SearchInput as SearchInput2 } from "@transferwise/components";
|
|
4959
|
-
import { useState as
|
|
4960
|
-
import { useIntl as
|
|
5339
|
+
import { useState as useState15 } from "react";
|
|
5340
|
+
import { useIntl as useIntl14 } from "react-intl";
|
|
4961
5341
|
|
|
4962
5342
|
// ../renderers/src/utils/items-with-index.ts
|
|
4963
5343
|
var zipWithIndex = (items) => items.map((item, index) => __spreadProps(__spreadValues({}, item), {
|
|
@@ -4965,7 +5345,7 @@ var zipWithIndex = (items) => items.map((item, index) => __spreadProps(__spreadV
|
|
|
4965
5345
|
}));
|
|
4966
5346
|
|
|
4967
5347
|
// ../renderers/src/MultiSelectInputRenderer/InlineComponent.tsx
|
|
4968
|
-
import { Fragment as Fragment8, jsx as
|
|
5348
|
+
import { Fragment as Fragment8, jsx as jsx73, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
4969
5349
|
function InlineComponent(props) {
|
|
4970
5350
|
const {
|
|
4971
5351
|
id,
|
|
@@ -4982,12 +5362,12 @@ function InlineComponent(props) {
|
|
|
4982
5362
|
onSelect
|
|
4983
5363
|
} = props;
|
|
4984
5364
|
const optionsWithIndex = zipWithIndex(options);
|
|
4985
|
-
const [query, setQuery] =
|
|
4986
|
-
const { formatMessage } =
|
|
5365
|
+
const [query, setQuery] = useState15("");
|
|
5366
|
+
const { formatMessage } = useIntl14();
|
|
4987
5367
|
const filtered = tags == null ? void 0 : tags.includes("filtered");
|
|
4988
5368
|
const filteredOptions = query ? filterAndSortItems(optionsWithIndex, filtered ? query : "") : optionsWithIndex;
|
|
4989
|
-
return /* @__PURE__ */
|
|
4990
|
-
filtered && /* @__PURE__ */
|
|
5369
|
+
return /* @__PURE__ */ jsxs18(Fragment8, { children: [
|
|
5370
|
+
filtered && /* @__PURE__ */ jsx73(
|
|
4991
5371
|
SearchInput2,
|
|
4992
5372
|
{
|
|
4993
5373
|
placeholder: formatMessage(filter_messages_default.placeholder),
|
|
@@ -5000,7 +5380,7 @@ function InlineComponent(props) {
|
|
|
5000
5380
|
}
|
|
5001
5381
|
}
|
|
5002
5382
|
),
|
|
5003
|
-
/* @__PURE__ */
|
|
5383
|
+
/* @__PURE__ */ jsx73(
|
|
5004
5384
|
FieldInput_default,
|
|
5005
5385
|
{
|
|
5006
5386
|
id,
|
|
@@ -5025,7 +5405,7 @@ function InlineComponent(props) {
|
|
|
5025
5405
|
childrenProps
|
|
5026
5406
|
} = option;
|
|
5027
5407
|
const key = (_a = childrenProps == null ? void 0 : childrenProps.uid) != null ? _a : index;
|
|
5028
|
-
return /* @__PURE__ */
|
|
5408
|
+
return /* @__PURE__ */ jsx73(
|
|
5029
5409
|
ListItem9,
|
|
5030
5410
|
{
|
|
5031
5411
|
title: itemTitle,
|
|
@@ -5034,9 +5414,9 @@ function InlineComponent(props) {
|
|
|
5034
5414
|
valueSubtitle: supportingValues == null ? void 0 : supportingValues.subvalue,
|
|
5035
5415
|
media: getMedia(media, false),
|
|
5036
5416
|
prompt: getInlineAlert(inlineAlert),
|
|
5037
|
-
additionalInfo: additionalText ? /* @__PURE__ */
|
|
5417
|
+
additionalInfo: additionalText ? /* @__PURE__ */ jsx73(ListItem9.AdditionalInfo, { children: additionalText }) : void 0,
|
|
5038
5418
|
disabled: disabled || optionDisabled,
|
|
5039
|
-
control: /* @__PURE__ */
|
|
5419
|
+
control: /* @__PURE__ */ jsx73(
|
|
5040
5420
|
ListItem9.Checkbox,
|
|
5041
5421
|
{
|
|
5042
5422
|
checked: selectedIndices.includes(index),
|
|
@@ -5057,8 +5437,8 @@ function InlineComponent(props) {
|
|
|
5057
5437
|
|
|
5058
5438
|
// ../renderers/src/MultiSelectInputRenderer/DefaultComponent.tsx
|
|
5059
5439
|
import { SelectInput, SelectInputOptionContent } from "@transferwise/components";
|
|
5060
|
-
import { useState as
|
|
5061
|
-
import { useIntl as
|
|
5440
|
+
import { useState as useState16 } from "react";
|
|
5441
|
+
import { useIntl as useIntl15 } from "react-intl";
|
|
5062
5442
|
|
|
5063
5443
|
// ../renderers/src/messages/multi-select.messages.ts
|
|
5064
5444
|
import { defineMessages as defineMessages10 } from "react-intl";
|
|
@@ -5071,10 +5451,10 @@ var multi_select_messages_default = defineMessages10({
|
|
|
5071
5451
|
});
|
|
5072
5452
|
|
|
5073
5453
|
// ../renderers/src/MultiSelectInputRenderer/DefaultComponent.tsx
|
|
5074
|
-
import { jsx as
|
|
5454
|
+
import { jsx as jsx74 } from "react/jsx-runtime";
|
|
5075
5455
|
function DefaultComponent(props) {
|
|
5076
|
-
const { formatMessage } =
|
|
5077
|
-
const [stagedIndices, setStagedIndices] =
|
|
5456
|
+
const { formatMessage } = useIntl15();
|
|
5457
|
+
const [stagedIndices, setStagedIndices] = useState16();
|
|
5078
5458
|
const {
|
|
5079
5459
|
id,
|
|
5080
5460
|
autoComplete,
|
|
@@ -5115,12 +5495,12 @@ function DefaultComponent(props) {
|
|
|
5115
5495
|
const contentProps = {
|
|
5116
5496
|
title: option.title,
|
|
5117
5497
|
description: option.description,
|
|
5118
|
-
icon: /* @__PURE__ */
|
|
5498
|
+
icon: /* @__PURE__ */ jsx74(OptionMedia, { media: option.media, preferAvatar: false })
|
|
5119
5499
|
};
|
|
5120
|
-
return /* @__PURE__ */
|
|
5500
|
+
return /* @__PURE__ */ jsx74(SelectInputOptionContent, __spreadValues({}, contentProps));
|
|
5121
5501
|
};
|
|
5122
5502
|
const extraProps = { autoComplete };
|
|
5123
|
-
return /* @__PURE__ */
|
|
5503
|
+
return /* @__PURE__ */ jsx74(
|
|
5124
5504
|
FieldInput_default,
|
|
5125
5505
|
{
|
|
5126
5506
|
id,
|
|
@@ -5131,7 +5511,7 @@ function DefaultComponent(props) {
|
|
|
5131
5511
|
features,
|
|
5132
5512
|
control,
|
|
5133
5513
|
tags,
|
|
5134
|
-
children: /* @__PURE__ */
|
|
5514
|
+
children: /* @__PURE__ */ jsx74(
|
|
5135
5515
|
SelectInput,
|
|
5136
5516
|
__spreadValues({
|
|
5137
5517
|
id,
|
|
@@ -5171,7 +5551,7 @@ function DefaultComponent(props) {
|
|
|
5171
5551
|
|
|
5172
5552
|
// ../renderers/src/MultiSelectInputRenderer/InlineCheckboxComponent.tsx
|
|
5173
5553
|
import { Checkbox as Checkbox2 } from "@transferwise/components";
|
|
5174
|
-
import { jsx as
|
|
5554
|
+
import { jsx as jsx75 } from "react/jsx-runtime";
|
|
5175
5555
|
function InlineCheckboxComponent(props) {
|
|
5176
5556
|
const {
|
|
5177
5557
|
id,
|
|
@@ -5187,7 +5567,7 @@ function InlineCheckboxComponent(props) {
|
|
|
5187
5567
|
tags,
|
|
5188
5568
|
onSelect
|
|
5189
5569
|
} = props;
|
|
5190
|
-
return /* @__PURE__ */
|
|
5570
|
+
return /* @__PURE__ */ jsx75(
|
|
5191
5571
|
FieldInput_default,
|
|
5192
5572
|
{
|
|
5193
5573
|
id,
|
|
@@ -5218,24 +5598,24 @@ function InlineCheckboxComponent(props) {
|
|
|
5218
5598
|
onSelect(newSelectedIndices);
|
|
5219
5599
|
}
|
|
5220
5600
|
};
|
|
5221
|
-
return /* @__PURE__ */
|
|
5601
|
+
return /* @__PURE__ */ jsx75(Checkbox2, __spreadProps(__spreadValues({}, checkboxProps), { className: "m-t-1" }), key);
|
|
5222
5602
|
})
|
|
5223
5603
|
}
|
|
5224
5604
|
);
|
|
5225
5605
|
}
|
|
5226
5606
|
|
|
5227
5607
|
// ../renderers/src/MultiSelectInputRenderer/MultiSelectInputRenderer.tsx
|
|
5228
|
-
import { jsx as
|
|
5608
|
+
import { jsx as jsx76 } from "react/jsx-runtime";
|
|
5229
5609
|
var MultiSelectInputRenderer = {
|
|
5230
5610
|
canRenderType: "input-multi-select",
|
|
5231
5611
|
render: (props) => {
|
|
5232
5612
|
switch (props.control) {
|
|
5233
5613
|
case "inline":
|
|
5234
|
-
return /* @__PURE__ */
|
|
5614
|
+
return /* @__PURE__ */ jsx76(InlineComponent, __spreadValues({}, props));
|
|
5235
5615
|
case "inline-checkbox-group":
|
|
5236
|
-
return /* @__PURE__ */
|
|
5616
|
+
return /* @__PURE__ */ jsx76(InlineCheckboxComponent, __spreadValues({}, props));
|
|
5237
5617
|
default:
|
|
5238
|
-
return /* @__PURE__ */
|
|
5618
|
+
return /* @__PURE__ */ jsx76(DefaultComponent, __spreadValues({}, props));
|
|
5239
5619
|
}
|
|
5240
5620
|
}
|
|
5241
5621
|
};
|
|
@@ -5245,8 +5625,8 @@ import { Status, UploadInput } from "@transferwise/components";
|
|
|
5245
5625
|
|
|
5246
5626
|
// ../renderers/src/components/UploadFieldInput.tsx
|
|
5247
5627
|
import { InlineAlert as InlineAlert2 } from "@transferwise/components";
|
|
5248
|
-
var
|
|
5249
|
-
import { jsx as
|
|
5628
|
+
var import_classnames25 = __toESM(require_classnames());
|
|
5629
|
+
import { jsx as jsx77, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
5250
5630
|
function UploadFieldInput({
|
|
5251
5631
|
id,
|
|
5252
5632
|
children,
|
|
@@ -5258,14 +5638,14 @@ function UploadFieldInput({
|
|
|
5258
5638
|
control,
|
|
5259
5639
|
tags
|
|
5260
5640
|
}) {
|
|
5261
|
-
const labelContent = label && help ? /* @__PURE__ */
|
|
5641
|
+
const labelContent = label && help ? /* @__PURE__ */ jsx77(LabelContentWithHelp, { text: label, help }) : label;
|
|
5262
5642
|
const descriptionId = description ? `${id}-description` : void 0;
|
|
5263
5643
|
const { ref } = useScrollToError(validation, features);
|
|
5264
|
-
return /* @__PURE__ */
|
|
5644
|
+
return /* @__PURE__ */ jsxs19(
|
|
5265
5645
|
"div",
|
|
5266
5646
|
{
|
|
5267
5647
|
ref,
|
|
5268
|
-
className: (0,
|
|
5648
|
+
className: (0, import_classnames25.default)(
|
|
5269
5649
|
"form-group d-block",
|
|
5270
5650
|
{
|
|
5271
5651
|
"has-error": (validation == null ? void 0 : validation.status) === "invalid"
|
|
@@ -5273,9 +5653,9 @@ function UploadFieldInput({
|
|
|
5273
5653
|
controlAndTagsToCSSClass({ control, tags })
|
|
5274
5654
|
),
|
|
5275
5655
|
children: [
|
|
5276
|
-
/* @__PURE__ */
|
|
5656
|
+
/* @__PURE__ */ jsx77("label", { htmlFor: id, className: "control-label", children: labelContent }),
|
|
5277
5657
|
children,
|
|
5278
|
-
(validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */
|
|
5658
|
+
(validation == null ? void 0 : validation.status) === "invalid" && /* @__PURE__ */ jsx77(InlineAlert2, { type: "negative", id: descriptionId, children: validation.message })
|
|
5279
5659
|
]
|
|
5280
5660
|
}
|
|
5281
5661
|
);
|
|
@@ -5310,7 +5690,7 @@ var getSizeLimit = (maxSize) => {
|
|
|
5310
5690
|
};
|
|
5311
5691
|
|
|
5312
5692
|
// ../renderers/src/MultiUploadInputRenderer.tsx
|
|
5313
|
-
import { jsx as
|
|
5693
|
+
import { jsx as jsx78 } from "react/jsx-runtime";
|
|
5314
5694
|
var MultiUploadInputRenderer = {
|
|
5315
5695
|
canRenderType: "input-upload-multi",
|
|
5316
5696
|
render: (props) => {
|
|
@@ -5338,7 +5718,7 @@ var MultiUploadInputRenderer = {
|
|
|
5338
5718
|
};
|
|
5339
5719
|
const onDeleteFile = async (fileId) => onRemoveFile(value.findIndex((file) => file.id === fileId));
|
|
5340
5720
|
const descriptionId = description ? `${id}-description` : void 0;
|
|
5341
|
-
return /* @__PURE__ */
|
|
5721
|
+
return /* @__PURE__ */ jsx78(
|
|
5342
5722
|
UploadFieldInput_default,
|
|
5343
5723
|
{
|
|
5344
5724
|
id,
|
|
@@ -5349,7 +5729,7 @@ var MultiUploadInputRenderer = {
|
|
|
5349
5729
|
features,
|
|
5350
5730
|
control,
|
|
5351
5731
|
tags,
|
|
5352
|
-
children: /* @__PURE__ */
|
|
5732
|
+
children: /* @__PURE__ */ jsx78(
|
|
5353
5733
|
UploadInput,
|
|
5354
5734
|
{
|
|
5355
5735
|
id,
|
|
@@ -5377,8 +5757,8 @@ var MultiUploadInputRenderer = {
|
|
|
5377
5757
|
var MultiUploadInputRenderer_default = MultiUploadInputRenderer;
|
|
5378
5758
|
|
|
5379
5759
|
// ../renderers/src/NumberInputRenderer.tsx
|
|
5380
|
-
import { Input as
|
|
5381
|
-
import { jsx as
|
|
5760
|
+
import { Input as Input4, InputGroup as InputGroup4 } from "@transferwise/components";
|
|
5761
|
+
import { jsx as jsx79 } from "react/jsx-runtime";
|
|
5382
5762
|
var NumberInputRenderer = {
|
|
5383
5763
|
canRenderType: "input-number",
|
|
5384
5764
|
render: (props) => {
|
|
@@ -5392,7 +5772,7 @@ var NumberInputRenderer = {
|
|
|
5392
5772
|
"maximum",
|
|
5393
5773
|
"minimum"
|
|
5394
5774
|
);
|
|
5395
|
-
return /* @__PURE__ */
|
|
5775
|
+
return /* @__PURE__ */ jsx79(
|
|
5396
5776
|
FieldInput_default,
|
|
5397
5777
|
{
|
|
5398
5778
|
id,
|
|
@@ -5405,8 +5785,8 @@ var NumberInputRenderer = {
|
|
|
5405
5785
|
features: props.features,
|
|
5406
5786
|
control: props.control,
|
|
5407
5787
|
tags: props.tags,
|
|
5408
|
-
children: /* @__PURE__ */
|
|
5409
|
-
|
|
5788
|
+
children: /* @__PURE__ */ jsx79(InputGroup4, { addonStart: getInputGroupAddonStart(media), children: /* @__PURE__ */ jsx79(
|
|
5789
|
+
Input4,
|
|
5410
5790
|
__spreadValues({
|
|
5411
5791
|
id,
|
|
5412
5792
|
name: id,
|
|
@@ -5426,9 +5806,9 @@ var NumberInputRenderer = {
|
|
|
5426
5806
|
var NumberInputRenderer_default = NumberInputRenderer;
|
|
5427
5807
|
|
|
5428
5808
|
// ../renderers/src/ParagraphRenderer.tsx
|
|
5429
|
-
var
|
|
5430
|
-
import { Button as
|
|
5431
|
-
import { useIntl as
|
|
5809
|
+
var import_classnames26 = __toESM(require_classnames());
|
|
5810
|
+
import { Button as Button8, Input as Input5 } from "@transferwise/components";
|
|
5811
|
+
import { useIntl as useIntl16 } from "react-intl";
|
|
5432
5812
|
|
|
5433
5813
|
// ../renderers/src/hooks/useSnackBarIfAvailable.ts
|
|
5434
5814
|
import { SnackbarContext } from "@transferwise/components";
|
|
@@ -5455,18 +5835,18 @@ var paragraph_messages_default = defineMessages11({
|
|
|
5455
5835
|
});
|
|
5456
5836
|
|
|
5457
5837
|
// ../renderers/src/ParagraphRenderer.tsx
|
|
5458
|
-
import { jsx as
|
|
5838
|
+
import { jsx as jsx80, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
5459
5839
|
var ParagraphRenderer = {
|
|
5460
5840
|
canRenderType: "paragraph",
|
|
5461
|
-
render: (props) => /* @__PURE__ */
|
|
5841
|
+
render: (props) => /* @__PURE__ */ jsx80(Paragraph, __spreadValues({}, props))
|
|
5462
5842
|
};
|
|
5463
5843
|
function Paragraph(props) {
|
|
5464
5844
|
const { align, control, margin, size, text } = props;
|
|
5465
|
-
const className = (0,
|
|
5845
|
+
const className = (0, import_classnames26.default)(
|
|
5466
5846
|
getTextAlignmentAndMargin({ align, margin }),
|
|
5467
5847
|
controlAndTagsToCSSClass(props)
|
|
5468
5848
|
);
|
|
5469
|
-
return control === "copyable" ? /* @__PURE__ */
|
|
5849
|
+
return control === "copyable" ? /* @__PURE__ */ jsx80(CopyableParagraph, { className, align, text }) : /* @__PURE__ */ jsx80(
|
|
5470
5850
|
"p",
|
|
5471
5851
|
{
|
|
5472
5852
|
className: `${["xs", "sm"].includes(size) ? "np-text-body-default" : "np-text-body-large"} ${className}`,
|
|
@@ -5479,41 +5859,41 @@ function CopyableParagraph({
|
|
|
5479
5859
|
align,
|
|
5480
5860
|
className
|
|
5481
5861
|
}) {
|
|
5482
|
-
const { formatMessage } =
|
|
5862
|
+
const { formatMessage } = useIntl16();
|
|
5483
5863
|
const createSnackbar = useSnackBarIfAvailable();
|
|
5484
5864
|
const copy = () => {
|
|
5485
5865
|
navigator.clipboard.writeText(text).then(() => createSnackbar({ text: formatMessage(paragraph_messages_default.copied) })).catch(() => {
|
|
5486
5866
|
});
|
|
5487
5867
|
};
|
|
5488
5868
|
const inputAlignmentClasses = getTextAlignmentAndMargin({ align, margin: "sm" });
|
|
5489
|
-
return /* @__PURE__ */
|
|
5490
|
-
/* @__PURE__ */
|
|
5491
|
-
|
|
5869
|
+
return /* @__PURE__ */ jsxs20("div", { className, children: [
|
|
5870
|
+
/* @__PURE__ */ jsx80(
|
|
5871
|
+
Input5,
|
|
5492
5872
|
{
|
|
5493
5873
|
type: "text",
|
|
5494
5874
|
value: text,
|
|
5495
5875
|
readOnly: true,
|
|
5496
|
-
className: (0,
|
|
5876
|
+
className: (0, import_classnames26.default)("text-ellipsis", inputAlignmentClasses)
|
|
5497
5877
|
}
|
|
5498
5878
|
),
|
|
5499
|
-
/* @__PURE__ */
|
|
5879
|
+
/* @__PURE__ */ jsx80(Button8, { v2: true, block: true, onClick: copy, children: formatMessage(paragraph_messages_default.copy) })
|
|
5500
5880
|
] });
|
|
5501
5881
|
}
|
|
5502
5882
|
var ParagraphRenderer_default = ParagraphRenderer;
|
|
5503
5883
|
|
|
5504
5884
|
// ../renderers/src/ProgressRenderer.tsx
|
|
5505
|
-
var
|
|
5885
|
+
var import_classnames27 = __toESM(require_classnames());
|
|
5506
5886
|
import { ProgressBar } from "@transferwise/components";
|
|
5507
|
-
import { jsx as
|
|
5887
|
+
import { jsx as jsx81 } from "react/jsx-runtime";
|
|
5508
5888
|
var ProgressRenderer = {
|
|
5509
5889
|
canRenderType: "progress",
|
|
5510
5890
|
render: ({ uid, title, help, progress, progressText, margin, description, control, tags }) => {
|
|
5511
|
-
return /* @__PURE__ */
|
|
5891
|
+
return /* @__PURE__ */ jsx81(
|
|
5512
5892
|
ProgressBar,
|
|
5513
5893
|
{
|
|
5514
5894
|
id: uid,
|
|
5515
|
-
className: (0,
|
|
5516
|
-
title: title && help ? /* @__PURE__ */
|
|
5895
|
+
className: (0, import_classnames27.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })),
|
|
5896
|
+
title: title && help ? /* @__PURE__ */ jsx81(LabelContentWithHelp, { text: title, help }) : title,
|
|
5517
5897
|
description,
|
|
5518
5898
|
progress: {
|
|
5519
5899
|
max: 1,
|
|
@@ -5526,11 +5906,11 @@ var ProgressRenderer = {
|
|
|
5526
5906
|
};
|
|
5527
5907
|
|
|
5528
5908
|
// ../renderers/src/RepeatableRenderer.tsx
|
|
5529
|
-
var
|
|
5530
|
-
import { Button as
|
|
5909
|
+
var import_classnames28 = __toESM(require_classnames());
|
|
5910
|
+
import { Button as Button9, Header as Header6, InlineAlert as InlineAlert3, Modal as Modal4, NavigationOption } from "@transferwise/components";
|
|
5531
5911
|
import { Plus } from "@transferwise/icons";
|
|
5532
|
-
import { useState as
|
|
5533
|
-
import { useIntl as
|
|
5912
|
+
import { useState as useState17 } from "react";
|
|
5913
|
+
import { useIntl as useIntl17 } from "react-intl";
|
|
5534
5914
|
|
|
5535
5915
|
// ../renderers/src/messages/repeatable.messages.ts
|
|
5536
5916
|
import { defineMessages as defineMessages12 } from "react-intl";
|
|
@@ -5558,10 +5938,10 @@ var repeatable_messages_default = defineMessages12({
|
|
|
5558
5938
|
});
|
|
5559
5939
|
|
|
5560
5940
|
// ../renderers/src/RepeatableRenderer.tsx
|
|
5561
|
-
import { Fragment as Fragment9, jsx as
|
|
5941
|
+
import { Fragment as Fragment9, jsx as jsx82, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
5562
5942
|
var RepeatableRenderer = {
|
|
5563
5943
|
canRenderType: "repeatable",
|
|
5564
|
-
render: (props) => /* @__PURE__ */
|
|
5944
|
+
render: (props) => /* @__PURE__ */ jsx82(Repeatable, __spreadValues({}, props))
|
|
5565
5945
|
};
|
|
5566
5946
|
function Repeatable(props) {
|
|
5567
5947
|
const {
|
|
@@ -5578,8 +5958,8 @@ function Repeatable(props) {
|
|
|
5578
5958
|
onSave,
|
|
5579
5959
|
onRemove
|
|
5580
5960
|
} = props;
|
|
5581
|
-
const { formatMessage } =
|
|
5582
|
-
const [openModalType, setOpenModalType] =
|
|
5961
|
+
const { formatMessage } = useIntl17();
|
|
5962
|
+
const [openModalType, setOpenModalType] = useState17(null);
|
|
5583
5963
|
const { ref } = useScrollToError(validationState, features);
|
|
5584
5964
|
const onAddItem = () => {
|
|
5585
5965
|
onAdd();
|
|
@@ -5602,43 +5982,43 @@ function Repeatable(props) {
|
|
|
5602
5982
|
const onCancelEdit = () => {
|
|
5603
5983
|
setOpenModalType(null);
|
|
5604
5984
|
};
|
|
5605
|
-
return /* @__PURE__ */
|
|
5606
|
-
/* @__PURE__ */
|
|
5607
|
-
title && /* @__PURE__ */
|
|
5608
|
-
description && /* @__PURE__ */
|
|
5609
|
-
/* @__PURE__ */
|
|
5985
|
+
return /* @__PURE__ */ jsxs21(Fragment9, { children: [
|
|
5986
|
+
/* @__PURE__ */ jsxs21("div", { ref, className: controlAndTagsToCSSClass(props), children: [
|
|
5987
|
+
title && /* @__PURE__ */ jsx82(Header6, { title }),
|
|
5988
|
+
description && /* @__PURE__ */ jsx82("p", { children: description }),
|
|
5989
|
+
/* @__PURE__ */ jsxs21(
|
|
5610
5990
|
"div",
|
|
5611
5991
|
{
|
|
5612
|
-
className: (0,
|
|
5992
|
+
className: (0, import_classnames28.default)("form-group", {
|
|
5613
5993
|
"has-error": (validationState == null ? void 0 : validationState.status) === "invalid"
|
|
5614
5994
|
}),
|
|
5615
5995
|
children: [
|
|
5616
|
-
items == null ? void 0 : items.map((item, index) => /* @__PURE__ */
|
|
5617
|
-
/* @__PURE__ */
|
|
5996
|
+
items == null ? void 0 : items.map((item, index) => /* @__PURE__ */ jsx82(ItemSummaryOption, { item, onClick: () => onEditItem(index) }, item.id)),
|
|
5997
|
+
/* @__PURE__ */ jsx82(
|
|
5618
5998
|
NavigationOption,
|
|
5619
5999
|
{
|
|
5620
|
-
media: /* @__PURE__ */
|
|
6000
|
+
media: /* @__PURE__ */ jsx82(Plus, {}),
|
|
5621
6001
|
title: addItemTitle || formatMessage(repeatable_messages_default.addItemTitle),
|
|
5622
6002
|
showMediaAtAllSizes: true,
|
|
5623
6003
|
onClick: () => onAddItem()
|
|
5624
6004
|
}
|
|
5625
6005
|
),
|
|
5626
|
-
(validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */
|
|
6006
|
+
(validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx82(InlineAlert3, { type: "negative", children: validationState.message })
|
|
5627
6007
|
]
|
|
5628
6008
|
}
|
|
5629
6009
|
)
|
|
5630
6010
|
] }),
|
|
5631
|
-
/* @__PURE__ */
|
|
6011
|
+
/* @__PURE__ */ jsx82(
|
|
5632
6012
|
Modal4,
|
|
5633
6013
|
{
|
|
5634
6014
|
open: openModalType !== null,
|
|
5635
6015
|
title: (openModalType === "add" ? addItemTitle : editItemTitle) || formatMessage(repeatable_messages_default.addItemTitle),
|
|
5636
|
-
body: /* @__PURE__ */
|
|
5637
|
-
/* @__PURE__ */
|
|
5638
|
-
/* @__PURE__ */
|
|
5639
|
-
/* @__PURE__ */
|
|
5640
|
-
/* @__PURE__ */
|
|
5641
|
-
|
|
6016
|
+
body: /* @__PURE__ */ jsxs21(Fragment9, { children: [
|
|
6017
|
+
/* @__PURE__ */ jsx82("div", { className: "m-b-2", children: editableItem }),
|
|
6018
|
+
/* @__PURE__ */ jsxs21("div", { children: [
|
|
6019
|
+
/* @__PURE__ */ jsx82(Button9, { priority: "primary", block: true, className: "m-b-2", onClick: () => onSaveItem(), children: formatMessage(repeatable_messages_default.addItem) }),
|
|
6020
|
+
/* @__PURE__ */ jsx82(
|
|
6021
|
+
Button9,
|
|
5642
6022
|
{
|
|
5643
6023
|
v2: true,
|
|
5644
6024
|
priority: "secondary",
|
|
@@ -5659,10 +6039,10 @@ function ItemSummaryOption({
|
|
|
5659
6039
|
item,
|
|
5660
6040
|
onClick
|
|
5661
6041
|
}) {
|
|
5662
|
-
return /* @__PURE__ */
|
|
6042
|
+
return /* @__PURE__ */ jsx82(
|
|
5663
6043
|
NavigationOption,
|
|
5664
6044
|
{
|
|
5665
|
-
media: /* @__PURE__ */
|
|
6045
|
+
media: /* @__PURE__ */ jsx82(OptionMedia, { media: item.media, preferAvatar: false }),
|
|
5666
6046
|
title: item.title,
|
|
5667
6047
|
content: item.description,
|
|
5668
6048
|
showMediaAtAllSizes: true,
|
|
@@ -5674,16 +6054,16 @@ function ItemSummaryOption({
|
|
|
5674
6054
|
var RepeatableRenderer_default = RepeatableRenderer;
|
|
5675
6055
|
|
|
5676
6056
|
// ../renderers/src/ReviewLegacyRenderer.tsx
|
|
5677
|
-
var
|
|
6057
|
+
var import_classnames29 = __toESM(require_classnames());
|
|
5678
6058
|
import { DefinitionList } from "@transferwise/components";
|
|
5679
|
-
import { Fragment as Fragment10, jsx as
|
|
6059
|
+
import { Fragment as Fragment10, jsx as jsx83, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
5680
6060
|
var ReviewRenderer = {
|
|
5681
6061
|
canRenderType: "review",
|
|
5682
6062
|
render: ({ callToAction, control, fields, margin, title, trackEvent, tags }) => {
|
|
5683
6063
|
const orientation = mapControlToDefinitionListLayout(control);
|
|
5684
|
-
return /* @__PURE__ */
|
|
5685
|
-
/* @__PURE__ */
|
|
5686
|
-
/* @__PURE__ */
|
|
6064
|
+
return /* @__PURE__ */ jsxs22("div", { className: (0, import_classnames29.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
6065
|
+
/* @__PURE__ */ jsx83(Header, { title, callToAction }),
|
|
6066
|
+
/* @__PURE__ */ jsx83("div", { className: margin, children: /* @__PURE__ */ jsx83(
|
|
5687
6067
|
DefinitionList,
|
|
5688
6068
|
{
|
|
5689
6069
|
layout: orientation,
|
|
@@ -5721,21 +6101,21 @@ var mapControlToDefinitionListLayout = (control) => {
|
|
|
5721
6101
|
};
|
|
5722
6102
|
var getFieldLabel = (label, help, onClick) => {
|
|
5723
6103
|
if (help) {
|
|
5724
|
-
return /* @__PURE__ */
|
|
6104
|
+
return /* @__PURE__ */ jsxs22(Fragment10, { children: [
|
|
5725
6105
|
label,
|
|
5726
6106
|
" ",
|
|
5727
|
-
/* @__PURE__ */
|
|
6107
|
+
/* @__PURE__ */ jsx83(Help_default, { help, onClick })
|
|
5728
6108
|
] });
|
|
5729
6109
|
}
|
|
5730
6110
|
return label;
|
|
5731
6111
|
};
|
|
5732
6112
|
|
|
5733
6113
|
// ../renderers/src/ReviewRenderer.tsx
|
|
5734
|
-
var
|
|
6114
|
+
var import_classnames30 = __toESM(require_classnames());
|
|
5735
6115
|
import { ListItem as ListItem10, Markdown as Markdown5, Popover } from "@transferwise/components";
|
|
5736
6116
|
import { QuestionMarkCircle } from "@transferwise/icons";
|
|
5737
|
-
import { useIntl as
|
|
5738
|
-
import { jsx as
|
|
6117
|
+
import { useIntl as useIntl18 } from "react-intl";
|
|
6118
|
+
import { jsx as jsx84, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
5739
6119
|
var IGNORED_CONTROLS = [
|
|
5740
6120
|
"horizontal",
|
|
5741
6121
|
"horizontal-end-aligned",
|
|
@@ -5745,7 +6125,7 @@ var IGNORED_CONTROLS = [
|
|
|
5745
6125
|
var ReviewRenderer2 = {
|
|
5746
6126
|
canRenderType: "review",
|
|
5747
6127
|
canRender: ({ control }) => control ? !IGNORED_CONTROLS.includes(control) : true,
|
|
5748
|
-
render: (props) => /* @__PURE__ */
|
|
6128
|
+
render: (props) => /* @__PURE__ */ jsx84(Review, __spreadValues({}, props))
|
|
5749
6129
|
};
|
|
5750
6130
|
var Review = ({
|
|
5751
6131
|
callToAction,
|
|
@@ -5756,9 +6136,9 @@ var Review = ({
|
|
|
5756
6136
|
title,
|
|
5757
6137
|
trackEvent
|
|
5758
6138
|
}) => {
|
|
5759
|
-
const intl =
|
|
5760
|
-
return /* @__PURE__ */
|
|
5761
|
-
/* @__PURE__ */
|
|
6139
|
+
const intl = useIntl18();
|
|
6140
|
+
return /* @__PURE__ */ jsxs23("div", { className: (0, import_classnames30.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
6141
|
+
/* @__PURE__ */ jsx84(Header, { title, callToAction }),
|
|
5762
6142
|
fields.map((field) => {
|
|
5763
6143
|
var _a, _b, _c;
|
|
5764
6144
|
const {
|
|
@@ -5776,7 +6156,7 @@ var Review = ({
|
|
|
5776
6156
|
ctaSecondary: (_a = itemTags == null ? void 0 : itemTags.includes("cta-secondary")) != null ? _a : false,
|
|
5777
6157
|
fullyInteractive: (_b = (tags == null ? void 0 : tags.includes("fully-interactive")) && (additionalInfo == null ? void 0 : additionalInfo.onClick) == null) != null ? _b : false
|
|
5778
6158
|
};
|
|
5779
|
-
return /* @__PURE__ */
|
|
6159
|
+
return /* @__PURE__ */ jsx84(
|
|
5780
6160
|
ListItem10,
|
|
5781
6161
|
{
|
|
5782
6162
|
title: value,
|
|
@@ -5797,14 +6177,14 @@ var Review = ({
|
|
|
5797
6177
|
] });
|
|
5798
6178
|
};
|
|
5799
6179
|
var getHelpControl = (help, ariaLabel, onClick) => {
|
|
5800
|
-
return /* @__PURE__ */
|
|
6180
|
+
return /* @__PURE__ */ jsx84(Popover, { content: /* @__PURE__ */ jsx84(Markdown5, { config: { link: { target: "_blank" } }, children: help }), children: /* @__PURE__ */ jsx84(ListItem10.IconButton, { partiallyInteractive: true, "aria-label": ariaLabel, onClick, children: /* @__PURE__ */ jsx84(QuestionMarkCircle, {}) }) });
|
|
5801
6181
|
};
|
|
5802
6182
|
var ReviewRenderer_default = ReviewRenderer2;
|
|
5803
6183
|
|
|
5804
6184
|
// ../renderers/src/SearchRenderer/BlockSearchRendererComponent.tsx
|
|
5805
|
-
import { Input as
|
|
5806
|
-
import { useState as
|
|
5807
|
-
import { useIntl as
|
|
6185
|
+
import { Input as Input6, InputGroup as InputGroup5, List, ListItem as ListItem11, Markdown as Markdown6 } from "@transferwise/components";
|
|
6186
|
+
import { useState as useState18 } from "react";
|
|
6187
|
+
import { useIntl as useIntl20 } from "react-intl";
|
|
5808
6188
|
|
|
5809
6189
|
// ../renderers/src/messages/search.messages.ts
|
|
5810
6190
|
import { defineMessages as defineMessages13 } from "react-intl";
|
|
@@ -5817,21 +6197,21 @@ var search_messages_default = defineMessages13({
|
|
|
5817
6197
|
});
|
|
5818
6198
|
|
|
5819
6199
|
// ../renderers/src/SearchRenderer/ErrorResult.tsx
|
|
5820
|
-
import { useIntl as
|
|
6200
|
+
import { useIntl as useIntl19 } from "react-intl";
|
|
5821
6201
|
import { Link as DSLink2 } from "@transferwise/components";
|
|
5822
|
-
import { jsx as
|
|
6202
|
+
import { jsx as jsx85, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
5823
6203
|
function ErrorResult({ state }) {
|
|
5824
|
-
const intl =
|
|
5825
|
-
return /* @__PURE__ */
|
|
6204
|
+
const intl = useIntl19();
|
|
6205
|
+
return /* @__PURE__ */ jsxs24("p", { className: "m-t-2", children: [
|
|
5826
6206
|
intl.formatMessage(generic_error_messages_default.genericError),
|
|
5827
6207
|
"\xA0",
|
|
5828
|
-
/* @__PURE__ */
|
|
6208
|
+
/* @__PURE__ */ jsx85(DSLink2, { onClick: () => state.onRetry(), children: intl.formatMessage(generic_error_messages_default.retry) })
|
|
5829
6209
|
] });
|
|
5830
6210
|
}
|
|
5831
6211
|
|
|
5832
6212
|
// ../renderers/src/SearchRenderer/BlockSearchRendererComponent.tsx
|
|
5833
|
-
import { Search as
|
|
5834
|
-
import { Fragment as Fragment11, jsx as
|
|
6213
|
+
import { Search as Search3 } from "@transferwise/icons";
|
|
6214
|
+
import { Fragment as Fragment11, jsx as jsx86, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
5835
6215
|
function BlockSearchRendererComponent({
|
|
5836
6216
|
id,
|
|
5837
6217
|
hint,
|
|
@@ -5846,10 +6226,10 @@ function BlockSearchRendererComponent({
|
|
|
5846
6226
|
trackEvent,
|
|
5847
6227
|
onChange
|
|
5848
6228
|
}) {
|
|
5849
|
-
const [hasSearched, setHasSearched] =
|
|
5850
|
-
const { formatMessage } =
|
|
5851
|
-
return /* @__PURE__ */
|
|
5852
|
-
/* @__PURE__ */
|
|
6229
|
+
const [hasSearched, setHasSearched] = useState18(false);
|
|
6230
|
+
const { formatMessage } = useIntl20();
|
|
6231
|
+
return /* @__PURE__ */ jsxs25("div", { className: getMargin(margin), children: [
|
|
6232
|
+
/* @__PURE__ */ jsx86(
|
|
5853
6233
|
FieldInput_default,
|
|
5854
6234
|
{
|
|
5855
6235
|
id,
|
|
@@ -5860,8 +6240,8 @@ function BlockSearchRendererComponent({
|
|
|
5860
6240
|
features,
|
|
5861
6241
|
control,
|
|
5862
6242
|
tags,
|
|
5863
|
-
children: /* @__PURE__ */
|
|
5864
|
-
|
|
6243
|
+
children: /* @__PURE__ */ jsx86(InputGroup5, { addonStart: { content: /* @__PURE__ */ jsx86(Search3, { size: 24 }) }, children: /* @__PURE__ */ jsx86(
|
|
6244
|
+
Input6,
|
|
5865
6245
|
{
|
|
5866
6246
|
id,
|
|
5867
6247
|
name: id,
|
|
@@ -5880,7 +6260,7 @@ function BlockSearchRendererComponent({
|
|
|
5880
6260
|
) })
|
|
5881
6261
|
}
|
|
5882
6262
|
),
|
|
5883
|
-
isLoading ? /* @__PURE__ */
|
|
6263
|
+
isLoading ? /* @__PURE__ */ jsx86("span", { children: formatMessage(search_messages_default.loading) }) : /* @__PURE__ */ jsx86(SearchResultContent, { state, trackEvent })
|
|
5884
6264
|
] });
|
|
5885
6265
|
}
|
|
5886
6266
|
function SearchResultContent({
|
|
@@ -5889,38 +6269,38 @@ function SearchResultContent({
|
|
|
5889
6269
|
}) {
|
|
5890
6270
|
switch (state.type) {
|
|
5891
6271
|
case "error":
|
|
5892
|
-
return /* @__PURE__ */
|
|
6272
|
+
return /* @__PURE__ */ jsx86(ErrorResult, { state });
|
|
5893
6273
|
case "results":
|
|
5894
|
-
return /* @__PURE__ */
|
|
6274
|
+
return /* @__PURE__ */ jsx86(SearchResults, { state, trackEvent });
|
|
5895
6275
|
case "layout":
|
|
5896
|
-
return /* @__PURE__ */
|
|
6276
|
+
return /* @__PURE__ */ jsxs25(Fragment11, { children: [
|
|
5897
6277
|
" ",
|
|
5898
6278
|
state.layout,
|
|
5899
6279
|
" "
|
|
5900
6280
|
] });
|
|
5901
6281
|
case "noResults":
|
|
5902
|
-
return /* @__PURE__ */
|
|
6282
|
+
return /* @__PURE__ */ jsx86(EmptySearchResult, { state });
|
|
5903
6283
|
case "pending":
|
|
5904
6284
|
default:
|
|
5905
6285
|
return null;
|
|
5906
6286
|
}
|
|
5907
6287
|
}
|
|
5908
6288
|
function EmptySearchResult({ state }) {
|
|
5909
|
-
return /* @__PURE__ */
|
|
6289
|
+
return /* @__PURE__ */ jsx86(Markdown6, { className: "m-t-2", config: { link: { target: "_blank" } }, children: state.message });
|
|
5910
6290
|
}
|
|
5911
6291
|
function SearchResults({
|
|
5912
6292
|
state,
|
|
5913
6293
|
trackEvent
|
|
5914
6294
|
}) {
|
|
5915
|
-
return /* @__PURE__ */
|
|
6295
|
+
return /* @__PURE__ */ jsx86(List, { children: state.results.map((result) => {
|
|
5916
6296
|
const { media } = result;
|
|
5917
|
-
return /* @__PURE__ */
|
|
6297
|
+
return /* @__PURE__ */ jsx86(
|
|
5918
6298
|
ListItem11,
|
|
5919
6299
|
{
|
|
5920
6300
|
title: result.title,
|
|
5921
6301
|
subtitle: result.description,
|
|
5922
|
-
media: media ? /* @__PURE__ */
|
|
5923
|
-
control: /* @__PURE__ */
|
|
6302
|
+
media: media ? /* @__PURE__ */ jsx86(OptionMedia, { media, preferAvatar: false }) : void 0,
|
|
6303
|
+
control: /* @__PURE__ */ jsx86(
|
|
5924
6304
|
ListItem11.Navigation,
|
|
5925
6305
|
{
|
|
5926
6306
|
onClick: () => {
|
|
@@ -5940,10 +6320,10 @@ var BlockSearchRendererComponent_default = BlockSearchRendererComponent;
|
|
|
5940
6320
|
|
|
5941
6321
|
// ../renderers/src/SearchRenderer/InlineSearchRendererComponent.tsx
|
|
5942
6322
|
import { Markdown as Markdown7, Typeahead } from "@transferwise/components";
|
|
5943
|
-
import { Search as
|
|
5944
|
-
import { useState as
|
|
5945
|
-
import { useIntl as
|
|
5946
|
-
import { jsx as
|
|
6323
|
+
import { Search as Search4 } from "@transferwise/icons";
|
|
6324
|
+
import { useState as useState19 } from "react";
|
|
6325
|
+
import { useIntl as useIntl21 } from "react-intl";
|
|
6326
|
+
import { jsx as jsx87 } from "react/jsx-runtime";
|
|
5947
6327
|
function InlineSearchRenderer({
|
|
5948
6328
|
id,
|
|
5949
6329
|
hint,
|
|
@@ -5957,9 +6337,9 @@ function InlineSearchRenderer({
|
|
|
5957
6337
|
onChange,
|
|
5958
6338
|
trackEvent
|
|
5959
6339
|
}) {
|
|
5960
|
-
const [hasSearched, setHasSearched] =
|
|
5961
|
-
const intl =
|
|
5962
|
-
return /* @__PURE__ */
|
|
6340
|
+
const [hasSearched, setHasSearched] = useState19(false);
|
|
6341
|
+
const intl = useIntl21();
|
|
6342
|
+
return /* @__PURE__ */ jsx87("div", { className: getMargin(margin), children: /* @__PURE__ */ jsx87(
|
|
5963
6343
|
FieldInput_default,
|
|
5964
6344
|
{
|
|
5965
6345
|
id,
|
|
@@ -5970,7 +6350,7 @@ function InlineSearchRenderer({
|
|
|
5970
6350
|
features,
|
|
5971
6351
|
control,
|
|
5972
6352
|
tags,
|
|
5973
|
-
children: /* @__PURE__ */
|
|
6353
|
+
children: /* @__PURE__ */ jsx87(
|
|
5974
6354
|
Typeahead,
|
|
5975
6355
|
{
|
|
5976
6356
|
id: "typeahead-input-id",
|
|
@@ -5979,10 +6359,10 @@ function InlineSearchRenderer({
|
|
|
5979
6359
|
size: "md",
|
|
5980
6360
|
placeholder: hint,
|
|
5981
6361
|
maxHeight: 100,
|
|
5982
|
-
footer: /* @__PURE__ */
|
|
6362
|
+
footer: /* @__PURE__ */ jsx87(TypeaheadFooter, { state, isLoading }),
|
|
5983
6363
|
multiple: false,
|
|
5984
6364
|
clearable: false,
|
|
5985
|
-
addon: /* @__PURE__ */
|
|
6365
|
+
addon: /* @__PURE__ */ jsx87(Search4, { size: 24 }),
|
|
5986
6366
|
options: state.type === "results" ? state.results.map(mapResultToTypeaheadOption) : [],
|
|
5987
6367
|
minQueryLength: 1,
|
|
5988
6368
|
onChange: (values) => {
|
|
@@ -6019,33 +6399,33 @@ function mapResultToTypeaheadOption(result) {
|
|
|
6019
6399
|
};
|
|
6020
6400
|
}
|
|
6021
6401
|
function TypeaheadFooter({ state, isLoading }) {
|
|
6022
|
-
const { formatMessage } =
|
|
6402
|
+
const { formatMessage } = useIntl21();
|
|
6023
6403
|
if (state.type === "layout") {
|
|
6024
|
-
return /* @__PURE__ */
|
|
6404
|
+
return /* @__PURE__ */ jsx87("div", { className: "m-x-1 m-y-1", children: state.layout });
|
|
6025
6405
|
}
|
|
6026
6406
|
if (state.type === "noResults") {
|
|
6027
|
-
return /* @__PURE__ */
|
|
6407
|
+
return /* @__PURE__ */ jsx87(Markdown7, { className: "m-t-2 m-x-2", config: { link: { target: "_blank" } }, children: state.message });
|
|
6028
6408
|
}
|
|
6029
6409
|
if (state.type === "error") {
|
|
6030
|
-
return /* @__PURE__ */
|
|
6410
|
+
return /* @__PURE__ */ jsx87("div", { className: "m-t-2 m-x-2", children: /* @__PURE__ */ jsx87(ErrorResult, { state }) });
|
|
6031
6411
|
}
|
|
6032
6412
|
if (state.type === "pending" || isLoading) {
|
|
6033
|
-
return /* @__PURE__ */
|
|
6413
|
+
return /* @__PURE__ */ jsx87("p", { className: "m-t-2 m-x-2", children: formatMessage(search_messages_default.loading) });
|
|
6034
6414
|
}
|
|
6035
6415
|
return null;
|
|
6036
6416
|
}
|
|
6037
6417
|
var InlineSearchRendererComponent_default = InlineSearchRenderer;
|
|
6038
6418
|
|
|
6039
6419
|
// ../renderers/src/SearchRenderer/SearchRenderer.tsx
|
|
6040
|
-
import { jsx as
|
|
6420
|
+
import { jsx as jsx88 } from "react/jsx-runtime";
|
|
6041
6421
|
var SearchRenderer = {
|
|
6042
6422
|
canRenderType: "search",
|
|
6043
|
-
render: (props) => props.control === "inline" ? /* @__PURE__ */
|
|
6423
|
+
render: (props) => props.control === "inline" ? /* @__PURE__ */ jsx88(InlineSearchRendererComponent_default, __spreadValues({}, props)) : /* @__PURE__ */ jsx88(BlockSearchRendererComponent_default, __spreadValues({}, props))
|
|
6044
6424
|
};
|
|
6045
6425
|
var SearchRenderer_default = SearchRenderer;
|
|
6046
6426
|
|
|
6047
6427
|
// ../renderers/src/SectionRenderer.tsx
|
|
6048
|
-
var
|
|
6428
|
+
var import_classnames31 = __toESM(require_classnames());
|
|
6049
6429
|
import { Header as Header7 } from "@transferwise/components";
|
|
6050
6430
|
|
|
6051
6431
|
// ../renderers/src/utils/getHeaderAction.tsx
|
|
@@ -6070,16 +6450,16 @@ var getHeaderAction2 = (callToAction) => {
|
|
|
6070
6450
|
};
|
|
6071
6451
|
|
|
6072
6452
|
// ../renderers/src/SectionRenderer.tsx
|
|
6073
|
-
import { jsx as
|
|
6453
|
+
import { jsx as jsx89, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
6074
6454
|
var SectionRenderer = {
|
|
6075
6455
|
canRenderType: "section",
|
|
6076
6456
|
render: ({ children, callToAction, margin, title, control, tags }) => {
|
|
6077
|
-
return /* @__PURE__ */
|
|
6457
|
+
return /* @__PURE__ */ jsxs26(
|
|
6078
6458
|
"section",
|
|
6079
6459
|
{
|
|
6080
|
-
className: (0,
|
|
6460
|
+
className: (0, import_classnames31.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })),
|
|
6081
6461
|
children: [
|
|
6082
|
-
(title || callToAction) && /* @__PURE__ */
|
|
6462
|
+
(title || callToAction) && /* @__PURE__ */ jsx89(Header7, { title: title != null ? title : "", action: getHeaderAction2(callToAction) }),
|
|
6083
6463
|
children
|
|
6084
6464
|
]
|
|
6085
6465
|
}
|
|
@@ -6090,7 +6470,7 @@ var SectionRenderer_default = SectionRenderer;
|
|
|
6090
6470
|
|
|
6091
6471
|
// ../renderers/src/SelectInputRenderer/RadioInputRendererComponent.tsx
|
|
6092
6472
|
import { RadioGroup } from "@transferwise/components";
|
|
6093
|
-
import { Fragment as Fragment12, jsx as
|
|
6473
|
+
import { Fragment as Fragment12, jsx as jsx90, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
6094
6474
|
function RadioInputRendererComponent(props) {
|
|
6095
6475
|
const {
|
|
6096
6476
|
id,
|
|
@@ -6107,8 +6487,8 @@ function RadioInputRendererComponent(props) {
|
|
|
6107
6487
|
tags,
|
|
6108
6488
|
onSelect
|
|
6109
6489
|
} = props;
|
|
6110
|
-
return /* @__PURE__ */
|
|
6111
|
-
/* @__PURE__ */
|
|
6490
|
+
return /* @__PURE__ */ jsxs27(Fragment12, { children: [
|
|
6491
|
+
/* @__PURE__ */ jsx90(
|
|
6112
6492
|
FieldInput_default,
|
|
6113
6493
|
{
|
|
6114
6494
|
id,
|
|
@@ -6119,7 +6499,7 @@ function RadioInputRendererComponent(props) {
|
|
|
6119
6499
|
features,
|
|
6120
6500
|
control,
|
|
6121
6501
|
tags,
|
|
6122
|
-
children: /* @__PURE__ */
|
|
6502
|
+
children: /* @__PURE__ */ jsx90("span", { children: /* @__PURE__ */ jsx90(
|
|
6123
6503
|
RadioGroup,
|
|
6124
6504
|
{
|
|
6125
6505
|
name: id,
|
|
@@ -6128,7 +6508,7 @@ function RadioInputRendererComponent(props) {
|
|
|
6128
6508
|
value: index,
|
|
6129
6509
|
secondary: option.description,
|
|
6130
6510
|
disabled: option.disabled || disabled,
|
|
6131
|
-
avatar: /* @__PURE__ */
|
|
6511
|
+
avatar: /* @__PURE__ */ jsx90(OptionMedia, { media: option.media, preferAvatar: false })
|
|
6132
6512
|
})),
|
|
6133
6513
|
selectedValue: selectedIndex != null ? selectedIndex : void 0,
|
|
6134
6514
|
onChange: onSelect
|
|
@@ -6144,7 +6524,7 @@ function RadioInputRendererComponent(props) {
|
|
|
6144
6524
|
// ../renderers/src/SelectInputRenderer/TabInputRendererComponent.tsx
|
|
6145
6525
|
import { Tabs } from "@transferwise/components";
|
|
6146
6526
|
import { useEffect as useEffect12 } from "react";
|
|
6147
|
-
import { Fragment as Fragment13, jsx as
|
|
6527
|
+
import { Fragment as Fragment13, jsx as jsx91, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
6148
6528
|
function TabInputRendererComponent(props) {
|
|
6149
6529
|
const {
|
|
6150
6530
|
id,
|
|
@@ -6166,8 +6546,8 @@ function TabInputRendererComponent(props) {
|
|
|
6166
6546
|
onSelect(0);
|
|
6167
6547
|
}
|
|
6168
6548
|
}, [selectedIndex, onSelect, options.length]);
|
|
6169
|
-
return /* @__PURE__ */
|
|
6170
|
-
/* @__PURE__ */
|
|
6549
|
+
return /* @__PURE__ */ jsxs28(Fragment13, { children: [
|
|
6550
|
+
/* @__PURE__ */ jsx91(
|
|
6171
6551
|
FieldInput_default,
|
|
6172
6552
|
{
|
|
6173
6553
|
id,
|
|
@@ -6178,7 +6558,7 @@ function TabInputRendererComponent(props) {
|
|
|
6178
6558
|
features,
|
|
6179
6559
|
control,
|
|
6180
6560
|
tags,
|
|
6181
|
-
children: /* @__PURE__ */
|
|
6561
|
+
children: /* @__PURE__ */ jsx91(
|
|
6182
6562
|
Tabs,
|
|
6183
6563
|
{
|
|
6184
6564
|
name: id,
|
|
@@ -6187,7 +6567,7 @@ function TabInputRendererComponent(props) {
|
|
|
6187
6567
|
title: option.title,
|
|
6188
6568
|
// if we pass null, we get some props-types console errors
|
|
6189
6569
|
// eslint-disable-next-line react/jsx-no-useless-fragment
|
|
6190
|
-
content: /* @__PURE__ */
|
|
6570
|
+
content: /* @__PURE__ */ jsx91(Fragment13, {}),
|
|
6191
6571
|
disabled: option.disabled || disabled
|
|
6192
6572
|
})),
|
|
6193
6573
|
onTabSelect: onSelect
|
|
@@ -6202,7 +6582,7 @@ var isValidIndex2 = (index, options) => index !== null && index >= 0 && index <
|
|
|
6202
6582
|
|
|
6203
6583
|
// ../renderers/src/SelectInputRenderer/SelectInputRendererComponent.tsx
|
|
6204
6584
|
import { SelectInput as SelectInput2, SelectInputOptionContent as SelectInputOptionContent2 } from "@transferwise/components";
|
|
6205
|
-
import { Fragment as Fragment14, jsx as
|
|
6585
|
+
import { Fragment as Fragment14, jsx as jsx92, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
6206
6586
|
function SelectInputRendererComponent(props) {
|
|
6207
6587
|
const {
|
|
6208
6588
|
id,
|
|
@@ -6245,13 +6625,13 @@ function SelectInputRendererComponent(props) {
|
|
|
6245
6625
|
} : {
|
|
6246
6626
|
title: option.title,
|
|
6247
6627
|
description: option.description,
|
|
6248
|
-
icon: /* @__PURE__ */
|
|
6628
|
+
icon: /* @__PURE__ */ jsx92(OptionMedia, { media: option.media, preferAvatar: false })
|
|
6249
6629
|
};
|
|
6250
|
-
return /* @__PURE__ */
|
|
6630
|
+
return /* @__PURE__ */ jsx92(SelectInputOptionContent2, __spreadValues({}, contentProps));
|
|
6251
6631
|
};
|
|
6252
6632
|
const extraProps = { autoComplete };
|
|
6253
|
-
return /* @__PURE__ */
|
|
6254
|
-
/* @__PURE__ */
|
|
6633
|
+
return /* @__PURE__ */ jsxs29(Fragment14, { children: [
|
|
6634
|
+
/* @__PURE__ */ jsx92(
|
|
6255
6635
|
FieldInput_default,
|
|
6256
6636
|
{
|
|
6257
6637
|
id,
|
|
@@ -6262,7 +6642,7 @@ function SelectInputRendererComponent(props) {
|
|
|
6262
6642
|
features,
|
|
6263
6643
|
control,
|
|
6264
6644
|
tags,
|
|
6265
|
-
children: /* @__PURE__ */
|
|
6645
|
+
children: /* @__PURE__ */ jsx92(
|
|
6266
6646
|
SelectInput2,
|
|
6267
6647
|
__spreadValues({
|
|
6268
6648
|
name: id,
|
|
@@ -6285,7 +6665,7 @@ function SelectInputRendererComponent(props) {
|
|
|
6285
6665
|
// ../renderers/src/SelectInputRenderer/SegmentedInputRendererComponent.tsx
|
|
6286
6666
|
import { useEffect as useEffect13 } from "react";
|
|
6287
6667
|
import { SegmentedControl } from "@transferwise/components";
|
|
6288
|
-
import { Fragment as Fragment15, jsx as
|
|
6668
|
+
import { Fragment as Fragment15, jsx as jsx93, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
6289
6669
|
function SegmentedInputRendererComponent(props) {
|
|
6290
6670
|
const {
|
|
6291
6671
|
id,
|
|
@@ -6306,8 +6686,8 @@ function SegmentedInputRendererComponent(props) {
|
|
|
6306
6686
|
onSelect(0);
|
|
6307
6687
|
}
|
|
6308
6688
|
}, [selectedIndex, onSelect, options.length]);
|
|
6309
|
-
return /* @__PURE__ */
|
|
6310
|
-
/* @__PURE__ */
|
|
6689
|
+
return /* @__PURE__ */ jsxs30(Fragment15, { children: [
|
|
6690
|
+
/* @__PURE__ */ jsx93(
|
|
6311
6691
|
FieldInput_default,
|
|
6312
6692
|
{
|
|
6313
6693
|
id,
|
|
@@ -6318,7 +6698,7 @@ function SegmentedInputRendererComponent(props) {
|
|
|
6318
6698
|
features,
|
|
6319
6699
|
control,
|
|
6320
6700
|
tags,
|
|
6321
|
-
children: /* @__PURE__ */
|
|
6701
|
+
children: /* @__PURE__ */ jsx93(
|
|
6322
6702
|
SegmentedControl,
|
|
6323
6703
|
{
|
|
6324
6704
|
name: `${id}-segmented-control`,
|
|
@@ -6335,14 +6715,14 @@ function SegmentedInputRendererComponent(props) {
|
|
|
6335
6715
|
)
|
|
6336
6716
|
}
|
|
6337
6717
|
),
|
|
6338
|
-
/* @__PURE__ */
|
|
6718
|
+
/* @__PURE__ */ jsx93("div", { id: `${id}-children`, children })
|
|
6339
6719
|
] });
|
|
6340
6720
|
}
|
|
6341
6721
|
var isValidIndex3 = (index, options) => index !== null && index >= 0 && index < options;
|
|
6342
6722
|
|
|
6343
6723
|
// ../renderers/src/SelectInputRenderer/RadioItemRendererComponent.tsx
|
|
6344
6724
|
import { Header as Header8, InlineAlert as InlineAlert4, List as List2, ListItem as ListItem12 } from "@transferwise/components";
|
|
6345
|
-
import { jsx as
|
|
6725
|
+
import { jsx as jsx94, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
6346
6726
|
function RadioItemRendererComponent(props) {
|
|
6347
6727
|
const {
|
|
6348
6728
|
id,
|
|
@@ -6358,22 +6738,22 @@ function RadioItemRendererComponent(props) {
|
|
|
6358
6738
|
onSelect
|
|
6359
6739
|
} = props;
|
|
6360
6740
|
const { ref } = useScrollToError(validationState, features);
|
|
6361
|
-
return /* @__PURE__ */
|
|
6362
|
-
rootTitle && /* @__PURE__ */
|
|
6741
|
+
return /* @__PURE__ */ jsxs31("div", { ref, className: controlAndTagsToCSSClass(props), children: [
|
|
6742
|
+
rootTitle && /* @__PURE__ */ jsx94(
|
|
6363
6743
|
Header8,
|
|
6364
6744
|
{
|
|
6365
6745
|
as: "h2",
|
|
6366
|
-
title: help ? /* @__PURE__ */
|
|
6746
|
+
title: help ? /* @__PURE__ */ jsx94(LabelContentWithHelp, { text: rootTitle, help }) : rootTitle
|
|
6367
6747
|
}
|
|
6368
6748
|
),
|
|
6369
|
-
rootDescription && /* @__PURE__ */
|
|
6370
|
-
/* @__PURE__ */
|
|
6371
|
-
({ title, description, additionalText, inlineAlert, disabled, media, supportingValues }, index) => /* @__PURE__ */
|
|
6749
|
+
rootDescription && /* @__PURE__ */ jsx94("p", { children: rootDescription }),
|
|
6750
|
+
/* @__PURE__ */ jsx94(List2, { children: options.map(
|
|
6751
|
+
({ title, description, additionalText, inlineAlert, disabled, media, supportingValues }, index) => /* @__PURE__ */ jsx94(
|
|
6372
6752
|
ListItem12,
|
|
6373
6753
|
__spreadValues({
|
|
6374
6754
|
title,
|
|
6375
6755
|
subtitle: description,
|
|
6376
|
-
control: /* @__PURE__ */
|
|
6756
|
+
control: /* @__PURE__ */ jsx94(
|
|
6377
6757
|
ListItem12.Radio,
|
|
6378
6758
|
{
|
|
6379
6759
|
name: title,
|
|
@@ -6389,50 +6769,50 @@ function RadioItemRendererComponent(props) {
|
|
|
6389
6769
|
title
|
|
6390
6770
|
)
|
|
6391
6771
|
) }, `${id}-${selectedIndex}`),
|
|
6392
|
-
(validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */
|
|
6772
|
+
(validationState == null ? void 0 : validationState.status) === "invalid" && /* @__PURE__ */ jsx94(InlineAlert4, { type: "negative", children: validationState.message }),
|
|
6393
6773
|
children
|
|
6394
6774
|
] });
|
|
6395
6775
|
}
|
|
6396
6776
|
|
|
6397
6777
|
// ../renderers/src/SelectInputRenderer/SelectInputRenderer.tsx
|
|
6398
|
-
import { jsx as
|
|
6778
|
+
import { jsx as jsx95 } from "react/jsx-runtime";
|
|
6399
6779
|
var SelectInputRenderer = {
|
|
6400
6780
|
canRenderType: "input-select",
|
|
6401
6781
|
render: (props) => {
|
|
6402
6782
|
switch (props.control) {
|
|
6403
6783
|
case "radio":
|
|
6404
|
-
return /* @__PURE__ */
|
|
6784
|
+
return /* @__PURE__ */ jsx95(RadioInputRendererComponent, __spreadValues({}, props));
|
|
6405
6785
|
case "radio-item":
|
|
6406
|
-
return /* @__PURE__ */
|
|
6786
|
+
return /* @__PURE__ */ jsx95(RadioItemRendererComponent, __spreadValues({}, props));
|
|
6407
6787
|
case "tab":
|
|
6408
|
-
return props.options.length > 3 ? /* @__PURE__ */
|
|
6788
|
+
return props.options.length > 3 ? /* @__PURE__ */ jsx95(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx95(TabInputRendererComponent, __spreadValues({}, props));
|
|
6409
6789
|
case "segmented":
|
|
6410
|
-
return props.options.length > 3 ? /* @__PURE__ */
|
|
6790
|
+
return props.options.length > 3 ? /* @__PURE__ */ jsx95(SelectInputRendererComponent, __spreadValues({}, props)) : /* @__PURE__ */ jsx95(SegmentedInputRendererComponent, __spreadValues({}, props));
|
|
6411
6791
|
case "select":
|
|
6412
6792
|
default:
|
|
6413
|
-
return /* @__PURE__ */
|
|
6793
|
+
return /* @__PURE__ */ jsx95(SelectInputRendererComponent, __spreadValues({}, props));
|
|
6414
6794
|
}
|
|
6415
6795
|
}
|
|
6416
6796
|
};
|
|
6417
6797
|
var SelectInputRenderer_default = SelectInputRenderer;
|
|
6418
6798
|
|
|
6419
6799
|
// ../renderers/src/StatusListRenderer.tsx
|
|
6420
|
-
var
|
|
6800
|
+
var import_classnames32 = __toESM(require_classnames());
|
|
6421
6801
|
import { AvatarView as AvatarView4, Header as Header9, ListItem as ListItem13 } from "@transferwise/components";
|
|
6422
|
-
import { jsx as
|
|
6802
|
+
import { jsx as jsx96, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
6423
6803
|
var StatusListRenderer = {
|
|
6424
6804
|
canRenderType: "status-list",
|
|
6425
|
-
render: ({ margin, items, title, control, tags }) => /* @__PURE__ */
|
|
6426
|
-
title ? /* @__PURE__ */
|
|
6805
|
+
render: ({ margin, items, title, control, tags }) => /* @__PURE__ */ jsxs32("div", { className: (0, import_classnames32.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
6806
|
+
title ? /* @__PURE__ */ jsx96(Header9, { title }) : null,
|
|
6427
6807
|
items.map((item) => {
|
|
6428
6808
|
const { callToAction, description, title: itemTitle } = item;
|
|
6429
|
-
return /* @__PURE__ */
|
|
6809
|
+
return /* @__PURE__ */ jsx96(
|
|
6430
6810
|
ListItem13,
|
|
6431
6811
|
{
|
|
6432
6812
|
title: itemTitle,
|
|
6433
6813
|
subtitle: description,
|
|
6434
|
-
media: /* @__PURE__ */
|
|
6435
|
-
additionalInfo: callToAction ? /* @__PURE__ */
|
|
6814
|
+
media: /* @__PURE__ */ jsx96(StatusListItemMedia, __spreadValues({}, item)),
|
|
6815
|
+
additionalInfo: callToAction ? /* @__PURE__ */ jsx96(
|
|
6436
6816
|
ListItem13.AdditionalInfo,
|
|
6437
6817
|
{
|
|
6438
6818
|
action: __spreadValues({
|
|
@@ -6451,10 +6831,10 @@ var StatusListItemMedia = ({ icon, status }) => {
|
|
|
6451
6831
|
return void 0;
|
|
6452
6832
|
}
|
|
6453
6833
|
if ("name" in icon) {
|
|
6454
|
-
return /* @__PURE__ */
|
|
6834
|
+
return /* @__PURE__ */ jsx96(AvatarView4, { badge: { status: mapStatus(status) }, children: /* @__PURE__ */ jsx96(DynamicIcon_default, { name: icon.name }) });
|
|
6455
6835
|
}
|
|
6456
6836
|
if ("text" in icon) {
|
|
6457
|
-
return /* @__PURE__ */
|
|
6837
|
+
return /* @__PURE__ */ jsx96(AvatarView4, { badge: { status: mapStatus(status) }, children: icon.text });
|
|
6458
6838
|
}
|
|
6459
6839
|
return void 0;
|
|
6460
6840
|
};
|
|
@@ -6471,7 +6851,7 @@ var mapStatus = (status) => {
|
|
|
6471
6851
|
var StatusListRenderer_default = StatusListRenderer;
|
|
6472
6852
|
|
|
6473
6853
|
// ../renderers/src/step/SplashCelebrationStepRenderer.tsx
|
|
6474
|
-
var
|
|
6854
|
+
var import_classnames33 = __toESM(require_classnames());
|
|
6475
6855
|
|
|
6476
6856
|
// ../renderers/src/utils/useCustomTheme.ts
|
|
6477
6857
|
import { useTheme } from "@wise/components-theming";
|
|
@@ -6493,12 +6873,12 @@ var useCustomTheme = (theme, trackEvent) => {
|
|
|
6493
6873
|
|
|
6494
6874
|
// ../renderers/src/step/StepHeader.tsx
|
|
6495
6875
|
import { Title as Title2 } from "@transferwise/components";
|
|
6496
|
-
import { Fragment as Fragment16, jsx as
|
|
6876
|
+
import { Fragment as Fragment16, jsx as jsx97, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
6497
6877
|
var StepHeader = ({ title, description, tags }) => {
|
|
6498
6878
|
const { titleType, alignmentClassName } = getHeaderStyle(tags);
|
|
6499
|
-
return /* @__PURE__ */
|
|
6500
|
-
title ? /* @__PURE__ */
|
|
6501
|
-
description ? /* @__PURE__ */
|
|
6879
|
+
return /* @__PURE__ */ jsxs33(Fragment16, { children: [
|
|
6880
|
+
title ? /* @__PURE__ */ jsx97(Title2, { as: "h1", type: titleType, className: `${alignmentClassName} m-b-2`, children: title }) : void 0,
|
|
6881
|
+
description ? /* @__PURE__ */ jsx97("p", { className: `${alignmentClassName} np-text-body-large`, children: description }) : void 0
|
|
6502
6882
|
] });
|
|
6503
6883
|
};
|
|
6504
6884
|
var getHeaderStyle = (tags) => {
|
|
@@ -6509,9 +6889,9 @@ var getHeaderStyle = (tags) => {
|
|
|
6509
6889
|
};
|
|
6510
6890
|
|
|
6511
6891
|
// ../renderers/src/step/topbar/BackButton.tsx
|
|
6512
|
-
import { IconButton as
|
|
6892
|
+
import { IconButton as IconButton3 } from "@transferwise/components";
|
|
6513
6893
|
import { ArrowLeft } from "@transferwise/icons";
|
|
6514
|
-
import { useIntl as
|
|
6894
|
+
import { useIntl as useIntl22 } from "react-intl";
|
|
6515
6895
|
|
|
6516
6896
|
// ../renderers/src/messages/back.messages.ts
|
|
6517
6897
|
import { defineMessages as defineMessages14 } from "react-intl";
|
|
@@ -6524,31 +6904,31 @@ var back_messages_default = defineMessages14({
|
|
|
6524
6904
|
});
|
|
6525
6905
|
|
|
6526
6906
|
// ../renderers/src/step/topbar/BackButton.tsx
|
|
6527
|
-
import { jsx as
|
|
6907
|
+
import { jsx as jsx98, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
6528
6908
|
function BackButton({ title, onClick }) {
|
|
6529
|
-
const { formatMessage } =
|
|
6530
|
-
return /* @__PURE__ */
|
|
6531
|
-
/* @__PURE__ */
|
|
6532
|
-
/* @__PURE__ */
|
|
6909
|
+
const { formatMessage } = useIntl22();
|
|
6910
|
+
return /* @__PURE__ */ jsxs34(IconButton3, { className: "df-back-button", priority: "tertiary", onClick, children: [
|
|
6911
|
+
/* @__PURE__ */ jsx98("span", { className: "sr-only", children: title != null ? title : formatMessage(back_messages_default.back) }),
|
|
6912
|
+
/* @__PURE__ */ jsx98(ArrowLeft, {})
|
|
6533
6913
|
] });
|
|
6534
6914
|
}
|
|
6535
6915
|
|
|
6536
6916
|
// ../renderers/src/step/topbar/Toolbar.tsx
|
|
6537
|
-
import { Button as
|
|
6538
|
-
import { jsx as
|
|
6917
|
+
import { Button as Button10, IconButton as IconButton4 } from "@transferwise/components";
|
|
6918
|
+
import { jsx as jsx99, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
6539
6919
|
var Toolbar = ({ items }) => {
|
|
6540
|
-
return (items == null ? void 0 : items.length) > 0 ? /* @__PURE__ */
|
|
6920
|
+
return (items == null ? void 0 : items.length) > 0 ? /* @__PURE__ */ jsx99("div", { className: "df-toolbar", children: items.map((item, index) => /* @__PURE__ */ jsx99(ToolbarButton, __spreadValues({}, item), `${item.type}-${index}-${item.title}`)) }) : null;
|
|
6541
6921
|
};
|
|
6542
6922
|
function ToolbarButton(props) {
|
|
6543
|
-
return prefersMedia(props.control) ? /* @__PURE__ */
|
|
6923
|
+
return prefersMedia(props.control) ? /* @__PURE__ */ jsx99(MediaToolbarButton, __spreadValues({}, props)) : /* @__PURE__ */ jsx99(TextToolbarButton, __spreadValues({}, props));
|
|
6544
6924
|
}
|
|
6545
6925
|
function MediaToolbarButton(props) {
|
|
6546
6926
|
var _a;
|
|
6547
6927
|
const { context, control, media, accessibilityDescription, disabled, onClick } = props;
|
|
6548
6928
|
const priority = getIconButtonPriority(control);
|
|
6549
6929
|
const type = getSentiment2(context);
|
|
6550
|
-
return /* @__PURE__ */
|
|
6551
|
-
|
|
6930
|
+
return /* @__PURE__ */ jsxs35(
|
|
6931
|
+
IconButton4,
|
|
6552
6932
|
{
|
|
6553
6933
|
className: "df-toolbar-button",
|
|
6554
6934
|
disabled,
|
|
@@ -6557,7 +6937,7 @@ function MediaToolbarButton(props) {
|
|
|
6557
6937
|
type,
|
|
6558
6938
|
onClick,
|
|
6559
6939
|
children: [
|
|
6560
|
-
accessibilityDescription ? /* @__PURE__ */
|
|
6940
|
+
accessibilityDescription ? /* @__PURE__ */ jsx99("span", { className: "sr-only", children: accessibilityDescription }) : null,
|
|
6561
6941
|
media ? (_a = getAddonStartMedia(media)) == null ? void 0 : _a.value : null
|
|
6562
6942
|
]
|
|
6563
6943
|
}
|
|
@@ -6568,8 +6948,8 @@ function TextToolbarButton(props) {
|
|
|
6568
6948
|
const addonStart = media ? getAddonStartMedia(media) : void 0;
|
|
6569
6949
|
const priority = getPriority2(control);
|
|
6570
6950
|
const sentiment = getSentiment2(context);
|
|
6571
|
-
return /* @__PURE__ */
|
|
6572
|
-
|
|
6951
|
+
return /* @__PURE__ */ jsx99(
|
|
6952
|
+
Button10,
|
|
6573
6953
|
{
|
|
6574
6954
|
v2: true,
|
|
6575
6955
|
size: "sm",
|
|
@@ -6598,18 +6978,18 @@ var getIconButtonPriority = (control) => {
|
|
|
6598
6978
|
};
|
|
6599
6979
|
|
|
6600
6980
|
// ../renderers/src/step/topbar/TopBar.tsx
|
|
6601
|
-
import { jsx as
|
|
6981
|
+
import { jsx as jsx100, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
6602
6982
|
function TopBar({ back, toolbar, tags }) {
|
|
6603
6983
|
const isBackAllowed = !(tags == null ? void 0 : tags.includes("non-dismissible"));
|
|
6604
6984
|
const backCTA = isBackAllowed ? back : void 0;
|
|
6605
|
-
return backCTA || toolbar ? /* @__PURE__ */
|
|
6606
|
-
backCTA ? /* @__PURE__ */
|
|
6607
|
-
toolbar ? /* @__PURE__ */
|
|
6985
|
+
return backCTA || toolbar ? /* @__PURE__ */ jsxs36("div", { className: "d-flex m-b-2", children: [
|
|
6986
|
+
backCTA ? /* @__PURE__ */ jsx100(BackButton, __spreadValues({}, backCTA)) : null,
|
|
6987
|
+
toolbar ? /* @__PURE__ */ jsx100(Toolbar, __spreadValues({}, toolbar)) : null
|
|
6608
6988
|
] }) : null;
|
|
6609
6989
|
}
|
|
6610
6990
|
|
|
6611
6991
|
// ../renderers/src/step/SplashCelebrationStepRenderer.tsx
|
|
6612
|
-
import { jsx as
|
|
6992
|
+
import { jsx as jsx101, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
6613
6993
|
var SplashCelebrationStepRenderer = {
|
|
6614
6994
|
canRenderType: "step",
|
|
6615
6995
|
canRender: ({ control }) => control === "splash-celebration",
|
|
@@ -6618,23 +6998,23 @@ var SplashCelebrationStepRenderer = {
|
|
|
6618
6998
|
function SplashCelebrationStepRendererComponent(props) {
|
|
6619
6999
|
const { back, title, description, toolbar, children, footer, control, tags, trackEvent } = props;
|
|
6620
7000
|
useCustomTheme("forest-green", trackEvent);
|
|
6621
|
-
return /* @__PURE__ */
|
|
7001
|
+
return /* @__PURE__ */ jsxs37(
|
|
6622
7002
|
"div",
|
|
6623
7003
|
{
|
|
6624
|
-
className: (0,
|
|
7004
|
+
className: (0, import_classnames33.default)("splash-screen", "m-t-5", controlAndTagsToCSSClass({ control, tags })),
|
|
6625
7005
|
children: [
|
|
6626
|
-
/* @__PURE__ */
|
|
6627
|
-
title || description ? /* @__PURE__ */
|
|
7006
|
+
/* @__PURE__ */ jsx101(TopBar, { back, toolbar, tags }),
|
|
7007
|
+
title || description ? /* @__PURE__ */ jsx101("div", { className: "m-b-4", children: /* @__PURE__ */ jsx101(StepHeader, { title, description, tags }) }) : void 0,
|
|
6628
7008
|
children,
|
|
6629
|
-
/* @__PURE__ */
|
|
7009
|
+
/* @__PURE__ */ jsx101(StepFooter, { footer, tags })
|
|
6630
7010
|
]
|
|
6631
7011
|
}
|
|
6632
7012
|
);
|
|
6633
7013
|
}
|
|
6634
7014
|
|
|
6635
7015
|
// ../renderers/src/step/SplashStepRenderer.tsx
|
|
6636
|
-
var
|
|
6637
|
-
import { jsx as
|
|
7016
|
+
var import_classnames34 = __toESM(require_classnames());
|
|
7017
|
+
import { jsx as jsx102, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
6638
7018
|
var SplashStepRenderer = {
|
|
6639
7019
|
canRenderType: "step",
|
|
6640
7020
|
canRender: ({ control }) => control === "splash",
|
|
@@ -6642,15 +7022,15 @@ var SplashStepRenderer = {
|
|
|
6642
7022
|
};
|
|
6643
7023
|
function SplashStepRendererComponent(props) {
|
|
6644
7024
|
const { back, title, description, toolbar, children, footer, control, tags } = props;
|
|
6645
|
-
return /* @__PURE__ */
|
|
7025
|
+
return /* @__PURE__ */ jsxs38(
|
|
6646
7026
|
"div",
|
|
6647
7027
|
{
|
|
6648
|
-
className: (0,
|
|
7028
|
+
className: (0, import_classnames34.default)("splash-screen", "m-t-5", controlAndTagsToCSSClass({ control, tags })),
|
|
6649
7029
|
children: [
|
|
6650
|
-
/* @__PURE__ */
|
|
6651
|
-
title || description ? /* @__PURE__ */
|
|
7030
|
+
/* @__PURE__ */ jsx102(TopBar, { back, toolbar, tags }),
|
|
7031
|
+
title || description ? /* @__PURE__ */ jsx102("div", { className: "m-b-4", children: /* @__PURE__ */ jsx102(StepHeader, { title, description, tags }) }) : void 0,
|
|
6652
7032
|
children,
|
|
6653
|
-
/* @__PURE__ */
|
|
7033
|
+
/* @__PURE__ */ jsx102(StepFooter, { footer, tags })
|
|
6654
7034
|
]
|
|
6655
7035
|
}
|
|
6656
7036
|
);
|
|
@@ -6658,46 +7038,46 @@ function SplashStepRendererComponent(props) {
|
|
|
6658
7038
|
|
|
6659
7039
|
// ../renderers/src/step/StepRenderer.tsx
|
|
6660
7040
|
import { Alert } from "@transferwise/components";
|
|
6661
|
-
import { jsx as
|
|
7041
|
+
import { jsx as jsx103, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
6662
7042
|
var StepRenderer = {
|
|
6663
7043
|
canRenderType: "step",
|
|
6664
7044
|
render: StepRendererComponent
|
|
6665
7045
|
};
|
|
6666
7046
|
function StepRendererComponent(props) {
|
|
6667
7047
|
const { back, description, error, title, children, toolbar, footer, control, tags } = props;
|
|
6668
|
-
return /* @__PURE__ */
|
|
6669
|
-
/* @__PURE__ */
|
|
6670
|
-
title || description ? /* @__PURE__ */
|
|
6671
|
-
error ? /* @__PURE__ */
|
|
7048
|
+
return /* @__PURE__ */ jsxs39("div", { className: controlAndTagsToCSSClass({ control, tags }), children: [
|
|
7049
|
+
/* @__PURE__ */ jsx103(TopBar, { back, toolbar, tags }),
|
|
7050
|
+
title || description ? /* @__PURE__ */ jsx103("div", { className: "m-b-4", children: /* @__PURE__ */ jsx103(StepHeader, { title, description, tags }) }) : void 0,
|
|
7051
|
+
error ? /* @__PURE__ */ jsx103(Alert, { type: "negative", className: "m-b-2", message: error }) : null,
|
|
6672
7052
|
children,
|
|
6673
|
-
/* @__PURE__ */
|
|
7053
|
+
/* @__PURE__ */ jsx103(StepFooter, { footer, tags })
|
|
6674
7054
|
] });
|
|
6675
7055
|
}
|
|
6676
7056
|
|
|
6677
7057
|
// ../renderers/src/TabsRenderer.tsx
|
|
6678
|
-
var
|
|
6679
|
-
import { Chips as
|
|
6680
|
-
import { useState as
|
|
6681
|
-
import { jsx as
|
|
7058
|
+
var import_classnames35 = __toESM(require_classnames());
|
|
7059
|
+
import { Chips as Chips3, SegmentedControl as SegmentedControl2, Tabs as Tabs2 } from "@transferwise/components";
|
|
7060
|
+
import { useState as useState20 } from "react";
|
|
7061
|
+
import { jsx as jsx104, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
6682
7062
|
var TabsRenderer = {
|
|
6683
7063
|
canRenderType: "tabs",
|
|
6684
7064
|
render: (props) => {
|
|
6685
7065
|
switch (props.control) {
|
|
6686
7066
|
case "segmented":
|
|
6687
7067
|
if (props.tabs.length > 3) {
|
|
6688
|
-
return /* @__PURE__ */
|
|
7068
|
+
return /* @__PURE__ */ jsx104(TabsRendererComponent, __spreadValues({}, props));
|
|
6689
7069
|
}
|
|
6690
|
-
return /* @__PURE__ */
|
|
7070
|
+
return /* @__PURE__ */ jsx104(SegmentedTabsRendererComponent, __spreadValues({}, props));
|
|
6691
7071
|
case "chips":
|
|
6692
|
-
return /* @__PURE__ */
|
|
7072
|
+
return /* @__PURE__ */ jsx104(ChipsTabsRendererComponent, __spreadValues({}, props));
|
|
6693
7073
|
default:
|
|
6694
|
-
return /* @__PURE__ */
|
|
7074
|
+
return /* @__PURE__ */ jsx104(TabsRendererComponent, __spreadValues({}, props));
|
|
6695
7075
|
}
|
|
6696
7076
|
}
|
|
6697
7077
|
};
|
|
6698
7078
|
function TabsRendererComponent({ uid, margin, tabs, control, tags }) {
|
|
6699
|
-
const [selectedIndex, setSelectedIndex] =
|
|
6700
|
-
return /* @__PURE__ */
|
|
7079
|
+
const [selectedIndex, setSelectedIndex] = useState20(0);
|
|
7080
|
+
return /* @__PURE__ */ jsx104("div", { className: (0, import_classnames35.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: /* @__PURE__ */ jsx104(
|
|
6701
7081
|
Tabs2,
|
|
6702
7082
|
{
|
|
6703
7083
|
name: uid,
|
|
@@ -6705,7 +7085,7 @@ function TabsRendererComponent({ uid, margin, tabs, control, tags }) {
|
|
|
6705
7085
|
tabs: tabs.map((option) => ({
|
|
6706
7086
|
title: option.title,
|
|
6707
7087
|
disabled: false,
|
|
6708
|
-
content: /* @__PURE__ */
|
|
7088
|
+
content: /* @__PURE__ */ jsxs40("div", { className: "m-t-2", children: [
|
|
6709
7089
|
" ",
|
|
6710
7090
|
option.children,
|
|
6711
7091
|
" "
|
|
@@ -6717,9 +7097,9 @@ function TabsRendererComponent({ uid, margin, tabs, control, tags }) {
|
|
|
6717
7097
|
}
|
|
6718
7098
|
function SegmentedTabsRendererComponent({ uid, margin, tabs, control, tags }) {
|
|
6719
7099
|
var _a;
|
|
6720
|
-
const [selectedIndex, setSelectedIndex] =
|
|
6721
|
-
return /* @__PURE__ */
|
|
6722
|
-
/* @__PURE__ */
|
|
7100
|
+
const [selectedIndex, setSelectedIndex] = useState20(0);
|
|
7101
|
+
return /* @__PURE__ */ jsxs40("div", { className: (0, import_classnames35.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
7102
|
+
/* @__PURE__ */ jsx104(
|
|
6723
7103
|
SegmentedControl2,
|
|
6724
7104
|
{
|
|
6725
7105
|
name: uid,
|
|
@@ -6734,41 +7114,41 @@ function SegmentedTabsRendererComponent({ uid, margin, tabs, control, tags }) {
|
|
|
6734
7114
|
onChange: (value) => setSelectedIndex(Number(value))
|
|
6735
7115
|
}
|
|
6736
7116
|
),
|
|
6737
|
-
/* @__PURE__ */
|
|
7117
|
+
/* @__PURE__ */ jsx104("div", { id: `${uid}-children`, className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
|
|
6738
7118
|
] });
|
|
6739
7119
|
}
|
|
6740
7120
|
function ChipsTabsRendererComponent({ margin, tabs, control, tags }) {
|
|
6741
7121
|
var _a;
|
|
6742
|
-
const [selectedIndex, setSelectedIndex] =
|
|
6743
|
-
return /* @__PURE__ */
|
|
6744
|
-
/* @__PURE__ */
|
|
6745
|
-
|
|
7122
|
+
const [selectedIndex, setSelectedIndex] = useState20(0);
|
|
7123
|
+
return /* @__PURE__ */ jsxs40("div", { className: (0, import_classnames35.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children: [
|
|
7124
|
+
/* @__PURE__ */ jsx104("div", { className: "chips-container", children: /* @__PURE__ */ jsx104(
|
|
7125
|
+
Chips3,
|
|
6746
7126
|
{
|
|
6747
7127
|
chips: tabs.map((tab, index) => ({ label: tab.title, value: index })),
|
|
6748
7128
|
selected: selectedIndex,
|
|
6749
7129
|
onChange: ({ selectedValue }) => setSelectedIndex(Number(selectedValue))
|
|
6750
7130
|
}
|
|
6751
7131
|
) }),
|
|
6752
|
-
/* @__PURE__ */
|
|
7132
|
+
/* @__PURE__ */ jsx104("div", { className: "m-t-2", children: (_a = tabs[selectedIndex]) == null ? void 0 : _a.children })
|
|
6753
7133
|
] });
|
|
6754
7134
|
}
|
|
6755
7135
|
|
|
6756
7136
|
// ../renderers/src/TextInputRenderer.tsx
|
|
6757
|
-
import { InputGroup as
|
|
6758
|
-
import { useState as
|
|
7137
|
+
import { InputGroup as InputGroup6 } from "@transferwise/components";
|
|
7138
|
+
import { useState as useState22 } from "react";
|
|
6759
7139
|
|
|
6760
7140
|
// ../renderers/src/components/VariableTextInput.tsx
|
|
6761
7141
|
import {
|
|
6762
|
-
IconButton as
|
|
6763
|
-
Input as
|
|
7142
|
+
IconButton as IconButton5,
|
|
7143
|
+
Input as Input7,
|
|
6764
7144
|
InputWithDisplayFormat,
|
|
6765
7145
|
PhoneNumberInput,
|
|
6766
7146
|
TextArea,
|
|
6767
7147
|
TextareaWithDisplayFormat
|
|
6768
7148
|
} from "@transferwise/components";
|
|
6769
7149
|
import { Eye, EyeShut } from "@transferwise/icons";
|
|
6770
|
-
import { useIntl as
|
|
6771
|
-
import { useLayoutEffect as useLayoutEffect3, useRef as
|
|
7150
|
+
import { useIntl as useIntl23 } from "react-intl";
|
|
7151
|
+
import { useLayoutEffect as useLayoutEffect3, useRef as useRef6, useState as useState21 } from "react";
|
|
6772
7152
|
|
|
6773
7153
|
// ../renderers/src/messages/ssn-input.messages.ts
|
|
6774
7154
|
import { defineMessages as defineMessages15 } from "react-intl";
|
|
@@ -6857,7 +7237,7 @@ function getDisplayOffset(displayValue, rawOffset) {
|
|
|
6857
7237
|
}
|
|
6858
7238
|
|
|
6859
7239
|
// ../renderers/src/components/VariableTextInput.tsx
|
|
6860
|
-
import { jsx as
|
|
7240
|
+
import { jsx as jsx105 } from "react/jsx-runtime";
|
|
6861
7241
|
var commonKeys = [
|
|
6862
7242
|
"autoComplete",
|
|
6863
7243
|
"autoCapitalize",
|
|
@@ -6876,14 +7256,14 @@ function VariableTextInput(inputProps) {
|
|
|
6876
7256
|
const commonProps = __spreadProps(__spreadValues({}, pick(inputProps, ...commonKeys)), { name: id });
|
|
6877
7257
|
switch (control) {
|
|
6878
7258
|
case "email":
|
|
6879
|
-
return /* @__PURE__ */
|
|
7259
|
+
return /* @__PURE__ */ jsx105(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "email", onChange }));
|
|
6880
7260
|
case "password":
|
|
6881
|
-
return /* @__PURE__ */
|
|
7261
|
+
return /* @__PURE__ */ jsx105(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "password", onChange }));
|
|
6882
7262
|
case "ssn-input":
|
|
6883
|
-
return /* @__PURE__ */
|
|
7263
|
+
return /* @__PURE__ */ jsx105(SsnInput, __spreadProps(__spreadValues({}, commonProps), { isVisible: isSsnVisible, onChange }));
|
|
6884
7264
|
case "numeric": {
|
|
6885
7265
|
const numericProps = __spreadProps(__spreadValues({}, commonProps), { type: "number", onWheel });
|
|
6886
|
-
return /* @__PURE__ */
|
|
7266
|
+
return /* @__PURE__ */ jsx105(
|
|
6887
7267
|
TextInput,
|
|
6888
7268
|
__spreadProps(__spreadValues({}, numericProps), {
|
|
6889
7269
|
onChange: (newValue) => {
|
|
@@ -6894,9 +7274,9 @@ function VariableTextInput(inputProps) {
|
|
|
6894
7274
|
);
|
|
6895
7275
|
}
|
|
6896
7276
|
case "phone-number":
|
|
6897
|
-
return /* @__PURE__ */
|
|
7277
|
+
return /* @__PURE__ */ jsx105(PhoneNumberInput, __spreadProps(__spreadValues({ initialValue: value }, commonProps), { onChange }));
|
|
6898
7278
|
default: {
|
|
6899
|
-
return /* @__PURE__ */
|
|
7279
|
+
return /* @__PURE__ */ jsx105(TextInput, __spreadProps(__spreadValues({}, commonProps), { type: "text", onChange }));
|
|
6900
7280
|
}
|
|
6901
7281
|
}
|
|
6902
7282
|
}
|
|
@@ -6904,31 +7284,31 @@ function SsnInputToggle({
|
|
|
6904
7284
|
isVisible,
|
|
6905
7285
|
onClick
|
|
6906
7286
|
}) {
|
|
6907
|
-
const { formatMessage } =
|
|
6908
|
-
return /* @__PURE__ */
|
|
6909
|
-
|
|
7287
|
+
const { formatMessage } = useIntl23();
|
|
7288
|
+
return /* @__PURE__ */ jsx105(
|
|
7289
|
+
IconButton5,
|
|
6910
7290
|
{
|
|
6911
7291
|
priority: "minimal",
|
|
6912
7292
|
size: 24,
|
|
6913
7293
|
"aria-label": formatMessage(isVisible ? ssn_input_messages_default.hideValue : ssn_input_messages_default.showValue),
|
|
6914
7294
|
"aria-pressed": isVisible,
|
|
6915
7295
|
onClick,
|
|
6916
|
-
children: isVisible ? /* @__PURE__ */
|
|
7296
|
+
children: isVisible ? /* @__PURE__ */ jsx105(EyeShut, { size: 24 }) : /* @__PURE__ */ jsx105(Eye, { size: 24 })
|
|
6917
7297
|
}
|
|
6918
7298
|
);
|
|
6919
7299
|
}
|
|
6920
7300
|
function TextInput(props) {
|
|
6921
7301
|
const _a = props, { control, displayFormat, onChange, type } = _a, commonProps = __objRest(_a, ["control", "displayFormat", "onChange", "type"]);
|
|
6922
7302
|
const InputWithPattern = control === "textarea" ? TextareaWithDisplayFormat : InputWithDisplayFormat;
|
|
6923
|
-
const InputWithoutPattern = control === "textarea" ? TextArea :
|
|
6924
|
-
return displayFormat ? /* @__PURE__ */
|
|
7303
|
+
const InputWithoutPattern = control === "textarea" ? TextArea : Input7;
|
|
7304
|
+
return displayFormat ? /* @__PURE__ */ jsx105(InputWithPattern, __spreadProps(__spreadValues({ displayPattern: displayFormat }, commonProps), { onChange })) : /* @__PURE__ */ jsx105(InputWithoutPattern, __spreadProps(__spreadValues({}, commonProps), { type, onChange: (e) => onChange(e.target.value) }));
|
|
6925
7305
|
}
|
|
6926
7306
|
function SsnInput(props) {
|
|
6927
7307
|
const _a = props, { displayFormat = "", isVisible = false, onChange, value = "" } = _a, commonProps = __objRest(_a, ["displayFormat", "isVisible", "onChange", "value"]);
|
|
6928
|
-
const [editVersion, setEditVersion] =
|
|
6929
|
-
const inputRef =
|
|
6930
|
-
const selection =
|
|
6931
|
-
const pendingCaret =
|
|
7308
|
+
const [editVersion, setEditVersion] = useState21(0);
|
|
7309
|
+
const inputRef = useRef6(null);
|
|
7310
|
+
const selection = useRef6({ start: 0, end: 0 });
|
|
7311
|
+
const pendingCaret = useRef6(null);
|
|
6932
7312
|
const rawValue = value.replace(/\D/g, "");
|
|
6933
7313
|
const formattedValue = formatSsnValue(rawValue, displayFormat, isVisible);
|
|
6934
7314
|
const scheduleCaret = (rawOffset) => {
|
|
@@ -6958,7 +7338,7 @@ function SsnInput(props) {
|
|
|
6958
7338
|
);
|
|
6959
7339
|
pendingCaret.current = null;
|
|
6960
7340
|
}, [editVersion, formattedValue, rawValue]);
|
|
6961
|
-
return /* @__PURE__ */
|
|
7341
|
+
return /* @__PURE__ */ jsx105(
|
|
6962
7342
|
"input",
|
|
6963
7343
|
__spreadProps(__spreadValues({
|
|
6964
7344
|
ref: inputRef
|
|
@@ -7021,13 +7401,13 @@ function SsnInput(props) {
|
|
|
7021
7401
|
}
|
|
7022
7402
|
|
|
7023
7403
|
// ../renderers/src/TextInputRenderer.tsx
|
|
7024
|
-
import { jsx as
|
|
7404
|
+
import { jsx as jsx106 } from "react/jsx-runtime";
|
|
7025
7405
|
var TextInputRenderer = {
|
|
7026
7406
|
canRenderType: "input-text",
|
|
7027
|
-
render: (props) => /* @__PURE__ */
|
|
7407
|
+
render: (props) => /* @__PURE__ */ jsx106(TextInputRendererComponent, __spreadValues({}, props))
|
|
7028
7408
|
};
|
|
7029
7409
|
function TextInputRendererComponent(props) {
|
|
7030
|
-
const [isSsnVisible, setIsSsnVisible] =
|
|
7410
|
+
const [isSsnVisible, setIsSsnVisible] = useState22(false);
|
|
7031
7411
|
const _a = props, {
|
|
7032
7412
|
id,
|
|
7033
7413
|
title,
|
|
@@ -7059,7 +7439,7 @@ function TextInputRendererComponent(props) {
|
|
|
7059
7439
|
}
|
|
7060
7440
|
}
|
|
7061
7441
|
});
|
|
7062
|
-
return /* @__PURE__ */
|
|
7442
|
+
return /* @__PURE__ */ jsx106(
|
|
7063
7443
|
FieldInput_default,
|
|
7064
7444
|
{
|
|
7065
7445
|
id,
|
|
@@ -7072,13 +7452,13 @@ function TextInputRendererComponent(props) {
|
|
|
7072
7452
|
features: props.features,
|
|
7073
7453
|
control: props.control,
|
|
7074
7454
|
tags: props.tags,
|
|
7075
|
-
children: /* @__PURE__ */
|
|
7076
|
-
|
|
7455
|
+
children: /* @__PURE__ */ jsx106(
|
|
7456
|
+
InputGroup6,
|
|
7077
7457
|
{
|
|
7078
7458
|
addonStart: getInputGroupAddonStart(media),
|
|
7079
7459
|
addonEnd: isSsnInput ? {
|
|
7080
7460
|
interactive: true,
|
|
7081
|
-
content: /* @__PURE__ */
|
|
7461
|
+
content: /* @__PURE__ */ jsx106(
|
|
7082
7462
|
SsnInputToggle,
|
|
7083
7463
|
{
|
|
7084
7464
|
isVisible: isSsnVisible,
|
|
@@ -7086,7 +7466,7 @@ function TextInputRendererComponent(props) {
|
|
|
7086
7466
|
}
|
|
7087
7467
|
)
|
|
7088
7468
|
} : void 0,
|
|
7089
|
-
children: /* @__PURE__ */
|
|
7469
|
+
children: /* @__PURE__ */ jsx106(VariableTextInput, __spreadValues({}, inputProps))
|
|
7090
7470
|
}
|
|
7091
7471
|
)
|
|
7092
7472
|
}
|
|
@@ -7095,12 +7475,12 @@ function TextInputRendererComponent(props) {
|
|
|
7095
7475
|
var TextInputRenderer_default = TextInputRenderer;
|
|
7096
7476
|
|
|
7097
7477
|
// ../renderers/src/UpdatableRenderer.tsx
|
|
7098
|
-
var
|
|
7099
|
-
import { jsx as
|
|
7478
|
+
var import_classnames36 = __toESM(require_classnames());
|
|
7479
|
+
import { jsx as jsx107 } from "react/jsx-runtime";
|
|
7100
7480
|
var UpdatableRenderer = {
|
|
7101
7481
|
canRenderType: "updatable",
|
|
7102
7482
|
render: ({ children, control, margin, tags }) => {
|
|
7103
|
-
return /* @__PURE__ */
|
|
7483
|
+
return /* @__PURE__ */ jsx107("div", { className: (0, import_classnames36.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })), children });
|
|
7104
7484
|
}
|
|
7105
7485
|
};
|
|
7106
7486
|
|
|
@@ -7111,7 +7491,7 @@ import { Status as Status2, Upload, UploadInput as UploadInput2 } from "@transfe
|
|
|
7111
7491
|
var getRandomId = () => Math.random().toString(36).substring(2);
|
|
7112
7492
|
|
|
7113
7493
|
// ../renderers/src/UploadInputRenderer.tsx
|
|
7114
|
-
import { jsx as
|
|
7494
|
+
import { jsx as jsx108 } from "react/jsx-runtime";
|
|
7115
7495
|
var UploadInputRenderer = {
|
|
7116
7496
|
canRenderType: "input-upload",
|
|
7117
7497
|
render: (props) => {
|
|
@@ -7140,7 +7520,7 @@ var UploadInputRenderer = {
|
|
|
7140
7520
|
};
|
|
7141
7521
|
return (
|
|
7142
7522
|
// We don't pass help here as there is no sensible place to display it
|
|
7143
|
-
/* @__PURE__ */
|
|
7523
|
+
/* @__PURE__ */ jsx108(
|
|
7144
7524
|
UploadFieldInput_default,
|
|
7145
7525
|
{
|
|
7146
7526
|
id,
|
|
@@ -7150,7 +7530,7 @@ var UploadInputRenderer = {
|
|
|
7150
7530
|
features,
|
|
7151
7531
|
control,
|
|
7152
7532
|
tags,
|
|
7153
|
-
children: /* @__PURE__ */
|
|
7533
|
+
children: /* @__PURE__ */ jsx108(
|
|
7154
7534
|
UploadInput2,
|
|
7155
7535
|
{
|
|
7156
7536
|
id,
|
|
@@ -7220,7 +7600,7 @@ var LargeUploadRenderer = {
|
|
|
7220
7600
|
};
|
|
7221
7601
|
const filetypes = acceptsToFileTypes(accepts);
|
|
7222
7602
|
const usAccept = filetypes === "*" ? "*" : filetypes.join(",");
|
|
7223
|
-
return /* @__PURE__ */
|
|
7603
|
+
return /* @__PURE__ */ jsx108(
|
|
7224
7604
|
FieldInput_default,
|
|
7225
7605
|
{
|
|
7226
7606
|
id,
|
|
@@ -7231,7 +7611,7 @@ var LargeUploadRenderer = {
|
|
|
7231
7611
|
features,
|
|
7232
7612
|
control,
|
|
7233
7613
|
tags,
|
|
7234
|
-
children: /* @__PURE__ */
|
|
7614
|
+
children: /* @__PURE__ */ jsx108(
|
|
7235
7615
|
Upload,
|
|
7236
7616
|
__spreadProps(__spreadValues({}, uploadProps), {
|
|
7237
7617
|
usAccept,
|
|
@@ -7247,21 +7627,21 @@ var LargeUploadRenderer = {
|
|
|
7247
7627
|
};
|
|
7248
7628
|
|
|
7249
7629
|
// ../renderers/src/UpsellRenderer.tsx
|
|
7250
|
-
var
|
|
7630
|
+
var import_classnames37 = __toESM(require_classnames());
|
|
7251
7631
|
import { Nudge } from "@transferwise/components";
|
|
7252
|
-
import { useState as
|
|
7253
|
-
import { jsx as
|
|
7632
|
+
import { useState as useState23 } from "react";
|
|
7633
|
+
import { jsx as jsx109 } from "react/jsx-runtime";
|
|
7254
7634
|
var UpsellRenderer = {
|
|
7255
7635
|
canRenderType: "upsell",
|
|
7256
7636
|
render: UpsellRendererComponent
|
|
7257
7637
|
};
|
|
7258
7638
|
function UpsellRendererComponent(props) {
|
|
7259
7639
|
const { text, callToAction, media, margin, onDismiss, control, tags } = props;
|
|
7260
|
-
const [isVisible, setIsVisible] =
|
|
7261
|
-
return isVisible ? /* @__PURE__ */
|
|
7640
|
+
const [isVisible, setIsVisible] = useState23(true);
|
|
7641
|
+
return isVisible ? /* @__PURE__ */ jsx109(
|
|
7262
7642
|
Nudge,
|
|
7263
7643
|
{
|
|
7264
|
-
className: (0,
|
|
7644
|
+
className: (0, import_classnames37.default)(getMargin(margin), controlAndTagsToCSSClass({ control, tags })),
|
|
7265
7645
|
mediaName: getMediaName(media),
|
|
7266
7646
|
title: text,
|
|
7267
7647
|
action: __spreadValues({
|
|
@@ -7312,7 +7692,8 @@ var getWiseRenderers = () => [
|
|
|
7312
7692
|
CircularButtonRenderer,
|
|
7313
7693
|
BorderedBackgroundColoredBoxRenderer,
|
|
7314
7694
|
BoxRenderer_default,
|
|
7315
|
-
|
|
7695
|
+
CollectionRendererV2_default,
|
|
7696
|
+
CollectionRendererV1_default,
|
|
7316
7697
|
ButtonRenderer,
|
|
7317
7698
|
ColumnsRenderer_default,
|
|
7318
7699
|
DateInputRenderer_default,
|
|
@@ -7359,11 +7740,11 @@ var getWiseRenderers = () => [
|
|
|
7359
7740
|
|
|
7360
7741
|
// ../renderers/src/InitialLoadingStateRenderer.tsx
|
|
7361
7742
|
import { Loader as Loader2 } from "@transferwise/components";
|
|
7362
|
-
import { jsx as
|
|
7743
|
+
import { jsx as jsx110 } from "react/jsx-runtime";
|
|
7363
7744
|
var InitialLoadingStateRenderer = {
|
|
7364
7745
|
canRenderType: "loading-state",
|
|
7365
7746
|
canRender: ({ stepLoadingState }) => stepLoadingState === "initial",
|
|
7366
|
-
render: () => /* @__PURE__ */
|
|
7747
|
+
render: () => /* @__PURE__ */ jsx110(
|
|
7367
7748
|
Loader2,
|
|
7368
7749
|
{
|
|
7369
7750
|
size: "md",
|
|
@@ -7376,24 +7757,24 @@ var InitialLoadingStateRenderer = {
|
|
|
7376
7757
|
// src/dynamicFlow/DynamicFlowModal.tsx
|
|
7377
7758
|
import { useDynamicFlowModal } from "@wise/dynamic-flow-client";
|
|
7378
7759
|
import { Modal as Modal5 } from "@transferwise/components";
|
|
7379
|
-
import { jsx as
|
|
7760
|
+
import { jsx as jsx111 } from "react/jsx-runtime";
|
|
7380
7761
|
function DynamicFlowModal(props) {
|
|
7381
7762
|
const _a = props, { className = "" } = _a, rest = __objRest(_a, ["className"]);
|
|
7382
7763
|
const dfProps = useWiseToCoreProps(rest);
|
|
7383
7764
|
const df = useDynamicFlowModal(dfProps);
|
|
7384
|
-
return /* @__PURE__ */
|
|
7765
|
+
return /* @__PURE__ */ jsx111(
|
|
7385
7766
|
Modal5,
|
|
7386
7767
|
__spreadProps(__spreadValues({
|
|
7387
7768
|
className: `dynamic-flow-modal ${className}`,
|
|
7388
7769
|
disableDimmerClickToClose: true
|
|
7389
7770
|
}, df.modal), {
|
|
7390
|
-
body: /* @__PURE__ */
|
|
7771
|
+
body: /* @__PURE__ */ jsx111("div", { className: "dynamic-flow-modal", children: df.modal.body })
|
|
7391
7772
|
})
|
|
7392
7773
|
);
|
|
7393
7774
|
}
|
|
7394
7775
|
|
|
7395
7776
|
// src/dynamicFlow/getMergedRenderers.tsx
|
|
7396
|
-
import { jsx as
|
|
7777
|
+
import { jsx as jsx112 } from "react/jsx-runtime";
|
|
7397
7778
|
var wiseRenderers = getWiseRenderers();
|
|
7398
7779
|
var getMergedRenderers = (props) => {
|
|
7399
7780
|
var _d, _e;
|
|
@@ -7407,7 +7788,7 @@ var getMergedRenderers = (props) => {
|
|
|
7407
7788
|
method: initialRequest.method,
|
|
7408
7789
|
data: initialRequest.body
|
|
7409
7790
|
};
|
|
7410
|
-
return presentation.type === "push" ? /* @__PURE__ */
|
|
7791
|
+
return presentation.type === "push" ? /* @__PURE__ */ jsx112(DynamicFlow, __spreadProps(__spreadValues(__spreadValues({}, restProps), rest), { features: subflowFeatures, initialAction: action })) : /* @__PURE__ */ jsx112(
|
|
7411
7792
|
DynamicFlowModal,
|
|
7412
7793
|
__spreadProps(__spreadValues(__spreadValues({}, restProps), rest), {
|
|
7413
7794
|
features: subflowFeatures,
|
|
@@ -7487,7 +7868,7 @@ var customEventsToAnalytics = {
|
|
|
7487
7868
|
|
|
7488
7869
|
// src/dynamicFlow/useOnCopy.tsx
|
|
7489
7870
|
import { useCallback as useCallback2 } from "react";
|
|
7490
|
-
import { useIntl as
|
|
7871
|
+
import { useIntl as useIntl24 } from "react-intl";
|
|
7491
7872
|
|
|
7492
7873
|
// src/dynamicFlow/messages.ts
|
|
7493
7874
|
import { defineMessages as defineMessages16 } from "react-intl";
|
|
@@ -7506,7 +7887,7 @@ var messages_default = defineMessages16({
|
|
|
7506
7887
|
|
|
7507
7888
|
// src/dynamicFlow/useOnCopy.tsx
|
|
7508
7889
|
var useOnCopy = () => {
|
|
7509
|
-
const { formatMessage } =
|
|
7890
|
+
const { formatMessage } = useIntl24();
|
|
7510
7891
|
const createSnackBar = useSnackBarIfAvailable();
|
|
7511
7892
|
return useCallback2(
|
|
7512
7893
|
(copiedContent) => {
|
|
@@ -7522,9 +7903,9 @@ var useOnCopy = () => {
|
|
|
7522
7903
|
|
|
7523
7904
|
// src/dynamicFlow/useWiseHttpClient.tsx
|
|
7524
7905
|
import { useCallback as useCallback3 } from "react";
|
|
7525
|
-
import { useIntl as
|
|
7906
|
+
import { useIntl as useIntl25 } from "react-intl";
|
|
7526
7907
|
var useWiseHttpClient = (httpClient) => {
|
|
7527
|
-
const { locale } =
|
|
7908
|
+
const { locale } = useIntl25();
|
|
7528
7909
|
return useCallback3(
|
|
7529
7910
|
async (input, init = {}) => {
|
|
7530
7911
|
const headers = new Headers(init.headers);
|
|
@@ -7604,13 +7985,13 @@ var openLinkInNewTab = (url) => {
|
|
|
7604
7985
|
};
|
|
7605
7986
|
|
|
7606
7987
|
// src/dynamicFlow/DynamicFlow.tsx
|
|
7607
|
-
import { jsxs as
|
|
7988
|
+
import { jsxs as jsxs41 } from "react/jsx-runtime";
|
|
7608
7989
|
function DynamicFlow(props) {
|
|
7609
7990
|
const { className = "" } = props;
|
|
7610
7991
|
const dfProps = useWiseToCoreProps(props);
|
|
7611
7992
|
const df = useDynamicFlow(dfProps);
|
|
7612
7993
|
const { onContextMenu, contextMenu } = useDFContextMenu(df.controller);
|
|
7613
|
-
return /* @__PURE__ */
|
|
7994
|
+
return /* @__PURE__ */ jsxs41("div", { className, onContextMenu, children: [
|
|
7614
7995
|
df.view,
|
|
7615
7996
|
contextMenu
|
|
7616
7997
|
] });
|
|
@@ -7622,7 +8003,7 @@ import {
|
|
|
7622
8003
|
useImperativeHandle
|
|
7623
8004
|
} from "react";
|
|
7624
8005
|
import { useDynamicFlow as useDynamicFlow2 } from "@wise/dynamic-flow-client";
|
|
7625
|
-
import { jsx as
|
|
8006
|
+
import { jsx as jsx113 } from "react/jsx-runtime";
|
|
7626
8007
|
var DynamicFlowWithRef = forwardRef(function DynamicFlowWithRef2(props, ref) {
|
|
7627
8008
|
const { className = "" } = props;
|
|
7628
8009
|
const dfProps = useWiseToCoreProps(props);
|
|
@@ -7638,7 +8019,7 @@ var DynamicFlowWithRef = forwardRef(function DynamicFlowWithRef2(props, ref) {
|
|
|
7638
8019
|
}),
|
|
7639
8020
|
[df]
|
|
7640
8021
|
);
|
|
7641
|
-
return /* @__PURE__ */
|
|
8022
|
+
return /* @__PURE__ */ jsx113("div", { className, children: df.view });
|
|
7642
8023
|
});
|
|
7643
8024
|
|
|
7644
8025
|
// src/index.ts
|
|
@@ -7700,8 +8081,8 @@ var cs_default = {
|
|
|
7700
8081
|
"df.wise.group.currencies-with-account-details": "M\u011Bny s detaily \xFA\u010Dtu",
|
|
7701
8082
|
"df.wise.group.popular": "Popul\xE1rn\xED",
|
|
7702
8083
|
"df.wise.group.recent": "Ned\xE1vn\xE9",
|
|
7703
|
-
"df.wise.ssnInput.hideValue": "
|
|
7704
|
-
"df.wise.ssnInput.showValue": "
|
|
8084
|
+
"df.wise.ssnInput.hideValue": "Skr\xFDt hodnotu",
|
|
8085
|
+
"df.wise.ssnInput.showValue": "Zobrazit hodnotu",
|
|
7705
8086
|
"df.wise.step.scrollToBottom": "P\u0159ej\xEDt na konec"
|
|
7706
8087
|
};
|
|
7707
8088
|
|
|
@@ -7768,6 +8149,8 @@ var en_default = {
|
|
|
7768
8149
|
"df.wise.ButtonLayout.buttonLoadingMessage": "This might take a few seconds",
|
|
7769
8150
|
"df.wise.Collection.clearText": "Clear text",
|
|
7770
8151
|
"df.wise.Collection.loadMoreMessage": "Load more",
|
|
8152
|
+
"df.wise.Collection.showLessResultsButton": "Show less results",
|
|
8153
|
+
"df.wise.Collection.showMoreResultsButton": "Show all {count} results",
|
|
7771
8154
|
"df.wise.ControlFeedback.maxLength": "Please enter {maxLength} or fewer characters.",
|
|
7772
8155
|
"df.wise.ControlFeedback.maximum": "Please enter a number that's {maximum} or less.",
|
|
7773
8156
|
"df.wise.ControlFeedback.maximumDate": "Please enter a date that's on or before {maximum}.",
|
|
@@ -7960,8 +8343,8 @@ var hu_default = {
|
|
|
7960
8343
|
"df.wise.group.currencies-with-account-details": "P\xE9nznemek sz\xE1mlaadatokkal",
|
|
7961
8344
|
"df.wise.group.popular": "N\xE9pszer\u0171",
|
|
7962
8345
|
"df.wise.group.recent": "Legut\xF3bbi",
|
|
7963
|
-
"df.wise.ssnInput.hideValue": "
|
|
7964
|
-
"df.wise.ssnInput.showValue": "
|
|
8346
|
+
"df.wise.ssnInput.hideValue": "\xC9rt\xE9k elrejt\xE9se",
|
|
8347
|
+
"df.wise.ssnInput.showValue": "\xC9rt\xE9k megjelen\xEDt\xE9se",
|
|
7965
8348
|
"df.wise.step.scrollToBottom": "G\xF6rgess legalulra"
|
|
7966
8349
|
};
|
|
7967
8350
|
|
|
@@ -8064,8 +8447,8 @@ var it_default = {
|
|
|
8064
8447
|
"df.wise.group.currencies-with-account-details": "Valute con estremi del conto",
|
|
8065
8448
|
"df.wise.group.popular": "Popolari",
|
|
8066
8449
|
"df.wise.group.recent": "Recenti",
|
|
8067
|
-
"df.wise.ssnInput.hideValue": "
|
|
8068
|
-
"df.wise.ssnInput.showValue": "
|
|
8450
|
+
"df.wise.ssnInput.hideValue": "Nascondi valore",
|
|
8451
|
+
"df.wise.ssnInput.showValue": "Mostra valore",
|
|
8069
8452
|
"df.wise.step.scrollToBottom": "Scorri fino in fondo"
|
|
8070
8453
|
};
|
|
8071
8454
|
|
|
@@ -8116,8 +8499,8 @@ var ja_default = {
|
|
|
8116
8499
|
"df.wise.group.currencies-with-account-details": "\u53E3\u5EA7\u60C5\u5831\u3092\u53D6\u5F97\u3067\u304D\u308B\u901A\u8CA8",
|
|
8117
8500
|
"df.wise.group.popular": "\u4EBA\u6C17",
|
|
8118
8501
|
"df.wise.group.recent": "\u6700\u8FD1",
|
|
8119
|
-
"df.wise.ssnInput.hideValue": "
|
|
8120
|
-
"df.wise.ssnInput.showValue": "
|
|
8502
|
+
"df.wise.ssnInput.hideValue": "\u756A\u53F7\u3092\u975E\u8868\u793A",
|
|
8503
|
+
"df.wise.ssnInput.showValue": "\u756A\u53F7\u3092\u8868\u793A",
|
|
8121
8504
|
"df.wise.step.scrollToBottom": "\u4E0B\u307E\u3067\u30B9\u30AF\u30ED\u30FC\u30EB\u3059\u308B"
|
|
8122
8505
|
};
|
|
8123
8506
|
|
|
@@ -8168,8 +8551,8 @@ var nl_default = {
|
|
|
8168
8551
|
"df.wise.group.currencies-with-account-details": "Valuta's met rekeninggegevens",
|
|
8169
8552
|
"df.wise.group.popular": "Populair",
|
|
8170
8553
|
"df.wise.group.recent": "Recent",
|
|
8171
|
-
"df.wise.ssnInput.hideValue": "
|
|
8172
|
-
"df.wise.ssnInput.showValue": "
|
|
8554
|
+
"df.wise.ssnInput.hideValue": "Waarde verbergen",
|
|
8555
|
+
"df.wise.ssnInput.showValue": "Waarde weergeven",
|
|
8173
8556
|
"df.wise.step.scrollToBottom": "Scrol omlaag"
|
|
8174
8557
|
};
|
|
8175
8558
|
|
|
@@ -8220,8 +8603,8 @@ var pl_default = {
|
|
|
8220
8603
|
"df.wise.group.currencies-with-account-details": "Waluty z danymi bankowymi",
|
|
8221
8604
|
"df.wise.group.popular": "Popularne",
|
|
8222
8605
|
"df.wise.group.recent": "Ostatnie",
|
|
8223
|
-
"df.wise.ssnInput.hideValue": "
|
|
8224
|
-
"df.wise.ssnInput.showValue": "
|
|
8606
|
+
"df.wise.ssnInput.hideValue": "Ukryj warto\u015B\u0107",
|
|
8607
|
+
"df.wise.ssnInput.showValue": "Poka\u017C warto\u015B\u0107",
|
|
8225
8608
|
"df.wise.step.scrollToBottom": "Przewi\u0144 w d\xF3\u0142"
|
|
8226
8609
|
};
|
|
8227
8610
|
|
|
@@ -8272,8 +8655,8 @@ var pt_default = {
|
|
|
8272
8655
|
"df.wise.group.currencies-with-account-details": "Moedas com dados de conta",
|
|
8273
8656
|
"df.wise.group.popular": "Popular",
|
|
8274
8657
|
"df.wise.group.recent": "Recente",
|
|
8275
|
-
"df.wise.ssnInput.hideValue": "
|
|
8276
|
-
"df.wise.ssnInput.showValue": "
|
|
8658
|
+
"df.wise.ssnInput.hideValue": "Ocultar valor",
|
|
8659
|
+
"df.wise.ssnInput.showValue": "Exibir valor",
|
|
8277
8660
|
"df.wise.step.scrollToBottom": "Descer at\xE9 o final da p\xE1gina"
|
|
8278
8661
|
};
|
|
8279
8662
|
|
|
@@ -8324,8 +8707,8 @@ var ro_default = {
|
|
|
8324
8707
|
"df.wise.group.currencies-with-account-details": "Monede cu detalii de cont",
|
|
8325
8708
|
"df.wise.group.popular": "Populare",
|
|
8326
8709
|
"df.wise.group.recent": "Recente",
|
|
8327
|
-
"df.wise.ssnInput.hideValue": "
|
|
8328
|
-
"df.wise.ssnInput.showValue": "
|
|
8710
|
+
"df.wise.ssnInput.hideValue": "Ascunde valoarea",
|
|
8711
|
+
"df.wise.ssnInput.showValue": "Arat\u0103 valoarea",
|
|
8329
8712
|
"df.wise.step.scrollToBottom": "Deruleaz\u0103 \xEEn jos"
|
|
8330
8713
|
};
|
|
8331
8714
|
|
|
@@ -8376,8 +8759,8 @@ var ru_default = {
|
|
|
8376
8759
|
"df.wise.group.currencies-with-account-details": "\u0412\u0430\u043B\u044E\u0442\u044B \u0441 \u0440\u0435\u043A\u0432\u0438\u0437\u0438\u0442\u0430\u043C\u0438 \u0441\u0447\u0435\u0442\u0430",
|
|
8377
8760
|
"df.wise.group.popular": "\u041F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u044B\u0435",
|
|
8378
8761
|
"df.wise.group.recent": "\u041D\u0435\u0434\u0430\u0432\u043D\u0438\u0435",
|
|
8379
|
-
"df.wise.ssnInput.hideValue": "
|
|
8380
|
-
"df.wise.ssnInput.showValue": "
|
|
8762
|
+
"df.wise.ssnInput.hideValue": "\u0421\u043A\u0440\u044B\u0442\u044C \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435",
|
|
8763
|
+
"df.wise.ssnInput.showValue": "\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435",
|
|
8381
8764
|
"df.wise.step.scrollToBottom": "\u041F\u0440\u043E\u043B\u0438\u0441\u0442\u0430\u0439\u0442\u0435 \u0432\u043D\u0438\u0437"
|
|
8382
8765
|
};
|
|
8383
8766
|
|
|
@@ -8584,8 +8967,8 @@ var zh_HK_default = {
|
|
|
8584
8967
|
"df.wise.group.currencies-with-account-details": "\u63D0\u4F9B\u5E33\u6236\u8CC7\u6599\u7684\u8CA8\u5E63",
|
|
8585
8968
|
"df.wise.group.popular": "\u71B1\u9580",
|
|
8586
8969
|
"df.wise.group.recent": "\u6700\u8FD1\u7684",
|
|
8587
|
-
"df.wise.ssnInput.hideValue": "
|
|
8588
|
-
"df.wise.ssnInput.showValue": "
|
|
8970
|
+
"df.wise.ssnInput.hideValue": "\u96B1\u85CF\u503C",
|
|
8971
|
+
"df.wise.ssnInput.showValue": "\u986F\u793A\u503C",
|
|
8589
8972
|
"df.wise.step.scrollToBottom": "\u6ED1\u52D5\u5230\u6700\u5E95\u90E8"
|
|
8590
8973
|
};
|
|
8591
8974
|
|