@rjsf/core 3.0.1 → 3.2.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/dist/cjs/components/AddButton.js +32 -0
- package/dist/cjs/components/ErrorList.js +29 -0
- package/dist/cjs/components/Form.js +567 -0
- package/dist/cjs/components/IconButton.js +32 -0
- package/dist/cjs/components/fields/ArrayField.js +854 -0
- package/dist/cjs/components/fields/BooleanField.js +105 -0
- package/dist/cjs/components/fields/DescriptionField.js +44 -0
- package/dist/cjs/components/fields/MultiSchemaField.js +257 -0
- package/dist/cjs/components/fields/NullField.js +66 -0
- package/dist/cjs/components/fields/NumberField.js +153 -0
- package/dist/cjs/components/fields/ObjectField.js +341 -0
- package/dist/cjs/components/fields/SchemaField.js +455 -0
- package/dist/cjs/components/fields/StringField.js +96 -0
- package/dist/cjs/components/fields/TitleField.js +37 -0
- package/dist/cjs/components/fields/UnsupportedField.js +33 -0
- package/dist/cjs/components/fields/index.js +47 -0
- package/dist/cjs/components/widgets/AltDateTimeWidget.js +45 -0
- package/dist/cjs/components/widgets/AltDateWidget.js +282 -0
- package/dist/cjs/components/widgets/BaseInput.js +144 -0
- package/dist/cjs/components/widgets/CheckboxWidget.js +74 -0
- package/dist/cjs/components/widgets/CheckboxesWidget.js +106 -0
- package/dist/cjs/components/widgets/ColorWidget.js +42 -0
- package/dist/cjs/components/widgets/DateTimeWidget.js +40 -0
- package/dist/cjs/components/widgets/DateWidget.js +36 -0
- package/dist/cjs/components/widgets/EmailWidget.js +31 -0
- package/dist/cjs/components/widgets/FileWidget.js +198 -0
- package/dist/cjs/components/widgets/HiddenWidget.js +33 -0
- package/dist/cjs/components/widgets/PasswordWidget.js +31 -0
- package/dist/cjs/components/widgets/RadioWidget.js +92 -0
- package/dist/cjs/components/widgets/RangeWidget.js +39 -0
- package/dist/cjs/components/widgets/SelectWidget.js +143 -0
- package/dist/cjs/components/widgets/TextWidget.js +28 -0
- package/dist/cjs/components/widgets/TextareaWidget.js +78 -0
- package/dist/cjs/components/widgets/URLWidget.js +31 -0
- package/dist/cjs/components/widgets/UpDownWidget.js +33 -0
- package/dist/cjs/components/widgets/index.js +70 -0
- package/dist/cjs/index.js +28 -0
- package/dist/cjs/types.js +47 -0
- package/dist/cjs/utils.js +1337 -0
- package/dist/cjs/validate.js +354 -0
- package/dist/cjs/withTheme.js +50 -0
- package/dist/es/components/AddButton.js +21 -0
- package/dist/es/components/ErrorList.js +19 -0
- package/dist/es/components/Form.js +552 -0
- package/dist/es/components/IconButton.js +22 -0
- package/dist/es/components/fields/ArrayField.js +836 -0
- package/dist/es/components/fields/BooleanField.js +91 -0
- package/dist/es/components/fields/DescriptionField.js +33 -0
- package/dist/es/components/fields/MultiSchemaField.js +243 -0
- package/dist/es/components/fields/NullField.js +55 -0
- package/dist/es/components/fields/NumberField.js +138 -0
- package/dist/es/components/fields/ObjectField.js +326 -0
- package/dist/es/components/fields/SchemaField.js +437 -0
- package/dist/es/components/fields/StringField.js +82 -0
- package/dist/es/components/fields/TitleField.js +25 -0
- package/dist/es/components/fields/UnsupportedField.js +22 -0
- package/dist/es/components/fields/index.js +26 -0
- package/dist/es/components/widgets/AltDateTimeWidget.js +33 -0
- package/dist/es/components/widgets/AltDateWidget.js +268 -0
- package/dist/es/components/widgets/BaseInput.js +133 -0
- package/dist/es/components/widgets/CheckboxWidget.js +62 -0
- package/dist/es/components/widgets/CheckboxesWidget.js +93 -0
- package/dist/es/components/widgets/ColorWidget.js +31 -0
- package/dist/es/components/widgets/DateTimeWidget.js +28 -0
- package/dist/es/components/widgets/DateWidget.js +25 -0
- package/dist/es/components/widgets/EmailWidget.js +20 -0
- package/dist/es/components/widgets/FileWidget.js +184 -0
- package/dist/es/components/widgets/HiddenWidget.js +22 -0
- package/dist/es/components/widgets/PasswordWidget.js +20 -0
- package/dist/es/components/widgets/RadioWidget.js +79 -0
- package/dist/es/components/widgets/RangeWidget.js +27 -0
- package/dist/es/components/widgets/SelectWidget.js +130 -0
- package/dist/es/components/widgets/TextWidget.js +17 -0
- package/dist/es/components/widgets/TextareaWidget.js +67 -0
- package/dist/es/components/widgets/URLWidget.js +20 -0
- package/dist/es/components/widgets/UpDownWidget.js +21 -0
- package/dist/es/components/widgets/index.js +41 -0
- package/dist/es/index.js +6 -0
- package/dist/es/types.js +34 -0
- package/dist/es/utils.js +1239 -0
- package/dist/es/validate.js +338 -0
- package/dist/es/withTheme.js +36 -0
- package/dist/react-jsonschema-form.js +11 -0
- package/dist/react-jsonschema-form.js.map +1 -0
- package/index.d.ts +30 -23
- package/lib/components/AddButton.js +21 -0
- package/lib/components/ErrorList.js +19 -0
- package/lib/components/Form.js +552 -0
- package/lib/components/IconButton.js +22 -0
- package/lib/components/fields/ArrayField.js +836 -0
- package/lib/components/fields/BooleanField.js +91 -0
- package/lib/components/fields/DescriptionField.js +33 -0
- package/lib/components/fields/MultiSchemaField.js +243 -0
- package/lib/components/fields/NullField.js +55 -0
- package/lib/components/fields/NumberField.js +138 -0
- package/lib/components/fields/ObjectField.js +326 -0
- package/lib/components/fields/SchemaField.js +437 -0
- package/lib/components/fields/StringField.js +82 -0
- package/lib/components/fields/TitleField.js +25 -0
- package/lib/components/fields/UnsupportedField.js +22 -0
- package/lib/components/fields/index.js +26 -0
- package/lib/components/widgets/AltDateTimeWidget.js +33 -0
- package/lib/components/widgets/AltDateWidget.js +268 -0
- package/lib/components/widgets/BaseInput.js +133 -0
- package/lib/components/widgets/CheckboxWidget.js +62 -0
- package/lib/components/widgets/CheckboxesWidget.js +93 -0
- package/lib/components/widgets/ColorWidget.js +31 -0
- package/lib/components/widgets/DateTimeWidget.js +28 -0
- package/lib/components/widgets/DateWidget.js +25 -0
- package/lib/components/widgets/EmailWidget.js +20 -0
- package/lib/components/widgets/FileWidget.js +184 -0
- package/lib/components/widgets/HiddenWidget.js +22 -0
- package/lib/components/widgets/PasswordWidget.js +20 -0
- package/lib/components/widgets/RadioWidget.js +79 -0
- package/lib/components/widgets/RangeWidget.js +27 -0
- package/lib/components/widgets/SelectWidget.js +130 -0
- package/lib/components/widgets/TextWidget.js +17 -0
- package/lib/components/widgets/TextareaWidget.js +67 -0
- package/lib/components/widgets/URLWidget.js +20 -0
- package/lib/components/widgets/UpDownWidget.js +21 -0
- package/lib/components/widgets/index.js +41 -0
- package/lib/index.js +6 -0
- package/lib/types.js +34 -0
- package/lib/utils.js +1239 -0
- package/lib/validate.js +338 -0
- package/lib/withTheme.js +36 -0
- package/package.json +3 -3
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }
|
|
2
|
+
|
|
3
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
+
|
|
5
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
6
|
+
|
|
7
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
8
|
+
|
|
9
|
+
import React from "react";
|
|
10
|
+
import * as types from "../../types";
|
|
11
|
+
import { getWidget, getUiOptions, optionsList, getDefaultRegistry } from "../../utils";
|
|
12
|
+
|
|
13
|
+
function BooleanField(props) {
|
|
14
|
+
var schema = props.schema,
|
|
15
|
+
name = props.name,
|
|
16
|
+
uiSchema = props.uiSchema,
|
|
17
|
+
idSchema = props.idSchema,
|
|
18
|
+
formData = props.formData,
|
|
19
|
+
_props$registry = props.registry,
|
|
20
|
+
registry = _props$registry === void 0 ? getDefaultRegistry() : _props$registry,
|
|
21
|
+
required = props.required,
|
|
22
|
+
disabled = props.disabled,
|
|
23
|
+
readonly = props.readonly,
|
|
24
|
+
autofocus = props.autofocus,
|
|
25
|
+
onChange = props.onChange,
|
|
26
|
+
onFocus = props.onFocus,
|
|
27
|
+
onBlur = props.onBlur,
|
|
28
|
+
rawErrors = props.rawErrors;
|
|
29
|
+
var title = schema.title;
|
|
30
|
+
var widgets = registry.widgets,
|
|
31
|
+
formContext = registry.formContext,
|
|
32
|
+
fields = registry.fields;
|
|
33
|
+
|
|
34
|
+
var _getUiOptions = getUiOptions(uiSchema),
|
|
35
|
+
_getUiOptions$widget = _getUiOptions.widget,
|
|
36
|
+
widget = _getUiOptions$widget === void 0 ? "checkbox" : _getUiOptions$widget,
|
|
37
|
+
options = _objectWithoutProperties(_getUiOptions, ["widget"]);
|
|
38
|
+
|
|
39
|
+
var Widget = getWidget(schema, widget, widgets);
|
|
40
|
+
var enumOptions;
|
|
41
|
+
|
|
42
|
+
if (Array.isArray(schema.oneOf)) {
|
|
43
|
+
enumOptions = optionsList({
|
|
44
|
+
oneOf: schema.oneOf.map(function (option) {
|
|
45
|
+
return _objectSpread({}, option, {
|
|
46
|
+
title: option.title || (option["const"] === true ? "Yes" : "No")
|
|
47
|
+
});
|
|
48
|
+
})
|
|
49
|
+
});
|
|
50
|
+
} else {
|
|
51
|
+
enumOptions = optionsList({
|
|
52
|
+
"enum": schema["enum"] || [true, false],
|
|
53
|
+
enumNames: schema.enumNames || (schema["enum"] && schema["enum"][0] === false ? ["No", "Yes"] : ["Yes", "No"])
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return React.createElement(Widget, {
|
|
58
|
+
options: _objectSpread({}, options, {
|
|
59
|
+
enumOptions: enumOptions
|
|
60
|
+
}),
|
|
61
|
+
schema: schema,
|
|
62
|
+
uiSchema: uiSchema,
|
|
63
|
+
id: idSchema && idSchema.$id,
|
|
64
|
+
onChange: onChange,
|
|
65
|
+
onFocus: onFocus,
|
|
66
|
+
onBlur: onBlur,
|
|
67
|
+
label: title === undefined ? name : title,
|
|
68
|
+
value: formData,
|
|
69
|
+
required: required,
|
|
70
|
+
disabled: disabled,
|
|
71
|
+
readonly: readonly,
|
|
72
|
+
registry: registry,
|
|
73
|
+
formContext: formContext,
|
|
74
|
+
autofocus: autofocus,
|
|
75
|
+
rawErrors: rawErrors,
|
|
76
|
+
DescriptionField: fields.DescriptionField
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (process.env.NODE_ENV !== "production") {
|
|
81
|
+
BooleanField.propTypes = types.fieldProps;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
BooleanField.defaultProps = {
|
|
85
|
+
uiSchema: {},
|
|
86
|
+
disabled: false,
|
|
87
|
+
readonly: false,
|
|
88
|
+
autofocus: false
|
|
89
|
+
};
|
|
90
|
+
export default BooleanField;
|
|
91
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ZpZWxkcy9Cb29sZWFuRmllbGQuanMiXSwibmFtZXMiOlsiUmVhY3QiLCJ0eXBlcyIsImdldFdpZGdldCIsImdldFVpT3B0aW9ucyIsIm9wdGlvbnNMaXN0IiwiZ2V0RGVmYXVsdFJlZ2lzdHJ5IiwiQm9vbGVhbkZpZWxkIiwicHJvcHMiLCJzY2hlbWEiLCJuYW1lIiwidWlTY2hlbWEiLCJpZFNjaGVtYSIsImZvcm1EYXRhIiwicmVnaXN0cnkiLCJyZXF1aXJlZCIsImRpc2FibGVkIiwicmVhZG9ubHkiLCJhdXRvZm9jdXMiLCJvbkNoYW5nZSIsIm9uRm9jdXMiLCJvbkJsdXIiLCJyYXdFcnJvcnMiLCJ0aXRsZSIsIndpZGdldHMiLCJmb3JtQ29udGV4dCIsImZpZWxkcyIsIndpZGdldCIsIm9wdGlvbnMiLCJXaWRnZXQiLCJlbnVtT3B0aW9ucyIsIkFycmF5IiwiaXNBcnJheSIsIm9uZU9mIiwibWFwIiwib3B0aW9uIiwiZW51bU5hbWVzIiwiJGlkIiwidW5kZWZpbmVkIiwiRGVzY3JpcHRpb25GaWVsZCIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInByb3BUeXBlcyIsImZpZWxkUHJvcHMiLCJkZWZhdWx0UHJvcHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsT0FBT0EsS0FBUCxNQUFrQixPQUFsQjtBQUNBLE9BQU8sS0FBS0MsS0FBWixNQUF1QixhQUF2QjtBQUVBLFNBQ0VDLFNBREYsRUFFRUMsWUFGRixFQUdFQyxXQUhGLEVBSUVDLGtCQUpGLFFBS08sYUFMUDs7QUFPQSxTQUFTQyxZQUFULENBQXNCQyxLQUF0QixFQUE2QjtBQUFBLE1BRXpCQyxNQUZ5QixHQWdCdkJELEtBaEJ1QixDQUV6QkMsTUFGeUI7QUFBQSxNQUd6QkMsSUFIeUIsR0FnQnZCRixLQWhCdUIsQ0FHekJFLElBSHlCO0FBQUEsTUFJekJDLFFBSnlCLEdBZ0J2QkgsS0FoQnVCLENBSXpCRyxRQUp5QjtBQUFBLE1BS3pCQyxR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QUFWLEdBQXNCNUIsSUFBdEIsR0FBNkJhLEtBUnRDO0FBU0UsSUFBQSxLQUFLLEVBQUVWLFFBVFQ7QUFVRSxJQUFBLFFBQVEsRUFBRUUsUUFWWjtBQVdFLElBQUEsUUFBUSxFQUFFQyxRQVhaO0FBWUUsSUFBQSxRQUFRLEVBQUVDLFFBWlo7QUFhRSxJQUFBLFFBQVEsRUFBRUgsUUFiWjtBQWNFLElBQUEsV0FBVyxFQUFFVyxXQWRmO0FBZUUsSUFBQSxTQUFTLEVBQUVQLFNBZmI7QUFnQkUsSUFBQSxTQUFTLEVBQUVJLFNBaEJiO0FBaUJFLElBQUEsZ0JBQWdCLEVBQUVJLE1BQU0sQ0FBQ2E7QUFqQjNCLElBREY7QUFxQkQ7O0FBRUQsSUFBSUMsT0FBTyxDQUFDQyxHQUFSLENBQVlDLFFBQVosS0FBeUIsWUFBN0IsRUFBMkM7QUFDekNuQyxFQUFBQSxZQUFZLENBQUNvQyxTQUFiLEdBQXlCekMsS0FBSyxDQUFDMEMsVUFBL0I7QUFDRDs7QUFFRHJDLFlBQVksQ0FBQ3NDLFlBQWIsR0FBNEI7QUFDMUJsQyxFQUFBQSxRQUFRLEVBQUUsRUFEZ0I7QUFFMUJLLEVBQUFBLFFBQVEsRUFBRSxLQUZnQjtBQUcxQkMsRUFBQUEsUUFBUSxFQUFFLEtBSGdCO0FBSTFCQyxFQUFBQSxTQUFTLEVBQUU7QUFKZSxDQUE1QjtBQU9BLGVBQWVYLFlBQWYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgKiBhcyB0eXBlcyBmcm9tIFwiLi4vLi4vdHlwZXNcIjtcblxuaW1wb3J0IHtcbiAgZ2V0V2lkZ2V0LFxuICBnZXRVaU9wdGlvbnMsXG4gIG9wdGlvbnNMaXN0LFxuICBnZXREZWZhdWx0UmVnaXN0cnksXG59IGZyb20gXCIuLi8uLi91dGlsc1wiO1xuXG5mdW5jdGlvbiBCb29sZWFuRmllbGQocHJvcHMpIHtcbiAgY29uc3Qge1xuICAgIHNjaGVtYSxcbiAgICBuYW1lLFxuICAgIHVpU2NoZW1hLFxuICAgIGlkU2NoZW1hLFxuICAgIGZvcm1EYXRhLFxuICAgIHJlZ2lzdHJ5ID0gZ2V0RGVmYXVsdFJlZ2lzdHJ5KCksXG4gICAgcmVxdWlyZWQsXG4gICAgZGlzYWJsZWQsXG4gICAgcmVhZG9ubHksXG4gICAgYXV0b2ZvY3VzLFxuICAgIG9uQ2hhbmdlLFxuICAgIG9uRm9jdXMsXG4gICAgb25CbHVyLFxuICAgIHJhd0Vycm9ycyxcbiAgfSA9IHByb3BzO1xuICBjb25zdCB7IHRpdGxlIH0gPSBzY2hlbWE7XG4gIGNvbnN0IHsgd2lkZ2V0cywgZm9ybUNvbnRleHQsIGZpZWxkcyB9ID0gcmVnaXN0cnk7XG4gIGNvbnN0IHsgd2lkZ2V0ID0gXCJjaGVja2JveFwiLCAuLi5vcHRpb25zIH0gPSBnZXRVaU9wdGlvbnModWlTY2hlbWEpO1xuICBjb25zdCBXaWRnZXQgPSBnZXRXaWRnZXQoc2NoZW1hLCB3aWRnZXQsIHdpZGdldHMpO1xuXG4gIGxldCBlbnVtT3B0aW9ucztcblxuICBpZiAoQXJyYXkuaXNBcnJheShzY2hlbWEub25lT2YpKSB7XG4gICAgZW51bU9wdGlvbnMgPSBvcHRpb25zTGlzdCh7XG4gICAgICBvbmVPZjogc2NoZW1hLm9uZU9mLm1hcChvcHRpb24gPT4gKHtcbiAgICAgICAgLi4ub3B0aW9uLFxuICAgICAgICB0aXRsZTogb3B0aW9uLnRpdGxlIHx8IChvcHRpb24uY29uc3QgPT09IHRydWUgPyBcIlllc1wiIDogXCJOb1wiKSxcbiAgICAgIH0pKSxcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBlbnVtT3B0aW9ucyA9IG9wdGlvbnNMaXN0KHtcbiAgICAgIGVudW06IHNjaGVtYS5lbnVtIHx8IFt0cnVlLCBmYWxzZV0sXG4gICAgICBlbnVtTmFtZXM6XG4gICAgICAgIHNjaGVtYS5lbnVtTmFtZXMgfHxcbiAgICAgICAgKHNjaGVtYS5lbnVtICYmIHNjaGVtYS5lbnVtWzBdID09PSBmYWxzZVxuICAgICAgICAgID8gW1wiTm9cIiwgXCJZZXNcIl1cbiAgICAgICAgICA6IFtcIlllc1wiLCBcIk5vXCJdKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFdpZGdldFxuICAgICAgb3B0aW9ucz17eyAuLi5vcHRpb25zLCBlbnVtT3B0aW9ucyB9fVxuICAgICAgc2NoZW1hPXtzY2hlbWF9XG4gICAgICB1aVNjaGVtYT17dWlTY2hlbWF9XG4gICAgICBpZD17aWRTY2hlbWEgJiYgaWRTY2hlbWEuJGlkfVxuICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgb25Gb2N1cz17b25Gb2N1c31cbiAgICAgIG9uQmx1cj17b25CbHVyfVxuICAgICAgbGFiZWw9e3RpdGxlID09PSB1bmRlZmluZWQgPyBuYW1lIDogdGl0bGV9XG4gICAgICB2YWx1ZT17Zm9ybURhdGF9XG4gICAgICByZXF1aXJlZD17cmVxdWlyZWR9XG4gICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICByZWFkb25seT17cmVhZG9ubHl9XG4gICAgICByZWdpc3RyeT17cmVnaXN0cnl9XG4gICAgICBmb3JtQ29udGV4dD17Zm9ybUNvbnRleHR9XG4gICAgICBhdXRvZm9jdXM9e2F1dG9mb2N1c31cbiAgICAgIHJhd0Vycm9ycz17cmF3RXJyb3JzfVxuICAgICAgRGVzY3JpcHRpb25GaWVsZD17ZmllbGRzLkRlc2NyaXB0aW9uRmllbGR9XG4gICAgLz5cbiAgKTtcbn1cblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIikge1xuICBCb29sZWFuRmllbGQucHJvcFR5cGVzID0gdHlwZXMuZmllbGRQcm9wcztcbn1cblxuQm9vbGVhbkZpZWxkLmRlZmF1bHRQcm9wcyA9IHtcbiAgdWlTY2hlbWE6IHt9LFxuICBkaXNhYmxlZDogZmFsc2UsXG4gIHJlYWRvbmx5OiBmYWxzZSxcbiAgYXV0b2ZvY3VzOiBmYWxzZSxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEJvb2xlYW5GaWVsZDtcbiJdfQ==
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import PropTypes from "prop-types";
|
|
3
|
+
|
|
4
|
+
function DescriptionField(props) {
|
|
5
|
+
var id = props.id,
|
|
6
|
+
description = props.description;
|
|
7
|
+
|
|
8
|
+
if (!description) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
if (typeof description === "string") {
|
|
13
|
+
return React.createElement("p", {
|
|
14
|
+
id: id,
|
|
15
|
+
className: "field-description"
|
|
16
|
+
}, description);
|
|
17
|
+
} else {
|
|
18
|
+
return React.createElement("div", {
|
|
19
|
+
id: id,
|
|
20
|
+
className: "field-description"
|
|
21
|
+
}, description);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
if (process.env.NODE_ENV !== "production") {
|
|
26
|
+
DescriptionField.propTypes = {
|
|
27
|
+
id: PropTypes.string,
|
|
28
|
+
description: PropTypes.oneOfType([PropTypes.string, PropTypes.element])
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export default DescriptionField;
|
|
33
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ZpZWxkcy9EZXNjcmlwdGlvbkZpZWxkLmpzIl0sIm5hbWVzIjpbIlJlYWN0IiwiUHJvcFR5cGVzIiwiRGVzY3JpcHRpb25GaWVsZCIsInByb3BzIiwiaWQiLCJkZXNjcmlwdGlvbiIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInByb3BUeXBlcyIsInN0cmluZyIsIm9uZU9mVHlwZSIsImVsZW1lbnQiXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLEtBQVAsTUFBa0IsT0FBbEI7QUFDQSxPQUFPQyxTQUFQLE1BQXNCLFlBQXRCOztBQUVBLFNBQVNDLGdCQUFULENBQTBCQyxLQUExQixFQUFpQztBQUFBLE1BQ3ZCQyxFQUR1QixHQUNIRCxLQURHLENBQ3ZCQyxFQUR1QjtBQUFBLE1BQ25CQyxXQURtQixHQUNIRixLQURHLENBQ25CRSxXQURtQjs7QUFFL0IsTUFBSSxDQUFDQSxXQUFMLEVBQWtCO0FBQ2hCLFdBQU8sSUFBUDtBQUNEOztBQUNELE1BQUksT0FBT0EsV0FBUCxLQUF1QixRQUEzQixFQUFxQztBQUNuQyxXQUNFO0FBQUcsTUFBQSxFQUFFLEVBQUVELEVBQVA7QUFBVyxNQUFBLFNBQVMsRUFBQztBQUFyQixPQUNHQyxXQURILENBREY7QUFLRCxHQU5ELE1BTU87QUFDTCxXQUNFO0FBQUssTUFBQSxFQUFFLEVBQUVELEVBQVQ7QUFBYSxNQUFBLFNBQVMsRUFBQztBQUF2QixPQUNHQyxXQURILENBREY7QUFLRDtBQUNGOztBQUVELElBQUlDLE9BQU8sQ0FBQ0MsR0FBUixDQUFZQyxRQUFaLEtBQXlCLFlBQTdCLEVBQTJDO0FBQ3pDTixFQUFBQSxnQkFBZ0IsQ0FBQ08sU0FBakIsR0FBNkI7QUFDM0JMLElBQUFBLEVBQUUsRUFBRUgsU0FBUyxDQUFDUyxNQURhO0FBRTNCTCxJQUFBQSxXQUFXLEVBQUVKLFNBQVMsQ0FBQ1UsU0FBVixDQUFvQixDQUFDVixTQUFTLENBQUNTLE1BQVgsRUFBbUJULFNBQVMsQ0FBQ1csT0FBN0IsQ0FBcEI7QUFGYyxHQUE3QjtBQUlEOztBQUVELGVBQWVWLGdCQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiO1xuXG5mdW5jdGlvbiBEZXNjcmlwdGlvbkZpZWxkKHByb3BzKSB7XG4gIGNvbnN0IHsgaWQsIGRlc2NyaXB0aW9uIH0gPSBwcm9wcztcbiAgaWYgKCFkZXNjcmlwdGlvbikge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGlmICh0eXBlb2YgZGVzY3JpcHRpb24gPT09IFwic3RyaW5nXCIpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPHAgaWQ9e2lkfSBjbGFzc05hbWU9XCJmaWVsZC1kZXNjcmlwdGlvblwiPlxuICAgICAgICB7ZGVzY3JpcHRpb259XG4gICAgICA8L3A+XG4gICAgKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBpZD17aWR9IGNsYXNzTmFtZT1cImZpZWxkLWRlc2NyaXB0aW9uXCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIikge1xuICBEZXNjcmlwdGlvbkZpZWxkLnByb3BUeXBlcyA9IHtcbiAgICBpZDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBkZXNjcmlwdGlvbjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLmVsZW1lbnRdKSxcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgRGVzY3JpcHRpb25GaWVsZDtcbiJdfQ==
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
2
|
+
|
|
3
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
4
|
+
|
|
5
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
6
|
+
|
|
7
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
8
|
+
|
|
9
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
10
|
+
|
|
11
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
12
|
+
|
|
13
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
14
|
+
|
|
15
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
16
|
+
|
|
17
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
18
|
+
|
|
19
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
20
|
+
|
|
21
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
22
|
+
|
|
23
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
24
|
+
|
|
25
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
26
|
+
|
|
27
|
+
import React, { Component } from "react";
|
|
28
|
+
import PropTypes from "prop-types";
|
|
29
|
+
import * as types from "../../types";
|
|
30
|
+
import { getUiOptions, getWidget, guessType, retrieveSchema, getDefaultFormState, getMatchingOption as _getMatchingOption, deepEquals } from "../../utils";
|
|
31
|
+
|
|
32
|
+
var AnyOfField =
|
|
33
|
+
/*#__PURE__*/
|
|
34
|
+
function (_Component) {
|
|
35
|
+
_inherits(AnyOfField, _Component);
|
|
36
|
+
|
|
37
|
+
function AnyOfField(props) {
|
|
38
|
+
var _this;
|
|
39
|
+
|
|
40
|
+
_classCallCheck(this, AnyOfField);
|
|
41
|
+
|
|
42
|
+
_this = _possibleConstructorReturn(this, _getPrototypeOf(AnyOfField).call(this, props));
|
|
43
|
+
|
|
44
|
+
_defineProperty(_assertThisInitialized(_this), "onOptionChange", function (option) {
|
|
45
|
+
var selectedOption = parseInt(option, 10);
|
|
46
|
+
var _this$props = _this.props,
|
|
47
|
+
formData = _this$props.formData,
|
|
48
|
+
onChange = _this$props.onChange,
|
|
49
|
+
options = _this$props.options,
|
|
50
|
+
registry = _this$props.registry;
|
|
51
|
+
var rootSchema = registry.rootSchema;
|
|
52
|
+
var newOption = retrieveSchema(options[selectedOption], rootSchema, formData); // If the new option is of type object and the current data is an object,
|
|
53
|
+
// discard properties added using the old option.
|
|
54
|
+
|
|
55
|
+
var newFormData = undefined;
|
|
56
|
+
|
|
57
|
+
if (guessType(formData) === "object" && (newOption.type === "object" || newOption.properties)) {
|
|
58
|
+
newFormData = Object.assign({}, formData);
|
|
59
|
+
var optionsToDiscard = options.slice();
|
|
60
|
+
optionsToDiscard.splice(selectedOption, 1); // Discard any data added using other options
|
|
61
|
+
|
|
62
|
+
var _iteratorNormalCompletion = true;
|
|
63
|
+
var _didIteratorError = false;
|
|
64
|
+
var _iteratorError = undefined;
|
|
65
|
+
|
|
66
|
+
try {
|
|
67
|
+
for (var _iterator = optionsToDiscard[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
68
|
+
var _option = _step.value;
|
|
69
|
+
|
|
70
|
+
if (_option.properties) {
|
|
71
|
+
for (var key in _option.properties) {
|
|
72
|
+
if (newFormData.hasOwnProperty(key)) {
|
|
73
|
+
delete newFormData[key];
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
} catch (err) {
|
|
79
|
+
_didIteratorError = true;
|
|
80
|
+
_iteratorError = err;
|
|
81
|
+
} finally {
|
|
82
|
+
try {
|
|
83
|
+
if (!_iteratorNormalCompletion && _iterator["return"] != null) {
|
|
84
|
+
_iterator["return"]();
|
|
85
|
+
}
|
|
86
|
+
} finally {
|
|
87
|
+
if (_didIteratorError) {
|
|
88
|
+
throw _iteratorError;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
} // Call getDefaultFormState to make sure defaults are populated on change.
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
onChange(getDefaultFormState(options[selectedOption], newFormData, rootSchema));
|
|
96
|
+
|
|
97
|
+
_this.setState({
|
|
98
|
+
selectedOption: parseInt(option, 10)
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
var _this$props2 = _this.props,
|
|
103
|
+
_formData = _this$props2.formData,
|
|
104
|
+
_options = _this$props2.options;
|
|
105
|
+
_this.state = {
|
|
106
|
+
selectedOption: _this.getMatchingOption(_formData, _options)
|
|
107
|
+
};
|
|
108
|
+
return _this;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
_createClass(AnyOfField, [{
|
|
112
|
+
key: "componentDidUpdate",
|
|
113
|
+
value: function componentDidUpdate(prevProps, prevState) {
|
|
114
|
+
if (!deepEquals(this.props.formData, prevProps.formData) && this.props.idSchema.$id === prevProps.idSchema.$id) {
|
|
115
|
+
var matchingOption = this.getMatchingOption(this.props.formData, this.props.options);
|
|
116
|
+
|
|
117
|
+
if (!prevState || matchingOption === this.state.selectedOption) {
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
this.setState({
|
|
122
|
+
selectedOption: matchingOption
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}, {
|
|
127
|
+
key: "getMatchingOption",
|
|
128
|
+
value: function getMatchingOption(formData, options) {
|
|
129
|
+
var rootSchema = this.props.registry.rootSchema;
|
|
130
|
+
|
|
131
|
+
var option = _getMatchingOption(formData, options, rootSchema);
|
|
132
|
+
|
|
133
|
+
if (option !== 0) {
|
|
134
|
+
return option;
|
|
135
|
+
} // If the form data matches none of the options, use the currently selected
|
|
136
|
+
// option, assuming it's available; otherwise use the first option
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
return this && this.state ? this.state.selectedOption : 0;
|
|
140
|
+
}
|
|
141
|
+
}, {
|
|
142
|
+
key: "render",
|
|
143
|
+
value: function render() {
|
|
144
|
+
var _this$props3 = this.props,
|
|
145
|
+
baseType = _this$props3.baseType,
|
|
146
|
+
disabled = _this$props3.disabled,
|
|
147
|
+
errorSchema = _this$props3.errorSchema,
|
|
148
|
+
formData = _this$props3.formData,
|
|
149
|
+
idPrefix = _this$props3.idPrefix,
|
|
150
|
+
idSchema = _this$props3.idSchema,
|
|
151
|
+
onBlur = _this$props3.onBlur,
|
|
152
|
+
onChange = _this$props3.onChange,
|
|
153
|
+
onFocus = _this$props3.onFocus,
|
|
154
|
+
options = _this$props3.options,
|
|
155
|
+
registry = _this$props3.registry,
|
|
156
|
+
uiSchema = _this$props3.uiSchema,
|
|
157
|
+
schema = _this$props3.schema;
|
|
158
|
+
var _SchemaField = registry.fields.SchemaField;
|
|
159
|
+
var widgets = registry.widgets;
|
|
160
|
+
var selectedOption = this.state.selectedOption;
|
|
161
|
+
|
|
162
|
+
var _getUiOptions = getUiOptions(uiSchema),
|
|
163
|
+
_getUiOptions$widget = _getUiOptions.widget,
|
|
164
|
+
widget = _getUiOptions$widget === void 0 ? "select" : _getUiOptions$widget,
|
|
165
|
+
uiOptions = _objectWithoutProperties(_getUiOptions, ["widget"]);
|
|
166
|
+
|
|
167
|
+
var Widget = getWidget({
|
|
168
|
+
type: "number"
|
|
169
|
+
}, widget, widgets);
|
|
170
|
+
var option = options[selectedOption] || null;
|
|
171
|
+
var optionSchema;
|
|
172
|
+
|
|
173
|
+
if (option) {
|
|
174
|
+
// If the subschema doesn't declare a type, infer the type from the
|
|
175
|
+
// parent schema
|
|
176
|
+
optionSchema = option.type ? option : Object.assign({}, option, {
|
|
177
|
+
type: baseType
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
var enumOptions = options.map(function (option, index) {
|
|
182
|
+
return {
|
|
183
|
+
label: option.title || "Option ".concat(index + 1),
|
|
184
|
+
value: index
|
|
185
|
+
};
|
|
186
|
+
});
|
|
187
|
+
return React.createElement("div", {
|
|
188
|
+
className: "panel panel-default panel-body"
|
|
189
|
+
}, React.createElement("div", {
|
|
190
|
+
className: "form-group"
|
|
191
|
+
}, React.createElement(Widget, _extends({
|
|
192
|
+
id: "".concat(idSchema.$id).concat(schema.oneOf ? "__oneof_select" : "__anyof_select"),
|
|
193
|
+
schema: {
|
|
194
|
+
type: "number",
|
|
195
|
+
"default": 0
|
|
196
|
+
},
|
|
197
|
+
onChange: this.onOptionChange,
|
|
198
|
+
onBlur: onBlur,
|
|
199
|
+
onFocus: onFocus,
|
|
200
|
+
value: selectedOption,
|
|
201
|
+
options: {
|
|
202
|
+
enumOptions: enumOptions
|
|
203
|
+
}
|
|
204
|
+
}, uiOptions))), option !== null && React.createElement(_SchemaField, {
|
|
205
|
+
schema: optionSchema,
|
|
206
|
+
uiSchema: uiSchema,
|
|
207
|
+
errorSchema: errorSchema,
|
|
208
|
+
idSchema: idSchema,
|
|
209
|
+
idPrefix: idPrefix,
|
|
210
|
+
formData: formData,
|
|
211
|
+
onChange: onChange,
|
|
212
|
+
onBlur: onBlur,
|
|
213
|
+
onFocus: onFocus,
|
|
214
|
+
registry: registry,
|
|
215
|
+
disabled: disabled
|
|
216
|
+
}));
|
|
217
|
+
}
|
|
218
|
+
}]);
|
|
219
|
+
|
|
220
|
+
return AnyOfField;
|
|
221
|
+
}(Component);
|
|
222
|
+
|
|
223
|
+
AnyOfField.defaultProps = {
|
|
224
|
+
disabled: false,
|
|
225
|
+
errorSchema: {},
|
|
226
|
+
idSchema: {},
|
|
227
|
+
uiSchema: {}
|
|
228
|
+
};
|
|
229
|
+
|
|
230
|
+
if (process.env.NODE_ENV !== "production") {
|
|
231
|
+
AnyOfField.propTypes = {
|
|
232
|
+
options: PropTypes.arrayOf(PropTypes.object).isRequired,
|
|
233
|
+
baseType: PropTypes.string,
|
|
234
|
+
uiSchema: PropTypes.object,
|
|
235
|
+
idSchema: PropTypes.object,
|
|
236
|
+
formData: PropTypes.any,
|
|
237
|
+
errorSchema: PropTypes.object,
|
|
238
|
+
registry: types.registry.isRequired
|
|
239
|
+
};
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
export default AnyOfField;
|
|
243
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ZpZWxkcy9NdWx0aVNjaGVtYUZpZWxkLmpzIl0sIm5hbWVzIjpbIlJlYWN0IiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwidHlwZXMiLCJnZXRVaU9wdGlvbnMiLCJnZXRXaWRnZXQiLCJndWVzc1R5cGUiLCJyZXRyaWV2ZVNjaGVtYSIsImdldERlZmF1bHRGb3JtU3RhdGUiLCJnZXRNYXRjaGluZ09wdGlvbiIsImRlZXBFcXVhbHMiLCJBbnlPZkZpZWxkIiwicHJvcHMiLCJvcHRpb24iLCJzZWxlY3RlZE9wdGlvbiIsInBhcnNlSW50IiwiZm9ybURhdGEiLCJvbkNoYW5nZSIsIm9wdGlvbnMiLCJyZWdpc3RyeSIsInJvb3RTY2hlbWEiLCJuZXdPcHRpb24iLCJuZXdGb3JtRGF0YSIsInVuZGVmaW5lZCIsInR5cGUiLCJwcm9wZXJ0aWVzIiwiT2JqZWN0IiwiYXNzaWduIiwib3B0aW9uc1RvRGlzY2FyZCIsInNsaWNlIiwic3BsaWNlIiwia2V5IiwiaGFzT3duUHJvcGVydHkiLCJzZXRTdGF0ZSIsInN0YXRlIiwicHJldlByb3BzIiwicHJldlN0YXRlIiwiaWRTY2hlbWEiLCIkaWQiLCJtYXRjaGluZ09wdGlvbiIsImJhc2VUeXBlIiwiZGlzYWJsZWQiLCJlcnJvclNjaGVtYSIsImlkUHJlZml4Iiwib25CbHVyIiwib25Gb2N1cyIsInVpU2NoZW1hIiwic2NoZW1hIiwiX1NjaGVtYUZpZWxkIiwiZmllbGRzIiwiU2NoZW1hRmllbGQiLCJ3aWRnZXRzIiwid2lkZ2V0IiwidWlPcHRpb25zIiwiV2lkZ2V0Iiwib3B0aW9uU2NoZW1hIiwiZW51bU9wdGlvbnMiLCJtYXAiLCJpbmRleCIsImxhYmVsIiwidGl0bGUiLCJ2YWx1ZSIsIm9uZU9mIiwib25PcHRpb25DaGFuZ2UiLCJkZWZhdWx0UHJvcHMiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJwcm9wVHlwZXMiLCJhcnJheU9mIiwib2JqZWN0IiwiaXNSZXF1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Ozs7O0VBL0pzQnhDLFM7O0FBa0t6QlUsVUFBVSxDQUFDcUQsWUFBWCxHQUEwQjtBQUN4QnZCLEVBQUFBLFFBQVEsRUFBRSxLQURjO0FBRXhCQyxFQUFBQSxXQUFXLEVBQUUsRUFGVztBQUd4QkwsRUFBQUEsUUFBUSxFQUFFLEVBSGM7QUFJeEJTLEVBQUFBLFFBQVEsRUFBRTtBQUpjLENBQTFCOztBQU9BLElBQUltQixPQUFPLENBQUNDLEdBQVIsQ0FBWUMsUUFBWixLQUF5QixZQUE3QixFQUEyQztBQUN6Q3hELEVBQUFBLFVBQVUsQ0FBQ3lELFNBQVgsR0FBdUI7QUFDckJsRCxJQUFBQSxPQUFPLEVBQUVoQixTQUFTLENBQUNtRSxPQUFWLENBQWtCbkUsU0FBUyxDQUFDb0UsTUFBNUIsRUFBb0NDLFVBRHhCO0FBRXJCL0IsSUFBQUEsUUFBUSxFQUFFdEMsU0FBUyxDQUFDc0UsTUFGQztBQUdyQjFCLElBQUFBLFFBQVEsRUFBRTVDLFNBQVMsQ0FBQ29FLE1BSEM7QUFJckJqQyxJQUFBQSxRQUFRLEVBQUVuQyxTQUFTLENBQUNvRSxNQUpDO0FBS3JCdEQsSUFBQUEsUUFBUSxFQUFFZCxTQUFTLENBQUN1RSxHQUxDO0FBTXJCL0IsSUFBQUEsV0FBVyxFQUFFeEMsU0FBUyxDQUFDb0UsTUFORjtBQU9yQm5ELElBQUFBLFFBQVEsRUFBRWhCLEtBQUssQ0FBQ2dCLFFBQU4sQ0FBZW9EO0FBUEosR0FBdkI7QUFTRDs7QUFFRCxlQUFlNUQsVUFBZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIjtcbmltcG9ydCAqIGFzIHR5cGVzIGZyb20gXCIuLi8uLi90eXBlc1wiO1xuaW1wb3J0IHtcbiAgZ2V0VWlPcHRpb25zLFxuICBnZXRXaWRnZXQsXG4gIGd1ZXNzVHlwZSxcbiAgcmV0cmlldmVTY2hlbWEsXG4gIGdldERlZmF1bHRGb3JtU3RhdGUsXG4gIGdldE1hdGNoaW5nT3B0aW9uLFxuICBkZWVwRXF1YWxzLFxufSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcblxuY2xhc3MgQW55T2ZGaWVsZCBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuXG4gICAgY29uc3QgeyBmb3JtRGF0YSwgb3B0aW9ucyB9ID0gdGhpcy5wcm9wcztcblxuICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICBzZWxlY3RlZE9wdGlvbjogdGhpcy5nZXRNYXRjaGluZ09wdGlvbihmb3JtRGF0YSwgb3B0aW9ucyksXG4gICAgfTtcbiAgfVxuXG4gIGNvbXBvbmVudERpZFVwZGF0ZShwcmV2UHJvcHMsIHByZXZTdGF0ZSkge1xuICAgIGlmIChcbiAgICAgICFkZWVwRXF1YWxzKHRoaXMucHJvcHMuZm9ybURhdGEsIHByZXZQcm9wcy5mb3JtRGF0YSkgJiZcbiAgICAgIHRoaXMucHJvcHMuaWRTY2hlbWEuJGlkID09PSBwcmV2UHJvcHMuaWRTY2hlbWEuJGlkXG4gICAgKSB7XG4gICAgICBjb25zdCBtYXRjaGluZ09wdGlvbiA9IHRoaXMuZ2V0TWF0Y2hpbmdPcHRpb24oXG4gICAgICAgIHRoaXMucHJvcHMuZm9ybURhdGEsXG4gICAgICAgIHRoaXMucHJvcHMub3B0aW9uc1xuICAgICAgKTtcblxuICAgICAgaWYgKCFwcmV2U3RhdGUgfHwgbWF0Y2hpbmdPcHRpb24gPT09IHRoaXMuc3RhdGUuc2VsZWN0ZWRPcHRpb24pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgc2VsZWN0ZWRPcHRpb246IG1hdGNoaW5nT3B0aW9uLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0TWF0Y2hpbmdPcHRpb24oZm9ybURhdGEsIG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IHJvb3RTY2hlbWEgfSA9IHRoaXMucHJvcHMucmVnaXN0cnk7XG5cbiAgICBsZXQgb3B0aW9uID0gZ2V0TWF0Y2hpbmdPcHRpb24oZm9ybURhdGEsIG9wdGlvbnMsIHJvb3RTY2hlbWEpO1xuICAgIGlmIChvcHRpb24gIT09IDApIHtcbiAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICAgIC8vIElmIHRoZSBmb3JtIGRhdGEgbWF0Y2hlcyBub25lIG9mIHRoZSBvcHRpb25zLCB1c2UgdGhlIGN1cnJlbnRseSBzZWxlY3RlZFxuICAgIC8vIG9wdGlvbiwgYXNzdW1pbmcgaXQncyBhdmFpbGFibGU7IG90aGVyd2lzZSB1c2UgdGhlIGZpcnN0IG9wdGlvblxuICAgIHJldHVybiB0aGlzICYmIHRoaXMuc3RhdGUgPyB0aGlzLnN0YXRlLnNlbGVjdGVkT3B0aW9uIDogMDtcbiAgfVxuXG4gIG9uT3B0aW9uQ2hhbmdlID0gb3B0aW9uID0+IHtcbiAgICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IHBhcnNlSW50KG9wdGlvbiwgMTApO1xuICAgIGNvbnN0IHsgZm9ybURhdGEsIG9uQ2hhbmdlLCBvcHRpb25zLCByZWdpc3RyeSB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCB7IHJvb3RTY2hlbWEgfSA9IHJlZ2lzdHJ5O1xuICAgIGNvbnN0IG5ld09wdGlvbiA9IHJldHJpZXZlU2NoZW1hKFxuICAgICAgb3B0aW9uc1tzZWxlY3RlZE9wdGlvbl0sXG4gICAgICByb290U2NoZW1hLFxuICAgICAgZm9ybURhdGFcbiAgICApO1xuXG4gICAgLy8gSWYgdGhlIG5ldyBvcHRpb24gaXMgb2YgdHlwZSBvYmplY3QgYW5kIHRoZSBjdXJyZW50IGRhdGEgaXMgYW4gb2JqZWN0LFxuICAgIC8vIGRpc2NhcmQgcHJvcGVydGllcyBhZGRlZCB1c2luZyB0aGUgb2xkIG9wdGlvbi5cbiAgICBsZXQgbmV3Rm9ybURhdGEgPSB1bmRlZmluZWQ7XG4gICAgaWYgKFxuICAgICAgZ3Vlc3NUeXBlKGZvcm1EYXRhKSA9PT0gXCJvYmplY3RcIiAmJlxuICAgICAgKG5ld09wdGlvbi50eXBlID09PSBcIm9iamVjdFwiIHx8IG5ld09wdGlvbi5wcm9wZXJ0aWVzKVxuICAgICkge1xuICAgICAgbmV3Rm9ybURhdGEgPSBPYmplY3QuYXNzaWduKHt9LCBmb3JtRGF0YSk7XG5cbiAgICAgIGNvbnN0IG9wdGlvbnNUb0Rpc2NhcmQgPSBvcHRpb25zLnNsaWNlKCk7XG4gICAgICBvcHRpb25zVG9EaXNjYXJkLnNwbGljZShzZWxlY3RlZE9wdGlvbiwgMSk7XG5cbiAgICAgIC8vIERpc2NhcmQgYW55IGRhdGEgYWRkZWQgdXNpbmcgb3RoZXIgb3B0aW9uc1xuICAgICAgZm9yIChjb25zdCBvcHRpb24gb2Ygb3B0aW9uc1RvRGlzY2FyZCkge1xuICAgICAgICBpZiAob3B0aW9uLnByb3BlcnRpZXMpIHtcbiAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBvcHRpb24ucHJvcGVydGllcykge1xuICAgICAgICAgICAgaWYgKG5ld0Zvcm1EYXRhLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICAgICAgICAgICAgZGVsZXRlIG5ld0Zvcm1EYXRhW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIENhbGwgZ2V0RGVmYXVsdEZvcm1TdGF0ZSB0byBtYWtlIHN1cmUgZGVmYXVsdHMgYXJlIHBvcHVsYXRlZCBvbiBjaGFuZ2UuXG4gICAgb25DaGFuZ2UoXG4gICAgICBnZXREZWZhdWx0Rm9ybVN0YXRlKG9wdGlvbnNbc2VsZWN0ZWRPcHRpb25dLCBuZXdGb3JtRGF0YSwgcm9vdFNjaGVtYSlcbiAgICApO1xuXG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICBzZWxlY3RlZE9wdGlvbjogcGFyc2VJbnQob3B0aW9uLCAxMCksXG4gICAgfSk7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtcbiAgICAgIGJhc2VUeXBlLFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBlcnJvclNjaGVtYSxcbiAgICAgIGZvcm1EYXRhLFxuICAgICAgaWRQcmVmaXgsXG4gICAgICBpZFNjaGVtYSxcbiAgICAgIG9uQmx1cixcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgb25Gb2N1cyxcbiAgICAgIG9wdGlvbnMsXG4gICAgICByZWdpc3RyeSxcbiAgICAgIHVpU2NoZW1hLFxuICAgICAgc2NoZW1hLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3QgX1NjaGVtYUZpZWxkID0gcmVnaXN0cnkuZmllbGRzLlNjaGVtYUZpZWxkO1xuICAgIGNvbnN0IHsgd2lkZ2V0cyB9ID0gcmVnaXN0cnk7XG4gICAgY29uc3QgeyBzZWxlY3RlZE9wdGlvbiB9ID0gdGhpcy5zdGF0ZTtcbiAgICBjb25zdCB7IHdpZGdldCA9IFwic2VsZWN0XCIsIC4uLnVpT3B0aW9ucyB9ID0gZ2V0VWlPcHRpb25zKHVpU2NoZW1hKTtcbiAgICBjb25zdCBXaWRnZXQgPSBnZXRXaWRnZXQoeyB0eXBlOiBcIm51bWJlclwiIH0sIHdpZGdldCwgd2lkZ2V0cyk7XG5cbiAgICBjb25zdCBvcHRpb24gPSBvcHRpb25zW3NlbGVjdGVkT3B0aW9uXSB8fCBudWxsO1xuICAgIGxldCBvcHRpb25TY2hlbWE7XG5cbiAgICBpZiAob3B0aW9uKSB7XG4gICAgICAvLyBJZiB0aGUgc3Vic2NoZW1hIGRvZXNuJ3QgZGVjbGFyZSBhIHR5cGUsIGluZmVyIHRoZSB0eXBlIGZyb20gdGhlXG4gICAgICAvLyBwYXJlbnQgc2NoZW1hXG4gICAgICBvcHRpb25TY2hlbWEgPSBvcHRpb24udHlwZVxuICAgICAgICA/IG9wdGlvblxuICAgICAgICA6IE9iamVjdC5hc3NpZ24oe30sIG9wdGlvbiwgeyB0eXBlOiBiYXNlVHlwZSB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBlbnVtT3B0aW9ucyA9IG9wdGlvbnMubWFwKChvcHRpb24sIGluZGV4KSA9PiAoe1xuICAgICAgbGFiZWw6IG9wdGlvbi50aXRsZSB8fCBgT3B0aW9uICR7aW5kZXggKyAxfWAsXG4gICAgICB2YWx1ZTogaW5kZXgsXG4gICAgfSkpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwicGFuZWwgcGFuZWwtZGVmYXVsdCBwYW5lbC1ib2R5XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZm9ybS1ncm91cFwiPlxuICAgICAgICAgIDxXaWRnZXRcbiAgICAgICAgICAgIGlkPXtgJHtpZFNjaGVtYS4kaWR9JHtcbiAgICAgICAgICAgICAgc2NoZW1hLm9uZU9mID8gXCJfX29uZW9mX3NlbGVjdFwiIDogXCJfX2FueW9mX3NlbGVjdFwiXG4gICAgICAgICAgICB9YH1cbiAgICAgICAgICAgIHNjaGVtYT17eyB0eXBlOiBcIm51bWJlclwiLCBkZWZhdWx0OiAwIH19XG4gICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5vbk9wdGlvbkNoYW5nZX1cbiAgICAgICAgICAgIG9uQmx1cj17b25CbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17b25Gb2N1c31cbiAgICAgICAgICAgIHZhbHVlPXtzZWxlY3RlZE9wdGlvbn1cbiAgICAgICAgICAgIG9wdGlvbnM9e3sgZW51bU9wdGlvbnMgfX1cbiAgICAgICAgICAgIHsuLi51aU9wdGlvbnN9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAge29wdGlvbiAhPT0gbnVsbCAmJiAoXG4gICAgICAgICAgPF9TY2hlbWFGaWVsZFxuICAgICAgICAgICAgc2NoZW1hPXtvcHRpb25TY2hlbWF9XG4gICAgICAgICAgICB1aVNjaGVtYT17dWlTY2hlbWF9XG4gICAgICAgICAgICBlcnJvclNjaGVtYT17ZXJyb3JTY2hlbWF9XG4gICAgICAgICAgICBpZFNjaGVtYT17aWRTY2hlbWF9XG4gICAgICAgICAgICBpZFByZWZpeD17aWRQcmVmaXh9XG4gICAgICAgICAgICBmb3JtRGF0YT17Zm9ybURhdGF9XG4gICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgICBvbkJsdXI9e29uQmx1cn1cbiAgICAgICAgICAgIG9uRm9jdXM9e29uRm9jdXN9XG4gICAgICAgICAgICByZWdpc3RyeT17cmVnaXN0cnl9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuQW55T2ZGaWVsZC5kZWZhdWx0UHJvcHMgPSB7XG4gIGRpc2FibGVkOiBmYWxzZSxcbiAgZXJyb3JTY2hlbWE6IHt9LFxuICBpZFNjaGVtYToge30sXG4gIHVpU2NoZW1hOiB7fSxcbn07XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgQW55T2ZGaWVsZC5wcm9wVHlwZXMgPSB7XG4gICAgb3B0aW9uczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLm9iamVjdCkuaXNSZXF1aXJlZCxcbiAgICBiYXNlVHlwZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICB1aVNjaGVtYTogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBpZFNjaGVtYTogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBmb3JtRGF0YTogUHJvcFR5cGVzLmFueSxcbiAgICBlcnJvclNjaGVtYTogUHJvcFR5cGVzLm9iamVjdCxcbiAgICByZWdpc3RyeTogdHlwZXMucmVnaXN0cnkuaXNSZXF1aXJlZCxcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgQW55T2ZGaWVsZDtcbiJdfQ==
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
2
|
+
|
|
3
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
4
|
+
|
|
5
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
6
|
+
|
|
7
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
8
|
+
|
|
9
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
10
|
+
|
|
11
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
12
|
+
|
|
13
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
14
|
+
|
|
15
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
16
|
+
|
|
17
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
18
|
+
|
|
19
|
+
import { Component } from "react";
|
|
20
|
+
import * as types from "../../types";
|
|
21
|
+
|
|
22
|
+
var NullField =
|
|
23
|
+
/*#__PURE__*/
|
|
24
|
+
function (_Component) {
|
|
25
|
+
_inherits(NullField, _Component);
|
|
26
|
+
|
|
27
|
+
function NullField() {
|
|
28
|
+
_classCallCheck(this, NullField);
|
|
29
|
+
|
|
30
|
+
return _possibleConstructorReturn(this, _getPrototypeOf(NullField).apply(this, arguments));
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
_createClass(NullField, [{
|
|
34
|
+
key: "componentDidMount",
|
|
35
|
+
value: function componentDidMount() {
|
|
36
|
+
if (this.props.formData === undefined) {
|
|
37
|
+
this.props.onChange(null);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}, {
|
|
41
|
+
key: "render",
|
|
42
|
+
value: function render() {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
}]);
|
|
46
|
+
|
|
47
|
+
return NullField;
|
|
48
|
+
}(Component);
|
|
49
|
+
|
|
50
|
+
if (process.env.NODE_ENV !== "production") {
|
|
51
|
+
NullField.propTypes = types.fieldProps;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export default NullField;
|
|
55
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ZpZWxkcy9OdWxsRmllbGQuanMiXSwibmFtZXMiOlsiQ29tcG9uZW50IiwidHlwZXMiLCJOdWxsRmllbGQiLCJwcm9wcyIsImZvcm1EYXRhIiwidW5kZWZpbmVkIiwib25DaGFuZ2UiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJwcm9wVHlwZXMiLCJmaWVsZFByb3BzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxTQUFTQSxTQUFULFFBQTBCLE9BQTFCO0FBQ0EsT0FBTyxLQUFLQyxLQUFaLE1BQXVCLGFBQXZCOztJQUVNQyxTOzs7Ozs7Ozs7Ozs7O3dDQUNnQjtBQUNsQixVQUFJLEtBQUtDLEtBQUwsQ0FBV0MsUUFBWCxLQUF3QkMsU0FBNUIsRUFBdUM7QUFDckMsYUFBS0YsS0FBTCxDQUFXRyxRQUFYLENBQW9CLElBQXBCO0FBQ0Q7QUFDRjs7OzZCQUVRO0FBQ1AsYUFBTyxJQUFQO0FBQ0Q7Ozs7RUFUcUJOLFM7O0FBWXhCLElBQUlPLE9BQU8sQ0FBQ0MsR0FBUixDQUFZQyxRQUFaLEtBQXlCLFlBQTdCLEVBQTJDO0FBQ3pDUCxFQUFBQSxTQUFTLENBQUNRLFNBQVYsR0FBc0JULEtBQUssQ0FBQ1UsVUFBNUI7QUFDRDs7QUFFRCxlQUFlVCxTQUFmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgKiBhcyB0eXBlcyBmcm9tIFwiLi4vLi4vdHlwZXNcIjtcblxuY2xhc3MgTnVsbEZpZWxkIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XG4gICAgaWYgKHRoaXMucHJvcHMuZm9ybURhdGEgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5wcm9wcy5vbkNoYW5nZShudWxsKTtcbiAgICB9XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIikge1xuICBOdWxsRmllbGQucHJvcFR5cGVzID0gdHlwZXMuZmllbGRQcm9wcztcbn1cblxuZXhwb3J0IGRlZmF1bHQgTnVsbEZpZWxkO1xuIl19
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
2
|
+
|
|
3
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
4
|
+
|
|
5
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
6
|
+
|
|
7
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
8
|
+
|
|
9
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
10
|
+
|
|
11
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
12
|
+
|
|
13
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
14
|
+
|
|
15
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
|
|
16
|
+
|
|
17
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
18
|
+
|
|
19
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
20
|
+
|
|
21
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
22
|
+
|
|
23
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
24
|
+
|
|
25
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
26
|
+
|
|
27
|
+
import React from "react";
|
|
28
|
+
import * as types from "../../types";
|
|
29
|
+
import { asNumber } from "../../utils"; // Matches a string that ends in a . character, optionally followed by a sequence of
|
|
30
|
+
// digits followed by any number of 0 characters up until the end of the line.
|
|
31
|
+
// Ensuring that there is at least one prefixed character is important so that
|
|
32
|
+
// you don't incorrectly match against "0".
|
|
33
|
+
|
|
34
|
+
var trailingCharMatcherWithPrefix = /\.([0-9]*0)*$/; // This is used for trimming the trailing 0 and . characters without affecting
|
|
35
|
+
// the rest of the string. Its possible to use one RegEx with groups for this
|
|
36
|
+
// functionality, but it is fairly complex compared to simply defining two
|
|
37
|
+
// different matchers.
|
|
38
|
+
|
|
39
|
+
var trailingCharMatcher = /[0.]0*$/;
|
|
40
|
+
/**
|
|
41
|
+
* The NumberField class has some special handling for dealing with trailing
|
|
42
|
+
* decimal points and/or zeroes. This logic is designed to allow trailing values
|
|
43
|
+
* to be visible in the input element, but not be represented in the
|
|
44
|
+
* corresponding form data.
|
|
45
|
+
*
|
|
46
|
+
* The algorithm is as follows:
|
|
47
|
+
*
|
|
48
|
+
* 1. When the input value changes the value is cached in the component state
|
|
49
|
+
*
|
|
50
|
+
* 2. The value is then normalized, removing trailing decimal points and zeros,
|
|
51
|
+
* then passed to the "onChange" callback
|
|
52
|
+
*
|
|
53
|
+
* 3. When the component is rendered, the formData value is checked against the
|
|
54
|
+
* value cached in the state. If it matches the cached value, the cached
|
|
55
|
+
* value is passed to the input instead of the formData value
|
|
56
|
+
*/
|
|
57
|
+
|
|
58
|
+
var NumberField =
|
|
59
|
+
/*#__PURE__*/
|
|
60
|
+
function (_React$Component) {
|
|
61
|
+
_inherits(NumberField, _React$Component);
|
|
62
|
+
|
|
63
|
+
function NumberField(props) {
|
|
64
|
+
var _this;
|
|
65
|
+
|
|
66
|
+
_classCallCheck(this, NumberField);
|
|
67
|
+
|
|
68
|
+
_this = _possibleConstructorReturn(this, _getPrototypeOf(NumberField).call(this, props));
|
|
69
|
+
|
|
70
|
+
_defineProperty(_assertThisInitialized(_this), "handleChange", function (value) {
|
|
71
|
+
// Cache the original value in component state
|
|
72
|
+
_this.setState({
|
|
73
|
+
lastValue: value
|
|
74
|
+
}); // Normalize decimals that don't start with a zero character in advance so
|
|
75
|
+
// that the rest of the normalization logic is simpler
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
if ("".concat(value).charAt(0) === ".") {
|
|
79
|
+
value = "0".concat(value);
|
|
80
|
+
} // Check that the value is a string (this can happen if the widget used is a
|
|
81
|
+
// <select>, due to an enum declaration etc) then, if the value ends in a
|
|
82
|
+
// trailing decimal point or multiple zeroes, strip the trailing values
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
var processed = typeof value === "string" && value.match(trailingCharMatcherWithPrefix) ? asNumber(value.replace(trailingCharMatcher, "")) : asNumber(value);
|
|
86
|
+
|
|
87
|
+
_this.props.onChange(processed);
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
_this.state = {
|
|
91
|
+
lastValue: props.value
|
|
92
|
+
};
|
|
93
|
+
return _this;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
_createClass(NumberField, [{
|
|
97
|
+
key: "render",
|
|
98
|
+
value: function render() {
|
|
99
|
+
var StringField = this.props.registry.fields.StringField;
|
|
100
|
+
|
|
101
|
+
var _this$props = this.props,
|
|
102
|
+
formData = _this$props.formData,
|
|
103
|
+
props = _objectWithoutProperties(_this$props, ["formData"]);
|
|
104
|
+
|
|
105
|
+
var lastValue = this.state.lastValue;
|
|
106
|
+
var value = formData;
|
|
107
|
+
|
|
108
|
+
if (typeof lastValue === "string" && typeof value === "number") {
|
|
109
|
+
// Construct a regular expression that checks for a string that consists
|
|
110
|
+
// of the formData value suffixed with zero or one '.' characters and zero
|
|
111
|
+
// or more '0' characters
|
|
112
|
+
var re = new RegExp("".concat(value).replace(".", "\\.") + "\\.?0*$"); // If the cached "lastValue" is a match, use that instead of the formData
|
|
113
|
+
// value to prevent the input value from changing in the UI
|
|
114
|
+
|
|
115
|
+
if (lastValue.match(re)) {
|
|
116
|
+
value = lastValue;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
return React.createElement(StringField, _extends({}, props, {
|
|
121
|
+
formData: value,
|
|
122
|
+
onChange: this.handleChange
|
|
123
|
+
}));
|
|
124
|
+
}
|
|
125
|
+
}]);
|
|
126
|
+
|
|
127
|
+
return NumberField;
|
|
128
|
+
}(React.Component);
|
|
129
|
+
|
|
130
|
+
if (process.env.NODE_ENV !== "production") {
|
|
131
|
+
NumberField.propTypes = types.fieldProps;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
NumberField.defaultProps = {
|
|
135
|
+
uiSchema: {}
|
|
136
|
+
};
|
|
137
|
+
export default NumberField;
|
|
138
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ZpZWxkcy9OdW1iZXJGaWVsZC5qcyJdLCJuYW1lcyI6WyJSZWFjdCIsInR5cGVzIiwiYXNOdW1iZXIiLCJ0cmFpbGluZ0NoYXJNYXRjaGVyV2l0aFByZWZpeCIsInRyYWlsaW5nQ2hhck1hdGNoZXIiLCJOdW1iZXJGaWVsZCIsInByb3BzIiwidmFsdWUiLCJzZXRTdGF0ZSIsImxhc3RWYWx1ZSIsImNoYXJBdCIsInByb2Nlc3NlZCIsIm1hdGNoIiwicmVwbGFjZSIsIm9uQ2hhbmdlIiwic3RhdGUiLCJTdHJpbmdGaWVsZCIsInJlZ2lzdHJ5IiwiZmllbGRzIiwiZm9ybURhdGEiLCJyZSIsIlJlZ0V4cCIsImhhbmRsZUNoYW5nZSIsIkNvbXBvbmVudCIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInByb3BUeXBlcyIsImZpZWxkUHJvcHMiLCJkZWZhdWx0UHJvcHMiLCJ1aVNjaGVtYSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFQLE1BQWtCLE9BQWxCO0FBRUEsT0FBTyxLQUFLQyxLQUFaLE1BQXVCLGFBQXZCO0FBQ0EsU0FBU0MsUUFBVCxRQUF5QixhQUF6QixDLENBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBQ0EsSUFBTUMsNkJBQTZCLEdBQUcsZUFBdEMsQyxDQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUNBLElBQU1DLG1CQUFtQixHQUFHLFNBQTVCO0FBRUE7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQWlCTUMsVzs7Ozs7QUFDSix1QkFBWUMsS0FBWixFQUFtQjtBQUFBOztBQUFBOztBQUNqQixxRkFBTUEsS0FBTjs7QUFEaUIsbUVBUUosVUFBQUMsS0FBSyxFQUFJO0FBQ3RCO0FBQ0EsWUFBS0MsUUFBTCxDQUFjO0FBQUVDLFFBQUFBLFNBQVMsRUFBRUY7QUFBYixPQUFkLEVBRnNCLENBSXRCO0FBQ0E7OztBQUNBLFVBQUksVUFBR0EsS0FBSCxFQUFXRyxNQUFYLENBQWtCLENBQWxCLE1BQXlCLEdBQTdCLEVBQWtDO0FBQ2hDSCxRQUFBQSxLQUFLLGNBQU9BLEtBQVAsQ0FBTDtBQUNELE9BUnFCLENBVXRCO0FBQ0E7QUFDQTs7O0FBQ0EsVUFBSUksU0FBUyxHQUNYLE9BQU9KLEtBQVAsS0FBaUIsUUFBakIsSUFBNkJBLEtBQUssQ0FBQ0ssS0FBTixDQUFZVCw2QkFBWixDQUE3QixHQUNJRCxRQUFRLENBQUNLLEtBQUssQ0FBQ00sT0FBTixDQUFjVCxtQkFBZCxFQUFtQyxFQUFuQyxDQUFELENBRFosR0FFSUYsUUFBUSxDQUFDSyxLQUFELENBSGQ7O0FBS0EsWUFBS0QsS0FBTCxDQUFXUSxRQUFYLENBQW9CSCxTQUFwQjtBQUNELEtBM0JrQjs7QUFHakIsVUFBS0ksS0FBTCxHQUFhO0FBQ1hOLE1BQUFBLFNBQVMsRUFBRUgsS0FBSyxDQUFDQztBQUROLEtBQWI7QUFIaUI7QUFNbEI7Ozs7NkJBdUJRO0FBQUEsVUFDQ1MsV0FERCxHQUNpQixLQUFLVixLQUFMLENBQVdXLFFBQVgsQ0FBb0JDLE1BRHJDLENBQ0NGLFdBREQ7O0FBQUEsd0JBRXdCLEtBQUtWLEtBRjdCO0FBQUEsVUFFQ2EsUUFGRCxlQUVDQSxRQUZEO0FBQUEsVUFFY2IsS0FGZDs7QUFBQSxVQUdDRyxTQUhELEdBR2UsS0FBS00sS0FIcEIsQ0FHQ04sU0FIRDtBQUtQLFVBQUlGLEtBQUssR0FBR1ksUUFBWjs7QUFFQSxVQUFJLE9BQU9WLFNBQVAsS0FBcUIsUUFBckIsSUFBaUMsT0FBT0YsS0FBUCxLQUFpQixRQUF0RCxFQUFnRTtBQUM5RDtBQUNBO0FBQ0E7QUFDQSxZQUFNYSxFQUFFLEdBQUcsSUFBSUMsTUFBSixDQUFXLFVBQUdkLEtBQUgsRUFBV00sT0FBWCxDQUFtQixHQUFuQixFQUF3QixLQUF4QixJQUFpQyxTQUE1QyxDQUFYLENBSjhELENBTTlEO0FBQ0E7O0FBQ0EsWUFBSUosU0FBUyxDQUFDRyxLQUFWLENBQWdCUSxFQUFoQixDQUFKLEVBQXlCO0FBQ3ZCYixVQUFBQSxLQUFLLEdBQUdFLFNBQVI7QUFDRDtBQUNGOztBQUVELGFBQ0Usb0JBQUMsV0FBRCxlQUFpQkgsS0FBakI7QUFBd0IsUUFBQSxRQUFRLEVBQUVDLEtBQWxDO0FBQXlDLFFBQUEsUUFBUSxFQUFFLEtBQUtlO0FBQXhELFNBREY7QUFHRDs7OztFQXJEdUJ0QixLQUFLLENBQUN1QixTOztBQXdEaEMsSUFBSUMsT0FBTyxDQUFDQyxHQUFSLENBQVlDLFFBQVosS0FBeUIsWUFBN0IsRUFBMkM7QUFDekNyQixFQUFBQSxXQUFXLENBQUNzQixTQUFaLEdBQXdCMUIsS0FBSyxDQUFDMkIsVUFBOUI7QUFDRDs7QUFFRHZCLFdBQVcsQ0FBQ3dCLFlBQVosR0FBMkI7QUFDekJDLEVBQUFBLFFBQVEsRUFBRTtBQURlLENBQTNCO0FBSUEsZUFBZXpCLFdBQWYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCAqIGFzIHR5cGVzIGZyb20gXCIuLi8uLi90eXBlc1wiO1xuaW1wb3J0IHsgYXNOdW1iZXIgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcblxuLy8gTWF0Y2hlcyBhIHN0cmluZyB0aGF0IGVuZHMgaW4gYSAuIGNoYXJhY3Rlciwgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIHNlcXVlbmNlIG9mXG4vLyBkaWdpdHMgZm9sbG93ZWQgYnkgYW55IG51bWJlciBvZiAwIGNoYXJhY3RlcnMgdXAgdW50aWwgdGhlIGVuZCBvZiB0aGUgbGluZS5cbi8vIEVuc3VyaW5nIHRoYXQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIHByZWZpeGVkIGNoYXJhY3RlciBpcyBpbXBvcnRhbnQgc28gdGhhdFxuLy8geW91IGRvbid0IGluY29ycmVjdGx5IG1hdGNoIGFnYWluc3QgXCIwXCIuXG5jb25zdCB0cmFpbGluZ0NoYXJNYXRjaGVyV2l0aFByZWZpeCA9IC9cXC4oWzAtOV0qMCkqJC87XG5cbi8vIFRoaXMgaXMgdXNlZCBmb3IgdHJpbW1pbmcgdGhlIHRyYWlsaW5nIDAgYW5kIC4gY2hhcmFjdGVycyB3aXRob3V0IGFmZmVjdGluZ1xuLy8gdGhlIHJlc3Qgb2YgdGhlIHN0cmluZy4gSXRzIHBvc3NpYmxlIHRvIHVzZSBvbmUgUmVnRXggd2l0aCBncm91cHMgZm9yIHRoaXNcbi8vIGZ1bmN0aW9uYWxpdHksIGJ1dCBpdCBpcyBmYWlybHkgY29tcGxleCBjb21wYXJlZCB0byBzaW1wbHkgZGVmaW5pbmcgdHdvXG4vLyBkaWZmZXJlbnQgbWF0Y2hlcnMuXG5jb25zdCB0cmFpbGluZ0NoYXJNYXRjaGVyID0gL1swLl0wKiQvO1xuXG4vKipcbiAqIFRoZSBOdW1iZXJGaWVsZCBjbGFzcyBoYXMgc29tZSBzcGVjaWFsIGhhbmRsaW5nIGZvciBkZWFsaW5nIHdpdGggdHJhaWxpbmdcbiAqIGRlY2ltYWwgcG9pbnRzIGFuZC9vciB6ZXJvZXMuIFRoaXMgbG9naWMgaXMgZGVzaWduZWQgdG8gYWxsb3cgdHJhaWxpbmcgdmFsdWVzXG4gKiB0byBiZSB2aXNpYmxlIGluIHRoZSBpbnB1dCBlbGVtZW50LCBidXQgbm90IGJlIHJlcHJlc2VudGVkIGluIHRoZVxuICogY29ycmVzcG9uZGluZyBmb3JtIGRhdGEuXG4gKlxuICogVGhlIGFsZ29yaXRobSBpcyBhcyBmb2xsb3dzOlxuICpcbiAqIDEuIFdoZW4gdGhlIGlucHV0IHZhbHVlIGNoYW5nZXMgdGhlIHZhbHVlIGlzIGNhY2hlZCBpbiB0aGUgY29tcG9uZW50IHN0YXRlXG4gKlxuICogMi4gVGhlIHZhbHVlIGlzIHRoZW4gbm9ybWFsaXplZCwgcmVtb3ZpbmcgdHJhaWxpbmcgZGVjaW1hbCBwb2ludHMgYW5kIHplcm9zLFxuICogICAgdGhlbiBwYXNzZWQgdG8gdGhlIFwib25DaGFuZ2VcIiBjYWxsYmFja1xuICpcbiAqIDMuIFdoZW4gdGhlIGNvbXBvbmVudCBpcyByZW5kZXJlZCwgdGhlIGZvcm1EYXRhIHZhbHVlIGlzIGNoZWNrZWQgYWdhaW5zdCB0aGVcbiAqICAgIHZhbHVlIGNhY2hlZCBpbiB0aGUgc3RhdGUuIElmIGl0IG1hdGNoZXMgdGhlIGNhY2hlZCB2YWx1ZSwgdGhlIGNhY2hlZFxuICogICAgdmFsdWUgaXMgcGFzc2VkIHRvIHRoZSBpbnB1dCBpbnN0ZWFkIG9mIHRoZSBmb3JtRGF0YSB2YWx1ZVxuICovXG5jbGFzcyBOdW1iZXJGaWVsZCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuXG4gICAgdGhpcy5zdGF0ZSA9IHtcbiAgICAgIGxhc3RWYWx1ZTogcHJvcHMudmFsdWUsXG4gICAgfTtcbiAgfVxuXG4gIGhhbmRsZUNoYW5nZSA9IHZhbHVlID0+IHtcbiAgICAvLyBDYWNoZSB0aGUgb3JpZ2luYWwgdmFsdWUgaW4gY29tcG9uZW50IHN0YXRlXG4gICAgdGhpcy5zZXRTdGF0ZSh7IGxhc3RWYWx1ZTogdmFsdWUgfSk7XG5cbiAgICAvLyBOb3JtYWxpemUgZGVjaW1hbHMgdGhhdCBkb24ndCBzdGFydCB3aXRoIGEgemVybyBjaGFyYWN0ZXIgaW4gYWR2YW5jZSBzb1xuICAgIC8vIHRoYXQgdGhlIHJlc3Qgb2YgdGhlIG5vcm1hbGl6YXRpb24gbG9naWMgaXMgc2ltcGxlclxuICAgIGlmIChgJHt2YWx1ZX1gLmNoYXJBdCgwKSA9PT0gXCIuXCIpIHtcbiAgICAgIHZhbHVlID0gYDAke3ZhbHVlfWA7XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgdGhhdCB0aGUgdmFsdWUgaXMgYSBzdHJpbmcgKHRoaXMgY2FuIGhhcHBlbiBpZiB0aGUgd2lkZ2V0IHVzZWQgaXMgYVxuICAgIC8vIDxzZWxlY3Q+LCBkdWUgdG8gYW4gZW51bSBkZWNsYXJhdGlvbiBldGMpIHRoZW4sIGlmIHRoZSB2YWx1ZSBlbmRzIGluIGFcbiAgICAvLyB0cmFpbGluZyBkZWNpbWFsIHBvaW50IG9yIG11bHRpcGxlIHplcm9lcywgc3RyaXAgdGhlIHRyYWlsaW5nIHZhbHVlc1xuICAgIGxldCBwcm9jZXNzZWQgPVxuICAgICAgdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiICYmIHZhbHVlLm1hdGNoKHRyYWlsaW5nQ2hhck1hdGNoZXJXaXRoUHJlZml4KVxuICAgICAgICA/IGFzTnVtYmVyKHZhbHVlLnJlcGxhY2UodHJhaWxpbmdDaGFyTWF0Y2hlciwgXCJcIikpXG4gICAgICAgIDogYXNOdW1iZXIodmFsdWUpO1xuXG4gICAgdGhpcy5wcm9wcy5vbkNoYW5nZShwcm9jZXNzZWQpO1xuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7IFN0cmluZ0ZpZWxkIH0gPSB0aGlzLnByb3BzLnJlZ2lzdHJ5LmZpZWxkcztcbiAgICBjb25zdCB7IGZvcm1EYXRhLCAuLi5wcm9wcyB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCB7IGxhc3RWYWx1ZSB9ID0gdGhpcy5zdGF0ZTtcblxuICAgIGxldCB2YWx1ZSA9IGZvcm1EYXRhO1xuXG4gICAgaWYgKHR5cGVvZiBsYXN0VmFsdWUgPT09IFwic3RyaW5nXCIgJiYgdHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiKSB7XG4gICAgICAvLyBDb25zdHJ1Y3QgYSByZWd1bGFyIGV4cHJlc3Npb24gdGhhdCBjaGVja3MgZm9yIGEgc3RyaW5nIHRoYXQgY29uc2lzdHNcbiAgICAgIC8vIG9mIHRoZSBmb3JtRGF0YSB2YWx1ZSBzdWZmaXhlZCB3aXRoIHplcm8gb3Igb25lICcuJyBjaGFyYWN0ZXJzIGFuZCB6ZXJvXG4gICAgICAvLyBvciBtb3JlICcwJyBjaGFyYWN0ZXJzXG4gICAgICBjb25zdCByZSA9IG5ldyBSZWdFeHAoYCR7dmFsdWV9YC5yZXBsYWNlKFwiLlwiLCBcIlxcXFwuXCIpICsgXCJcXFxcLj8wKiRcIik7XG5cbiAgICAgIC8vIElmIHRoZSBjYWNoZWQgXCJsYXN0VmFsdWVcIiBpcyBhIG1hdGNoLCB1c2UgdGhhdCBpbnN0ZWFkIG9mIHRoZSBmb3JtRGF0YVxuICAgICAgLy8gdmFsdWUgdG8gcHJldmVudCB0aGUgaW5wdXQgdmFsdWUgZnJvbSBjaGFuZ2luZyBpbiB0aGUgVUlcbiAgICAgIGlmIChsYXN0VmFsdWUubWF0Y2gocmUpKSB7XG4gICAgICAgIHZhbHVlID0gbGFzdFZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICA8U3RyaW5nRmllbGQgey4uLnByb3BzfSBmb3JtRGF0YT17dmFsdWV9IG9uQ2hhbmdlPXt0aGlzLmhhbmRsZUNoYW5nZX0gLz5cbiAgICApO1xuICB9XG59XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgTnVtYmVyRmllbGQucHJvcFR5cGVzID0gdHlwZXMuZmllbGRQcm9wcztcbn1cblxuTnVtYmVyRmllbGQuZGVmYXVsdFByb3BzID0ge1xuICB1aVNjaGVtYToge30sXG59O1xuXG5leHBvcnQgZGVmYXVsdCBOdW1iZXJGaWVsZDtcbiJdfQ==
|