ably-ui 8.7.0.dev.6053fb4 → 8.7.0.dev.7072b07
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +6 -6
- data/README.md +7 -3
- data/lib/ably_ui/core/code/component.css +2 -0
- data/lib/ably_ui/core/code/component.js +739 -1
- data/lib/ably_ui/core/company_autocomplete/component.css +2 -0
- data/lib/ably_ui/core/company_autocomplete/component.js +1161 -1
- data/lib/ably_ui/core/connect_state_wrapper/component.js +22 -1
- data/lib/ably_ui/core/contact_footer/component.css +2 -0
- data/lib/ably_ui/core/contact_footer/component.js +211 -1
- data/lib/ably_ui/core/cookie_message/component.css +2 -0
- data/lib/ably_ui/core/cookie_message/component.js +82 -1
- data/lib/ably_ui/core/core.rb +8 -4
- data/lib/ably_ui/core/customer_logos/component.js +22 -1
- data/lib/ably_ui/core/dropdown_menu/component.js +22 -1
- data/lib/ably_ui/core/feature_footer/component.css +2 -0
- data/lib/ably_ui/core/feature_footer/component.js +211 -1
- data/lib/ably_ui/core/featured_link/component.css +2 -0
- data/lib/ably_ui/core/featured_link/component.js +82 -1
- data/lib/ably_ui/core/flash/component.css +2 -0
- data/lib/ably_ui/core/flash/component.js +82 -1
- data/lib/ably_ui/core/footer/component.css +3 -1
- data/lib/ably_ui/core/footer/component.js +82 -1
- data/lib/ably_ui/core/footer/footer.html.erb +18 -23
- data/lib/ably_ui/core/icon/component.js +22 -1
- data/lib/ably_ui/core/images/best-support-2023.svg +1 -0
- data/lib/ably_ui/core/images/fastest-implementation-2023.svg +1 -0
- data/lib/ably_ui/core/images/high-performer-2023.svg +1 -0
- data/lib/ably_ui/core/images/highest-user-adoption-2023.svg +1 -0
- data/lib/ably_ui/core/loader/component.js +22 -1
- data/lib/ably_ui/core/logo/component.js +22 -1
- data/lib/ably_ui/core/meganav/component.css +3 -3
- data/lib/ably_ui/core/meganav/component.js +992 -1
- data/lib/ably_ui/core/meganav/component.json +1 -1
- data/lib/ably_ui/core/meganav/meganav.rb +4 -4
- data/lib/ably_ui/core/meganav_blog_posts_list/component.js +1159 -1
- data/lib/ably_ui/core/meganav_content_company/component.js +22 -1
- data/lib/ably_ui/core/meganav_content_company/meganav_content_company.html.erb +9 -0
- data/lib/ably_ui/core/meganav_content_developers/component.js +22 -1
- data/lib/ably_ui/core/meganav_content_developers/meganav_content_developers.html.erb +18 -2
- data/lib/ably_ui/core/meganav_content_products/component.js +22 -0
- data/lib/ably_ui/core/{meganav_content_platform/meganav_content_platform.html.erb → meganav_content_products/meganav_content_products.html.erb} +15 -33
- data/lib/ably_ui/core/{meganav_content_platform/meganav_content_platform.rb → meganav_content_products/meganav_content_products.rb} +1 -1
- data/lib/ably_ui/core/meganav_content_use_cases/component.js +22 -1
- data/lib/ably_ui/core/meganav_content_use_cases/meganav_content_use_cases.html.erb +42 -38
- data/lib/ably_ui/core/meganav_control/component.js +241 -1
- data/lib/ably_ui/core/meganav_control_mobile_dropdown/component.js +180 -1
- data/lib/ably_ui/core/meganav_control_mobile_panel_close/component.js +142 -1
- data/lib/ably_ui/core/meganav_control_mobile_panel_open/component.js +170 -1
- data/lib/ably_ui/core/meganav_items_desktop/component.js +22 -1
- data/lib/ably_ui/core/meganav_items_desktop/meganav_items_desktop.rb +1 -1
- data/lib/ably_ui/core/meganav_items_mobile/component.js +22 -1
- data/lib/ably_ui/core/meganav_items_signed_in/component.js +22 -1
- data/lib/ably_ui/core/meganav_search/component.js +22 -1
- data/lib/ably_ui/core/meganav_search_autocomplete/component.js +295 -1
- data/lib/ably_ui/core/meganav_search_panel/component.js +22 -1
- data/lib/ably_ui/core/meganav_search_suggestions/component.js +258 -1
- data/lib/ably_ui/core/notice/component.css +2 -0
- data/lib/ably_ui/core/notice/component.js +872 -1
- data/lib/ably_ui/core/scripts.js +1465 -1
- data/lib/ably_ui/core/showcase/component.css +2 -0
- data/lib/ably_ui/core/showcase/component.js +343 -1
- data/lib/ably_ui/core/sign_out_link/component.js +22 -1
- data/lib/ably_ui/core/slider/component.css +2 -0
- data/lib/ably_ui/core/slider/component.js +255 -1
- data/lib/ably_ui/core/sprites.svg +93 -0
- data/lib/ably_ui/core/styles.css +3 -7
- data/lib/ably_ui/core/uptime/component.css +2 -0
- data/lib/ably_ui/core/uptime/component.js +82 -1
- data/lib/ably_ui/reset/scripts.js +1 -1
- data/lib/ably_ui/reset/styles.css +1 -11
- data/lib/ably_ui/version.rb +1 -1
- metadata +9 -5
- data/lib/ably_ui/core/meganav_content_platform/component.js +0 -1
@@ -1 +1,295 @@
|
|
1
|
-
|
1
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
2
|
+
if(typeof exports === 'object' && typeof module === 'object')
|
3
|
+
module.exports = factory(require("addsearch-js-client"));
|
4
|
+
else if(typeof define === 'function' && define.amd)
|
5
|
+
define([], factory);
|
6
|
+
else if(typeof exports === 'object')
|
7
|
+
exports["AblyUi"] = factory(require("addsearch-js-client"));
|
8
|
+
else
|
9
|
+
root["AblyUi"] = root["AblyUi"] || {}, root["AblyUi"]["Core"] = root["AblyUi"]["Core"] || {}, root["AblyUi"]["Core"]["MeganavSearchAutocomplete"] = factory(root[undefined]);
|
10
|
+
})(this, (__WEBPACK_EXTERNAL_MODULE_addsearch_js_client__) => {
|
11
|
+
return /******/ (() => { // webpackBootstrap
|
12
|
+
/******/ "use strict";
|
13
|
+
/******/ var __webpack_modules__ = ({
|
14
|
+
|
15
|
+
/***/ "./src/core/dom-query.js":
|
16
|
+
/*!*******************************!*\
|
17
|
+
!*** ./src/core/dom-query.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 */ "queryId": () => (/* binding */ queryId),
|
24
|
+
/* harmony export */ "queryIdAll": () => (/* binding */ queryIdAll)
|
25
|
+
/* harmony export */ });
|
26
|
+
var queryId = function queryId(val) {
|
27
|
+
var root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document;
|
28
|
+
return root.querySelector("[data-id=".concat(val, "]"));
|
29
|
+
};
|
30
|
+
var queryIdAll = function queryIdAll(val) {
|
31
|
+
var root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document;
|
32
|
+
return root.querySelectorAll("[data-id=".concat(val, "]"));
|
33
|
+
};
|
34
|
+
|
35
|
+
/***/ }),
|
36
|
+
|
37
|
+
/***/ "addsearch-js-client":
|
38
|
+
/*!*************************************************************************************!*\
|
39
|
+
!*** external {"commonjs":"addsearch-js-client","commonjs2":"addsearch-js-client"} ***!
|
40
|
+
\*************************************************************************************/
|
41
|
+
/***/ ((module) => {
|
42
|
+
|
43
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE_addsearch_js_client__;
|
44
|
+
|
45
|
+
/***/ })
|
46
|
+
|
47
|
+
/******/ });
|
48
|
+
/************************************************************************/
|
49
|
+
/******/ // The module cache
|
50
|
+
/******/ var __webpack_module_cache__ = {};
|
51
|
+
/******/
|
52
|
+
/******/ // The require function
|
53
|
+
/******/ function __webpack_require__(moduleId) {
|
54
|
+
/******/ // Check if module is in cache
|
55
|
+
/******/ var cachedModule = __webpack_module_cache__[moduleId];
|
56
|
+
/******/ if (cachedModule !== undefined) {
|
57
|
+
/******/ return cachedModule.exports;
|
58
|
+
/******/ }
|
59
|
+
/******/ // Create a new module (and put it into the cache)
|
60
|
+
/******/ var module = __webpack_module_cache__[moduleId] = {
|
61
|
+
/******/ // no module.id needed
|
62
|
+
/******/ // no module.loaded needed
|
63
|
+
/******/ exports: {}
|
64
|
+
/******/ };
|
65
|
+
/******/
|
66
|
+
/******/ // Execute the module function
|
67
|
+
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
|
68
|
+
/******/
|
69
|
+
/******/ // Return the exports of the module
|
70
|
+
/******/ return module.exports;
|
71
|
+
/******/ }
|
72
|
+
/******/
|
73
|
+
/************************************************************************/
|
74
|
+
/******/ /* webpack/runtime/compat get default export */
|
75
|
+
/******/ (() => {
|
76
|
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
77
|
+
/******/ __webpack_require__.n = (module) => {
|
78
|
+
/******/ var getter = module && module.__esModule ?
|
79
|
+
/******/ () => (module['default']) :
|
80
|
+
/******/ () => (module);
|
81
|
+
/******/ __webpack_require__.d(getter, { a: getter });
|
82
|
+
/******/ return getter;
|
83
|
+
/******/ };
|
84
|
+
/******/ })();
|
85
|
+
/******/
|
86
|
+
/******/ /* webpack/runtime/define property getters */
|
87
|
+
/******/ (() => {
|
88
|
+
/******/ // define getter functions for harmony exports
|
89
|
+
/******/ __webpack_require__.d = (exports, definition) => {
|
90
|
+
/******/ for(var key in definition) {
|
91
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
92
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
93
|
+
/******/ }
|
94
|
+
/******/ }
|
95
|
+
/******/ };
|
96
|
+
/******/ })();
|
97
|
+
/******/
|
98
|
+
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
99
|
+
/******/ (() => {
|
100
|
+
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
|
101
|
+
/******/ })();
|
102
|
+
/******/
|
103
|
+
/******/ /* webpack/runtime/make namespace object */
|
104
|
+
/******/ (() => {
|
105
|
+
/******/ // define __esModule on exports
|
106
|
+
/******/ __webpack_require__.r = (exports) => {
|
107
|
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
108
|
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
109
|
+
/******/ }
|
110
|
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
111
|
+
/******/ };
|
112
|
+
/******/ })();
|
113
|
+
/******/
|
114
|
+
/************************************************************************/
|
115
|
+
var __webpack_exports__ = {};
|
116
|
+
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
|
117
|
+
(() => {
|
118
|
+
/*!*********************************************************!*\
|
119
|
+
!*** ./src/core/MeganavSearchAutocomplete/component.js ***!
|
120
|
+
\*********************************************************/
|
121
|
+
__webpack_require__.r(__webpack_exports__);
|
122
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
123
|
+
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
124
|
+
/* harmony export */ });
|
125
|
+
/* harmony import */ var _dom_query__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../dom-query */ "./src/core/dom-query.js");
|
126
|
+
/* harmony import */ var addsearch_js_client__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! addsearch-js-client */ "addsearch-js-client");
|
127
|
+
/* harmony import */ var addsearch_js_client__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(addsearch_js_client__WEBPACK_IMPORTED_MODULE_1__);
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
var init = function init(_ref) {
|
132
|
+
var input = _ref.input,
|
133
|
+
container = _ref.container,
|
134
|
+
listContainer = _ref.listContainer,
|
135
|
+
clear = _ref.clear,
|
136
|
+
client = _ref.client;
|
137
|
+
client.setAnalyticsTag("Meganav autocomplete");
|
138
|
+
client.setThrottleTime(400);
|
139
|
+
|
140
|
+
var clearResults = function clearResults() {
|
141
|
+
container.classList.add("hidden");
|
142
|
+
listContainer.innerHTML = "";
|
143
|
+
};
|
144
|
+
|
145
|
+
var toggleClearBtn = function toggleClearBtn(query) {
|
146
|
+
if ((query || "").length > 0 && clear) {
|
147
|
+
clear.classList.remove("invisible");
|
148
|
+
} else if (clear) {
|
149
|
+
clear.classList.add("invisible");
|
150
|
+
}
|
151
|
+
};
|
152
|
+
|
153
|
+
var markQueryInSuggestion = function markQueryInSuggestion(suggestionValue, query) {
|
154
|
+
return suggestionValue.replace(query.toLowerCase(), "<span class=\"font-light\">".concat(query, "</span>"));
|
155
|
+
};
|
156
|
+
|
157
|
+
var navigateToUrl = function navigateToUrl(q) {
|
158
|
+
return window.location = "/search?q=".concat(q);
|
159
|
+
};
|
160
|
+
|
161
|
+
var focusNext = function focusNext(index) {
|
162
|
+
var nextSuggestion = listContainer.querySelector("[data-suggestion-index=\"".concat(index + 1, "\"]"));
|
163
|
+
if (!nextSuggestion) return;
|
164
|
+
nextSuggestion.focus();
|
165
|
+
};
|
166
|
+
|
167
|
+
var focusPrevious = function focusPrevious(index) {
|
168
|
+
var previousIndex = index - 1;
|
169
|
+
var previousSuggestion = listContainer.querySelector("[data-suggestion-index=\"".concat(previousIndex, "\"]"));
|
170
|
+
if (!previousSuggestion) return;
|
171
|
+
previousSuggestion.focus();
|
172
|
+
};
|
173
|
+
|
174
|
+
var renderResults = function renderResults(query) {
|
175
|
+
return function () {
|
176
|
+
var results = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
177
|
+
toggleClearBtn(query); // Prevent invalid access error when key is invalid
|
178
|
+
|
179
|
+
if (!Array.isArray(results.suggestions)) {
|
180
|
+
clearResults();
|
181
|
+
return;
|
182
|
+
} // Prevent key error from invalid key
|
183
|
+
|
184
|
+
|
185
|
+
if (results.suggestions.length === 0) {
|
186
|
+
clearResults();
|
187
|
+
return;
|
188
|
+
}
|
189
|
+
|
190
|
+
var items = results.suggestions.map(function (suggestion, index) {
|
191
|
+
var li = document.createElement("li");
|
192
|
+
var button = document.createElement("button");
|
193
|
+
button.type = "button";
|
194
|
+
button.classList.add("ui-text-menu2", "font-medium", "p-8", "w-full", "text-left", "rounded", "hover:text-gui-hover", "focus:outline-gui-focus", "hover:bg-light-grey");
|
195
|
+
button.innerHTML = markQueryInSuggestion(suggestion.value, query);
|
196
|
+
button.dataset.suggestionIndex = index;
|
197
|
+
button.addEventListener("click", function () {
|
198
|
+
navigateToUrl(suggestion.value);
|
199
|
+
});
|
200
|
+
button.addEventListener("keydown", function (e) {
|
201
|
+
var key = e.key;
|
202
|
+
|
203
|
+
if (key === "ArrowDown") {
|
204
|
+
focusNext(index);
|
205
|
+
} else if (key === "ArrowUp" && index - 1 < 0) {
|
206
|
+
input.focus();
|
207
|
+
} else if (key === "ArrowUp" && index - 1 >= 0) {
|
208
|
+
focusPrevious(index);
|
209
|
+
} else if (key === "Enter" || key === "Space") {
|
210
|
+
navigateToUrl(suggestion.value);
|
211
|
+
}
|
212
|
+
});
|
213
|
+
li.appendChild(button);
|
214
|
+
return li;
|
215
|
+
});
|
216
|
+
listContainer.innerHTML = "";
|
217
|
+
items.forEach(function (item) {
|
218
|
+
return listContainer.appendChild(item);
|
219
|
+
});
|
220
|
+
container.classList.remove("hidden");
|
221
|
+
};
|
222
|
+
};
|
223
|
+
|
224
|
+
var keyupHandler = function keyupHandler(e) {
|
225
|
+
var query = e.target.value;
|
226
|
+
var key = e.key;
|
227
|
+
|
228
|
+
if (key === "ArrowDown") {
|
229
|
+
focusNext(0);
|
230
|
+
return;
|
231
|
+
}
|
232
|
+
|
233
|
+
if (!query) {
|
234
|
+
clearResults();
|
235
|
+
} else {
|
236
|
+
client.suggestions(query, renderResults(query));
|
237
|
+
}
|
238
|
+
};
|
239
|
+
|
240
|
+
var clearHandler;
|
241
|
+
|
242
|
+
if (clear) {
|
243
|
+
clearHandler = function clearHandler() {
|
244
|
+
input.value = "";
|
245
|
+
clear.classList.add("invisible");
|
246
|
+
clearResults();
|
247
|
+
};
|
248
|
+
|
249
|
+
clear.addEventListener("click", clearHandler);
|
250
|
+
}
|
251
|
+
|
252
|
+
input.addEventListener("keyup", keyupHandler);
|
253
|
+
return {
|
254
|
+
teardown: function teardown() {
|
255
|
+
input.removeEventListener("keyup", keyupHandler);
|
256
|
+
if (clear) clear.removeEventListener("click", clearHandler);
|
257
|
+
},
|
258
|
+
clear: function clear() {
|
259
|
+
input.value = "";
|
260
|
+
clearResults();
|
261
|
+
}
|
262
|
+
};
|
263
|
+
};
|
264
|
+
|
265
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (function (apiKey) {
|
266
|
+
if (!apiKey) {
|
267
|
+
console.log("No AddSearch API key provided, skipping search suggestions.");
|
268
|
+
return [];
|
269
|
+
}
|
270
|
+
|
271
|
+
var client = new (addsearch_js_client__WEBPACK_IMPORTED_MODULE_1___default())(apiKey);
|
272
|
+
return [(0,_dom_query__WEBPACK_IMPORTED_MODULE_0__.queryId)("meganav-search-input"), (0,_dom_query__WEBPACK_IMPORTED_MODULE_0__.queryId)("meganav-mobile-search-input")].filter(function (i) {
|
273
|
+
return i;
|
274
|
+
}).map(function (input) {
|
275
|
+
var parent = input.parentNode;
|
276
|
+
var container = (0,_dom_query__WEBPACK_IMPORTED_MODULE_0__.queryId)("meganav-search-autocomplete-container", parent);
|
277
|
+
var listContainer = (0,_dom_query__WEBPACK_IMPORTED_MODULE_0__.queryId)("meganav-search-autocomplete-list", parent);
|
278
|
+
var clear = (0,_dom_query__WEBPACK_IMPORTED_MODULE_0__.queryId)("meganav-search-input-clear", parent);
|
279
|
+
return init({
|
280
|
+
input: input,
|
281
|
+
container: container,
|
282
|
+
listContainer: listContainer,
|
283
|
+
client: client,
|
284
|
+
clear: clear
|
285
|
+
});
|
286
|
+
});
|
287
|
+
});
|
288
|
+
})();
|
289
|
+
|
290
|
+
__webpack_exports__ = __webpack_exports__["default"];
|
291
|
+
/******/ return __webpack_exports__;
|
292
|
+
/******/ })()
|
293
|
+
;
|
294
|
+
});
|
295
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS9NZWdhbmF2U2VhcmNoQXV0b2NvbXBsZXRlL2NvbXBvbmVudC5qcyIsIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDLHVEQUF1RDtBQUM5RixDQUFDO0FBQ0QsTzs7Ozs7Ozs7Ozs7Ozs7O0FDVk8sSUFBTUEsT0FBTyxHQUFHLFNBQVZBLE9BQVUsQ0FBQ0MsR0FBRDtBQUFBLE1BQU1DLElBQU4sdUVBQWFDLFFBQWI7QUFBQSxTQUNyQkQsSUFBSSxDQUFDRSxhQUFMLG9CQUErQkgsR0FBL0IsT0FEcUI7QUFBQSxDQUFoQjtBQUdBLElBQU1JLFVBQVUsR0FBRyxTQUFiQSxVQUFhLENBQUNKLEdBQUQ7QUFBQSxNQUFNQyxJQUFOLHVFQUFhQyxRQUFiO0FBQUEsU0FDeEJELElBQUksQ0FBQ0ksZ0JBQUwsb0JBQWtDTCxHQUFsQyxPQUR3QjtBQUFBLENBQW5COzs7Ozs7Ozs7O0FDSFA7Ozs7OztVQ0FBO1VBQ0E7O1VBRUE7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7VUFDQTtVQUNBO1VBQ0E7O1VBRUE7VUFDQTs7VUFFQTtVQUNBO1VBQ0E7Ozs7O1dDdEJBO1dBQ0E7V0FDQTtXQUNBO1dBQ0E7V0FDQSxpQ0FBaUMsV0FBVztXQUM1QztXQUNBOzs7OztXQ1BBO1dBQ0E7V0FDQTtXQUNBO1dBQ0EseUNBQXlDLHdDQUF3QztXQUNqRjtXQUNBO1dBQ0E7Ozs7O1dDUEE7Ozs7O1dDQUE7V0FDQTtXQUNBO1dBQ0EsdURBQXVELGlCQUFpQjtXQUN4RTtXQUNBLGdEQUFnRCxhQUFhO1dBQzdEOzs7Ozs7Ozs7Ozs7Ozs7OztBQ05BO0FBQ0E7O0FBRUEsSUFBTU8sSUFBSSxHQUFHLFNBQVBBLElBQU8sT0FBd0Q7QUFBQSxNQUFyREMsS0FBcUQsUUFBckRBLEtBQXFEO0FBQUEsTUFBOUNDLFNBQThDLFFBQTlDQSxTQUE4QztBQUFBLE1BQW5DQyxhQUFtQyxRQUFuQ0EsYUFB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TzlELElBQUksQ0FBQztBQUFFQyxNQUFBQSxLQUFLLEVBQUxBLEtBQUY7QUFBU0MsTUFBQUEsU0FBUyxFQUFUQSxTQUFUO0FBQW9CQyxNQUFBQSxhQUFhLEVBQWJBLGFBQXBCO0FBQW1DRSxNQUFBQSxNQUFNLEVBQU5BLE1BQW5DO0FBQTJDRCxNQUFBQSxLQUFLLEVBQUxBO0FBQTNDLEtBQUQsQ0FBWDtBQUNELEdBZkksQ0FBUDtBQWdCRCxDQXhCRCxFIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQWJseVVpLkNvcmUvd2VicGFjay91bml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uIiwid2VicGFjazovL0FibHlVaS5Db3JlLy4vc3JjL2NvcmUvZG9tLXF1ZXJ5LmpzIiwid2VicGFjazovL0FibHlVaS5Db3JlL2V4dGVybmFsIHVtZCB7XCJjb21tb25qc1wiOlwiYWRkc2VhcmNoLWpzLWNsaWVudFwiLFwiY29tbW9uanMyXCI6XCJhZGRzZWFyY2gtanMtY2xpZW50XCJ9Iiwid2VicGFjazovL0FibHlVaS5Db3JlL3dlYnBhY2svYm9vdHN0cmFwIiwid2VicGFjazovL0FibHlVaS5Db3JlL3dlYnBhY2svcnVudGltZS9jb21wYXQgZ2V0IGRlZmF1bHQgZXhwb3J0Iiwid2VicGFjazovL0FibHlVaS5Db3JlL3dlYnBhY2svcnVudGltZS9kZWZpbmUgcHJvcGVydHkgZ2V0dGVycyIsIndlYnBhY2s6Ly9BYmx5VWkuQ29yZS93ZWJwYWNrL3J1bnRpbWUvaGFzT3duUHJvcGVydHkgc2hvcnRoYW5kIiwid2VicGFjazovL0FibHlVaS5Db3JlL3dlYnBhY2svcnVudGltZS9tYWtlIG5hbWVzcGFjZSBvYmplY3QiLCJ3ZWJwYWNrOi8vQWJseVVpLkNvcmUvLi9zcmMvY29yZS9NZWdhbmF2U2VhcmNoQXV0b2NvbXBsZXRlL2NvbXBvbmVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gd2VicGFja1VuaXZlcnNhbE1vZHVsZURlZmluaXRpb24ocm9vdCwgZmFjdG9yeSkge1xuXHRpZih0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcgJiYgdHlwZW9mIG1vZHVsZSA9PT0gJ29iamVjdCcpXG5cdFx0bW9kdWxlLmV4cG9ydHMgPSBmYWN0b3J5KHJlcXVpcmUoXCJhZGRzZWFyY2gtanMtY2xpZW50XCIpKTtcblx0ZWxzZSBpZih0eXBlb2YgZGVmaW5lID09PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQpXG5cdFx0ZGVmaW5lKFtdLCBmYWN0b3J5KTtcblx0ZWxzZSBpZih0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcpXG5cdFx0ZXhwb3J0c1tcIkFibHlVaVwiXSA9IGZhY3RvcnkocmVxdWlyZShcImFkZHNlYXJjaC1qcy1jbGllbnRcIikpO1xuXHRlbHNlXG5cdFx0cm9vdFtcIkFibHlVaVwiXSA9IHJvb3RbXCJBYmx5VWlcIl0gfHwge30sIHJvb3RbXCJBYmx5VWlcIl1bXCJDb3JlXCJdID0gcm9vdFtcIkFibHlVaVwiXVtcIkNvcmVcIl0gfHwge30sIHJvb3RbXCJBYmx5VWlcIl1bXCJDb3JlXCJdW1wiTWVnYW5hdlNlYXJjaEF1dG9jb21wbGV0ZVwiXSA9IGZhY3Rvcnkocm9vdFt1bmRlZmluZWRdKTtcbn0pKHRoaXMsIChfX1dFQlBBQ0tfRVhURVJOQUxfTU9EVUxFX2FkZHNlYXJjaF9qc19jbGllbnRfXykgPT4ge1xucmV0dXJuICIsImV4cG9ydCBjb25zdCBxdWVyeUlkID0gKHZhbCwgcm9vdCA9IGRvY3VtZW50KSA9PlxuICByb290LnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLWlkPSR7dmFsfV1gKTtcblxuZXhwb3J0IGNvbnN0IHF1ZXJ5SWRBbGwgPSAodmFsLCByb290ID0gZG9jdW1lbnQpID0+XG4gIHJvb3QucXVlcnlTZWxlY3RvckFsbChgW2RhdGEtaWQ9JHt2YWx9XWApO1xuIiwibW9kdWxlLmV4cG9ydHMgPSBfX1dFQlBBQ0tfRVhURVJOQUxfTU9EVUxFX2FkZHNlYXJjaF9qc19jbGllbnRfXzsiLCIvLyBUaGUgbW9kdWxlIGNhY2hlXG52YXIgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fID0ge307XG5cbi8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG5mdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuXHR2YXIgY2FjaGVkTW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcblx0aWYgKGNhY2hlZE1vZHVsZSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIGNhY2hlZE1vZHVsZS5leHBvcnRzO1xuXHR9XG5cdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG5cdHZhciBtb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdID0ge1xuXHRcdC8vIG5vIG1vZHVsZS5pZCBuZWVkZWRcblx0XHQvLyBubyBtb2R1bGUubG9hZGVkIG5lZWRlZFxuXHRcdGV4cG9ydHM6IHt9XG5cdH07XG5cblx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG5cdF9fd2VicGFja19tb2R1bGVzX19bbW9kdWxlSWRdKG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG5cdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG5cdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbn1cblxuIiwiLy8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbl9fd2VicGFja19yZXF1aXJlX18ubiA9IChtb2R1bGUpID0+IHtcblx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG5cdFx0KCkgPT4gKG1vZHVsZVsnZGVmYXVsdCddKSA6XG5cdFx0KCkgPT4gKG1vZHVsZSk7XG5cdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsIHsgYTogZ2V0dGVyIH0pO1xuXHRyZXR1cm4gZ2V0dGVyO1xufTsiLCIvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9ucyBmb3IgaGFybW9ueSBleHBvcnRzXG5fX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSAoZXhwb3J0cywgZGVmaW5pdGlvbikgPT4ge1xuXHRmb3IodmFyIGtleSBpbiBkZWZpbml0aW9uKSB7XG5cdFx0aWYoX193ZWJwYWNrX3JlcXVpcmVfXy5vKGRlZmluaXRpb24sIGtleSkgJiYgIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBrZXkpKSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZGVmaW5pdGlvbltrZXldIH0pO1xuXHRcdH1cblx0fVxufTsiLCJfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSAob2JqLCBwcm9wKSA9PiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCkpIiwiLy8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5yID0gKGV4cG9ydHMpID0+IHtcblx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cdH1cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbn07IiwiaW1wb3J0IHsgcXVlcnlJZCB9IGZyb20gXCIuLi9kb20tcXVlcnlcIjtcbmltcG9ydCBBZGRTZWFyY2hDbGllbnQgZnJvbSBcImFkZHNlYXJjaC1qcy1jbGllbnRcIjtcblxuY29uc3QgaW5pdCA9ICh7IGlucHV0LCBjb250YWluZXIsIGxpc3RDb250YWluZXIsIGNsZWFyLCBjbGllbnQgfSkgPT4ge1xuICBjbGllbnQuc2V0QW5hbHl0aWNzVGFnKFwiTWVnYW5hdiBhdXRvY29tcGxldGVcIik7XG4gIGNsaWVudC5zZXRUaHJvdHRsZVRpbWUoNDAwKTtcblxuICBjb25zdCBjbGVhclJlc3VsdHMgPSAoKSA9PiB7XG4gICAgY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJoaWRkZW5cIik7XG4gICAgbGlzdENvbnRhaW5lci5pbm5lckhUTUwgPSBcIlwiO1xuICB9O1xuXG4gIGNvbnN0IHRvZ2dsZUNsZWFyQnRuID0gKHF1ZXJ5KSA9PiB7XG4gICAgaWYgKChxdWVyeSB8fCBcIlwiKS5sZW5ndGggPiAwICYmIGNsZWFyKSB7XG4gICAgICBjbGVhci5jbGFzc0xpc3QucmVtb3ZlKFwiaW52aXNpYmxlXCIpO1xuICAgIH0gZWxzZSBpZiAoY2xlYXIpIHtcbiAgICAgIGNsZWFyLmNsYXNzTGlzdC5hZGQoXCJpbnZpc2libGVcIik7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG1hcmtRdWVyeUluU3VnZ2VzdGlvbiA9IChzdWdnZXN0aW9uVmFsdWUsIHF1ZXJ5KSA9PiB7XG4gICAgcmV0dXJuIHN1Z2dlc3Rpb25WYWx1ZS5yZXBsYWNlKFxuICAgICAgcXVlcnkudG9Mb3dlckNhc2UoKSxcbiAgICAgIGA8c3BhbiBjbGFzcz1cImZvbnQtbGlnaHRcIj4ke3F1ZXJ5fTwvc3Bhbj5gXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBuYXZpZ2F0ZVRvVXJsID0gKHEpID0+ICh3aW5kb3cubG9jYXRpb24gPSBgL3NlYXJjaD9xPSR7cX1gKTtcblxuICBjb25zdCBmb2N1c05leHQgPSAoaW5kZXgpID0+IHtcbiAgICBjb25zdCBuZXh0U3VnZ2VzdGlvbiA9IGxpc3RDb250YWluZXIucXVlcnlTZWxlY3RvcihcbiAgICAgIGBbZGF0YS1zdWdnZXN0aW9uLWluZGV4PVwiJHtpbmRleCArIDF9XCJdYFxuICAgICk7XG4gICAgaWYgKCFuZXh0U3VnZ2VzdGlvbikgcmV0dXJuO1xuICAgIG5leHRTdWdnZXN0aW9uLmZvY3VzKCk7XG4gIH07XG5cbiAgY29uc3QgZm9jdXNQcmV2aW91cyA9IChpbmRleCkgPT4ge1xuICAgIGNvbnN0IHByZXZpb3VzSW5kZXggPSBpbmRleCAtIDE7XG5cbiAgICBjb25zdCBwcmV2aW91c1N1Z2dlc3Rpb24gPSBsaXN0Q29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBgW2RhdGEtc3VnZ2VzdGlvbi1pbmRleD1cIiR7cHJldmlvdXNJbmRleH1cIl1gXG4gICAgKTtcbiAgICBpZiAoIXByZXZpb3VzU3VnZ2VzdGlvbikgcmV0dXJuO1xuICAgIHByZXZpb3VzU3VnZ2VzdGlvbi5mb2N1cygpO1xuICB9O1xuXG4gIGNvbnN0IHJlbmRlclJlc3VsdHMgPVxuICAgIChxdWVyeSkgPT5cbiAgICAocmVzdWx0cyA9IHt9KSA9PiB7XG4gICAgICB0b2dnbGVDbGVhckJ0bihxdWVyeSk7XG5cbiAgICAgIC8vIFByZXZlbnQgaW52YWxpZCBhY2Nlc3MgZXJyb3Igd2hlbiBrZXkgaXMgaW52YWxpZFxuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHJlc3VsdHMuc3VnZ2VzdGlvbnMpKSB7XG4gICAgICAgIGNsZWFyUmVzdWx0cygpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXZlbnQga2V5IGVycm9yIGZyb20gaW52YWxpZCBrZXlcbiAgICAgIGlmIChyZXN1bHRzLnN1Z2dlc3Rpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBjbGVhclJlc3VsdHMoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBpdGVtcyA9IHJlc3VsdHMuc3VnZ2VzdGlvbnMubWFwKChzdWdnZXN0aW9uLCBpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCBsaSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJsaVwiKTtcbiAgICAgICAgY29uc3QgYnV0dG9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImJ1dHRvblwiKTtcbiAgICAgICAgYnV0dG9uLnR5cGUgPSBcImJ1dHRvblwiO1xuXG4gICAgICAgIGJ1dHRvbi5jbGFzc0xpc3QuYWRkKFxuICAgICAgICAgIFwidWktdGV4dC1tZW51MlwiLFxuICAgICAgICAgIFwiZm9udC1tZWRpdW1cIixcbiAgICAgICAgICBcInAtOFwiLFxuICAgICAgICAgIFwidy1mdWxsXCIsXG4gICAgICAgICAgXCJ0ZXh0LWxlZnRcIixcbiAgICAgICAgICBcInJvdW5kZWRcIixcbiAgICAgICAgICBcImhvdmVyOnRleHQtZ3VpLWhvdmVyXCIsXG4gICAgICAgICAgXCJmb2N1czpvdXRsaW5lLWd1aS1mb2N1c1wiLFxuICAgICAgICAgIFwiaG92ZXI6YmctbGlnaHQtZ3JleVwiXG4gICAgICAgICk7XG5cbiAgICAgICAgYnV0dG9uLmlubmVySFRNTCA9IG1hcmtRdWVyeUluU3VnZ2VzdGlvbihzdWdnZXN0aW9uLnZhbHVlLCBxdWVyeSk7XG5cbiAgICAgICAgYnV0dG9uLmRhdGFzZXQuc3VnZ2VzdGlvbkluZGV4ID0gaW5kZXg7XG5cbiAgICAgICAgYnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCAoKSA9PiB7XG4gICAgICAgICAgbmF2aWdhdGVUb1VybChzdWdnZXN0aW9uLnZhbHVlKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgYnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoXCJrZXlkb3duXCIsIChlKSA9PiB7XG4gICAgICAgICAgY29uc3Qga2V5ID0gZS5rZXk7XG5cbiAgICAgICAgICBpZiAoa2V5ID09PSBcIkFycm93RG93blwiKSB7XG4gICAgICAgICAgICBmb2N1c05leHQoaW5kZXgpO1xuICAgICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSBcIkFycm93VXBcIiAmJiBpbmRleCAtIDEgPCAwKSB7XG4gICAgICAgICAgICBpbnB1dC5mb2N1cygpO1xuICAgICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSBcIkFycm93VXBcIiAmJiBpbmRleCAtIDEgPj0gMCkge1xuICAgICAgICAgICAgZm9jdXNQcmV2aW91cyhpbmRleCk7XG4gICAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09IFwiRW50ZXJcIiB8fCBrZXkgPT09IFwiU3BhY2VcIikge1xuICAgICAgICAgICAgbmF2aWdhdGVUb1VybChzdWdnZXN0aW9uLnZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGxpLmFwcGVuZENoaWxkKGJ1dHRvbik7XG4gICAgICAgIHJldHVybiBsaTtcbiAgICAgIH0pO1xuXG4gICAgICBsaXN0Q29udGFpbmVyLmlubmVySFRNTCA9IFwiXCI7XG4gICAgICBpdGVtcy5mb3JFYWNoKChpdGVtKSA9PiBsaXN0Q29udGFpbmVyLmFwcGVuZENoaWxkKGl0ZW0pKTtcbiAgICAgIGNvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKFwiaGlkZGVuXCIpO1xuICAgIH07XG5cbiAgY29uc3Qga2V5dXBIYW5kbGVyID0gKGUpID0+IHtcbiAgICBjb25zdCBxdWVyeSA9IGUudGFyZ2V0LnZhbHVlO1xuICAgIGNvbnN0IGtleSA9IGUua2V5O1xuXG4gICAgaWYgKGtleSA9PT0gXCJBcnJvd0Rvd25cIikge1xuICAgICAgZm9jdXNOZXh0KDApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghcXVlcnkpIHtcbiAgICAgIGNsZWFyUmVzdWx0cygpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjbGllbnQuc3VnZ2VzdGlvbnMocXVlcnksIHJlbmRlclJlc3VsdHMocXVlcnkpKTtcbiAgICB9XG4gIH07XG5cbiAgbGV0IGNsZWFySGFuZGxlcjtcbiAgaWYgKGNsZWFyKSB7XG4gICAgY2xlYXJIYW5kbGVyID0gKCkgPT4ge1xuICAgICAgaW5wdXQudmFsdWUgPSBcIlwiO1xuICAgICAgY2xlYXIuY2xhc3NMaXN0LmFkZChcImludmlzaWJsZVwiKTtcbiAgICAgIGNsZWFyUmVzdWx0cygpO1xuICAgIH07XG4gICAgY2xlYXIuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGNsZWFySGFuZGxlcik7XG4gIH1cblxuICBpbnB1dC5hZGRFdmVudExpc3RlbmVyKFwia2V5dXBcIiwga2V5dXBIYW5kbGVyKTtcblxuICByZXR1cm4ge1xuICAgIHRlYXJkb3duOiAoKSA9PiB7XG4gICAgICBpbnB1dC5yZW1vdmVFdmVudExpc3RlbmVyKFwia2V5dXBcIiwga2V5dXBIYW5kbGVyKTtcbiAgICAgIGlmIChjbGVhcikgY2xlYXIucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGNsZWFySGFuZGxlcik7XG4gICAgfSxcbiAgICBjbGVhcjogKCkgPT4ge1xuICAgICAgaW5wdXQudmFsdWUgPSBcIlwiO1xuICAgICAgY2xlYXJSZXN1bHRzKCk7XG4gICAgfSxcbiAgfTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IChhcGlLZXkpID0+IHtcbiAgaWYgKCFhcGlLZXkpIHtcbiAgICBjb25zb2xlLmxvZyhgTm8gQWRkU2VhcmNoIEFQSSBrZXkgcHJvdmlkZWQsIHNraXBwaW5nIHNlYXJjaCBzdWdnZXN0aW9ucy5gKTtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICBjb25zdCBjbGllbnQgPSBuZXcgQWRkU2VhcmNoQ2xpZW50KGFwaUtleSk7XG5cbiAgcmV0dXJuIFtcbiAgICBxdWVyeUlkKFwibWVnYW5hdi1zZWFyY2gtaW5wdXRcIiksXG4gICAgcXVlcnlJZChcIm1lZ2FuYXYtbW9iaWxlLXNlYXJjaC1pbnB1dFwiKSxcbiAgXVxuICAgIC5maWx0ZXIoKGkpID0+IGkpXG4gICAgLm1hcCgoaW5wdXQpID0+IHtcbiAgICAgIGNvbnN0IHBhcmVudCA9IGlucHV0LnBhcmVudE5vZGU7XG4gICAgICBjb25zdCBjb250YWluZXIgPSBxdWVyeUlkKFxuICAgICAgICBcIm1lZ2FuYXYtc2VhcmNoLWF1dG9jb21wbGV0ZS1jb250YWluZXJcIixcbiAgICAgICAgcGFyZW50XG4gICAgICApO1xuICAgICAgY29uc3QgbGlzdENvbnRhaW5lciA9IHF1ZXJ5SWQoXCJtZWdhbmF2LXNlYXJjaC1hdXRvY29tcGxldGUtbGlzdFwiLCBwYXJlbnQpO1xuICAgICAgY29uc3QgY2xlYXIgPSBxdWVyeUlkKFwibWVnYW5hdi1zZWFyY2gtaW5wdXQtY2xlYXJcIiwgcGFyZW50KTtcblxuICAgICAgcmV0dXJuIGluaXQoeyBpbnB1dCwgY29udGFpbmVyLCBsaXN0Q29udGFpbmVyLCBjbGllbnQsIGNsZWFyIH0pO1xuICAgIH0pO1xufTtcbiJdLCJuYW1lcyI6WyJxdWVyeUlkIiwidmFsIiwicm9vdCIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvciIsInF1ZXJ5SWRBbGwiLCJxdWVyeVNlbGVjdG9yQWxsIiwiQWRkU2VhcmNoQ2xpZW50IiwiaW5pdCIsImlucHV0IiwiY29udGFpbmVyIiwibGlzdENvbnRhaW5lciIsImNsZWFyIiwiY2xpZW50Iiwic2V0QW5hbHl0aWNzVGFnIiwic2V0VGhyb3R0bGVUaW1lIiwiY2xlYXJSZXN1bHRzIiwiY2xhc3NMaXN0IiwiYWRkIiwiaW5uZXJIVE1MIiwidG9nZ2xlQ2xlYXJCdG4iLCJxdWVyeSIsImxlbmd0aCIsInJlbW92ZSIsIm1hcmtRdWVyeUluU3VnZ2VzdGlvbiIsInN1Z2dlc3Rpb25WYWx1ZSIsInJlcGxhY2UiLCJ0b0xvd2VyQ2FzZSIsIm5hdmlnYXRlVG9VcmwiLCJxIiwid2luZG93IiwibG9jYXRpb24iLCJmb2N1c05leHQiLCJpbmRleCIsIm5leHRTdWdnZXN0aW9uIiwiZm9jdXMiLCJmb2N1c1ByZXZpb3VzIiwicHJldmlvdXNJbmRleCIsInByZXZpb3VzU3VnZ2VzdGlvbiIsInJlbmRlclJlc3VsdHMiLCJyZXN1bHRzIiwiQXJyYXkiLCJpc0FycmF5Iiwic3VnZ2VzdGlvbnMiLCJpdGVtcyIsIm1hcCIsInN1Z2dlc3Rpb24iLCJsaSIsImNyZWF0ZUVsZW1lbnQiLCJidXR0b24iLCJ0eXBlIiwidmFsdWUiLCJkYXRhc2V0Iiwic3VnZ2VzdGlvbkluZGV4IiwiYWRkRXZlbnRMaXN0ZW5lciIsImUiLCJrZXkiLCJhcHBlbmRDaGlsZCIsImZvckVhY2giLCJpdGVtIiwia2V5dXBIYW5kbGVyIiwidGFyZ2V0IiwiY2xlYXJIYW5kbGVyIiwidGVhcmRvd24iLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiYXBpS2V5IiwiY29uc29sZSIsImxvZyIsImZpbHRlciIsImkiLCJwYXJlbnQiLCJwYXJlbnROb2RlIl0sInNvdXJjZVJvb3QiOiIifQ==
|
@@ -1 +1,22 @@
|
|
1
|
-
|
1
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
2
|
+
if(typeof exports === 'object' && typeof module === 'object')
|
3
|
+
module.exports = factory();
|
4
|
+
else if(typeof define === 'function' && define.amd)
|
5
|
+
define([], factory);
|
6
|
+
else if(typeof exports === 'object')
|
7
|
+
exports["AblyUi"] = factory();
|
8
|
+
else
|
9
|
+
root["AblyUi"] = root["AblyUi"] || {}, root["AblyUi"]["Core"] = root["AblyUi"]["Core"] || {}, root["AblyUi"]["Core"]["MeganavSearchPanel"] = factory();
|
10
|
+
})(this, () => {
|
11
|
+
return /******/ (() => { // webpackBootstrap
|
12
|
+
var __webpack_exports__ = {};
|
13
|
+
/*!**************************************************!*\
|
14
|
+
!*** ./src/core/MeganavSearchPanel/component.js ***!
|
15
|
+
\**************************************************/
|
16
|
+
|
17
|
+
__webpack_exports__ = __webpack_exports__["default"];
|
18
|
+
/******/ return __webpack_exports__;
|
19
|
+
/******/ })()
|
20
|
+
;
|
21
|
+
});
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS9NZWdhbmF2U2VhcmNoUGFuZWwvY29tcG9uZW50LmpzIiwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUMsdURBQXVEO0FBQzlGLENBQUM7QUFDRCxPIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQWJseVVpLkNvcmUvd2VicGFjay91bml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uIl0sInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbiB3ZWJwYWNrVW5pdmVyc2FsTW9kdWxlRGVmaW5pdGlvbihyb290LCBmYWN0b3J5KSB7XG5cdGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0Jylcblx0XHRtb2R1bGUuZXhwb3J0cyA9IGZhY3RvcnkoKTtcblx0ZWxzZSBpZih0eXBlb2YgZGVmaW5lID09PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQpXG5cdFx0ZGVmaW5lKFtdLCBmYWN0b3J5KTtcblx0ZWxzZSBpZih0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcpXG5cdFx0ZXhwb3J0c1tcIkFibHlVaVwiXSA9IGZhY3RvcnkoKTtcblx0ZWxzZVxuXHRcdHJvb3RbXCJBYmx5VWlcIl0gPSByb290W1wiQWJseVVpXCJdIHx8IHt9LCByb290W1wiQWJseVVpXCJdW1wiQ29yZVwiXSA9IHJvb3RbXCJBYmx5VWlcIl1bXCJDb3JlXCJdIHx8IHt9LCByb290W1wiQWJseVVpXCJdW1wiQ29yZVwiXVtcIk1lZ2FuYXZTZWFyY2hQYW5lbFwiXSA9IGZhY3RvcnkoKTtcbn0pKHRoaXMsICgpID0+IHtcbnJldHVybiAiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=
|