@wise/dynamic-flow-client 3.15.3 → 3.16.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/main.js +177 -85
- package/build/main.min.js +1 -1
- package/build/main.mjs +178 -86
- package/build/types/legacy/formControl/FormControl.d.ts +1 -0
- package/build/types/legacy/jsonSchemaForm/schemaFormControl/SchemaFormControl.d.ts +1 -0
- package/build/types/legacy/layout/alert/DynamicAlert.d.ts +5 -4
- package/build/types/revamp/domain/components/AlertComponent.d.ts +14 -1
- package/build/types/revamp/domain/mappers/layout/alertLayoutToComponent.d.ts +3 -1
- package/build/types/revamp/renderers/mappers/alertComponentToProps.d.ts +1 -1
- package/package.json +4 -4
package/build/main.mjs
CHANGED
|
@@ -1428,11 +1428,19 @@ var stepComponentToProps = ({
|
|
|
1428
1428
|
|
|
1429
1429
|
// src/revamp/renderers/mappers/alertComponentToProps.ts
|
|
1430
1430
|
var alertComponentToProps = ({
|
|
1431
|
+
callToAction,
|
|
1432
|
+
context,
|
|
1433
|
+
control,
|
|
1434
|
+
margin,
|
|
1435
|
+
markdown
|
|
1436
|
+
}) => ({
|
|
1437
|
+
type: "alert",
|
|
1438
|
+
callToAction,
|
|
1431
1439
|
context,
|
|
1432
1440
|
control,
|
|
1433
1441
|
margin,
|
|
1434
1442
|
markdown
|
|
1435
|
-
})
|
|
1443
|
+
});
|
|
1436
1444
|
|
|
1437
1445
|
// src/revamp/renderers/mappers/allOfComponentToProps.ts
|
|
1438
1446
|
var allOfComponentToProps = ({ control, description, help, title }, children) => ({
|
|
@@ -5927,13 +5935,6 @@ var loadingIndicatorLayoutSchema = z.object({
|
|
|
5927
5935
|
control: z.string().optional(),
|
|
5928
5936
|
margin: sizeSchema.optional()
|
|
5929
5937
|
});
|
|
5930
|
-
var alertLayoutSchema = z.object({
|
|
5931
|
-
type: z.literal("alert"),
|
|
5932
|
-
markdown: z.string(),
|
|
5933
|
-
context: contextSchema.optional(),
|
|
5934
|
-
control: z.string().optional(),
|
|
5935
|
-
margin: sizeSchema.optional()
|
|
5936
|
-
});
|
|
5937
5938
|
var paragraphLayoutSchema = z.object({
|
|
5938
5939
|
type: z.literal("paragraph"),
|
|
5939
5940
|
text: z.string(),
|
|
@@ -6088,6 +6089,9 @@ var actionTypeSchema = z.union([
|
|
|
6088
6089
|
z.literal("negative")
|
|
6089
6090
|
]);
|
|
6090
6091
|
var summarySchema = z.union([summaryProviderSchema, summarySummariserSchema]);
|
|
6092
|
+
var linkSchema = z.object({
|
|
6093
|
+
url: z.string()
|
|
6094
|
+
});
|
|
6091
6095
|
var actionSchema = z.object({
|
|
6092
6096
|
title: z.string().optional(),
|
|
6093
6097
|
type: actionTypeSchema.optional(),
|
|
@@ -6146,6 +6150,10 @@ var reviewLayoutFieldSchema = z.object({
|
|
|
6146
6150
|
value: z.string(),
|
|
6147
6151
|
help: helpSchema.optional()
|
|
6148
6152
|
});
|
|
6153
|
+
var behaviorSchema = z.object({
|
|
6154
|
+
action: actionSchema.optional(),
|
|
6155
|
+
link: linkSchema.optional()
|
|
6156
|
+
});
|
|
6149
6157
|
var searchResultSearchSchema = z.object({
|
|
6150
6158
|
type: z.literal("search"),
|
|
6151
6159
|
title: z.string(),
|
|
@@ -6176,44 +6184,6 @@ var linkHandlerSchema = z.object({
|
|
|
6176
6184
|
regexPattern: z.string(),
|
|
6177
6185
|
action: actionSchema
|
|
6178
6186
|
});
|
|
6179
|
-
var blobSchemaSchema = z.object({
|
|
6180
|
-
type: z.literal("blob"),
|
|
6181
|
-
promoted: z.boolean().optional(),
|
|
6182
|
-
$id: z.string().optional(),
|
|
6183
|
-
title: z.string().optional(),
|
|
6184
|
-
description: z.string().optional(),
|
|
6185
|
-
control: z.string().optional(),
|
|
6186
|
-
hidden: z.boolean().optional(),
|
|
6187
|
-
icon: iconSchema.optional(),
|
|
6188
|
-
image: imageSchema.optional(),
|
|
6189
|
-
keywords: z.array(z.string()).optional(),
|
|
6190
|
-
summary: summaryProviderSchema.optional(),
|
|
6191
|
-
analyticsId: z.string().optional(),
|
|
6192
|
-
validationAsync: validateAsyncSchema.optional(),
|
|
6193
|
-
validationMessages: z.record(z.string()).optional(),
|
|
6194
|
-
alert: alertLayoutSchema.optional(),
|
|
6195
|
-
cameraConfig: jsonElementSchema.optional(),
|
|
6196
|
-
accepts: z.array(z.string()).optional(),
|
|
6197
|
-
maxSize: z.number().optional(),
|
|
6198
|
-
source: uploadSourceSchema.optional(),
|
|
6199
|
-
disabled: z.boolean().optional()
|
|
6200
|
-
});
|
|
6201
|
-
var constSchemaSchema = z.object({
|
|
6202
|
-
hidden: z.boolean().optional(),
|
|
6203
|
-
alert: alertLayoutSchema.optional(),
|
|
6204
|
-
control: z.string().optional(),
|
|
6205
|
-
promoted: z.boolean().optional(),
|
|
6206
|
-
$id: z.string().optional(),
|
|
6207
|
-
const: jsonElementSchema,
|
|
6208
|
-
title: z.string().optional(),
|
|
6209
|
-
description: z.string().optional(),
|
|
6210
|
-
icon: iconSchema.optional(),
|
|
6211
|
-
image: imageSchema.optional(),
|
|
6212
|
-
keywords: z.array(z.string()).optional(),
|
|
6213
|
-
summary: summaryProviderSchema.optional(),
|
|
6214
|
-
analyticsId: z.string().optional(),
|
|
6215
|
-
disabled: z.boolean().optional()
|
|
6216
|
-
});
|
|
6217
6187
|
var pollingOnErrorSchema = z.object({
|
|
6218
6188
|
action: actionSchema
|
|
6219
6189
|
});
|
|
@@ -6225,6 +6195,11 @@ var reviewLayoutCallToActionSchema = z.object({
|
|
|
6225
6195
|
title: z.string(),
|
|
6226
6196
|
action: actionSchema
|
|
6227
6197
|
});
|
|
6198
|
+
var alertLayoutCallToActionSchema = z.object({
|
|
6199
|
+
title: z.string(),
|
|
6200
|
+
accessibilityDescription: z.string().optional(),
|
|
6201
|
+
behavior: behaviorSchema
|
|
6202
|
+
});
|
|
6228
6203
|
var listLayoutSchema = z.object({
|
|
6229
6204
|
type: z.literal("list"),
|
|
6230
6205
|
items: z.array(listLayoutItemSchema),
|
|
@@ -6268,9 +6243,55 @@ var navigationSchema = z.object({
|
|
|
6268
6243
|
back: navigationBackBehaviourSchema.optional(),
|
|
6269
6244
|
stackBehavior: navigationStackBehaviorSchema.optional()
|
|
6270
6245
|
});
|
|
6246
|
+
var alertLayoutSchema = z.object({
|
|
6247
|
+
type: z.literal("alert"),
|
|
6248
|
+
markdown: z.string(),
|
|
6249
|
+
context: contextSchema.optional(),
|
|
6250
|
+
control: z.string().optional(),
|
|
6251
|
+
margin: sizeSchema.optional(),
|
|
6252
|
+
callToAction: alertLayoutCallToActionSchema.optional()
|
|
6253
|
+
});
|
|
6271
6254
|
var searchResponseBodySchema = z.object({
|
|
6272
6255
|
results: z.array(searchResultSchema)
|
|
6273
6256
|
});
|
|
6257
|
+
var blobSchemaSchema = z.object({
|
|
6258
|
+
type: z.literal("blob"),
|
|
6259
|
+
promoted: z.boolean().optional(),
|
|
6260
|
+
$id: z.string().optional(),
|
|
6261
|
+
title: z.string().optional(),
|
|
6262
|
+
description: z.string().optional(),
|
|
6263
|
+
control: z.string().optional(),
|
|
6264
|
+
hidden: z.boolean().optional(),
|
|
6265
|
+
icon: iconSchema.optional(),
|
|
6266
|
+
image: imageSchema.optional(),
|
|
6267
|
+
keywords: z.array(z.string()).optional(),
|
|
6268
|
+
summary: summaryProviderSchema.optional(),
|
|
6269
|
+
analyticsId: z.string().optional(),
|
|
6270
|
+
validationAsync: validateAsyncSchema.optional(),
|
|
6271
|
+
validationMessages: z.record(z.string()).optional(),
|
|
6272
|
+
alert: alertLayoutSchema.optional(),
|
|
6273
|
+
cameraConfig: jsonElementSchema.optional(),
|
|
6274
|
+
accepts: z.array(z.string()).optional(),
|
|
6275
|
+
maxSize: z.number().optional(),
|
|
6276
|
+
source: uploadSourceSchema.optional(),
|
|
6277
|
+
disabled: z.boolean().optional()
|
|
6278
|
+
});
|
|
6279
|
+
var constSchemaSchema = z.object({
|
|
6280
|
+
hidden: z.boolean().optional(),
|
|
6281
|
+
alert: alertLayoutSchema.optional(),
|
|
6282
|
+
control: z.string().optional(),
|
|
6283
|
+
promoted: z.boolean().optional(),
|
|
6284
|
+
$id: z.string().optional(),
|
|
6285
|
+
const: jsonElementSchema,
|
|
6286
|
+
title: z.string().optional(),
|
|
6287
|
+
description: z.string().optional(),
|
|
6288
|
+
icon: iconSchema.optional(),
|
|
6289
|
+
image: imageSchema.optional(),
|
|
6290
|
+
keywords: z.array(z.string()).optional(),
|
|
6291
|
+
summary: summaryProviderSchema.optional(),
|
|
6292
|
+
analyticsId: z.string().optional(),
|
|
6293
|
+
disabled: z.boolean().optional()
|
|
6294
|
+
});
|
|
6274
6295
|
var layoutSchema = z.lazy(
|
|
6275
6296
|
() => z.union([
|
|
6276
6297
|
alertLayoutSchema,
|
|
@@ -6915,13 +6936,39 @@ var legacyActionTypeToControl = {
|
|
|
6915
6936
|
var mapLegacyActionTypeToControl = (type) => type && type in legacyActionTypeToControl ? legacyActionTypeToControl[type] : "secondary";
|
|
6916
6937
|
|
|
6917
6938
|
// src/revamp/domain/mappers/layout/alertLayoutToComponent.ts
|
|
6918
|
-
var alertLayoutToComponent = (uid, { control, markdown, margin = "md", context = "neutral" }) =>
|
|
6919
|
-
|
|
6920
|
-
|
|
6921
|
-
|
|
6922
|
-
|
|
6923
|
-
|
|
6924
|
-
|
|
6939
|
+
var alertLayoutToComponent = (uid, { control, markdown, margin = "md", context = "neutral", callToAction }, { onAction }) => {
|
|
6940
|
+
return createAlertComponent({
|
|
6941
|
+
uid,
|
|
6942
|
+
control,
|
|
6943
|
+
markdown,
|
|
6944
|
+
margin,
|
|
6945
|
+
callToAction: callToAction ? getComponentCallToAction(callToAction, onAction) : void 0,
|
|
6946
|
+
context: mapLegacyContext(context)
|
|
6947
|
+
});
|
|
6948
|
+
};
|
|
6949
|
+
var getComponentCallToAction = (callToAction, onAction) => {
|
|
6950
|
+
const { accessibilityDescription, behavior, title } = callToAction;
|
|
6951
|
+
if (behavior.link) {
|
|
6952
|
+
const { url } = behavior.link;
|
|
6953
|
+
return {
|
|
6954
|
+
type: "link",
|
|
6955
|
+
accessibilityDescription,
|
|
6956
|
+
href: url,
|
|
6957
|
+
title
|
|
6958
|
+
};
|
|
6959
|
+
}
|
|
6960
|
+
if (behavior.action) {
|
|
6961
|
+
const { action } = behavior;
|
|
6962
|
+
return {
|
|
6963
|
+
type: "action",
|
|
6964
|
+
accessibilityDescription,
|
|
6965
|
+
title,
|
|
6966
|
+
onClick: () => {
|
|
6967
|
+
void onAction(action);
|
|
6968
|
+
}
|
|
6969
|
+
};
|
|
6970
|
+
}
|
|
6971
|
+
};
|
|
6925
6972
|
|
|
6926
6973
|
// src/revamp/domain/components/BoxComponent.ts
|
|
6927
6974
|
var createBoxComponent = (boxProps) => __spreadProps(__spreadValues({}, boxProps), {
|
|
@@ -9605,7 +9652,7 @@ var mapSchemaToComponent = (schemaMapperProps, mapperProps) => {
|
|
|
9605
9652
|
return createContainerComponent({
|
|
9606
9653
|
uid,
|
|
9607
9654
|
components: [
|
|
9608
|
-
alertLayoutToComponent(`${uid}.container.alert`, alert),
|
|
9655
|
+
alertLayoutToComponent(`${uid}.container.alert`, alert, mapperProps),
|
|
9609
9656
|
getSchemaComponent(__spreadProps(__spreadValues({}, schemaMapperProps), { uid: `${uid}.container` }), mapperProps)
|
|
9610
9657
|
]
|
|
9611
9658
|
});
|
|
@@ -9901,13 +9948,17 @@ var getReviewAction = (onAction, callToAction, action) => {
|
|
|
9901
9948
|
if (callToAction) {
|
|
9902
9949
|
return {
|
|
9903
9950
|
title: callToAction.title,
|
|
9904
|
-
onClick: () =>
|
|
9951
|
+
onClick: () => {
|
|
9952
|
+
void onAction(callToAction.action);
|
|
9953
|
+
}
|
|
9905
9954
|
};
|
|
9906
9955
|
}
|
|
9907
9956
|
if (action == null ? void 0 : action.title) {
|
|
9908
9957
|
return {
|
|
9909
9958
|
title: action.title,
|
|
9910
|
-
onClick: () =>
|
|
9959
|
+
onClick: () => {
|
|
9960
|
+
void onAction(action);
|
|
9961
|
+
}
|
|
9911
9962
|
};
|
|
9912
9963
|
}
|
|
9913
9964
|
return void 0;
|
|
@@ -10104,7 +10155,7 @@ var mapLegacyStatus = (status) => {
|
|
|
10104
10155
|
var mapLayoutToComponent = (uid, layout, mapperProps) => {
|
|
10105
10156
|
switch (layout.type) {
|
|
10106
10157
|
case "alert":
|
|
10107
|
-
return alertLayoutToComponent(uid, layout);
|
|
10158
|
+
return alertLayoutToComponent(uid, layout, mapperProps);
|
|
10108
10159
|
case "box":
|
|
10109
10160
|
return boxLayoutToComponent(uid, layout, mapperProps);
|
|
10110
10161
|
case "button":
|
|
@@ -10877,7 +10928,20 @@ var getTextAlignmentAndMargin = (component) => `${getTextAlignment(component.ali
|
|
|
10877
10928
|
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
10878
10929
|
var AlertRenderer = {
|
|
10879
10930
|
canRenderType: "alert",
|
|
10880
|
-
render: ({ context, markdown, margin }) => /* @__PURE__ */ jsx7(
|
|
10931
|
+
render: ({ context, markdown, margin, callToAction }) => /* @__PURE__ */ jsx7(
|
|
10932
|
+
Alert2,
|
|
10933
|
+
{
|
|
10934
|
+
type: context,
|
|
10935
|
+
className: getMargin(margin),
|
|
10936
|
+
message: markdown,
|
|
10937
|
+
action: (callToAction == null ? void 0 : callToAction.type) === "link" ? {
|
|
10938
|
+
text: callToAction.title,
|
|
10939
|
+
"aria-label": callToAction.accessibilityDescription,
|
|
10940
|
+
href: callToAction.href,
|
|
10941
|
+
target: "_blank"
|
|
10942
|
+
} : void 0
|
|
10943
|
+
}
|
|
10944
|
+
)
|
|
10881
10945
|
};
|
|
10882
10946
|
var AlertRenderer_default = AlertRenderer;
|
|
10883
10947
|
|
|
@@ -12099,23 +12163,26 @@ function SearchResults({
|
|
|
12099
12163
|
state
|
|
12100
12164
|
}) {
|
|
12101
12165
|
const trackEvent = useTrackEvent();
|
|
12102
|
-
return /* @__PURE__ */ jsx41(NavigationOptionsList2, { children: state.results.map((result) =>
|
|
12103
|
-
|
|
12104
|
-
|
|
12105
|
-
|
|
12106
|
-
|
|
12107
|
-
|
|
12108
|
-
|
|
12109
|
-
|
|
12110
|
-
|
|
12111
|
-
|
|
12112
|
-
|
|
12113
|
-
|
|
12114
|
-
|
|
12115
|
-
|
|
12116
|
-
|
|
12117
|
-
|
|
12118
|
-
|
|
12166
|
+
return /* @__PURE__ */ jsx41(NavigationOptionsList2, { children: state.results.map((result) => {
|
|
12167
|
+
const { icon, image } = result;
|
|
12168
|
+
return /* @__PURE__ */ jsx41(
|
|
12169
|
+
NavigationOption3,
|
|
12170
|
+
{
|
|
12171
|
+
title: result.title,
|
|
12172
|
+
content: result.description,
|
|
12173
|
+
media: NavigationOptionMedia({ icon, image }),
|
|
12174
|
+
showMediaCircle: false,
|
|
12175
|
+
showMediaAtAllSizes: true,
|
|
12176
|
+
onClick: () => {
|
|
12177
|
+
trackEvent("Search Result Selected", __spreadValues({
|
|
12178
|
+
type: result.type
|
|
12179
|
+
}, result.type === "action" ? { actionId: result.id } : {}));
|
|
12180
|
+
result.onClick();
|
|
12181
|
+
}
|
|
12182
|
+
},
|
|
12183
|
+
JSON.stringify(result)
|
|
12184
|
+
);
|
|
12185
|
+
}) });
|
|
12119
12186
|
}
|
|
12120
12187
|
var BlockSearchRendererComponent_default = BlockSearchRendererComponent;
|
|
12121
12188
|
|
|
@@ -12804,7 +12871,7 @@ function BackButton({ title, onClick }) {
|
|
|
12804
12871
|
var BackButton_default = BackButton;
|
|
12805
12872
|
|
|
12806
12873
|
// ../renderers/src/step/StepRenderer.tsx
|
|
12807
|
-
import { Alert as Alert3 } from "@transferwise/components";
|
|
12874
|
+
import { Alert as Alert3, Title } from "@transferwise/components";
|
|
12808
12875
|
import { jsx as jsx57, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
12809
12876
|
var StepRenderer = {
|
|
12810
12877
|
canRenderType: "step",
|
|
@@ -12819,7 +12886,7 @@ function StepRendererComponent(props) {
|
|
|
12819
12886
|
}
|
|
12820
12887
|
return /* @__PURE__ */ jsxs22(StepRendererContextProvider, { value, children: [
|
|
12821
12888
|
back ? /* @__PURE__ */ jsx57(BackButton_default, __spreadValues({}, back)) : null,
|
|
12822
|
-
title ? /* @__PURE__ */ jsx57("
|
|
12889
|
+
title ? /* @__PURE__ */ jsx57(Title, { as: "h1", type: "title-section", className: "text-xs-center m-b-2", children: title }) : void 0,
|
|
12823
12890
|
description ? /* @__PURE__ */ jsx57("p", { className: "text-xs-center m-b-2", children: description }) : void 0,
|
|
12824
12891
|
error ? /* @__PURE__ */ jsx57(Alert3, { type: "negative", className: "m-b-2", message: error }) : void 0,
|
|
12825
12892
|
children
|
|
@@ -14349,17 +14416,36 @@ var getTextAlignmentAndMargin2 = (component) => `${getTextAlignment2(component.a
|
|
|
14349
14416
|
|
|
14350
14417
|
// src/legacy/layout/alert/DynamicAlert.tsx
|
|
14351
14418
|
import { jsx as jsx70 } from "react/jsx-runtime";
|
|
14352
|
-
var DynamicAlert = (
|
|
14353
|
-
const
|
|
14419
|
+
var DynamicAlert = ({ component: alert }) => {
|
|
14420
|
+
const { context, markdown, margin } = alert;
|
|
14354
14421
|
return /* @__PURE__ */ jsx70(
|
|
14355
14422
|
Alert4,
|
|
14356
14423
|
{
|
|
14357
|
-
type: mapContextToAlertType(legacy_mapContext(
|
|
14358
|
-
className: getMargin2(
|
|
14359
|
-
message:
|
|
14424
|
+
type: mapContextToAlertType(legacy_mapContext(context)),
|
|
14425
|
+
className: getMargin2(margin),
|
|
14426
|
+
message: markdown,
|
|
14427
|
+
action: getAlertAction(alert)
|
|
14360
14428
|
}
|
|
14361
14429
|
);
|
|
14362
14430
|
};
|
|
14431
|
+
var isAlertLayout = (layout) => {
|
|
14432
|
+
return Object.hasOwnProperty.call(layout, "type") && layout.type === "alert";
|
|
14433
|
+
};
|
|
14434
|
+
var getAlertAction = (component) => {
|
|
14435
|
+
if (!isAlertLayout(component) || !component.callToAction) {
|
|
14436
|
+
return void 0;
|
|
14437
|
+
}
|
|
14438
|
+
const { title, accessibilityDescription, behavior } = component.callToAction;
|
|
14439
|
+
if (!behavior.link) {
|
|
14440
|
+
return void 0;
|
|
14441
|
+
}
|
|
14442
|
+
return {
|
|
14443
|
+
text: title,
|
|
14444
|
+
"aria-label": accessibilityDescription,
|
|
14445
|
+
href: behavior.link.url,
|
|
14446
|
+
target: "_blank"
|
|
14447
|
+
};
|
|
14448
|
+
};
|
|
14363
14449
|
var legacy_mapContext = (context) => {
|
|
14364
14450
|
switch (context) {
|
|
14365
14451
|
case "success":
|
|
@@ -16062,7 +16148,8 @@ var _FormControl = class _FormControl extends PureComponent {
|
|
|
16062
16148
|
maxDate,
|
|
16063
16149
|
value,
|
|
16064
16150
|
mode,
|
|
16065
|
-
describedBy
|
|
16151
|
+
describedBy,
|
|
16152
|
+
labelledBy
|
|
16066
16153
|
} = this.props;
|
|
16067
16154
|
switch (type) {
|
|
16068
16155
|
case FormControlType.RADIO:
|
|
@@ -16227,6 +16314,7 @@ var _FormControl = class _FormControl extends PureComponent {
|
|
|
16227
16314
|
return /* @__PURE__ */ jsx89(
|
|
16228
16315
|
DateInput2,
|
|
16229
16316
|
{
|
|
16317
|
+
"aria-labelledby": labelledBy,
|
|
16230
16318
|
dayAutoComplete: this.getAutocompleteValue({ suffix: "-day" }),
|
|
16231
16319
|
yearAutoComplete: this.getAutocompleteValue({ suffix: "-year" }),
|
|
16232
16320
|
disabled,
|
|
@@ -16477,7 +16565,8 @@ function SchemaFormControl(props) {
|
|
|
16477
16565
|
onFocus,
|
|
16478
16566
|
onBlur,
|
|
16479
16567
|
onSearchChange,
|
|
16480
|
-
describedBy
|
|
16568
|
+
describedBy,
|
|
16569
|
+
labelledBy
|
|
16481
16570
|
} = props;
|
|
16482
16571
|
const log = useLogger();
|
|
16483
16572
|
const intl = useIntl16();
|
|
@@ -16514,6 +16603,7 @@ function SchemaFormControl(props) {
|
|
|
16514
16603
|
intl
|
|
16515
16604
|
}, mapSchemaToUploadOptions(schema)),
|
|
16516
16605
|
describedBy,
|
|
16606
|
+
labelledBy,
|
|
16517
16607
|
required
|
|
16518
16608
|
};
|
|
16519
16609
|
return /* @__PURE__ */ jsx90("div", { "aria-describedby": describedBy, children: /* @__PURE__ */ jsx90(FormControl, __spreadValues(__spreadValues({ type: controlType, value: safeValue }, events), controlProps)) });
|
|
@@ -18038,11 +18128,12 @@ var BasicTypeSchema = (props) => {
|
|
|
18038
18128
|
const showLabel = props.schema.format !== "file" && props.schema.type !== "boolean";
|
|
18039
18129
|
const schemaHelp = props.schema.help;
|
|
18040
18130
|
const feedbackId = `${id}-feedback`;
|
|
18131
|
+
const labelId = `${id}-label`;
|
|
18041
18132
|
return !isHidden ? /* @__PURE__ */ jsxs45(Fragment22, { children: [
|
|
18042
18133
|
props.schema.alert && /* @__PURE__ */ jsx116(DynamicAlert_default, { component: props.schema.alert }),
|
|
18043
18134
|
/* @__PURE__ */ jsxs45("div", { className: (0, import_classnames15.default)(formGroupClasses), children: [
|
|
18044
18135
|
showLabel && /* @__PURE__ */ jsxs45("div", { className: "d-inline-block m-b-1", children: [
|
|
18045
|
-
/* @__PURE__ */ jsx116("label", { className: "control-label d-inline", htmlFor: id, children: props.schema.title }),
|
|
18136
|
+
/* @__PURE__ */ jsx116("label", { className: "control-label d-inline", htmlFor: id, id: labelId, children: props.schema.title }),
|
|
18046
18137
|
!!schemaHelp && /* @__PURE__ */ jsx116(Help_default2, { help: schemaHelp })
|
|
18047
18138
|
] }),
|
|
18048
18139
|
!showLabel && !!schemaHelp && /* @__PURE__ */ jsx116(Help_default2, { help: schemaHelp }),
|
|
@@ -18056,7 +18147,8 @@ var BasicTypeSchema = (props) => {
|
|
|
18056
18147
|
onChange,
|
|
18057
18148
|
onFocus,
|
|
18058
18149
|
onBlur,
|
|
18059
|
-
describedBy: feedbackId
|
|
18150
|
+
describedBy: feedbackId,
|
|
18151
|
+
labelledBy: labelId
|
|
18060
18152
|
}
|
|
18061
18153
|
),
|
|
18062
18154
|
/* @__PURE__ */ jsx116(
|
|
@@ -141,6 +141,7 @@ type FormControlProps = {
|
|
|
141
141
|
uploadProps: UploadProps;
|
|
142
142
|
value: Date | string | number | boolean | null;
|
|
143
143
|
describedBy: string | undefined;
|
|
144
|
+
labelledBy: string | undefined;
|
|
144
145
|
};
|
|
145
146
|
type FormControlState = {
|
|
146
147
|
prevValue: FormControlProps['value'];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { Alert as AlertType } from '@wise/dynamic-flow-types';
|
|
2
|
-
|
|
3
|
-
component: AlertType;
|
|
4
|
-
}
|
|
1
|
+
import { AlertLayout, Alert as AlertType } from '@wise/dynamic-flow-types';
|
|
2
|
+
type DynamicAlertProps = {
|
|
3
|
+
component: AlertType | AlertLayout;
|
|
4
|
+
};
|
|
5
|
+
declare const DynamicAlert: ({ component: alert }: DynamicAlertProps) => import("react/jsx-runtime").JSX.Element;
|
|
5
6
|
export default DynamicAlert;
|
|
@@ -3,5 +3,18 @@ export type AlertComponent = LayoutComponent & {
|
|
|
3
3
|
type: 'alert';
|
|
4
4
|
markdown: string;
|
|
5
5
|
context: Context;
|
|
6
|
+
callToAction?: AlertCallToActionLink | AlertCallToAction;
|
|
6
7
|
};
|
|
7
|
-
export
|
|
8
|
+
export type AlertCallToActionLink = {
|
|
9
|
+
type: 'link';
|
|
10
|
+
accessibilityDescription?: string;
|
|
11
|
+
href: string;
|
|
12
|
+
title: string;
|
|
13
|
+
};
|
|
14
|
+
export type AlertCallToAction = {
|
|
15
|
+
type: 'action';
|
|
16
|
+
accessibilityDescription?: string;
|
|
17
|
+
title: string;
|
|
18
|
+
onClick: () => void;
|
|
19
|
+
};
|
|
20
|
+
export declare const createAlertComponent: (alertProps: Pick<AlertComponent, 'uid' | 'callToAction' | 'context' | 'control' | 'margin' | 'markdown'>) => AlertComponent;
|
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
import type { AlertLayout } from '@wise/dynamic-flow-types/build/next';
|
|
2
|
-
|
|
2
|
+
import { AlertComponent } from '../../components/AlertComponent';
|
|
3
|
+
import { MapperProps } from '../schema/types';
|
|
4
|
+
export declare const alertLayoutToComponent: (uid: string, { control, markdown, margin, context, callToAction }: AlertLayout, { onAction }: MapperProps) => AlertComponent;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { AlertComponent } from '../../domain/components/AlertComponent';
|
|
2
2
|
import type { AlertRendererProps } from '@wise/dynamic-flow-renderers';
|
|
3
|
-
export declare const alertComponentToProps: ({ context, control, margin, markdown, }: AlertComponent) => AlertRendererProps;
|
|
3
|
+
export declare const alertComponentToProps: ({ callToAction, context, control, margin, markdown, }: AlertComponent) => AlertRendererProps;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wise/dynamic-flow-client",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.16.1",
|
|
4
4
|
"description": "Dynamic Flow web client",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "./build/main.min.js",
|
|
@@ -86,8 +86,8 @@
|
|
|
86
86
|
"tsx": "4.15.6",
|
|
87
87
|
"typescript": "5.4.5",
|
|
88
88
|
"webpack": "5.92.0",
|
|
89
|
-
"@wise/dynamic-flow-
|
|
90
|
-
"@wise/dynamic-flow-
|
|
89
|
+
"@wise/dynamic-flow-fixtures": "0.0.1",
|
|
90
|
+
"@wise/dynamic-flow-renderers": "0.0.0"
|
|
91
91
|
},
|
|
92
92
|
"peerDependencies": {
|
|
93
93
|
"@transferwise/components": "^46.31",
|
|
@@ -104,7 +104,7 @@
|
|
|
104
104
|
"nanoid": "5.0.7",
|
|
105
105
|
"react-webcam": "^7.2.0",
|
|
106
106
|
"screenfull": "^5.2.0",
|
|
107
|
-
"@wise/dynamic-flow-types": "2.
|
|
107
|
+
"@wise/dynamic-flow-types": "2.18.1"
|
|
108
108
|
},
|
|
109
109
|
"scripts": {
|
|
110
110
|
"dev": "pnpm build:visual-tests && storybook dev -p 3003",
|