@1money/component-ui 0.0.75 → 0.0.77
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/es/components/ProForm/ProForm.d.ts +1 -1
- package/es/components/ProForm/ProForm.js +46 -34
- package/es/components/ProForm/ProFormDependency.d.ts +2 -1
- package/es/components/ProForm/ProFormDependency.js +6 -16
- package/es/components/ProForm/ProFormItem.d.ts +7 -2
- package/es/components/ProForm/ProFormItem.js +5 -7
- package/es/components/ProForm/ProFormList.d.ts +6 -1
- package/es/components/ProForm/ProFormList.js +122 -42
- package/es/components/ProForm/SchemaForm.d.ts +1 -1
- package/es/components/ProForm/SchemaForm.js +8 -5
- package/es/components/ProForm/context.d.ts +8 -7
- package/es/components/ProForm/context.js +1 -1
- package/es/components/ProForm/core/constants.d.ts +3 -1
- package/es/components/ProForm/core/constants.js +8 -2
- package/es/components/ProForm/core/devWarning.d.ts +3 -0
- package/es/components/ProForm/core/devWarning.js +22 -0
- package/es/components/ProForm/core/formStore.d.ts +14 -6
- package/es/components/ProForm/core/formStore.js +21 -2
- package/es/components/ProForm/core/hooks/useForm.d.ts +1 -1
- package/es/components/ProForm/core/hooks/useForm.js +275 -107
- package/es/components/ProForm/core/hooks/useFormCore.d.ts +2 -2
- package/es/components/ProForm/core/hooks/useFormCore.js +121 -121
- package/es/components/ProForm/core/interface.d.ts +157 -103
- package/es/components/ProForm/core/namePathType.d.ts +25 -0
- package/es/components/ProForm/core/namePathType.js +2 -0
- package/es/components/ProForm/core/pathUtils.d.ts +5 -3
- package/es/components/ProForm/core/pathUtils.js +19 -1
- package/es/components/ProForm/core/runRules.d.ts +40 -17
- package/es/components/ProForm/core/runRules.js +480 -136
- package/es/components/ProForm/core/useFormItem.d.ts +7 -8
- package/es/components/ProForm/core/useFormItem.js +52 -82
- package/es/components/ProForm/core/validationError.d.ts +13 -0
- package/es/components/ProForm/core/validationError.js +29 -0
- package/es/components/ProForm/fields/ProFormCheckbox.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormCheckboxGroup.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormCheckboxGroup.js +19 -5
- package/es/components/ProForm/fields/ProFormDatePicker.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormDatePicker.js +1 -1
- package/es/components/ProForm/fields/ProFormFieldSet.d.ts +7 -2
- package/es/components/ProForm/fields/ProFormFieldSet.js +49 -12
- package/es/components/ProForm/fields/ProFormPassword.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormRadioGroup.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormRadioGroup.js +8 -3
- package/es/components/ProForm/fields/ProFormSelect.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormSelect.js +13 -7
- package/es/components/ProForm/fields/ProFormSlider.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormSwitch.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormText.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormTextArea.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormUpload.d.ts +1 -1
- package/es/components/ProForm/fields/ProFormUpload.js +1 -1
- package/es/components/ProForm/fields/createProFormField.d.ts +8 -2
- package/es/components/ProForm/fields/createProFormField.js +20 -27
- package/es/components/ProForm/hooks/useFieldRequest.d.ts +1 -1
- package/es/components/ProForm/hooks/useFieldRequest.js +10 -8
- package/es/components/ProForm/hooks/useUrlSync.d.ts +8 -7
- package/es/components/ProForm/hooks/useUrlSync.js +1 -1
- package/es/components/ProForm/index.d.ts +37 -27
- package/es/components/ProForm/index.js +4 -1
- package/es/components/ProForm/interface.d.ts +115 -119
- package/es/components/ProForm/layouts/DialogForm.d.ts +1 -1
- package/es/components/ProForm/layouts/DialogForm.js +1 -1
- package/es/components/ProForm/layouts/DrawerForm.d.ts +1 -1
- package/es/components/ProForm/layouts/DrawerForm.js +1 -1
- package/es/components/ProForm/layouts/QueryFilter.d.ts +1 -1
- package/es/components/ProForm/layouts/QueryFilter.js +24 -16
- package/es/components/ProForm/layouts/useOverlayForm.d.ts +2 -2
- package/es/components/ProForm/layouts/useOverlayForm.js +1 -1
- package/es/components/ProForm/utils.d.ts +15 -7
- package/es/components/ProForm/utils.js +51 -3
- package/es/components/Table/core/useTableSetup.js +2 -2
- package/es/components/Table/interface.d.ts +1 -1
- package/es/index.css +1 -1
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/lib/components/ProForm/ProForm.d.ts +1 -1
- package/lib/components/ProForm/ProForm.js +45 -33
- package/lib/components/ProForm/ProFormDependency.d.ts +2 -1
- package/lib/components/ProForm/ProFormDependency.js +5 -15
- package/lib/components/ProForm/ProFormItem.d.ts +7 -2
- package/lib/components/ProForm/ProFormItem.js +5 -7
- package/lib/components/ProForm/ProFormList.d.ts +6 -1
- package/lib/components/ProForm/ProFormList.js +120 -40
- package/lib/components/ProForm/SchemaForm.d.ts +1 -1
- package/lib/components/ProForm/SchemaForm.js +8 -5
- package/lib/components/ProForm/context.d.ts +8 -7
- package/lib/components/ProForm/context.js +1 -1
- package/lib/components/ProForm/core/constants.d.ts +3 -1
- package/lib/components/ProForm/core/constants.js +9 -3
- package/lib/components/ProForm/core/devWarning.d.ts +3 -0
- package/lib/components/ProForm/core/devWarning.js +29 -0
- package/lib/components/ProForm/core/formStore.d.ts +14 -6
- package/lib/components/ProForm/core/formStore.js +23 -2
- package/lib/components/ProForm/core/hooks/useForm.d.ts +1 -1
- package/lib/components/ProForm/core/hooks/useForm.js +271 -103
- package/lib/components/ProForm/core/hooks/useFormCore.d.ts +2 -2
- package/lib/components/ProForm/core/hooks/useFormCore.js +119 -119
- package/lib/components/ProForm/core/interface.d.ts +157 -103
- package/lib/components/ProForm/core/namePathType.d.ts +25 -0
- package/lib/components/ProForm/core/namePathType.js +6 -0
- package/lib/components/ProForm/core/pathUtils.d.ts +5 -3
- package/lib/components/ProForm/core/pathUtils.js +20 -1
- package/lib/components/ProForm/core/runRules.d.ts +40 -17
- package/lib/components/ProForm/core/runRules.js +483 -137
- package/lib/components/ProForm/core/useFormItem.d.ts +7 -8
- package/lib/components/ProForm/core/useFormItem.js +54 -84
- package/lib/components/ProForm/core/validationError.d.ts +13 -0
- package/lib/components/ProForm/core/validationError.js +36 -0
- package/lib/components/ProForm/fields/ProFormCheckbox.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormCheckboxGroup.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormCheckboxGroup.js +18 -4
- package/lib/components/ProForm/fields/ProFormDatePicker.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormDatePicker.js +1 -1
- package/lib/components/ProForm/fields/ProFormFieldSet.d.ts +7 -2
- package/lib/components/ProForm/fields/ProFormFieldSet.js +49 -12
- package/lib/components/ProForm/fields/ProFormPassword.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormRadioGroup.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormRadioGroup.js +7 -2
- package/lib/components/ProForm/fields/ProFormSelect.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormSelect.js +13 -7
- package/lib/components/ProForm/fields/ProFormSlider.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormSwitch.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormText.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormTextArea.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormUpload.d.ts +1 -1
- package/lib/components/ProForm/fields/ProFormUpload.js +1 -1
- package/lib/components/ProForm/fields/createProFormField.d.ts +8 -2
- package/lib/components/ProForm/fields/createProFormField.js +20 -27
- package/lib/components/ProForm/hooks/useFieldRequest.d.ts +1 -1
- package/lib/components/ProForm/hooks/useFieldRequest.js +10 -8
- package/lib/components/ProForm/hooks/useUrlSync.d.ts +8 -7
- package/lib/components/ProForm/hooks/useUrlSync.js +1 -1
- package/lib/components/ProForm/index.d.ts +37 -27
- package/lib/components/ProForm/index.js +10 -1
- package/lib/components/ProForm/interface.d.ts +115 -119
- package/lib/components/ProForm/layouts/DialogForm.d.ts +1 -1
- package/lib/components/ProForm/layouts/DialogForm.js +1 -1
- package/lib/components/ProForm/layouts/DrawerForm.d.ts +1 -1
- package/lib/components/ProForm/layouts/DrawerForm.js +1 -1
- package/lib/components/ProForm/layouts/QueryFilter.d.ts +1 -1
- package/lib/components/ProForm/layouts/QueryFilter.js +24 -16
- package/lib/components/ProForm/layouts/useOverlayForm.d.ts +2 -2
- package/lib/components/ProForm/layouts/useOverlayForm.js +1 -1
- package/lib/components/ProForm/utils.d.ts +15 -7
- package/lib/components/ProForm/utils.js +52 -3
- package/lib/components/Table/core/useTableSetup.js +2 -2
- package/lib/components/Table/interface.d.ts +1 -1
- package/lib/index.css +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/package.json +1 -1
- package/scripts/mcp-server/examples.generated.json +95 -53
- package/scripts/mcp-server/index.generated.json +1715 -185
|
@@ -14,25 +14,16 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
14
14
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
15
15
|
var ProFormDependencyBase = function ProFormDependencyBase(_ref) {
|
|
16
16
|
var name = _ref.name,
|
|
17
|
-
ignoreFormListField = _ref.ignoreFormListField,
|
|
18
17
|
children = _ref.children;
|
|
19
18
|
var _useProFormStable = (0, _context.useProFormStable)(),
|
|
20
19
|
formInstance = _useProFormStable.formInstance;
|
|
21
20
|
var store = (0, _context.useProFormStore)();
|
|
22
|
-
var formListCtx = (0, _context.useFormListContext)();
|
|
23
|
-
// Resolve the actual paths to watch, considering FormList scope
|
|
24
|
-
var resolvedPaths = (0, _react.useMemo)(function () {
|
|
25
|
-
var shouldPrefix = !ignoreFormListField && formListCtx.listName !== undefined;
|
|
26
|
-
return name.map(function (fieldName) {
|
|
27
|
-
return shouldPrefix ? "".concat(formListCtx.listName, ".").concat(fieldName) : fieldName;
|
|
28
|
-
});
|
|
29
|
-
}, [name, ignoreFormListField, formListCtx.listName]);
|
|
30
21
|
// Subscribe ONLY to the watched paths: a commit that leaves every watched
|
|
31
22
|
// value Object.is-equal short-circuits, so children are NOT re-invoked when
|
|
32
23
|
// unrelated fields change. Reactivity tracks the RAW values; the payload
|
|
33
24
|
// below is derived from the FORMATTED values.
|
|
34
25
|
var watchedArray = (0, _formStore.useStoreSelector)(store, function (state) {
|
|
35
|
-
return
|
|
26
|
+
return name.map(function (path) {
|
|
36
27
|
return path.includes('.') ? (0, _utils.getNestedValue)(state.values, path) : state.values[path];
|
|
37
28
|
});
|
|
38
29
|
}, _formStore.shallowEqualArrays);
|
|
@@ -44,17 +35,16 @@ var ProFormDependencyBase = function ProFormDependencyBase(_ref) {
|
|
|
44
35
|
var formatted = formInstance.getFieldFormatValueObject();
|
|
45
36
|
var result = {};
|
|
46
37
|
for (var i = 0; i < name.length; i++) {
|
|
47
|
-
|
|
48
|
-
var path = resolvedPaths[i];
|
|
38
|
+
var path = name[i];
|
|
49
39
|
var value = watchedArray[i];
|
|
50
40
|
var formattedValue = path.includes('.') ? (0, _utils.getNestedValue)(formatted, path) : path in formatted ? formatted[path] : undefined;
|
|
51
41
|
if (formattedValue !== undefined) {
|
|
52
42
|
value = formattedValue;
|
|
53
43
|
}
|
|
54
|
-
result[
|
|
44
|
+
result[path] = value;
|
|
55
45
|
}
|
|
56
46
|
return result;
|
|
57
|
-
}, [name,
|
|
47
|
+
}, [name, watchedArray, formInstance]);
|
|
58
48
|
return (0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
59
49
|
children: children(watchedValues, formInstance)
|
|
60
50
|
});
|
|
@@ -62,4 +52,4 @@ var ProFormDependencyBase = function ProFormDependencyBase(_ref) {
|
|
|
62
52
|
ProFormDependencyBase.displayName = 'ProFormDependency';
|
|
63
53
|
var ProFormDependency = exports.ProFormDependency = /*#__PURE__*/(0, _react.memo)(ProFormDependencyBase);
|
|
64
54
|
var _default = exports["default"] = ProFormDependency;
|
|
65
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtRGVwZW5kZW5jeS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtRGVwZW5kZW5jeS50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfY29udGV4dCIsIl9mb3JtU3RvcmUiLCJfdXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJQcm9Gb3JtRGVwZW5kZW5jeUJhc2UiLCJfcmVmIiwibmFtZSIsImNoaWxkcmVuIiwiX3VzZVByb0Zvcm1TdGFibGUiLCJ1c2VQcm9Gb3JtU3RhYmxlIiwiZm9ybUluc3RhbmNlIiwic3RvcmUiLCJ1c2VQcm9Gb3JtU3RvcmUiLCJ3YXRjaGVkQXJyYXkiLCJ1c2VTdG9yZVNlbGVjdG9yIiwic3RhdGUiLCJtYXAiLCJwYXRoIiwiaW5jbHVkZXMiLCJnZXROZXN0ZWRWYWx1ZSIsInZhbHVlcyIsInNoYWxsb3dFcXVhbEFycmF5cyIsIndhdGNoZWRWYWx1ZXMiLCJ1c2VNZW1vIiwiZm9ybWF0dGVkIiwiZ2V0RmllbGRGb3JtYXRWYWx1ZU9iamVjdCIsInJlc3VsdCIsImxlbmd0aCIsInZhbHVlIiwiZm9ybWF0dGVkVmFsdWUiLCJ1bmRlZmluZWQiLCJfanN4IiwiX0ZyYWdtZW50IiwiZGlzcGxheU5hbWUiLCJQcm9Gb3JtRGVwZW5kZW5jeSIsImV4cG9ydHMiLCJtZW1vIiwiX2RlZmF1bHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFB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QyxJQUFNZSxJQUFJLEdBQUdYLElBQUksQ0FBQ0osQ0FBQyxDQUFDO01BQ3BCLElBQUkwQixLQUFLLEdBQVFmLFlBQVksQ0FBQ1gsQ0FBQyxDQUFDO01BQ2hDLElBQU0yQixjQUFjLEdBQUdaLElBQUksQ0FBQ0MsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUNyQyxJQUFBQyxxQkFBYyxFQUFDSyxTQUFTLEVBQUVQLElBQUksQ0FBQyxHQUM5QkEsSUFBSSxJQUFJTyxTQUFTLEdBQUdBLFNBQVMsQ0FBQ1AsSUFBSSxDQUFDLEdBQUdhLFNBQVU7TUFDckQsSUFBSUQsY0FBYyxLQUFLQyxTQUFTLEVBQUU7UUFDaENGLEtBQUssR0FBR0MsY0FBYztNQUN4QjtNQUNBSCxNQUFNLENBQUNULElBQUksQ0FBQyxHQUFHVyxLQUFLO0lBQ3RCO0lBQ0EsT0FBT0YsTUFBMkQ7RUFDcEUsQ0FBQyxFQUFFLENBQUNwQixJQUFJLEVBQUVPLFlBQVksRUFBRUgsWUFBWSxDQUFDLENBQUM7RUFFdEMsT0FBTyxJQUFBcUIsZUFBQSxFQUFBQyxvQkFBQSxFQUFBO0lBQUF6QixRQUFBLEVBQUdBLFFBQVEsQ0FBQ2UsYUFBYSxFQUFFWixZQUFZO0VBQUMsQ0FBQSxDQUFJO0FBQ3JELENBQUM7QUFFRE4scUJBQXFCLENBQUM2QixXQUFXLEdBQUcsbUJBQW1CO0FBaUJoRCxJQUFNQyxpQkFBaUIsR0FBQUMsT0FBQSxDQUFBRCxpQkFBQSxnQkFBRyxJQUFBRSxXQUFJLEVBQ25DaEMscUJBQXFCLENBQ2U7QUFBQyxJQUFBaUMsUUFBQSxHQUFBRixPQUFBLGNBRXhCRCxpQkFBaUIiLCJmaWxlIjoiY29tcG9uZW50cy9Qcm9Gb3JtL1Byb0Zvcm1EZXBlbmRlbmN5LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3ggYXMgX2pzeCB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IFJlYWN0LCB7IG1lbW8sIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VQcm9Gb3JtU3RhYmxlLCB1c2VQcm9Gb3JtU3RvcmUgfSBmcm9tICcuL2NvbnRleHQnO1xuaW1wb3J0IHsgdXNlU3RvcmVTZWxlY3Rvciwgc2hhbGxvd0VxdWFsQXJyYXlzIH0gZnJvbSAnLi9jb3JlL2Zvcm1TdG9yZSc7XG5pbXBvcnQgeyBnZXROZXN0ZWRWYWx1ZSB9IGZyb20gJy4vdXRpbHMnO1xuY29uc3QgUHJvRm9ybURlcGVuZGVuY3lCYXNlID0gKHsgbmFtZSwgY2hpbGRyZW4sIH0pID0+IHtcbiAgICBjb25zdCB7IGZvcm1JbnN0YW5jZSB9ID0gdXNlUHJvRm9ybVN0YWJsZSgpO1xuICAgIGNvbnN0IHN0b3JlID0gdXNlUHJvRm9ybVN0b3JlKCk7XG4gICAgLy8gU3Vic2NyaWJlIE9OTFkgdG8gdGhlIHdhdGNoZWQgcGF0aHM6IGEgY29tbWl0IHRoYXQgbGVhdmVzIGV2ZXJ5IHdhdGNoZWRcbiAgICAvLyB2YWx1ZSBPYmplY3QuaXMtZXF1YWwgc2hvcnQtY2lyY3VpdHMsIHNvIGNoaWxkcmVuIGFyZSBOT1QgcmUtaW52b2tlZCB3aGVuXG4gICAgLy8gdW5yZWxhdGVkIGZpZWxkcyBjaGFuZ2UuIFJlYWN0aXZpdHkgdHJhY2tzIHRoZSBSQVcgdmFsdWVzOyB0aGUgcGF5bG9hZFxuICAgIC8vIGJlbG93IGlzIGRlcml2ZWQgZnJvbSB0aGUgRk9STUFUVEVEIHZhbHVlcy5cbiAgICBjb25zdCB3YXRjaGVkQXJyYXkgPSB1c2VTdG9yZVNlbGVjdG9yKHN0b3JlLCAoc3RhdGUpID0+IG5hbWUubWFwKChwYXRoKSA9PiBwYXRoLmluY2x1ZGVzKCcuJykgPyBnZXROZXN0ZWRWYWx1ZShzdGF0ZS52YWx1ZXMsIHBhdGgpIDogc3RhdGUudmFsdWVzW3BhdGhdKSwgc2hhbGxvd0VxdWFsQXJyYXlzKTtcbiAgICBjb25zdCB3YXRjaGVkVmFsdWVzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICAgIC8vIENoaWxkcmVuIHJlY2VpdmUgRk9STUFUVEVEIHZhbHVlcyAoZGF0ZUZvcm1hdHRlciArIHRyYW5zZm9ybSBhcHBsaWVkKSxcbiAgICAgICAgLy8gbWF0Y2hpbmcgd2hhdCBvbkZpbmlzaCB3b3VsZCBzdWJtaXQgZm9yIHRob3NlIGZpZWxkcy4gQSB0cmFuc2Zvcm0gdGhhdFxuICAgICAgICAvLyBSRU5BTUVTIGl0cyBrZXkgZGVsZXRlcyB0aGUgb3JpZ2luYWwgcGF0aCBmcm9tIHRoZSBmb3JtYXR0ZWQgb2JqZWN0IOKAlFxuICAgICAgICAvLyBmYWxsIGJhY2sgdG8gdGhlIHJhdyB2YWx1ZSBzbyB0aGUgd2F0Y2hlciBzdGlsbCBzZWVzIHRoZSBmaWVsZC5cbiAgICAgICAgY29uc3QgZm9ybWF0dGVkID0gZm9ybUluc3RhbmNlLmdldEZpZWxkRm9ybWF0VmFsdWVPYmplY3QoKTtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0ge307XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbmFtZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgcGF0aCA9IG5hbWVbaV07XG4gICAgICAgICAgICBsZXQgdmFsdWUgPSB3YXRjaGVkQXJyYXlbaV07XG4gICAgICAgICAgICBjb25zdCBmb3JtYXR0ZWRWYWx1ZSA9IHBhdGguaW5jbHVkZXMoJy4nKVxuICAgICAgICAgICAgICAgID8gZ2V0TmVzdGVkVmFsdWUoZm9ybWF0dGVkLCBwYXRoKVxuICAgICAgICAgICAgICAgIDogKHBhdGggaW4gZm9ybWF0dGVkID8gZm9ybWF0dGVkW3BhdGhdIDogdW5kZWZpbmVkKTtcbiAgICAgICAgICAgIGlmIChmb3JtYXR0ZWRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdmFsdWUgPSBmb3JtYXR0ZWRWYWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlc3VsdFtwYXRoXSA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSwgW25hbWUsIHdhdGNoZWRBcnJheSwgZm9ybUluc3RhbmNlXSk7XG4gICAgcmV0dXJuIF9qc3goX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBjaGlsZHJlbih3YXRjaGVkVmFsdWVzLCBmb3JtSW5zdGFuY2UpIH0pO1xufTtcblByb0Zvcm1EZXBlbmRlbmN5QmFzZS5kaXNwbGF5TmFtZSA9ICdQcm9Gb3JtRGVwZW5kZW5jeSc7XG5leHBvcnQgY29uc3QgUHJvRm9ybURlcGVuZGVuY3kgPSBtZW1vKFByb0Zvcm1EZXBlbmRlbmN5QmFzZSk7XG5leHBvcnQgZGVmYXVsdCBQcm9Gb3JtRGVwZW5kZW5jeTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
2
2
|
import type { ProFormItemProps } from './interface';
|
|
3
|
-
|
|
3
|
+
import type { ProFormFieldName } from './core/namePathType';
|
|
4
|
+
export interface ProFormItemComponent {
|
|
5
|
+
<Values = Record<string, any>, Name extends ProFormFieldName<Values> = ProFormFieldName<Values>>(props: ProFormItemProps<Values, Name>): ReactElement | null;
|
|
6
|
+
displayName?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare const ProFormItem: ProFormItemComponent;
|
|
4
9
|
export default ProFormItem;
|
|
@@ -138,7 +138,6 @@ var ProFormItemBase = function ProFormItemBase(props) {
|
|
|
138
138
|
label = _mergedProps.label,
|
|
139
139
|
description = _mergedProps.description,
|
|
140
140
|
rules = _mergedProps.rules,
|
|
141
|
-
required = _mergedProps.required,
|
|
142
141
|
feedback = _mergedProps.feedback,
|
|
143
142
|
validateStatus = _mergedProps.validateStatus,
|
|
144
143
|
_mergedProps$classNam = _mergedProps.className,
|
|
@@ -156,23 +155,22 @@ var ProFormItemBase = function ProFormItemBase(props) {
|
|
|
156
155
|
emptyText = _mergedProps$emptyTex === void 0 ? EMPTY_TEXT_DEFAULT : _mergedProps$emptyTex,
|
|
157
156
|
valueEnum = _mergedProps.valueEnum,
|
|
158
157
|
valuePropName = _mergedProps.valuePropName,
|
|
159
|
-
validateDebounce = _mergedProps.validateDebounce
|
|
158
|
+
validateDebounce = _mergedProps.validateDebounce,
|
|
159
|
+
validateTrigger = _mergedProps.validateTrigger;
|
|
160
160
|
var mergedMode = modeProp !== null && modeProp !== void 0 ? modeProp : ctx.mode;
|
|
161
161
|
var isReadonly = mergedMode === 'read';
|
|
162
162
|
var _useFormItem = (0, _useFormItem2.useFormItem)({
|
|
163
163
|
name: name,
|
|
164
164
|
rules: rules,
|
|
165
|
-
required: required,
|
|
166
165
|
validateStatus: validateStatus,
|
|
167
166
|
valuePropName: valuePropName,
|
|
168
|
-
validateDebounce: validateDebounce
|
|
167
|
+
validateDebounce: validateDebounce,
|
|
168
|
+
validateTrigger: validateTrigger
|
|
169
169
|
}),
|
|
170
170
|
fieldError = _useFormItem.fieldError,
|
|
171
171
|
fieldWarning = _useFormItem.fieldWarning,
|
|
172
|
-
isRequired = _useFormItem.isRequired,
|
|
173
172
|
size = _useFormItem.size,
|
|
174
173
|
labelAlign = _useFormItem.labelAlign,
|
|
175
|
-
requiredMark = _useFormItem.requiredMark,
|
|
176
174
|
injectField = _useFormItem.injectField;
|
|
177
175
|
// Register transform / valueType DURING render (idempotent ref writes, like
|
|
178
176
|
// registerField): consumers rendered later in the same pass — e.g. a
|
|
@@ -321,4 +319,4 @@ var ProFormItemBase = function ProFormItemBase(props) {
|
|
|
321
319
|
ProFormItemBase.displayName = 'ProFormItem';
|
|
322
320
|
var ProFormItem = exports.ProFormItem = /*#__PURE__*/(0, _react.memo)(ProFormItemBase);
|
|
323
321
|
var _default = exports["default"] = ProFormItem;
|
|
324
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfR3JpZCIsIl9UeXBvZ3JhcGh5IiwiX2NsYXNzbmFtZXMiLCJfdXNlRm9ybUl0ZW0yIiwiX2NvbnN0YW50cyIsIl9jb250ZXh0IiwiX2Zvcm1TdG9yZSIsIl9wYXRoVXRpbHMiLCJfY29uc3RhbnRzMiIsIl91dGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkVNUFRZX1RFWFRfREVGQVVMVCIsInJlbmRlckJ5VmFsdWVUeXBlIiwidmFsdWVUeXBlIiwidmFsdWUiLCJwcm9wcyIsInVuZGVmaW5lZCIsInJlcGVhdCIsIlN0cmluZyIsImxlbmd0aCIsIm51bSIsIk51bWJlciIsImlzTmFOIiwidG9Mb2NhbGVTdHJpbmciLCJ2YWx1ZUVudW0iLCJvcHRpb25zIiwidmFsdWVFbnVtVG9PcHRpb25zIiwibWF0Y2giLCJmaW5kIiwibyIsImxhYmVsIiwiRGF0ZSIsImZvcm1hdERhdGVCeVBhdHRlcm4iLCJEQVRFX0ZPUk1BVCIsIkRBVEVfVElNRV9GT1JNQVQiLCJSZWFkb25seUNoaWxkQmFzZSIsIl9yZWYiLCJuYW1lIiwiY29udmVydFZhbHVlIiwicmVhZG9ubHlSZW5kZXIiLCJlbXB0eVRleHQiLCJzdG9yZSIsInVzZVByb0Zvcm1TdG9yZSIsIl91c2VTdG9yZVNlbGVjdG9yIiwidXNlU3RvcmVTZWxlY3RvciIsInN0YXRlIiwicmVzb2x2ZVZhbHVlIiwidmFsdWVzIiwic2hhbGxvd0VxdWFsQXJyYXlzIiwiX3VzZVN0b3JlU2VsZWN0b3IyIiwiX3NsaWNlZFRvQXJyYXkyIiwicmF3IiwiYWxsVmFsdWVzIiwibm9kZSIsImdldFN0YXRlIiwiX2pzeCIsImNoaWxkcmVuIiwicmVuZGVyZWQiLCJkaXNwbGF5TmFtZSIsIlJlYWRvbmx5Q2hpbGQiLCJtZW1vIiwiQ29udmVydFZhbHVlQ2hpbGRCYXNlIiwiX3JlZjIiLCJfcmVmMiR2YWx1ZVByb3BOYW1lIiwidmFsdWVQcm9wTmFtZSIsImNvbnZlcnRlZCIsIlJlYWN0IiwiY2xvbmVFbGVtZW50IiwiX2RlZmluZVByb3BlcnR5MiIsIkNvbnZlcnRWYWx1ZUNoaWxkIiwiUHJvRm9ybUl0ZW1CYXNlIiwiX2EiLCJjdHgiLCJ1c2VQcm9Gb3JtU3RhYmxlIiwibWVyZ2VkUHJvcHMiLCJmb3JtSXRlbVByb3BzIiwibWVyZ2VkIiwiYXNzaWduIiwiX2kiLCJfT2JqZWN0JGtleXMiLCJrZXlzIiwia2V5IiwiX21lcmdlZFByb3BzIiwiZGVzY3JpcHRpb24iLCJydWxlcyIsInJlcXVpcmVkIiwiZmVlZGJhY2siLCJ2YWxpZGF0ZVN0YXR1cyIsIl9tZXJnZWRQcm9wcyRjbGFzc05hbSIsImNsYXNzTmFtZSIsIl9tZXJnZWRQcm9wcyRwcmVmaXhDbCIsInByZWZpeENscyIsImhpZGRlbiIsInRyYW5zZm9ybSIsImNvbFByb3BzIiwibW9kZVByb3AiLCJtb2RlIiwiX21lcmdlZFByb3BzJGVtcHR5VGV4IiwidmFsaWRhdGVEZWJvdW5jZSIsIm1lcmdlZE1vZGUiLCJpc1JlYWRvbmx5IiwiX3VzZUZvcm1JdGVtIiwidXNlRm9ybUl0ZW0iLCJmaWVsZEVycm9yIiwiZmllbGRXYXJuaW5nIiwiaXNSZXF1aXJlZCIsInNpemUiLCJsYWJlbEFsaWduIiwicmVxdWlyZWRNYXJrIiwiaW5qZWN0RmllbGQiLCJvd25UcmFuc2Zvcm1SZWYiLCJ1c2VSZWYiLCJvd25WYWx1ZVR5cGVSZWYiLCJwcmV2VHJhbnNmb3JtIiwiY3VycmVudCIsInVucmVnaXN0ZXJUcmFuc2Zvcm0iLCJmbiIsInJlZ2lzdGVyVHJhbnNmb3JtIiwicHJldlZhbHVlVHlwZSIsInVucmVnaXN0ZXJWYWx1ZVR5cGUiLCJyZWdpc3RlclZhbHVlVHlwZSIsInVzZUVmZmVjdCIsInRyYW5zZm9ybVJlZyIsInZhbHVlVHlwZVJlZyIsInYiLCJjb250cm9sQ2hpbGQiLCJpbmplY3RlZCIsImlzVmFsaWRFbGVtZW50IiwiY2xhc3NlcyIsImNsYXNzbmFtZXMiLCJpdGVtR2FwIiwibGF5b3V0IiwiZ2FwU3R5bGUiLCJtYXJnaW5Cb3R0b20iLCJjb25jYXQiLCJzaGVsbCIsIl9qc3hzIiwiam9pbkNscyIsInN0eWxlIiwiVHlwb2dyYXBoeUxhYmVsIiwiYXMiLCJGT1JNX0xBQkVMX1NJWkVTIiwiY29sb3IiLCJGT1JNX0xBQkVMX0NPTE9SIiwiVHlwb2dyYXBoeUJvZHkiLCJGT1JNX0RFU0NSSVBUSU9OX1NJWkUiLCJGT1JNX0RFU0NSSVBUSU9OX0NPTE9SIiwiRk9STV9FUlJPUl9TSVpFIiwiRk9STV9FUlJPUl9DT0xPUiIsIkZPUk1fV0FSTklOR19TSVpFIiwiRk9STV9XQVJOSU5HX0NPTE9SIiwiRk9STV9GRUVEQkFDS19TSVpFIiwiRk9STV9GRUVEQkFDS19DT0xPUiIsImdyaWQiLCJfbWVyZ2VkJHNwYW4iLCJzcGFuIiwiREVGQVVMVF9DT0xfU1BBTiIsInNtIiwibWQiLCJsZyIsIkNvbCIsIlByb0Zvcm1JdGVtIiwiZXhwb3J0cyIsIl9kZWZhdWx0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDQUEsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsS0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBSCx1QkFBQSxDQUFBRixPQUFBO0FBQ0Es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LEdBQUcsQ0FBQ2lGLElBQUksRUFBRTtJQUNaLElBQU03RSxPQUFNLEdBQUF6RSxNQUFBLENBQUEwRSxNQUFBLENBQUExRSxNQUFBLENBQUEwRSxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQVFMLEdBQUcsQ0FBQ3NCLFFBQVEsQ0FBQSxFQUFLQSxRQUFRLENBQUU7SUFDL0MsSUFBQTRELFlBQUEsR0FBZ0Q5RSxPQUFNLENBQTlDK0UsSUFBSTtNQUFKQSxJQUFJLEdBQUFELFlBQUEsY0FBR0UsNEJBQWdCLEdBQUFGLFlBQUE7TUFBRUcsRUFBRSxHQUFhakYsT0FBTSxDQUFyQmlGLEVBQUU7TUFBRUMsRUFBRSxHQUFTbEYsT0FBTSxDQUFqQmtGLEVBQUU7TUFBRUMsRUFBRSxHQUFLbkYsT0FBTSxDQUFibUYsRUFBRTtJQUMzQyxPQUFPLElBQUF4RyxlQUFBLEVBQUN5RyxTQUFHLEVBQUE7TUFBQ0wsSUFBSSxFQUFFQSxJQUFJO01BQUVFLEVBQUUsRUFBRUEsRUFBRTtNQUFFQyxFQUFFLEVBQUVBLEVBQUU7TUFBRUMsRUFBRSxFQUFFQSxFQUFFO01BQUF2RyxRQUFBLEVBQUcrRTtJQUFLLENBQUEsQ0FBTztFQUMvRDtFQUVBLE9BQU9BLEtBQUs7QUFDZCxDQUFDO0FBRURqRSxlQUFlLENBQUNaLFdBQVcsR0FBRyxhQUFhO0FBRXBDLElBQU11RyxXQUFXLEdBQUFDLE9BQUEsQ0FBQUQsV0FBQSxnQkFBRyxJQUFBckcsV0FBSSxFQUFDVSxlQUFlLENBQUM7QUFBQyxJQUFBNkYsUUFBQSxHQUFBRCxPQUFBLGNBRWxDRCxXQUFXIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgUmVhY3QsIHsgbWVtbywgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBDb2wgfSBmcm9tICcuLi9HcmlkJztcbmltcG9ydCB7IFR5cG9ncmFwaHlCb2R5LCBUeXBvZ3JhcGh5TGFiZWwgfSBmcm9tICcuLi9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IGRlZmF1bHQgYXMgY2xhc3NuYW1lcywgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgdXNlRm9ybUl0ZW0gfSBmcm9tICcuL2NvcmUvdXNlRm9ybUl0ZW0nO1xuaW1wb3J0IHsgRk9STV9FUlJPUl9DT0xPUiwgRk9STV9FUlJPUl9TSVpFLCBGT1JNX1dBUk5JTkdfQ09MT1IsIEZPUk1fV0FSTklOR19TSVpFLCBGT1JNX0RFU0NSSVBUSU9OX0NPTE9SLCBGT1JNX0RFU0NSSVBUSU9OX1NJWkUsIEZPUk1fRkVFREJBQ0tfQ09MT1IsIEZPUk1fRkVFREJBQ0tfU0laRSwgRk9STV9MQUJFTF9DT0xPUiwgRk9STV9MQUJFTF9TSVpFUywgfSBmcm9tICcuL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7IHVzZVByb0Zvcm1TdGFibGUsIHVzZVByb0Zvcm1TdG9yZSB9IGZyb20gJy4vY29udGV4dCc7XG5pbXBvcnQgeyB1c2VTdG9yZVNlbGVjdG9yLCBzaGFsbG93RXF1YWxBcnJheXMgfSBmcm9tICcuL2NvcmUvZm9ybVN0b3JlJztcbmltcG9ydCB7IHJlc29sdmVWYWx1ZSB9IGZyb20gJy4vY29yZS9wYXRoVXRpbHMnO1xuaW1wb3J0IHsgREVGQVVMVF9DT0xfU1BBTiB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IHZhbHVlRW51bVRvT3B0aW9ucywgZm9ybWF0RGF0ZUJ5UGF0dGVybiwgREFURV9GT1JNQVQsIERBVEVfVElNRV9GT1JNQVQgfSBmcm9tICcuL3V0aWxzJztcbmNvbnN0IEVNUFRZX1RFWFRfREVGQVVMVCA9ICctJztcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmVhZC1tb2RlIHJlbmRlcmluZyBmb3IgZWFjaCBzdXBwb3J0ZWQgdmFsdWVUeXBlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbmZ1bmN0aW9uIHJlbmRlckJ5VmFsdWVUeXBlKHZhbHVlVHlwZSwgdmFsdWUsIHByb3BzKSB7XG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBzd2l0Y2ggKHZhbHVlVHlwZSkge1xuICAgICAgICBjYXNlICdwYXNzd29yZCc6XG4gICAgICAgICAgICByZXR1cm4gJyonLnJlcGVhdChTdHJpbmcodmFsdWUpLmxlbmd0aCk7XG4gICAgICAgIGNhc2UgJ3N3aXRjaCc6XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgPyAnT24nIDogJ09mZic7XG4gICAgICAgIGNhc2UgJ2RpZ2l0Jzoge1xuICAgICAgICAgICAgY29uc3QgbnVtID0gTnVtYmVyKHZhbHVlKTtcbiAgICAgICAgICAgIGlmIChOdW1iZXIuaXNOYU4obnVtKSlcbiAgICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybiBudW0udG9Mb2NhbGVTdHJpbmcoKTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdzZWxlY3QnOlxuICAgICAgICBjYXNlICdyYWRpbyc6XG4gICAgICAgIGNhc2UgJ3RhZyc6IHtcbiAgICAgICAgICAgIGlmICghcHJvcHMudmFsdWVFbnVtKVxuICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcodmFsdWUpO1xuICAgICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHZhbHVlRW51bVRvT3B0aW9ucyhwcm9wcy52YWx1ZUVudW0pO1xuICAgICAgICAgICAgY29uc3QgbWF0Y2ggPSBvcHRpb25zLmZpbmQoKG8pID0+IFN0cmluZyhvLnZhbHVlKSA9PT0gU3RyaW5nKHZhbHVlKSk7XG4gICAgICAgICAgICByZXR1cm4gbWF0Y2ggPyBtYXRjaC5sYWJlbCA6IFN0cmluZyh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSAnZGF0ZSc6XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBEYXRlID8gZm9ybWF0RGF0ZUJ5UGF0dGVybih2YWx1ZSwgREFURV9GT1JNQVQpIDogU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgY2FzZSAnZGF0ZVRpbWUnOlxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSA/IGZvcm1hdERhdGVCeVBhdHRlcm4odmFsdWUsIERBVEVfVElNRV9GT1JNQVQpIDogU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgY2FzZSAndGV4dCc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKTtcbiAgICB9XG59XG5jb25zdCBSZWFkb25seUNoaWxkQmFzZSA9ICh7IG5hbWUsIHZhbHVlVHlwZSwgdmFsdWVFbnVtLCBjb252ZXJ0VmFsdWUsIHJlYWRvbmx5UmVuZGVyLCBlbXB0eVRleHQsIH0pID0+IHtcbiAgICBjb25zdCBzdG9yZSA9IHVzZVByb0Zvcm1TdG9yZSgpO1xuICAgIC8vIFN1YnNjcmliZSBwZXItZmllbGQ7IG9ubHkgYSBjdXN0b20gcmVhZG9ubHlSZW5kZXIgKHdoaWNoIHJlY2VpdmVzIEFMTFxuICAgIC8vIHZhbHVlcykgbmVlZHMgdG8gdHJhY2sgdGhlIHdob2xlIHZhbHVlcyBvYmplY3QuXG4gICAgY29uc3QgW3JhdywgYWxsVmFsdWVzXSA9IHVzZVN0b3JlU2VsZWN0b3Ioc3RvcmUsIChzdGF0ZSkgPT4gW1xuICAgICAgICBuYW1lID8gcmVzb2x2ZVZhbHVlKHN0YXRlLnZhbHVlcywgbmFtZSkgOiB1bmRlZmluZWQsXG4gICAgICAgIHJlYWRvbmx5UmVuZGVyID8gc3RhdGUudmFsdWVzIDogdW5kZWZpbmVkLFxuICAgIF0sIHNoYWxsb3dFcXVhbEFycmF5cyk7XG4gICAgY29uc3QgdmFsdWUgPSBjb252ZXJ0VmFsdWUgJiYgbmFtZSA/IGNvbnZlcnRWYWx1ZShyYXcsIG5hbWUpIDogcmF3O1xuICAgIGlmIChyZWFkb25seVJlbmRlcikge1xuICAgICAgICBjb25zdCBub2RlID0gcmVhZG9ubHlSZW5kZXIodmFsdWUsIGFsbFZhbHVlcyAhPT0gbnVsbCAmJiBhbGxWYWx1ZXMgIT09IHZvaWQgMCA/IGFsbFZhbHVlcyA6IHN0b3JlLmdldFN0YXRlKCkudmFsdWVzKTtcbiAgICAgICAgcmV0dXJuIF9qc3goXCJzcGFuXCIsIHsgY2hpbGRyZW46IG5vZGUgIT09IG51bGwgJiYgbm9kZSAhPT0gdm9pZCAwID8gbm9kZSA6IGVtcHR5VGV4dCB9KTtcbiAgICB9XG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgICAgIHJldHVybiBfanN4KFwic3BhblwiLCB7IGNoaWxkcmVuOiBlbXB0eVRleHQgfSk7XG4gICAgfVxuICAgIGNvbnN0IHJlbmRlcmVkID0gcmVuZGVyQnlWYWx1ZVR5cGUodmFsdWVUeXBlLCB2YWx1ZSwgeyB2YWx1ZUVudW0gfSk7XG4gICAgcmV0dXJuIF9qc3goXCJzcGFuXCIsIHsgY2hpbGRyZW46IHJlbmRlcmVkICE9PSBudWxsICYmIHJlbmRlcmVkICE9PSB2b2lkIDAgPyByZW5kZXJlZCA6IGVtcHR5VGV4dCB9KTtcbn07XG5SZWFkb25seUNoaWxkQmFzZS5kaXNwbGF5TmFtZSA9ICdQcm9Gb3JtSXRlbVJlYWRvbmx5JztcbmNvbnN0IFJlYWRvbmx5Q2hpbGQgPSBtZW1vKFJlYWRvbmx5Q2hpbGRCYXNlKTtcbmNvbnN0IENvbnZlcnRWYWx1ZUNoaWxkQmFzZSA9ICh7IG5hbWUsIGNvbnZlcnRWYWx1ZSwgdmFsdWVQcm9wTmFtZSA9ICd2YWx1ZScsIGNoaWxkcmVuLCB9KSA9PiB7XG4gICAgY29uc3Qgc3RvcmUgPSB1c2VQcm9Gb3JtU3RvcmUoKTtcbiAgICBjb25zdCByYXcgPSB1c2VTdG9yZVNlbGVjdG9yKHN0b3JlLCAoc3RhdGUpID0+IHJlc29sdmVWYWx1ZShzdGF0ZS52YWx1ZXMsIG5hbWUpKTtcbiAgICBjb25zdCBjb252ZXJ0ZWQgPSBjb252ZXJ0VmFsdWUgPyBjb252ZXJ0VmFsdWUocmF3LCBuYW1lKSA6IHJhdztcbiAgICByZXR1cm4gUmVhY3QuY2xvbmVFbGVtZW50KGNoaWxkcmVuLCB7IFt2YWx1ZVByb3BOYW1lXTogY29udmVydGVkIH0pO1xufTtcbkNvbnZlcnRWYWx1ZUNoaWxkQmFzZS5kaXNwbGF5TmFtZSA9ICdQcm9Gb3JtSXRlbUNvbnZlcnRWYWx1ZSc7XG5jb25zdCBDb252ZXJ0VmFsdWVDaGlsZCA9IG1lbW8oQ29udmVydFZhbHVlQ2hpbGRCYXNlKTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUHJvRm9ybUl0ZW1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuY29uc3QgUHJvRm9ybUl0ZW1CYXNlID0gKHByb3BzKSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIC8vIFN0YWJsZSBzbGljZSBvbmx5IOKAlCB2YWx1ZS9lcnJvciByZWFjdGl2aXR5IGxpdmVzIGluIHVzZUZvcm1JdGVtJ3NcbiAgICAvLyBwZXItZmllbGQgc3Vic2NyaXB0aW9uLCBzbyB0aGlzIHNoZWxsIG5ldmVyIHJlLXJlbmRlcnMgZm9yIHNpYmxpbmdzLlxuICAgIGNvbnN0IGN0eCA9IHVzZVByb0Zvcm1TdGFibGUoKTtcbiAgICAvLyBGb3JtLWxldmVsIGBmb3JtSXRlbVByb3BzYCBhY3QgYXMgREVGQVVMVFM7IHByb3BzIGV4cGxpY2l0bHkgc2V0IG9uIHRoZVxuICAgIC8vIGl0ZW0gd2luLiBKU1ggZnJlcXVlbnRseSBwYXNzZXMgYHVuZGVmaW5lZGAgZm9yIHVuc2V0IHByb3BzIChlLmcuIHRoZVxuICAgIC8vIGNyZWF0ZVByb0Zvcm1GaWVsZCBwYXNzLXRocm91Z2gpLCBzbyBvbmx5IGRlZmluZWQgdmFsdWVzIG1heSBvdmVycmlkZS5cbiAgICBsZXQgbWVyZ2VkUHJvcHMgPSBwcm9wcztcbiAgICBpZiAoY3R4LmZvcm1JdGVtUHJvcHMpIHtcbiAgICAgICAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbih7fSwgY3R4LmZvcm1JdGVtUHJvcHMpO1xuICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhwcm9wcykpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcHJvcHNba2V5XTtcbiAgICAgICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgIG1lcmdlZFtrZXldID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgbWVyZ2VkUHJvcHMgPSBtZXJnZWQ7XG4gICAgfVxuICAgIGNvbnN0IHsgY2hpbGRyZW4sIG5hbWUsIGxhYmVsLCBkZXNjcmlwdGlvbiwgcnVsZXMsIHJlcXVpcmVkLCBmZWVkYmFjaywgdmFsaWRhdGVTdGF0dXMsIGNsYXNzTmFtZSA9ICcnLCBwcmVmaXhDbHMgPSAnZm9ybS1pdGVtJywgaGlkZGVuLCB0cmFuc2Zvcm0sIGNvbnZlcnRWYWx1ZSwgdmFsdWVUeXBlLCByZWFkb25seVJlbmRlciwgY29sUHJvcHMsIG1vZGU6IG1vZGVQcm9wLCBlbXB0eVRleHQgPSBFTVBUWV9URVhUX0RFRkFVTFQsIHZhbHVlRW51bSwgdmFsdWVQcm9wTmFtZSwgdmFsaWRhdGVEZWJvdW5jZSwgfSA9IG1lcmdlZFByb3BzO1xuICAgIGNvbnN0IG1lcmdlZE1vZGUgPSBtb2RlUHJvcCAhPT0gbnVsbCAmJiBtb2RlUHJvcCAhPT0gdm9pZCAwID8gbW9kZVByb3AgOiBjdHgubW9kZTtcbiAgICBjb25zdCBpc1JlYWRvbmx5ID0gbWVyZ2VkTW9kZSA9PT0gJ3JlYWQnO1xuICAgIGNvbnN0IHsgZmllbGRFcnJvciwgZmllbGRXYXJuaW5nLCBpc1JlcXVpcmVkLCBzaXplLCBsYWJlbEFsaWduLCByZXF1aXJlZE1hcmssIGluamVjdEZpZWxkLCB9ID0gdXNlRm9ybUl0ZW0oeyBuYW1lLCBydWxlcywgcmVxdWlyZWQsIHZhbGlkYXRlU3RhdHVzLCB2YWx1ZVByb3BOYW1lLCB2YWxpZGF0ZURlYm91bmNlIH0pO1xuICAgIC8vIFJlZ2lzdGVyIHRyYW5zZm9ybSAvIHZhbHVlVHlwZSBEVVJJTkcgcmVuZGVyIChpZGVtcG90ZW50IHJlZiB3cml0ZXMsIGxpa2VcbiAgICAvLyByZWdpc3RlckZpZWxkKTogY29uc3VtZXJzIHJlbmRlcmVkIGxhdGVyIGluIHRoZSBzYW1lIHBhc3Mg4oCUIGUuZy4gYVxuICAgIC8vIERlcGVuZGVuY3kgcmVhZGluZyBmb3JtYXR0ZWQgdmFsdWVzIOKAlCBtdXN0IGFscmVhZHkgc2VlIHRoZW0uIEVmZmVjdHNcbiAgICAvLyB3b3VsZCByZWdpc3RlciB0b28gbGF0ZSAoYWZ0ZXIgdGhlIHdob2xlIHRyZWUgcmVuZGVyZWQpLlxuICAgIC8vXG4gICAgLy8gRWFjaCBpbnN0YW5jZSB0cmFja3MgdGhlIHtuYW1lLCB2YWx1ZX0gUEFJUiBpdCByZWdpc3RlcmVkLiBSZW1vdmFsIGlzXG4gICAgLy8gYWx3YXlzIHBlcmZvcm1lZCB3aXRoIHRoZSBwYWlyJ3Mgb3duIG5hbWUgQU5EIHZhbHVlOiBhbiBpdGVtIHdpdGhvdXQgYVxuICAgIC8vIHRyYW5zZm9ybSBuZXZlciB0b3VjaGVzIGEgc2FtZS1uYW1lIHNpYmxpbmcncyByZWdpc3RyYXRpb24sIGFuIHVubW91bnRcbiAgICAvLyBjbGVhbnVwIGNhbid0IHdpcGUgYSBzdWNjZXNzb3IncyAodmFsdWUtZ3VhcmRlZCksIGFuZCBhIE5BTUUgY2hhbmdlXG4gICAgLy8gcmVtb3ZlcyB0aGUgb2xkIG5hbWUncyBlbnRyeSB3aXRoIHRoZSBPTEQgdmFsdWUgYmVmb3JlIHRoZSByZWYgaXNcbiAgICAvLyBvdmVyd3JpdHRlbiAoYSBsaXZlIHNpbmdsZS12YWx1ZSByZWYgd291bGQgbGVhayBpdCkuXG4gICAgY29uc3Qgb3duVHJhbnNmb3JtUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IG93blZhbHVlVHlwZVJlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBwcmV2VHJhbnNmb3JtID0gb3duVHJhbnNmb3JtUmVmLmN1cnJlbnQ7XG4gICAgaWYgKHByZXZUcmFuc2Zvcm0gJiYgKHByZXZUcmFuc2Zvcm0ubmFtZSAhPT0gbmFtZSB8fCAhdHJhbnNmb3JtKSkge1xuICAgICAgICBjdHgudW5yZWdpc3RlclRyYW5zZm9ybShwcmV2VHJhbnNmb3JtLm5hbWUsIHByZXZUcmFuc2Zvcm0uZm4pO1xuICAgICAgICBvd25UcmFuc2Zvcm1SZWYuY3VycmVudCA9IG51bGw7XG4gICAgfVxuICAgIGlmIChuYW1lICYmIHRyYW5zZm9ybSkge1xuICAgICAgICBjdHgucmVnaXN0ZXJUcmFuc2Zvcm0obmFtZSwgdHJhbnNmb3JtKTtcbiAgICAgICAgb3duVHJhbnNmb3JtUmVmLmN1cnJlbnQgPSB7IG5hbWUsIGZuOiB0cmFuc2Zvcm0gfTtcbiAgICB9XG4gICAgY29uc3QgcHJldlZhbHVlVHlwZSA9IG93blZhbHVlVHlwZVJlZi5jdXJyZW50O1xuICAgIGlmIChwcmV2VmFsdWVUeXBlICYmIChwcmV2VmFsdWVUeXBlLm5hbWUgIT09IG5hbWUgfHwgIXZhbHVlVHlwZSkpIHtcbiAgICAgICAgY3R4LnVucmVnaXN0ZXJWYWx1ZVR5cGUocHJldlZhbHVlVHlwZS5uYW1lLCBwcmV2VmFsdWVUeXBlLnZhbHVlVHlwZSk7XG4gICAgICAgIG93blZhbHVlVHlwZVJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICB9XG4gICAgaWYgKG5hbWUgJiYgdmFsdWVUeXBlKSB7XG4gICAgICAgIGN0eC5yZWdpc3RlclZhbHVlVHlwZShuYW1lLCB2YWx1ZVR5cGUpO1xuICAgICAgICBvd25WYWx1ZVR5cGVSZWYuY3VycmVudCA9IHsgbmFtZSwgdmFsdWVUeXBlIH07XG4gICAgfVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIC8vIFJFLVJFR0lTVEVSIGluIHRoZSBib2R5OiBTdHJpY3RNb2RlJ3MgbW91bnTihpJjbGVhbnVw4oaScmUtcnVuIGN5Y2xlIGFuZFxuICAgICAgICAvLyBrZXllZCByZW1vdW50cyAob2xkIGluc3RhbmNlJ3MgY2xlYW51cCBydW5zIEFGVEVSIHRoZSBuZXcgcmVuZGVyXG4gICAgICAgIC8vIHJlZ2lzdGVyZWQpIGJvdGggZW5kIHdpdGggYSBjbGVhbnVwIGhhdmluZyBkZWxldGVkIHRoZSBlbnRyeSDigJQgdGhlXG4gICAgICAgIC8vIGVmZmVjdCBib2R5IG11c3QgcmVzdG9yZSB0aGUgbGF0ZXN0IHJlZ2lzdHJhdGlvbi5cbiAgICAgICAgY29uc3QgdHJhbnNmb3JtUmVnID0gb3duVHJhbnNmb3JtUmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmICh0cmFuc2Zvcm1SZWcpXG4gICAgICAgICAgICBjdHgucmVnaXN0ZXJUcmFuc2Zvcm0odHJhbnNmb3JtUmVnLm5hbWUsIHRyYW5zZm9ybVJlZy5mbik7XG4gICAgICAgIGNvbnN0IHZhbHVlVHlwZVJlZyA9IG93blZhbHVlVHlwZVJlZi5jdXJyZW50O1xuICAgICAgICBpZiAodmFsdWVUeXBlUmVnKVxuICAgICAgICAgICAgY3R4LnJlZ2lzdGVyVmFsdWVUeXBlKHZhbHVlVHlwZVJlZy5uYW1lLCB2YWx1ZVR5cGVSZWcudmFsdWVUeXBlKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHQgPSBvd25UcmFuc2Zvcm1SZWYuY3VycmVudDtcbiAgICAgICAgICAgIGlmICh0KVxuICAgICAgICAgICAgICAgIGN0eC51bnJlZ2lzdGVyVHJhbnNmb3JtKHQubmFtZSwgdC5mbik7XG4gICAgICAgICAgICBjb25zdCB2ID0gb3duVmFsdWVUeXBlUmVmLmN1cnJlbnQ7XG4gICAgICAgICAgICBpZiAodilcbiAgICAgICAgICAgICAgICBjdHgudW5yZWdpc3RlclZhbHVlVHlwZSh2Lm5hbWUsIHYudmFsdWVUeXBlKTtcbiAgICAgICAgfTtcbiAgICB9LCBbbmFtZSwgY3R4LnJlZ2lzdGVyVHJhbnNmb3JtLCBjdHgudW5yZWdpc3RlclRyYW5zZm9ybSwgY3R4LnJlZ2lzdGVyVmFsdWVUeXBlLCBjdHgudW5yZWdpc3RlclZhbHVlVHlwZV0pO1xuICAgIGlmIChoaWRkZW4pXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGxldCBjb250cm9sQ2hpbGQ7XG4gICAgaWYgKGlzUmVhZG9ubHkpIHtcbiAgICAgICAgY29udHJvbENoaWxkID0gKF9qc3goUmVhZG9ubHlDaGlsZCwgeyBuYW1lOiBuYW1lLCB2YWx1ZVR5cGU6IHZhbHVlVHlwZSwgdmFsdWVFbnVtOiB2YWx1ZUVudW0sIGNvbnZlcnRWYWx1ZTogY29udmVydFZhbHVlLCByZWFkb25seVJlbmRlcjogcmVhZG9ubHlSZW5kZXIsIGVtcHR5VGV4dDogZW1wdHlUZXh0IH0pKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vIEluamVjdCBmaXJzdCBzbyB0aGUgcmVhbCBmaWVsZCByZWNlaXZlcyB2YWx1ZS9vbkNoYW5nZS9vbkJsdXIsXG4gICAgICAgIC8vIHRoZW4gb3B0aW9uYWxseSB3cmFwIGluIENvbnZlcnRWYWx1ZUNoaWxkIHRvIG92ZXJyaWRlIHRoZSBkaXNwbGF5ZWQgdmFsdWUuXG4gICAgICAgIGNvbnN0IGluamVjdGVkID0gaW5qZWN0RmllbGQoY2hpbGRyZW4pO1xuICAgICAgICBpZiAoY29udmVydFZhbHVlICYmIG5hbWUgJiYgUmVhY3QuaXNWYWxpZEVsZW1lbnQoaW5qZWN0ZWQpKSB7XG4gICAgICAgICAgICBjb250cm9sQ2hpbGQgPSAoX2pzeChDb252ZXJ0VmFsdWVDaGlsZCwgeyBuYW1lOiBuYW1lLCBjb252ZXJ0VmFsdWU6IGNvbnZlcnRWYWx1ZSwgdmFsdWVQcm9wTmFtZTogdmFsdWVQcm9wTmFtZSwgY2hpbGRyZW46IGluamVjdGVkIH0pKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnRyb2xDaGlsZCA9IGluamVjdGVkO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IGNsYXNzZXMgPSBjbGFzc25hbWVzKHByZWZpeENscyk7XG4gICAgLy8gRm9ybS1sZXZlbCBsYXlvdXQuaXRlbUdhcCBvdmVycmlkZXMgdGhlIHNpemUtY2xhc3MgbWFyZ2luIChpbmxpbmUgc3R5bGVcbiAgICAvLyB3aW5zKTsgaXRlbUdhcD0wIGlzIG1lYW5pbmdmdWwuXG4gICAgY29uc3QgaXRlbUdhcCA9IChfYSA9IGN0eC5sYXlvdXQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5pdGVtR2FwO1xuICAgIGNvbnN0IGdhcFN0eWxlID0gaXRlbUdhcCAhPT0gdW5kZWZpbmVkXG4gICAgICAgID8geyBtYXJnaW5Cb3R0b206IHR5cGVvZiBpdGVtR2FwID09PSAnbnVtYmVyJyA/IGAke2l0ZW1HYXB9cHhgIDogaXRlbUdhcCB9XG4gICAgICAgIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IHNoZWxsID0gKF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKHVuZGVmaW5lZCwgam9pbkNscyhjbGFzc2VzKHNpemUpLCBjbGFzc05hbWUpKSwgc3R5bGU6IGdhcFN0eWxlLCBjaGlsZHJlbjogW2xhYmVsICYmIChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnbGFiZWwtd3JhcHBlcicsIGpvaW5DbHMoY2xhc3NlcygnbGFiZWwtd3JhcHBlci12ZXJ0aWNhbCcpLCBsYWJlbEFsaWduICYmIGNsYXNzZXMoYGxhYmVsLXdyYXBwZXItJHtsYWJlbEFsaWdufWApKSksIGNoaWxkcmVuOiBbX2pzeChUeXBvZ3JhcGh5TGFiZWwsIHsgYXM6IFwibGFiZWxcIiwgc2l6ZTogRk9STV9MQUJFTF9TSVpFU1tzaXplXSwgY29sb3I6IEZPUk1fTEFCRUxfQ09MT1IsIGNsYXNzTmFtZTogY2xhc3NlcygnbGFiZWwnKSwgY2hpbGRyZW46IGxhYmVsIH0pLCBkZXNjcmlwdGlvbiAmJiAoX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBhczogXCJkaXZcIiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdkZXNjcmlwdGlvbicpLCBzaXplOiBGT1JNX0RFU0NSSVBUSU9OX1NJWkUsIGNvbG9yOiBGT1JNX0RFU0NSSVBUSU9OX0NPTE9SLCBjaGlsZHJlbjogZGVzY3JpcHRpb24gfSkpXSB9KSksIF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdjb250cm9sJyksIGNoaWxkcmVuOiBbY29udHJvbENoaWxkLCBmaWVsZEVycm9yICYmIChfanN4KFR5cG9ncmFwaHlCb2R5LCB7IGFzOiBcImRpdlwiLCBjbGFzc05hbWU6IGNsYXNzZXMoJ2Vycm9yJyksIHNpemU6IEZPUk1fRVJST1JfU0laRSwgY29sb3I6IEZPUk1fRVJST1JfQ09MT1IsIGNoaWxkcmVuOiBmaWVsZEVycm9yIH0pKSwgIWZpZWxkRXJyb3IgJiYgZmllbGRXYXJuaW5nICYmIChfanN4KFR5cG9ncmFwaHlCb2R5LCB7IGFzOiBcImRpdlwiLCBjbGFzc05hbWU6IGNsYXNzZXMoJ3dhcm5pbmcnKSwgc2l6ZTogRk9STV9XQVJOSU5HX1NJWkUsIGNvbG9yOiBGT1JNX1dBUk5JTkdfQ09MT1IsIGNoaWxkcmVuOiBmaWVsZFdhcm5pbmcgfSkpLCAhZmllbGRFcnJvciAmJiAhZmllbGRXYXJuaW5nICYmIGZlZWRiYWNrICYmIChfanN4KFR5cG9ncmFwaHlCb2R5LCB7IGFzOiBcImRpdlwiLCBjbGFzc05hbWU6IGNsYXNzZXMoJ2ZlZWRiYWNrJyksIHNpemU6IEZPUk1fRkVFREJBQ0tfU0laRSwgY29sb3I6IEZPUk1fRkVFREJBQ0tfQ09MT1IsIGNoaWxkcmVuOiBmZWVkYmFjayB9KSldIH0pXSB9KSk7XG4gICAgaWYgKGN0eC5ncmlkKSB7XG4gICAgICAgIGNvbnN0IG1lcmdlZCA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgY3R4LmNvbFByb3BzKSwgY29sUHJvcHMpO1xuICAgICAgICBjb25zdCB7IHNwYW4gPSBERUZBVUxUX0NPTF9TUEFOLCBzbSwgbWQsIGxnIH0gPSBtZXJnZWQ7XG4gICAgICAgIHJldHVybiBfanN4KENvbCwgeyBzcGFuOiBzcGFuLCBzbTogc20sIG1kOiBtZCwgbGc6IGxnLCBjaGlsZHJlbjogc2hlbGwgfSk7XG4gICAgfVxuICAgIHJldHVybiBzaGVsbDtcbn07XG5Qcm9Gb3JtSXRlbUJhc2UuZGlzcGxheU5hbWUgPSAnUHJvRm9ybUl0ZW0nO1xuZXhwb3J0IGNvbnN0IFByb0Zvcm1JdGVtID0gbWVtbyhQcm9Gb3JtSXRlbUJhc2UpO1xuZXhwb3J0IGRlZmF1bHQgUHJvRm9ybUl0ZW07IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
322
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvUHJvRm9ybS9Qcm9Gb3JtSXRlbS50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfR3JpZCIsIl9UeXBvZ3JhcGh5IiwiX2NsYXNzbmFtZXMiLCJfdXNlRm9ybUl0ZW0yIiwiX2NvbnN0YW50cyIsIl9jb250ZXh0IiwiX2Zvcm1TdG9yZSIsIl9wYXRoVXRpbHMiLCJfY29uc3RhbnRzMiIsIl91dGlscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIkVNUFRZX1RFWFRfREVGQVVMVCIsInJlbmRlckJ5VmFsdWVUeXBlIiwidmFsdWVUeXBlIiwidmFsdWUiLCJwcm9wcyIsInVuZGVmaW5lZCIsInJlcGVhdCIsIlN0cmluZyIsImxlbmd0aCIsIm51bSIsIk51bWJlciIsImlzTmFOIiwidG9Mb2NhbGVTdHJpbmciLCJ2YWx1ZUVudW0iLCJvcHRpb25zIiwidmFsdWVFbnVtVG9PcHRpb25zIiwibWF0Y2giLCJmaW5kIiwibyIsImxhYmVsIiwiRGF0ZSIsImZvcm1hdERhdGVCeVBhdHRlcm4iLCJEQVRFX0ZPUk1BVCIsIkRBVEVfVElNRV9GT1JNQVQiLCJSZWFkb25seUNoaWxkQmFzZSIsIl9yZWYiLCJuYW1lIiwiY29udmVydFZhbHVlIiwicmVhZG9ubHlSZW5kZXIiLCJlbXB0eVRleHQiLCJzdG9yZSIsInVzZVByb0Zvcm1TdG9yZSIsIl91c2VTdG9yZVNlbGVjdG9yIiwidXNlU3RvcmVTZWxlY3RvciIsInN0YXRlIiwicmVzb2x2ZVZhbHVlIiwidmFsdWVzIiwic2hhbGxvd0VxdWFsQXJyYXlzIiwiX3VzZVN0b3JlU2VsZWN0b3IyIiwiX3NsaWNlZFRvQXJyYXkyIiwicmF3IiwiYWxsVmFsdWVzIiwibm9kZSIsImdldFN0YXRlIiwiX2pzeCIsImNoaWxkcmVuIiwicmVuZGVyZWQiLCJkaXNwbGF5TmFtZSIsIlJlYWRvbmx5Q2hpbGQiLCJtZW1vIiwiQ29udmVydFZhbHVlQ2hpbGRCYXNlIiwiX3JlZjIiLCJfcmVmMiR2YWx1ZVByb3BOYW1lIiwidmFsdWVQcm9wTmFtZSIsImNvbnZlcnRlZCIsIlJlYWN0IiwiY2xvbmVFbGVtZW50IiwiX2RlZmluZVByb3BlcnR5MiIsIkNvbnZlcnRWYWx1ZUNoaWxkIiwiUHJvRm9ybUl0ZW1CYXNlIiwiX2EiLCJjdHgiLCJ1c2VQcm9Gb3JtU3RhYmxlIiwibWVyZ2VkUHJvcHMiLCJmb3JtSXRlbVByb3BzIiwibWVyZ2VkIiwiYXNzaWduIiwiX2kiLCJfT2JqZWN0JGtleXMiLCJrZXlzIiwia2V5IiwiX21lcmdlZFByb3BzIiwiZGVzY3JpcHRpb24iLCJydWxlcyIsImZlZWRiYWNrIiwidmFsaWRhdGVTdGF0dXMiLCJfbWVyZ2VkUHJvcHMkY2xhc3NOYW0iLCJjbGFzc05hbWUiLCJfbWVyZ2VkUHJvcHMkcHJlZml4Q2wiLCJwcmVmaXhDbHMiLCJoaWRkZW4iLCJ0cmFuc2Zvcm0iLCJjb2xQcm9wcyIsIm1vZGVQcm9wIiwibW9kZSIsIl9tZXJnZWRQcm9wcyRlbXB0eVRleCIsInZhbGlkYXRlRGVib3VuY2UiLCJ2YWxpZGF0ZVRyaWdnZXIiLCJtZXJnZWRNb2RlIiwiaXNSZWFkb25seSIsIl91c2VGb3JtSXRlbSIsInVzZUZvcm1JdGVtIiwiZmllbGRFcnJvciIsImZpZWxkV2FybmluZyIsInNpemUiLCJsYWJlbEFsaWduIiwiaW5qZWN0RmllbGQiLCJvd25UcmFuc2Zvcm1SZWYiLCJ1c2VSZWYiLCJvd25WYWx1ZVR5cGVSZWYiLCJwcmV2VHJhbnNmb3JtIiwiY3VycmVudCIsInVucmVnaXN0ZXJUcmFuc2Zvcm0iLCJmbiIsInJlZ2lzdGVyVHJhbnNmb3JtIiwicHJldlZhbHVlVHlwZSIsInVucmVnaXN0ZXJWYWx1ZVR5cGUiLCJyZWdpc3RlclZhbHVlVHlwZSIsInVzZUVmZmVjdCIsInRyYW5zZm9ybVJlZyIsInZhbHVlVHlwZVJlZyIsInYiLCJjb250cm9sQ2hpbGQiLCJpbmplY3RlZCIsImlzVmFsaWRFbGVtZW50IiwiY2xhc3NlcyIsImNsYXNzbmFtZXMiLCJpdGVtR2FwIiwibGF5b3V0IiwiZ2FwU3R5bGUiLCJtYXJnaW5Cb3R0b20iLCJjb25jYXQiLCJzaGVsbCIsIl9qc3hzIiwiam9pbkNscyIsInN0eWxlIiwiVHlwb2dyYXBoeUxhYmVsIiwiYXMiLCJGT1JNX0xBQkVMX1NJWkVTIiwiY29sb3IiLCJGT1JNX0xBQkVMX0NPTE9SIiwiVHlwb2dyYXBoeUJvZHkiLCJGT1JNX0RFU0NSSVBUSU9OX1NJWkUiLCJGT1JNX0RFU0NSSVBUSU9OX0NPTE9SIiwiRk9STV9FUlJPUl9TSVpFIiwiRk9STV9FUlJPUl9DT0xPUiIsIkZPUk1fV0FSTklOR19TSVpFIiwiRk9STV9XQVJOSU5HX0NPTE9SIiwiRk9STV9GRUVEQkFDS19TSVpFIiwiRk9STV9GRUVEQkFDS19DT0xPUiIsImdyaWQiLCJfbWVyZ2VkJHNwYW4iLCJzcGFuIiwiREVGQVVMVF9DT0xfU1BBTiIsInNtIiwibWQiLCJsZyIsIkNvbCIsIlByb0Zvcm1JdGVtIiwiZXhwb3J0cyIsIl9kZWZhdWx0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDQUEsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsS0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBSCx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQU0sYUFBQSxHQUFBTixPQUFB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TUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFRTCxHQUFHLENBQUNxQixRQUFRLENBQUEsRUFBS0EsUUFBUSxDQUFFO0lBQy9DLElBQUEyRCxZQUFBLEdBQWdENUUsT0FBTSxDQUE5QzZFLElBQUk7TUFBSkEsSUFBSSxHQUFBRCxZQUFBLGNBQUdFLDRCQUFnQixHQUFBRixZQUFBO01BQUVHLEVBQUUsR0FBYS9FLE9BQU0sQ0FBckIrRSxFQUFFO01BQUVDLEVBQUUsR0FBU2hGLE9BQU0sQ0FBakJnRixFQUFFO01BQUVDLEVBQUUsR0FBS2pGLE9BQU0sQ0FBYmlGLEVBQUU7SUFDM0MsT0FBTyxJQUFBdEcsZUFBQSxFQUFDdUcsU0FBRyxFQUFBO01BQUNMLElBQUksRUFBRUEsSUFBSTtNQUFFRSxFQUFFLEVBQUVBLEVBQUU7TUFBRUMsRUFBRSxFQUFFQSxFQUFFO01BQUVDLEVBQUUsRUFBRUEsRUFBRTtNQUFBckcsUUFBQSxFQUFHNkU7SUFBSyxDQUFBLENBQU87RUFDL0Q7RUFFQSxPQUFPQSxLQUFLO0FBQ2QsQ0FBQztBQUVEL0QsZUFBZSxDQUFDWixXQUFXLEdBQUcsYUFBYTtBQVlwQyxJQUFNcUcsV0FBVyxHQUFBQyxPQUFBLENBQUFELFdBQUEsZ0JBQUcsSUFBQW5HLFdBQUksRUFBQ1UsZUFBZSxDQUFnQztBQUFDLElBQUEyRixRQUFBLEdBQUFELE9BQUEsY0FFakVELFdBQVciLCJmaWxlIjoiY29tcG9uZW50cy9Qcm9Gb3JtL1Byb0Zvcm1JdGVtLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCBSZWFjdCwgeyBtZW1vLCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IENvbCB9IGZyb20gJy4uL0dyaWQnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeUJvZHksIFR5cG9ncmFwaHlMYWJlbCB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IHsgZGVmYXVsdCBhcyBjbGFzc25hbWVzLCBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyB1c2VGb3JtSXRlbSB9IGZyb20gJy4vY29yZS91c2VGb3JtSXRlbSc7XG5pbXBvcnQgeyBGT1JNX0VSUk9SX0NPTE9SLCBGT1JNX0VSUk9SX1NJWkUsIEZPUk1fV0FSTklOR19DT0xPUiwgRk9STV9XQVJOSU5HX1NJWkUsIEZPUk1fREVTQ1JJUFRJT05fQ09MT1IsIEZPUk1fREVTQ1JJUFRJT05fU0laRSwgRk9STV9GRUVEQkFDS19DT0xPUiwgRk9STV9GRUVEQkFDS19TSVpFLCBGT1JNX0xBQkVMX0NPTE9SLCBGT1JNX0xBQkVMX1NJWkVTLCB9IGZyb20gJy4vY29yZS9jb25zdGFudHMnO1xuaW1wb3J0IHsgdXNlUHJvRm9ybVN0YWJsZSwgdXNlUHJvRm9ybVN0b3JlIH0gZnJvbSAnLi9jb250ZXh0JztcbmltcG9ydCB7IHVzZVN0b3JlU2VsZWN0b3IsIHNoYWxsb3dFcXVhbEFycmF5cyB9IGZyb20gJy4vY29yZS9mb3JtU3RvcmUnO1xuaW1wb3J0IHsgcmVzb2x2ZVZhbHVlIH0gZnJvbSAnLi9jb3JlL3BhdGhVdGlscyc7XG5pbXBvcnQgeyBERUZBVUxUX0NPTF9TUEFOIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgdmFsdWVFbnVtVG9PcHRpb25zLCBmb3JtYXREYXRlQnlQYXR0ZXJuLCBEQVRFX0ZPUk1BVCwgREFURV9USU1FX0ZPUk1BVCB9IGZyb20gJy4vdXRpbHMnO1xuY29uc3QgRU1QVFlfVEVYVF9ERUZBVUxUID0gJy0nO1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZWFkLW1vZGUgcmVuZGVyaW5nIGZvciBlYWNoIHN1cHBvcnRlZCB2YWx1ZVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuZnVuY3Rpb24gcmVuZGVyQnlWYWx1ZVR5cGUodmFsdWVUeXBlLCB2YWx1ZSwgcHJvcHMpIHtcbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gJycpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIHN3aXRjaCAodmFsdWVUeXBlKSB7XG4gICAgICAgIGNhc2UgJ3Bhc3N3b3JkJzpcbiAgICAgICAgICAgIHJldHVybiAnKicucmVwZWF0KFN0cmluZyh2YWx1ZSkubGVuZ3RoKTtcbiAgICAgICAgY2FzZSAnc3dpdGNoJzpcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSA/ICdPbicgOiAnT2ZmJztcbiAgICAgICAgY2FzZSAnZGlnaXQnOiB7XG4gICAgICAgICAgICBjb25zdCBudW0gPSBOdW1iZXIodmFsdWUpO1xuICAgICAgICAgICAgaWYgKE51bWJlci5pc05hTihudW0pKVxuICAgICAgICAgICAgICAgIHJldHVybiBTdHJpbmcodmFsdWUpO1xuICAgICAgICAgICAgcmV0dXJuIG51bS50b0xvY2FsZVN0cmluZygpO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJ3NlbGVjdCc6XG4gICAgICAgIGNhc2UgJ3JhZGlvJzpcbiAgICAgICAgY2FzZSAndGFnJzoge1xuICAgICAgICAgICAgaWYgKCFwcm9wcy52YWx1ZUVudW0pXG4gICAgICAgICAgICAgICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgICAgICAgICBjb25zdCBvcHRpb25zID0gdmFsdWVFbnVtVG9PcHRpb25zKHByb3BzLnZhbHVlRW51bSk7XG4gICAgICAgICAgICBjb25zdCBtYXRjaCA9IG9wdGlvbnMuZmluZCgobykgPT4gU3RyaW5nKG8udmFsdWUpID09PSBTdHJpbmcodmFsdWUpKTtcbiAgICAgICAgICAgIHJldHVybiBtYXRjaCA/IG1hdGNoLmxhYmVsIDogU3RyaW5nKHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIERhdGUgPyBmb3JtYXREYXRlQnlQYXR0ZXJuKHZhbHVlLCBEQVRFX0ZPUk1BVCkgOiBTdHJpbmcodmFsdWUpO1xuICAgICAgICBjYXNlICdkYXRlVGltZSc6XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBEYXRlID8gZm9ybWF0RGF0ZUJ5UGF0dGVybih2YWx1ZSwgREFURV9USU1FX0ZPUk1BVCkgOiBTdHJpbmcodmFsdWUpO1xuICAgICAgICBjYXNlICd0ZXh0JzpcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBTdHJpbmcodmFsdWUpO1xuICAgIH1cbn1cbmNvbnN0IFJlYWRvbmx5Q2hpbGRCYXNlID0gKHsgbmFtZSwgdmFsdWVUeXBlLCB2YWx1ZUVudW0sIGNvbnZlcnRWYWx1ZSwgcmVhZG9ubHlSZW5kZXIsIGVtcHR5VGV4dCwgfSkgPT4ge1xuICAgIGNvbnN0IHN0b3JlID0gdXNlUHJvRm9ybVN0b3JlKCk7XG4gICAgLy8gU3Vic2NyaWJlIHBlci1maWVsZDsgb25seSBhIGN1c3RvbSByZWFkb25seVJlbmRlciAod2hpY2ggcmVjZWl2ZXMgQUxMXG4gICAgLy8gdmFsdWVzKSBuZWVkcyB0byB0cmFjayB0aGUgd2hvbGUgdmFsdWVzIG9iamVjdC5cbiAgICBjb25zdCBbcmF3LCBhbGxWYWx1ZXNdID0gdXNlU3RvcmVTZWxlY3RvcihzdG9yZSwgKHN0YXRlKSA9PiBbXG4gICAgICAgIG5hbWUgPyByZXNvbHZlVmFsdWUoc3RhdGUudmFsdWVzLCBuYW1lKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgcmVhZG9ubHlSZW5kZXIgPyBzdGF0ZS52YWx1ZXMgOiB1bmRlZmluZWQsXG4gICAgXSwgc2hhbGxvd0VxdWFsQXJyYXlzKTtcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnZlcnRWYWx1ZSAmJiBuYW1lID8gY29udmVydFZhbHVlKHJhdywgbmFtZSkgOiByYXc7XG4gICAgaWYgKHJlYWRvbmx5UmVuZGVyKSB7XG4gICAgICAgIGNvbnN0IG5vZGUgPSByZWFkb25seVJlbmRlcih2YWx1ZSwgYWxsVmFsdWVzICE9PSBudWxsICYmIGFsbFZhbHVlcyAhPT0gdm9pZCAwID8gYWxsVmFsdWVzIDogc3RvcmUuZ2V0U3RhdGUoKS52YWx1ZXMpO1xuICAgICAgICByZXR1cm4gX2pzeChcInNwYW5cIiwgeyBjaGlsZHJlbjogbm9kZSAhPT0gbnVsbCAmJiBub2RlICE9PSB2b2lkIDAgPyBub2RlIDogZW1wdHlUZXh0IH0pO1xuICAgIH1cbiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gJycpIHtcbiAgICAgICAgcmV0dXJuIF9qc3goXCJzcGFuXCIsIHsgY2hpbGRyZW46IGVtcHR5VGV4dCB9KTtcbiAgICB9XG4gICAgY29uc3QgcmVuZGVyZWQgPSByZW5kZXJCeVZhbHVlVHlwZSh2YWx1ZVR5cGUsIHZhbHVlLCB7IHZhbHVlRW51bSB9KTtcbiAgICByZXR1cm4gX2pzeChcInNwYW5cIiwgeyBjaGlsZHJlbjogcmVuZGVyZWQgIT09IG51bGwgJiYgcmVuZGVyZWQgIT09IHZvaWQgMCA/IHJlbmRlcmVkIDogZW1wdHlUZXh0IH0pO1xufTtcblJlYWRvbmx5Q2hpbGRCYXNlLmRpc3BsYXlOYW1lID0gJ1Byb0Zvcm1JdGVtUmVhZG9ubHknO1xuY29uc3QgUmVhZG9ubHlDaGlsZCA9IG1lbW8oUmVhZG9ubHlDaGlsZEJhc2UpO1xuY29uc3QgQ29udmVydFZhbHVlQ2hpbGRCYXNlID0gKHsgbmFtZSwgY29udmVydFZhbHVlLCB2YWx1ZVByb3BOYW1lID0gJ3ZhbHVlJywgY2hpbGRyZW4sIH0pID0+IHtcbiAgICBjb25zdCBzdG9yZSA9IHVzZVByb0Zvcm1TdG9yZSgpO1xuICAgIGNvbnN0IHJhdyA9IHVzZVN0b3JlU2VsZWN0b3Ioc3RvcmUsIChzdGF0ZSkgPT4gcmVzb2x2ZVZhbHVlKHN0YXRlLnZhbHVlcywgbmFtZSkpO1xuICAgIGNvbnN0IGNvbnZlcnRlZCA9IGNvbnZlcnRWYWx1ZSA/IGNvbnZlcnRWYWx1ZShyYXcsIG5hbWUpIDogcmF3O1xuICAgIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoY2hpbGRyZW4sIHsgW3ZhbHVlUHJvcE5hbWVdOiBjb252ZXJ0ZWQgfSk7XG59O1xuQ29udmVydFZhbHVlQ2hpbGRCYXNlLmRpc3BsYXlOYW1lID0gJ1Byb0Zvcm1JdGVtQ29udmVydFZhbHVlJztcbmNvbnN0IENvbnZlcnRWYWx1ZUNoaWxkID0gbWVtbyhDb252ZXJ0VmFsdWVDaGlsZEJhc2UpO1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQcm9Gb3JtSXRlbVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5jb25zdCBQcm9Gb3JtSXRlbUJhc2UgPSAocHJvcHMpID0+IHtcbiAgICB2YXIgX2E7XG4gICAgLy8gU3RhYmxlIHNsaWNlIG9ubHkg4oCUIHZhbHVlL2Vycm9yIHJlYWN0aXZpdHkgbGl2ZXMgaW4gdXNlRm9ybUl0ZW0nc1xuICAgIC8vIHBlci1maWVsZCBzdWJzY3JpcHRpb24sIHNvIHRoaXMgc2hlbGwgbmV2ZXIgcmUtcmVuZGVycyBmb3Igc2libGluZ3MuXG4gICAgY29uc3QgY3R4ID0gdXNlUHJvRm9ybVN0YWJsZSgpO1xuICAgIC8vIEZvcm0tbGV2ZWwgYGZvcm1JdGVtUHJvcHNgIGFjdCBhcyBERUZBVUxUUzsgcHJvcHMgZXhwbGljaXRseSBzZXQgb24gdGhlXG4gICAgLy8gaXRlbSB3aW4uIEpTWCBmcmVxdWVudGx5IHBhc3NlcyBgdW5kZWZpbmVkYCBmb3IgdW5zZXQgcHJvcHMgKGUuZy4gdGhlXG4gICAgLy8gY3JlYXRlUHJvRm9ybUZpZWxkIHBhc3MtdGhyb3VnaCksIHNvIG9ubHkgZGVmaW5lZCB2YWx1ZXMgbWF5IG92ZXJyaWRlLlxuICAgIGxldCBtZXJnZWRQcm9wcyA9IHByb3BzO1xuICAgIGlmIChjdHguZm9ybUl0ZW1Qcm9wcykge1xuICAgICAgICBjb25zdCBtZXJnZWQgPSBPYmplY3QuYXNzaWduKHt9LCBjdHguZm9ybUl0ZW1Qcm9wcyk7XG4gICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHByb3BzKSkge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwcm9wc1trZXldO1xuICAgICAgICAgICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICAgICAgbWVyZ2VkW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBtZXJnZWRQcm9wcyA9IG1lcmdlZDtcbiAgICB9XG4gICAgY29uc3QgeyBjaGlsZHJlbiwgbmFtZSwgbGFiZWwsIGRlc2NyaXB0aW9uLCBydWxlcywgZmVlZGJhY2ssIHZhbGlkYXRlU3RhdHVzLCBjbGFzc05hbWUgPSAnJywgcHJlZml4Q2xzID0gJ2Zvcm0taXRlbScsIGhpZGRlbiwgdHJhbnNmb3JtLCBjb252ZXJ0VmFsdWUsIHZhbHVlVHlwZSwgcmVhZG9ubHlSZW5kZXIsIGNvbFByb3BzLCBtb2RlOiBtb2RlUHJvcCwgZW1wdHlUZXh0ID0gRU1QVFlfVEVYVF9ERUZBVUxULCB2YWx1ZUVudW0sIHZhbHVlUHJvcE5hbWUsIHZhbGlkYXRlRGVib3VuY2UsIHZhbGlkYXRlVHJpZ2dlciwgfSA9IG1lcmdlZFByb3BzO1xuICAgIGNvbnN0IG1lcmdlZE1vZGUgPSBtb2RlUHJvcCAhPT0gbnVsbCAmJiBtb2RlUHJvcCAhPT0gdm9pZCAwID8gbW9kZVByb3AgOiBjdHgubW9kZTtcbiAgICBjb25zdCBpc1JlYWRvbmx5ID0gbWVyZ2VkTW9kZSA9PT0gJ3JlYWQnO1xuICAgIGNvbnN0IHsgZmllbGRFcnJvciwgZmllbGRXYXJuaW5nLCBzaXplLCBsYWJlbEFsaWduLCBpbmplY3RGaWVsZCwgfSA9IHVzZUZvcm1JdGVtKHtcbiAgICAgICAgbmFtZSxcbiAgICAgICAgcnVsZXMsXG4gICAgICAgIHZhbGlkYXRlU3RhdHVzLFxuICAgICAgICB2YWx1ZVByb3BOYW1lLFxuICAgICAgICB2YWxpZGF0ZURlYm91bmNlLFxuICAgICAgICB2YWxpZGF0ZVRyaWdnZXIsXG4gICAgfSk7XG4gICAgLy8gUmVnaXN0ZXIgdHJhbnNmb3JtIC8gdmFsdWVUeXBlIERVUklORyByZW5kZXIgKGlkZW1wb3RlbnQgcmVmIHdyaXRlcywgbGlrZVxuICAgIC8vIHJlZ2lzdGVyRmllbGQpOiBjb25zdW1lcnMgcmVuZGVyZWQgbGF0ZXIgaW4gdGhlIHNhbWUgcGFzcyDigJQgZS5nLiBhXG4gICAgLy8gRGVwZW5kZW5jeSByZWFkaW5nIGZvcm1hdHRlZCB2YWx1ZXMg4oCUIG11c3QgYWxyZWFkeSBzZWUgdGhlbS4gRWZmZWN0c1xuICAgIC8vIHdvdWxkIHJlZ2lzdGVyIHRvbyBsYXRlIChhZnRlciB0aGUgd2hvbGUgdHJlZSByZW5kZXJlZCkuXG4gICAgLy9cbiAgICAvLyBFYWNoIGluc3RhbmNlIHRyYWNrcyB0aGUge25hbWUsIHZhbHVlfSBQQUlSIGl0IHJlZ2lzdGVyZWQuIFJlbW92YWwgaXNcbiAgICAvLyBhbHdheXMgcGVyZm9ybWVkIHdpdGggdGhlIHBhaXIncyBvd24gbmFtZSBBTkQgdmFsdWU6IGFuIGl0ZW0gd2l0aG91dCBhXG4gICAgLy8gdHJhbnNmb3JtIG5ldmVyIHRvdWNoZXMgYSBzYW1lLW5hbWUgc2libGluZydzIHJlZ2lzdHJhdGlvbiwgYW4gdW5tb3VudFxuICAgIC8vIGNsZWFudXAgY2FuJ3Qgd2lwZSBhIHN1Y2Nlc3NvcidzICh2YWx1ZS1ndWFyZGVkKSwgYW5kIGEgTkFNRSBjaGFuZ2VcbiAgICAvLyByZW1vdmVzIHRoZSBvbGQgbmFtZSdzIGVudHJ5IHdpdGggdGhlIE9MRCB2YWx1ZSBiZWZvcmUgdGhlIHJlZiBpc1xuICAgIC8vIG92ZXJ3cml0dGVuIChhIGxpdmUgc2luZ2xlLXZhbHVlIHJlZiB3b3VsZCBsZWFrIGl0KS5cbiAgICBjb25zdCBvd25UcmFuc2Zvcm1SZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3Qgb3duVmFsdWVUeXBlUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHByZXZUcmFuc2Zvcm0gPSBvd25UcmFuc2Zvcm1SZWYuY3VycmVudDtcbiAgICBpZiAocHJldlRyYW5zZm9ybSAmJiAocHJldlRyYW5zZm9ybS5uYW1lICE9PSBuYW1lIHx8ICF0cmFuc2Zvcm0pKSB7XG4gICAgICAgIGN0eC51bnJlZ2lzdGVyVHJhbnNmb3JtKHByZXZUcmFuc2Zvcm0ubmFtZSwgcHJldlRyYW5zZm9ybS5mbik7XG4gICAgICAgIG93blRyYW5zZm9ybVJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICB9XG4gICAgaWYgKG5hbWUgJiYgdHJhbnNmb3JtKSB7XG4gICAgICAgIGN0eC5yZWdpc3RlclRyYW5zZm9ybShuYW1lLCB0cmFuc2Zvcm0pO1xuICAgICAgICBvd25UcmFuc2Zvcm1SZWYuY3VycmVudCA9IHsgbmFtZSwgZm46IHRyYW5zZm9ybSB9O1xuICAgIH1cbiAgICBjb25zdCBwcmV2VmFsdWVUeXBlID0gb3duVmFsdWVUeXBlUmVmLmN1cnJlbnQ7XG4gICAgaWYgKHByZXZWYWx1ZVR5cGUgJiYgKHByZXZWYWx1ZVR5cGUubmFtZSAhPT0gbmFtZSB8fCAhdmFsdWVUeXBlKSkge1xuICAgICAgICBjdHgudW5yZWdpc3RlclZhbHVlVHlwZShwcmV2VmFsdWVUeXBlLm5hbWUsIHByZXZWYWx1ZVR5cGUudmFsdWVUeXBlKTtcbiAgICAgICAgb3duVmFsdWVUeXBlUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH1cbiAgICBpZiAobmFtZSAmJiB2YWx1ZVR5cGUpIHtcbiAgICAgICAgY3R4LnJlZ2lzdGVyVmFsdWVUeXBlKG5hbWUsIHZhbHVlVHlwZSk7XG4gICAgICAgIG93blZhbHVlVHlwZVJlZi5jdXJyZW50ID0geyBuYW1lLCB2YWx1ZVR5cGUgfTtcbiAgICB9XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgLy8gUkUtUkVHSVNURVIgaW4gdGhlIGJvZHk6IFN0cmljdE1vZGUncyBtb3VudOKGkmNsZWFudXDihpJyZS1ydW4gY3ljbGUgYW5kXG4gICAgICAgIC8vIGtleWVkIHJlbW91bnRzIChvbGQgaW5zdGFuY2UncyBjbGVhbnVwIHJ1bnMgQUZURVIgdGhlIG5ldyByZW5kZXJcbiAgICAgICAgLy8gcmVnaXN0ZXJlZCkgYm90aCBlbmQgd2l0aCBhIGNsZWFudXAgaGF2aW5nIGRlbGV0ZWQgdGhlIGVudHJ5IOKAlCB0aGVcbiAgICAgICAgLy8gZWZmZWN0IGJvZHkgbXVzdCByZXN0b3JlIHRoZSBsYXRlc3QgcmVnaXN0cmF0aW9uLlxuICAgICAgICBjb25zdCB0cmFuc2Zvcm1SZWcgPSBvd25UcmFuc2Zvcm1SZWYuY3VycmVudDtcbiAgICAgICAgaWYgKHRyYW5zZm9ybVJlZylcbiAgICAgICAgICAgIGN0eC5yZWdpc3RlclRyYW5zZm9ybSh0cmFuc2Zvcm1SZWcubmFtZSwgdHJhbnNmb3JtUmVnLmZuKTtcbiAgICAgICAgY29uc3QgdmFsdWVUeXBlUmVnID0gb3duVmFsdWVUeXBlUmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmICh2YWx1ZVR5cGVSZWcpXG4gICAgICAgICAgICBjdHgucmVnaXN0ZXJWYWx1ZVR5cGUodmFsdWVUeXBlUmVnLm5hbWUsIHZhbHVlVHlwZVJlZy52YWx1ZVR5cGUpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdCA9IG93blRyYW5zZm9ybVJlZi5jdXJyZW50O1xuICAgICAgICAgICAgaWYgKHQpXG4gICAgICAgICAgICAgICAgY3R4LnVucmVnaXN0ZXJUcmFuc2Zvcm0odC5uYW1lLCB0LmZuKTtcbiAgICAgICAgICAgIGNvbnN0IHYgPSBvd25WYWx1ZVR5cGVSZWYuY3VycmVudDtcbiAgICAgICAgICAgIGlmICh2KVxuICAgICAgICAgICAgICAgIGN0eC51bnJlZ2lzdGVyVmFsdWVUeXBlKHYubmFtZSwgdi52YWx1ZVR5cGUpO1xuICAgICAgICB9O1xuICAgIH0sIFtuYW1lLCBjdHgucmVnaXN0ZXJUcmFuc2Zvcm0sIGN0eC51bnJlZ2lzdGVyVHJhbnNmb3JtLCBjdHgucmVnaXN0ZXJWYWx1ZVR5cGUsIGN0eC51bnJlZ2lzdGVyVmFsdWVUeXBlXSk7XG4gICAgaWYgKGhpZGRlbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgbGV0IGNvbnRyb2xDaGlsZDtcbiAgICBpZiAoaXNSZWFkb25seSkge1xuICAgICAgICBjb250cm9sQ2hpbGQgPSAoX2pzeChSZWFkb25seUNoaWxkLCB7IG5hbWU6IG5hbWUsIHZhbHVlVHlwZTogdmFsdWVUeXBlLCB2YWx1ZUVudW06IHZhbHVlRW51bSwgY29udmVydFZhbHVlOiBjb252ZXJ0VmFsdWUsIHJlYWRvbmx5UmVuZGVyOiByZWFkb25seVJlbmRlciwgZW1wdHlUZXh0OiBlbXB0eVRleHQgfSkpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gSW5qZWN0IGZpcnN0IHNvIHRoZSByZWFsIGZpZWxkIHJlY2VpdmVzIHZhbHVlL29uQ2hhbmdlL29uQmx1cixcbiAgICAgICAgLy8gdGhlbiBvcHRpb25hbGx5IHdyYXAgaW4gQ29udmVydFZhbHVlQ2hpbGQgdG8gb3ZlcnJpZGUgdGhlIGRpc3BsYXllZCB2YWx1ZS5cbiAgICAgICAgY29uc3QgaW5qZWN0ZWQgPSBpbmplY3RGaWVsZChjaGlsZHJlbik7XG4gICAgICAgIGlmIChjb252ZXJ0VmFsdWUgJiYgbmFtZSAmJiBSZWFjdC5pc1ZhbGlkRWxlbWVudChpbmplY3RlZCkpIHtcbiAgICAgICAgICAgIGNvbnRyb2xDaGlsZCA9IChfanN4KENvbnZlcnRWYWx1ZUNoaWxkLCB7IG5hbWU6IG5hbWUsIGNvbnZlcnRWYWx1ZTogY29udmVydFZhbHVlLCB2YWx1ZVByb3BOYW1lOiB2YWx1ZVByb3BOYW1lLCBjaGlsZHJlbjogaW5qZWN0ZWQgfSkpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY29udHJvbENoaWxkID0gaW5qZWN0ZWQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICAvLyBGb3JtLWxldmVsIGxheW91dC5pdGVtR2FwIG92ZXJyaWRlcyB0aGUgc2l6ZS1jbGFzcyBtYXJnaW4gKGlubGluZSBzdHlsZVxuICAgIC8vIHdpbnMpOyBpdGVtR2FwPTAgaXMgbWVhbmluZ2Z1bC5cbiAgICBjb25zdCBpdGVtR2FwID0gKF9hID0gY3R4LmxheW91dCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLml0ZW1HYXA7XG4gICAgY29uc3QgZ2FwU3R5bGUgPSBpdGVtR2FwICE9PSB1bmRlZmluZWRcbiAgICAgICAgPyB7IG1hcmdpbkJvdHRvbTogdHlwZW9mIGl0ZW1HYXAgPT09ICdudW1iZXInID8gYCR7aXRlbUdhcH1weGAgOiBpdGVtR2FwIH1cbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgY29uc3Qgc2hlbGwgPSAoX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXModW5kZWZpbmVkLCBqb2luQ2xzKGNsYXNzZXMoc2l6ZSksIGNsYXNzTmFtZSkpLCBzdHlsZTogZ2FwU3R5bGUsIGNoaWxkcmVuOiBbbGFiZWwgJiYgKF9qc3hzKFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdsYWJlbC13cmFwcGVyJywgam9pbkNscyhjbGFzc2VzKCdsYWJlbC13cmFwcGVyLXZlcnRpY2FsJyksIGxhYmVsQWxpZ24gJiYgY2xhc3NlcyhgbGFiZWwtd3JhcHBlci0ke2xhYmVsQWxpZ259YCkpKSwgY2hpbGRyZW46IFtfanN4KFR5cG9ncmFwaHlMYWJlbCwgeyBhczogXCJsYWJlbFwiLCBzaXplOiBGT1JNX0xBQkVMX1NJWkVTW3NpemVdLCBjb2xvcjogRk9STV9MQUJFTF9DT0xPUiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdsYWJlbCcpLCBjaGlsZHJlbjogbGFiZWwgfSksIGRlc2NyaXB0aW9uICYmIChfanN4KFR5cG9ncmFwaHlCb2R5LCB7IGFzOiBcImRpdlwiLCBjbGFzc05hbWU6IGNsYXNzZXMoJ2Rlc2NyaXB0aW9uJyksIHNpemU6IEZPUk1fREVTQ1JJUFRJT05fU0laRSwgY29sb3I6IEZPUk1fREVTQ1JJUFRJT05fQ09MT1IsIGNoaWxkcmVuOiBkZXNjcmlwdGlvbiB9KSldIH0pKSwgX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2NvbnRyb2wnKSwgY2hpbGRyZW46IFtjb250cm9sQ2hpbGQsIGZpZWxkRXJyb3IgJiYgKF9qc3goVHlwb2dyYXBoeUJvZHksIHsgYXM6IFwiZGl2XCIsIGNsYXNzTmFtZTogY2xhc3NlcygnZXJyb3InKSwgc2l6ZTogRk9STV9FUlJPUl9TSVpFLCBjb2xvcjogRk9STV9FUlJPUl9DT0xPUiwgY2hpbGRyZW46IGZpZWxkRXJyb3IgfSkpLCAhZmllbGRFcnJvciAmJiBmaWVsZFdhcm5pbmcgJiYgKF9qc3goVHlwb2dyYXBoeUJvZHksIHsgYXM6IFwiZGl2XCIsIGNsYXNzTmFtZTogY2xhc3Nlcygnd2FybmluZycpLCBzaXplOiBGT1JNX1dBUk5JTkdfU0laRSwgY29sb3I6IEZPUk1fV0FSTklOR19DT0xPUiwgY2hpbGRyZW46IGZpZWxkV2FybmluZyB9KSksICFmaWVsZEVycm9yICYmICFmaWVsZFdhcm5pbmcgJiYgZmVlZGJhY2sgJiYgKF9qc3goVHlwb2dyYXBoeUJvZHksIHsgYXM6IFwiZGl2XCIsIGNsYXNzTmFtZTogY2xhc3NlcygnZmVlZGJhY2snKSwgc2l6ZTogRk9STV9GRUVEQkFDS19TSVpFLCBjb2xvcjogRk9STV9GRUVEQkFDS19DT0xPUiwgY2hpbGRyZW46IGZlZWRiYWNrIH0pKV0gfSldIH0pKTtcbiAgICBpZiAoY3R4LmdyaWQpIHtcbiAgICAgICAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBjdHguY29sUHJvcHMpLCBjb2xQcm9wcyk7XG4gICAgICAgIGNvbnN0IHsgc3BhbiA9IERFRkFVTFRfQ09MX1NQQU4sIHNtLCBtZCwgbGcgfSA9IG1lcmdlZDtcbiAgICAgICAgcmV0dXJuIF9qc3goQ29sLCB7IHNwYW46IHNwYW4sIHNtOiBzbSwgbWQ6IG1kLCBsZzogbGcsIGNoaWxkcmVuOiBzaGVsbCB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHNoZWxsO1xufTtcblByb0Zvcm1JdGVtQmFzZS5kaXNwbGF5TmFtZSA9ICdQcm9Gb3JtSXRlbSc7XG5leHBvcnQgY29uc3QgUHJvRm9ybUl0ZW0gPSBtZW1vKFByb0Zvcm1JdGVtQmFzZSk7XG5leHBvcnQgZGVmYXVsdCBQcm9Gb3JtSXRlbTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
1
2
|
import type { ProFormListProps } from './interface';
|
|
2
|
-
export
|
|
3
|
+
export interface ProFormListComponent {
|
|
4
|
+
<Item = Record<string, any>>(props: ProFormListProps<Item>): ReactElement | null;
|
|
5
|
+
displayName?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const ProFormList: ProFormListComponent;
|
|
3
8
|
export default ProFormList;
|