@onepercentio/one-ui 1.2.1 → 1.2.2
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/WebpackConfigs/email-templates.js +33 -22
- package/WebpackConfigs/loaders/static-loader.js +10 -3
- package/dist/components/Input/Input.js +12 -3
- package/dist/context/OneUIProvider.d.ts +2 -2
- package/dist/context/OneUIProvider.js +1 -1
- package/dist-ts/components/Input/Input.js +4 -2
- package/dist-ts/components/Input/Input.js.map +1 -1
- package/dist-ts/context/OneUIProvider.d.ts +2 -2
- package/package.json +1 -1
|
@@ -5,7 +5,18 @@ process.env.NODE_ENV =
|
|
|
5
5
|
: "production");
|
|
6
6
|
const { resolveFromMainContext } = require("./workarounds");
|
|
7
7
|
require("./monkeypatch");
|
|
8
|
+
const chalk = require("chalk");
|
|
8
9
|
const { join, relative, resolve } = require("path");
|
|
10
|
+
try {
|
|
11
|
+
require(resolveFromMainContext("html-webpack-plugin"));
|
|
12
|
+
} catch (error) {
|
|
13
|
+
throw new Error(
|
|
14
|
+
chalk.white(
|
|
15
|
+
`There was a problem loading the module ${chalk.red(chalk.bold("html-webpack-plugin"))} (Check the error above).
|
|
16
|
+
Make sure it's installed as it is important for generating the final HTML files.`,
|
|
17
|
+
),
|
|
18
|
+
);
|
|
19
|
+
}
|
|
9
20
|
const HTMLPlugin = require(resolveFromMainContext("html-webpack-plugin"));
|
|
10
21
|
const {
|
|
11
22
|
writeFileSync,
|
|
@@ -17,7 +28,6 @@ const {
|
|
|
17
28
|
} = require("fs");
|
|
18
29
|
const lodash = require("lodash");
|
|
19
30
|
const { findPathDeep } = require("deepdash")(lodash);
|
|
20
|
-
const chalk = require("chalk");
|
|
21
31
|
|
|
22
32
|
function findAllStaticGeneration() {
|
|
23
33
|
const glob = require("glob");
|
|
@@ -49,11 +59,12 @@ async function loadGenerator() {
|
|
|
49
59
|
})();
|
|
50
60
|
return await (configGenerator.default || configGenerator)(
|
|
51
61
|
resolve("."),
|
|
52
|
-
process.env.NODE_ENV
|
|
62
|
+
process.env.NODE_ENV,
|
|
53
63
|
);
|
|
54
64
|
} catch (e) {
|
|
55
65
|
switch (e.code) {
|
|
56
66
|
case "MODULE_NOT_FOUND":
|
|
67
|
+
case "ERR_MODULE_NOT_FOUND":
|
|
57
68
|
if (e.message.split("\n")[0].includes("config-factory")) {
|
|
58
69
|
const ans = await require("inquirer").prompt([
|
|
59
70
|
{
|
|
@@ -74,14 +85,14 @@ async function loadGenerator() {
|
|
|
74
85
|
config,
|
|
75
86
|
mainHtml
|
|
76
87
|
}
|
|
77
|
-
}
|
|
88
|
+
}`,
|
|
78
89
|
);
|
|
79
90
|
console.log(require("chalk").green("File created"));
|
|
80
91
|
} else {
|
|
81
92
|
console.log(
|
|
82
93
|
require("chalk").yellow(
|
|
83
|
-
"This command will only work when there is a valid configuration"
|
|
84
|
-
)
|
|
94
|
+
"This command will only work when there is a valid configuration",
|
|
95
|
+
),
|
|
85
96
|
);
|
|
86
97
|
}
|
|
87
98
|
process.exit(0);
|
|
@@ -104,11 +115,11 @@ function findFirstBabelLoaderConfigPath(config) {
|
|
|
104
115
|
function prerenderRequire() {
|
|
105
116
|
try {
|
|
106
117
|
return resolveFromMainContext(
|
|
107
|
-
"@nettoolkit/prerender-loader" // This supports webpack 5
|
|
118
|
+
"@nettoolkit/prerender-loader", // This supports webpack 5
|
|
108
119
|
);
|
|
109
120
|
} catch (e) {
|
|
110
121
|
return resolveFromMainContext(
|
|
111
|
-
"prerender-loader" // This doesn't
|
|
122
|
+
"prerender-loader", // This doesn't
|
|
112
123
|
);
|
|
113
124
|
}
|
|
114
125
|
}
|
|
@@ -126,11 +137,11 @@ async function createConfig(
|
|
|
126
137
|
/** @type {number} */
|
|
127
138
|
maxParallelTasks,
|
|
128
139
|
/** @type {() => Promise<string[]>} */
|
|
129
|
-
filterResults = async (results) => results
|
|
140
|
+
filterResults = async (results) => results,
|
|
130
141
|
) {
|
|
131
142
|
if (!process.env.EMAIL_TEMPLATES_BASE_DOMAIN)
|
|
132
143
|
throw new Error(
|
|
133
|
-
`The env variable "EMAIL_TEMPLATES_BASE_DOMAIN" is not set (ex: https://localhost:3000). It's required for pointing to the image resources correctly
|
|
144
|
+
`The env variable "EMAIL_TEMPLATES_BASE_DOMAIN" is not set (ex: https://localhost:3000). It's required for pointing to the image resources correctly`,
|
|
134
145
|
);
|
|
135
146
|
if (!existsSync(outputDir)) mkdirSync(outputDir, { recursive: true });
|
|
136
147
|
|
|
@@ -140,7 +151,7 @@ async function createConfig(
|
|
|
140
151
|
const onlyHTMLs = !outputFolderFiles.some(
|
|
141
152
|
(file) =>
|
|
142
153
|
lstatSync(join(outputDir, file)).isDirectory() ||
|
|
143
|
-
!file.endsWith(".html")
|
|
154
|
+
!file.endsWith(".html"),
|
|
144
155
|
);
|
|
145
156
|
if (onlyHTMLs) {
|
|
146
157
|
rmSync(outputDir, {
|
|
@@ -158,8 +169,8 @@ async function createConfig(
|
|
|
158
169
|
baseConfig.plugins = baseConfig.plugins.filter(
|
|
159
170
|
(a) =>
|
|
160
171
|
!["ManifestPlugin", "MiniCss"].find((pattern) =>
|
|
161
|
-
a.constructor.name.includes(pattern)
|
|
162
|
-
)
|
|
172
|
+
a.constructor.name.includes(pattern),
|
|
173
|
+
),
|
|
163
174
|
);
|
|
164
175
|
/** @type {import("webpack").WebpackPluginInstance} */
|
|
165
176
|
const LogPlugin = {
|
|
@@ -168,7 +179,7 @@ async function createConfig(
|
|
|
168
179
|
compiler.hooks.afterEmit.tap("Logger", (compilation) => {
|
|
169
180
|
console.log(chalk.green("Output successfull"));
|
|
170
181
|
const htmls = Object.keys(compilation.assets).filter((a) =>
|
|
171
|
-
a.endsWith(".html")
|
|
182
|
+
a.endsWith(".html"),
|
|
172
183
|
);
|
|
173
184
|
const lazyFindPort = process.argv.find((a) => a === "--port");
|
|
174
185
|
const port = process.argv[process.argv.indexOf(lazyFindPort) + 1];
|
|
@@ -190,7 +201,7 @@ async function createConfig(
|
|
|
190
201
|
? baseConfig.module.rules
|
|
191
202
|
: lodash.get(
|
|
192
203
|
baseConfig.module.rules,
|
|
193
|
-
babelLoaderPath.slice(0, indexOfOneOf + 5)
|
|
204
|
+
babelLoaderPath.slice(0, indexOfOneOf + 5),
|
|
194
205
|
);
|
|
195
206
|
|
|
196
207
|
whereToPlaceTheNewLoaderPath.splice(1, 0, {
|
|
@@ -315,7 +326,7 @@ async function createConfig(
|
|
|
315
326
|
|
|
316
327
|
if (!baseConfig.resolve.alias) baseConfig.resolve.alias = {};
|
|
317
328
|
baseConfig.resolve.alias.CSSInliner = require.resolve(
|
|
318
|
-
join(__dirname, "scripts", "css-inliner.ts")
|
|
329
|
+
join(__dirname, "scripts", "css-inliner.ts"),
|
|
319
330
|
);
|
|
320
331
|
|
|
321
332
|
baseConfig.output.filename = `[name].js`;
|
|
@@ -326,12 +337,12 @@ async function createConfig(
|
|
|
326
337
|
baseConfig.plugins = baseConfig.plugins.filter(
|
|
327
338
|
(a) =>
|
|
328
339
|
!["ModuleFederationPlugin", "SourceMapDevToolPlugin"].includes(
|
|
329
|
-
a.constructor.name
|
|
330
|
-
)
|
|
340
|
+
a.constructor.name,
|
|
341
|
+
),
|
|
331
342
|
);
|
|
332
343
|
|
|
333
344
|
const providePlugin = baseConfig.plugins.find(
|
|
334
|
-
(a) => a.constructor.name === "ProvidePlugin"
|
|
345
|
+
(a) => a.constructor.name === "ProvidePlugin",
|
|
335
346
|
);
|
|
336
347
|
|
|
337
348
|
if (providePlugin) delete providePlugin.definitions.process;
|
|
@@ -344,9 +355,9 @@ function checkTemplatesCount(webpackEntry) {
|
|
|
344
355
|
console.log(
|
|
345
356
|
chalk.green(
|
|
346
357
|
`No templates were found. If you want to create a static template, please create a file with name ${chalk.white(
|
|
347
|
-
"{htmlName}.static.tsx"
|
|
348
|
-
)} (ex: some-template.static.tsx)
|
|
349
|
-
)
|
|
358
|
+
"{htmlName}.static.tsx",
|
|
359
|
+
)} (ex: some-template.static.tsx)`,
|
|
360
|
+
),
|
|
350
361
|
);
|
|
351
362
|
process.exit(0);
|
|
352
363
|
}
|
|
@@ -370,7 +381,7 @@ module.exports = async function initEmailWebpack() {
|
|
|
370
381
|
outputDir,
|
|
371
382
|
resourcesOnly,
|
|
372
383
|
maxParallelTasks,
|
|
373
|
-
templatesFilter
|
|
384
|
+
templatesFilter,
|
|
374
385
|
);
|
|
375
386
|
checkTemplatesCount(config.entry);
|
|
376
387
|
return config;
|
|
@@ -6,15 +6,22 @@ module.exports = function (content) {
|
|
|
6
6
|
} = getOptions(this);
|
|
7
7
|
content = content.replace("export default ", "");
|
|
8
8
|
const [_, functionName] = /function ([a-zA-Z0-9]+)\(/.exec(content);
|
|
9
|
-
content = `import
|
|
9
|
+
content = `import * as DOM from 'react-dom';
|
|
10
|
+
import * as ClientDOM from 'react-dom/client';
|
|
10
11
|
import React from 'react';
|
|
11
12
|
import InlineCSS from "CSSInliner";
|
|
12
13
|
window.PRERENDER = window.PRERENDER || true
|
|
13
|
-
|
|
14
|
+
const { render } = DOM;
|
|
15
|
+
const { createRoot } = ClientDOM;
|
|
14
16
|
${content}
|
|
15
17
|
export default function Load() {
|
|
16
18
|
return new Promise((r) => {
|
|
17
|
-
|
|
19
|
+
if (!!createRoot) {
|
|
20
|
+
createRoot(document.body).render(<${functionName}/>)
|
|
21
|
+
} else {
|
|
22
|
+
render(<${functionName}/>, document.body);
|
|
23
|
+
}
|
|
24
|
+
|
|
18
25
|
${inlineCSS ? `InlineCSS();` : ""}
|
|
19
26
|
r();
|
|
20
27
|
})
|
|
@@ -49,10 +49,16 @@ function _Input(_ref, ref) {
|
|
|
49
49
|
}
|
|
50
50
|
}, [autoFocus]);
|
|
51
51
|
const Component = multiline ? "textarea" : "input";
|
|
52
|
+
const containerRef = (0, _react.useRef)(null);
|
|
53
|
+
const maxWidth = (0, _react.useMemo)(() => {
|
|
54
|
+
var _containerRef$current;
|
|
55
|
+
return (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.getBoundingClientRect().width;
|
|
56
|
+
}, [error, disclaimer]);
|
|
52
57
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
53
58
|
className: "".concat(className.container, " ").concat(localClassName)
|
|
54
59
|
}, /*#__PURE__*/_react.default.createElement("div", _extends({
|
|
55
|
-
className: "".concat(_InputModule.default.inputContainer, " ").concat(false ? _InputModule.default.withIcon : "")
|
|
60
|
+
className: "".concat(_InputModule.default.inputContainer, " ").concat(false ? _InputModule.default.withIcon : ""),
|
|
61
|
+
ref: containerRef
|
|
56
62
|
}, containerProps), decoration, /*#__PURE__*/_react.default.createElement(Component, _extends({
|
|
57
63
|
ref: inputRef,
|
|
58
64
|
placeholder: placeholder,
|
|
@@ -72,7 +78,10 @@ function _Input(_ref, ref) {
|
|
|
72
78
|
}, Icon), icon && /*#__PURE__*/_react.default.createElement("img", _extends({
|
|
73
79
|
className: _InputModule.default.icon
|
|
74
80
|
}, icon))), /*#__PURE__*/_react.default.createElement(_AdaptiveContainer.default, {
|
|
75
|
-
direction: "v"
|
|
81
|
+
direction: "v",
|
|
82
|
+
style: {
|
|
83
|
+
maxWidth: maxWidth
|
|
84
|
+
}
|
|
76
85
|
}, error && shouldShowError ? /*#__PURE__*/_react.default.createElement(_Text.default, {
|
|
77
86
|
key: "error",
|
|
78
87
|
title: typeof error === "string" ? error : "",
|
|
@@ -91,4 +100,4 @@ function _Input(_ref, ref) {
|
|
|
91
100
|
**/
|
|
92
101
|
const Input = /*#__PURE__*/(0, _react.forwardRef)(_Input);
|
|
93
102
|
var _default = exports.default = Input;
|
|
94
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfT25lVUlQcm92aWRlciIsIl9UZXh0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9JbnB1dE1vZHVsZSIsIl9BZGFwdGl2ZUNvbnRhaW5lciIsIl9leGNsdWRlZCIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJoYXMiLCJnZXQiLCJzZXQiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIl9leHRlbmRzIiwiYXNzaWduIiwiYmluZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFwcGx5IiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpbmRleE9mIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJfSW5wdXQiLCJfcmVmIiwicmVmIiwiX3ZhcmlhbnRzJGVycm9yIiwiX3ZhcmlhbnRzJGRpc2NsYWltZXIiLCJlcnJvciIsInBsYWNlaG9sZGVyIiwiaGlkZUVycm9yIiwiaWNvbiIsIkljb24iLCJhdXRvRm9jdXMiLCJkaXNjbGFpbWVyIiwibXVsdGlsaW5lIiwiZGVjb3JhdGlvbiIsImNvbnRhaW5lclByb3BzIiwiY2xhc3NOYW1lIiwibG9jYWxDbGFzc05hbWUiLCJvdGhlclByb3BzIiwidXNlT25lVUlDb25maWciLCJ2YXJpYW50cyIsImZvY3VzZWQiLCJzZXRGb2N1c2VkIiwidXNlU3RhdGUiLCJpbnB1dFJlZiIsInVzZVJlZiIsInVzZUltcGVyYXRpdmVIYW5kbGUiLCJjdXJyZW50Iiwic2hvdWxkU2hvd0Vycm9yIiwidXNlTWVtbyIsInVzZUVmZmVjdCIsInNldFRpbWVvdXQiLCJmb2N1cyIsImNsZWFyVGltZW91dCIsIkNvbXBvbmVudCIsImNyZWF0ZUVsZW1lbnQiLCJjb25jYXQiLCJjb250YWluZXIiLCJTdHlsZXMiLCJpbnB1dENvbnRhaW5lciIsIndpdGhJY29uIiwicm93cyIsImlucHV0Iiwib25Gb2N1cyIsIm9uQmx1ciIsImRpcmVjdGlvbiIsImtleSIsInRpdGxlIiwidHlwZSIsIkZyYWdtZW50IiwiSW5wdXQiLCJmb3J3YXJkUmVmIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSW5wdXQvSW5wdXQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBDaGFuZ2VFdmVudEhhbmRsZXIsXG4gIERldGFpbGVkSFRNTFByb3BzLFxuICBGb3J3YXJkZWRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEZyYWdtZW50LFxuICBSZWFjdEVsZW1lbnQsXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyB1c2VPbmVVSUNvbmZpZyB9IGZyb20gXCIuLi8uLi9jb250ZXh0L09uZVVJUHJvdmlkZXJcIjtcbmltcG9ydCBUZXh0IGZyb20gXCIuLi9UZXh0XCI7XG5pbXBvcnQgU3R5bGVzIGZyb20gXCIuL0lucHV0Lm1vZHVsZS5zY3NzXCI7XG5pbXBvcnQgQWRhcHRpdmVDb250YWluZXIgZnJvbSBcIi4uL0FkYXB0aXZlQ29udGFpbmVyXCI7XG5cbmV4cG9ydCB0eXBlIElucHV0UHJvcHMgPSB7XG4gIGRlY29yYXRpb24/OiBSZWFjdC5SZWFjdEVsZW1lbnQgfCBudWxsO1xuICBlcnJvcj86IHN0cmluZyB8IFJlYWN0RWxlbWVudDtcbiAgaGlkZUVycm9yPzogXCJvbmZvY3VzXCI7XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICBkaXNjbGFpbWVyPzogc3RyaW5nIHwgUmVhY3RFbGVtZW50O1xuICBtdWx0aWxpbmU/OiBudW1iZXI7XG4gIGljb24/OiB7XG4gICAgb25DbGljaz86ICgpID0+IHZvaWQ7XG4gIH0gJiBEZXRhaWxlZEhUTUxQcm9wczxSZWFjdC5JbWdIVE1MQXR0cmlidXRlczxIVE1MSW1hZ2VFbGVtZW50PiwgYW55PjtcbiAgSWNvbj86IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgb25DaGFuZ2U/OiBDaGFuZ2VFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+O1xuICBjb250YWluZXJQcm9wcz86IE9taXQ8UmVhY3QuSFRNTFByb3BzPEhUTUxEaXZFbGVtZW50PiwgXCJyZWZcIj47XG4gIHZhbHVlPzogc3RyaW5nO1xuICBcImRhdGEtdGVzdGlkXCI/OiBzdHJpbmc7XG59ICYgT21pdDxcbiAgUmVhY3QuSFRNTFByb3BzPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PixcbiAgXCJyZWZcIiB8IFwib25DaGFuZ2VcIiB8IFwidmFsdWVcIlxuPjtcbmZ1bmN0aW9uIF9JbnB1dChcbiAge1xuICAgIGVycm9yLFxuICAgIHBsYWNlaG9sZGVyID0gXCIgXCIsXG4gICAgaGlkZUVycm9yLFxuICAgIGljb24sXG4gICAgSWNvbixcbiAgICBhdXRvRm9jdXMsXG4gICAgZGlzY2xhaW1lcixcbiAgICBtdWx0aWxpbmUsXG4gICAgZGVjb3JhdGlvbiA9IG51bGwsXG4gICAgY29udGFpbmVyUHJvcHMsXG4gICAgY2xhc3NOYW1lOiBsb2NhbENsYXNzTmFtZSxcbiAgICAuLi5vdGhlclByb3BzXG4gIH06IElucHV0UHJvcHMsXG4gIHJlZjogRm9yd2FyZGVkUmVmPGFueT4sXG4pIHtcbiAgY29uc3QgY2xhc3NOYW1lID0gdXNlT25lVUlDb25maWcoXCJjb21wb25lbnQuaW5wdXQuY2xhc3NOYW1lXCIsIHt9KTtcbiAgY29uc3QgdmFyaWFudHMgPSB1c2VPbmVVSUNvbmZpZyhcImNvbXBvbmVudC5pbnB1dC5sYWJlbFZhcmlhbnRzXCIsIHt9KTtcbiAgY29uc3QgW2ZvY3VzZWQsIHNldEZvY3VzZWRdID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBpbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD4obnVsbCk7XG4gIHVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCAoKSA9PiBpbnB1dFJlZi5jdXJyZW50LCBbXSk7XG4gIGNvbnN0IHNob3VsZFNob3dFcnJvciA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChoaWRlRXJyb3IgPT09IFwib25mb2N1c1wiKSByZXR1cm4gIWZvY3VzZWQ7XG4gICAgcmV0dXJuICEhZXJyb3I7XG4gIH0sIFtmb2N1c2VkLCBlcnJvciwgaGlkZUVycm9yXSk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGF1dG9Gb2N1cykge1xuICAgICAgY29uc3QgdCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBpbnB1dFJlZi5jdXJyZW50IS5mb2N1cygpO1xuICAgICAgfSwgNTAwKTtcbiAgICAgIHJldHVybiAoKSA9PiBjbGVhclRpbWVvdXQodCk7XG4gICAgfVxuICB9LCBbYXV0b0ZvY3VzXSk7XG4gIGNvbnN0IENvbXBvbmVudCA9IG11bHRpbGluZSA/IFwidGV4dGFyZWFcIiA6IFwiaW5wdXRcIjtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lLmNvbnRhaW5lcn0gJHtsb2NhbENsYXNzTmFtZX1gfT5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXtgJHtTdHlsZXMuaW5wdXRDb250YWluZXJ9ICR7ZmFsc2UgPyBTdHlsZXMud2l0aEljb24gOiBcIlwifWB9XG4gICAgICAgIHsuLi5jb250YWluZXJQcm9wc31cbiAgICAgID5cbiAgICAgICAge2RlY29yYXRpb259XG4gICAgICAgIDxDb21wb25lbnRcbiAgICAgICAgICByZWY9e2lucHV0UmVmIGFzIGFueX1cbiAgICAgICAgICBwbGFjZWhvbGRlcj17cGxhY2Vob2xkZXJ9XG4gICAgICAgICAgcm93cz17bXVsdGlsaW5lfVxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lLmlucHV0fVxuICAgICAgICAgIHsuLi5vdGhlclByb3BzfVxuICAgICAgICAgIG9uRm9jdXM9eyhlKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkKHRydWUpO1xuICAgICAgICAgICAgaWYgKG90aGVyUHJvcHMub25Gb2N1cykgb3RoZXJQcm9wcy5vbkZvY3VzKGUpO1xuICAgICAgICAgIH19XG4gICAgICAgICAgb25CbHVyPXsoZSkgPT4ge1xuICAgICAgICAgICAgc2V0Rm9jdXNlZChmYWxzZSk7XG4gICAgICAgICAgICBpZiAob3RoZXJQcm9wcy5vbkJsdXIpIG90aGVyUHJvcHMub25CbHVyKGUpO1xuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIHtJY29uICYmIDxkaXYgY2xhc3NOYW1lPXtTdHlsZXMuaWNvbn0+e0ljb259PC9kaXY+fVxuICAgICAgICB7aWNvbiAmJiA8aW1nIGNsYXNzTmFtZT17U3R5bGVzLmljb259IHsuLi5pY29ufSAvPn1cbiAgICAgIDwvZGl2PlxuICAgICAgPEFkYXB0aXZlQ29udGFpbmVyIGRpcmVjdGlvbj1cInZcIj5cbiAgICAgICAge2Vycm9yICYmIHNob3VsZFNob3dFcnJvciA/IChcbiAgICAgICAgICA8VGV4dFxuICAgICAgICAgICAga2V5PXtcImVycm9yXCJ9XG4gICAgICAgICAgICB0aXRsZT17dHlwZW9mIGVycm9yID09PSBcInN0cmluZ1wiID8gZXJyb3IgOiBcIlwifVxuICAgICAgICAgICAgdHlwZT17dmFyaWFudHMuZXJyb3IgPz8gXCJlcnJvclwifVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtlcnJvcn1cbiAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICkgOiBkaXNjbGFpbWVyID8gKFxuICAgICAgICAgIDxUZXh0XG4gICAgICAgICAgICBrZXk9e1widFwifVxuICAgICAgICAgICAgdGl0bGU9e3R5cGVvZiBkaXNjbGFpbWVyID09PSBcInN0cmluZ1wiID8gZGlzY2xhaW1lciA6IFwiXCJ9XG4gICAgICAgICAgICB0eXBlPXt2YXJpYW50cy5kaXNjbGFpbWVyID8/IFwiY2FwdGlvblwifVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtkaXNjbGFpbWVyfVxuICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8RnJhZ21lbnQga2V5PXtcImVcIn0gLz5cbiAgICAgICAgKX1cbiAgICAgIDwvQWRhcHRpdmVDb250YWluZXI+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbi8qKlxuICogQSB0cmFuc3BhcmVudCBpbnB1dCB3aXRoIHNvbWUgcHJlYnVpbHQgc3RhdGVzIGNvbW1vbiB0byB0aGUgYXBwbGljYXRpb25cbiAqKi9cbmNvbnN0IElucHV0ID0gZm9yd2FyZFJlZihfSW5wdXQpO1xuZXhwb3J0IGRlZmF1bHQgSW5wdXQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQWFBLElBQUFDLGNBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLFlBQUEsR0FBQUQsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFLLGtCQUFBLEdBQUFGLHNCQUFBLENBQUFILE9BQUE7QUFBcUQsTUFBQU0sU0FBQTtBQUFBLFNBQUFILHVCQUFBSSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBQUEsU0FBQVIsd0JBQUFRLENBQUEsRUFBQUcsQ0FBQSw2QkFBQUMsT0FBQSxNQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFaLHVCQUFBLFlBQUFBLENBQUFRLENBQUEsRUFBQUcsQ0FBQSxTQUFBQSxDQUFBLElB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
|
|
103
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfT25lVUlQcm92aWRlciIsIl9UZXh0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9JbnB1dE1vZHVsZSIsIl9BZGFwdGl2ZUNvbnRhaW5lciIsIl9leGNsdWRlZCIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJoYXMiLCJnZXQiLCJzZXQiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIl9leHRlbmRzIiwiYXNzaWduIiwiYmluZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFwcGx5IiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpbmRleE9mIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJfSW5wdXQiLCJfcmVmIiwicmVmIiwiX3ZhcmlhbnRzJGVycm9yIiwiX3ZhcmlhbnRzJGRpc2NsYWltZXIiLCJlcnJvciIsInBsYWNlaG9sZGVyIiwiaGlkZUVycm9yIiwiaWNvbiIsIkljb24iLCJhdXRvRm9jdXMiLCJkaXNjbGFpbWVyIiwibXVsdGlsaW5lIiwiZGVjb3JhdGlvbiIsImNvbnRhaW5lclByb3BzIiwiY2xhc3NOYW1lIiwibG9jYWxDbGFzc05hbWUiLCJvdGhlclByb3BzIiwidXNlT25lVUlDb25maWciLCJ2YXJpYW50cyIsImZvY3VzZWQiLCJzZXRGb2N1c2VkIiwidXNlU3RhdGUiLCJpbnB1dFJlZiIsInVzZVJlZiIsInVzZUltcGVyYXRpdmVIYW5kbGUiLCJjdXJyZW50Iiwic2hvdWxkU2hvd0Vycm9yIiwidXNlTWVtbyIsInVzZUVmZmVjdCIsInNldFRpbWVvdXQiLCJmb2N1cyIsImNsZWFyVGltZW91dCIsIkNvbXBvbmVudCIsImNvbnRhaW5lclJlZiIsIm1heFdpZHRoIiwiX2NvbnRhaW5lclJlZiRjdXJyZW50IiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0Iiwid2lkdGgiLCJjcmVhdGVFbGVtZW50IiwiY29uY2F0IiwiY29udGFpbmVyIiwiU3R5bGVzIiwiaW5wdXRDb250YWluZXIiLCJ3aXRoSWNvbiIsInJvd3MiLCJpbnB1dCIsIm9uRm9jdXMiLCJvbkJsdXIiLCJkaXJlY3Rpb24iLCJzdHlsZSIsImtleSIsInRpdGxlIiwidHlwZSIsIkZyYWdtZW50IiwiSW5wdXQiLCJmb3J3YXJkUmVmIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSW5wdXQvSW5wdXQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBDaGFuZ2VFdmVudEhhbmRsZXIsXG4gIENvbXBvbmVudFJlZixcbiAgRGV0YWlsZWRIVE1MUHJvcHMsXG4gIEZvcndhcmRlZFJlZixcbiAgZm9yd2FyZFJlZixcbiAgRnJhZ21lbnQsXG4gIFJlYWN0RWxlbWVudCxcbiAgdXNlRWZmZWN0LFxuICB1c2VJbXBlcmF0aXZlSGFuZGxlLFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHVzZU9uZVVJQ29uZmlnIH0gZnJvbSBcIi4uLy4uL2NvbnRleHQvT25lVUlQcm92aWRlclwiO1xuaW1wb3J0IFRleHQgZnJvbSBcIi4uL1RleHRcIjtcbmltcG9ydCBTdHlsZXMgZnJvbSBcIi4vSW5wdXQubW9kdWxlLnNjc3NcIjtcbmltcG9ydCBBZGFwdGl2ZUNvbnRhaW5lciBmcm9tIFwiLi4vQWRhcHRpdmVDb250YWluZXJcIjtcblxuZXhwb3J0IHR5cGUgSW5wdXRQcm9wcyA9IHtcbiAgZGVjb3JhdGlvbj86IFJlYWN0LlJlYWN0RWxlbWVudCB8IG51bGw7XG4gIGVycm9yPzogc3RyaW5nIHwgUmVhY3RFbGVtZW50O1xuICBoaWRlRXJyb3I/OiBcIm9uZm9jdXNcIjtcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIGRpc2NsYWltZXI/OiBzdHJpbmcgfCBSZWFjdEVsZW1lbnQ7XG4gIG11bHRpbGluZT86IG51bWJlcjtcbiAgaWNvbj86IHtcbiAgICBvbkNsaWNrPzogKCkgPT4gdm9pZDtcbiAgfSAmIERldGFpbGVkSFRNTFByb3BzPFJlYWN0LkltZ0hUTUxBdHRyaWJ1dGVzPEhUTUxJbWFnZUVsZW1lbnQ+LCBhbnk+O1xuICBJY29uPzogUmVhY3QuUmVhY3RFbGVtZW50O1xuICBvbkNoYW5nZT86IENoYW5nZUV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50IHwgSFRNTFRleHRBcmVhRWxlbWVudD47XG4gIGNvbnRhaW5lclByb3BzPzogT21pdDxSZWFjdC5IVE1MUHJvcHM8SFRNTERpdkVsZW1lbnQ+LCBcInJlZlwiPjtcbiAgdmFsdWU/OiBzdHJpbmc7XG4gIFwiZGF0YS10ZXN0aWRcIj86IHN0cmluZztcbn0gJiBPbWl0PFxuICBSZWFjdC5IVE1MUHJvcHM8SFRNTElucHV0RWxlbWVudCB8IEhUTUxUZXh0QXJlYUVsZW1lbnQ+LFxuICBcInJlZlwiIHwgXCJvbkNoYW5nZVwiIHwgXCJ2YWx1ZVwiXG4+O1xuZnVuY3Rpb24gX0lucHV0KFxuICB7XG4gICAgZXJyb3IsXG4gICAgcGxhY2Vob2xkZXIgPSBcIiBcIixcbiAgICBoaWRlRXJyb3IsXG4gICAgaWNvbixcbiAgICBJY29uLFxuICAgIGF1dG9Gb2N1cyxcbiAgICBkaXNjbGFpbWVyLFxuICAgIG11bHRpbGluZSxcbiAgICBkZWNvcmF0aW9uID0gbnVsbCxcbiAgICBjb250YWluZXJQcm9wcyxcbiAgICBjbGFzc05hbWU6IGxvY2FsQ2xhc3NOYW1lLFxuICAgIC4uLm90aGVyUHJvcHNcbiAgfTogSW5wdXRQcm9wcyxcbiAgcmVmOiBGb3J3YXJkZWRSZWY8YW55Pixcbikge1xuICBjb25zdCBjbGFzc05hbWUgPSB1c2VPbmVVSUNvbmZpZyhcImNvbXBvbmVudC5pbnB1dC5jbGFzc05hbWVcIiwge30pO1xuICBjb25zdCB2YXJpYW50cyA9IHVzZU9uZVVJQ29uZmlnKFwiY29tcG9uZW50LmlucHV0LmxhYmVsVmFyaWFudHNcIiwge30pO1xuICBjb25zdCBbZm9jdXNlZCwgc2V0Rm9jdXNlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IGlucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQgfCBIVE1MVGV4dEFyZWFFbGVtZW50PihudWxsKTtcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZShyZWYsICgpID0+IGlucHV0UmVmLmN1cnJlbnQsIFtdKTtcbiAgY29uc3Qgc2hvdWxkU2hvd0Vycm9yID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGhpZGVFcnJvciA9PT0gXCJvbmZvY3VzXCIpIHJldHVybiAhZm9jdXNlZDtcbiAgICByZXR1cm4gISFlcnJvcjtcbiAgfSwgW2ZvY3VzZWQsIGVycm9yLCBoaWRlRXJyb3JdKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoYXV0b0ZvY3VzKSB7XG4gICAgICBjb25zdCB0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlucHV0UmVmLmN1cnJlbnQhLmZvY3VzKCk7XG4gICAgICB9LCA1MDApO1xuICAgICAgcmV0dXJuICgpID0+IGNsZWFyVGltZW91dCh0KTtcbiAgICB9XG4gIH0sIFthdXRvRm9jdXNdKTtcbiAgY29uc3QgQ29tcG9uZW50ID0gbXVsdGlsaW5lID8gXCJ0ZXh0YXJlYVwiIDogXCJpbnB1dFwiO1xuICBjb25zdCBjb250YWluZXJSZWYgPSB1c2VSZWY8Q29tcG9uZW50UmVmPFwiZGl2XCI+PihudWxsKTtcbiAgY29uc3QgbWF4V2lkdGggPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbnRhaW5lclJlZi5jdXJyZW50Py5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCxcbiAgICBbZXJyb3IsIGRpc2NsYWltZXJdLFxuICApO1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtjbGFzc05hbWUuY29udGFpbmVyfSAke2xvY2FsQ2xhc3NOYW1lfWB9PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e2Ake1N0eWxlcy5pbnB1dENvbnRhaW5lcn0gJHtmYWxzZSA/IFN0eWxlcy53aXRoSWNvbiA6IFwiXCJ9YH1cbiAgICAgICAgcmVmPXtjb250YWluZXJSZWZ9XG4gICAgICAgIHsuLi5jb250YWluZXJQcm9wc31cbiAgICAgID5cbiAgICAgICAge2RlY29yYXRpb259XG4gICAgICAgIDxDb21wb25lbnRcbiAgICAgICAgICByZWY9e2lucHV0UmVmIGFzIGFueX1cbiAgICAgICAgICBwbGFjZWhvbGRlcj17cGxhY2Vob2xkZXJ9XG4gICAgICAgICAgcm93cz17bXVsdGlsaW5lfVxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lLmlucHV0fVxuICAgICAgICAgIHsuLi5vdGhlclByb3BzfVxuICAgICAgICAgIG9uRm9jdXM9eyhlKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkKHRydWUpO1xuICAgICAgICAgICAgaWYgKG90aGVyUHJvcHMub25Gb2N1cykgb3RoZXJQcm9wcy5vbkZvY3VzKGUpO1xuICAgICAgICAgIH19XG4gICAgICAgICAgb25CbHVyPXsoZSkgPT4ge1xuICAgICAgICAgICAgc2V0Rm9jdXNlZChmYWxzZSk7XG4gICAgICAgICAgICBpZiAob3RoZXJQcm9wcy5vbkJsdXIpIG90aGVyUHJvcHMub25CbHVyKGUpO1xuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICAgIHtJY29uICYmIDxkaXYgY2xhc3NOYW1lPXtTdHlsZXMuaWNvbn0+e0ljb259PC9kaXY+fVxuICAgICAgICB7aWNvbiAmJiA8aW1nIGNsYXNzTmFtZT17U3R5bGVzLmljb259IHsuLi5pY29ufSAvPn1cbiAgICAgIDwvZGl2PlxuICAgICAgPEFkYXB0aXZlQ29udGFpbmVyIGRpcmVjdGlvbj1cInZcIiBzdHlsZT17eyBtYXhXaWR0aDogbWF4V2lkdGggfX0+XG4gICAgICAgIHtlcnJvciAmJiBzaG91bGRTaG93RXJyb3IgPyAoXG4gICAgICAgICAgPFRleHRcbiAgICAgICAgICAgIGtleT17XCJlcnJvclwifVxuICAgICAgICAgICAgdGl0bGU9e3R5cGVvZiBlcnJvciA9PT0gXCJzdHJpbmdcIiA/IGVycm9yIDogXCJcIn1cbiAgICAgICAgICAgIHR5cGU9e3ZhcmlhbnRzLmVycm9yID8/IFwiZXJyb3JcIn1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7ZXJyb3J9XG4gICAgICAgICAgPC9UZXh0PlxuICAgICAgICApIDogZGlzY2xhaW1lciA/IChcbiAgICAgICAgICA8VGV4dFxuICAgICAgICAgICAga2V5PXtcInRcIn1cbiAgICAgICAgICAgIHRpdGxlPXt0eXBlb2YgZGlzY2xhaW1lciA9PT0gXCJzdHJpbmdcIiA/IGRpc2NsYWltZXIgOiBcIlwifVxuICAgICAgICAgICAgdHlwZT17dmFyaWFudHMuZGlzY2xhaW1lciA/PyBcImNhcHRpb25cIn1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7ZGlzY2xhaW1lcn1cbiAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPEZyYWdtZW50IGtleT17XCJlXCJ9IC8+XG4gICAgICAgICl9XG4gICAgICA8L0FkYXB0aXZlQ29udGFpbmVyPlxuICAgIDwvZGl2PlxuICApO1xufVxuXG4vKipcbiAqIEEgdHJhbnNwYXJlbnQgaW5wdXQgd2l0aCBzb21lIHByZWJ1aWx0IHN0YXRlcyBjb21tb24gdG8gdGhlIGFwcGxpY2F0aW9uXG4gKiovXG5jb25zdCBJbnB1dCA9IGZvcndhcmRSZWYoX0lucHV0KTtcbmV4cG9ydCBkZWZhdWx0IElucHV0O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFjQSxJQUFBQyxjQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxLQUFB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
|
|
@@ -10,7 +10,7 @@ import CheckBox from "../components/CheckBox";
|
|
|
10
10
|
import Radio from "../components/Radio/Radio";
|
|
11
11
|
import { FileInputViewProps } from "../components/FileInput/View/View.types";
|
|
12
12
|
import { AnswerByField, FormField, GenericFormFieldProps } from "../components/Form/FormField/FormField.types";
|
|
13
|
-
import {
|
|
13
|
+
import { FormMode } from "../components/Form/Form.types";
|
|
14
14
|
type DeepPartial<T> = {
|
|
15
15
|
[P in keyof T]?: NonNullable<T[P]> extends Function ? T[P] : DeepPartial<T[P]>;
|
|
16
16
|
};
|
|
@@ -47,7 +47,7 @@ export type OneUIContextSpecs = {
|
|
|
47
47
|
Input: (props: GenericFormFieldProps<K>) => ReactElement;
|
|
48
48
|
validator: (answer: AnswerByField<{
|
|
49
49
|
type: K;
|
|
50
|
-
}> | undefined, question:
|
|
50
|
+
}> | undefined, question: FormField & (FromOnePercentUtility<"UIElements.FormExtension">["fields"] & {
|
|
51
51
|
type: K;
|
|
52
52
|
})) => {
|
|
53
53
|
isValid: boolean;
|
|
@@ -96,4 +96,4 @@ function useCurrentImageScale() {
|
|
|
96
96
|
const context = (0, _react.useContext)(Context);
|
|
97
97
|
return context.state.imageScale;
|
|
98
98
|
}
|
|
99
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZ2V0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfbWVyZ2UiLCJfY2xvbmVEZWVwIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfdXNlQWRhcHRpdmVJbWFnZSIsImUiLCJ0IiwiV2Vha01hcCIsInIiLCJuIiwiX19lc01vZHVsZSIsIm8iLCJpIiwiZiIsIl9fcHJvdG9fXyIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJzZXQiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIkNvbnRleHQiLCJjcmVhdGVDb250ZXh0IiwiT25lVUlQcm92aWRlciIsIl9yZWYiLCJjaGlsZHJlbiIsImNvbmZpZyIsInByZXZDdHgiLCJ1c2VDb250ZXh0Iiwic2NhbGUiLCJ1c2VBZGFwdGl2ZUltYWdlIiwibWVyZ2VkQ29uZmlnIiwidXNlTWVtbyIsIm1lcmdlIiwiY2xvbmUiLCJzdGF0ZSIsImltYWdlU2NhbGUiLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJ2YWx1ZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsInBhdGhUb0pzb24iLCJwYXRoIiwia2V5IiwiZXhhbXBsZUNvbmZpZyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInNwbGl0Iiwic2xpY2UiLCJyZXBsYWNlIiwiY29uY2F0IiwicmVkdWNlIiwicmVzdWx0IiwiaWR4IiwiYXJyIiwiayIsIkVycm9yV3JhcHBlciIsIm9yaWdpbmFsT2JqZWN0IiwiUHJveHkiLCJfdGFyZ2V0IiwiU3ltYm9sIiwidG9QcmltaXRpdmUiLCJmaWx0ZXIiLCJCb29sZWFuIiwiam9pbiIsInBhdGhKc29uIiwiRXJyb3IiLCJKU09OIiwic3RyaW5naWZ5IiwidXNlT25lVUlDb250ZXh0IiwiY29udGV4dCIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInVzZU9uZVVJVmlldyIsIm9uZXVpQ29uZmlnUGF0aCIsImNvbXBvbmVudE5hbWUiLCJwcm92aWRlZFZhbHVlIiwidXNlT25lVUlDb25maWciLCJwcm9wIiwiZGVmYXVsdFZhbHVlIiwidmFsIiwiZW5kc1dpdGgiLCJ1c2VDdXJyZW50SW1hZ2VTY2FsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L09uZVVJUHJvdmlkZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEpTWCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IGdldCBmcm9tIFwibG9kYXNoL2dldFwiO1xuaW1wb3J0IG1lcmdlIGZyb20gXCJsb2Rhc2gvbWVyZ2VcIjtcbmltcG9ydCBjbG9uZSBmcm9tIFwibG9kYXNoL2Nsb25lRGVlcFwiO1xuaW1wb3J0IHsgR2V0IH0gZnJvbSBcInR5cGUtZmVzdFwiO1xuaW1wb3J0IFJlYWN0LCB7IENvbXBvbmVudFByb3BzLCBSZWFjdEVsZW1lbnQsIFJlYWN0Tm9kZSwgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgY3JlYXRlQ29udGV4dCwgUHJvcHNXaXRoQ2hpbGRyZW4sIHVzZUNvbnRleHQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEltYWdlU2NhbGVzIH0gZnJvbSBcIkBtdXJpdGF2by93ZWJwYWNrLW1pY3JvZnJvbnRlbmQtc2NyaXB0cy9iaW4vdHlwZXMvSW1hZ2VTY2FsZXNcIjtcbmltcG9ydCB7IFVwbG9hZFRhc2sgfSBmcm9tIFwiZmlyZWJhc2Uvc3RvcmFnZVwiO1xuaW1wb3J0IHtcbiAgRmllbGRQYXRoLFxuICBGcm9tT25lUGVyY2VudFV0aWxpdHksXG4gIE5hbWVzcGFjZUFjY2Vzc29ycyxcbiAgUGF0aCxcbiAgUGF0aE9iamVjdCxcbn0gZnJvbSBcIi4uL3R5cGUtdXRpbHNcIjtcbmltcG9ydCB1c2VBZGFwdGl2ZUltYWdlIGZyb20gXCIuLi9ob29rcy91aS91c2VBZGFwdGl2ZUltYWdlXCI7XG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvblwiO1xuaW1wb3J0IENoZWNrQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0NoZWNrQm94XCI7XG5pbXBvcnQgUmFkaW8gZnJvbSBcIi4uL2NvbXBvbmVudHMvUmFkaW8vUmFkaW9cIjtcbmltcG9ydCB7IEZpbGVJbnB1dFZpZXdQcm9wcyB9IGZyb20gXCIuLi9jb21wb25lbnRzL0ZpbGVJbnB1dC9WaWV3L1ZpZXcudHlwZXNcIjtcbmltcG9ydCB7XG4gIEFuc3dlckJ5RmllbGQsXG4gIEZvcm1GaWVsZCxcbiAgR2VuZXJpY0Zvcm1GaWVsZFByb3BzLFxufSBmcm9tIFwiLi4vY29tcG9uZW50cy9Gb3JtL0Zvcm1GaWVsZC9Gb3JtRmllbGQudHlwZXNcIjtcbmltcG9ydCB7IEJhc2VRdWVzdGlvbiwgRm9ybU1vZGUgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9Gb3JtL0Zvcm0udHlwZXNcIjtcblxudHlwZSBEZWVwUGFydGlhbDxUPiA9IHtcbiAgW1AgaW4ga2V5b2YgVF0/OiBOb25OdWxsYWJsZTxUW1BdPiBleHRlbmRzIEZ1bmN0aW9uXG4gICAgPyBUW1BdXG4gICAgOiBEZWVwUGFydGlhbDxUW1BdPjtcbn07XG5cbnR5cGUgSWZVdGlsaXR5SGFzPE4gZXh0ZW5kcyBOYW1lc3BhY2VBY2Nlc3NvcnMsIERlY2xhcmU+ID1cbiAgRnJvbU9uZVBlcmNlbnRVdGlsaXR5PE4+IGV4dGVuZHMgYFRvIGRlZmluZSB0aGlzIHByb3BlcnR5IHlvdSBuZWVkIHRvIHNldCBPbmVwZXJjZW50VXRpbGl0eS4ke3N0cmluZ30gZ2xvYmFsbHlgXG4gICAgPyB1bmRlZmluZWRcbiAgICA6IERlY2xhcmU7XG5cbmV4cG9ydCB0eXBlIE9uZVVJQ29udGV4dFNwZWNzID0ge1xuICBjb21wb25lbnQ6IHtcbiAgICBhc3luY1RyaWdnZXJDb250YWluZXI6IHtcbiAgICAgIExvYWRpbmdDb21wb25lbnQ6ICgpID0+IFJlYWN0RWxlbWVudDtcbiAgICB9O1xuICAgIHNwYWNpbmc6IHtcbiAgICAgIHZhcmlhbnRzOiB7XG4gICAgICAgIFtrIGluIEZyb21PbmVQZXJjZW50VXRpbGl0eTxcIlVJRWxlbWVudHMuU3BhY2luZ1ZhcmlhbnRzXCI+XTogc3RyaW5nO1xuICAgICAgfTtcbiAgICB9O1xuICAgIGNvbGxhcHNhYmxlOiB7XG4gICAgICBjbGFzc05hbWU6IHN0cmluZztcbiAgICB9O1xuICAgIGZvcm06IHtcbiAgICAgIGZpZWxkV3JhcHBlcjoge1xuICAgICAgICBbayBpbiBgJHtrZXlvZiB0eXBlb2YgRm9ybU1vZGV9LSR7Rm9ybUZpZWxkW1widHlwZVwiXX1gXTpcbiAgICAgICAgICB8IHN0cmluZ1xuICAgICAgICAgIHwgKChwOiBQcm9wc1dpdGhDaGlsZHJlbjxGb3JtRmllbGQgJiB7IHZhbHVlOiBhbnkgfT4pID0+IFJlYWN0Tm9kZSk7XG4gICAgICB9O1xuICAgICAgdGl0bGVWYXJpYW50OiBGcm9tT25lUGVyY2VudFV0aWxpdHk8XCJVSUVsZW1lbnRzLlRleHRWYXJpYW50c1wiPjtcbiAgICAgIGxhYmVsVmFyaWFudDogRnJvbU9uZVBlcmNlbnRVdGlsaXR5PFwiVUlFbGVtZW50cy5UZXh0VmFyaWFudHNcIj47XG4gICAgICAvKiogTGFiZWwgc2hvd24gd2hlbiBhIGZpZWxkIGlzIG9wdGlvbmFsICovXG4gICAgICBvcHRpb25hbExhYmVsOiBzdHJpbmc7XG5cbiAgICAgIC8qKiBMYWJlbCBzaG93biB3aGVuIGEgcmVxdWlyZWQgZmllbGQgd2FzIG5vdCBwcm92aWRlZCAqL1xuICAgICAgcmVxdWlyZWRMYWJlbDogc3RyaW5nO1xuXG4gICAgICBvbkZpbGVVcGxvYWQocXVlc3Rpb25JZDogc3RyaW5nLCBmaWxlOiBGaWxlKTogVXBsb2FkVGFzaztcblxuICAgICAgZXh0ZW5zaW9uczogSWZVdGlsaXR5SGFzPFxuICAgICAgICBcIlVJRWxlbWVudHMuRm9ybUV4dGVuc2lvblwiLFxuICAgICAgICB7XG4gICAgICAgICAgW0sgaW4gRnJvbU9uZVBlcmNlbnRVdGlsaXR5PFwiVUlFbGVtZW50cy5Gb3JtRXh0ZW5zaW9uXCI+W1wiZmllbGRzXCJdW1widHlwZVwiXV06IHtcbiAgICAgICAgICAgIFJlYWRPbmx5PzogKFxuICAgICAgICAgICAgICBwcm9wczogT21pdDxHZW5lcmljRm9ybUZpZWxkUHJvcHM8Sz4sIFwib25BbnN3ZXJcIiB8IFwiZXJyb3JcIj4sXG4gICAgICAgICAgICApID0+IFJlYWN0RWxlbWVudDtcbiAgICAgICAgICAgIElucHV0OiAocHJvcHM6IEdlbmVyaWNGb3JtRmllbGRQcm9wczxLPikgPT4gUmVhY3RFbGVtZW50O1xuICAgICAgICAgICAgdmFsaWRhdG9yOiAoXG4gICAgICAgICAgICAgIGFuc3dlcjogQW5zd2VyQnlGaWVsZDx7IHR5cGU6IEsgfT4gfCB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIHF1ZXN0aW9uOiBCYXNlUXVlc3Rpb24gJlxuICAgICAgICAgICAgICAgIChGcm9tT25lUGVyY2VudFV0aWxpdHk8XCJVSUVsZW1lbnRzLkZvcm1FeHRlbnNpb25cIj5bXCJmaWVsZHNcIl0gJiB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiBLO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgIGlzVmFsaWQ6IGJvb2xlYW47XG4gICAgICAgICAgICAgIGVycm9yPzogc3RyaW5nO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICA+O1xuICAgIH07XG4gICAgdGV4dDogSWZVdGlsaXR5SGFzPFxuICAgICAgXCJVSUVsZW1lbnRzLlRleHRWYXJpYW50c1wiLFxuICAgICAge1xuICAgICAgICBjbGFzc05hbWU6IHtcbiAgICAgICAgICBbayBpbiBSZWFjdC5Db21wb25lbnRQcm9wczxcbiAgICAgICAgICAgICh0eXBlb2YgaW1wb3J0KFwiLi4vY29tcG9uZW50cy9UZXh0XCIpKVtcImRlZmF1bHRcIl1cbiAgICAgICAgICA+W1widHlwZVwiXV06IHN0cmluZztcbiAgICAgICAgfTtcbiAgICAgICAgaHRtbFRhZzoge1xuICAgICAgICAgIFtrIGluIFJlYWN0LkNvbXBvbmVudFByb3BzPFxuICAgICAgICAgICAgKHR5cGVvZiBpbXBvcnQoXCIuLi9jb21wb25lbnRzL1RleHRcIikpW1wiZGVmYXVsdFwiXVxuICAgICAgICAgID5bXCJ0eXBlXCJdXTogXCJwXCIgfCBcImgxXCIgfCBcImgyXCIgfCBcImgzXCIgfCBcImg0XCIgfCBcImg1XCIgfCBcImg2XCI7XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgPjtcbiAgICBidXR0b24/OiB7XG4gICAgICBjbGFzc05hbWU/OiB7XG4gICAgICAgIFtrIGluIE5vbk51bGxhYmxlPFxuICAgICAgICAgIFJlYWN0LkNvbXBvbmVudFByb3BzPFxuICAgICAgICAgICAgKHR5cGVvZiBpbXBvcnQoXCIuLi9jb21wb25lbnRzL0J1dHRvblwiKSlbXCJkZWZhdWx0XCJdXG4gICAgICAgICAgPltcInZhcmlhbnRcIl1cbiAgICAgICAgPl0/OiBzdHJpbmc7XG4gICAgICB9O1xuICAgICAgQ29tcG9uZW50PzogKHByb3BzOiBDb21wb25lbnRQcm9wczx0eXBlb2YgQnV0dG9uPikgPT4gUmVhY3RFbGVtZW50O1xuICAgIH07XG4gICAgaW5wdXQ6IHtcbiAgICAgIGNsYXNzTmFtZToge1xuICAgICAgICAvKiogVGhlIHdyYXBwZXIgYXJvdW5kIGlucHV0IHRhZyAmIGNhcHRpb24gZWxlbWVudCAodXNlZCBmb3IgZXJyb3IgYW5kIGNhcHRpb24pICovXG4gICAgICAgIGNvbnRhaW5lcjogc3RyaW5nO1xuICAgICAgICAvKiogVGhlIGlucHV0IGh0bWwgdGFnICovXG4gICAgICAgIGlucHV0OiBzdHJpbmc7XG4gICAgICB9O1xuICAgICAgbGFiZWxWYXJpYW50czoge1xuICAgICAgICBlcnJvcj86IEZyb21PbmVQZXJjZW50VXRpbGl0eTxcIlVJRWxlbWVudHMuVGV4dFZhcmlhbnRzXCI+O1xuICAgICAgICBkaXNjbGFpbWVyPzogRnJvbU9uZVBlcmNlbnRVdGlsaXR5PFwiVUlFbGVtZW50cy5UZXh0VmFyaWFudHNcIj47XG4gICAgICB9O1xuICAgIH07XG4gICAgZmlsZUlucHV0OiB7XG4gICAgICBWaWV3OiAocHJvcHM6IEZpbGVJbnB1dFZpZXdQcm9wcykgPT4gUmVhY3RFbGVtZW50O1xuICAgIH07XG4gICAgcGFzc3dvcmRJbnB1dDoge1xuICAgICAgaWNvblNyYzoge1xuICAgICAgICBwYXNzd29yZEhpZGRlbjogc3RyaW5nO1xuICAgICAgICBwYXNzd29yZFZpc2libGU6IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgICBhc3luY1dyYXBwZXI6IHtcbiAgICAgIExvYWRpbmdDb21wb25lbnQ/OiAoKSA9PiBKU1guRWxlbWVudDtcbiAgICAgIG1lc3NhZ2VzOiB7XG4gICAgICAgIGVycm9yOiB7XG4gICAgICAgICAgdGl0bGU6IHN0cmluZztcbiAgICAgICAgICByZXRyeUJ0bjogc3RyaW5nO1xuICAgICAgICB9O1xuICAgICAgfTtcbiAgICB9O1xuICAgIHNlbGVjdDoge1xuICAgICAgU3RhdGVJbmRpY2F0b3I6IChwcm9wczogeyBvcGVuOiBib29sZWFuIH0pID0+IEpTWC5FbGVtZW50O1xuICAgICAgY2xhc3NOYW1lPzoge1xuICAgICAgICBkcm9wZG93bj86IHN0cmluZztcbiAgICAgICAgaXRlbT86IHN0cmluZztcbiAgICAgICAgc2VsZWN0ZWRJdGVtPzogc3RyaW5nO1xuICAgICAgICBpbnB1dD86IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgICBoZWFkZXI6IHtcbiAgICAgIExvZ29JbWFnZTogKCkgPT4gSlNYLkVsZW1lbnQ7XG4gICAgICBNb3JlT3B0aW9uczogKHsgb3BlbiB9OiB7IG9wZW46IGJvb2xlYW4gfSkgPT4gSlNYLkVsZW1lbnQ7XG4gICAgfTtcbiAgICB0YWJsZToge1xuICAgICAgY29udHJvbHM6IHtcbiAgICAgICAgUHJldlBhZ2U6ICh7IGRpc2FibGVkIH06IHsgZGlzYWJsZWQ6IGJvb2xlYW4gfSkgPT4gSlNYLkVsZW1lbnQ7XG4gICAgICAgIE5leHRQYWdlOiAoeyBkaXNhYmxlZCB9OiB7IGRpc2FibGVkOiBib29sZWFuIH0pID0+IEpTWC5FbGVtZW50O1xuICAgICAgfTtcbiAgICB9O1xuICAgIHRvb2x0aXA6IHtcbiAgICAgIGNsYXNzTmFtZT86IHN0cmluZztcbiAgICB9O1xuICAgIGFkYXB0aXZlRGlhbG9nOiB7XG4gICAgICBkaWFsb2dDbGFzc05hbWU6IHN0cmluZztcbiAgICAgIGJhY2tkcm9wQ2xhc3NOYW1lOiBzdHJpbmc7XG4gICAgICB2YXJpYW50OiB7XG4gICAgICAgIFtrIGluIEZyb21PbmVQZXJjZW50VXRpbGl0eTxcIlVJRWxlbWVudHMuQWRhcHRpdmVEaWFsb2dWYXJpYW50c1wiPl06IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgICBhZGFwdGl2ZVNpZGViYXI6IHtcbiAgICAgIGNsYXNzTmFtZTogc3RyaW5nO1xuICAgICAgY29udHJvbENsYXNzTmFtZTogc3RyaW5nO1xuICAgIH07XG4gICAgY2hlY2tib3g6IHtcbiAgICAgIENvbXBvbmVudD86IChwcm9wczogQ29tcG9uZW50UHJvcHM8dHlwZW9mIENoZWNrQm94PikgPT4gUmVhY3RFbGVtZW50O1xuICAgIH07XG4gICAgcmFkaW86IHtcbiAgICAgIENvbXBvbmVudD86IChwcm9wczogQ29tcG9uZW50UHJvcHM8dHlwZW9mIFJhZGlvPikgPT4gUmVhY3RFbGVtZW50O1xuICAgIH07XG4gICAgdGFiczoge1xuICAgICAgaXRlbTogc3RyaW5nO1xuICAgICAgY29udGFpbmVyOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgaG9vazoge1xuICAgIHVpOiB7XG4gICAgICB1c2VQYWdpbmF0aW9uQ29udHJvbHM6IHtcbiAgICAgICAgTGVmdENvbnRyb2w6ICgpID0+IFJlYWN0RWxlbWVudDtcbiAgICAgICAgUmlnaHRDb250cm9sOiAoKSA9PiBSZWFjdEVsZW1lbnQ7XG4gICAgICAgIGNsYXNzTmFtZT86IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbiAgc3RhdGU6IHtcbiAgICBpbWFnZVNjYWxlOiBJbWFnZVNjYWxlcztcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIENvbnRleHRDb25maWdTcGVjcyA9IERlZXBQYXJ0aWFsPE9uZVVJQ29udGV4dFNwZWNzPiAmXG4gIFBhdGhPYmplY3Q8T25lVUlDb250ZXh0U3BlY3MsIFwiY29tcG9uZW50LnRleHRcIj47XG5cbmNvbnN0IENvbnRleHQgPSBjcmVhdGVDb250ZXh0PENvbnRleHRDb25maWdTcGVjcz4obnVsbCBhcyBhbnkpO1xuXG5mdW5jdGlvbiBPbmVVSVByb3ZpZGVyKHtcbiAgY2hpbGRyZW4sXG4gIGNvbmZpZyxcbn06IFByb3BzV2l0aENoaWxkcmVuPHsgY29uZmlnOiBDb250ZXh0Q29uZmlnU3BlY3MgfT4pIHtcbiAgY29uc3QgcHJldkN0eCA9IHVzZUNvbnRleHQoQ29udGV4dCk7XG4gIGNvbnN0IHNjYWxlID0gdXNlQWRhcHRpdmVJbWFnZSgpO1xuICBjb25zdCBtZXJnZWRDb25maWcgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gbWVyZ2UoY2xvbmUocHJldkN0eCksIGNvbmZpZywge1xuICAgICAgc3RhdGU6IHtcbiAgICAgICAgaW1hZ2VTY2FsZTogc2NhbGUsXG4gICAgICB9LFxuICAgIH0pO1xuICB9LCBbcHJldkN0eCwgY29uZmlnLCBzY2FsZV0pO1xuXG4gIHJldHVybiA8Q29udGV4dC5Qcm92aWRlciB2YWx1ZT17bWVyZ2VkQ29uZmlnfT57Y2hpbGRyZW59PC9Db250ZXh0LlByb3ZpZGVyPjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgT25lVUlQcm92aWRlcjtcblxuZnVuY3Rpb24gcGF0aFRvSnNvbihcbiAgcGF0aDogc3RyaW5nLFxuICBrZXk/OiBzdHJpbmcgfCBTeW1ib2wsXG4gIGV4YW1wbGVDb25maWcgPSBcIlRIRV9NSVNTSU5HX0NPTkZJR1wiLFxuKSB7XG4gIGlmICgha2V5KSB7XG4gICAga2V5ID0gcGF0aC5zcGxpdChcIi5cIikuc2xpY2UoLTEpWzBdO1xuICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoYC4ke2tleX1gLCBcIlwiKTtcbiAgfVxuXG4gIHJldHVybiBwYXRoXG4gICAgLnNwbGl0KFwiLlwiKVxuICAgIC5jb25jYXQoa2V5IGFzIHN0cmluZylcbiAgICAucmVkdWNlKChyZXN1bHQsIGtleSwgaWR4LCBhcnIpID0+IHtcbiAgICAgIChhcnIuc2xpY2UoMCwgaWR4KS5yZWR1Y2UoKHIsIGspID0+IChyIGFzIGFueSlba10sIHJlc3VsdCkgYXMgYW55KVtrZXldID1cbiAgICAgICAgaWR4ID09PSBhcnIubGVuZ3RoIC0gMSA/IGV4YW1wbGVDb25maWcgOiB7fTtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSwge30pO1xufVxuXG5mdW5jdGlvbiBFcnJvcldyYXBwZXIoXG4gIG9yaWdpbmFsT2JqZWN0OiBhbnksXG4gIHBhdGg6IHN0cmluZyA9IFwiY29uZmlnXCIsXG4pOiB0eXBlb2YgUHJveHkge1xuICByZXR1cm4gbmV3IFByb3h5KFxuICAgIHR5cGVvZiBvcmlnaW5hbE9iamVjdCAhPT0gXCJvYmplY3RcIiA/IHt9IDogb3JpZ2luYWxPYmplY3QgfHwge30sXG4gICAge1xuICAgICAgZ2V0KF90YXJnZXQsIGtleSkge1xuICAgICAgICBpZiAoa2V5ID09PSBTeW1ib2wudG9QcmltaXRpdmUgfHwga2V5ID09PSBcIiQkdHlwZW9mXCIpIHtcbiAgICAgICAgICByZXR1cm4gKCkgPT4gX3RhcmdldFtrZXldO1xuICAgICAgICB9XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBvcmlnaW5hbE9iamVjdFtrZXldO1xuICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwidW5kZWZpbmVkXCIpIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIilcbiAgICAgICAgICAgIHJldHVybiBFcnJvcldyYXBwZXIodmFsdWUsIFtwYXRoLCBrZXldLmZpbHRlcihCb29sZWFuKS5qb2luKFwiLlwiKSk7XG4gICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgY29uc3QgcGF0aEpzb24gPSBwYXRoVG9Kc29uKHBhdGgsIGtleSk7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgYEEgY29tcG9uZW50IGlzIHVzaW5nIHRoZSBVSSBjb25maWcgJHtbcGF0aCwga2V5XS5qb2luKFwiLlwiKX0uXG5cblBsZWFzZSBkZWZpbmUgaXQgdXNpbmc6XG5pbXBvcnQgT25lVUlQcm92aWRlciBmcm9tIFwiQG9uZXBlcmNlbnQvb25lLXVpL2Rpc3QvY29udGV4dC9PbmVVSVByb3ZpZGVyXCI7XG5cbiAgLi4uXG4ke2A8T25lVUlQcm92aWRlciBjb25maWc9eyR7SlNPTi5zdHJpbmdpZnkocGF0aEpzb24sIG51bGwsIDQpfX0+XG4uLi5cbjwvT25lVUlQcm92aWRlcj5gLnJlcGxhY2UoL1sgXS9nLCBcIi1cIil9YCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0sXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VPbmVVSUNvbnRleHQoKSB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KENvbnRleHQpO1xuXG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJkZXZlbG9wbWVudFwiKVxuICAgIHJldHVybiBFcnJvcldyYXBwZXIoY29udGV4dCkgYXMgdW5rbm93biBhcyBPbmVVSUNvbnRleHRTcGVjcztcblxuICByZXR1cm4gY29udGV4dCBhcyBPbmVVSUNvbnRleHRTcGVjcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVzZU9uZVVJVmlldzxQIGV4dGVuZHMgRmllbGRQYXRoPE9uZVVJQ29udGV4dFNwZWNzPj4oXG4gIG9uZXVpQ29uZmlnUGF0aDogUCxcbiAgY29tcG9uZW50TmFtZTogc3RyaW5nLFxuKSB7XG4gIGNvbnN0IHByb3ZpZGVkVmFsdWUgPSB1c2VPbmVVSUNvbmZpZyhvbmV1aUNvbmZpZ1BhdGgpO1xuICBpZiAoIXByb3ZpZGVkVmFsdWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBjb21wb25lbnQgJHtjb21wb25lbnROYW1lfSByZXF1aXJlcyBhIHZpZXcgdG8gYmUgc2V0IG9uIE9uZVVJIGluaXRpYWxpemF0aW9uXG5cblZpZXdzIHJlYWR5IGZvciB1c2Ugd2l0aCB0aGlzIGNvbXBvbmVudCBzaGFsbCBiZSBhdmFpbGFibGUgYXQ6XG5pbXBvcnQgU29tZVZpZXcgZnJvbSBcIkBvbmVwZXJjZW50aW8vb25lLXVpL2Rpc3QvY29tcG9uZW50cy8ke2NvbXBvbmVudE5hbWV9L1ZpZXcvU29tZVZpZXdcIjtcbiAgICBcblBsZWFzZSBkZWZpbmUgaXQgdXNpbmc6XG5pbXBvcnQgT25lVUlQcm92aWRlciBmcm9tIFwiQG9uZXBlcmNlbnRpby9vbmUtdWkvZGlzdC9jb250ZXh0L09uZVVJUHJvdmlkZXJcIjtcblxuICAuLi5cbiR7YDxPbmVVSVByb3ZpZGVyIGNvbmZpZz17JHtKU09OLnN0cmluZ2lmeShcbiAgcGF0aFRvSnNvbihvbmV1aUNvbmZpZ1BhdGgsIHVuZGVmaW5lZCwgXCJTb21lVmlld1wiKSxcbiAgbnVsbCxcbiAgNCxcbil9fT5cbi4uLlxuPC9PbmVVSVByb3ZpZGVyPmAucmVwbGFjZSgvWyBdL2csIFwiLVwiKX1gKTtcbiAgfVxuXG4gIHJldHVybiBwcm92aWRlZFZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlT25lVUlDb25maWc8UCBleHRlbmRzIEZpZWxkUGF0aDxPbmVVSUNvbnRleHRTcGVjcz4+KFxuICBwcm9wOiBQLFxuKTogR2V0PE9uZVVJQ29udGV4dFNwZWNzLCBQPjtcbmV4cG9ydCBmdW5jdGlvbiB1c2VPbmVVSUNvbmZpZzxcbiAgUCBleHRlbmRzIEZpZWxkUGF0aDxPbmVVSUNvbnRleHRTcGVjcz4sXG4gIFQgZXh0ZW5kcyBEZWVwUGFydGlhbDxHZXQ8T25lVUlDb250ZXh0U3BlY3MsIFA+Pixcbj4ocHJvcDogUCwgZGVmYXVsdFZhbHVlOiBUKTogTm9uTnVsbGFibGU8R2V0PE9uZVVJQ29udGV4dFNwZWNzLCBQPj47XG5leHBvcnQgZnVuY3Rpb24gdXNlT25lVUlDb25maWc8XG4gIFAgZXh0ZW5kcyBGaWVsZFBhdGg8T25lVUlDb250ZXh0U3BlY3M+LFxuICBUIGV4dGVuZHMgR2V0PE9uZVVJQ29udGV4dFNwZWNzLCBQPixcbj4ocHJvcDogUCwgZGVmYXVsdFZhbHVlPzogVCk6IEdldDxPbmVVSUNvbnRleHRTcGVjcywgUD4gfCBUIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoQ29udGV4dCk7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJkZXZlbG9wbWVudFwiKSB7XG4gICAgY29uc3QgdmFsID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICByZXR1cm4gZ2V0KGNvbnRleHQsIHByb3ApO1xuICAgIH0sIFtjb250ZXh0LCBwcm9wXSk7XG4gICAgaWYgKFxuICAgICAgdHlwZW9mIHZhbCA9PT0gXCJzdHJpbmdcIiB8fFxuICAgICAgdHlwZW9mIHZhbCA9PT0gXCJmdW5jdGlvblwiIHx8XG4gICAgICBwcm9wLmVuZHNXaXRoKFwiLkNvbXBvbmVudFwiKSB8fFxuICAgICAgcHJvcC5lbmRzV2l0aChcIi5WaWV3XCIpXG4gICAgKVxuICAgICAgcmV0dXJuICh2YWwgYXMgYW55KSB8fCBkZWZhdWx0VmFsdWU7XG5cbiAgICBpZiAodHlwZW9mIHZhbCA9PT0gXCJib29sZWFuXCIpIHJldHVybiB2YWwgYXMgYW55O1xuICAgIHJldHVybiBFcnJvcldyYXBwZXIodmFsIHx8IGRlZmF1bHRWYWx1ZSkgYXMgdW5rbm93biBhcyBOb25OdWxsYWJsZTxUPjtcbiAgfVxuICBjb25zdCB2YWx1ZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBnZXQoY29udGV4dCwgcHJvcCk7XG4gIH0sIFtjb250ZXh0LCBwcm9wXSk7XG4gIHJldHVybiB2YWx1ZSB8fCBkZWZhdWx0VmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VDdXJyZW50SW1hZ2VTY2FsZSgpIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoQ29udGV4dCk7XG5cbiAgcmV0dXJuIGNvbnRleHQuc3RhdGUhLmltYWdlU2NhbGUhO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQ0EsSUFBQUEsSUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsVUFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUcsTUFBQSxHQUFBQyx1QkFBQSxDQUFBSixPQUFBO0FBV0EsSUFBQUssaUJBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUE0RCxTQUFBSSx3QkFBQUUsQ0FBQSxFQUFBQyxDQUFBLDZCQUFBQyxPQUFBLE1BQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUosdUJBQUEsWUFBQUEsQ0FBQUUsQ0FBQSxFQUFBQyxDQUFBLFNBQUFBLENBQUEsSUFBQUQsQ0FBQSxJQUFBQSxDQUFBLENBQUFLLFVBQUEsU0FBQUwsQ0FBQSxNQUFBTSxDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSxLQUFBQyxTQUFBLFFBQUFDLE9BQUEsRUFBQVYsQ0FBQSxpQkFBQUEsQ0FBQSx1QkFBQUEsQ0FBQSx5QkFBQUEsQ0FBQSxTQUFBUSxDQUFBLE1BQUFGLENBQUEsR0FBQUwsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsUUFBQUcsQ0FBQSxDQUFBSyxHQUFBLENBQUFYLENBQUEsVUFBQU0sQ0FBQSxDQUFBTSxHQUFBLENBQUFaLENBQUEsR0FBQU0sQ0FBQSxDQUFBTyxHQUFBLENBQUFiLENBQUEsRUFBQVEsQ0FBQSxnQkFBQVAsQ0FBQSxJQUFBRCxDQUFBLGdCQUFBQyxDQUFBLE9BQUFhLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZixDQUFBLEVBQUFDLENBQUEsT0FBQU0s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
|
|
99
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZ2V0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfbWVyZ2UiLCJfY2xvbmVEZWVwIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfdXNlQWRhcHRpdmVJbWFnZSIsImUiLCJ0IiwiV2Vha01hcCIsInIiLCJuIiwiX19lc01vZHVsZSIsIm8iLCJpIiwiZiIsIl9fcHJvdG9fXyIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJzZXQiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIkNvbnRleHQiLCJjcmVhdGVDb250ZXh0IiwiT25lVUlQcm92aWRlciIsIl9yZWYiLCJjaGlsZHJlbiIsImNvbmZpZyIsInByZXZDdHgiLCJ1c2VDb250ZXh0Iiwic2NhbGUiLCJ1c2VBZGFwdGl2ZUltYWdlIiwibWVyZ2VkQ29uZmlnIiwidXNlTWVtbyIsIm1lcmdlIiwiY2xvbmUiLCJzdGF0ZSIsImltYWdlU2NhbGUiLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJ2YWx1ZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsInBhdGhUb0pzb24iLCJwYXRoIiwia2V5IiwiZXhhbXBsZUNvbmZpZyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsInNwbGl0Iiwic2xpY2UiLCJyZXBsYWNlIiwiY29uY2F0IiwicmVkdWNlIiwicmVzdWx0IiwiaWR4IiwiYXJyIiwiayIsIkVycm9yV3JhcHBlciIsIm9yaWdpbmFsT2JqZWN0IiwiUHJveHkiLCJfdGFyZ2V0IiwiU3ltYm9sIiwidG9QcmltaXRpdmUiLCJmaWx0ZXIiLCJCb29sZWFuIiwiam9pbiIsInBhdGhKc29uIiwiRXJyb3IiLCJKU09OIiwic3RyaW5naWZ5IiwidXNlT25lVUlDb250ZXh0IiwiY29udGV4dCIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInVzZU9uZVVJVmlldyIsIm9uZXVpQ29uZmlnUGF0aCIsImNvbXBvbmVudE5hbWUiLCJwcm92aWRlZFZhbHVlIiwidXNlT25lVUlDb25maWciLCJwcm9wIiwiZGVmYXVsdFZhbHVlIiwidmFsIiwiZW5kc1dpdGgiLCJ1c2VDdXJyZW50SW1hZ2VTY2FsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L09uZVVJUHJvdmlkZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEpTWCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IGdldCBmcm9tIFwibG9kYXNoL2dldFwiO1xuaW1wb3J0IG1lcmdlIGZyb20gXCJsb2Rhc2gvbWVyZ2VcIjtcbmltcG9ydCBjbG9uZSBmcm9tIFwibG9kYXNoL2Nsb25lRGVlcFwiO1xuaW1wb3J0IHsgR2V0IH0gZnJvbSBcInR5cGUtZmVzdFwiO1xuaW1wb3J0IFJlYWN0LCB7IENvbXBvbmVudFByb3BzLCBSZWFjdEVsZW1lbnQsIFJlYWN0Tm9kZSwgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgY3JlYXRlQ29udGV4dCwgUHJvcHNXaXRoQ2hpbGRyZW4sIHVzZUNvbnRleHQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEltYWdlU2NhbGVzIH0gZnJvbSBcIkBtdXJpdGF2by93ZWJwYWNrLW1pY3JvZnJvbnRlbmQtc2NyaXB0cy9iaW4vdHlwZXMvSW1hZ2VTY2FsZXNcIjtcbmltcG9ydCB7IFVwbG9hZFRhc2sgfSBmcm9tIFwiZmlyZWJhc2Uvc3RvcmFnZVwiO1xuaW1wb3J0IHtcbiAgRmllbGRQYXRoLFxuICBGcm9tT25lUGVyY2VudFV0aWxpdHksXG4gIE5hbWVzcGFjZUFjY2Vzc29ycyxcbiAgUGF0aCxcbiAgUGF0aE9iamVjdCxcbn0gZnJvbSBcIi4uL3R5cGUtdXRpbHNcIjtcbmltcG9ydCB1c2VBZGFwdGl2ZUltYWdlIGZyb20gXCIuLi9ob29rcy91aS91c2VBZGFwdGl2ZUltYWdlXCI7XG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi9jb21wb25lbnRzL0J1dHRvblwiO1xuaW1wb3J0IENoZWNrQm94IGZyb20gXCIuLi9jb21wb25lbnRzL0NoZWNrQm94XCI7XG5pbXBvcnQgUmFkaW8gZnJvbSBcIi4uL2NvbXBvbmVudHMvUmFkaW8vUmFkaW9cIjtcbmltcG9ydCB7IEZpbGVJbnB1dFZpZXdQcm9wcyB9IGZyb20gXCIuLi9jb21wb25lbnRzL0ZpbGVJbnB1dC9WaWV3L1ZpZXcudHlwZXNcIjtcbmltcG9ydCB7XG4gIEFuc3dlckJ5RmllbGQsXG4gIEZvcm1GaWVsZCxcbiAgR2VuZXJpY0Zvcm1GaWVsZFByb3BzLFxufSBmcm9tIFwiLi4vY29tcG9uZW50cy9Gb3JtL0Zvcm1GaWVsZC9Gb3JtRmllbGQudHlwZXNcIjtcbmltcG9ydCB7IEJhc2VRdWVzdGlvbiwgRm9ybU1vZGUgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9Gb3JtL0Zvcm0udHlwZXNcIjtcblxudHlwZSBEZWVwUGFydGlhbDxUPiA9IHtcbiAgW1AgaW4ga2V5b2YgVF0/OiBOb25OdWxsYWJsZTxUW1BdPiBleHRlbmRzIEZ1bmN0aW9uXG4gICAgPyBUW1BdXG4gICAgOiBEZWVwUGFydGlhbDxUW1BdPjtcbn07XG5cbnR5cGUgSWZVdGlsaXR5SGFzPE4gZXh0ZW5kcyBOYW1lc3BhY2VBY2Nlc3NvcnMsIERlY2xhcmU+ID1cbiAgRnJvbU9uZVBlcmNlbnRVdGlsaXR5PE4+IGV4dGVuZHMgYFRvIGRlZmluZSB0aGlzIHByb3BlcnR5IHlvdSBuZWVkIHRvIHNldCBPbmVwZXJjZW50VXRpbGl0eS4ke3N0cmluZ30gZ2xvYmFsbHlgXG4gICAgPyB1bmRlZmluZWRcbiAgICA6IERlY2xhcmU7XG5cbmV4cG9ydCB0eXBlIE9uZVVJQ29udGV4dFNwZWNzID0ge1xuICBjb21wb25lbnQ6IHtcbiAgICBhc3luY1RyaWdnZXJDb250YWluZXI6IHtcbiAgICAgIExvYWRpbmdDb21wb25lbnQ6ICgpID0+IFJlYWN0RWxlbWVudDtcbiAgICB9O1xuICAgIHNwYWNpbmc6IHtcbiAgICAgIHZhcmlhbnRzOiB7XG4gICAgICAgIFtrIGluIEZyb21PbmVQZXJjZW50VXRpbGl0eTxcIlVJRWxlbWVudHMuU3BhY2luZ1ZhcmlhbnRzXCI+XTogc3RyaW5nO1xuICAgICAgfTtcbiAgICB9O1xuICAgIGNvbGxhcHNhYmxlOiB7XG4gICAgICBjbGFzc05hbWU6IHN0cmluZztcbiAgICB9O1xuICAgIGZvcm06IHtcbiAgICAgIGZpZWxkV3JhcHBlcjoge1xuICAgICAgICBbayBpbiBgJHtrZXlvZiB0eXBlb2YgRm9ybU1vZGV9LSR7Rm9ybUZpZWxkW1widHlwZVwiXX1gXTpcbiAgICAgICAgICB8IHN0cmluZ1xuICAgICAgICAgIHwgKChwOiBQcm9wc1dpdGhDaGlsZHJlbjxGb3JtRmllbGQgJiB7IHZhbHVlOiBhbnkgfT4pID0+IFJlYWN0Tm9kZSk7XG4gICAgICB9O1xuICAgICAgdGl0bGVWYXJpYW50OiBGcm9tT25lUGVyY2VudFV0aWxpdHk8XCJVSUVsZW1lbnRzLlRleHRWYXJpYW50c1wiPjtcbiAgICAgIGxhYmVsVmFyaWFudDogRnJvbU9uZVBlcmNlbnRVdGlsaXR5PFwiVUlFbGVtZW50cy5UZXh0VmFyaWFudHNcIj47XG4gICAgICAvKiogTGFiZWwgc2hvd24gd2hlbiBhIGZpZWxkIGlzIG9wdGlvbmFsICovXG4gICAgICBvcHRpb25hbExhYmVsOiBzdHJpbmc7XG5cbiAgICAgIC8qKiBMYWJlbCBzaG93biB3aGVuIGEgcmVxdWlyZWQgZmllbGQgd2FzIG5vdCBwcm92aWRlZCAqL1xuICAgICAgcmVxdWlyZWRMYWJlbDogc3RyaW5nO1xuXG4gICAgICBvbkZpbGVVcGxvYWQocXVlc3Rpb25JZDogc3RyaW5nLCBmaWxlOiBGaWxlKTogVXBsb2FkVGFzaztcblxuICAgICAgZXh0ZW5zaW9uczogSWZVdGlsaXR5SGFzPFxuICAgICAgICBcIlVJRWxlbWVudHMuRm9ybUV4dGVuc2lvblwiLFxuICAgICAgICB7XG4gICAgICAgICAgW0sgaW4gRnJvbU9uZVBlcmNlbnRVdGlsaXR5PFwiVUlFbGVtZW50cy5Gb3JtRXh0ZW5zaW9uXCI+W1wiZmllbGRzXCJdW1widHlwZVwiXV06IHtcbiAgICAgICAgICAgIFJlYWRPbmx5PzogKFxuICAgICAgICAgICAgICBwcm9wczogT21pdDxHZW5lcmljRm9ybUZpZWxkUHJvcHM8Sz4sIFwib25BbnN3ZXJcIiB8IFwiZXJyb3JcIj4sXG4gICAgICAgICAgICApID0+IFJlYWN0RWxlbWVudDtcbiAgICAgICAgICAgIElucHV0OiAocHJvcHM6IEdlbmVyaWNGb3JtRmllbGRQcm9wczxLPikgPT4gUmVhY3RFbGVtZW50O1xuICAgICAgICAgICAgdmFsaWRhdG9yOiAoXG4gICAgICAgICAgICAgIGFuc3dlcjogQW5zd2VyQnlGaWVsZDx7IHR5cGU6IEsgfT4gfCB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIHF1ZXN0aW9uOiBGb3JtRmllbGQgJlxuICAgICAgICAgICAgICAgIChGcm9tT25lUGVyY2VudFV0aWxpdHk8XCJVSUVsZW1lbnRzLkZvcm1FeHRlbnNpb25cIj5bXCJmaWVsZHNcIl0gJiB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiBLO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgIGlzVmFsaWQ6IGJvb2xlYW47XG4gICAgICAgICAgICAgIGVycm9yPzogc3RyaW5nO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICA+O1xuICAgIH07XG4gICAgdGV4dDogSWZVdGlsaXR5SGFzPFxuICAgICAgXCJVSUVsZW1lbnRzLlRleHRWYXJpYW50c1wiLFxuICAgICAge1xuICAgICAgICBjbGFzc05hbWU6IHtcbiAgICAgICAgICBbayBpbiBSZWFjdC5Db21wb25lbnRQcm9wczxcbiAgICAgICAgICAgICh0eXBlb2YgaW1wb3J0KFwiLi4vY29tcG9uZW50cy9UZXh0XCIpKVtcImRlZmF1bHRcIl1cbiAgICAgICAgICA+W1widHlwZVwiXV06IHN0cmluZztcbiAgICAgICAgfTtcbiAgICAgICAgaHRtbFRhZzoge1xuICAgICAgICAgIFtrIGluIFJlYWN0LkNvbXBvbmVudFByb3BzPFxuICAgICAgICAgICAgKHR5cGVvZiBpbXBvcnQoXCIuLi9jb21wb25lbnRzL1RleHRcIikpW1wiZGVmYXVsdFwiXVxuICAgICAgICAgID5bXCJ0eXBlXCJdXTogXCJwXCIgfCBcImgxXCIgfCBcImgyXCIgfCBcImgzXCIgfCBcImg0XCIgfCBcImg1XCIgfCBcImg2XCI7XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgPjtcbiAgICBidXR0b24/OiB7XG4gICAgICBjbGFzc05hbWU/OiB7XG4gICAgICAgIFtrIGluIE5vbk51bGxhYmxlPFxuICAgICAgICAgIFJlYWN0LkNvbXBvbmVudFByb3BzPFxuICAgICAgICAgICAgKHR5cGVvZiBpbXBvcnQoXCIuLi9jb21wb25lbnRzL0J1dHRvblwiKSlbXCJkZWZhdWx0XCJdXG4gICAgICAgICAgPltcInZhcmlhbnRcIl1cbiAgICAgICAgPl0/OiBzdHJpbmc7XG4gICAgICB9O1xuICAgICAgQ29tcG9uZW50PzogKHByb3BzOiBDb21wb25lbnRQcm9wczx0eXBlb2YgQnV0dG9uPikgPT4gUmVhY3RFbGVtZW50O1xuICAgIH07XG4gICAgaW5wdXQ6IHtcbiAgICAgIGNsYXNzTmFtZToge1xuICAgICAgICAvKiogVGhlIHdyYXBwZXIgYXJvdW5kIGlucHV0IHRhZyAmIGNhcHRpb24gZWxlbWVudCAodXNlZCBmb3IgZXJyb3IgYW5kIGNhcHRpb24pICovXG4gICAgICAgIGNvbnRhaW5lcjogc3RyaW5nO1xuICAgICAgICAvKiogVGhlIGlucHV0IGh0bWwgdGFnICovXG4gICAgICAgIGlucHV0OiBzdHJpbmc7XG4gICAgICB9O1xuICAgICAgbGFiZWxWYXJpYW50czoge1xuICAgICAgICBlcnJvcj86IEZyb21PbmVQZXJjZW50VXRpbGl0eTxcIlVJRWxlbWVudHMuVGV4dFZhcmlhbnRzXCI+O1xuICAgICAgICBkaXNjbGFpbWVyPzogRnJvbU9uZVBlcmNlbnRVdGlsaXR5PFwiVUlFbGVtZW50cy5UZXh0VmFyaWFudHNcIj47XG4gICAgICB9O1xuICAgIH07XG4gICAgZmlsZUlucHV0OiB7XG4gICAgICBWaWV3OiAocHJvcHM6IEZpbGVJbnB1dFZpZXdQcm9wcykgPT4gUmVhY3RFbGVtZW50O1xuICAgIH07XG4gICAgcGFzc3dvcmRJbnB1dDoge1xuICAgICAgaWNvblNyYzoge1xuICAgICAgICBwYXNzd29yZEhpZGRlbjogc3RyaW5nO1xuICAgICAgICBwYXNzd29yZFZpc2libGU6IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgICBhc3luY1dyYXBwZXI6IHtcbiAgICAgIExvYWRpbmdDb21wb25lbnQ/OiAoKSA9PiBKU1guRWxlbWVudDtcbiAgICAgIG1lc3NhZ2VzOiB7XG4gICAgICAgIGVycm9yOiB7XG4gICAgICAgICAgdGl0bGU6IHN0cmluZztcbiAgICAgICAgICByZXRyeUJ0bjogc3RyaW5nO1xuICAgICAgICB9O1xuICAgICAgfTtcbiAgICB9O1xuICAgIHNlbGVjdDoge1xuICAgICAgU3RhdGVJbmRpY2F0b3I6IChwcm9wczogeyBvcGVuOiBib29sZWFuIH0pID0+IEpTWC5FbGVtZW50O1xuICAgICAgY2xhc3NOYW1lPzoge1xuICAgICAgICBkcm9wZG93bj86IHN0cmluZztcbiAgICAgICAgaXRlbT86IHN0cmluZztcbiAgICAgICAgc2VsZWN0ZWRJdGVtPzogc3RyaW5nO1xuICAgICAgICBpbnB1dD86IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgICBoZWFkZXI6IHtcbiAgICAgIExvZ29JbWFnZTogKCkgPT4gSlNYLkVsZW1lbnQ7XG4gICAgICBNb3JlT3B0aW9uczogKHsgb3BlbiB9OiB7IG9wZW46IGJvb2xlYW4gfSkgPT4gSlNYLkVsZW1lbnQ7XG4gICAgfTtcbiAgICB0YWJsZToge1xuICAgICAgY29udHJvbHM6IHtcbiAgICAgICAgUHJldlBhZ2U6ICh7IGRpc2FibGVkIH06IHsgZGlzYWJsZWQ6IGJvb2xlYW4gfSkgPT4gSlNYLkVsZW1lbnQ7XG4gICAgICAgIE5leHRQYWdlOiAoeyBkaXNhYmxlZCB9OiB7IGRpc2FibGVkOiBib29sZWFuIH0pID0+IEpTWC5FbGVtZW50O1xuICAgICAgfTtcbiAgICB9O1xuICAgIHRvb2x0aXA6IHtcbiAgICAgIGNsYXNzTmFtZT86IHN0cmluZztcbiAgICB9O1xuICAgIGFkYXB0aXZlRGlhbG9nOiB7XG4gICAgICBkaWFsb2dDbGFzc05hbWU6IHN0cmluZztcbiAgICAgIGJhY2tkcm9wQ2xhc3NOYW1lOiBzdHJpbmc7XG4gICAgICB2YXJpYW50OiB7XG4gICAgICAgIFtrIGluIEZyb21PbmVQZXJjZW50VXRpbGl0eTxcIlVJRWxlbWVudHMuQWRhcHRpdmVEaWFsb2dWYXJpYW50c1wiPl06IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgICBhZGFwdGl2ZVNpZGViYXI6IHtcbiAgICAgIGNsYXNzTmFtZTogc3RyaW5nO1xuICAgICAgY29udHJvbENsYXNzTmFtZTogc3RyaW5nO1xuICAgIH07XG4gICAgY2hlY2tib3g6IHtcbiAgICAgIENvbXBvbmVudD86IChwcm9wczogQ29tcG9uZW50UHJvcHM8dHlwZW9mIENoZWNrQm94PikgPT4gUmVhY3RFbGVtZW50O1xuICAgIH07XG4gICAgcmFkaW86IHtcbiAgICAgIENvbXBvbmVudD86IChwcm9wczogQ29tcG9uZW50UHJvcHM8dHlwZW9mIFJhZGlvPikgPT4gUmVhY3RFbGVtZW50O1xuICAgIH07XG4gICAgdGFiczoge1xuICAgICAgaXRlbTogc3RyaW5nO1xuICAgICAgY29udGFpbmVyOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgaG9vazoge1xuICAgIHVpOiB7XG4gICAgICB1c2VQYWdpbmF0aW9uQ29udHJvbHM6IHtcbiAgICAgICAgTGVmdENvbnRyb2w6ICgpID0+IFJlYWN0RWxlbWVudDtcbiAgICAgICAgUmlnaHRDb250cm9sOiAoKSA9PiBSZWFjdEVsZW1lbnQ7XG4gICAgICAgIGNsYXNzTmFtZT86IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbiAgc3RhdGU6IHtcbiAgICBpbWFnZVNjYWxlOiBJbWFnZVNjYWxlcztcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIENvbnRleHRDb25maWdTcGVjcyA9IERlZXBQYXJ0aWFsPE9uZVVJQ29udGV4dFNwZWNzPiAmXG4gIFBhdGhPYmplY3Q8T25lVUlDb250ZXh0U3BlY3MsIFwiY29tcG9uZW50LnRleHRcIj47XG5cbmNvbnN0IENvbnRleHQgPSBjcmVhdGVDb250ZXh0PENvbnRleHRDb25maWdTcGVjcz4obnVsbCBhcyBhbnkpO1xuXG5mdW5jdGlvbiBPbmVVSVByb3ZpZGVyKHtcbiAgY2hpbGRyZW4sXG4gIGNvbmZpZyxcbn06IFByb3BzV2l0aENoaWxkcmVuPHsgY29uZmlnOiBDb250ZXh0Q29uZmlnU3BlY3MgfT4pIHtcbiAgY29uc3QgcHJldkN0eCA9IHVzZUNvbnRleHQoQ29udGV4dCk7XG4gIGNvbnN0IHNjYWxlID0gdXNlQWRhcHRpdmVJbWFnZSgpO1xuICBjb25zdCBtZXJnZWRDb25maWcgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gbWVyZ2UoY2xvbmUocHJldkN0eCksIGNvbmZpZywge1xuICAgICAgc3RhdGU6IHtcbiAgICAgICAgaW1hZ2VTY2FsZTogc2NhbGUsXG4gICAgICB9LFxuICAgIH0pO1xuICB9LCBbcHJldkN0eCwgY29uZmlnLCBzY2FsZV0pO1xuXG4gIHJldHVybiA8Q29udGV4dC5Qcm92aWRlciB2YWx1ZT17bWVyZ2VkQ29uZmlnfT57Y2hpbGRyZW59PC9Db250ZXh0LlByb3ZpZGVyPjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgT25lVUlQcm92aWRlcjtcblxuZnVuY3Rpb24gcGF0aFRvSnNvbihcbiAgcGF0aDogc3RyaW5nLFxuICBrZXk/OiBzdHJpbmcgfCBTeW1ib2wsXG4gIGV4YW1wbGVDb25maWcgPSBcIlRIRV9NSVNTSU5HX0NPTkZJR1wiLFxuKSB7XG4gIGlmICgha2V5KSB7XG4gICAga2V5ID0gcGF0aC5zcGxpdChcIi5cIikuc2xpY2UoLTEpWzBdO1xuICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoYC4ke2tleX1gLCBcIlwiKTtcbiAgfVxuXG4gIHJldHVybiBwYXRoXG4gICAgLnNwbGl0KFwiLlwiKVxuICAgIC5jb25jYXQoa2V5IGFzIHN0cmluZylcbiAgICAucmVkdWNlKChyZXN1bHQsIGtleSwgaWR4LCBhcnIpID0+IHtcbiAgICAgIChhcnIuc2xpY2UoMCwgaWR4KS5yZWR1Y2UoKHIsIGspID0+IChyIGFzIGFueSlba10sIHJlc3VsdCkgYXMgYW55KVtrZXldID1cbiAgICAgICAgaWR4ID09PSBhcnIubGVuZ3RoIC0gMSA/IGV4YW1wbGVDb25maWcgOiB7fTtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSwge30pO1xufVxuXG5mdW5jdGlvbiBFcnJvcldyYXBwZXIoXG4gIG9yaWdpbmFsT2JqZWN0OiBhbnksXG4gIHBhdGg6IHN0cmluZyA9IFwiY29uZmlnXCIsXG4pOiB0eXBlb2YgUHJveHkge1xuICByZXR1cm4gbmV3IFByb3h5KFxuICAgIHR5cGVvZiBvcmlnaW5hbE9iamVjdCAhPT0gXCJvYmplY3RcIiA/IHt9IDogb3JpZ2luYWxPYmplY3QgfHwge30sXG4gICAge1xuICAgICAgZ2V0KF90YXJnZXQsIGtleSkge1xuICAgICAgICBpZiAoa2V5ID09PSBTeW1ib2wudG9QcmltaXRpdmUgfHwga2V5ID09PSBcIiQkdHlwZW9mXCIpIHtcbiAgICAgICAgICByZXR1cm4gKCkgPT4gX3RhcmdldFtrZXldO1xuICAgICAgICB9XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBvcmlnaW5hbE9iamVjdFtrZXldO1xuICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwidW5kZWZpbmVkXCIpIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIilcbiAgICAgICAgICAgIHJldHVybiBFcnJvcldyYXBwZXIodmFsdWUsIFtwYXRoLCBrZXldLmZpbHRlcihCb29sZWFuKS5qb2luKFwiLlwiKSk7XG4gICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgY29uc3QgcGF0aEpzb24gPSBwYXRoVG9Kc29uKHBhdGgsIGtleSk7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgYEEgY29tcG9uZW50IGlzIHVzaW5nIHRoZSBVSSBjb25maWcgJHtbcGF0aCwga2V5XS5qb2luKFwiLlwiKX0uXG5cblBsZWFzZSBkZWZpbmUgaXQgdXNpbmc6XG5pbXBvcnQgT25lVUlQcm92aWRlciBmcm9tIFwiQG9uZXBlcmNlbnQvb25lLXVpL2Rpc3QvY29udGV4dC9PbmVVSVByb3ZpZGVyXCI7XG5cbiAgLi4uXG4ke2A8T25lVUlQcm92aWRlciBjb25maWc9eyR7SlNPTi5zdHJpbmdpZnkocGF0aEpzb24sIG51bGwsIDQpfX0+XG4uLi5cbjwvT25lVUlQcm92aWRlcj5gLnJlcGxhY2UoL1sgXS9nLCBcIi1cIil9YCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0sXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VPbmVVSUNvbnRleHQoKSB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KENvbnRleHQpO1xuXG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJkZXZlbG9wbWVudFwiKVxuICAgIHJldHVybiBFcnJvcldyYXBwZXIoY29udGV4dCkgYXMgdW5rbm93biBhcyBPbmVVSUNvbnRleHRTcGVjcztcblxuICByZXR1cm4gY29udGV4dCBhcyBPbmVVSUNvbnRleHRTcGVjcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVzZU9uZVVJVmlldzxQIGV4dGVuZHMgRmllbGRQYXRoPE9uZVVJQ29udGV4dFNwZWNzPj4oXG4gIG9uZXVpQ29uZmlnUGF0aDogUCxcbiAgY29tcG9uZW50TmFtZTogc3RyaW5nLFxuKSB7XG4gIGNvbnN0IHByb3ZpZGVkVmFsdWUgPSB1c2VPbmVVSUNvbmZpZyhvbmV1aUNvbmZpZ1BhdGgpO1xuICBpZiAoIXByb3ZpZGVkVmFsdWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBjb21wb25lbnQgJHtjb21wb25lbnROYW1lfSByZXF1aXJlcyBhIHZpZXcgdG8gYmUgc2V0IG9uIE9uZVVJIGluaXRpYWxpemF0aW9uXG5cblZpZXdzIHJlYWR5IGZvciB1c2Ugd2l0aCB0aGlzIGNvbXBvbmVudCBzaGFsbCBiZSBhdmFpbGFibGUgYXQ6XG5pbXBvcnQgU29tZVZpZXcgZnJvbSBcIkBvbmVwZXJjZW50aW8vb25lLXVpL2Rpc3QvY29tcG9uZW50cy8ke2NvbXBvbmVudE5hbWV9L1ZpZXcvU29tZVZpZXdcIjtcbiAgICBcblBsZWFzZSBkZWZpbmUgaXQgdXNpbmc6XG5pbXBvcnQgT25lVUlQcm92aWRlciBmcm9tIFwiQG9uZXBlcmNlbnRpby9vbmUtdWkvZGlzdC9jb250ZXh0L09uZVVJUHJvdmlkZXJcIjtcblxuICAuLi5cbiR7YDxPbmVVSVByb3ZpZGVyIGNvbmZpZz17JHtKU09OLnN0cmluZ2lmeShcbiAgcGF0aFRvSnNvbihvbmV1aUNvbmZpZ1BhdGgsIHVuZGVmaW5lZCwgXCJTb21lVmlld1wiKSxcbiAgbnVsbCxcbiAgNCxcbil9fT5cbi4uLlxuPC9PbmVVSVByb3ZpZGVyPmAucmVwbGFjZSgvWyBdL2csIFwiLVwiKX1gKTtcbiAgfVxuXG4gIHJldHVybiBwcm92aWRlZFZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlT25lVUlDb25maWc8UCBleHRlbmRzIEZpZWxkUGF0aDxPbmVVSUNvbnRleHRTcGVjcz4+KFxuICBwcm9wOiBQLFxuKTogR2V0PE9uZVVJQ29udGV4dFNwZWNzLCBQPjtcbmV4cG9ydCBmdW5jdGlvbiB1c2VPbmVVSUNvbmZpZzxcbiAgUCBleHRlbmRzIEZpZWxkUGF0aDxPbmVVSUNvbnRleHRTcGVjcz4sXG4gIFQgZXh0ZW5kcyBEZWVwUGFydGlhbDxHZXQ8T25lVUlDb250ZXh0U3BlY3MsIFA+Pixcbj4ocHJvcDogUCwgZGVmYXVsdFZhbHVlOiBUKTogTm9uTnVsbGFibGU8R2V0PE9uZVVJQ29udGV4dFNwZWNzLCBQPj47XG5leHBvcnQgZnVuY3Rpb24gdXNlT25lVUlDb25maWc8XG4gIFAgZXh0ZW5kcyBGaWVsZFBhdGg8T25lVUlDb250ZXh0U3BlY3M+LFxuICBUIGV4dGVuZHMgR2V0PE9uZVVJQ29udGV4dFNwZWNzLCBQPixcbj4ocHJvcDogUCwgZGVmYXVsdFZhbHVlPzogVCk6IEdldDxPbmVVSUNvbnRleHRTcGVjcywgUD4gfCBUIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoQ29udGV4dCk7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJkZXZlbG9wbWVudFwiKSB7XG4gICAgY29uc3QgdmFsID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICByZXR1cm4gZ2V0KGNvbnRleHQsIHByb3ApO1xuICAgIH0sIFtjb250ZXh0LCBwcm9wXSk7XG4gICAgaWYgKFxuICAgICAgdHlwZW9mIHZhbCA9PT0gXCJzdHJpbmdcIiB8fFxuICAgICAgdHlwZW9mIHZhbCA9PT0gXCJmdW5jdGlvblwiIHx8XG4gICAgICBwcm9wLmVuZHNXaXRoKFwiLkNvbXBvbmVudFwiKSB8fFxuICAgICAgcHJvcC5lbmRzV2l0aChcIi5WaWV3XCIpXG4gICAgKVxuICAgICAgcmV0dXJuICh2YWwgYXMgYW55KSB8fCBkZWZhdWx0VmFsdWU7XG5cbiAgICBpZiAodHlwZW9mIHZhbCA9PT0gXCJib29sZWFuXCIpIHJldHVybiB2YWwgYXMgYW55O1xuICAgIHJldHVybiBFcnJvcldyYXBwZXIodmFsIHx8IGRlZmF1bHRWYWx1ZSkgYXMgdW5rbm93biBhcyBOb25OdWxsYWJsZTxUPjtcbiAgfVxuICBjb25zdCB2YWx1ZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBnZXQoY29udGV4dCwgcHJvcCk7XG4gIH0sIFtjb250ZXh0LCBwcm9wXSk7XG4gIHJldHVybiB2YWx1ZSB8fCBkZWZhdWx0VmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VDdXJyZW50SW1hZ2VTY2FsZSgpIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoQ29udGV4dCk7XG5cbiAgcmV0dXJuIGNvbnRleHQuc3RhdGUhLmltYWdlU2NhbGUhO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQ0EsSUFBQUEsSUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsVUFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUcsTUFBQSxHQUFBQyx1QkFBQSxDQUFBSixPQUFBO0FBV0EsSUFBQUssaUJBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUE0RCxTQUFBSSx3QkFBQUUsQ0FBQSxFQUFBQyxDQUFBLDZCQUFBQyxPQUFBLE1BQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUosdUJBQUEsWUFBQUEsQ0FBQUUsQ0FBQSxFQUFBQyxDQUFBLFNBQUFBLENBQUEsSUFBQUQsQ0FBQSxJQUFBQSxDQUFBLENBQUFLLFVBQUEsU0FBQUwsQ0FBQSxNQUFBTSxDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSxLQUFBQyxTQUFBLFFBQUFDLE9BQUEsRUFBQVYsQ0FBQSxpQkFBQUEsQ0FBQSx1QkFBQUEsQ0FBQSx5QkFBQUEsQ0FBQSxTQUFBUSxDQUFBLE1BQUFGLENBQUEsR0FBQUwsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsUUFBQUcsQ0FBQSxDQUFBSyxHQUFBLENBQUFYLENBQUEsVUFBQU0sQ0FBQSxDQUFBTSxHQUFBLENBQUFaLENBQUEsR0FBQU0sQ0FBQSxDQUFBTyxHQUFBLENBQUFiLENBQUEsRUFBQVEsQ0FBQSxnQkFBQVAsQ0FBQSxJQUFBRCxDQUFBLGdCQUFBQyxDQUFBLE9BQUFhLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZixDQUFBLEVBQUFDLENBQUEsT0FBQU0sQ0FB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
|
|
@@ -24,7 +24,9 @@ function _Input({ error, placeholder = " ", hideError, icon, Icon, autoFocus, di
|
|
|
24
24
|
}
|
|
25
25
|
}, [autoFocus]);
|
|
26
26
|
const Component = multiline ? "textarea" : "input";
|
|
27
|
-
|
|
27
|
+
const containerRef = useRef(null);
|
|
28
|
+
const maxWidth = useMemo(() => containerRef.current?.getBoundingClientRect().width, [error, disclaimer]);
|
|
29
|
+
return (_jsxs("div", { className: `${className.container} ${localClassName}`, children: [_jsxs("div", { className: `${Styles.inputContainer} ${false ? Styles.withIcon : ""}`, ref: containerRef, ...containerProps, children: [decoration, _jsx(Component, { ref: inputRef, placeholder: placeholder, rows: multiline, className: className.input, ...otherProps, onFocus: (e) => {
|
|
28
30
|
setFocused(true);
|
|
29
31
|
if (otherProps.onFocus)
|
|
30
32
|
otherProps.onFocus(e);
|
|
@@ -32,7 +34,7 @@ function _Input({ error, placeholder = " ", hideError, icon, Icon, autoFocus, di
|
|
|
32
34
|
setFocused(false);
|
|
33
35
|
if (otherProps.onBlur)
|
|
34
36
|
otherProps.onBlur(e);
|
|
35
|
-
} }), Icon && _jsx("div", { className: Styles.icon, children: Icon }), icon && _jsx("img", { className: Styles.icon, ...icon })] }), _jsx(AdaptiveContainer, { direction: "v", children: error && shouldShowError ? (_jsx(Text, { title: typeof error === "string" ? error : "", type: variants.error ?? "error", children: error }, "error")) : disclaimer ? (_jsx(Text, { title: typeof disclaimer === "string" ? disclaimer : "", type: variants.disclaimer ?? "caption", children: disclaimer }, "t")) : (_jsx(Fragment, {}, "e")) })] }));
|
|
37
|
+
} }), Icon && _jsx("div", { className: Styles.icon, children: Icon }), icon && _jsx("img", { className: Styles.icon, ...icon })] }), _jsx(AdaptiveContainer, { direction: "v", style: { maxWidth: maxWidth }, children: error && shouldShowError ? (_jsx(Text, { title: typeof error === "string" ? error : "", type: variants.error ?? "error", children: error }, "error")) : disclaimer ? (_jsx(Text, { title: typeof disclaimer === "string" ? disclaimer : "", type: variants.disclaimer ?? "caption", children: disclaimer }, "t")) : (_jsx(Fragment, {}, "e")) })] }));
|
|
36
38
|
}
|
|
37
39
|
/**
|
|
38
40
|
* A transparent input with some prebuilt states common to the application
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":";AAAA,OAAc,
|
|
1
|
+
{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import CheckBox from "../components/CheckBox";
|
|
|
10
10
|
import Radio from "../components/Radio/Radio";
|
|
11
11
|
import { FileInputViewProps } from "../components/FileInput/View/View.types";
|
|
12
12
|
import { AnswerByField, FormField, GenericFormFieldProps } from "../components/Form/FormField/FormField.types";
|
|
13
|
-
import {
|
|
13
|
+
import { FormMode } from "../components/Form/Form.types";
|
|
14
14
|
type DeepPartial<T> = {
|
|
15
15
|
[P in keyof T]?: NonNullable<T[P]> extends Function ? T[P] : DeepPartial<T[P]>;
|
|
16
16
|
};
|
|
@@ -47,7 +47,7 @@ export type OneUIContextSpecs = {
|
|
|
47
47
|
Input: (props: GenericFormFieldProps<K>) => ReactElement;
|
|
48
48
|
validator: (answer: AnswerByField<{
|
|
49
49
|
type: K;
|
|
50
|
-
}> | undefined, question:
|
|
50
|
+
}> | undefined, question: FormField & (FromOnePercentUtility<"UIElements.FormExtension">["fields"] & {
|
|
51
51
|
type: K;
|
|
52
52
|
})) => {
|
|
53
53
|
isValid: boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onepercentio/one-ui",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.2",
|
|
4
4
|
"description": "A set of reusable components created through the development of Onepercent projects",
|
|
5
5
|
"repository": "git@github.com:onepercentio/one-ui.git",
|
|
6
6
|
"author": "Murilo Oliveira de Araujo <murilo.araujo@onepercent.io>",
|