@rjsf/core 6.0.2 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core.umd.js +61 -38
- package/dist/index.cjs +293 -263
- package/dist/index.cjs.map +4 -4
- package/dist/index.esm.js +171 -138
- package/dist/index.esm.js.map +4 -4
- package/lib/components/RichHelp.d.ts +20 -0
- package/lib/components/RichHelp.d.ts.map +1 -0
- package/lib/components/RichHelp.js +17 -0
- package/lib/components/fields/ArrayField.d.ts.map +1 -1
- package/lib/components/fields/ArrayField.js +6 -1
- package/lib/components/fields/StringField.d.ts.map +1 -1
- package/lib/components/fields/StringField.js +3 -3
- package/lib/components/templates/ArrayFieldItemTemplate.d.ts.map +1 -1
- package/lib/components/templates/ArrayFieldItemTemplate.js +5 -5
- package/lib/components/templates/ButtonTemplates/AddButton.d.ts.map +1 -1
- package/lib/components/templates/ButtonTemplates/AddButton.js +1 -1
- package/lib/components/templates/FieldHelpTemplate.d.ts.map +1 -1
- package/lib/components/templates/FieldHelpTemplate.js +3 -6
- package/lib/components/templates/WrapIfAdditionalTemplate.d.ts.map +1 -1
- package/lib/components/templates/WrapIfAdditionalTemplate.js +4 -2
- package/lib/index.d.ts +3 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/components/RichHelp.tsx +46 -0
- package/src/components/fields/ArrayField.tsx +7 -0
- package/src/components/fields/StringField.tsx +3 -2
- package/src/components/templates/ArrayFieldItemTemplate.tsx +8 -11
- package/src/components/templates/ButtonTemplates/AddButton.tsx +3 -1
- package/src/components/templates/FieldHelpTemplate.tsx +5 -11
- package/src/components/templates/WrapIfAdditionalTemplate.tsx +7 -3
- package/src/index.ts +3 -2
package/dist/index.cjs
CHANGED
|
@@ -31,6 +31,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
31
31
|
var index_exports = {};
|
|
32
32
|
__export(index_exports, {
|
|
33
33
|
RichDescription: () => RichDescription,
|
|
34
|
+
RichHelp: () => RichHelp,
|
|
34
35
|
default: () => index_default,
|
|
35
36
|
getDefaultRegistry: () => getDefaultRegistry,
|
|
36
37
|
getTestRegistry: () => getTestRegistry,
|
|
@@ -40,7 +41,7 @@ module.exports = __toCommonJS(index_exports);
|
|
|
40
41
|
|
|
41
42
|
// src/components/Form.tsx
|
|
42
43
|
var import_react21 = require("react");
|
|
43
|
-
var
|
|
44
|
+
var import_utils49 = require("@rjsf/utils");
|
|
44
45
|
var import_cloneDeep2 = __toESM(require("lodash/cloneDeep"), 1);
|
|
45
46
|
var import_get5 = __toESM(require("lodash/get"), 1);
|
|
46
47
|
var import_isEmpty4 = __toESM(require("lodash/isEmpty"), 1);
|
|
@@ -50,7 +51,7 @@ var import_toPath = __toESM(require("lodash/toPath"), 1);
|
|
|
50
51
|
var import_unset = __toESM(require("lodash/unset"), 1);
|
|
51
52
|
|
|
52
53
|
// src/getDefaultRegistry.ts
|
|
53
|
-
var
|
|
54
|
+
var import_utils48 = require("@rjsf/utils");
|
|
54
55
|
|
|
55
56
|
// src/components/fields/ArrayField.tsx
|
|
56
57
|
var import_react = require("react");
|
|
@@ -302,7 +303,9 @@ function ArrayFieldItem(props) {
|
|
|
302
303
|
handleReorderItems
|
|
303
304
|
} = props;
|
|
304
305
|
const {
|
|
305
|
-
|
|
306
|
+
schemaUtils,
|
|
307
|
+
fields: { ArraySchemaField, SchemaField: SchemaField2 },
|
|
308
|
+
globalUiOptions
|
|
306
309
|
} = registry;
|
|
307
310
|
const fieldPathId = (0, import_utils.useDeepCompareMemo)(itemFieldPathId);
|
|
308
311
|
const ItemSchemaField = ArraySchemaField || SchemaField2;
|
|
@@ -311,6 +314,9 @@ function ArrayFieldItem(props) {
|
|
|
311
314
|
registry,
|
|
312
315
|
uiOptions
|
|
313
316
|
);
|
|
317
|
+
const displayLabel = schemaUtils.getDisplayLabel(itemSchema, itemUiSchema, globalUiOptions);
|
|
318
|
+
const { description } = (0, import_utils.getUiOptions)(itemUiSchema);
|
|
319
|
+
const hasDescription = !!description || !!itemSchema.description;
|
|
314
320
|
const { orderable = true, removable = true, copyable = false } = uiOptions;
|
|
315
321
|
const has4 = {
|
|
316
322
|
moveUp: orderable && canMoveUp,
|
|
@@ -404,7 +410,9 @@ function ArrayFieldItem(props) {
|
|
|
404
410
|
registry,
|
|
405
411
|
schema: itemSchema,
|
|
406
412
|
uiSchema: itemUiSchema,
|
|
407
|
-
parentUiSchema
|
|
413
|
+
parentUiSchema,
|
|
414
|
+
displayLabel,
|
|
415
|
+
hasDescription
|
|
408
416
|
};
|
|
409
417
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ArrayFieldItemTemplate2, { ...templateProps });
|
|
410
418
|
}
|
|
@@ -2444,9 +2452,10 @@ function StringField(props) {
|
|
|
2444
2452
|
onFocus,
|
|
2445
2453
|
registry,
|
|
2446
2454
|
rawErrors,
|
|
2447
|
-
hideError
|
|
2455
|
+
hideError,
|
|
2456
|
+
title
|
|
2448
2457
|
} = props;
|
|
2449
|
-
const { title, format } = schema;
|
|
2458
|
+
const { title: schemaTitle, format } = schema;
|
|
2450
2459
|
const { widgets: widgets2, schemaUtils, globalUiOptions } = registry;
|
|
2451
2460
|
const enumOptions = schemaUtils.isSelect(schema) ? (0, import_utils12.optionsList)(schema, uiSchema) : void 0;
|
|
2452
2461
|
let defaultWidget = enumOptions ? "select" : "text";
|
|
@@ -2455,7 +2464,7 @@ function StringField(props) {
|
|
|
2455
2464
|
}
|
|
2456
2465
|
const { widget = defaultWidget, placeholder = "", title: uiTitle, ...options } = (0, import_utils12.getUiOptions)(uiSchema);
|
|
2457
2466
|
const displayLabel = schemaUtils.getDisplayLabel(schema, uiSchema, globalUiOptions);
|
|
2458
|
-
const label = uiTitle ?? title ?? name;
|
|
2467
|
+
const label = uiTitle ?? title ?? schemaTitle ?? name;
|
|
2459
2468
|
const Widget = (0, import_utils12.getWidget)(schema, widget, widgets2);
|
|
2460
2469
|
const onWidgetChange = (0, import_react10.useCallback)(
|
|
2461
2470
|
(value, errorSchema, id) => {
|
|
@@ -2557,7 +2566,7 @@ function ArrayFieldDescriptionTemplate(props) {
|
|
|
2557
2566
|
var import_utils14 = require("@rjsf/utils");
|
|
2558
2567
|
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
2559
2568
|
function ArrayFieldItemTemplate(props) {
|
|
2560
|
-
const { children, className, buttonsProps, hasToolbar, registry, uiSchema } = props;
|
|
2569
|
+
const { children, className, buttonsProps, displayLabel, hasDescription, hasToolbar, registry, uiSchema } = props;
|
|
2561
2570
|
const uiOptions = (0, import_utils14.getUiOptions)(uiSchema);
|
|
2562
2571
|
const ArrayFieldItemButtonsTemplate2 = (0, import_utils14.getTemplate)(
|
|
2563
2572
|
"ArrayFieldItemButtonsTemplate",
|
|
@@ -2570,19 +2579,12 @@ function ArrayFieldItemTemplate(props) {
|
|
|
2570
2579
|
paddingRight: 6,
|
|
2571
2580
|
fontWeight: "bold"
|
|
2572
2581
|
};
|
|
2573
|
-
|
|
2574
|
-
|
|
2575
|
-
|
|
2576
|
-
|
|
2577
|
-
|
|
2578
|
-
|
|
2579
|
-
style: {
|
|
2580
|
-
display: "flex",
|
|
2581
|
-
justifyContent: "space-around"
|
|
2582
|
-
},
|
|
2583
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(ArrayFieldItemButtonsTemplate2, { ...buttonsProps, style: btnStyle })
|
|
2584
|
-
}
|
|
2585
|
-
) })
|
|
2582
|
+
const margin = hasDescription ? 31 : 9;
|
|
2583
|
+
const containerStyle = { display: "flex", alignItems: displayLabel ? "center" : "baseline" };
|
|
2584
|
+
const toolbarStyle = { display: "flex", justifyContent: "flex-end", marginTop: displayLabel ? `${margin}px` : 0 };
|
|
2585
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className, style: containerStyle, children: [
|
|
2586
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: hasToolbar ? "col-xs-9 col-md-10 col-xl-11" : "col-xs-12", children }),
|
|
2587
|
+
hasToolbar && /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "col-xs-3 col-md-2 col-xl-1 array-item-toolbox", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "btn-group", style: toolbarStyle, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(ArrayFieldItemButtonsTemplate2, { ...buttonsProps, style: btnStyle }) }) })
|
|
2586
2588
|
] });
|
|
2587
2589
|
}
|
|
2588
2590
|
|
|
@@ -2893,19 +2895,25 @@ function AddButton({
|
|
|
2893
2895
|
registry
|
|
2894
2896
|
}) {
|
|
2895
2897
|
const { translateString } = registry;
|
|
2896
|
-
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "row", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2897
|
-
|
|
2898
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "row", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2899
|
+
"p",
|
|
2898
2900
|
{
|
|
2899
|
-
|
|
2900
|
-
|
|
2901
|
-
|
|
2902
|
-
|
|
2903
|
-
|
|
2904
|
-
|
|
2905
|
-
|
|
2906
|
-
|
|
2901
|
+
className: `col-xs-4 col-sm-2 col-lg-1 col-xs-offset-8 col-sm-offset-10 col-lg-offset-11 text-right ${className}`,
|
|
2902
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
2903
|
+
IconButton,
|
|
2904
|
+
{
|
|
2905
|
+
id,
|
|
2906
|
+
iconType: "info",
|
|
2907
|
+
icon: "plus",
|
|
2908
|
+
className: "btn-add col-xs-12",
|
|
2909
|
+
title: translateString(import_utils21.TranslatableString.AddButton),
|
|
2910
|
+
onClick,
|
|
2911
|
+
disabled,
|
|
2912
|
+
registry
|
|
2913
|
+
}
|
|
2914
|
+
)
|
|
2907
2915
|
}
|
|
2908
|
-
) })
|
|
2916
|
+
) });
|
|
2909
2917
|
}
|
|
2910
2918
|
|
|
2911
2919
|
// src/components/templates/ButtonTemplates/index.ts
|
|
@@ -3040,40 +3048,57 @@ function FieldErrorTemplate(props) {
|
|
|
3040
3048
|
}
|
|
3041
3049
|
|
|
3042
3050
|
// src/components/templates/FieldHelpTemplate.tsx
|
|
3051
|
+
var import_utils28 = require("@rjsf/utils");
|
|
3052
|
+
|
|
3053
|
+
// src/components/RichHelp.tsx
|
|
3043
3054
|
var import_utils27 = require("@rjsf/utils");
|
|
3055
|
+
var import_markdown_to_jsx3 = __toESM(require("markdown-to-jsx"), 1);
|
|
3044
3056
|
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
3057
|
+
var TEST_IDS2 = (0, import_utils27.getTestIds)();
|
|
3058
|
+
function RichHelp({
|
|
3059
|
+
help,
|
|
3060
|
+
registry,
|
|
3061
|
+
uiSchema = {}
|
|
3062
|
+
}) {
|
|
3063
|
+
const { globalUiOptions } = registry;
|
|
3064
|
+
const uiOptions = (0, import_utils27.getUiOptions)(uiSchema, globalUiOptions);
|
|
3065
|
+
if (uiOptions.enableMarkdownInHelp && typeof help === "string") {
|
|
3066
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_markdown_to_jsx3.default, { options: { disableParsingRawHTML: true }, "data-testid": TEST_IDS2.markdown, children: help });
|
|
3067
|
+
}
|
|
3068
|
+
return help;
|
|
3069
|
+
}
|
|
3070
|
+
RichHelp.TEST_IDS = TEST_IDS2;
|
|
3071
|
+
|
|
3072
|
+
// src/components/templates/FieldHelpTemplate.tsx
|
|
3073
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
3045
3074
|
function FieldHelpTemplate(props) {
|
|
3046
|
-
const { fieldPathId, help } = props;
|
|
3075
|
+
const { fieldPathId, help, uiSchema, registry } = props;
|
|
3047
3076
|
if (!help) {
|
|
3048
3077
|
return null;
|
|
3049
3078
|
}
|
|
3050
|
-
|
|
3051
|
-
if (typeof help === "string") {
|
|
3052
|
-
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("p", { id, className: "help-block", children: help });
|
|
3053
|
-
}
|
|
3054
|
-
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { id, className: "help-block", children: help });
|
|
3079
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { id: (0, import_utils28.helpId)(fieldPathId), className: "help-block", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(RichHelp, { help, registry, uiSchema }) });
|
|
3055
3080
|
}
|
|
3056
3081
|
|
|
3057
3082
|
// src/components/templates/GridTemplate.tsx
|
|
3058
|
-
var
|
|
3083
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
3059
3084
|
function GridTemplate(props) {
|
|
3060
3085
|
const { children, column, className, ...rest } = props;
|
|
3061
|
-
return /* @__PURE__ */ (0,
|
|
3086
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className, ...rest, children });
|
|
3062
3087
|
}
|
|
3063
3088
|
|
|
3064
3089
|
// src/components/templates/MultiSchemaFieldTemplate.tsx
|
|
3065
|
-
var
|
|
3090
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
3066
3091
|
function MultiSchemaFieldTemplate(props) {
|
|
3067
3092
|
const { selector, optionSchemaField } = props;
|
|
3068
|
-
return /* @__PURE__ */ (0,
|
|
3069
|
-
/* @__PURE__ */ (0,
|
|
3093
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "panel panel-default panel-body", children: [
|
|
3094
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "form-group", children: selector }),
|
|
3070
3095
|
optionSchemaField
|
|
3071
3096
|
] });
|
|
3072
3097
|
}
|
|
3073
3098
|
|
|
3074
3099
|
// src/components/templates/ObjectFieldTemplate.tsx
|
|
3075
|
-
var
|
|
3076
|
-
var
|
|
3100
|
+
var import_utils29 = require("@rjsf/utils");
|
|
3101
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
3077
3102
|
function ObjectFieldTemplate(props) {
|
|
3078
3103
|
const {
|
|
3079
3104
|
className,
|
|
@@ -3091,9 +3116,9 @@ function ObjectFieldTemplate(props) {
|
|
|
3091
3116
|
title,
|
|
3092
3117
|
uiSchema
|
|
3093
3118
|
} = props;
|
|
3094
|
-
const options = (0,
|
|
3095
|
-
const TitleFieldTemplate = (0,
|
|
3096
|
-
const DescriptionFieldTemplate = (0,
|
|
3119
|
+
const options = (0, import_utils29.getUiOptions)(uiSchema);
|
|
3120
|
+
const TitleFieldTemplate = (0, import_utils29.getTemplate)("TitleFieldTemplate", registry, options);
|
|
3121
|
+
const DescriptionFieldTemplate = (0, import_utils29.getTemplate)(
|
|
3097
3122
|
"DescriptionFieldTemplate",
|
|
3098
3123
|
registry,
|
|
3099
3124
|
options
|
|
@@ -3102,11 +3127,11 @@ function ObjectFieldTemplate(props) {
|
|
|
3102
3127
|
const {
|
|
3103
3128
|
ButtonTemplates: { AddButton: AddButton2 }
|
|
3104
3129
|
} = registry.templates;
|
|
3105
|
-
return /* @__PURE__ */ (0,
|
|
3106
|
-
title && /* @__PURE__ */ (0,
|
|
3130
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("fieldset", { className, id: fieldPathId.$id, children: [
|
|
3131
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
3107
3132
|
TitleFieldTemplate,
|
|
3108
3133
|
{
|
|
3109
|
-
id: (0,
|
|
3134
|
+
id: (0, import_utils29.titleId)(fieldPathId),
|
|
3110
3135
|
title,
|
|
3111
3136
|
required,
|
|
3112
3137
|
schema,
|
|
@@ -3115,10 +3140,10 @@ function ObjectFieldTemplate(props) {
|
|
|
3115
3140
|
optionalDataControl: showOptionalDataControlInTitle ? optionalDataControl : void 0
|
|
3116
3141
|
}
|
|
3117
3142
|
),
|
|
3118
|
-
description && /* @__PURE__ */ (0,
|
|
3143
|
+
description && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
3119
3144
|
DescriptionFieldTemplate,
|
|
3120
3145
|
{
|
|
3121
|
-
id: (0,
|
|
3146
|
+
id: (0, import_utils29.descriptionId)(fieldPathId),
|
|
3122
3147
|
description,
|
|
3123
3148
|
schema,
|
|
3124
3149
|
uiSchema,
|
|
@@ -3127,10 +3152,10 @@ function ObjectFieldTemplate(props) {
|
|
|
3127
3152
|
),
|
|
3128
3153
|
!showOptionalDataControlInTitle ? optionalDataControl : void 0,
|
|
3129
3154
|
properties.map((prop) => prop.content),
|
|
3130
|
-
(0,
|
|
3155
|
+
(0, import_utils29.canExpand)(schema, uiSchema, formData) && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
3131
3156
|
AddButton2,
|
|
3132
3157
|
{
|
|
3133
|
-
id: (0,
|
|
3158
|
+
id: (0, import_utils29.buttonId)(fieldPathId, "add"),
|
|
3134
3159
|
className: "rjsf-object-property-expand",
|
|
3135
3160
|
onClick: onAddProperty,
|
|
3136
3161
|
disabled: disabled || readonly,
|
|
@@ -3142,11 +3167,11 @@ function ObjectFieldTemplate(props) {
|
|
|
3142
3167
|
}
|
|
3143
3168
|
|
|
3144
3169
|
// src/components/templates/OptionalDataControlsTemplate.tsx
|
|
3145
|
-
var
|
|
3170
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
3146
3171
|
function OptionalDataControlsTemplate(props) {
|
|
3147
3172
|
const { id, registry, label, onAddClick, onRemoveClick } = props;
|
|
3148
3173
|
if (onAddClick) {
|
|
3149
|
-
return /* @__PURE__ */ (0,
|
|
3174
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
3150
3175
|
IconButton,
|
|
3151
3176
|
{
|
|
3152
3177
|
id,
|
|
@@ -3158,7 +3183,7 @@ function OptionalDataControlsTemplate(props) {
|
|
|
3158
3183
|
}
|
|
3159
3184
|
);
|
|
3160
3185
|
} else if (onRemoveClick) {
|
|
3161
|
-
return /* @__PURE__ */ (0,
|
|
3186
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
3162
3187
|
IconButton,
|
|
3163
3188
|
{
|
|
3164
3189
|
id,
|
|
@@ -3170,57 +3195,59 @@ function OptionalDataControlsTemplate(props) {
|
|
|
3170
3195
|
}
|
|
3171
3196
|
);
|
|
3172
3197
|
}
|
|
3173
|
-
return /* @__PURE__ */ (0,
|
|
3198
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("em", { id, children: label });
|
|
3174
3199
|
}
|
|
3175
3200
|
|
|
3176
3201
|
// src/components/templates/TitleField.tsx
|
|
3177
|
-
var
|
|
3202
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
3178
3203
|
var REQUIRED_FIELD_SYMBOL2 = "*";
|
|
3179
3204
|
function TitleField(props) {
|
|
3180
3205
|
const { id, title, required, optionalDataControl } = props;
|
|
3181
|
-
return /* @__PURE__ */ (0,
|
|
3206
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("legend", { id, children: [
|
|
3182
3207
|
title,
|
|
3183
|
-
required && /* @__PURE__ */ (0,
|
|
3184
|
-
optionalDataControl && /* @__PURE__ */ (0,
|
|
3208
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "required", children: REQUIRED_FIELD_SYMBOL2 }),
|
|
3209
|
+
optionalDataControl && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "pull-right", style: { marginBottom: "2px" }, children: optionalDataControl })
|
|
3185
3210
|
] });
|
|
3186
3211
|
}
|
|
3187
3212
|
|
|
3188
3213
|
// src/components/templates/UnsupportedField.tsx
|
|
3189
|
-
var
|
|
3190
|
-
var
|
|
3191
|
-
var
|
|
3214
|
+
var import_utils30 = require("@rjsf/utils");
|
|
3215
|
+
var import_markdown_to_jsx4 = __toESM(require("markdown-to-jsx"), 1);
|
|
3216
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
3192
3217
|
function UnsupportedField(props) {
|
|
3193
3218
|
const { schema, fieldPathId, reason, registry } = props;
|
|
3194
3219
|
const { translateString } = registry;
|
|
3195
|
-
let translateEnum =
|
|
3220
|
+
let translateEnum = import_utils30.TranslatableString.UnsupportedField;
|
|
3196
3221
|
const translateParams = [];
|
|
3197
3222
|
if (fieldPathId && fieldPathId.$id) {
|
|
3198
|
-
translateEnum =
|
|
3223
|
+
translateEnum = import_utils30.TranslatableString.UnsupportedFieldWithId;
|
|
3199
3224
|
translateParams.push(fieldPathId.$id);
|
|
3200
3225
|
}
|
|
3201
3226
|
if (reason) {
|
|
3202
|
-
translateEnum = translateEnum ===
|
|
3227
|
+
translateEnum = translateEnum === import_utils30.TranslatableString.UnsupportedField ? import_utils30.TranslatableString.UnsupportedFieldWithReason : import_utils30.TranslatableString.UnsupportedFieldWithIdAndReason;
|
|
3203
3228
|
translateParams.push(reason);
|
|
3204
3229
|
}
|
|
3205
|
-
return /* @__PURE__ */ (0,
|
|
3206
|
-
/* @__PURE__ */ (0,
|
|
3207
|
-
schema && /* @__PURE__ */ (0,
|
|
3230
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "unsupported-field", children: [
|
|
3231
|
+
/* @__PURE__ */ (0, import_jsx_runtime36.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_markdown_to_jsx4.default, { options: { disableParsingRawHTML: true }, children: translateString(translateEnum, translateParams) }) }),
|
|
3232
|
+
schema && /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("pre", { children: JSON.stringify(schema, null, 2) })
|
|
3208
3233
|
] });
|
|
3209
3234
|
}
|
|
3210
3235
|
var UnsupportedField_default = UnsupportedField;
|
|
3211
3236
|
|
|
3212
3237
|
// src/components/templates/WrapIfAdditionalTemplate.tsx
|
|
3213
|
-
var
|
|
3214
|
-
var
|
|
3238
|
+
var import_utils31 = require("@rjsf/utils");
|
|
3239
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
3215
3240
|
function WrapIfAdditionalTemplate(props) {
|
|
3216
3241
|
const {
|
|
3217
3242
|
id,
|
|
3218
3243
|
classNames,
|
|
3219
3244
|
style,
|
|
3220
3245
|
disabled,
|
|
3246
|
+
displayLabel,
|
|
3221
3247
|
label,
|
|
3222
3248
|
onKeyRenameBlur,
|
|
3223
3249
|
onRemoveProperty,
|
|
3250
|
+
rawDescription,
|
|
3224
3251
|
readonly,
|
|
3225
3252
|
required,
|
|
3226
3253
|
schema,
|
|
@@ -3232,20 +3259,23 @@ function WrapIfAdditionalTemplate(props) {
|
|
|
3232
3259
|
} = props;
|
|
3233
3260
|
const { templates: templates2, translateString } = registry;
|
|
3234
3261
|
const { RemoveButton: RemoveButton2 } = templates2.ButtonTemplates;
|
|
3235
|
-
const keyLabel = translateString(
|
|
3236
|
-
const additional =
|
|
3262
|
+
const keyLabel = translateString(import_utils31.TranslatableString.KeyLabel, [label]);
|
|
3263
|
+
const additional = import_utils31.ADDITIONAL_PROPERTY_FLAG in schema;
|
|
3264
|
+
const hasDescription = !!rawDescription;
|
|
3237
3265
|
const classNamesList = ["form-group", classNames];
|
|
3238
3266
|
if (!hideError && rawErrors && rawErrors.length > 0) {
|
|
3239
3267
|
classNamesList.push("has-error has-danger");
|
|
3240
3268
|
}
|
|
3241
3269
|
const uiClassNames = classNamesList.join(" ").trim();
|
|
3242
3270
|
if (!additional) {
|
|
3243
|
-
return /* @__PURE__ */ (0,
|
|
3271
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: uiClassNames, style, children });
|
|
3244
3272
|
}
|
|
3245
|
-
|
|
3246
|
-
|
|
3247
|
-
|
|
3248
|
-
/* @__PURE__ */ (0,
|
|
3273
|
+
const margin = hasDescription ? 46 : 26;
|
|
3274
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: uiClassNames, style, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "row", children: [
|
|
3275
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "col-xs-5 form-additional", children: /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("div", { className: "form-group", children: [
|
|
3276
|
+
displayLabel && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(Label, { label: keyLabel, required, id: `${id}-key` }),
|
|
3277
|
+
displayLabel && rawDescription && /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { children: "\xA0" }),
|
|
3278
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3249
3279
|
"input",
|
|
3250
3280
|
{
|
|
3251
3281
|
className: "form-control",
|
|
@@ -3256,11 +3286,11 @@ function WrapIfAdditionalTemplate(props) {
|
|
|
3256
3286
|
}
|
|
3257
3287
|
)
|
|
3258
3288
|
] }) }),
|
|
3259
|
-
/* @__PURE__ */ (0,
|
|
3260
|
-
/* @__PURE__ */ (0,
|
|
3289
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "form-additional form-group col-xs-5", children }),
|
|
3290
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "col-xs-2", style: { marginTop: displayLabel ? `${margin}px` : void 0 }, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3261
3291
|
RemoveButton2,
|
|
3262
3292
|
{
|
|
3263
|
-
id: (0,
|
|
3293
|
+
id: (0, import_utils31.buttonId)(id, "remove"),
|
|
3264
3294
|
className: "rjsf-object-property-remove btn-block",
|
|
3265
3295
|
style: { border: "0" },
|
|
3266
3296
|
disabled: disabled || readonly,
|
|
@@ -3300,15 +3330,15 @@ function templates() {
|
|
|
3300
3330
|
var templates_default = templates;
|
|
3301
3331
|
|
|
3302
3332
|
// src/components/widgets/AltDateWidget.tsx
|
|
3303
|
-
var
|
|
3304
|
-
var
|
|
3333
|
+
var import_utils32 = require("@rjsf/utils");
|
|
3334
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
3305
3335
|
function AltDateWidget(props) {
|
|
3306
3336
|
const { disabled = false, readonly = false, autofocus = false, options, id, name, registry, onBlur, onFocus } = props;
|
|
3307
3337
|
const { translateString } = registry;
|
|
3308
|
-
const { elements, handleChange, handleClear, handleSetNow } = (0,
|
|
3309
|
-
return /* @__PURE__ */ (0,
|
|
3310
|
-
elements.map((elemProps, i) => /* @__PURE__ */ (0,
|
|
3311
|
-
|
|
3338
|
+
const { elements, handleChange, handleClear, handleSetNow } = (0, import_utils32.useAltDateWidgetProps)(props);
|
|
3339
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("ul", { className: "list-inline", children: [
|
|
3340
|
+
elements.map((elemProps, i) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("li", { className: "list-inline-item", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
3341
|
+
import_utils32.DateElement,
|
|
3312
3342
|
{
|
|
3313
3343
|
rootId: id,
|
|
3314
3344
|
name,
|
|
@@ -3322,27 +3352,27 @@ function AltDateWidget(props) {
|
|
|
3322
3352
|
autofocus: autofocus && i === 0
|
|
3323
3353
|
}
|
|
3324
3354
|
) }, i)),
|
|
3325
|
-
(options.hideNowButton !== "undefined" ? !options.hideNowButton : true) && /* @__PURE__ */ (0,
|
|
3326
|
-
(options.hideClearButton !== "undefined" ? !options.hideClearButton : true) && /* @__PURE__ */ (0,
|
|
3355
|
+
(options.hideNowButton !== "undefined" ? !options.hideNowButton : true) && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("li", { className: "list-inline-item", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("a", { href: "#", className: "btn btn-info btn-now", onClick: handleSetNow, children: translateString(import_utils32.TranslatableString.NowLabel) }) }),
|
|
3356
|
+
(options.hideClearButton !== "undefined" ? !options.hideClearButton : true) && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("li", { className: "list-inline-item", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("a", { href: "#", className: "btn btn-warning btn-clear", onClick: handleClear, children: translateString(import_utils32.TranslatableString.ClearLabel) }) })
|
|
3327
3357
|
] });
|
|
3328
3358
|
}
|
|
3329
3359
|
var AltDateWidget_default = AltDateWidget;
|
|
3330
3360
|
|
|
3331
3361
|
// src/components/widgets/AltDateTimeWidget.tsx
|
|
3332
|
-
var
|
|
3362
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
3333
3363
|
function AltDateTimeWidget({
|
|
3334
3364
|
time = true,
|
|
3335
3365
|
...props
|
|
3336
3366
|
}) {
|
|
3337
3367
|
const { AltDateWidget: AltDateWidget2 } = props.registry.widgets;
|
|
3338
|
-
return /* @__PURE__ */ (0,
|
|
3368
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(AltDateWidget2, { time, ...props });
|
|
3339
3369
|
}
|
|
3340
3370
|
var AltDateTimeWidget_default = AltDateTimeWidget;
|
|
3341
3371
|
|
|
3342
3372
|
// src/components/widgets/CheckboxWidget.tsx
|
|
3343
3373
|
var import_react13 = require("react");
|
|
3344
|
-
var
|
|
3345
|
-
var
|
|
3374
|
+
var import_utils33 = require("@rjsf/utils");
|
|
3375
|
+
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
3346
3376
|
function CheckboxWidget({
|
|
3347
3377
|
schema,
|
|
3348
3378
|
uiSchema,
|
|
@@ -3360,12 +3390,12 @@ function CheckboxWidget({
|
|
|
3360
3390
|
registry,
|
|
3361
3391
|
htmlName
|
|
3362
3392
|
}) {
|
|
3363
|
-
const DescriptionFieldTemplate = (0,
|
|
3393
|
+
const DescriptionFieldTemplate = (0, import_utils33.getTemplate)(
|
|
3364
3394
|
"DescriptionFieldTemplate",
|
|
3365
3395
|
registry,
|
|
3366
3396
|
options
|
|
3367
3397
|
);
|
|
3368
|
-
const required = (0,
|
|
3398
|
+
const required = (0, import_utils33.schemaRequiresTrueValue)(schema);
|
|
3369
3399
|
const handleChange = (0, import_react13.useCallback)(
|
|
3370
3400
|
(event) => onChange(event.target.checked),
|
|
3371
3401
|
[onChange]
|
|
@@ -3378,22 +3408,22 @@ function CheckboxWidget({
|
|
|
3378
3408
|
(event) => onFocus(id, event.target.checked),
|
|
3379
3409
|
[onFocus, id]
|
|
3380
3410
|
);
|
|
3381
|
-
const uiOptions = (0,
|
|
3411
|
+
const uiOptions = (0, import_utils33.getUiOptions)(uiSchema);
|
|
3382
3412
|
const isCheckboxWidget = uiOptions.widget === "checkbox";
|
|
3383
3413
|
const description = isCheckboxWidget ? void 0 : options.description ?? schema.description;
|
|
3384
|
-
return /* @__PURE__ */ (0,
|
|
3385
|
-
!hideLabel && description && /* @__PURE__ */ (0,
|
|
3414
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("div", { className: `checkbox ${disabled || readonly ? "disabled" : ""}`, children: [
|
|
3415
|
+
!hideLabel && description && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3386
3416
|
DescriptionFieldTemplate,
|
|
3387
3417
|
{
|
|
3388
|
-
id: (0,
|
|
3418
|
+
id: (0, import_utils33.descriptionId)(id),
|
|
3389
3419
|
description,
|
|
3390
3420
|
schema,
|
|
3391
3421
|
uiSchema,
|
|
3392
3422
|
registry
|
|
3393
3423
|
}
|
|
3394
3424
|
),
|
|
3395
|
-
/* @__PURE__ */ (0,
|
|
3396
|
-
/* @__PURE__ */ (0,
|
|
3425
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("label", { children: [
|
|
3426
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3397
3427
|
"input",
|
|
3398
3428
|
{
|
|
3399
3429
|
type: "checkbox",
|
|
@@ -3406,10 +3436,10 @@ function CheckboxWidget({
|
|
|
3406
3436
|
onChange: handleChange,
|
|
3407
3437
|
onBlur: handleBlur,
|
|
3408
3438
|
onFocus: handleFocus,
|
|
3409
|
-
"aria-describedby": (0,
|
|
3439
|
+
"aria-describedby": (0, import_utils33.ariaDescribedByIds)(id)
|
|
3410
3440
|
}
|
|
3411
3441
|
),
|
|
3412
|
-
(0,
|
|
3442
|
+
(0, import_utils33.labelValue)(/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { children: label }), hideLabel)
|
|
3413
3443
|
] })
|
|
3414
3444
|
] });
|
|
3415
3445
|
}
|
|
@@ -3417,8 +3447,8 @@ var CheckboxWidget_default = CheckboxWidget;
|
|
|
3417
3447
|
|
|
3418
3448
|
// src/components/widgets/CheckboxesWidget.tsx
|
|
3419
3449
|
var import_react14 = require("react");
|
|
3420
|
-
var
|
|
3421
|
-
var
|
|
3450
|
+
var import_utils34 = require("@rjsf/utils");
|
|
3451
|
+
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
3422
3452
|
function CheckboxesWidget({
|
|
3423
3453
|
id,
|
|
3424
3454
|
disabled,
|
|
@@ -3433,30 +3463,30 @@ function CheckboxesWidget({
|
|
|
3433
3463
|
}) {
|
|
3434
3464
|
const checkboxesValues = Array.isArray(value) ? value : [value];
|
|
3435
3465
|
const handleBlur = (0, import_react14.useCallback)(
|
|
3436
|
-
({ target }) => onBlur(id, (0,
|
|
3466
|
+
({ target }) => onBlur(id, (0, import_utils34.enumOptionsValueForIndex)(target && target.value, enumOptions, emptyValue)),
|
|
3437
3467
|
[onBlur, id, enumOptions, emptyValue]
|
|
3438
3468
|
);
|
|
3439
3469
|
const handleFocus = (0, import_react14.useCallback)(
|
|
3440
|
-
({ target }) => onFocus(id, (0,
|
|
3470
|
+
({ target }) => onFocus(id, (0, import_utils34.enumOptionsValueForIndex)(target && target.value, enumOptions, emptyValue)),
|
|
3441
3471
|
[onFocus, id, enumOptions, emptyValue]
|
|
3442
3472
|
);
|
|
3443
|
-
return /* @__PURE__ */ (0,
|
|
3444
|
-
const checked = (0,
|
|
3473
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "checkboxes", id, children: Array.isArray(enumOptions) && enumOptions.map((option, index) => {
|
|
3474
|
+
const checked = (0, import_utils34.enumOptionsIsSelected)(option.value, checkboxesValues);
|
|
3445
3475
|
const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;
|
|
3446
3476
|
const disabledCls = disabled || itemDisabled || readonly ? "disabled" : "";
|
|
3447
3477
|
const handleChange = (event) => {
|
|
3448
3478
|
if (event.target.checked) {
|
|
3449
|
-
onChange((0,
|
|
3479
|
+
onChange((0, import_utils34.enumOptionsSelectValue)(index, checkboxesValues, enumOptions));
|
|
3450
3480
|
} else {
|
|
3451
|
-
onChange((0,
|
|
3481
|
+
onChange((0, import_utils34.enumOptionsDeselectValue)(index, checkboxesValues, enumOptions));
|
|
3452
3482
|
}
|
|
3453
3483
|
};
|
|
3454
|
-
const checkbox = /* @__PURE__ */ (0,
|
|
3455
|
-
/* @__PURE__ */ (0,
|
|
3484
|
+
const checkbox = /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("span", { children: [
|
|
3485
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
3456
3486
|
"input",
|
|
3457
3487
|
{
|
|
3458
3488
|
type: "checkbox",
|
|
3459
|
-
id: (0,
|
|
3489
|
+
id: (0, import_utils34.optionId)(id, index),
|
|
3460
3490
|
name: htmlName || id,
|
|
3461
3491
|
checked,
|
|
3462
3492
|
value: String(index),
|
|
@@ -3465,66 +3495,66 @@ function CheckboxesWidget({
|
|
|
3465
3495
|
onChange: handleChange,
|
|
3466
3496
|
onBlur: handleBlur,
|
|
3467
3497
|
onFocus: handleFocus,
|
|
3468
|
-
"aria-describedby": (0,
|
|
3498
|
+
"aria-describedby": (0, import_utils34.ariaDescribedByIds)(id)
|
|
3469
3499
|
}
|
|
3470
3500
|
),
|
|
3471
|
-
/* @__PURE__ */ (0,
|
|
3501
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { children: option.label })
|
|
3472
3502
|
] });
|
|
3473
|
-
return inline ? /* @__PURE__ */ (0,
|
|
3503
|
+
return inline ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("label", { className: `checkbox-inline ${disabledCls}`, children: checkbox }, index) : /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: `checkbox ${disabledCls}`, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("label", { children: checkbox }) }, index);
|
|
3474
3504
|
}) });
|
|
3475
3505
|
}
|
|
3476
3506
|
var CheckboxesWidget_default = CheckboxesWidget;
|
|
3477
3507
|
|
|
3478
3508
|
// src/components/widgets/ColorWidget.tsx
|
|
3479
|
-
var
|
|
3480
|
-
var
|
|
3509
|
+
var import_utils35 = require("@rjsf/utils");
|
|
3510
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
3481
3511
|
function ColorWidget(props) {
|
|
3482
3512
|
const { disabled, readonly, options, registry } = props;
|
|
3483
|
-
const BaseInputTemplate2 = (0,
|
|
3484
|
-
return /* @__PURE__ */ (0,
|
|
3513
|
+
const BaseInputTemplate2 = (0, import_utils35.getTemplate)("BaseInputTemplate", registry, options);
|
|
3514
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(BaseInputTemplate2, { type: "color", ...props, disabled: disabled || readonly });
|
|
3485
3515
|
}
|
|
3486
3516
|
|
|
3487
3517
|
// src/components/widgets/DateWidget.tsx
|
|
3488
3518
|
var import_react15 = require("react");
|
|
3489
|
-
var
|
|
3490
|
-
var
|
|
3519
|
+
var import_utils36 = require("@rjsf/utils");
|
|
3520
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
3491
3521
|
function DateWidget(props) {
|
|
3492
3522
|
const { onChange, options, registry } = props;
|
|
3493
|
-
const BaseInputTemplate2 = (0,
|
|
3523
|
+
const BaseInputTemplate2 = (0, import_utils36.getTemplate)("BaseInputTemplate", registry, options);
|
|
3494
3524
|
const handleChange = (0, import_react15.useCallback)((value) => onChange(value || void 0), [onChange]);
|
|
3495
|
-
return /* @__PURE__ */ (0,
|
|
3525
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(BaseInputTemplate2, { type: "date", ...props, onChange: handleChange });
|
|
3496
3526
|
}
|
|
3497
3527
|
|
|
3498
3528
|
// src/components/widgets/DateTimeWidget.tsx
|
|
3499
|
-
var
|
|
3500
|
-
var
|
|
3529
|
+
var import_utils37 = require("@rjsf/utils");
|
|
3530
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
3501
3531
|
function DateTimeWidget(props) {
|
|
3502
3532
|
const { onChange, value, options, registry } = props;
|
|
3503
|
-
const BaseInputTemplate2 = (0,
|
|
3504
|
-
return /* @__PURE__ */ (0,
|
|
3533
|
+
const BaseInputTemplate2 = (0, import_utils37.getTemplate)("BaseInputTemplate", registry, options);
|
|
3534
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
3505
3535
|
BaseInputTemplate2,
|
|
3506
3536
|
{
|
|
3507
3537
|
type: "datetime-local",
|
|
3508
3538
|
...props,
|
|
3509
|
-
value: (0,
|
|
3510
|
-
onChange: (value2) => onChange((0,
|
|
3539
|
+
value: (0, import_utils37.utcToLocal)(value),
|
|
3540
|
+
onChange: (value2) => onChange((0, import_utils37.localToUTC)(value2))
|
|
3511
3541
|
}
|
|
3512
3542
|
);
|
|
3513
3543
|
}
|
|
3514
3544
|
|
|
3515
3545
|
// src/components/widgets/EmailWidget.tsx
|
|
3516
|
-
var
|
|
3517
|
-
var
|
|
3546
|
+
var import_utils38 = require("@rjsf/utils");
|
|
3547
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
3518
3548
|
function EmailWidget(props) {
|
|
3519
3549
|
const { options, registry } = props;
|
|
3520
|
-
const BaseInputTemplate2 = (0,
|
|
3521
|
-
return /* @__PURE__ */ (0,
|
|
3550
|
+
const BaseInputTemplate2 = (0, import_utils38.getTemplate)("BaseInputTemplate", registry, options);
|
|
3551
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(BaseInputTemplate2, { type: "email", ...props });
|
|
3522
3552
|
}
|
|
3523
3553
|
|
|
3524
3554
|
// src/components/widgets/FileWidget.tsx
|
|
3525
|
-
var
|
|
3526
|
-
var
|
|
3527
|
-
var
|
|
3555
|
+
var import_utils39 = require("@rjsf/utils");
|
|
3556
|
+
var import_markdown_to_jsx5 = __toESM(require("markdown-to-jsx"), 1);
|
|
3557
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
3528
3558
|
function FileInfoPreview({
|
|
3529
3559
|
fileInfo,
|
|
3530
3560
|
registry
|
|
@@ -3535,11 +3565,11 @@ function FileInfoPreview({
|
|
|
3535
3565
|
return null;
|
|
3536
3566
|
}
|
|
3537
3567
|
if (["image/jpeg", "image/png"].includes(type)) {
|
|
3538
|
-
return /* @__PURE__ */ (0,
|
|
3568
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("img", { src: dataURL, style: { maxWidth: "100%" }, className: "file-preview" });
|
|
3539
3569
|
}
|
|
3540
|
-
return /* @__PURE__ */ (0,
|
|
3570
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(import_jsx_runtime46.Fragment, { children: [
|
|
3541
3571
|
" ",
|
|
3542
|
-
/* @__PURE__ */ (0,
|
|
3572
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)("a", { download: `preview-${name}`, href: dataURL, className: "file-download", children: translateString(import_utils39.TranslatableString.PreviewLabel) })
|
|
3543
3573
|
] });
|
|
3544
3574
|
}
|
|
3545
3575
|
function FilesInfo({
|
|
@@ -3553,28 +3583,28 @@ function FilesInfo({
|
|
|
3553
3583
|
return null;
|
|
3554
3584
|
}
|
|
3555
3585
|
const { translateString } = registry;
|
|
3556
|
-
const { RemoveButton: RemoveButton2 } = (0,
|
|
3557
|
-
return /* @__PURE__ */ (0,
|
|
3586
|
+
const { RemoveButton: RemoveButton2 } = (0, import_utils39.getTemplate)("ButtonTemplates", registry, options);
|
|
3587
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("ul", { className: "file-info", children: filesInfo.map((fileInfo, key) => {
|
|
3558
3588
|
const { name, size, type } = fileInfo;
|
|
3559
3589
|
const handleRemove = () => onRemove(key);
|
|
3560
|
-
return /* @__PURE__ */ (0,
|
|
3561
|
-
/* @__PURE__ */ (0,
|
|
3562
|
-
preview && /* @__PURE__ */ (0,
|
|
3563
|
-
/* @__PURE__ */ (0,
|
|
3590
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("li", { children: [
|
|
3591
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_markdown_to_jsx5.default, { children: translateString(import_utils39.TranslatableString.FilesInfo, [name, type, String(size)]) }),
|
|
3592
|
+
preview && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(FileInfoPreview, { fileInfo, registry }),
|
|
3593
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(RemoveButton2, { onClick: handleRemove, registry })
|
|
3564
3594
|
] }, key);
|
|
3565
3595
|
}) });
|
|
3566
3596
|
}
|
|
3567
3597
|
function FileWidget(props) {
|
|
3568
3598
|
const { disabled, readonly, required, multiple, onChange, value, options, registry } = props;
|
|
3569
|
-
const { filesInfo, handleChange, handleRemove } = (0,
|
|
3570
|
-
const BaseInputTemplate2 = (0,
|
|
3599
|
+
const { filesInfo, handleChange, handleRemove } = (0, import_utils39.useFileWidgetProps)(value, onChange, multiple);
|
|
3600
|
+
const BaseInputTemplate2 = (0, import_utils39.getTemplate)("BaseInputTemplate", registry, options);
|
|
3571
3601
|
const handleOnChangeEvent = (event) => {
|
|
3572
3602
|
if (event.target.files) {
|
|
3573
3603
|
handleChange(event.target.files);
|
|
3574
3604
|
}
|
|
3575
3605
|
};
|
|
3576
|
-
return /* @__PURE__ */ (0,
|
|
3577
|
-
/* @__PURE__ */ (0,
|
|
3606
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { children: [
|
|
3607
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
3578
3608
|
BaseInputTemplate2,
|
|
3579
3609
|
{
|
|
3580
3610
|
...props,
|
|
@@ -3586,7 +3616,7 @@ function FileWidget(props) {
|
|
|
3586
3616
|
accept: options.accept ? String(options.accept) : void 0
|
|
3587
3617
|
}
|
|
3588
3618
|
),
|
|
3589
|
-
/* @__PURE__ */ (0,
|
|
3619
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
3590
3620
|
FilesInfo,
|
|
3591
3621
|
{
|
|
3592
3622
|
filesInfo,
|
|
@@ -3601,29 +3631,29 @@ function FileWidget(props) {
|
|
|
3601
3631
|
var FileWidget_default = FileWidget;
|
|
3602
3632
|
|
|
3603
3633
|
// src/components/widgets/HiddenWidget.tsx
|
|
3604
|
-
var
|
|
3634
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
3605
3635
|
function HiddenWidget({
|
|
3606
3636
|
id,
|
|
3607
3637
|
value,
|
|
3608
3638
|
htmlName
|
|
3609
3639
|
}) {
|
|
3610
|
-
return /* @__PURE__ */ (0,
|
|
3640
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("input", { type: "hidden", id, name: htmlName || id, value: typeof value === "undefined" ? "" : value });
|
|
3611
3641
|
}
|
|
3612
3642
|
var HiddenWidget_default = HiddenWidget;
|
|
3613
3643
|
|
|
3614
3644
|
// src/components/widgets/PasswordWidget.tsx
|
|
3615
|
-
var
|
|
3616
|
-
var
|
|
3645
|
+
var import_utils40 = require("@rjsf/utils");
|
|
3646
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
3617
3647
|
function PasswordWidget(props) {
|
|
3618
3648
|
const { options, registry } = props;
|
|
3619
|
-
const BaseInputTemplate2 = (0,
|
|
3620
|
-
return /* @__PURE__ */ (0,
|
|
3649
|
+
const BaseInputTemplate2 = (0, import_utils40.getTemplate)("BaseInputTemplate", registry, options);
|
|
3650
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(BaseInputTemplate2, { type: "password", ...props });
|
|
3621
3651
|
}
|
|
3622
3652
|
|
|
3623
3653
|
// src/components/widgets/RadioWidget.tsx
|
|
3624
3654
|
var import_react16 = require("react");
|
|
3625
|
-
var
|
|
3626
|
-
var
|
|
3655
|
+
var import_utils41 = require("@rjsf/utils");
|
|
3656
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
3627
3657
|
function RadioWidget({
|
|
3628
3658
|
options,
|
|
3629
3659
|
value,
|
|
@@ -3639,24 +3669,24 @@ function RadioWidget({
|
|
|
3639
3669
|
}) {
|
|
3640
3670
|
const { enumOptions, enumDisabled, inline, emptyValue } = options;
|
|
3641
3671
|
const handleBlur = (0, import_react16.useCallback)(
|
|
3642
|
-
({ target }) => onBlur(id, (0,
|
|
3672
|
+
({ target }) => onBlur(id, (0, import_utils41.enumOptionsValueForIndex)(target && target.value, enumOptions, emptyValue)),
|
|
3643
3673
|
[onBlur, enumOptions, emptyValue, id]
|
|
3644
3674
|
);
|
|
3645
3675
|
const handleFocus = (0, import_react16.useCallback)(
|
|
3646
|
-
({ target }) => onFocus(id, (0,
|
|
3676
|
+
({ target }) => onFocus(id, (0, import_utils41.enumOptionsValueForIndex)(target && target.value, enumOptions, emptyValue)),
|
|
3647
3677
|
[onFocus, enumOptions, emptyValue, id]
|
|
3648
3678
|
);
|
|
3649
|
-
return /* @__PURE__ */ (0,
|
|
3650
|
-
const checked = (0,
|
|
3679
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "field-radio-group", id, role: "radiogroup", children: Array.isArray(enumOptions) && enumOptions.map((option, i) => {
|
|
3680
|
+
const checked = (0, import_utils41.enumOptionsIsSelected)(option.value, value);
|
|
3651
3681
|
const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;
|
|
3652
3682
|
const disabledCls = disabled || itemDisabled || readonly ? "disabled" : "";
|
|
3653
3683
|
const handleChange = () => onChange(option.value);
|
|
3654
|
-
const radio = /* @__PURE__ */ (0,
|
|
3655
|
-
/* @__PURE__ */ (0,
|
|
3684
|
+
const radio = /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("span", { children: [
|
|
3685
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
3656
3686
|
"input",
|
|
3657
3687
|
{
|
|
3658
3688
|
type: "radio",
|
|
3659
|
-
id: (0,
|
|
3689
|
+
id: (0, import_utils41.optionId)(id, i),
|
|
3660
3690
|
checked,
|
|
3661
3691
|
name: htmlName || id,
|
|
3662
3692
|
required,
|
|
@@ -3666,18 +3696,18 @@ function RadioWidget({
|
|
|
3666
3696
|
onChange: handleChange,
|
|
3667
3697
|
onBlur: handleBlur,
|
|
3668
3698
|
onFocus: handleFocus,
|
|
3669
|
-
"aria-describedby": (0,
|
|
3699
|
+
"aria-describedby": (0, import_utils41.ariaDescribedByIds)(id)
|
|
3670
3700
|
}
|
|
3671
3701
|
),
|
|
3672
|
-
/* @__PURE__ */ (0,
|
|
3702
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsx)("span", { children: option.label })
|
|
3673
3703
|
] });
|
|
3674
|
-
return inline ? /* @__PURE__ */ (0,
|
|
3704
|
+
return inline ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("label", { className: `radio-inline ${disabledCls}`, children: radio }, i) : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: `radio ${disabledCls}`, children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("label", { children: radio }) }, i);
|
|
3675
3705
|
}) });
|
|
3676
3706
|
}
|
|
3677
3707
|
var RadioWidget_default = RadioWidget;
|
|
3678
3708
|
|
|
3679
3709
|
// src/components/widgets/RangeWidget.tsx
|
|
3680
|
-
var
|
|
3710
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
3681
3711
|
function RangeWidget(props) {
|
|
3682
3712
|
const {
|
|
3683
3713
|
value,
|
|
@@ -3685,15 +3715,15 @@ function RangeWidget(props) {
|
|
|
3685
3715
|
templates: { BaseInputTemplate: BaseInputTemplate2 }
|
|
3686
3716
|
}
|
|
3687
3717
|
} = props;
|
|
3688
|
-
return /* @__PURE__ */ (0,
|
|
3689
|
-
/* @__PURE__ */ (0,
|
|
3690
|
-
/* @__PURE__ */ (0,
|
|
3718
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "field-range-wrapper", children: [
|
|
3719
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(BaseInputTemplate2, { type: "range", ...props }),
|
|
3720
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "range-view", children: value })
|
|
3691
3721
|
] });
|
|
3692
3722
|
}
|
|
3693
3723
|
|
|
3694
3724
|
// src/components/widgets/RatingWidget.tsx
|
|
3695
3725
|
var import_react17 = require("react");
|
|
3696
|
-
var
|
|
3726
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
3697
3727
|
function RatingWidget({
|
|
3698
3728
|
id,
|
|
3699
3729
|
value,
|
|
@@ -3743,7 +3773,7 @@ function RatingWidget({
|
|
|
3743
3773
|
}
|
|
3744
3774
|
return isFilled ? "\u2605" : "\u2606";
|
|
3745
3775
|
};
|
|
3746
|
-
return /* @__PURE__ */ (0,
|
|
3776
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_jsx_runtime51.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
|
|
3747
3777
|
"div",
|
|
3748
3778
|
{
|
|
3749
3779
|
className: "rating-widget",
|
|
@@ -3756,7 +3786,7 @@ function RatingWidget({
|
|
|
3756
3786
|
[...Array(numStars)].map((_, index) => {
|
|
3757
3787
|
const starValue = min + index;
|
|
3758
3788
|
const isFilled = starValue <= value;
|
|
3759
|
-
return /* @__PURE__ */ (0,
|
|
3789
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
3760
3790
|
"span",
|
|
3761
3791
|
{
|
|
3762
3792
|
onClick: () => handleStarClick(starValue),
|
|
@@ -3778,7 +3808,7 @@ function RatingWidget({
|
|
|
3778
3808
|
index
|
|
3779
3809
|
);
|
|
3780
3810
|
}),
|
|
3781
|
-
/* @__PURE__ */ (0,
|
|
3811
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
3782
3812
|
"input",
|
|
3783
3813
|
{
|
|
3784
3814
|
type: "hidden",
|
|
@@ -3797,8 +3827,8 @@ function RatingWidget({
|
|
|
3797
3827
|
|
|
3798
3828
|
// src/components/widgets/SelectWidget.tsx
|
|
3799
3829
|
var import_react18 = require("react");
|
|
3800
|
-
var
|
|
3801
|
-
var
|
|
3830
|
+
var import_utils42 = require("@rjsf/utils");
|
|
3831
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
3802
3832
|
function getValue(event, multiple) {
|
|
3803
3833
|
if (multiple) {
|
|
3804
3834
|
return Array.from(event.target.options).slice().filter((o) => o.selected).map((o) => o.value);
|
|
@@ -3826,27 +3856,27 @@ function SelectWidget({
|
|
|
3826
3856
|
const handleFocus = (0, import_react18.useCallback)(
|
|
3827
3857
|
(event) => {
|
|
3828
3858
|
const newValue = getValue(event, multiple);
|
|
3829
|
-
return onFocus(id, (0,
|
|
3859
|
+
return onFocus(id, (0, import_utils42.enumOptionsValueForIndex)(newValue, enumOptions, optEmptyVal));
|
|
3830
3860
|
},
|
|
3831
3861
|
[onFocus, id, multiple, enumOptions, optEmptyVal]
|
|
3832
3862
|
);
|
|
3833
3863
|
const handleBlur = (0, import_react18.useCallback)(
|
|
3834
3864
|
(event) => {
|
|
3835
3865
|
const newValue = getValue(event, multiple);
|
|
3836
|
-
return onBlur(id, (0,
|
|
3866
|
+
return onBlur(id, (0, import_utils42.enumOptionsValueForIndex)(newValue, enumOptions, optEmptyVal));
|
|
3837
3867
|
},
|
|
3838
3868
|
[onBlur, id, multiple, enumOptions, optEmptyVal]
|
|
3839
3869
|
);
|
|
3840
3870
|
const handleChange = (0, import_react18.useCallback)(
|
|
3841
3871
|
(event) => {
|
|
3842
3872
|
const newValue = getValue(event, multiple);
|
|
3843
|
-
return onChange((0,
|
|
3873
|
+
return onChange((0, import_utils42.enumOptionsValueForIndex)(newValue, enumOptions, optEmptyVal));
|
|
3844
3874
|
},
|
|
3845
3875
|
[onChange, multiple, enumOptions, optEmptyVal]
|
|
3846
3876
|
);
|
|
3847
|
-
const selectedIndexes = (0,
|
|
3877
|
+
const selectedIndexes = (0, import_utils42.enumOptionsIndexForValue)(value, enumOptions, multiple);
|
|
3848
3878
|
const showPlaceholderOption = !multiple && schema.default === void 0;
|
|
3849
|
-
return /* @__PURE__ */ (0,
|
|
3879
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
|
|
3850
3880
|
"select",
|
|
3851
3881
|
{
|
|
3852
3882
|
id,
|
|
@@ -3861,12 +3891,12 @@ function SelectWidget({
|
|
|
3861
3891
|
onBlur: handleBlur,
|
|
3862
3892
|
onFocus: handleFocus,
|
|
3863
3893
|
onChange: handleChange,
|
|
3864
|
-
"aria-describedby": (0,
|
|
3894
|
+
"aria-describedby": (0, import_utils42.ariaDescribedByIds)(id),
|
|
3865
3895
|
children: [
|
|
3866
|
-
showPlaceholderOption && /* @__PURE__ */ (0,
|
|
3896
|
+
showPlaceholderOption && /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("option", { value: "", children: placeholder }),
|
|
3867
3897
|
Array.isArray(enumOptions) && enumOptions.map(({ value: value2, label }, i) => {
|
|
3868
3898
|
const disabled2 = enumDisabled && enumDisabled.indexOf(value2) !== -1;
|
|
3869
|
-
return /* @__PURE__ */ (0,
|
|
3899
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("option", { value: String(i), disabled: disabled2, children: label }, i);
|
|
3870
3900
|
})
|
|
3871
3901
|
]
|
|
3872
3902
|
}
|
|
@@ -3876,8 +3906,8 @@ var SelectWidget_default = SelectWidget;
|
|
|
3876
3906
|
|
|
3877
3907
|
// src/components/widgets/TextareaWidget.tsx
|
|
3878
3908
|
var import_react19 = require("react");
|
|
3879
|
-
var
|
|
3880
|
-
var
|
|
3909
|
+
var import_utils43 = require("@rjsf/utils");
|
|
3910
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
3881
3911
|
function TextareaWidget({
|
|
3882
3912
|
id,
|
|
3883
3913
|
options = {},
|
|
@@ -3904,7 +3934,7 @@ function TextareaWidget({
|
|
|
3904
3934
|
({ target }) => onFocus(id, target && target.value),
|
|
3905
3935
|
[id, onFocus]
|
|
3906
3936
|
);
|
|
3907
|
-
return /* @__PURE__ */ (0,
|
|
3937
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3908
3938
|
"textarea",
|
|
3909
3939
|
{
|
|
3910
3940
|
id,
|
|
@@ -3920,7 +3950,7 @@ function TextareaWidget({
|
|
|
3920
3950
|
onBlur: handleBlur,
|
|
3921
3951
|
onFocus: handleFocus,
|
|
3922
3952
|
onChange: handleChange,
|
|
3923
|
-
"aria-describedby": (0,
|
|
3953
|
+
"aria-describedby": (0, import_utils43.ariaDescribedByIds)(id)
|
|
3924
3954
|
}
|
|
3925
3955
|
);
|
|
3926
3956
|
}
|
|
@@ -3931,41 +3961,41 @@ TextareaWidget.defaultProps = {
|
|
|
3931
3961
|
var TextareaWidget_default = TextareaWidget;
|
|
3932
3962
|
|
|
3933
3963
|
// src/components/widgets/TextWidget.tsx
|
|
3934
|
-
var
|
|
3935
|
-
var
|
|
3964
|
+
var import_utils44 = require("@rjsf/utils");
|
|
3965
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
3936
3966
|
function TextWidget(props) {
|
|
3937
3967
|
const { options, registry } = props;
|
|
3938
|
-
const BaseInputTemplate2 = (0,
|
|
3939
|
-
return /* @__PURE__ */ (0,
|
|
3968
|
+
const BaseInputTemplate2 = (0, import_utils44.getTemplate)("BaseInputTemplate", registry, options);
|
|
3969
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(BaseInputTemplate2, { ...props });
|
|
3940
3970
|
}
|
|
3941
3971
|
|
|
3942
3972
|
// src/components/widgets/TimeWidget.tsx
|
|
3943
3973
|
var import_react20 = require("react");
|
|
3944
|
-
var
|
|
3945
|
-
var
|
|
3974
|
+
var import_utils45 = require("@rjsf/utils");
|
|
3975
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
3946
3976
|
function TimeWidget(props) {
|
|
3947
3977
|
const { onChange, options, registry } = props;
|
|
3948
|
-
const BaseInputTemplate2 = (0,
|
|
3978
|
+
const BaseInputTemplate2 = (0, import_utils45.getTemplate)("BaseInputTemplate", registry, options);
|
|
3949
3979
|
const handleChange = (0, import_react20.useCallback)((value) => onChange(value ? `${value}:00` : void 0), [onChange]);
|
|
3950
|
-
return /* @__PURE__ */ (0,
|
|
3980
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(BaseInputTemplate2, { type: "time", ...props, onChange: handleChange });
|
|
3951
3981
|
}
|
|
3952
3982
|
|
|
3953
3983
|
// src/components/widgets/URLWidget.tsx
|
|
3954
|
-
var
|
|
3955
|
-
var
|
|
3984
|
+
var import_utils46 = require("@rjsf/utils");
|
|
3985
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
3956
3986
|
function URLWidget(props) {
|
|
3957
3987
|
const { options, registry } = props;
|
|
3958
|
-
const BaseInputTemplate2 = (0,
|
|
3959
|
-
return /* @__PURE__ */ (0,
|
|
3988
|
+
const BaseInputTemplate2 = (0, import_utils46.getTemplate)("BaseInputTemplate", registry, options);
|
|
3989
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(BaseInputTemplate2, { type: "url", ...props });
|
|
3960
3990
|
}
|
|
3961
3991
|
|
|
3962
3992
|
// src/components/widgets/UpDownWidget.tsx
|
|
3963
|
-
var
|
|
3964
|
-
var
|
|
3993
|
+
var import_utils47 = require("@rjsf/utils");
|
|
3994
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
3965
3995
|
function UpDownWidget(props) {
|
|
3966
3996
|
const { options, registry } = props;
|
|
3967
|
-
const BaseInputTemplate2 = (0,
|
|
3968
|
-
return /* @__PURE__ */ (0,
|
|
3997
|
+
const BaseInputTemplate2 = (0, import_utils47.getTemplate)("BaseInputTemplate", registry, options);
|
|
3998
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(BaseInputTemplate2, { type: "number", ...props });
|
|
3969
3999
|
}
|
|
3970
4000
|
|
|
3971
4001
|
// src/components/widgets/index.ts
|
|
@@ -4003,17 +4033,17 @@ function getDefaultRegistry() {
|
|
|
4003
4033
|
widgets: widgets_default(),
|
|
4004
4034
|
rootSchema: {},
|
|
4005
4035
|
formContext: {},
|
|
4006
|
-
translateString:
|
|
4036
|
+
translateString: import_utils48.englishStringTranslator,
|
|
4007
4037
|
globalFormOptions: {
|
|
4008
|
-
idPrefix:
|
|
4009
|
-
idSeparator:
|
|
4038
|
+
idPrefix: import_utils48.DEFAULT_ID_PREFIX,
|
|
4039
|
+
idSeparator: import_utils48.DEFAULT_ID_SEPARATOR,
|
|
4010
4040
|
useFallbackUiForUnsupportedType: false
|
|
4011
4041
|
}
|
|
4012
4042
|
};
|
|
4013
4043
|
}
|
|
4014
4044
|
|
|
4015
4045
|
// src/components/Form.tsx
|
|
4016
|
-
var
|
|
4046
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
4017
4047
|
function toIChangeEvent(state, status) {
|
|
4018
4048
|
return {
|
|
4019
4049
|
...(0, import_pick.default)(state, ["schema", "uiSchema", "fieldPathId", "schemaUtils", "formData", "edit", "errors", "errorSchema"]),
|
|
@@ -4042,7 +4072,7 @@ var Form = class extends import_react21.Component {
|
|
|
4042
4072
|
const { formData: propsFormData, initialFormData, onChange } = props;
|
|
4043
4073
|
const formData = propsFormData ?? initialFormData;
|
|
4044
4074
|
this.state = this.getStateFromProps(props, formData, void 0, void 0, void 0, true);
|
|
4045
|
-
if (onChange && !(0,
|
|
4075
|
+
if (onChange && !(0, import_utils49.deepEquals)(this.state.formData, formData)) {
|
|
4046
4076
|
onChange(toIChangeEvent(this.state));
|
|
4047
4077
|
}
|
|
4048
4078
|
this.formElement = (0, import_react21.createRef)();
|
|
@@ -4066,12 +4096,12 @@ var Form = class extends import_react21.Component {
|
|
|
4066
4096
|
* with a flag indicating that an update is not necessary.
|
|
4067
4097
|
*/
|
|
4068
4098
|
getSnapshotBeforeUpdate(prevProps, prevState) {
|
|
4069
|
-
if (!(0,
|
|
4070
|
-
const formDataChangedFields = (0,
|
|
4071
|
-
const stateDataChangedFields = (0,
|
|
4072
|
-
const isSchemaChanged = !(0,
|
|
4073
|
-
const isFormDataChanged = formDataChangedFields.length > 0 || !(0,
|
|
4074
|
-
const isStateDataChanged = stateDataChangedFields.length > 0 || !(0,
|
|
4099
|
+
if (!(0, import_utils49.deepEquals)(this.props, prevProps)) {
|
|
4100
|
+
const formDataChangedFields = (0, import_utils49.getChangedFields)(this.props.formData, prevProps.formData);
|
|
4101
|
+
const stateDataChangedFields = (0, import_utils49.getChangedFields)(this.props.formData, this.state.formData);
|
|
4102
|
+
const isSchemaChanged = !(0, import_utils49.deepEquals)(prevProps.schema, this.props.schema);
|
|
4103
|
+
const isFormDataChanged = formDataChangedFields.length > 0 || !(0, import_utils49.deepEquals)(prevProps.formData, this.props.formData);
|
|
4104
|
+
const isStateDataChanged = stateDataChangedFields.length > 0 || !(0, import_utils49.deepEquals)(this.state.formData, this.props.formData);
|
|
4075
4105
|
const nextState = this.getStateFromProps(
|
|
4076
4106
|
this.props,
|
|
4077
4107
|
this.props.formData,
|
|
@@ -4084,7 +4114,7 @@ var Form = class extends import_react21.Component {
|
|
|
4084
4114
|
// Skip live validation for this request if no form data has changed from the last state
|
|
4085
4115
|
!isStateDataChanged
|
|
4086
4116
|
);
|
|
4087
|
-
const shouldUpdate = !(0,
|
|
4117
|
+
const shouldUpdate = !(0, import_utils49.deepEquals)(nextState, prevState);
|
|
4088
4118
|
return { nextState, shouldUpdate };
|
|
4089
4119
|
}
|
|
4090
4120
|
return { shouldUpdate: false };
|
|
@@ -4104,7 +4134,7 @@ var Form = class extends import_react21.Component {
|
|
|
4104
4134
|
componentDidUpdate(_, prevState, snapshot) {
|
|
4105
4135
|
if (snapshot.shouldUpdate) {
|
|
4106
4136
|
const { nextState } = snapshot;
|
|
4107
|
-
if (!(0,
|
|
4137
|
+
if (!(0, import_utils49.deepEquals)(nextState.formData, this.props.formData) && !(0, import_utils49.deepEquals)(nextState.formData, prevState.formData) && this.props.onChange) {
|
|
4108
4138
|
this.props.onChange(toIChangeEvent(nextState));
|
|
4109
4139
|
}
|
|
4110
4140
|
this.setState(nextState);
|
|
@@ -4140,7 +4170,7 @@ var Form = class extends import_react21.Component {
|
|
|
4140
4170
|
experimental_defaultFormStateBehavior,
|
|
4141
4171
|
experimental_customMergeAllOf
|
|
4142
4172
|
)) {
|
|
4143
|
-
schemaUtils = (0,
|
|
4173
|
+
schemaUtils = (0, import_utils49.createSchemaUtils)(
|
|
4144
4174
|
validator2,
|
|
4145
4175
|
schema,
|
|
4146
4176
|
experimental_defaultFormStateBehavior,
|
|
@@ -4210,7 +4240,7 @@ var Form = class extends import_react21.Component {
|
|
|
4210
4240
|
},
|
|
4211
4241
|
{}
|
|
4212
4242
|
);
|
|
4213
|
-
errorSchema = schemaValidationErrorSchema = (0,
|
|
4243
|
+
errorSchema = schemaValidationErrorSchema = (0, import_utils49.mergeObjects)(
|
|
4214
4244
|
currentErrors.errorSchema,
|
|
4215
4245
|
newErrorSchema,
|
|
4216
4246
|
"preventDuplicates"
|
|
@@ -4221,8 +4251,8 @@ var Form = class extends import_react21.Component {
|
|
|
4221
4251
|
errorSchema = mergedErrors.errorSchema;
|
|
4222
4252
|
}
|
|
4223
4253
|
const newRegistry = this.getRegistry(props, rootSchema, schemaUtils);
|
|
4224
|
-
const registry = (0,
|
|
4225
|
-
const fieldPathId = state.fieldPathId && state.fieldPathId?.[
|
|
4254
|
+
const registry = (0, import_utils49.deepEquals)(state.registry, newRegistry) ? state.registry : newRegistry;
|
|
4255
|
+
const fieldPathId = state.fieldPathId && state.fieldPathId?.[import_utils49.ID_KEY] === registry.globalFormOptions.idPrefix ? state.fieldPathId : (0, import_utils49.toFieldPathId)("", registry.globalFormOptions);
|
|
4226
4256
|
const nextState = {
|
|
4227
4257
|
schemaUtils,
|
|
4228
4258
|
schema: rootSchema,
|
|
@@ -4248,7 +4278,7 @@ var Form = class extends import_react21.Component {
|
|
|
4248
4278
|
*/
|
|
4249
4279
|
shouldComponentUpdate(nextProps, nextState) {
|
|
4250
4280
|
const { experimental_componentUpdateStrategy = "customDeep" } = this.props;
|
|
4251
|
-
return (0,
|
|
4281
|
+
return (0, import_utils49.shouldRender)(this, nextProps, nextState, experimental_componentUpdateStrategy);
|
|
4252
4282
|
}
|
|
4253
4283
|
/** Validates the `formData` against the `schema` using the `altSchemaUtils` (if provided otherwise it uses the
|
|
4254
4284
|
* `schemaUtils` in the state), returning the results.
|
|
@@ -4267,10 +4297,10 @@ var Form = class extends import_react21.Component {
|
|
|
4267
4297
|
/** Renders any errors contained in the `state` in using the `ErrorList`, if not disabled by `showErrorList`. */
|
|
4268
4298
|
renderErrors(registry) {
|
|
4269
4299
|
const { errors, errorSchema, schema, uiSchema } = this.state;
|
|
4270
|
-
const options = (0,
|
|
4271
|
-
const ErrorListTemplate = (0,
|
|
4300
|
+
const options = (0, import_utils49.getUiOptions)(uiSchema);
|
|
4301
|
+
const ErrorListTemplate = (0, import_utils49.getTemplate)("ErrorListTemplate", registry, options);
|
|
4272
4302
|
if (errors && errors.length) {
|
|
4273
|
-
return /* @__PURE__ */ (0,
|
|
4303
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
4274
4304
|
ErrorListTemplate,
|
|
4275
4305
|
{
|
|
4276
4306
|
errors,
|
|
@@ -4295,12 +4325,12 @@ var Form = class extends import_react21.Component {
|
|
|
4295
4325
|
let errorSchema = schemaValidation.errorSchema;
|
|
4296
4326
|
let errors = schemaValidation.errors;
|
|
4297
4327
|
if (extraErrors) {
|
|
4298
|
-
const merged = (0,
|
|
4328
|
+
const merged = (0, import_utils49.validationDataMerge)(schemaValidation, extraErrors);
|
|
4299
4329
|
errorSchema = merged.errorSchema;
|
|
4300
4330
|
errors = merged.errors;
|
|
4301
4331
|
}
|
|
4302
4332
|
if (customErrors) {
|
|
4303
|
-
const merged = (0,
|
|
4333
|
+
const merged = (0, import_utils49.validationDataMerge)(schemaValidation, customErrors.ErrorSchema, true);
|
|
4304
4334
|
errorSchema = merged.errorSchema;
|
|
4305
4335
|
errors = merged.errors;
|
|
4306
4336
|
}
|
|
@@ -4325,7 +4355,7 @@ var Form = class extends import_react21.Component {
|
|
|
4325
4355
|
const errors = schemaValidation.errors;
|
|
4326
4356
|
let errorSchema = schemaValidation.errorSchema;
|
|
4327
4357
|
if (mergeIntoOriginalErrorSchema) {
|
|
4328
|
-
errorSchema = (0,
|
|
4358
|
+
errorSchema = (0, import_utils49.mergeObjects)(
|
|
4329
4359
|
originalErrorSchema,
|
|
4330
4360
|
schemaValidation.errorSchema,
|
|
4331
4361
|
"preventDuplicates"
|
|
@@ -4364,12 +4394,12 @@ var Form = class extends import_react21.Component {
|
|
|
4364
4394
|
const data = _obj[key];
|
|
4365
4395
|
if (typeof data === "object") {
|
|
4366
4396
|
const newPaths = paths.map((path) => [...path, key]);
|
|
4367
|
-
if (data[
|
|
4368
|
-
acc.push(data[
|
|
4397
|
+
if (data[import_utils49.RJSF_ADDITIONAL_PROPERTIES_FLAG] && data[import_utils49.NAME_KEY] !== "") {
|
|
4398
|
+
acc.push(data[import_utils49.NAME_KEY]);
|
|
4369
4399
|
} else {
|
|
4370
4400
|
getAllPaths(data, acc, newPaths);
|
|
4371
4401
|
}
|
|
4372
|
-
} else if (key ===
|
|
4402
|
+
} else if (key === import_utils49.NAME_KEY && data !== "") {
|
|
4373
4403
|
paths.forEach((path) => {
|
|
4374
4404
|
const formValue = (0, import_get5.default)(formData, path);
|
|
4375
4405
|
const isLeaf = objKeys.length === 1;
|
|
@@ -4405,8 +4435,8 @@ var Form = class extends import_react21.Component {
|
|
|
4405
4435
|
setFieldValue = (fieldPath, newValue) => {
|
|
4406
4436
|
const { registry } = this.state;
|
|
4407
4437
|
const path = Array.isArray(fieldPath) ? fieldPath : fieldPath.split(".");
|
|
4408
|
-
const fieldPathId = (0,
|
|
4409
|
-
this.onChange(newValue, path, void 0, fieldPathId[
|
|
4438
|
+
const fieldPathId = (0, import_utils49.toFieldPathId)("", registry.globalFormOptions, path);
|
|
4439
|
+
this.onChange(newValue, path, void 0, fieldPathId[import_utils49.ID_KEY]);
|
|
4410
4440
|
};
|
|
4411
4441
|
/** Pushes the given change information into the `pendingChanges` array and then calls `processPendingChanges()` if
|
|
4412
4442
|
* the array only contains a single pending change.
|
|
@@ -4444,7 +4474,7 @@ var Form = class extends import_react21.Component {
|
|
|
4444
4474
|
const isRootPath = !path || path.length === 0 || path.length === 1 && path[0] === rootPathId;
|
|
4445
4475
|
let retrievedSchema = this.state.retrievedSchema;
|
|
4446
4476
|
let formData = isRootPath ? newValue : (0, import_cloneDeep2.default)(oldFormData);
|
|
4447
|
-
if ((0,
|
|
4477
|
+
if ((0, import_utils49.isObject)(formData) || Array.isArray(formData)) {
|
|
4448
4478
|
if (newValue === ADDITIONAL_PROPERTY_KEY_REMOVE) {
|
|
4449
4479
|
(0, import_unset.default)(formData, path);
|
|
4450
4480
|
} else if (!isRootPath) {
|
|
@@ -4473,10 +4503,10 @@ var Form = class extends import_react21.Component {
|
|
|
4473
4503
|
}
|
|
4474
4504
|
} else {
|
|
4475
4505
|
if (!customErrors) {
|
|
4476
|
-
customErrors = new
|
|
4506
|
+
customErrors = new import_utils49.ErrorSchemaBuilder();
|
|
4477
4507
|
}
|
|
4478
4508
|
if (isRootPath) {
|
|
4479
|
-
const errors2 = (0, import_get5.default)(newErrorSchema,
|
|
4509
|
+
const errors2 = (0, import_get5.default)(newErrorSchema, import_utils49.ERRORS_KEY);
|
|
4480
4510
|
if (errors2) {
|
|
4481
4511
|
customErrors.setErrors(errors2);
|
|
4482
4512
|
}
|
|
@@ -4484,7 +4514,7 @@ var Form = class extends import_react21.Component {
|
|
|
4484
4514
|
(0, import_set5.default)(customErrors.ErrorSchema, path, newErrorSchema);
|
|
4485
4515
|
}
|
|
4486
4516
|
}
|
|
4487
|
-
} else if (customErrors && (0, import_get5.default)(customErrors.ErrorSchema, [...path,
|
|
4517
|
+
} else if (customErrors && (0, import_get5.default)(customErrors.ErrorSchema, [...path, import_utils49.ERRORS_KEY])) {
|
|
4488
4518
|
customErrors.clearErrors(path);
|
|
4489
4519
|
}
|
|
4490
4520
|
if (mustValidate && this.pendingChanges.length === 1) {
|
|
@@ -4524,7 +4554,7 @@ var Form = class extends import_react21.Component {
|
|
|
4524
4554
|
* @returns The new retrieved schema if it has changed, else the old retrieved schema.
|
|
4525
4555
|
*/
|
|
4526
4556
|
updateRetrievedSchema(retrievedSchema) {
|
|
4527
|
-
const isTheSame = (0,
|
|
4557
|
+
const isTheSame = (0, import_utils49.deepEquals)(retrievedSchema, this.state?.retrievedSchema);
|
|
4528
4558
|
return isTheSame ? this.state.retrievedSchema : retrievedSchema;
|
|
4529
4559
|
}
|
|
4530
4560
|
/**
|
|
@@ -4592,7 +4622,7 @@ var Form = class extends import_react21.Component {
|
|
|
4592
4622
|
const hasChanges = Object.keys(state).filter((key) => !key.startsWith("schemaValidation")).some((key) => {
|
|
4593
4623
|
const oldData = (0, import_get5.default)(this.state, key);
|
|
4594
4624
|
const newData = (0, import_get5.default)(state, key);
|
|
4595
|
-
return !(0,
|
|
4625
|
+
return !(0, import_utils49.deepEquals)(oldData, newData);
|
|
4596
4626
|
});
|
|
4597
4627
|
this.setState(state, () => {
|
|
4598
4628
|
if (onChange && hasChanges) {
|
|
@@ -4634,7 +4664,7 @@ var Form = class extends import_react21.Component {
|
|
|
4634
4664
|
}
|
|
4635
4665
|
if (noValidate || this.validateFormWithFormData(newFormData)) {
|
|
4636
4666
|
const errorSchema = extraErrors || {};
|
|
4637
|
-
const errors = extraErrors ? (0,
|
|
4667
|
+
const errors = extraErrors ? (0, import_utils49.toErrorList)(extraErrors) : [];
|
|
4638
4668
|
this.setState(
|
|
4639
4669
|
{
|
|
4640
4670
|
formData: newFormData,
|
|
@@ -4661,8 +4691,8 @@ var Form = class extends import_react21.Component {
|
|
|
4661
4691
|
const {
|
|
4662
4692
|
uiSchema = {},
|
|
4663
4693
|
experimental_componentUpdateStrategy,
|
|
4664
|
-
idSeparator =
|
|
4665
|
-
idPrefix =
|
|
4694
|
+
idSeparator = import_utils49.DEFAULT_ID_SEPARATOR,
|
|
4695
|
+
idPrefix = import_utils49.DEFAULT_ID_PREFIX,
|
|
4666
4696
|
nameGenerator,
|
|
4667
4697
|
useFallbackUiForUnsupportedType = false
|
|
4668
4698
|
} = props;
|
|
@@ -4694,7 +4724,7 @@ var Form = class extends import_react21.Component {
|
|
|
4694
4724
|
formContext: props.formContext || formContext,
|
|
4695
4725
|
schemaUtils,
|
|
4696
4726
|
translateString: customTranslateString || translateString,
|
|
4697
|
-
globalUiOptions: uiSchema[
|
|
4727
|
+
globalUiOptions: uiSchema[import_utils49.UI_GLOBAL_OPTIONS_KEY],
|
|
4698
4728
|
globalFormOptions: this.getGlobalFormOptions(props)
|
|
4699
4729
|
};
|
|
4700
4730
|
}
|
|
@@ -4753,7 +4783,7 @@ var Form = class extends import_react21.Component {
|
|
|
4753
4783
|
const hasError = errors.length > 0 || extraErrors && extraErrorsBlockSubmit;
|
|
4754
4784
|
if (hasError) {
|
|
4755
4785
|
if (extraErrors) {
|
|
4756
|
-
const merged = (0,
|
|
4786
|
+
const merged = (0, import_utils49.validationDataMerge)(schemaValidation, extraErrors);
|
|
4757
4787
|
errorSchema = merged.errorSchema;
|
|
4758
4788
|
errors = merged.errors;
|
|
4759
4789
|
}
|
|
@@ -4830,12 +4860,12 @@ var Form = class extends import_react21.Component {
|
|
|
4830
4860
|
const { SubmitButton: SubmitButton2 } = registry.templates.ButtonTemplates;
|
|
4831
4861
|
const as = _internalFormWrapper ? tagName : void 0;
|
|
4832
4862
|
const FormTag = _internalFormWrapper || tagName || "form";
|
|
4833
|
-
let { [
|
|
4863
|
+
let { [import_utils49.SUBMIT_BTN_OPTIONS_KEY]: submitOptions = {} } = (0, import_utils49.getUiOptions)(uiSchema);
|
|
4834
4864
|
if (disabled) {
|
|
4835
4865
|
submitOptions = { ...submitOptions, props: { ...submitOptions.props, disabled: true } };
|
|
4836
4866
|
}
|
|
4837
|
-
const submitUiSchema = { [
|
|
4838
|
-
return /* @__PURE__ */ (0,
|
|
4867
|
+
const submitUiSchema = { [import_utils49.UI_OPTIONS_KEY]: { [import_utils49.SUBMIT_BTN_OPTIONS_KEY]: submitOptions } };
|
|
4868
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
|
|
4839
4869
|
FormTag,
|
|
4840
4870
|
{
|
|
4841
4871
|
className: className ? className : "rjsf",
|
|
@@ -4853,7 +4883,7 @@ var Form = class extends import_react21.Component {
|
|
|
4853
4883
|
ref: this.formElement,
|
|
4854
4884
|
children: [
|
|
4855
4885
|
showErrorList === "top" && this.renderErrors(registry),
|
|
4856
|
-
/* @__PURE__ */ (0,
|
|
4886
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
4857
4887
|
_SchemaField,
|
|
4858
4888
|
{
|
|
4859
4889
|
name: "",
|
|
@@ -4870,7 +4900,7 @@ var Form = class extends import_react21.Component {
|
|
|
4870
4900
|
readonly
|
|
4871
4901
|
}
|
|
4872
4902
|
),
|
|
4873
|
-
children ? children : /* @__PURE__ */ (0,
|
|
4903
|
+
children ? children : /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(SubmitButton2, { uiSchema: submitUiSchema, registry }),
|
|
4874
4904
|
showErrorList === "bottom" && this.renderErrors(registry)
|
|
4875
4905
|
]
|
|
4876
4906
|
}
|
|
@@ -4880,7 +4910,7 @@ var Form = class extends import_react21.Component {
|
|
|
4880
4910
|
|
|
4881
4911
|
// src/withTheme.tsx
|
|
4882
4912
|
var import_react22 = require("react");
|
|
4883
|
-
var
|
|
4913
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
4884
4914
|
function withTheme(themeProps) {
|
|
4885
4915
|
return (0, import_react22.forwardRef)(
|
|
4886
4916
|
({ fields: fields2, widgets: widgets2, templates: templates2, ...directProps }, ref) => {
|
|
@@ -4894,7 +4924,7 @@ function withTheme(themeProps) {
|
|
|
4894
4924
|
...templates2?.ButtonTemplates
|
|
4895
4925
|
}
|
|
4896
4926
|
};
|
|
4897
|
-
return /* @__PURE__ */ (0,
|
|
4927
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
4898
4928
|
Form,
|
|
4899
4929
|
{
|
|
4900
4930
|
...themeProps,
|
|
@@ -4910,15 +4940,15 @@ function withTheme(themeProps) {
|
|
|
4910
4940
|
}
|
|
4911
4941
|
|
|
4912
4942
|
// src/getTestRegistry.tsx
|
|
4913
|
-
var
|
|
4943
|
+
var import_utils50 = require("@rjsf/utils");
|
|
4914
4944
|
var import_validator_ajv8 = __toESM(require("@rjsf/validator-ajv8"), 1);
|
|
4915
4945
|
function getTestRegistry(rootSchema, fields2 = {}, templates2 = {}, widgets2 = {}, formContext = {}, globalFormOptions = {
|
|
4916
|
-
idPrefix:
|
|
4917
|
-
idSeparator:
|
|
4946
|
+
idPrefix: import_utils50.DEFAULT_ID_PREFIX,
|
|
4947
|
+
idSeparator: import_utils50.DEFAULT_ID_SEPARATOR,
|
|
4918
4948
|
useFallbackUiForUnsupportedType: false
|
|
4919
4949
|
}) {
|
|
4920
4950
|
const defaults = getDefaultRegistry();
|
|
4921
|
-
const schemaUtils = (0,
|
|
4951
|
+
const schemaUtils = (0, import_utils50.createSchemaUtils)(import_validator_ajv8.default, rootSchema);
|
|
4922
4952
|
return {
|
|
4923
4953
|
fields: { ...defaults.fields, ...fields2 },
|
|
4924
4954
|
templates: { ...defaults.templates, ...templates2 },
|
|
@@ -4926,7 +4956,7 @@ function getTestRegistry(rootSchema, fields2 = {}, templates2 = {}, widgets2 = {
|
|
|
4926
4956
|
formContext,
|
|
4927
4957
|
rootSchema,
|
|
4928
4958
|
schemaUtils,
|
|
4929
|
-
translateString:
|
|
4959
|
+
translateString: import_utils50.englishStringTranslator,
|
|
4930
4960
|
globalFormOptions
|
|
4931
4961
|
};
|
|
4932
4962
|
}
|