@kaspernj/api-maker 1.0.2123 → 1.0.2125
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/inputs/attachment.js +21 -9
- package/package.json +1 -1
|
@@ -14,15 +14,17 @@ import useInput from "../use-input.js";
|
|
|
14
14
|
export default memo(shapeComponent(class ApiMakerInputsAttachment extends BaseComponent {
|
|
15
15
|
static propTypes = {
|
|
16
16
|
className: PropTypes.string,
|
|
17
|
-
|
|
17
|
+
contentType: PropTypes.string,
|
|
18
|
+
model: PropTypes.object,
|
|
18
19
|
onPurgeChanged: PropTypes.func,
|
|
19
|
-
purgeName: PropTypes.string
|
|
20
|
+
purgeName: PropTypes.string,
|
|
21
|
+
url: PropTypes.string
|
|
20
22
|
};
|
|
21
23
|
setup() {
|
|
22
24
|
const { t } = useI18n({ namespace: "js.api_maker.inputs.attachment" });
|
|
23
25
|
const { inputProps } = useInput({
|
|
24
26
|
props: {
|
|
25
|
-
inputProps: { name: ""
|
|
27
|
+
inputProps: { name: "" },
|
|
26
28
|
inputRef: undefined,
|
|
27
29
|
type: "file",
|
|
28
30
|
...this.props
|
|
@@ -36,19 +38,24 @@ export default memo(shapeComponent(class ApiMakerInputsAttachment extends BaseCo
|
|
|
36
38
|
}
|
|
37
39
|
render() {
|
|
38
40
|
const { inputProps, t } = this.tt;
|
|
39
|
-
const { attribute, checkboxComponent, className, label, model, name, onPurgeChanged, purgeName, wrapperOpts, ...restProps } = this.props;
|
|
41
|
+
const { attribute, checkboxComponent, className, contentType, id, label, model, name, onPurgeChanged, purgeName, url, wrapperOpts, ...restProps } = this.props;
|
|
40
42
|
const CheckboxComponent = checkboxComponent || Checkbox;
|
|
41
43
|
const newInputProps = Object.assign({}, inputProps, { type: "file" }); // eslint-disable-line prefer-object-spread
|
|
42
44
|
return (_jsxs("div", { className: classNames("api-maker--inputs--attachment", "components--inputs--input", className), ...restProps, children: [this.isImage() &&
|
|
43
45
|
_jsx("a", { href: this.getUrl(), target: "_blank", children: _jsx("img", { src: this.getUrl(), style: { maxWidth: "200px", maxHeight: "200px" } }) }), this.getUrl() &&
|
|
44
|
-
_jsxs("div", { className: "input-checkbox", style: { paddingTop: "15px", paddingBottom: "15px" }, children: [_jsx(CheckboxComponent, { id: this.getPurgeInputId(), name: this.getPurgeInputName(), onChange: this.
|
|
45
|
-
_jsx(ApiMakerInput, { defaultValue: null, inputProps: newInputProps, model: model })] }));
|
|
46
|
+
_jsxs("div", { className: "input-checkbox", style: { paddingTop: "15px", paddingBottom: "15px" }, children: [_jsx(CheckboxComponent, { id: this.getPurgeInputId(), name: this.getPurgeInputName(), onChange: this.tt.onPurgeChanged }), _jsx("label", { className: "checkbox-label", htmlFor: this.getPurgeInputId(), children: t("js.shared.delete") })] }), !this.s.purgeChecked &&
|
|
47
|
+
_jsx(ApiMakerInput, { defaultValue: null, inputProps: newInputProps, model: model, type: "file" })] }));
|
|
46
48
|
}
|
|
47
49
|
getContentType() {
|
|
50
|
+
if ("contentType" in this.props)
|
|
51
|
+
return this.props.contentType;
|
|
48
52
|
const { attribute, model } = this.p;
|
|
49
53
|
const attributeName = `${attribute}ContentType`;
|
|
54
|
+
const modelClassName = model ? model.modelClassData().name : "Attachment";
|
|
55
|
+
if (!model)
|
|
56
|
+
return null;
|
|
50
57
|
if (!(attributeName in model))
|
|
51
|
-
throw new Error(`No such method on ${
|
|
58
|
+
throw new Error(`No such method on ${modelClassName}: ${attributeName}`);
|
|
52
59
|
return model[attributeName]();
|
|
53
60
|
}
|
|
54
61
|
getPurgeInputId() {
|
|
@@ -66,10 +73,15 @@ export default memo(shapeComponent(class ApiMakerInputsAttachment extends BaseCo
|
|
|
66
73
|
return purgeInputName;
|
|
67
74
|
}
|
|
68
75
|
getUrl() {
|
|
76
|
+
if ("url" in this.props)
|
|
77
|
+
return this.props.url;
|
|
69
78
|
const { attribute, model } = this.p;
|
|
70
79
|
const attributeName = `${attribute}Url`;
|
|
80
|
+
const modelClassName = model ? model.modelClassData().name : "Attachment";
|
|
81
|
+
if (!model)
|
|
82
|
+
return null;
|
|
71
83
|
if (!(attributeName in model))
|
|
72
|
-
throw new Error(`No such method on ${
|
|
84
|
+
throw new Error(`No such method on ${modelClassName}: ${attributeName}`);
|
|
73
85
|
return model[attributeName]();
|
|
74
86
|
}
|
|
75
87
|
isImage() {
|
|
@@ -81,4 +93,4 @@ export default memo(shapeComponent(class ApiMakerInputsAttachment extends BaseCo
|
|
|
81
93
|
this.props.onPurgeChanged(e);
|
|
82
94
|
};
|
|
83
95
|
}));
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudC5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsiaW5wdXRzL2F0dGFjaG1lbnQuanN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxpQ0FBaUM7QUFDakMsT0FBTyxhQUFhLE1BQU0sU0FBUyxDQUFBO0FBQ25DLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxXQUFXLENBQUE7QUFDOUIsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDRDQUE0QyxDQUFBO0FBQ3pFLE9BQU8sYUFBYSxNQUFNLG1CQUFtQixDQUFBO0FBQzdDLE9BQU8sUUFBUSxNQUFNLFlBQVksQ0FBQTtBQUNqQyxPQUFPLFNBQVMsTUFBTSxZQUFZLENBQUE7QUFDbEMsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBQ3pCLE9BQU8sVUFBVSxNQUFNLFlBQVksQ0FBQSxDQUFDLDJDQUEyQztBQUMvRSxPQUFPLElBQUksTUFBTSxpQ0FBaUMsQ0FBQTtBQUNsRCxPQUFPLE9BQU8sTUFBTSxtQ0FBbUMsQ0FBQTtBQUN2RCxPQUFPLFFBQVEsTUFBTSxpQkFBaUIsQ0FBQTtBQUV0QyxlQUFlLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSx3QkFBeUIsU0FBUSxhQUFhO0lBQ3JGLE1BQU0sQ0FBQyxTQUFTLEdBQUc7UUFDakIsU0FBUyxFQUFFLFNBQVMsQ0FBQyxNQUFNO1FBQzNCLEtBQUssRUFBRSxTQUFTLENBQUMsTUFBTSxDQUFDLFVBQVU7UUFDbEMsY0FBYyxFQUFFLFNBQVMsQ0FBQyxJQUFJO1FBQzlCLFNBQVMsRUFBRSxTQUFTLENBQUMsTUFBTTtLQUM1QixDQUFBO0lBRUQsS0FBSztRQUNILE1BQU0sRUFBQyxDQUFDLEVBQUMsR0FBRyxPQUFPLENBQUMsRUFBQyxTQUFTLEVBQUUsZ0NBQWdDLEVBQUMsQ0FBQyxDQUFBO1FBQ2xFLE1BQU0sRUFBQyxVQUFVLEVBQUMsR0FBRyxRQUFRLENBQUM7WUFDNUIsS0FBSyxFQUFFO2dCQUNMLFVBQVUsRUFBRSxFQUFD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RUFBRSxTQUFTLENBQUMsRUFBQyxDQUFDLENBQUE7UUFFM0QsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWM7WUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUM3RCxDQUFDLENBQUE7Q0FDRixDQUFDLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIHNvcnQtaW1wb3J0cyAqL1xuaW1wb3J0IEFwaU1ha2VySW5wdXQgZnJvbSBcIi4vaW5wdXRcIlxuaW1wb3J0IHtkaWdnfSBmcm9tIFwiZGlnZ2VyaXplXCJcbmltcG9ydCB7c2hhcGVDb21wb25lbnR9IGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9idWlsZC9zaGFwZS1jb21wb25lbnQuanNcIlxuaW1wb3J0IEJhc2VDb21wb25lbnQgZnJvbSBcIi4uL2Jhc2UtY29tcG9uZW50XCJcbmltcG9ydCBDaGVja2JveCBmcm9tIFwiLi9jaGVja2JveFwiXG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCJcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSBcImNsYXNzbmFtZXNcIiAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIGltcG9ydC9uby11bnJlc29sdmVkXG5pbXBvcnQgbWVtbyBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvYnVpbGQvbWVtby5qc1wiXG5pbXBvcnQgdXNlSTE4biBmcm9tIFwiaTE4bi1vbi1zdGVyb2lkcy9zcmMvdXNlLWkxOG4ubWpzXCJcbmltcG9ydCB1c2VJbnB1dCBmcm9tIFwiLi4vdXNlLWlucHV0LmpzXCJcblxuZXhwb3J0IGRlZmF1bHQgbWVtbyhzaGFwZUNvbXBvbmVudChjbGFzcyBBcGlNYWtlcklucHV0c0F0dGFjaG1lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgbW9kZWw6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICBvblB1cmdlQ2hhbmdlZDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgcHVyZ2VOYW1lOiBQcm9wVHlwZXMuc3RyaW5nXG4gIH1cblxuICBzZXR1cCgpIHtcbiAgICBjb25zdCB7dH0gPSB1c2VJMThuKHtuYW1lc3BhY2U6IFwianMuYXBpX21ha2VyLmlucHV0cy5hdHRhY2htZW50XCJ9KVxuICAgIGNvbnN0IHtpbnB1dFByb3BzfSA9IHVzZUlucHV0KHtcbiAgICAgIHByb3BzOiB7XG4gICAgICAgIGlucHV0UHJvcHM6IHtuYW1lOiBcIlwiLCB3cmFwcGVyT3B0czoge319LFxuICAgICAgICBpbnB1dFJlZjogdW5kZWZpbmVkLFxuICAgICAgICB0eXBlOiBcImZpbGVcIixcbiAgICAgICAgLi4udGhpcy5wcm9wc1xuICAgICAgfSxcbiAgICAgIHdyYXBwZXJPcHRpb25zOiB7dHlwZTogXCJmaWxlXCJ9XG4gICAgfSlcblxuICAgIHRoaXMuc2V0SW5zdGFuY2Uoe2lucHV0UHJvcHMsIHR9KVxuICAgIHRoaXMudXNlU3RhdGVzKHtcbiAgICAgIHB1cmdlQ2hlY2tlZDogZmFsc2VcbiAgICB9KVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtpbnB1dFByb3BzLCB0fSA9IHRoaXMudHRcbiAgICBjb25zdCB7YXR0cmlidXRlLCBjaGVja2JveENvbXBvbmVudCwgY2xhc3NOYW1lLCBsYWJlbCwgbW9kZWwsIG5hbWUsIG9uUHVyZ2VDaGFuZ2VkLCBwdXJnZU5hbWUsIHdyYXBwZXJPcHRzLCAuLi5yZXN0UHJvcHN9ID0gdGhpcy5wcm9wc1xuICAgIGNvbnN0IENoZWNrYm94Q29tcG9uZW50ID0gY2hlY2tib3hDb21wb25lbnQgfHwgQ2hlY2tib3hcbiAgICBjb25zdCBuZXdJbnB1dFByb3BzID0gT2JqZWN0LmFzc2lnbih7fSwgaW5wdXRQcm9wcywge3R5cGU6IFwiZmlsZVwifSkgLy8gZXNsaW50LWRpc2FibGUtbGluZSBwcmVmZXItb2JqZWN0LXNwcmVhZFxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWVzKFwiYXBpLW1ha2VyLS1pbnB1dHMtLWF0dGFjaG1lbnRcIiwgXCJjb21wb25lbnRzLS1pbnB1dHMtLWlucHV0XCIsIGNsYXNzTmFtZSl9IHsuLi5yZXN0UHJvcHN9PlxuICAgICAgICB7dGhpcy5pc0ltYWdlKCkgJiZcbiAgICAgICAgICA8YSBocmVmPXt0aGlzLmdldFVybCgpfSB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICAgIDxpbWcgc3JjPXt0aGlzLmdldFVybCgpfSBzdHlsZT17e21heFdpZHRoOiBcIjIwMHB4XCIsIG1heEhlaWdodDogXCIyMDBweFwifX0gLz5cbiAgICAgICAgICA8L2E+XG4gICAgICAgIH1cbiAgICAgICAge3RoaXMuZ2V0VXJsKCkgJiZcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImlucHV0LWNoZWNrYm94XCIgc3R5bGU9e3twYWRkaW5nVG9wOiBcIjE1cHhcIiwgcGFkZGluZ0JvdHRvbTogXCIxNXB4XCJ9fT5cbiAgICAgICAgICAgIDxDaGVja2JveENvbXBvbmVudCBpZD17dGhpcy5nZXRQdXJnZUlucHV0SWQoKX0gbmFtZT17dGhpcy5nZXRQdXJnZUlucHV0TmFtZSgpfSBvbkNoYW5nZT17dGhpcy5wcm9wcy5vblB1cmdlQ2hhbmdlZH0gLz5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzc05hbWU9XCJjaGVja2JveC1sYWJlbFwiIGh0bWxGb3I9e3RoaXMuZ2V0UHVyZ2VJbnB1dElkKCl9PlxuICAgICAgICAgICAgICB7dChcImpzLnNoYXJlZC5kZWxldGVcIil9XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIHshdGhpcy5zLnB1cmdlQ2hlY2tlZCAmJlxuICAgICAgICAgIDxBcGlNYWtlcklucHV0XG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU9e251bGx9XG4gICAgICAgICAgICBpbnB1dFByb3BzPXtuZXdJbnB1dFByb3BzfVxuICAgICAgICAgICAgbW9kZWw9e21vZGVsfVxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuXG4gIGdldENvbnRlbnRUeXBlKCkge1xuICAgIGNvbnN0IHthdHRyaWJ1dGUsIG1vZGVsfSA9IHRoaXMucFxuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBgJHthdHRyaWJ1dGV9Q29udGVudFR5cGVgXG5cbiAgICBpZiAoIShhdHRyaWJ1dGVOYW1lIGluIG1vZGVsKSkgdGhyb3cgbmV3IEVycm9yKGBObyBzdWNoIG1ldGhvZCBvbiAke21vZGVsLm1vZGVsQ2xhc3NEYXRhKCkubmFtZX06ICR7YXR0cmlidXRlTmFtZX1gKVxuXG4gICAgcmV0dXJuIG1vZGVsW2F0dHJpYnV0ZU5hbWVdKClcbiAgfVxuXG4gIGdldFB1cmdlSW5wdXRJZCgpIHtcbiAgICBjb25zdCB7aW5wdXRQcm9wc30gPSB0aGlzLnR0XG5cbiAgICByZXR1cm4gYCR7aW5wdXRQcm9wcy5pZH1fcHVyZ2VgXG4gIH1cblxuICBnZXRQdXJnZUlucHV0TmFtZSgpIHtcbiAgICBpZiAoXCJwdXJnZU5hbWVcIiBpbiB0aGlzLnByb3BzKSByZXR1cm4gdGhpcy5wcm9wcy5wdXJnZU5hbWVcblxuICAgIGNvbnN0IHtpbnB1dFByb3BzfSA9IHRoaXMudHRcblxuICAgIGlmICghaW5wdXRQcm9wcy5uYW1lKSByZXR1cm4gbnVsbFxuXG4gICAgY29uc3QgbWF0Y2ggPSBpbnB1dFByb3BzLm5hbWUubWF0Y2goL14oLispXFxbKC4rPylcXF0kLylcbiAgICBjb25zdCBwdXJnZUlucHV0TmFtZSA9IGAke21hdGNoWzFdfVske21hdGNoWzJdfV9wdXJnZV1gXG5cbiAgICByZXR1cm4gcHVyZ2VJbnB1dE5hbWVcbiAgfVxuXG4gIGdldFVybCgpIHtcbiAgICBjb25zdCB7YXR0cmlidXRlLCBtb2RlbH0gPSB0aGlzLnBcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lID0gYCR7YXR0cmlidXRlfVVybGBcblxuICAgIGlmICghKGF0dHJpYnV0ZU5hbWUgaW4gbW9kZWwpKSB0aHJvdyBuZXcgRXJyb3IoYE5vIHN1Y2ggbWV0aG9kIG9uICR7bW9kZWwubW9kZWxDbGFzc0RhdGEoKS5uYW1lfTogJHthdHRyaWJ1dGVOYW1lfWApXG5cbiAgICByZXR1cm4gbW9kZWxbYXR0cmlidXRlTmFtZV0oKVxuICB9XG5cbiAgaXNJbWFnZSgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRDb250ZW50VHlwZSgpPy5zdGFydHNXaXRoKFwiaW1hZ2UvXCIpXG4gIH1cblxuICBvblB1cmdlQ2hhbmdlZCA9IChlKSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7cHVyZ2VDaGVja2VkOiBkaWdnKGUsIFwidGFyZ2V0XCIsIFwiY2hlY2tlZFwiKX0pXG5cbiAgICBpZiAodGhpcy5wcm9wcy5vblB1cmdlQ2hhbmdlZCkgdGhpcy5wcm9wcy5vblB1cmdlQ2hhbmdlZChlKVxuICB9XG59KSlcbiJdfQ==
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudC5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsiaW5wdXRzL2F0dGFjaG1lbnQuanN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxpQ0FBaUM7QUFDakMsT0FBTyxhQUFhLE1BQU0sU0FBUyxDQUFBO0FBQ25DLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxXQUFXLENBQUE7QUFDOUIsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLDRDQUE0QyxDQUFBO0FBQ3pFLE9BQU8sYUFBYSxNQUFNLG1CQUFtQixDQUFBO0FBQzdDLE9BQU8sUUFBUSxNQUFNLFlBQVksQ0FBQTtBQUNqQyxPQUFPLFNBQVMsTUFBTSxZQUFZLENBQUE7QUFDbEMsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFBO0FBQ3pCLE9BQU8sVUFBVSxNQUFNLFlBQVksQ0FBQSxDQUFDLDJDQUEyQztBQUMvRSxPQUFPLElBQUksTUFBTSxpQ0FBaUMsQ0FBQTtBQUNsRCxPQUFPLE9BQU8sTUFBTSxtQ0FBbUMsQ0FBQTtBQUN2RCxPQUFPLFFBQVEsTUFBTSxpQkFBaUIsQ0FBQTtBQUV0QyxlQUFlLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSx3QkFBeUIsU0FBUSxhQUFhO0lBQ3JGLE1BQU0sQ0FBQyxTQUFTLEdBQUc7UUFDakIsU0FBUyxFQUFFLFNBQVMsQ0FBQyxNQUFNO1FBQzNCLFdBQVcsRUFBRSxTQUFTLENBQUMsTUFBTTtRQUM3QixLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU07UUFDdkIsY0FBYyxFQUFFLFNBQVMsQ0FBQyxJQUFJO1FBQzlCLFNBQVMsRUFBRSxTQUFTLENBQUMsTUFBTTtRQUMzQixHQUFHLEVBQUUsU0FBUyxDQUFDLE1BQU07S0FDdEIsQ0FBQTtJQUVELEtBQUs7UUFDSCxNQUFNLEVBQUMsQ0FBQyxFQUFDLEdBQUcsT0FBTyxDQUFDLEVBQUMsU0FBUyxFQUFFLGdDQUFnQyxFQUFDLENBQUMsQ0FBQTtRQUNsRSxNQUFNLEVBQUMsVUFBVSxFQUFDLEdBQUcsUUFBUSxDQUFDO1lBQzVCLEtBQUssRUFBRTtnQkFDTCxVQUFVLEVBQUUsRUFBQyxJQUFJLEVBQUUsRUFBRSxFQUFDO2dCQUN0QixRQUFRLEVBQUUsU0FBUztnQkFDbkIsSUFBSSxFQUFFLE1BQU07Z0JBQ1osR0FBRyxJQUFJLENBQUMsS0FBSzthQUNkO1lBQ0QsY0FBYyxFQUFFLEVBQUMsSUFBSSxFQUFFLE1BQU0sRUFBQztTQUMvQixDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUMsVUFBVSxFQUFFLENBQUMsRUFBQyxDQUFDLENBQUE7UUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLFlBQVksRUFBRSxLQUFLO1NBQ3BCLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxNQUFNO1FBQ0osTUFBTSxFQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFBO1FBQy9CLE1BQU0sRUFBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLEdBQUcsU0FBUyxFQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQTtRQUM1SixNQUFNLGlCQUFpQixHQUFHLGlCQUFpQixJQUFJLFFBQVEsQ0FBQTtRQUN2RCxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsRUFBQyxJQUFJLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQSxDQUFDLDJDQUEyQztRQUUvRyxPQUFPLENBQ0wsZUFBSyxTQUFTLEVBQUUsVUFBVSxDQUFDLCtCQUErQixFQUFFLDJCQUEyQixFQUFFLFNBQVMsQ0FBQyxLQUFNLFNBQVMsYUFDL0csSUFBSSxDQUFDLE9BQU8sRUFBRTtvQkFDYixZQUFHLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFDLFFBQVEsWUFDckMsY0FBSyxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxHQUFJLEdBQ3pFLEVBRUwsSUFBSSxDQUFDLE1BQU0sRUFBRTtvQkFDWixlQUFLLFNBQVMsRUFBQyxnQkFBZ0IsRUFBQyxLQUFLLEVBQUUsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUMsYUFDaEYsS0FBQyxpQkFBaUIsSUFBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxjQUFjLEdBQUksRUFDbkgsZ0JBQU8sU0FBUyxFQUFDLGdCQUFnQixFQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLFlBQzlELENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxHQUNoQixJQUNKLEVBRVAsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVk7b0JBQ25CLEtBQUMsYUFBYSxJQUNaLFlBQVksRUFBRSxJQUFJLEVBQ2xCLFVBQVUsRUFBRSxhQUFhLEVBQ3pCLEtBQUssRUFBRSxLQUFLLEVBQ1osSUFBSSxFQUFDLE1BQU0sR0FDWCxJQUVBLENBQ1AsQ0FBQTtJQUNILENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxhQUFhLElBQUksSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFBO1FBRTlELE1BQU0sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQTtRQUNqQyxNQUFNLGFBQWEsR0FBRyxHQUFHLFNBQVMsYUFBYSxDQUFBO1FBQy9DLE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFBO1FBRXpFLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUE7UUFFdkIsSUFBSSxDQUFDLENBQUMsYUFBYSxJQUFJLEtBQUssQ0FBQztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLGNBQWMsS0FBSyxhQUFhLEVBQUUsQ0FBQyxDQUFBO1FBRXZHLE9BQU8sS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUE7SUFDL0IsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLEVBQUMsVUFBVSxFQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQTtRQUU1QixPQUFPLEdBQUcsVUFBVSxDQUFDLEVBQUUsUUFBUSxDQUFBO0lBQ2pDLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLFdBQVcsSUFBSSxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUE7UUFFMUQsTUFBTSxFQUFDLFVBQVUsRUFBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUE7UUFFNUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJO1lBQUUsT0FBTyxJQUFJLENBQUE7UUFFakMsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUN0RCxNQUFNLGNBQWMsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtRQUV2RCxPQUFPLGNBQWMsQ0FBQTtJQUN2QixDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQTtRQUU5QyxNQUFNLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUE7UUFDakMsTUFBTSxhQUFhLEdBQUcsR0FBRyxTQUFTLEtBQUssQ0FBQTtRQUN2QyxNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQTtRQUV6RSxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFBO1FBRXZCLElBQUksQ0FBQyxDQUFDLGFBQWEsSUFBSSxLQUFLLENBQUM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixjQUFjLEtBQUssYUFBYSxFQUFFLENBQUMsQ0FBQTtRQUV2RyxPQUFPLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFBO0lBQy9CLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFFRCxjQUFjLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxFQUFDLENBQUMsQ0FBQTtRQUUzRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYztZQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQzdELENBQUMsQ0FBQTtDQUNGLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgc29ydC1pbXBvcnRzICovXG5pbXBvcnQgQXBpTWFrZXJJbnB1dCBmcm9tIFwiLi9pbnB1dFwiXG5pbXBvcnQge2RpZ2d9IGZyb20gXCJkaWdnZXJpemVcIlxuaW1wb3J0IHtzaGFwZUNvbXBvbmVudH0gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL2J1aWxkL3NoYXBlLWNvbXBvbmVudC5qc1wiXG5pbXBvcnQgQmFzZUNvbXBvbmVudCBmcm9tIFwiLi4vYmFzZS1jb21wb25lbnRcIlxuaW1wb3J0IENoZWNrYm94IGZyb20gXCIuL2NoZWNrYm94XCJcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIlxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tIFwiY2xhc3NuYW1lc1wiIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgaW1wb3J0L25vLXVucmVzb2x2ZWRcbmltcG9ydCBtZW1vIGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9idWlsZC9tZW1vLmpzXCJcbmltcG9ydCB1c2VJMThuIGZyb20gXCJpMThuLW9uLXN0ZXJvaWRzL3NyYy91c2UtaTE4bi5tanNcIlxuaW1wb3J0IHVzZUlucHV0IGZyb20gXCIuLi91c2UtaW5wdXQuanNcIlxuXG5leHBvcnQgZGVmYXVsdCBtZW1vKHNoYXBlQ29tcG9uZW50KGNsYXNzIEFwaU1ha2VySW5wdXRzQXR0YWNobWVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBjb250ZW50VHlwZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBtb2RlbDogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBvblB1cmdlQ2hhbmdlZDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgcHVyZ2VOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIHVybDogUHJvcFR5cGVzLnN0cmluZ1xuICB9XG5cbiAgc2V0dXAoKSB7XG4gICAgY29uc3Qge3R9ID0gdXNlSTE4bih7bmFtZXNwYWNlOiBcImpzLmFwaV9tYWtlci5pbnB1dHMuYXR0YWNobWVudFwifSlcbiAgICBjb25zdCB7aW5wdXRQcm9wc30gPSB1c2VJbnB1dCh7XG4gICAgICBwcm9wczoge1xuICAgICAgICBpbnB1dFByb3BzOiB7bmFtZTogXCJcIn0sXG4gICAgICAgIGlucHV0UmVmOiB1bmRlZmluZWQsXG4gICAgICAgIHR5cGU6IFwiZmlsZVwiLFxuICAgICAgICAuLi50aGlzLnByb3BzXG4gICAgICB9LFxuICAgICAgd3JhcHBlck9wdGlvbnM6IHt0eXBlOiBcImZpbGVcIn1cbiAgICB9KVxuXG4gICAgdGhpcy5zZXRJbnN0YW5jZSh7aW5wdXRQcm9wcywgdH0pXG4gICAgdGhpcy51c2VTdGF0ZXMoe1xuICAgICAgcHVyZ2VDaGVja2VkOiBmYWxzZVxuICAgIH0pXG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge2lucHV0UHJvcHMsIHR9ID0gdGhpcy50dFxuICAgIGNvbnN0IHthdHRyaWJ1dGUsIGNoZWNrYm94Q29tcG9uZW50LCBjbGFzc05hbWUsIGNvbnRlbnRUeXBlLCBpZCwgbGFiZWwsIG1vZGVsLCBuYW1lLCBvblB1cmdlQ2hhbmdlZCwgcHVyZ2VOYW1lLCB1cmwsIHdyYXBwZXJPcHRzLCAuLi5yZXN0UHJvcHN9ID0gdGhpcy5wcm9wc1xuICAgIGNvbnN0IENoZWNrYm94Q29tcG9uZW50ID0gY2hlY2tib3hDb21wb25lbnQgfHwgQ2hlY2tib3hcbiAgICBjb25zdCBuZXdJbnB1dFByb3BzID0gT2JqZWN0LmFzc2lnbih7fSwgaW5wdXRQcm9wcywge3R5cGU6IFwiZmlsZVwifSkgLy8gZXNsaW50LWRpc2FibGUtbGluZSBwcmVmZXItb2JqZWN0LXNwcmVhZFxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWVzKFwiYXBpLW1ha2VyLS1pbnB1dHMtLWF0dGFjaG1lbnRcIiwgXCJjb21wb25lbnRzLS1pbnB1dHMtLWlucHV0XCIsIGNsYXNzTmFtZSl9IHsuLi5yZXN0UHJvcHN9PlxuICAgICAgICB7dGhpcy5pc0ltYWdlKCkgJiZcbiAgICAgICAgICA8YSBocmVmPXt0aGlzLmdldFVybCgpfSB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICAgIDxpbWcgc3JjPXt0aGlzLmdldFVybCgpfSBzdHlsZT17e21heFdpZHRoOiBcIjIwMHB4XCIsIG1heEhlaWdodDogXCIyMDBweFwifX0gLz5cbiAgICAgICAgICA8L2E+XG4gICAgICAgIH1cbiAgICAgICAge3RoaXMuZ2V0VXJsKCkgJiZcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImlucHV0LWNoZWNrYm94XCIgc3R5bGU9e3twYWRkaW5nVG9wOiBcIjE1cHhcIiwgcGFkZGluZ0JvdHRvbTogXCIxNXB4XCJ9fT5cbiAgICAgICAgICAgIDxDaGVja2JveENvbXBvbmVudCBpZD17dGhpcy5nZXRQdXJnZUlucHV0SWQoKX0gbmFtZT17dGhpcy5nZXRQdXJnZUlucHV0TmFtZSgpfSBvbkNoYW5nZT17dGhpcy50dC5vblB1cmdlQ2hhbmdlZH0gLz5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzc05hbWU9XCJjaGVja2JveC1sYWJlbFwiIGh0bWxGb3I9e3RoaXMuZ2V0UHVyZ2VJbnB1dElkKCl9PlxuICAgICAgICAgICAgICB7dChcImpzLnNoYXJlZC5kZWxldGVcIil9XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIHshdGhpcy5zLnB1cmdlQ2hlY2tlZCAmJlxuICAgICAgICAgIDxBcGlNYWtlcklucHV0XG4gICAgICAgICAgICBkZWZhdWx0VmFsdWU9e251bGx9XG4gICAgICAgICAgICBpbnB1dFByb3BzPXtuZXdJbnB1dFByb3BzfVxuICAgICAgICAgICAgbW9kZWw9e21vZGVsfVxuICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuXG4gIGdldENvbnRlbnRUeXBlKCkge1xuICAgIGlmIChcImNvbnRlbnRUeXBlXCIgaW4gdGhpcy5wcm9wcykgcmV0dXJuIHRoaXMucHJvcHMuY29udGVudFR5cGVcblxuICAgIGNvbnN0IHthdHRyaWJ1dGUsIG1vZGVsfSA9IHRoaXMucFxuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBgJHthdHRyaWJ1dGV9Q29udGVudFR5cGVgXG4gICAgY29uc3QgbW9kZWxDbGFzc05hbWUgPSBtb2RlbCA/IG1vZGVsLm1vZGVsQ2xhc3NEYXRhKCkubmFtZSA6IFwiQXR0YWNobWVudFwiXG5cbiAgICBpZiAoIW1vZGVsKSByZXR1cm4gbnVsbFxuXG4gICAgaWYgKCEoYXR0cmlidXRlTmFtZSBpbiBtb2RlbCkpIHRocm93IG5ldyBFcnJvcihgTm8gc3VjaCBtZXRob2Qgb24gJHttb2RlbENsYXNzTmFtZX06ICR7YXR0cmlidXRlTmFtZX1gKVxuXG4gICAgcmV0dXJuIG1vZGVsW2F0dHJpYnV0ZU5hbWVdKClcbiAgfVxuXG4gIGdldFB1cmdlSW5wdXRJZCgpIHtcbiAgICBjb25zdCB7aW5wdXRQcm9wc30gPSB0aGlzLnR0XG5cbiAgICByZXR1cm4gYCR7aW5wdXRQcm9wcy5pZH1fcHVyZ2VgXG4gIH1cblxuICBnZXRQdXJnZUlucHV0TmFtZSgpIHtcbiAgICBpZiAoXCJwdXJnZU5hbWVcIiBpbiB0aGlzLnByb3BzKSByZXR1cm4gdGhpcy5wcm9wcy5wdXJnZU5hbWVcblxuICAgIGNvbnN0IHtpbnB1dFByb3BzfSA9IHRoaXMudHRcblxuICAgIGlmICghaW5wdXRQcm9wcy5uYW1lKSByZXR1cm4gbnVsbFxuXG4gICAgY29uc3QgbWF0Y2ggPSBpbnB1dFByb3BzLm5hbWUubWF0Y2goL14oLispXFxbKC4rPylcXF0kLylcbiAgICBjb25zdCBwdXJnZUlucHV0TmFtZSA9IGAke21hdGNoWzFdfVske21hdGNoWzJdfV9wdXJnZV1gXG5cbiAgICByZXR1cm4gcHVyZ2VJbnB1dE5hbWVcbiAgfVxuXG4gIGdldFVybCgpIHtcbiAgICBpZiAoXCJ1cmxcIiBpbiB0aGlzLnByb3BzKSByZXR1cm4gdGhpcy5wcm9wcy51cmxcblxuICAgIGNvbnN0IHthdHRyaWJ1dGUsIG1vZGVsfSA9IHRoaXMucFxuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWUgPSBgJHthdHRyaWJ1dGV9VXJsYFxuICAgIGNvbnN0IG1vZGVsQ2xhc3NOYW1lID0gbW9kZWwgPyBtb2RlbC5tb2RlbENsYXNzRGF0YSgpLm5hbWUgOiBcIkF0dGFjaG1lbnRcIlxuXG4gICAgaWYgKCFtb2RlbCkgcmV0dXJuIG51bGxcblxuICAgIGlmICghKGF0dHJpYnV0ZU5hbWUgaW4gbW9kZWwpKSB0aHJvdyBuZXcgRXJyb3IoYE5vIHN1Y2ggbWV0aG9kIG9uICR7bW9kZWxDbGFzc05hbWV9OiAke2F0dHJpYnV0ZU5hbWV9YClcblxuICAgIHJldHVybiBtb2RlbFthdHRyaWJ1dGVOYW1lXSgpXG4gIH1cblxuICBpc0ltYWdlKCkge1xuICAgIHJldHVybiB0aGlzLmdldENvbnRlbnRUeXBlKCk/LnN0YXJ0c1dpdGgoXCJpbWFnZS9cIilcbiAgfVxuXG4gIG9uUHVyZ2VDaGFuZ2VkID0gKGUpID0+IHtcbiAgICB0aGlzLnNldFN0YXRlKHtwdXJnZUNoZWNrZWQ6IGRpZ2coZSwgXCJ0YXJnZXRcIiwgXCJjaGVja2VkXCIpfSlcblxuICAgIGlmICh0aGlzLnByb3BzLm9uUHVyZ2VDaGFuZ2VkKSB0aGlzLnByb3BzLm9uUHVyZ2VDaGFuZ2VkKGUpXG4gIH1cbn0pKVxuIl19
|