openstack-uicore-foundation 4.0.98 → 4.0.99
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/lib/components/ajaxloader.js +1 -184
- package/lib/components/attendance-tracker.js +1 -1992
- package/lib/components/bulk-actions-selector.js +1 -194
- package/lib/components/circle-button.js +1 -223
- package/lib/components/clock.js +1 -678
- package/lib/components/exclusive-wrapper.js +1 -151
- package/lib/components/extra-questions.js +1 -1902
- package/lib/components/form-validation.js +1 -190
- package/lib/components/forms/rsvp-form.js +1 -940
- package/lib/components/forms/simple-form.js +1 -708
- package/lib/components/free-text-search.js +1 -2042
- package/lib/components/google-map.js +1 -576
- package/lib/components/index.js +1 -12840
- package/lib/components/inputs/access-levels-input.js +1 -2306
- package/lib/components/inputs/action-dropdown.js +1 -219
- package/lib/components/inputs/checkbox-list.js +1 -339
- package/lib/components/inputs/company-input.js +1 -2341
- package/lib/components/inputs/country-dropdown.js +1 -2399
- package/lib/components/inputs/country-input.js +1 -2302
- package/lib/components/inputs/datetimepicker.js +1 -314
- package/lib/components/inputs/dropdown.js +1 -259
- package/lib/components/inputs/editor-input.js +1 -270
- package/lib/components/inputs/event-input.js +1 -2280
- package/lib/components/inputs/free-multi-text-input.js +1 -252
- package/lib/components/inputs/group-input.js +1 -2275
- package/lib/components/inputs/grouped-dropdown.js +1 -244
- package/lib/components/inputs/language-input.js +1 -2307
- package/lib/components/inputs/member-input.js +1 -2302
- package/lib/components/inputs/operator-input.js +1 -328
- package/lib/components/inputs/organization-input.js +1 -2325
- package/lib/components/inputs/promocode-input.js +1 -2310
- package/lib/components/inputs/radio-list.js +1 -297
- package/lib/components/inputs/registration-company-input.js +1 -2470
- package/lib/components/inputs/speaker-input.js +1 -2336
- package/lib/components/inputs/sponsor-input.js +1 -2284
- package/lib/components/inputs/stepped-select.js +1 -197
- package/lib/components/inputs/summit-days-select.js +1 -162
- package/lib/components/inputs/summit-input.js +1 -2282
- package/lib/components/inputs/summit-venues-select.js +1 -172
- package/lib/components/inputs/tag-input.js +1 -2352
- package/lib/components/inputs/text-input.js +1 -202
- package/lib/components/inputs/textarea-input.js +1 -181
- package/lib/components/inputs/ticket-types-input.js +1 -2338
- package/lib/components/inputs/upload-input-v2.js +1 -834
- package/lib/components/inputs/upload-input.js +1 -391
- package/lib/components/progressive-img.js +1 -289
- package/lib/components/raw-html.js +1 -125
- package/lib/components/schedule-builder-constants.js +1 -81
- package/lib/components/schedule-builder-view.js +1 -1684
- package/lib/components/sections/panel.js +1 -156
- package/lib/components/simple-link-list.js +1 -790
- package/lib/components/sponsored-project-input.js +1 -2281
- package/lib/components/summit-dropdown.js +1 -214
- package/lib/components/table-editable.js +1 -895
- package/lib/components/table-selectable.js +1 -552
- package/lib/components/table-sortable.js +1 -657
- package/lib/components/table.js +1 -510
- package/lib/components/video-stream.js +1 -226
- package/lib/css/components/bulk-actions-selector.css +1 -16
- package/lib/css/components/circle-button.css +1 -24
- package/lib/css/components/extra-questions.css +1 -29
- package/lib/css/components/form-validation.css +1 -29
- package/lib/css/components/free-text-search.css +1 -29
- package/lib/css/components/index.css +2 -1354
- package/lib/css/components/inputs/action-dropdown.css +1 -46
- package/lib/css/components/inputs/datetimepicker.css +1 -208
- package/lib/css/components/inputs/grouped-dropdown.css +1 -25
- package/lib/css/components/inputs/stepped-select.css +1 -12
- package/lib/css/components/inputs/upload-input-v2.css +1 -106
- package/lib/css/components/inputs/upload-input.css +1 -43
- package/lib/css/components/progressive-img.css +1 -16
- package/lib/css/components/schedule-builder-view.css +1 -230
- package/lib/css/components/simple-link-list.css +1 -189
- package/lib/css/components/summit-dropdown.css +1 -35
- package/lib/css/components/table-editable.css +1 -145
- package/lib/css/components/table-selectable.css +1 -147
- package/lib/css/components/table-sortable.css +1 -150
- package/lib/css/components/table.css +1 -147
- package/lib/i18n.js +1 -449
- package/lib/models/index.js +1 -238
- package/lib/models/summit-event.js +1 -210
- package/lib/security/abstract-auth-callback-route.js +1 -2114
- package/lib/security/actions.js +1 -1818
- package/lib/security/constants.js +1 -71
- package/lib/security/methods.js +1 -1818
- package/lib/security/reducers.js +1 -1961
- package/lib/security/session-checker.js +1 -2179
- package/lib/utils/actions.js +1 -1818
- package/lib/utils/fragment-parser.js +1 -207
- package/lib/utils/methods.js +1 -369
- package/lib/utils/query-actions.js +1 -2154
- package/lib/utils/questions-set.js +1 -609
- package/lib/utils/reducers.js +1 -1874
- package/lib/utils/use-fit-text.js +1 -178
- package/package.json +1 -1
|
@@ -1,297 +1 @@
|
|
|
1
|
-
(function
|
|
2
|
-
if(typeof exports === 'object' && typeof module === 'object')
|
|
3
|
-
module.exports = factory();
|
|
4
|
-
else if(typeof define === 'function' && define.amd)
|
|
5
|
-
define("openstack-uicore-foundation", [], factory);
|
|
6
|
-
else if(typeof exports === 'object')
|
|
7
|
-
exports["openstack-uicore-foundation"] = factory();
|
|
8
|
-
else
|
|
9
|
-
root["openstack-uicore-foundation"] = factory();
|
|
10
|
-
})(this, () => {
|
|
11
|
-
return /******/ (() => { // webpackBootstrap
|
|
12
|
-
/******/ "use strict";
|
|
13
|
-
/******/ var __webpack_modules__ = ({
|
|
14
|
-
|
|
15
|
-
/***/ "./src/components/raw-html/index.js":
|
|
16
|
-
/*!******************************************!*\
|
|
17
|
-
!*** ./src/components/raw-html/index.js ***!
|
|
18
|
-
\******************************************/
|
|
19
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
20
|
-
|
|
21
|
-
__webpack_require__.r(__webpack_exports__);
|
|
22
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
23
|
-
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
24
|
-
/* harmony export */ });
|
|
25
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
26
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const RawHTML = ({
|
|
30
|
-
children,
|
|
31
|
-
replaceNewLine = false,
|
|
32
|
-
className = ""
|
|
33
|
-
}) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
|
|
34
|
-
className: className,
|
|
35
|
-
dangerouslySetInnerHTML: {
|
|
36
|
-
__html: replaceNewLine ? children === null || children === void 0 ? void 0 : children.replace(/\n/g, '<br />') : children
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
|
|
40
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RawHTML);
|
|
41
|
-
|
|
42
|
-
/***/ }),
|
|
43
|
-
|
|
44
|
-
/***/ "@babel/runtime/helpers/objectWithoutProperties":
|
|
45
|
-
/*!*****************************************************************!*\
|
|
46
|
-
!*** external "@babel/runtime/helpers/objectWithoutProperties" ***!
|
|
47
|
-
\*****************************************************************/
|
|
48
|
-
/***/ ((module) => {
|
|
49
|
-
|
|
50
|
-
module.exports = require("@babel/runtime/helpers/objectWithoutProperties");
|
|
51
|
-
|
|
52
|
-
/***/ }),
|
|
53
|
-
|
|
54
|
-
/***/ "prop-types":
|
|
55
|
-
/*!*****************************!*\
|
|
56
|
-
!*** external "prop-types" ***!
|
|
57
|
-
\*****************************/
|
|
58
|
-
/***/ ((module) => {
|
|
59
|
-
|
|
60
|
-
module.exports = require("prop-types");
|
|
61
|
-
|
|
62
|
-
/***/ }),
|
|
63
|
-
|
|
64
|
-
/***/ "react":
|
|
65
|
-
/*!************************!*\
|
|
66
|
-
!*** external "react" ***!
|
|
67
|
-
\************************/
|
|
68
|
-
/***/ ((module) => {
|
|
69
|
-
|
|
70
|
-
module.exports = require("react");
|
|
71
|
-
|
|
72
|
-
/***/ })
|
|
73
|
-
|
|
74
|
-
/******/ });
|
|
75
|
-
/************************************************************************/
|
|
76
|
-
/******/ // The module cache
|
|
77
|
-
/******/ var __webpack_module_cache__ = {};
|
|
78
|
-
/******/
|
|
79
|
-
/******/ // The require function
|
|
80
|
-
/******/ function __webpack_require__(moduleId) {
|
|
81
|
-
/******/ // Check if module is in cache
|
|
82
|
-
/******/ var cachedModule = __webpack_module_cache__[moduleId];
|
|
83
|
-
/******/ if (cachedModule !== undefined) {
|
|
84
|
-
/******/ return cachedModule.exports;
|
|
85
|
-
/******/ }
|
|
86
|
-
/******/ // Create a new module (and put it into the cache)
|
|
87
|
-
/******/ var module = __webpack_module_cache__[moduleId] = {
|
|
88
|
-
/******/ // no module.id needed
|
|
89
|
-
/******/ // no module.loaded needed
|
|
90
|
-
/******/ exports: {}
|
|
91
|
-
/******/ };
|
|
92
|
-
/******/
|
|
93
|
-
/******/ // Execute the module function
|
|
94
|
-
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
|
|
95
|
-
/******/
|
|
96
|
-
/******/ // Return the exports of the module
|
|
97
|
-
/******/ return module.exports;
|
|
98
|
-
/******/ }
|
|
99
|
-
/******/
|
|
100
|
-
/************************************************************************/
|
|
101
|
-
/******/ /* webpack/runtime/compat get default export */
|
|
102
|
-
/******/ (() => {
|
|
103
|
-
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
104
|
-
/******/ __webpack_require__.n = (module) => {
|
|
105
|
-
/******/ var getter = module && module.__esModule ?
|
|
106
|
-
/******/ () => (module['default']) :
|
|
107
|
-
/******/ () => (module);
|
|
108
|
-
/******/ __webpack_require__.d(getter, { a: getter });
|
|
109
|
-
/******/ return getter;
|
|
110
|
-
/******/ };
|
|
111
|
-
/******/ })();
|
|
112
|
-
/******/
|
|
113
|
-
/******/ /* webpack/runtime/define property getters */
|
|
114
|
-
/******/ (() => {
|
|
115
|
-
/******/ // define getter functions for harmony exports
|
|
116
|
-
/******/ __webpack_require__.d = (exports, definition) => {
|
|
117
|
-
/******/ for(var key in definition) {
|
|
118
|
-
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
119
|
-
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
120
|
-
/******/ }
|
|
121
|
-
/******/ }
|
|
122
|
-
/******/ };
|
|
123
|
-
/******/ })();
|
|
124
|
-
/******/
|
|
125
|
-
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
|
126
|
-
/******/ (() => {
|
|
127
|
-
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
|
|
128
|
-
/******/ })();
|
|
129
|
-
/******/
|
|
130
|
-
/******/ /* webpack/runtime/make namespace object */
|
|
131
|
-
/******/ (() => {
|
|
132
|
-
/******/ // define __esModule on exports
|
|
133
|
-
/******/ __webpack_require__.r = (exports) => {
|
|
134
|
-
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
|
135
|
-
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
136
|
-
/******/ }
|
|
137
|
-
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
|
138
|
-
/******/ };
|
|
139
|
-
/******/ })();
|
|
140
|
-
/******/
|
|
141
|
-
/************************************************************************/
|
|
142
|
-
var __webpack_exports__ = {};
|
|
143
|
-
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
|
|
144
|
-
(() => {
|
|
145
|
-
/*!*********************************************!*\
|
|
146
|
-
!*** ./src/components/inputs/radio-list.js ***!
|
|
147
|
-
\*********************************************/
|
|
148
|
-
__webpack_require__.r(__webpack_exports__);
|
|
149
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
150
|
-
/* harmony export */ "default": () => (/* binding */ RadioList)
|
|
151
|
-
/* harmony export */ });
|
|
152
|
-
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "@babel/runtime/helpers/objectWithoutProperties");
|
|
153
|
-
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__);
|
|
154
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
|
|
155
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
|
|
156
|
-
/* harmony import */ var _raw_html__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../raw-html */ "./src/components/raw-html/index.js");
|
|
157
|
-
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! prop-types */ "prop-types");
|
|
158
|
-
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_3__);
|
|
159
|
-
|
|
160
|
-
const _excluded = ["onChange", "value", "className", "error", "ariaLabelledBy", "disabled", "options", "id", "name"];
|
|
161
|
-
|
|
162
|
-
/**
|
|
163
|
-
* Copyright 2018 OpenStack Foundation
|
|
164
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
165
|
-
* you may not use this file except in compliance with the License.
|
|
166
|
-
* You may obtain a copy of the License at
|
|
167
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
168
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
169
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
170
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
171
|
-
* See the License for the specific language governing permissions and
|
|
172
|
-
* limitations under the License.
|
|
173
|
-
**/
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
class RadioList extends (react__WEBPACK_IMPORTED_MODULE_1___default().Component) {
|
|
178
|
-
constructor(props) {
|
|
179
|
-
super(props);
|
|
180
|
-
this.state = {
|
|
181
|
-
value: props.value
|
|
182
|
-
};
|
|
183
|
-
this.handleChange = this.handleChange.bind(this);
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
handleChange(selection) {
|
|
187
|
-
let ev = {
|
|
188
|
-
target: {
|
|
189
|
-
id: this.props.id,
|
|
190
|
-
value: selection.target.value,
|
|
191
|
-
type: 'radio'
|
|
192
|
-
}
|
|
193
|
-
};
|
|
194
|
-
this.props.onChange(ev);
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
getLabel(option, id, inline, simple, html) {
|
|
198
|
-
if (inline) {
|
|
199
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("label", {
|
|
200
|
-
className: "form-check-label",
|
|
201
|
-
htmlFor: `radio_${id}_${option.value}`,
|
|
202
|
-
style: {
|
|
203
|
-
display: 'inline-block'
|
|
204
|
-
}
|
|
205
|
-
}, html && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_raw_html__WEBPACK_IMPORTED_MODULE_2__["default"], null, option.label), !html && option.label);
|
|
206
|
-
} else if (simple) {
|
|
207
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("label", {
|
|
208
|
-
className: "form-check-label",
|
|
209
|
-
htmlFor: `radio_${id}_${option.value}`
|
|
210
|
-
}, option.label);
|
|
211
|
-
} else {
|
|
212
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("label", {
|
|
213
|
-
className: "form-check-label",
|
|
214
|
-
htmlFor: `radio_${id}_${option.value}`,
|
|
215
|
-
style: {
|
|
216
|
-
display: 'inline-block'
|
|
217
|
-
}
|
|
218
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("h4", {
|
|
219
|
-
style: {
|
|
220
|
-
marginTop: '0px'
|
|
221
|
-
}
|
|
222
|
-
}, option.label), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_raw_html__WEBPACK_IMPORTED_MODULE_2__["default"], null, option.description));
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
render() {
|
|
227
|
-
let _this$props = this.props,
|
|
228
|
-
{
|
|
229
|
-
onChange,
|
|
230
|
-
value,
|
|
231
|
-
className,
|
|
232
|
-
error,
|
|
233
|
-
ariaLabelledBy,
|
|
234
|
-
disabled,
|
|
235
|
-
options,
|
|
236
|
-
id,
|
|
237
|
-
name
|
|
238
|
-
} = _this$props,
|
|
239
|
-
rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0___default()(_this$props, _excluded);
|
|
240
|
-
|
|
241
|
-
let has_error = this.props.hasOwnProperty('error') && error != '';
|
|
242
|
-
let inline = this.props.hasOwnProperty('inline');
|
|
243
|
-
let simple = this.props.hasOwnProperty('simple');
|
|
244
|
-
let html = this.props.hasOwnProperty('html');
|
|
245
|
-
let isDisabled = this.props.hasOwnProperty('disabled') && disabled == true;
|
|
246
|
-
let style, label;
|
|
247
|
-
|
|
248
|
-
if (inline) {
|
|
249
|
-
style = {
|
|
250
|
-
paddingLeft: '22px',
|
|
251
|
-
marginLeft: '20px',
|
|
252
|
-
float: 'left'
|
|
253
|
-
};
|
|
254
|
-
} else {
|
|
255
|
-
style = {
|
|
256
|
-
paddingLeft: '22px'
|
|
257
|
-
};
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
|
|
261
|
-
id: `rl_wrapper_${id}`,
|
|
262
|
-
"aria-labelledby": ariaLabelledBy
|
|
263
|
-
}, options.map(op => {
|
|
264
|
-
let checked = op.value == value;
|
|
265
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
|
|
266
|
-
className: "form-check abc-radio",
|
|
267
|
-
key: `radio_key_${id}_${op.value}`,
|
|
268
|
-
style: style
|
|
269
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("input", {
|
|
270
|
-
className: "form-check-input",
|
|
271
|
-
type: "radio",
|
|
272
|
-
id: `radio_${id}_${op.value}`,
|
|
273
|
-
value: op.value,
|
|
274
|
-
checked: checked,
|
|
275
|
-
onChange: this.handleChange,
|
|
276
|
-
disabled: isDisabled,
|
|
277
|
-
name: name ? name : `radio_${id}`
|
|
278
|
-
}), this.getLabel(op, id, inline, simple, html));
|
|
279
|
-
}), has_error && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("p", {
|
|
280
|
-
className: "error-label"
|
|
281
|
-
}, error));
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
}
|
|
285
|
-
RadioList.defaultProps = {
|
|
286
|
-
ariaLabelledBy: null
|
|
287
|
-
};
|
|
288
|
-
RadioList.propTypes = {
|
|
289
|
-
id: (prop_types__WEBPACK_IMPORTED_MODULE_3___default().string.isRequired)
|
|
290
|
-
};
|
|
291
|
-
})();
|
|
292
|
-
|
|
293
|
-
/******/ return __webpack_exports__;
|
|
294
|
-
/******/ })()
|
|
295
|
-
;
|
|
296
|
-
});
|
|
297
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy9pbnB1dHMvcmFkaW8tbGlzdC5qcyIsIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0QsTzs7Ozs7Ozs7Ozs7Ozs7OztBQ1ZBOztBQUVBLE1BQU1DLE9BQU8sR0FBRyxDQUFDO0VBQUNDLFFBQUQ7RUFBV0MsY0FBYyxHQUFHLEtBQTVCO0VBQW1DQyxTQUFTLEdBQUc7QUFBL0MsQ0FBRCxrQkFDWjtFQUFNLFNBQVMsRUFBRUEsU0FBakI7RUFDTSx1QkFBdUIsRUFBRTtJQUFFQyxNQUFNLEVBQUVGLGNBQWMsR0FBR0QsUUFBSCxhQUFHQSxRQUFILHVCQUFHQSxRQUFRLENBQUVJLE9BQVYsQ0FBa0IsS0FBbEIsRUFBeUIsUUFBekIsQ0FBSCxHQUF3Q0o7RUFBaEU7QUFEL0IsRUFESjs7QUFJQSxpRUFBZUQsT0FBZjs7Ozs7Ozs7OztBQ05BOzs7Ozs7Ozs7O0FDQUE7Ozs7Ozs7Ozs7QUNBQTs7Ozs7O1VDQUE7VUFDQTs7VUFFQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTs7VUFFQTtVQUNBOztVQUVBO1VBQ0E7VUFDQTs7Ozs7V0N0QkE7V0FDQTtXQUNBO1dBQ0E7V0FDQTtXQUNBLGlDQUFpQyxXQUFXO1dBQzVDO1dBQ0E7Ozs7O1dDUEE7V0FDQTtXQUNBO1dBQ0E7V0FDQSx5Q0FBeUMsd0NBQXdDO1dBQ2pGO1dBQ0E7V0FDQTs7Ozs7V0NQQTs7Ozs7V0NBQTtXQUNBO1dBQ0E7V0FDQSx1REFBdUQsaUJBQWlCO1dBQ3hFO1dBQ0EsZ0RBQWdELGFBQWE7V0FDN0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ05BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUVlLE1BQU1PLFNBQU4sU0FBd0JSLHdEQUF4QixDQUF3QztFQUVu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RUFBRSxFQUFFWixxRUFBMkI0QztBQURiLENBQXRCLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9vcGVuc3RhY2stdWljb3JlLWZvdW5kYXRpb24vd2VicGFjay91bml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uIiwid2VicGFjazovL29wZW5zdGFjay11aWNvcmUtZm91bmRhdGlvbi8uL3NyYy9jb21wb25lbnRzL3Jhdy1odG1sL2luZGV4LmpzIiwid2VicGFjazovL29wZW5zdGFjay11aWNvcmUtZm91bmRhdGlvbi9leHRlcm5hbCBjb21tb25qcyBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvb2JqZWN0V2l0aG91dFByb3BlcnRpZXNcIiIsIndlYnBhY2s6Ly9vcGVuc3RhY2stdWljb3JlLWZvdW5kYXRpb24vZXh0ZXJuYWwgY29tbW9uanMgXCJwcm9wLXR5cGVzXCIiLCJ3ZWJwYWNrOi8vb3BlbnN0YWNrLXVpY29yZS1mb3VuZGF0aW9uL2V4dGVybmFsIGNvbW1vbmpzIFwicmVhY3RcIiIsIndlYnBhY2s6Ly9vcGVuc3RhY2stdWljb3JlLWZvdW5kYXRpb24vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vb3BlbnN0YWNrLXVpY29yZS1mb3VuZGF0aW9uL3dlYnBhY2svcnVudGltZS9jb21wYXQgZ2V0IGRlZmF1bHQgZXhwb3J0Iiwid2VicGFjazovL29wZW5zdGFjay11aWNvcmUtZm91bmRhdGlvbi93ZWJwYWNrL3J1bnRpbWUvZGVmaW5lIHByb3BlcnR5IGdldHRlcnMiLCJ3ZWJwYWNrOi8vb3BlbnN0YWNrLXVpY29yZS1mb3VuZGF0aW9uL3dlYnBhY2svcnVudGltZS9oYXNPd25Qcm9wZXJ0eSBzaG9ydGhhbmQiLCJ3ZWJwYWNrOi8vb3BlbnN0YWNrLXVpY29yZS1mb3VuZGF0aW9uL3dlYnBhY2svcnVudGltZS9tYWtlIG5hbWVzcGFjZSBvYmplY3QiLCJ3ZWJwYWNrOi8vb3BlbnN0YWNrLXVpY29yZS1mb3VuZGF0aW9uLy4vc3JjL2NvbXBvbmVudHMvaW5wdXRzL3JhZGlvLWxpc3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiKGZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHJvb3QsIGZhY3RvcnkpIHtcblx0aWYodHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUgPT09ICdvYmplY3QnKVxuXHRcdG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpO1xuXHRlbHNlIGlmKHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZClcblx0XHRkZWZpbmUoXCJvcGVuc3RhY2stdWljb3JlLWZvdW5kYXRpb25cIiwgW10sIGZhY3RvcnkpO1xuXHRlbHNlIGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jylcblx0XHRleHBvcnRzW1wib3BlbnN0YWNrLXVpY29yZS1mb3VuZGF0aW9uXCJdID0gZmFjdG9yeSgpO1xuXHRlbHNlXG5cdFx0cm9vdFtcIm9wZW5zdGFjay11aWNvcmUtZm91bmRhdGlvblwiXSA9IGZhY3RvcnkoKTtcbn0pKHRoaXMsICgpID0+IHtcbnJldHVybiAiLCJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5jb25zdCBSYXdIVE1MID0gKHtjaGlsZHJlbiwgcmVwbGFjZU5ld0xpbmUgPSBmYWxzZSwgY2xhc3NOYW1lID0gXCJcIn0pID0+XG4gICAgPHNwYW4gY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3sgX19odG1sOiByZXBsYWNlTmV3TGluZSA/IGNoaWxkcmVuPy5yZXBsYWNlKC9cXG4vZywgJzxiciAvPicpIDogY2hpbGRyZW59fSAvPlxuXG5leHBvcnQgZGVmYXVsdCBSYXdIVE1MOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvb2JqZWN0V2l0aG91dFByb3BlcnRpZXNcIik7IiwibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwicHJvcC10eXBlc1wiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJyZWFjdFwiKTsiLCIvLyBUaGUgbW9kdWxlIGNhY2hlXG52YXIgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fID0ge307XG5cbi8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG5mdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuXHR2YXIgY2FjaGVkTW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcblx0aWYgKGNhY2hlZE1vZHVsZSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIGNhY2hlZE1vZHVsZS5leHBvcnRzO1xuXHR9XG5cdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG5cdHZhciBtb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdID0ge1xuXHRcdC8vIG5vIG1vZHVsZS5pZCBuZWVkZWRcblx0XHQvLyBubyBtb2R1bGUubG9hZGVkIG5lZWRlZFxuXHRcdGV4cG9ydHM6IHt9XG5cdH07XG5cblx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG5cdF9fd2VicGFja19tb2R1bGVzX19bbW9kdWxlSWRdKG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG5cdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG5cdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbn1cblxuIiwiLy8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbl9fd2VicGFja19yZXF1aXJlX18ubiA9IChtb2R1bGUpID0+IHtcblx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG5cdFx0KCkgPT4gKG1vZHVsZVsnZGVmYXVsdCddKSA6XG5cdFx0KCkgPT4gKG1vZHVsZSk7XG5cdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsIHsgYTogZ2V0dGVyIH0pO1xuXHRyZXR1cm4gZ2V0dGVyO1xufTsiLCIvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9ucyBmb3IgaGFybW9ueSBleHBvcnRzXG5fX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSAoZXhwb3J0cywgZGVmaW5pdGlvbikgPT4ge1xuXHRmb3IodmFyIGtleSBpbiBkZWZpbml0aW9uKSB7XG5cdFx0aWYoX193ZWJwYWNrX3JlcXVpcmVfXy5vKGRlZmluaXRpb24sIGtleSkgJiYgIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBrZXkpKSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZGVmaW5pdGlvbltrZXldIH0pO1xuXHRcdH1cblx0fVxufTsiLCJfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSAob2JqLCBwcm9wKSA9PiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCkpIiwiLy8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5yID0gKGV4cG9ydHMpID0+IHtcblx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cdH1cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbn07IiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxOCBPcGVuU3RhY2sgRm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICoqL1xuXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFJhd0hUTUwgZnJvbSAnLi4vcmF3LWh0bWwnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSYWRpb0xpc3QgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgICAgc3VwZXIocHJvcHMpO1xuXG4gICAgICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICAgICAgICB2YWx1ZTogcHJvcHMudmFsdWUsXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5oYW5kbGVDaGFuZ2UgPSB0aGlzLmhhbmRsZUNoYW5nZS5iaW5kKHRoaXMpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZShzZWxlY3Rpb24pIHtcblxuICAgICAgICBsZXQgZXYgPSB7dGFyZ2V0OiB7XG4gICAgICAgICAgICAgICAgaWQ6IHRoaXMucHJvcHMuaWQsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHNlbGVjdGlvbi50YXJnZXQudmFsdWUsXG4gICAgICAgICAgICAgICAgdHlwZTogJ3JhZGlvJ1xuICAgICAgICAgICAgfX07XG5cbiAgICAgICAgdGhpcy5wcm9wcy5vbkNoYW5nZShldik7XG4gICAgfVxuXG4gICAgZ2V0TGFiZWwob3B0aW9uLCBpZCwgaW5saW5lLCBzaW1wbGUsIGh0bWwpIHtcbiAgICAgICAgaWYgKGlubGluZSkge1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3NOYW1lPVwiZm9ybS1jaGVjay1sYWJlbFwiIGh0bWxGb3I9e2ByYWRpb18ke2lkfV8ke29wdGlvbi52YWx1ZX1gfSBzdHlsZT17e2Rpc3BsYXk6ICdpbmxpbmUtYmxvY2snfX0+XG4gICAgICAgICAgICAgICAgICAgIHtodG1sICYmXG4gICAgICAgICAgICAgICAgICAgIDxSYXdIVE1MPlxuICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgPC9SYXdIVE1MPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHshaHRtbCAmJlxuICAgICAgICAgICAgICAgICAgICBvcHRpb24ubGFiZWxcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2UgaWYgKHNpbXBsZSkge1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3NOYW1lPVwiZm9ybS1jaGVjay1sYWJlbFwiIGh0bWxGb3I9e2ByYWRpb18ke2lkfV8ke29wdGlvbi52YWx1ZX1gfSA+XG4gICAgICAgICAgICAgICAgICAgIHtvcHRpb24ubGFiZWx9XG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzc05hbWU9XCJmb3JtLWNoZWNrLWxhYmVsXCIgaHRtbEZvcj17YHJhZGlvXyR7aWR9XyR7b3B0aW9uLnZhbHVlfWB9IHN0eWxlPXt7ZGlzcGxheTogJ2lubGluZS1ibG9jayd9fT5cbiAgICAgICAgICAgICAgICAgICAgPGg0IHN0eWxlPXt7bWFyZ2luVG9wOiAnMHB4J319PntvcHRpb24ubGFiZWx9PC9oND5cbiAgICAgICAgICAgICAgICAgICAgPFJhd0hUTUw+e29wdGlvbi5kZXNjcmlwdGlvbn08L1Jhd0hUTUw+XG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZW5kZXIoKSB7XG5cbiAgICAgICAgbGV0IHtvbkNoYW5nZSwgdmFsdWUsIGNsYXNzTmFtZSwgZXJyb3IsIGFyaWFMYWJlbGxlZEJ5LCBkaXNhYmxlZCwgb3B0aW9ucyxpZCwgbmFtZSwuLi5yZXN0fSA9IHRoaXMucHJvcHM7XG4gICAgICAgIGxldCBoYXNfZXJyb3IgPSAoIHRoaXMucHJvcHMuaGFzT3duUHJvcGVydHkoJ2Vycm9yJykgJiYgZXJyb3IgIT0gJycgKTtcbiAgICAgICAgbGV0IGlubGluZSA9ICggdGhpcy5wcm9wcy5oYXNPd25Qcm9wZXJ0eSgnaW5saW5lJykgKTtcbiAgICAgICAgbGV0IHNpbXBsZSA9ICggdGhpcy5wcm9wcy5oYXNPd25Qcm9wZXJ0eSgnc2ltcGxlJykgKTtcbiAgICAgICAgbGV0IGh0bWwgPSAoIHRoaXMucHJvcHMuaGFzT3duUHJvcGVydHkoJ2h0bWwnKSApO1xuICAgICAgICBsZXQgaXNEaXNhYmxlZCA9ICh0aGlzLnByb3BzLmhhc093blByb3BlcnR5KCdkaXNhYmxlZCcpICYmIGRpc2FibGVkID09IHRydWUpO1xuXG4gICAgICAgIGxldCBzdHlsZSwgbGFiZWw7XG5cbiAgICAgICAgaWYgKGlubGluZSkge1xuICAgICAgICAgICAgc3R5bGUgPSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZ0xlZnQ6ICcyMnB4JyxcbiAgICAgICAgICAgICAgICBtYXJnaW5MZWZ0OiAnMjBweCcsXG4gICAgICAgICAgICAgICAgZmxvYXQ6ICdsZWZ0J1xuICAgICAgICAgICAgfTtcblxuXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHlsZSA9IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nTGVmdDogJzIycHgnXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPGRpdiBpZD17YHJsX3dyYXBwZXJfJHtpZH1gfSBhcmlhLWxhYmVsbGVkYnk9e2FyaWFMYWJlbGxlZEJ5fT5cbiAgICAgICAgICAgICAgICB7IG9wdGlvbnMubWFwKG9wID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGNoZWNrZWQgPSAob3AudmFsdWUgPT0gdmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmb3JtLWNoZWNrIGFiYy1yYWRpb1wiIGtleT17YHJhZGlvX2tleV8ke2lkfV8ke29wLnZhbHVlfWB9IHN0eWxlPXtzdHlsZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImZvcm0tY2hlY2staW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD17YHJhZGlvXyR7aWR9XyR7b3AudmFsdWV9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e29wLnZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGVja2VkPXtjaGVja2VkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtpc0Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXtuYW1lID8gbmFtZSA6IGByYWRpb18ke2lkfWB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dGhpcy5nZXRMYWJlbChvcCwgaWQsIGlubGluZSwgc2ltcGxlLCBodG1sKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfSl9XG5cbiAgICAgICAgICAgICAgICB7aGFzX2Vycm9yICYmXG4gICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiZXJyb3ItbGFiZWxcIj57ZXJyb3J9PC9wPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICApO1xuXG4gICAgfVxufVxuXG5SYWRpb0xpc3QuZGVmYXVsdFByb3BzID0ge1xuICAgIGFyaWFMYWJlbGxlZEJ5IDogbnVsbCxcbn1cblxuUmFkaW9MaXN0LnByb3BUeXBlcyA9IHtcbiAgICBpZDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkXG59OyJdLCJuYW1lcyI6WyJSZWFjdCIsIlJhd0hUTUwiLCJjaGlsZHJlbiIsInJlcGxhY2VOZXdMaW5lIiwiY2xhc3NOYW1lIiwiX19odG1sIiwicmVwbGFjZSIsIlByb3BUeXBlcyIsIlJhZGlvTGlzdCIsIkNvbXBvbmVudCIsImNvbnN0cnVjdG9yIiwicHJvcHMiLCJzdGF0ZSIsInZhbHVlIiwiaGFuZGxlQ2hhbmdlIiwiYmluZCIsInNlbGVjdGlvbiIsImV2IiwidGFyZ2V0IiwiaWQiLCJ0eXBlIiwib25DaGFuZ2UiLCJnZXRMYWJlbCIsIm9wdGlvbiIsImlubGluZSIsInNpbXBsZSIsImh0bWwiLCJkaXNwbGF5IiwibGFiZWwiLCJtYXJnaW5Ub3AiLCJkZXNjcmlwdGlvbiIsInJlbmRlciIsImVycm9yIiwiYXJpYUxhYmVsbGVkQnkiLCJkaXNhYmxlZCIsIm9wdGlvbnMiLCJuYW1lIiwicmVzdCIsImhhc19lcnJvciIsImhhc093blByb3BlcnR5IiwiaXNEaXNhYmxlZCIsInN0eWxlIiwicGFkZGluZ0xlZnQiLCJtYXJnaW5MZWZ0IiwiZmxvYXQiLCJtYXAiLCJvcCIsImNoZWNrZWQiLCJkZWZhdWx0UHJvcHMiLCJwcm9wVHlwZXMiLCJzdHJpbmciLCJpc1JlcXVpcmVkIl0sInNvdXJjZVJvb3QiOiIifQ==
|
|
1
|
+
!function(e,a){"object"==typeof exports&&"object"==typeof module?module.exports=a():"function"==typeof define&&define.amd?define("openstack-uicore-foundation",[],a):"object"==typeof exports?exports["openstack-uicore-foundation"]=a():e["openstack-uicore-foundation"]=a()}(this,(()=>(()=>{"use strict";var e={418:(e,a,r)=>{r.d(a,{default:()=>o});var t=r(6689),l=r.n(t);const o=({children:e,replaceNewLine:a=!1,className:r=""})=>l().createElement("span",{className:r,dangerouslySetInnerHTML:{__html:a?null==e?void 0:e.replace(/\n/g,"<br />"):e}})},3838:e=>{e.exports=require("@babel/runtime/helpers/objectWithoutProperties")},580:e=>{e.exports=require("prop-types")},6689:e=>{e.exports=require("react")}},a={};function r(t){var l=a[t];if(void 0!==l)return l.exports;var o=a[t]={exports:{}};return e[t](o,o.exports,r),o.exports}(()=>{r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a}),a}})(),(()=>{r.d=(e,a)=>{for(var t in a)r.o(a,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:a[t]})}})(),(()=>{r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})();var t={};return(()=>{r.r(t),r.d(t,{default:()=>d});var e=r(3838),a=r.n(e),l=r(6689),o=r.n(l),n=r(418),s=r(580),i=r.n(s);const p=["onChange","value","className","error","ariaLabelledBy","disabled","options","id","name"];class d extends o().Component{constructor(e){super(e),this.state={value:e.value},this.handleChange=this.handleChange.bind(this)}handleChange(e){let a={target:{id:this.props.id,value:e.target.value,type:"radio"}};this.props.onChange(a)}getLabel(e,a,r,t,l){return r?o().createElement("label",{className:"form-check-label",htmlFor:`radio_${a}_${e.value}`,style:{display:"inline-block"}},l&&o().createElement(n.default,null,e.label),!l&&e.label):t?o().createElement("label",{className:"form-check-label",htmlFor:`radio_${a}_${e.value}`},e.label):o().createElement("label",{className:"form-check-label",htmlFor:`radio_${a}_${e.value}`,style:{display:"inline-block"}},o().createElement("h4",{style:{marginTop:"0px"}},e.label),o().createElement(n.default,null,e.description))}render(){let e,r=this.props,{onChange:t,value:l,className:n,error:s,ariaLabelledBy:i,disabled:d,options:c,id:u,name:h}=r,m=(a()(r,p),this.props.hasOwnProperty("error")&&""!=s),b=this.props.hasOwnProperty("inline"),f=this.props.hasOwnProperty("simple"),y=this.props.hasOwnProperty("html"),v=this.props.hasOwnProperty("disabled")&&1==d;return e=b?{paddingLeft:"22px",marginLeft:"20px",float:"left"}:{paddingLeft:"22px"},o().createElement("div",{id:`rl_wrapper_${u}`,"aria-labelledby":i},c.map((a=>{let r=a.value==l;return o().createElement("div",{className:"form-check abc-radio",key:`radio_key_${u}_${a.value}`,style:e},o().createElement("input",{className:"form-check-input",type:"radio",id:`radio_${u}_${a.value}`,value:a.value,checked:r,onChange:this.handleChange,disabled:v,name:h||`radio_${u}`}),this.getLabel(a,u,b,f,y))})),m&&o().createElement("p",{className:"error-label"},s))}}d.defaultProps={ariaLabelledBy:null},d.propTypes={id:i().string.isRequired}})(),t})()));
|