@1money/component-ui 0.0.77 → 0.0.78

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.
Files changed (45) hide show
  1. package/es/components/Dialog/Dialog.js +11 -3
  2. package/es/components/Dialog/interface.d.ts +1 -0
  3. package/es/components/Grid/Col.js +60 -4
  4. package/es/components/Grid/Grid.d.ts +4 -1
  5. package/es/components/Grid/Grid.js +5 -4
  6. package/es/components/Grid/Row.js +7 -5
  7. package/es/components/Grid/constants.d.ts +5 -3
  8. package/es/components/Grid/constants.js +13 -4
  9. package/es/components/Grid/helper.d.ts +8 -6
  10. package/es/components/Grid/helper.js +63 -15
  11. package/es/components/Grid/interface.d.ts +2 -1
  12. package/es/components/Grid/style/Grid.css +240 -196
  13. package/es/components/ProForm/ProForm.js +3 -3
  14. package/es/components/ProForm/constants.d.ts +1 -1
  15. package/es/components/ProForm/constants.js +5 -2
  16. package/es/components/ProForm/core/devWarning.d.ts +1 -3
  17. package/es/components/ProForm/core/devWarning.js +5 -15
  18. package/es/components/ProForm/layouts/DialogForm.js +2 -4
  19. package/es/index.css +1 -1
  20. package/es/utils/devWarn.d.ts +4 -0
  21. package/es/utils/devWarn.js +23 -0
  22. package/lib/components/Dialog/Dialog.js +11 -3
  23. package/lib/components/Dialog/interface.d.ts +1 -0
  24. package/lib/components/Grid/Col.js +59 -3
  25. package/lib/components/Grid/Grid.d.ts +4 -1
  26. package/lib/components/Grid/Grid.js +5 -4
  27. package/lib/components/Grid/Row.js +6 -4
  28. package/lib/components/Grid/constants.d.ts +5 -3
  29. package/lib/components/Grid/constants.js +14 -5
  30. package/lib/components/Grid/helper.d.ts +8 -6
  31. package/lib/components/Grid/helper.js +63 -15
  32. package/lib/components/Grid/interface.d.ts +2 -1
  33. package/lib/components/Grid/style/Grid.css +240 -196
  34. package/lib/components/ProForm/ProForm.js +2 -2
  35. package/lib/components/ProForm/constants.d.ts +1 -1
  36. package/lib/components/ProForm/constants.js +5 -2
  37. package/lib/components/ProForm/core/devWarning.d.ts +1 -3
  38. package/lib/components/ProForm/core/devWarning.js +23 -24
  39. package/lib/components/ProForm/layouts/DialogForm.js +2 -4
  40. package/lib/index.css +1 -1
  41. package/lib/utils/devWarn.d.ts +4 -0
  42. package/lib/utils/devWarn.js +31 -0
  43. package/package.json +1 -1
  44. package/scripts/mcp-server/examples.generated.json +171 -57
  45. package/scripts/mcp-server/index.generated.json +94 -10
@@ -0,0 +1,4 @@
1
+ export declare function isProduction(): boolean;
2
+ /** Warn once per key per page load; no-op in production. */
3
+ export declare function devWarnOnce(key: string, message: string): void;
4
+ export default devWarnOnce;
@@ -0,0 +1,23 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Development-only warnings (silent in production builds).
3
+ //
4
+ // Shared, dependency-light helper so any component can surface SILENT misuses
5
+ // that TypeScript cannot (runtime values) or does not (subset semantics) catch
6
+ // at compile time — without each component re-hand-rolling the env guard or
7
+ // re-warning on every render.
8
+ // ---------------------------------------------------------------------------
9
+ var warned = new Set();
10
+ export function isProduction() {
11
+ var _a;
12
+ // eslint-disable-next-line no-undef
13
+ return typeof process !== 'undefined' && ((_a = process.env) === null || _a === void 0 ? void 0 : _a.NODE_ENV) === 'production';
14
+ }
15
+ /** Warn once per key per page load; no-op in production. */
16
+ export function devWarnOnce(key, message) {
17
+ if (isProduction()) return;
18
+ if (warned.has(key)) return;
19
+ warned.add(key);
20
+ console.warn(message);
21
+ }
22
+ export default devWarnOnce;
23
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy91dGlscy9kZXZXYXJuLnRzIiwidXRpbHMvZGV2V2Fybi5qcyJdLCJuYW1lcyI6WyJ3YXJuZWQiLCJTZXQiLCJpc1Byb2R1Y3Rpb24iLCJfYSIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImRldldhcm5PbmNlIiwia2V5IiwibWVzc2FnZSIsImhhcyIsImFkZCIsImNvbnNvbGUiLCJ3YXJuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUEsSUFBTUEsTUFBTSxHQUFHLElBQUlDLEdBQUcsQ0FBQSxDQUFVO0FBRWhDLE9BQU0sU0FBVUMsWUFBWUEsQ0FBQSxFQUFBO0VDRHhCLElBQUlDLEVBQUU7RURFUjtFQUNBLE9BQU8sT0FBT0MsT0FBTyxLQUFLLFdBQVcsSUFBSSxDQUFBLENBQUFELEVBQUEsR0FBQUMsT0FBTyxDQUFDQyxHQUFHLE1BQUEsSUFBQSxJQUFBRixFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsQ0FBRUcsUUFBUSxNQUFLLFlBQVk7QUFDakY7QUFFQTtBQUNBLE9BQU0sU0FBVUMsV0FBV0EsQ0FBQ0MsR0FBVyxFQUFFQyxPQUFlLEVBQUE7RUFDdEQsSUFBSVAsWUFBWSxDQUFBLENBQUUsRUFBRTtFQUNwQixJQUFJRixNQUFNLENBQUNVLEdBQUcsQ0FBQ0YsR0FBRyxDQUFDLEVBQUU7RUFDckJSLE1BQU0sQ0FBQ1csR0FBRyxDQUFDSCxHQUFHLENBQUM7RUFDZkksT0FBTyxDQUFDQyxJQUFJLENBQUNKLE9BQU8sQ0FBQztBQUN2QjtBQUVBLGVBQWVGLFdBQVciLCJmaWxlIjoidXRpbHMvZGV2V2Fybi5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBEZXZlbG9wbWVudC1vbmx5IHdhcm5pbmdzIChzaWxlbnQgaW4gcHJvZHVjdGlvbiBidWlsZHMpLlxuLy9cbi8vIFNoYXJlZCwgZGVwZW5kZW5jeS1saWdodCBoZWxwZXIgc28gYW55IGNvbXBvbmVudCBjYW4gc3VyZmFjZSBTSUxFTlQgbWlzdXNlc1xuLy8gdGhhdCBUeXBlU2NyaXB0IGNhbm5vdCAocnVudGltZSB2YWx1ZXMpIG9yIGRvZXMgbm90IChzdWJzZXQgc2VtYW50aWNzKSBjYXRjaFxuLy8gYXQgY29tcGlsZSB0aW1lIOKAlCB3aXRob3V0IGVhY2ggY29tcG9uZW50IHJlLWhhbmQtcm9sbGluZyB0aGUgZW52IGd1YXJkIG9yXG4vLyByZS13YXJuaW5nIG9uIGV2ZXJ5IHJlbmRlci5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuY29uc3Qgd2FybmVkID0gbmV3IFNldCgpO1xuZXhwb3J0IGZ1bmN0aW9uIGlzUHJvZHVjdGlvbigpIHtcbiAgICB2YXIgX2E7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmXG4gICAgcmV0dXJuIHR5cGVvZiBwcm9jZXNzICE9PSAndW5kZWZpbmVkJyAmJiAoKF9hID0gcHJvY2Vzcy5lbnYpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5OT0RFX0VOVikgPT09ICdwcm9kdWN0aW9uJztcbn1cbi8qKiBXYXJuIG9uY2UgcGVyIGtleSBwZXIgcGFnZSBsb2FkOyBuby1vcCBpbiBwcm9kdWN0aW9uLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRldldhcm5PbmNlKGtleSwgbWVzc2FnZSkge1xuICAgIGlmIChpc1Byb2R1Y3Rpb24oKSlcbiAgICAgICAgcmV0dXJuO1xuICAgIGlmICh3YXJuZWQuaGFzKGtleSkpXG4gICAgICAgIHJldHVybjtcbiAgICB3YXJuZWQuYWRkKGtleSk7XG4gICAgY29uc29sZS53YXJuKG1lc3NhZ2UpO1xufVxuZXhwb3J0IGRlZmF1bHQgZGV2V2Fybk9uY2U7Il0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -184,6 +184,7 @@ var DialogBase = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
184
184
  fullWidth = _props$fullWidth === void 0 ? false : _props$fullWidth,
185
185
  _props$fixed = props.fixed,
186
186
  fixed = _props$fixed === void 0 ? false : _props$fixed,
187
+ width = props.width,
187
188
  title = props.title,
188
189
  children = props.children,
189
190
  illustration = props.illustration,
@@ -206,7 +207,7 @@ var DialogBase = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
206
207
  footerStyle = props.footerStyle,
207
208
  cancelButtonProps = props.cancelButtonProps,
208
209
  okButtonProps = props.okButtonProps,
209
- rest = __rest(props, ["className", "style", "prefixCls", "open", "size", "maskClosable", "showCloseIcon", "showBackIcon", "fullWidth", "fixed", "title", "children", "illustration", "media", "closeIcon", "backIcon", "footer", "onOk", "onCancel", "onBack", "okText", "cancelText", "rootStyle", "wrapperStyle", "bodyStyle", "headerStyle", "contentStyle", "footerStyle", "cancelButtonProps", "okButtonProps"]);
210
+ rest = __rest(props, ["className", "style", "prefixCls", "open", "size", "maskClosable", "showCloseIcon", "showBackIcon", "fullWidth", "fixed", "width", "title", "children", "illustration", "media", "closeIcon", "backIcon", "footer", "onOk", "onCancel", "onBack", "okText", "cancelText", "rootStyle", "wrapperStyle", "bodyStyle", "headerStyle", "contentStyle", "footerStyle", "cancelButtonProps", "okButtonProps"]);
210
211
  var dialogRef = (0, _react.useRef)(null);
211
212
  var titleId = (0, _react.useId)();
212
213
  var handleSetDialogRef = (0, _react.useCallback)(function (node) {
@@ -276,6 +277,13 @@ var DialogBase = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
276
277
  cancelButton: cancelButton,
277
278
  okButton: okButton
278
279
  });
280
+ // `width` is a convenience that sets the panel's width inline, overriding the
281
+ // `size` preset's class-level width. An explicit `style.width` still wins (it is
282
+ // spread last). Note: `width` is not meant to be combined with `fullWidth`, whose
283
+ // `max-width: none` / `width: 100%` rules govern sizing on their own.
284
+ var panelStyle = Object.assign({
285
+ width: width
286
+ }, style);
279
287
  if (!open) return null;
280
288
  return (0, _jsxRuntime.jsx)(_Portal.Portal, {
281
289
  children: (0, _jsxRuntime.jsxs)("div", {
@@ -294,7 +302,7 @@ var DialogBase = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
294
302
  "aria-modal": "true",
295
303
  "aria-labelledby": title ? titleId : undefined,
296
304
  tabIndex: -1,
297
- style: style,
305
+ style: panelStyle,
298
306
  className: (0, _classnames["default"])(getClassName(prefixCls), getClassName(prefixCls, undefined, size), fullWidth && getClassName(prefixCls, undefined, _constants.DIALOG_MODIFIER.fullWidth), fixed && getClassName(prefixCls, undefined, _constants.DIALOG_MODIFIER.fixed), hasMedia && getClassName(prefixCls, undefined, _constants.DIALOG_MODIFIER.withMedia), className),
299
307
  children: [closeControlNode, hasMedia && (0, _jsxRuntime.jsx)("div", {
300
308
  className: getClassName(prefixCls, _constants.DIALOG_SLOT.media),
@@ -342,4 +350,4 @@ DialogBase.displayName = 'Dialog';
342
350
  var Dialog = exports.Dialog = /*#__PURE__*/(0, _react.memo)(DialogBase);
343
351
  Dialog.displayName = 'Dialog';
344
352
  var _default = exports["default"] = Dialog;
345
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRGlhbG9nL0RpYWxvZy5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZy50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3VzZUV2ZW50Q2FsbGJhY2siLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2NsYXNzbmFtZXMiLCJfcmVhY3QiLCJfQnV0dG9uIiwiX0ljb25zIiwiX1BvcnRhbCIsIl9UeXBvZ3JhcGh5IiwiX3JlZjMiLCJfY29uc3RhbnRzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJzY3JvbGxMb2NrQ291bnQiLCJnZXRDbGFzc05hbWUiLCJwcmVmaXhDbHMiLCJzbG90IiwibW9kaWZpZXIiLCJiYXNlQ2xhc3NOYW1lIiwiY29uY2F0IiwiRElBTE9HX05BTUVTUEFDRSIsInNldEJvZHlPdmVyZmxvdyIsInZhbHVlIiwiZG9jdW1lbnQiLCJib2R5Iiwic3R5bGUiLCJvdmVyZmxvdyIsImxvY2tCb2R5U2Nyb2xsIiwiRElBTE9HX0RFRkFVTFRTIiwib3ZlcmZsb3dIaWRkZW4iLCJ1bmxvY2tCb2R5U2Nyb2xsIiwiTWF0aCIsIm1heCIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsIm92ZXJmbG93UmVzZXQiLCJ1c2VCb2R5U2Nyb2xsTG9jayIsImxvY2tlZCIsImlzTG9ja2VkUmVmIiwidXNlUmVmIiwidXNlRWZmZWN0IiwiY3VycmVudCIsInVuZGVmaW5lZCIsInVzZURpYWxvZ0ZvY3VzIiwiYWN0aXZlIiwiZGlhbG9nUmVmIiwicHJldmlvdXNBY3RpdmVFbGVtZW50UmVmIiwiYWN0aXZlRWxlbWVudCIsIkhUTUxFbGVtZW50IiwiZnJhbWUiLCJ3aW5kb3ciLCJfYSIsImZvY3VzIiwiY2FuY2VsQW5pbWF0aW9uRnJhbWUiLCJfYiIsInVzZUVzY2FwZUNsb3NlIiwiZW5hYmxlZCIsIm9uQ2xvc2UiLCJoYW5kbGVLZXlEb3duIiwiZXZlbnQiLCJrZXkiLCJlc2NhcGVLZXkiLCJwcmV2ZW50RGVmYXVsdCIsImFkZEV2ZW50TGlzdGVuZXIiLCJrZXlkb3duRXZlbnQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicmVuZGVyVHlwb2dyYXBoeU5vZGUiLCJub2RlIiwicmVuZGVyVGV4dCIsInJlbmRlcklsbHVzdHJhdGlvbk5vZGUiLCJpbGx1c3RyYXRpb24iLCJfanN4IiwiSWNvbnMiLCJuYW1lIiwic2l6ZSIsImlsbHVzdHJhdGlvblNpemUiLCJpc1ZhbGlkRWxlbWVudCIsInRvVm9pZEhhbmRsZXIiLCJhY3Rpb24iLCJjcmVhdGVBY3Rpb25IYW5kbGVyIiwiYnV0dG9uQ2xpY2siLCJkZWZhdWx0UHJldmVudGVkIiwicmVuZGVyQ29udHJvbEJ1dHRvbiIsInR5cGUiLCJpY29uTm9kZSIsIm9uQ2xpY2siLCJidXR0b25IdG1sVHlwZSIsImNsYXNzTmFtZSIsImNsYXNzTmFtZXMiLCJESUFMT0dfU0xPVCIsImNvbnRyb2wiLCJESUFMT0dfQ09OVFJPTF9MQUJFTFMiLCJjaGlsZHJlbiIsInJlbmRlckFjdGlvbkJ1dHRvbiIsIl9yZWYiLCJraW5kIiwidGV4dCIsImJ1dHRvblByb3BzIiwiQnV0dG9uIiwiYXNzaWduIiwiYnV0dG9uU2l6ZSIsImNvbG9yIiwiRElBTE9HX0RFRkFVTFRfQlVUVE9OX0NPTE9SUyIsImFjdGlvbkJ1dHRvbiIsInJlc29sdmVGb290ZXJOb2RlIiwiX3JlZjIiLCJmb290ZXIiLCJjYW5jZWxCdXR0b24iLCJva0J1dHRvbiIsIkRJQUxPR19TSVpFIiwibGFyZ2UiLCJfanN4cyIsIl9GcmFnbWVudCIsIkRpYWxvZ0Jhc2UiLCJmb3J3YXJkUmVmIiwicHJvcHMiLCJyZWYiLCJfcHJvcHMkcHJlZml4Q2xzIiwiRElBTE9HX0RFRkFVTFRfUFJFRklYIiwiX3Byb3BzJG9wZW4iLCJvcGVuIiwiX3Byb3BzJHNpemUiLCJzbWFsbCIsIl9wcm9wcyRtYXNrQ2xvc2FibGUiLCJtYXNrQ2xvc2FibGUiLCJfcHJvcHMkc2hvd0Nsb3NlSWNvbiIsInNob3dDbG9zZUljb24iLCJfcHJvcHMkc2hvd0JhY2tJY29uIiwic2hvd0JhY2tJY29uIiwiX3Byb3BzJGZ1bGxXaWR0aCIsImZ1bGxXaWR0aCIsIl9wcm9wcyRmaXhlZCIsImZpeGVkIiwidGl0bGUiLCJtZWRpYSIsImNsb3NlSWNvbiIsImJhY2tJY29uIiwib25PayIsIm9uQ2FuY2VsIiwib25CYWNrIiwiX3Byb3BzJG9rVGV4dCIsIm9rVGV4dCIsIl9wcm9wcyRjYW5jZWxUZXh0IiwiY2FuY2VsVGV4dCIsInJvb3RTdHlsZSIsIndyYXBwZXJTdHlsZSIsImJvZHlTdHlsZSIsImhlYWRlclN0eWxlIiwiY29udGVudFN0eWxlIiwiZm9vdGVyU3R5bGUiLCJjYW5jZWxCdXR0b25Qcm9wcyIsIm9rQnV0dG9uUHJvcHMiLCJyZXN0IiwidGl0bGVJZCIsInVzZUlkIiwiaGFuZGxlU2V0RGlhbG9nUmVmIiwidXNlQ2FsbGJhY2siLCJmaWxsUmVmIiwiaGFuZGxlQ2FuY2VsIiwidXNlRXZlbnRDYWxsYmFjayIsImhhbmRsZU9rIiwiaGFuZGxlQmFjayIsImhhbmRsZU92ZXJsYXlDbGljayIsImhhc01lZGlhIiwiY2xvc2VDb250cm9sTm9kZSIsIkRJQUxPR19DT05UUk9MX1RZUEUiLCJjbG9zZSIsIkRJQUxPR19ERUZBVUxUX0lDT05TIiwiY29udHJvbEljb25TaXplIiwiYmFja0NvbnRyb2xOb2RlIiwiYmFjayIsImlsbHVzdHJhdGlvbk5vZGUiLCJ0aXRsZU5vZGUiLCJUeXBvZ3JhcGh5SGVhZGxpbmUiLCJhcyIsImNoaWxkcmVuTm9kZSIsIlR5cG9ncmFwaHlCb2R5Iiwic3Ryb25nIiwiRElBTE9HX0FDVElPTl9LSU5EIiwiY2FuY2VsIiwib2siLCJmb290ZXJOb2RlIiwiUG9ydGFsIiwicm9vdCIsIm92ZXJsYXkiLCJ3cmFwcGVyIiwicm9sZSIsInRhYkluZGV4IiwiRElBTE9HX01PRElGSUVSIiwid2l0aE1lZGlhIiwiaW5uZXIiLCJoZWFkZXIiLCJpZCIsImNvbnRlbnQiLCJkaXNwbGF5TmFtZSIsIkRpYWxvZyIsImV4cG9ydHMiLCJtZW1vIiwiX2RlZmF1bHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxpQkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBU0EsSUFBQUssT0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sTUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sT0FBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsV0FBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsS0FBQSxHQUFBVCxPQUFBO0FBSUEsSUFBQVUsVUFBQSxHQUFBVixPQUFBO0FBZUFBLE9BQUE7QURsQ0EsSUFBSVcsTUFBTSxHQUFJLFVBQVEsU0FBS0EsTUFBTSxJQUFLLFVBQVVDLENBQUMsRUFBRUMsQ0FBQyxFQUFFO0VBQ2xELElBQUlDLENBQUMsR0FBRyxDQUFDLENBQUM7RUFDVixLQUFLLElBQUlDLENBQUMsSUFBSUgsQ0FBQyxFQUFFLElBQUlJLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDQyxjQUFjLENBQUNDLElBQUksQ0FBQ1AsQ0FBQyxFQUFFRyxDQUFDLENBQUMsSUFBSUYsQ0FBQyxDQUFDTyxPQUFPLENBQUNMLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFDL0VELENBQUMsQ0FBQ0MsQ0FBQyxDQUFDLEdBQUdILENBQUMsQ0FBQ0csQ0FBQyxDQUFDO0VBQ2YsSUFBSUgsQ0FBQyxJQUFJLElBQUksSUFBSSxPQUFPSSxNQUFNLENBQUNLLHFCQUFxQixLQUFLLFVBQVUsRUFDL0QsS0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxFQUFFUCxDQUFDLEdBQUdDLE1BQU0sQ0FB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L0RpYWxvZy9EaWFsb2cuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgdXNlRXZlbnRDYWxsYmFjayBmcm9tICdAMW1vbmV5L2hvb2tzL3VzZUV2ZW50Q2FsbGJhY2snO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBmb3J3YXJkUmVmLCBpc1ZhbGlkRWxlbWVudCwgbWVtbywgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlSWQsIHVzZVJlZiwgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi9JY29ucyc7XG5pbXBvcnQgeyBQb3J0YWwgfSBmcm9tICcuLi9Qb3J0YWwnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeUJvZHksIFR5cG9ncmFwaHlIZWFkbGluZSB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IHsgZmlsbFJlZiB9IGZyb20gJy4uLy4uL3V0aWxzL3JlZic7XG5pbXBvcnQgeyBESUFMT0dfQUNUSU9OX0tJTkQsIERJQUxPR19DT05UUk9MX0xBQkVMUywgRElBTE9HX0NPTlRST0xfVFlQRSwgRElBTE9HX0RFRkFVTFRfQlVUVE9OX0NPTE9SUywgRElBTE9HX0RFRkFVTFRfSUNPTlMsIERJQUxPR19ERUZBVUxUX1BSRUZJWCwgRElBTE9HX0RFRkFVTFRTLCBESUFMT0dfTU9ESUZJRVIsIERJQUxPR19OQU1FU1BBQ0UsIERJQUxPR19TSVpFLCBESUFMT0dfU0xPVCwgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgJy4vc3R5bGUnO1xubGV0IHNjcm9sbExvY2tDb3VudCA9IDA7XG5jb25zdCBnZXRDbGFzc05hbWUgPSAocHJlZml4Q2xzLCBzbG90LCBtb2RpZmllcikgPT4ge1xuICAgIGNvbnN0IGJhc2VDbGFzc05hbWUgPSBgJHtESUFMT0dfTkFNRVNQQUNFfS0ke3ByZWZpeENsc30ke3Nsb3QgPyBgLSR7c2xvdH1gIDogJyd9YDtcbiAgICByZXR1cm4gbW9kaWZpZXIgPyBgJHtiYXNlQ2xhc3NOYW1lfS0ke21vZGlmaWVyfWAgOiBiYXNlQ2xhc3NOYW1lO1xufTtcbmNvbnN0IHNldEJvZHlPdmVyZmxvdyA9ICh2YWx1ZSkgPT4ge1xuICAgIGlmICh0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICByZXR1cm47XG4gICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9IHZhbHVlO1xufTtcbmNvbnN0IGxvY2tCb2R5U2Nyb2xsID0gKCkgPT4ge1xuICAgIHNjcm9sbExvY2tDb3VudCArPSAxO1xuICAgIHNldEJvZHlPdmVyZmxvdyhESUFMT0dfREVGQVVMVFMub3ZlcmZsb3dIaWRkZW4pO1xufTtcbmNvbnN0IHVubG9ja0JvZHlTY3JvbGwgPSAoKSA9PiB7XG4gICAgc2Nyb2xsTG9ja0NvdW50ID0gTWF0aC5tYXgoMCwgc2Nyb2xsTG9ja0NvdW50IC0gMSk7XG4gICAgaWYgKHNjcm9sbExvY2tDb3VudCA9PT0gMCkge1xuICAgICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHNjcm9sbExvY2tDb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHNldEJvZHlPdmVyZmxvdyhESUFMT0dfREVGQVVMVFMub3ZlcmZsb3dSZXNldCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn07XG5jb25zdCB1c2VCb2R5U2Nyb2xsTG9jayA9IChsb2NrZWQpID0+IHtcbiAgICBjb25zdCBpc0xvY2tlZFJlZiA9IHVzZVJlZihmYWxzZSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCFsb2NrZWQgfHwgaXNMb2NrZWRSZWYuY3VycmVudClcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIGlzTG9ja2VkUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgICBsb2NrQm9keVNjcm9sbCgpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFpc0xvY2tlZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlzTG9ja2VkUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICAgIHVubG9ja0JvZHlTY3JvbGwoKTtcbiAgICAgICAgfTtcbiAgICB9LCBbbG9ja2VkXSk7XG59O1xuY29uc3QgdXNlRGlhbG9nRm9jdXMgPSAoYWN0aXZlLCBkaWFsb2dSZWYpID0+IHtcbiAgICBjb25zdCBwcmV2aW91c0FjdGl2ZUVsZW1lbnRSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCFhY3RpdmUgfHwgdHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIHByZXZpb3VzQWN0aXZlRWxlbWVudFJlZi5jdXJyZW50ID1cbiAgICAgICAgICAgIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCA/IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgOiBudWxsO1xuICAgICAgICBjb25zdCBmcmFtZSA9IHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgKF9hID0gZGlhbG9nUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb2N1cygpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIHdpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZShmcmFtZSk7XG4gICAgICAgIH07XG4gICAgfSwgW2FjdGl2ZSwgZGlhbG9nUmVmXSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgaWYgKGFjdGl2ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgKF9iID0gKF9hID0gcHJldmlvdXNBY3RpdmVFbGVtZW50UmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb2N1cykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwoX2EpO1xuICAgICAgICBwcmV2aW91c0FjdGl2ZUVsZW1lbnRSZWYuY3VycmVudCA9IG51bGw7XG4gICAgfSwgW2FjdGl2ZV0pO1xufTtcbmNvbnN0IHVzZUVzY2FwZUNsb3NlID0gKGVuYWJsZWQsIG9uQ2xvc2UpID0+IHtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoIWVuYWJsZWQgfHwgdHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGhhbmRsZUtleURvd24gPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChldmVudC5rZXkgIT09IERJQUxPR19ERUZBVUxUUy5lc2NhcGVLZXkpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHZvaWQgKG9uQ2xvc2UgPT09IG51bGwgfHwgb25DbG9zZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25DbG9zZSgpKTtcbiAgICAgICAgfTtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihESUFMT0dfREVGQVVMVFMua2V5ZG93bkV2ZW50LCBoYW5kbGVLZXlEb3duKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoRElBTE9HX0RFRkFVTFRTLmtleWRvd25FdmVudCwgaGFuZGxlS2V5RG93bik7XG4gICAgICAgIH07XG4gICAgfSwgW2VuYWJsZWQsIG9uQ2xvc2VdKTtcbn07XG5jb25zdCByZW5kZXJUeXBvZ3JhcGh5Tm9kZSA9IChub2RlLCByZW5kZXJUZXh0KSA9PiB7XG4gICAgaWYgKG5vZGUgPT0gbnVsbCB8fCB0eXBlb2Ygbm9kZSA9PT0gJ2Jvb2xlYW4nKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBpZiAodHlwZW9mIG5vZGUgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiBub2RlID09PSAnbnVtYmVyJykge1xuICAgICAgICByZXR1cm4gcmVuZGVyVGV4dChub2RlKTtcbiAgICB9XG4gICAgcmV0dXJuIG5vZGU7XG59O1xuY29uc3QgcmVuZGVySWxsdXN0cmF0aW9uTm9kZSA9IChpbGx1c3RyYXRpb24pID0+IHtcbiAgICBpZiAoIWlsbHVzdHJhdGlvbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgaWYgKHR5cGVvZiBpbGx1c3RyYXRpb24gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBfanN4KEljb25zLCB7IG5hbWU6IGlsbHVzdHJhdGlvbiwgc2l6ZTogRElBTE9HX0RFRkFVTFRTLmlsbHVzdHJhdGlvblNpemUgfSk7XG4gICAgfVxuICAgIHJldHVybiBpc1ZhbGlkRWxlbWVudChpbGx1c3RyYXRpb24pID8gaWxsdXN0cmF0aW9uIDogbnVsbDtcbn07XG5jb25zdCB0b1ZvaWRIYW5kbGVyID0gKGFjdGlvbikgPT4gKCkgPT4ge1xuICAgIHZvaWQgKGFjdGlvbiA9PT0gbnVsbCB8fCBhY3Rpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFjdGlvbigpKTtcbn07XG5jb25zdCBjcmVhdGVBY3Rpb25IYW5kbGVyID0gKGFjdGlvbiwgYnV0dG9uQ2xpY2spID0+IChldmVudCkgPT4ge1xuICAgIGJ1dHRvbkNsaWNrID09PSBudWxsIHx8IGJ1dHRvbkNsaWNrID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidXR0b25DbGljayhldmVudCk7XG4gICAgaWYgKGV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQgfHwgIWFjdGlvbilcbiAgICAgICAgcmV0dXJuO1xuICAgIHZvaWQgYWN0aW9uKCk7XG59O1xuY29uc3QgcmVuZGVyQ29udHJvbEJ1dHRvbiA9IChwcmVmaXhDbHMsIHR5cGUsIGljb25Ob2RlLCBvbkNsaWNrKSA9PiAoX2pzeChcImJ1dHRvblwiLCB7IHR5cGU6IERJQUxPR19ERUZBVUxUUy5idXR0b25IdG1sVHlwZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmNvbnRyb2wpLCBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5jb250cm9sLCB0eXBlKSksIFwiYXJpYS1sYWJlbFwiOiBESUFMT0dfQ09OVFJPTF9MQUJFTFNbdHlwZV0sIG9uQ2xpY2s6IHRvVm9pZEhhbmRsZXIob25DbGljayksIGNoaWxkcmVuOiBpY29uTm9kZSB9KSk7XG5jb25zdCByZW5kZXJBY3Rpb25CdXR0b24gPSAoeyBwcmVmaXhDbHMsIGtpbmQsIHRleHQsIGFjdGlvbiwgYnV0dG9uUHJvcHMsIH0pID0+IHtcbiAgICB2YXIgX2E7XG4gICAgaWYgKHRleHQgPT0gbnVsbCB8fCAhYWN0aW9uKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gKF9qc3goQnV0dG9uLCBPYmplY3QuYXNzaWduKHt9LCBidXR0b25Qcm9wcywgeyB0eXBlOiBESUFMT0dfREVGQVVMVFMuYnV0dG9uSHRtbFR5cGUsIHNpemU6IERJQUxPR19ERUZBVUxUUy5idXR0b25TaXplLCBjb2xvcjogKF9hID0gYnV0dG9uUHJvcHMgPT09IG51bGwgfHwgYnV0dG9uUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1dHRvblByb3BzLmNvbG9yKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBESUFMT0dfREVGQVVMVF9CVVRUT05fQ09MT1JTW2tpbmRdLCBjbGFzc05hbWU6IGNsYXNzTmFtZXMoZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuYWN0aW9uQnV0dG9uKSwgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuYWN0aW9uQnV0dG9uLCBraW5kKSwgYnV0dG9uUHJvcHMgPT09IG51bGwgfHwgYnV0dG9uUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1dHRvblByb3BzLmNsYXNzTmFtZSksIHN0eWxlOiBidXR0b25Qcm9wcyA9PT0gbnVsbCB8fCBidXR0b25Qcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnV0dG9uUHJvcHMuc3R5bGUsIG9uQ2xpY2s6IGNyZWF0ZUFjdGlvbkhhbmRsZXIoYWN0aW9uLCBidXR0b25Qcm9wcyA9PT0gbnVsbCB8fCBidXR0b25Qcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnV0dG9uUHJvcHMub25DbGljayksIGNoaWxkcmVuOiB0ZXh0IH0pKSk7XG59O1xuY29uc3QgcmVzb2x2ZUZvb3Rlck5vZGUgPSAoeyBmb290ZXIsIHNpemUsIGNhbmNlbEJ1dHRvbiwgb2tCdXR0b24sIH0pID0+IHtcbiAgICBpZiAoZm9vdGVyID09PSBudWxsKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBpZiAodHlwZW9mIGZvb3RlciA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgcmV0dXJuIGZvb3RlcihjYW5jZWxCdXR0b24sIG9rQnV0dG9uKTtcbiAgICBpZiAoZm9vdGVyICE9PSB1bmRlZmluZWQpXG4gICAgICAgIHJldHVybiBmb290ZXI7XG4gICAgaWYgKCFjYW5jZWxCdXR0b24gJiYgIW9rQnV0dG9uKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gc2l6ZSA9PT0gRElBTE9HX1NJWkUubGFyZ2VcbiAgICAgICAgPyAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbY2FuY2VsQnV0dG9uLCBva0J1dHRvbl0gfSkpXG4gICAgICAgIDogKF9qc3hzKF9GcmFnbWVudCwgeyBjaGlsZHJlbjogW29rQnV0dG9uLCBjYW5jZWxCdXR0b25dIH0pKTtcbn07XG5jb25zdCBEaWFsb2dCYXNlID0gZm9yd2FyZFJlZigocHJvcHMsIHJlZikgPT4ge1xuICAgIGNvbnN0IHsgY2xhc3NOYW1lLCBzdHlsZSwgcHJlZml4Q2xzID0gRElBTE9HX0RFRkFVTFRfUFJFRklYLCBvcGVuID0gZmFsc2UsIHNpemUgPSBESUFMT0dfU0laRS5zbWFsbCwgbWFza0Nsb3NhYmxlID0gdHJ1ZSwgc2hvd0Nsb3NlSWNvbiA9IHRydWUsIHNob3dCYWNrSWNvbiA9IGZhbHNlLCBmdWxsV2lkdGggPSBmYWxzZSwgZml4ZWQgPSBmYWxzZSwgdGl0bGUsIGNoaWxkcmVuLCBpbGx1c3RyYXRpb24sIG1lZGlhLCBjbG9zZUljb24sIGJhY2tJY29uLCBmb290ZXIsIG9uT2ssIG9uQ2FuY2VsLCBvbkJhY2ssIG9rVGV4dCA9IERJQUxPR19ERUZBVUxUUy5va1RleHQsIGNhbmNlbFRleHQgPSBESUFMT0dfREVGQVVMVFMuY2FuY2VsVGV4dCwgcm9vdFN0eWxlLCB3cmFwcGVyU3R5bGUsIGJvZHlTdHlsZSwgaGVhZGVyU3R5bGUsIGNvbnRlbnRTdHlsZSwgZm9vdGVyU3R5bGUsIGNhbmNlbEJ1dHRvblByb3BzLCBva0J1dHRvblByb3BzIH0gPSBwcm9wcywgcmVzdCA9IF9fcmVzdChwcm9wcywgW1wiY2xhc3NOYW1lXCIsIFwic3R5bGVcIiwgXCJwcmVmaXhDbHNcIiwgXCJvcGVuXCIsIFwic2l6ZVwiLCBcIm1hc2tDbG9zYWJsZVwiLCBcInNob3dDbG9zZUljb25cIiwgXCJzaG93QmFja0ljb25cIiwgXCJmdWxsV2lkdGhcIiwgXCJmaXhlZFwiLCBcInRpdGxlXCIsIFwiY2hpbGRyZW5cIiwgXCJpbGx1c3RyYXRpb25cIiwgXCJtZWRpYVwiLCBcImNsb3NlSWNvblwiLCBcImJhY2tJY29uXCIsIFwiZm9vdGVyXCIsIFwib25Pa1wiLCBcIm9uQ2FuY2VsXCIsIFwib25CYWNrXCIsIFwib2tUZXh0XCIsIFwiY2FuY2VsVGV4dFwiLCBcInJvb3RTdHlsZVwiLCBcIndyYXBwZXJTdHlsZVwiLCBcImJvZHlTdHlsZVwiLCBcImhlYWRlclN0eWxlXCIsIFwiY29udGVudFN0eWxlXCIsIFwiZm9vdGVyU3R5bGVcIiwgXCJjYW5jZWxCdXR0b25Qcm9wc1wiLCBcIm9rQnV0dG9uUHJvcHNcIl0pO1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCB0aXRsZUlkID0gdXNlSWQoKTtcbiAgICBjb25zdCBoYW5kbGVTZXREaWFsb2dSZWYgPSB1c2VDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICBkaWFsb2dSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICAgIGZpbGxSZWYocmVmLCBub2RlKTtcbiAgICB9LCBbcmVmXSk7XG4gICAgY29uc3QgaGFuZGxlQ2FuY2VsID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIHZvaWQgKG9uQ2FuY2VsID09PSBudWxsIHx8IG9uQ2FuY2VsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkNhbmNlbCgpKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVPayA9IHVzZUV2ZW50Q2FsbGJhY2soKCkgPT4ge1xuICAgICAgICB2b2lkIChvbk9rID09PSBudWxsIHx8IG9uT2sgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uT2soKSk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlQmFjayA9IHVzZUV2ZW50Q2FsbGJhY2soKCkgPT4ge1xuICAgICAgICB2b2lkIChvbkJhY2sgPT09IG51bGwgfHwgb25CYWNrID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkJhY2soKSk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlT3ZlcmxheUNsaWNrID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIGlmICghbWFza0Nsb3NhYmxlKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBoYW5kbGVDYW5jZWwoKTtcbiAgICB9KTtcbiAgICB1c2VCb2R5U2Nyb2xsTG9jayhvcGVuKTtcbiAgICB1c2VEaWFsb2dGb2N1cyhvcGVuLCBkaWFsb2dSZWYpO1xuICAgIHVzZUVzY2FwZUNsb3NlKG9wZW4sIGhhbmRsZUNhbmNlbCk7XG4gICAgY29uc3QgaGFzTWVkaWEgPSBtZWRpYSAhPSBudWxsO1xuICAgIGNvbnN0IGNsb3NlQ29udHJvbE5vZGUgPSBzaG93Q2xvc2VJY29uXG4gICAgICAgID8gcmVuZGVyQ29udHJvbEJ1dHRvbihwcmVmaXhDbHMsIERJQUxPR19DT05UUk9MX1RZUEUuY2xvc2UsIGNsb3NlSWNvbiAhPT0gbnVsbCAmJiBjbG9zZUljb24gIT09IHZvaWQgMCA/IGNsb3NlSWNvbiA6IChfanN4KEljb25zLCB7IG5hbWU6IERJQUxPR19ERUZBVUxUX0lDT05TW0RJQUxPR19DT05UUk9MX1RZUEUuY2xvc2VdLCBzaXplOiBESUFMT0dfREVGQVVMVFMuY29udHJvbEljb25TaXplIH0pKSwgaGFuZGxlQ2FuY2VsKVxuICAgICAgICA6IG51bGw7XG4gICAgY29uc3QgYmFja0NvbnRyb2xOb2RlID0gc2hvd0JhY2tJY29uXG4gICAgICAgID8gcmVuZGVyQ29udHJvbEJ1dHRvbihwcmVmaXhDbHMsIERJQUxPR19DT05UUk9MX1RZUEUuYmFjaywgYmFja0ljb24gIT09IG51bGwgJiYgYmFja0ljb24gIT09IHZvaWQgMCA/IGJhY2tJY29uIDogKF9qc3goSWNvbnMsIHsgbmFtZTogRElBTE9HX0RFRkFVTFRfSUNPTlNbRElBTE9HX0NPTlRST0xfVFlQRS5iYWNrXSwgc2l6ZTogRElBTE9HX0RFRkFVTFRTLmNvbnRyb2xJY29uU2l6ZSB9KSksIGhhbmRsZUJhY2spXG4gICAgICAgIDogbnVsbDtcbiAgICBjb25zdCBpbGx1c3RyYXRpb25Ob2RlID0gcmVuZGVySWxsdXN0cmF0aW9uTm9kZShpbGx1c3RyYXRpb24pO1xuICAgIGNvbnN0IHRpdGxlTm9kZSA9IHJlbmRlclR5cG9ncmFwaHlOb2RlKHRpdGxlLCAodmFsdWUpID0+IChfanN4KFR5cG9ncmFwaHlIZWFkbGluZSwgeyBzaXplOiBcIm1kXCIsIGFzOiBcImgyXCIsIGNvbG9yOiBcImRlZmF1bHRcIiwgY2hpbGRyZW46IHZhbHVlIH0pKSk7XG4gICAgY29uc3QgY2hpbGRyZW5Ob2RlID0gcmVuZGVyVHlwb2dyYXBoeU5vZGUoY2hpbGRyZW4sICh2YWx1ZSkgPT4gKF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogXCJtZFwiLCBhczogXCJwXCIsIHN0cm9uZzogdHJ1ZSwgY29sb3I6IFwiZGVmYXVsdC1zZWNvbmRhcnlcIiwgY2hpbGRyZW46IHZhbHVlIH0pKSk7XG4gICAgY29uc3QgY2FuY2VsQnV0dG9uID0gcmVuZGVyQWN0aW9uQnV0dG9uKHtcbiAgICAgICAgcHJlZml4Q2xzLFxuICAgICAgICBraW5kOiBESUFMT0dfQUNUSU9OX0tJTkQuY2FuY2VsLFxuICAgICAgICB0ZXh0OiBjYW5jZWxUZXh0LFxuICAgICAgICBhY3Rpb246IG9uQ2FuY2VsLFxuICAgICAgICBidXR0b25Qcm9wczogY2FuY2VsQnV0dG9uUHJvcHMsXG4gICAgfSk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSByZW5kZXJBY3Rpb25CdXR0b24oe1xuICAgICAgICBwcmVmaXhDbHMsXG4gICAgICAgIGtpbmQ6IERJQUxPR19BQ1RJT05fS0lORC5vayxcbiAgICAgICAgdGV4dDogb2tUZXh0LFxuICAgICAgICBhY3Rpb246IG9uT2ssXG4gICAgICAgIGJ1dHRvblByb3BzOiBva0J1dHRvblByb3BzLFxuICAgIH0pO1xuICAgIGNvbnN0IGZvb3Rlck5vZGUgPSByZXNvbHZlRm9vdGVyTm9kZSh7XG4gICAgICAgIGZvb3RlcixcbiAgICAgICAgc2l6ZSxcbiAgICAgICAgY2FuY2VsQnV0dG9uLFxuICAgICAgICBva0J1dHRvbixcbiAgICB9KTtcbiAgICBpZiAoIW9wZW4pXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIHJldHVybiAoX2pzeChQb3J0YWwsIHsgY2hpbGRyZW46IF9qc3hzKFwiZGl2XCIsIHsgc3R5bGU6IHJvb3RTdHlsZSwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5yb290KSwgY2hpbGRyZW46IFtfanN4KFwiZGl2XCIsIHsgXCJhcmlhLWhpZGRlblwiOiBcInRydWVcIiwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5vdmVybGF5KSwgb25DbGljazogaGFuZGxlT3ZlcmxheUNsaWNrIH0pLCBfanN4KFwiZGl2XCIsIHsgc3R5bGU6IHdyYXBwZXJTdHlsZSwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC53cmFwcGVyKSwgY2hpbGRyZW46IF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgcmVmOiBoYW5kbGVTZXREaWFsb2dSZWYsIHJvbGU6IFwiZGlhbG9nXCIsIFwiYXJpYS1tb2RhbFwiOiBcInRydWVcIiwgXCJhcmlhLWxhYmVsbGVkYnlcIjogdGl0bGUgPyB0aXRsZUlkIDogdW5kZWZpbmVkLCB0YWJJbmRleDogLTEsIHN0eWxlOiBzdHlsZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMpLCBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCB1bmRlZmluZWQsIHNpemUpLCBmdWxsV2lkdGggJiYgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgdW5kZWZpbmVkLCBESUFMT0dfTU9ESUZJRVIuZnVsbFdpZHRoKSwgZml4ZWQgJiYgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgdW5kZWZpbmVkLCBESUFMT0dfTU9ESUZJRVIuZml4ZWQpLCBoYXNNZWRpYSAmJiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCB1bmRlZmluZWQsIERJQUxPR19NT0RJRklFUi53aXRoTWVkaWEpLCBjbGFzc05hbWUpLCBjaGlsZHJlbjogW2Nsb3NlQ29udHJvbE5vZGUsIGhhc01lZGlhICYmIF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULm1lZGlhKSwgY2hpbGRyZW46IG1lZGlhIH0pLCBfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuaW5uZXIpLCBjaGlsZHJlbjogWyhiYWNrQ29udHJvbE5vZGUgfHwgKGZpeGVkICYmIChpbGx1c3RyYXRpb25Ob2RlIHx8IHRpdGxlTm9kZSkpKSAmJiAoX2pzeHMoXCJkaXZcIiwgeyBzdHlsZTogaGVhZGVyU3R5bGUsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuaGVhZGVyKSwgY2hpbGRyZW46IFtiYWNrQ29udHJvbE5vZGUsIGZpeGVkICYmIGlsbHVzdHJhdGlvbk5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmlsbHVzdHJhdGlvbiksIGNoaWxkcmVuOiBpbGx1c3RyYXRpb25Ob2RlIH0pKSwgZml4ZWQgJiYgdGl0bGVOb2RlICYmIChfanN4KFwiZGl2XCIsIHsgaWQ6IHRpdGxlSWQsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QudGl0bGUpLCBjaGlsZHJlbjogdGl0bGVOb2RlIH0pKV0gfSkpLCBfanN4cyhcImRpdlwiLCB7IHN0eWxlOiBib2R5U3R5bGUsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuYm9keSksIGNoaWxkcmVuOiBbIWZpeGVkICYmIGlsbHVzdHJhdGlvbk5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmlsbHVzdHJhdGlvbiksIGNoaWxkcmVuOiBpbGx1c3RyYXRpb25Ob2RlIH0pKSwgIWZpeGVkICYmIHRpdGxlTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IGlkOiB0aXRsZUlkLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULnRpdGxlKSwgY2hpbGRyZW46IHRpdGxlTm9kZSB9KSksIGNoaWxkcmVuTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IHN0eWxlOiBjb250ZW50U3R5bGUsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuY29udGVudCksIGNoaWxkcmVuOiBjaGlsZHJlbk5vZGUgfSkpXSB9KSwgZm9vdGVyTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IHN0eWxlOiBmb290ZXJTdHlsZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmZvb3RlciksIGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmZvb3Rlciwgc2l6ZSkpLCBjaGlsZHJlbjogZm9vdGVyTm9kZSB9KSldIH0pXSB9KSkgfSldIH0pIH0pKTtcbn0pO1xuRGlhbG9nQmFzZS5kaXNwbGF5TmFtZSA9ICdEaWFsb2cnO1xuZXhwb3J0IGNvbnN0IERpYWxvZyA9IG1lbW8oRGlhbG9nQmFzZSk7XG5EaWFsb2cuZGlzcGxheU5hbWUgPSAnRGlhbG9nJztcbmV4cG9ydCBkZWZhdWx0IERpYWxvZzsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
353
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRGlhbG9nL0RpYWxvZy5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZy50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3VzZUV2ZW50Q2FsbGJhY2siLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2NsYXNzbmFtZXMiLCJfcmVhY3QiLCJfQnV0dG9uIiwiX0ljb25zIiwiX1BvcnRhbCIsIl9UeXBvZ3JhcGh5IiwiX3JlZjMiLCJfY29uc3RhbnRzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJzY3JvbGxMb2NrQ291bnQiLCJnZXRDbGFzc05hbWUiLCJwcmVmaXhDbHMiLCJzbG90IiwibW9kaWZpZXIiLCJiYXNlQ2xhc3NOYW1lIiwiY29uY2F0IiwiRElBTE9HX05BTUVTUEFDRSIsInNldEJvZHlPdmVyZmxvdyIsInZhbHVlIiwiZG9jdW1lbnQiLCJib2R5Iiwic3R5bGUiLCJvdmVyZmxvdyIsImxvY2tCb2R5U2Nyb2xsIiwiRElBTE9HX0RFRkFVTFRTIiwib3ZlcmZsb3dIaWRkZW4iLCJ1bmxvY2tCb2R5U2Nyb2xsIiwiTWF0aCIsIm1heCIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsIm92ZXJmbG93UmVzZXQiLCJ1c2VCb2R5U2Nyb2xsTG9jayIsImxvY2tlZCIsImlzTG9ja2VkUmVmIiwidXNlUmVmIiwidXNlRWZmZWN0IiwiY3VycmVudCIsInVuZGVmaW5lZCIsInVzZURpYWxvZ0ZvY3VzIiwiYWN0aXZlIiwiZGlhbG9nUmVmIiwicHJldmlvdXNBY3RpdmVFbGVtZW50UmVmIiwiYWN0aXZlRWxlbWVudCIsIkhUTUxFbGVtZW50IiwiZnJhbWUiLCJ3aW5kb3ciLCJfYSIsImZvY3VzIiwiY2FuY2VsQW5pbWF0aW9uRnJhbWUiLCJfYiIsInVzZUVzY2FwZUNsb3NlIiwiZW5hYmxlZCIsIm9uQ2xvc2UiLCJoYW5kbGVLZXlEb3duIiwiZXZlbnQiLCJrZXkiLCJlc2NhcGVLZXkiLCJwcmV2ZW50RGVmYXVsdCIsImFkZEV2ZW50TGlzdGVuZXIiLCJrZXlkb3duRXZlbnQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicmVuZGVyVHlwb2dyYXBoeU5vZGUiLCJub2RlIiwicmVuZGVyVGV4dCIsInJlbmRlcklsbHVzdHJhdGlvbk5vZGUiLCJpbGx1c3RyYXRpb24iLCJfanN4IiwiSWNvbnMiLCJuYW1lIiwic2l6ZSIsImlsbHVzdHJhdGlvblNpemUiLCJpc1ZhbGlkRWxlbWVudCIsInRvVm9pZEhhbmRsZXIiLCJhY3Rpb24iLCJjcmVhdGVBY3Rpb25IYW5kbGVyIiwiYnV0dG9uQ2xpY2siLCJkZWZhdWx0UHJldmVudGVkIiwicmVuZGVyQ29udHJvbEJ1dHRvbiIsInR5cGUiLCJpY29uTm9kZSIsIm9uQ2xpY2siLCJidXR0b25IdG1sVHlwZSIsImNsYXNzTmFtZSIsImNsYXNzTmFtZXMiLCJESUFMT0dfU0xPVCIsImNvbnRyb2wiLCJESUFMT0dfQ09OVFJPTF9MQUJFTFMiLCJjaGlsZHJlbiIsInJlbmRlckFjdGlvbkJ1dHRvbiIsIl9yZWYiLCJraW5kIiwidGV4dCIsImJ1dHRvblByb3BzIiwiQnV0dG9uIiwiYXNzaWduIiwiYnV0dG9uU2l6ZSIsImNvbG9yIiwiRElBTE9HX0RFRkFVTFRfQlVUVE9OX0NPTE9SUyIsImFjdGlvbkJ1dHRvbiIsInJlc29sdmVGb290ZXJOb2RlIiwiX3JlZjIiLCJmb290ZXIiLCJjYW5jZWxCdXR0b24iLCJva0J1dHRvbiIsIkRJQUxPR19TSVpFIiwibGFyZ2UiLCJfanN4cyIsIl9GcmFnbWVudCIsIkRpYWxvZ0Jhc2UiLCJmb3J3YXJkUmVmIiwicHJvcHMiLCJyZWYiLCJfcHJvcHMkcHJlZml4Q2xzIiwiRElBTE9HX0RFRkFVTFRfUFJFRklYIiwiX3Byb3BzJG9wZW4iLCJvcGVuIiwiX3Byb3BzJHNpemUiLCJzbWFsbCIsIl9wcm9wcyRtYXNrQ2xvc2FibGUiLCJtYXNrQ2xvc2FibGUiLCJfcHJvcHMkc2hvd0Nsb3NlSWNvbiIsInNob3dDbG9zZUljb24iLCJfcHJvcHMkc2hvd0JhY2tJY29uIiwic2hvd0JhY2tJY29uIiwiX3Byb3BzJGZ1bGxXaWR0aCIsImZ1bGxXaWR0aCIsIl9wcm9wcyRmaXhlZCIsImZpeGVkIiwid2lkdGgiLCJ0aXRsZSIsIm1lZGlhIiwiY2xvc2VJY29uIiwiYmFja0ljb24iLCJvbk9rIiwib25DYW5jZWwiLCJvbkJhY2siLCJfcHJvcHMkb2tUZXh0Iiwib2tUZXh0IiwiX3Byb3BzJGNhbmNlbFRleHQiLCJjYW5jZWxUZXh0Iiwicm9vdFN0eWxlIiwid3JhcHBlclN0eWxlIiwiYm9keVN0eWxlIiwiaGVhZGVyU3R5bGUiLCJjb250ZW50U3R5bGUiLCJmb290ZXJTdHlsZSIsImNhbmNlbEJ1dHRvblByb3BzIiwib2tCdXR0b25Qcm9wcyIsInJlc3QiLCJ0aXRsZUlkIiwidXNlSWQiLCJoYW5kbGVTZXREaWFsb2dSZWYiLCJ1c2VDYWxsYmFjayIsImZpbGxSZWYiLCJoYW5kbGVDYW5jZWwiLCJ1c2VFdmVudENhbGxiYWNrIiwiaGFuZGxlT2siLCJoYW5kbGVCYWNrIiwiaGFuZGxlT3ZlcmxheUNsaWNrIiwiaGFzTWVkaWEiLCJjbG9zZUNvbnRyb2xOb2RlIiwiRElBTE9HX0NPTlRST0xfVFlQRSIsImNsb3NlIiwiRElBTE9HX0RFRkFVTFRfSUNPTlMiLCJjb250cm9sSWNvblNpemUiLCJiYWNrQ29udHJvbE5vZGUiLCJiYWNrIiwiaWxsdXN0cmF0aW9uTm9kZSIsInRpdGxlTm9kZSIsIlR5cG9ncmFwaHlIZWFkbGluZSIsImFzIiwiY2hpbGRyZW5Ob2RlIiwiVHlwb2dyYXBoeUJvZHkiLCJzdHJvbmciLCJESUFMT0dfQUNUSU9OX0tJTkQiLCJjYW5jZWwiLCJvayIsImZvb3Rlck5vZGUiLCJwYW5lbFN0eWxlIiwiUG9ydGFsIiwicm9vdCIsIm92ZXJsYXkiLCJ3cmFwcGVyIiwicm9sZSIsInRhYkluZGV4IiwiRElBTE9HX01PRElGSUVSIiwid2l0aE1lZGlhIiwiaW5uZXIiLCJoZWFkZXIiLCJpZCIsImNvbnRlbnQiLCJkaXNwbGF5TmFtZSIsIkRpYWxvZyIsImV4cG9ydHMiLCJtZW1vIiwiX2RlZmF1bHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxpQkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBU0EsSUFBQUssT0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sTUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sT0FBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsV0FBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsS0FBQSxHQUFBVCxPQUFBO0FBSUEsSUFBQVUsVUFBQSxHQUFBVixPQUFBO0FBZUFBLE9BQUE7QURsQ0EsSUFBSVcsTUFBTSxHQUFJLFVBQVEsU0FBS0EsTUFBTSxJQUFLLFVBQVVDLENBQUMsRUFBRUMsQ0FBQyxFQUFFO0VBQ2xELElBQUlDLENBQUMsR0FBRyxDQUFDLENBQUM7RUFDVixLQUFLLElBQUlDLENBQUMsSUFBSUgsQ0FBQyxFQUFFLElBQUlJLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDQyxjQUFjLENBQUNDLElBQUksQ0FBQ1AsQ0FBQyxFQUFFRyxDQUFDLENBQUMsSUFBSUYsQ0FBQyxDQUFDTyxPQUFPLENBQUNMLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFDL0VELENBQUMsQ0FBQ0MsQ0FBQyxDQUFDLEdBQUdILENBQUMsQ0FBQ0csQ0FBQyxDQUFDO0VBQ2YsSUFBSUgsQ0FBQyxJQUFJLElBQUksSUFBSSxPQUFPSSxNQUFNLENBQUNLLHFCQUFxQixLQUFLLFVBQVUsRUFDL0QsS0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxFQUFF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Q21GLFdBQVcsR0FBRyxRQUFRO0FBRTFCLElBQU1DLE1BQU0sR0FBQUMsT0FBQSxDQUFBRCxNQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQ3RGLFVBQVUsQ0FBQztBQUV0Q29GLE1BQU0sQ0FBQ0QsV0FBVyxHQUFHLFFBQVE7QUFBQyxJQUFBSSxRQUFBLEdBQUFGLE9BQUEsY0FFZkQsTUFBTSIsImZpbGUiOiJjb21wb25lbnRzL0RpYWxvZy9EaWFsb2cuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgdXNlRXZlbnRDYWxsYmFjayBmcm9tICdAMW1vbmV5L2hvb2tzL3VzZUV2ZW50Q2FsbGJhY2snO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBmb3J3YXJkUmVmLCBpc1ZhbGlkRWxlbWVudCwgbWVtbywgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlSWQsIHVzZVJlZiwgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi9JY29ucyc7XG5pbXBvcnQgeyBQb3J0YWwgfSBmcm9tICcuLi9Qb3J0YWwnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeUJvZHksIFR5cG9ncmFwaHlIZWFkbGluZSB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IHsgZmlsbFJlZiB9IGZyb20gJy4uLy4uL3V0aWxzL3JlZic7XG5pbXBvcnQgeyBESUFMT0dfQUNUSU9OX0tJTkQsIERJQUxPR19DT05UUk9MX0xBQkVMUywgRElBTE9HX0NPTlRST0xfVFlQRSwgRElBTE9HX0RFRkFVTFRfQlVUVE9OX0NPTE9SUywgRElBTE9HX0RFRkFVTFRfSUNPTlMsIERJQUxPR19ERUZBVUxUX1BSRUZJWCwgRElBTE9HX0RFRkFVTFRTLCBESUFMT0dfTU9ESUZJRVIsIERJQUxPR19OQU1FU1BBQ0UsIERJQUxPR19TSVpFLCBESUFMT0dfU0xPVCwgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgJy4vc3R5bGUnO1xubGV0IHNjcm9sbExvY2tDb3VudCA9IDA7XG5jb25zdCBnZXRDbGFzc05hbWUgPSAocHJlZml4Q2xzLCBzbG90LCBtb2RpZmllcikgPT4ge1xuICAgIGNvbnN0IGJhc2VDbGFzc05hbWUgPSBgJHtESUFMT0dfTkFNRVNQQUNFfS0ke3ByZWZpeENsc30ke3Nsb3QgPyBgLSR7c2xvdH1gIDogJyd9YDtcbiAgICByZXR1cm4gbW9kaWZpZXIgPyBgJHtiYXNlQ2xhc3NOYW1lfS0ke21vZGlmaWVyfWAgOiBiYXNlQ2xhc3NOYW1lO1xufTtcbmNvbnN0IHNldEJvZHlPdmVyZmxvdyA9ICh2YWx1ZSkgPT4ge1xuICAgIGlmICh0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICByZXR1cm47XG4gICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9IHZhbHVlO1xufTtcbmNvbnN0IGxvY2tCb2R5U2Nyb2xsID0gKCkgPT4ge1xuICAgIHNjcm9sbExvY2tDb3VudCArPSAxO1xuICAgIHNldEJvZHlPdmVyZmxvdyhESUFMT0dfREVGQVVMVFMub3ZlcmZsb3dIaWRkZW4pO1xufTtcbmNvbnN0IHVubG9ja0JvZHlTY3JvbGwgPSAoKSA9PiB7XG4gICAgc2Nyb2xsTG9ja0NvdW50ID0gTWF0aC5tYXgoMCwgc2Nyb2xsTG9ja0NvdW50IC0gMSk7XG4gICAgaWYgKHNjcm9sbExvY2tDb3VudCA9PT0gMCkge1xuICAgICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHNjcm9sbExvY2tDb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHNldEJvZHlPdmVyZmxvdyhESUFMT0dfREVGQVVMVFMub3ZlcmZsb3dSZXNldCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn07XG5jb25zdCB1c2VCb2R5U2Nyb2xsTG9jayA9IChsb2NrZWQpID0+IHtcbiAgICBjb25zdCBpc0xvY2tlZFJlZiA9IHVzZVJlZihmYWxzZSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCFsb2NrZWQgfHwgaXNMb2NrZWRSZWYuY3VycmVudClcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIGlzTG9ja2VkUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgICBsb2NrQm9keVNjcm9sbCgpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFpc0xvY2tlZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlzTG9ja2VkUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICAgIHVubG9ja0JvZHlTY3JvbGwoKTtcbiAgICAgICAgfTtcbiAgICB9LCBbbG9ja2VkXSk7XG59O1xuY29uc3QgdXNlRGlhbG9nRm9jdXMgPSAoYWN0aXZlLCBkaWFsb2dSZWYpID0+IHtcbiAgICBjb25zdCBwcmV2aW91c0FjdGl2ZUVsZW1lbnRSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCFhY3RpdmUgfHwgdHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIHByZXZpb3VzQWN0aXZlRWxlbWVudFJlZi5jdXJyZW50ID1cbiAgICAgICAgICAgIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCA/IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgOiBudWxsO1xuICAgICAgICBjb25zdCBmcmFtZSA9IHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgKF9hID0gZGlhbG9nUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb2N1cygpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIHdpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZShmcmFtZSk7XG4gICAgICAgIH07XG4gICAgfSwgW2FjdGl2ZSwgZGlhbG9nUmVmXSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgaWYgKGFjdGl2ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgKF9iID0gKF9hID0gcHJldmlvdXNBY3RpdmVFbGVtZW50UmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mb2N1cykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNhbGwoX2EpO1xuICAgICAgICBwcmV2aW91c0FjdGl2ZUVsZW1lbnRSZWYuY3VycmVudCA9IG51bGw7XG4gICAgfSwgW2FjdGl2ZV0pO1xufTtcbmNvbnN0IHVzZUVzY2FwZUNsb3NlID0gKGVuYWJsZWQsIG9uQ2xvc2UpID0+IHtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoIWVuYWJsZWQgfHwgdHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGhhbmRsZUtleURvd24gPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgIGlmIChldmVudC5rZXkgIT09IERJQUxPR19ERUZBVUxUUy5lc2NhcGVLZXkpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHZvaWQgKG9uQ2xvc2UgPT09IG51bGwgfHwgb25DbG9zZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25DbG9zZSgpKTtcbiAgICAgICAgfTtcbiAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihESUFMT0dfREVGQVVMVFMua2V5ZG93bkV2ZW50LCBoYW5kbGVLZXlEb3duKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoRElBTE9HX0RFRkFVTFRTLmtleWRvd25FdmVudCwgaGFuZGxlS2V5RG93bik7XG4gICAgICAgIH07XG4gICAgfSwgW2VuYWJsZWQsIG9uQ2xvc2VdKTtcbn07XG5jb25zdCByZW5kZXJUeXBvZ3JhcGh5Tm9kZSA9IChub2RlLCByZW5kZXJUZXh0KSA9PiB7XG4gICAgaWYgKG5vZGUgPT0gbnVsbCB8fCB0eXBlb2Ygbm9kZSA9PT0gJ2Jvb2xlYW4nKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBpZiAodHlwZW9mIG5vZGUgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiBub2RlID09PSAnbnVtYmVyJykge1xuICAgICAgICByZXR1cm4gcmVuZGVyVGV4dChub2RlKTtcbiAgICB9XG4gICAgcmV0dXJuIG5vZGU7XG59O1xuY29uc3QgcmVuZGVySWxsdXN0cmF0aW9uTm9kZSA9IChpbGx1c3RyYXRpb24pID0+IHtcbiAgICBpZiAoIWlsbHVzdHJhdGlvbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgaWYgKHR5cGVvZiBpbGx1c3RyYXRpb24gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBfanN4KEljb25zLCB7IG5hbWU6IGlsbHVzdHJhdGlvbiwgc2l6ZTogRElBTE9HX0RFRkFVTFRTLmlsbHVzdHJhdGlvblNpemUgfSk7XG4gICAgfVxuICAgIHJldHVybiBpc1ZhbGlkRWxlbWVudChpbGx1c3RyYXRpb24pID8gaWxsdXN0cmF0aW9uIDogbnVsbDtcbn07XG5jb25zdCB0b1ZvaWRIYW5kbGVyID0gKGFjdGlvbikgPT4gKCkgPT4ge1xuICAgIHZvaWQgKGFjdGlvbiA9PT0gbnVsbCB8fCBhY3Rpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFjdGlvbigpKTtcbn07XG5jb25zdCBjcmVhdGVBY3Rpb25IYW5kbGVyID0gKGFjdGlvbiwgYnV0dG9uQ2xpY2spID0+IChldmVudCkgPT4ge1xuICAgIGJ1dHRvbkNsaWNrID09PSBudWxsIHx8IGJ1dHRvbkNsaWNrID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidXR0b25DbGljayhldmVudCk7XG4gICAgaWYgKGV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQgfHwgIWFjdGlvbilcbiAgICAgICAgcmV0dXJuO1xuICAgIHZvaWQgYWN0aW9uKCk7XG59O1xuY29uc3QgcmVuZGVyQ29udHJvbEJ1dHRvbiA9IChwcmVmaXhDbHMsIHR5cGUsIGljb25Ob2RlLCBvbkNsaWNrKSA9PiAoX2pzeChcImJ1dHRvblwiLCB7IHR5cGU6IERJQUxPR19ERUZBVUxUUy5idXR0b25IdG1sVHlwZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmNvbnRyb2wpLCBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5jb250cm9sLCB0eXBlKSksIFwiYXJpYS1sYWJlbFwiOiBESUFMT0dfQ09OVFJPTF9MQUJFTFNbdHlwZV0sIG9uQ2xpY2s6IHRvVm9pZEhhbmRsZXIob25DbGljayksIGNoaWxkcmVuOiBpY29uTm9kZSB9KSk7XG5jb25zdCByZW5kZXJBY3Rpb25CdXR0b24gPSAoeyBwcmVmaXhDbHMsIGtpbmQsIHRleHQsIGFjdGlvbiwgYnV0dG9uUHJvcHMsIH0pID0+IHtcbiAgICB2YXIgX2E7XG4gICAgaWYgKHRleHQgPT0gbnVsbCB8fCAhYWN0aW9uKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gKF9qc3goQnV0dG9uLCBPYmplY3QuYXNzaWduKHt9LCBidXR0b25Qcm9wcywgeyB0eXBlOiBESUFMT0dfREVGQVVMVFMuYnV0dG9uSHRtbFR5cGUsIHNpemU6IERJQUxPR19ERUZBVUxUUy5idXR0b25TaXplLCBjb2xvcjogKF9hID0gYnV0dG9uUHJvcHMgPT09IG51bGwgfHwgYnV0dG9uUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1dHRvblByb3BzLmNvbG9yKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBESUFMT0dfREVGQVVMVF9CVVRUT05fQ09MT1JTW2tpbmRdLCBjbGFzc05hbWU6IGNsYXNzTmFtZXMoZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuYWN0aW9uQnV0dG9uKSwgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuYWN0aW9uQnV0dG9uLCBraW5kKSwgYnV0dG9uUHJvcHMgPT09IG51bGwgfHwgYnV0dG9uUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1dHRvblByb3BzLmNsYXNzTmFtZSksIHN0eWxlOiBidXR0b25Qcm9wcyA9PT0gbnVsbCB8fCBidXR0b25Qcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnV0dG9uUHJvcHMuc3R5bGUsIG9uQ2xpY2s6IGNyZWF0ZUFjdGlvbkhhbmRsZXIoYWN0aW9uLCBidXR0b25Qcm9wcyA9PT0gbnVsbCB8fCBidXR0b25Qcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnV0dG9uUHJvcHMub25DbGljayksIGNoaWxkcmVuOiB0ZXh0IH0pKSk7XG59O1xuY29uc3QgcmVzb2x2ZUZvb3Rlck5vZGUgPSAoeyBmb290ZXIsIHNpemUsIGNhbmNlbEJ1dHRvbiwgb2tCdXR0b24sIH0pID0+IHtcbiAgICBpZiAoZm9vdGVyID09PSBudWxsKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBpZiAodHlwZW9mIGZvb3RlciA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgcmV0dXJuIGZvb3RlcihjYW5jZWxCdXR0b24sIG9rQnV0dG9uKTtcbiAgICBpZiAoZm9vdGVyICE9PSB1bmRlZmluZWQpXG4gICAgICAgIHJldHVybiBmb290ZXI7XG4gICAgaWYgKCFjYW5jZWxCdXR0b24gJiYgIW9rQnV0dG9uKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gc2l6ZSA9PT0gRElBTE9HX1NJWkUubGFyZ2VcbiAgICAgICAgPyAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbY2FuY2VsQnV0dG9uLCBva0J1dHRvbl0gfSkpXG4gICAgICAgIDogKF9qc3hzKF9GcmFnbWVudCwgeyBjaGlsZHJlbjogW29rQnV0dG9uLCBjYW5jZWxCdXR0b25dIH0pKTtcbn07XG5jb25zdCBEaWFsb2dCYXNlID0gZm9yd2FyZFJlZigocHJvcHMsIHJlZikgPT4ge1xuICAgIGNvbnN0IHsgY2xhc3NOYW1lLCBzdHlsZSwgcHJlZml4Q2xzID0gRElBTE9HX0RFRkFVTFRfUFJFRklYLCBvcGVuID0gZmFsc2UsIHNpemUgPSBESUFMT0dfU0laRS5zbWFsbCwgbWFza0Nsb3NhYmxlID0gdHJ1ZSwgc2hvd0Nsb3NlSWNvbiA9IHRydWUsIHNob3dCYWNrSWNvbiA9IGZhbHNlLCBmdWxsV2lkdGggPSBmYWxzZSwgZml4ZWQgPSBmYWxzZSwgd2lkdGgsIHRpdGxlLCBjaGlsZHJlbiwgaWxsdXN0cmF0aW9uLCBtZWRpYSwgY2xvc2VJY29uLCBiYWNrSWNvbiwgZm9vdGVyLCBvbk9rLCBvbkNhbmNlbCwgb25CYWNrLCBva1RleHQgPSBESUFMT0dfREVGQVVMVFMub2tUZXh0LCBjYW5jZWxUZXh0ID0gRElBTE9HX0RFRkFVTFRTLmNhbmNlbFRleHQsIHJvb3RTdHlsZSwgd3JhcHBlclN0eWxlLCBib2R5U3R5bGUsIGhlYWRlclN0eWxlLCBjb250ZW50U3R5bGUsIGZvb3RlclN0eWxlLCBjYW5jZWxCdXR0b25Qcm9wcywgb2tCdXR0b25Qcm9wcyB9ID0gcHJvcHMsIHJlc3QgPSBfX3Jlc3QocHJvcHMsIFtcImNsYXNzTmFtZVwiLCBcInN0eWxlXCIsIFwicHJlZml4Q2xzXCIsIFwib3BlblwiLCBcInNpemVcIiwgXCJtYXNrQ2xvc2FibGVcIiwgXCJzaG93Q2xvc2VJY29uXCIsIFwic2hvd0JhY2tJY29uXCIsIFwiZnVsbFdpZHRoXCIsIFwiZml4ZWRcIiwgXCJ3aWR0aFwiLCBcInRpdGxlXCIsIFwiY2hpbGRyZW5cIiwgXCJpbGx1c3RyYXRpb25cIiwgXCJtZWRpYVwiLCBcImNsb3NlSWNvblwiLCBcImJhY2tJY29uXCIsIFwiZm9vdGVyXCIsIFwib25Pa1wiLCBcIm9uQ2FuY2VsXCIsIFwib25CYWNrXCIsIFwib2tUZXh0XCIsIFwiY2FuY2VsVGV4dFwiLCBcInJvb3RTdHlsZVwiLCBcIndyYXBwZXJTdHlsZVwiLCBcImJvZHlTdHlsZVwiLCBcImhlYWRlclN0eWxlXCIsIFwiY29udGVudFN0eWxlXCIsIFwiZm9vdGVyU3R5bGVcIiwgXCJjYW5jZWxCdXR0b25Qcm9wc1wiLCBcIm9rQnV0dG9uUHJvcHNcIl0pO1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCB0aXRsZUlkID0gdXNlSWQoKTtcbiAgICBjb25zdCBoYW5kbGVTZXREaWFsb2dSZWYgPSB1c2VDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICBkaWFsb2dSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICAgIGZpbGxSZWYocmVmLCBub2RlKTtcbiAgICB9LCBbcmVmXSk7XG4gICAgY29uc3QgaGFuZGxlQ2FuY2VsID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIHZvaWQgKG9uQ2FuY2VsID09PSBudWxsIHx8IG9uQ2FuY2VsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkNhbmNlbCgpKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVPayA9IHVzZUV2ZW50Q2FsbGJhY2soKCkgPT4ge1xuICAgICAgICB2b2lkIChvbk9rID09PSBudWxsIHx8IG9uT2sgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uT2soKSk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlQmFjayA9IHVzZUV2ZW50Q2FsbGJhY2soKCkgPT4ge1xuICAgICAgICB2b2lkIChvbkJhY2sgPT09IG51bGwgfHwgb25CYWNrID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkJhY2soKSk7XG4gICAgfSk7XG4gICAgY29uc3QgaGFuZGxlT3ZlcmxheUNsaWNrID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIGlmICghbWFza0Nsb3NhYmxlKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBoYW5kbGVDYW5jZWwoKTtcbiAgICB9KTtcbiAgICB1c2VCb2R5U2Nyb2xsTG9jayhvcGVuKTtcbiAgICB1c2VEaWFsb2dGb2N1cyhvcGVuLCBkaWFsb2dSZWYpO1xuICAgIHVzZUVzY2FwZUNsb3NlKG9wZW4sIGhhbmRsZUNhbmNlbCk7XG4gICAgY29uc3QgaGFzTWVkaWEgPSBtZWRpYSAhPSBudWxsO1xuICAgIGNvbnN0IGNsb3NlQ29udHJvbE5vZGUgPSBzaG93Q2xvc2VJY29uXG4gICAgICAgID8gcmVuZGVyQ29udHJvbEJ1dHRvbihwcmVmaXhDbHMsIERJQUxPR19DT05UUk9MX1RZUEUuY2xvc2UsIGNsb3NlSWNvbiAhPT0gbnVsbCAmJiBjbG9zZUljb24gIT09IHZvaWQgMCA/IGNsb3NlSWNvbiA6IChfanN4KEljb25zLCB7IG5hbWU6IERJQUxPR19ERUZBVUxUX0lDT05TW0RJQUxPR19DT05UUk9MX1RZUEUuY2xvc2VdLCBzaXplOiBESUFMT0dfREVGQVVMVFMuY29udHJvbEljb25TaXplIH0pKSwgaGFuZGxlQ2FuY2VsKVxuICAgICAgICA6IG51bGw7XG4gICAgY29uc3QgYmFja0NvbnRyb2xOb2RlID0gc2hvd0JhY2tJY29uXG4gICAgICAgID8gcmVuZGVyQ29udHJvbEJ1dHRvbihwcmVmaXhDbHMsIERJQUxPR19DT05UUk9MX1RZUEUuYmFjaywgYmFja0ljb24gIT09IG51bGwgJiYgYmFja0ljb24gIT09IHZvaWQgMCA/IGJhY2tJY29uIDogKF9qc3goSWNvbnMsIHsgbmFtZTogRElBTE9HX0RFRkFVTFRfSUNPTlNbRElBTE9HX0NPTlRST0xfVFlQRS5iYWNrXSwgc2l6ZTogRElBTE9HX0RFRkFVTFRTLmNvbnRyb2xJY29uU2l6ZSB9KSksIGhhbmRsZUJhY2spXG4gICAgICAgIDogbnVsbDtcbiAgICBjb25zdCBpbGx1c3RyYXRpb25Ob2RlID0gcmVuZGVySWxsdXN0cmF0aW9uTm9kZShpbGx1c3RyYXRpb24pO1xuICAgIGNvbnN0IHRpdGxlTm9kZSA9IHJlbmRlclR5cG9ncmFwaHlOb2RlKHRpdGxlLCAodmFsdWUpID0+IChfanN4KFR5cG9ncmFwaHlIZWFkbGluZSwgeyBzaXplOiBcIm1kXCIsIGFzOiBcImgyXCIsIGNvbG9yOiBcImRlZmF1bHRcIiwgY2hpbGRyZW46IHZhbHVlIH0pKSk7XG4gICAgY29uc3QgY2hpbGRyZW5Ob2RlID0gcmVuZGVyVHlwb2dyYXBoeU5vZGUoY2hpbGRyZW4sICh2YWx1ZSkgPT4gKF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogXCJtZFwiLCBhczogXCJwXCIsIHN0cm9uZzogdHJ1ZSwgY29sb3I6IFwiZGVmYXVsdC1zZWNvbmRhcnlcIiwgY2hpbGRyZW46IHZhbHVlIH0pKSk7XG4gICAgY29uc3QgY2FuY2VsQnV0dG9uID0gcmVuZGVyQWN0aW9uQnV0dG9uKHtcbiAgICAgICAgcHJlZml4Q2xzLFxuICAgICAgICBraW5kOiBESUFMT0dfQUNUSU9OX0tJTkQuY2FuY2VsLFxuICAgICAgICB0ZXh0OiBjYW5jZWxUZXh0LFxuICAgICAgICBhY3Rpb246IG9uQ2FuY2VsLFxuICAgICAgICBidXR0b25Qcm9wczogY2FuY2VsQnV0dG9uUHJvcHMsXG4gICAgfSk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSByZW5kZXJBY3Rpb25CdXR0b24oe1xuICAgICAgICBwcmVmaXhDbHMsXG4gICAgICAgIGtpbmQ6IERJQUxPR19BQ1RJT05fS0lORC5vayxcbiAgICAgICAgdGV4dDogb2tUZXh0LFxuICAgICAgICBhY3Rpb246IG9uT2ssXG4gICAgICAgIGJ1dHRvblByb3BzOiBva0J1dHRvblByb3BzLFxuICAgIH0pO1xuICAgIGNvbnN0IGZvb3Rlck5vZGUgPSByZXNvbHZlRm9vdGVyTm9kZSh7XG4gICAgICAgIGZvb3RlcixcbiAgICAgICAgc2l6ZSxcbiAgICAgICAgY2FuY2VsQnV0dG9uLFxuICAgICAgICBva0J1dHRvbixcbiAgICB9KTtcbiAgICAvLyBgd2lkdGhgIGlzIGEgY29udmVuaWVuY2UgdGhhdCBzZXRzIHRoZSBwYW5lbCdzIHdpZHRoIGlubGluZSwgb3ZlcnJpZGluZyB0aGVcbiAgICAvLyBgc2l6ZWAgcHJlc2V0J3MgY2xhc3MtbGV2ZWwgd2lkdGguIEFuIGV4cGxpY2l0IGBzdHlsZS53aWR0aGAgc3RpbGwgd2lucyAoaXQgaXNcbiAgICAvLyBzcHJlYWQgbGFzdCkuIE5vdGU6IGB3aWR0aGAgaXMgbm90IG1lYW50IHRvIGJlIGNvbWJpbmVkIHdpdGggYGZ1bGxXaWR0aGAsIHdob3NlXG4gICAgLy8gYG1heC13aWR0aDogbm9uZWAgLyBgd2lkdGg6IDEwMCVgIHJ1bGVzIGdvdmVybiBzaXppbmcgb24gdGhlaXIgb3duLlxuICAgIGNvbnN0IHBhbmVsU3R5bGUgPSBPYmplY3QuYXNzaWduKHsgd2lkdGggfSwgc3R5bGUpO1xuICAgIGlmICghb3BlbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIChfanN4KFBvcnRhbCwgeyBjaGlsZHJlbjogX2pzeHMoXCJkaXZcIiwgeyBzdHlsZTogcm9vdFN0eWxlLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULnJvb3QpLCBjaGlsZHJlbjogW19qc3goXCJkaXZcIiwgeyBcImFyaWEtaGlkZGVuXCI6IFwidHJ1ZVwiLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULm92ZXJsYXkpLCBvbkNsaWNrOiBoYW5kbGVPdmVybGF5Q2xpY2sgfSksIF9qc3goXCJkaXZcIiwgeyBzdHlsZTogd3JhcHBlclN0eWxlLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULndyYXBwZXIpLCBjaGlsZHJlbjogX2pzeHMoXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyByZWY6IGhhbmRsZVNldERpYWxvZ1JlZiwgcm9sZTogXCJkaWFsb2dcIiwgXCJhcmlhLW1vZGFsXCI6IFwidHJ1ZVwiLCBcImFyaWEtbGFiZWxsZWRieVwiOiB0aXRsZSA/IHRpdGxlSWQgOiB1bmRlZmluZWQsIHRhYkluZGV4OiAtMSwgc3R5bGU6IHBhbmVsU3R5bGUsIGNsYXNzTmFtZTogY2xhc3NOYW1lcyhnZXRDbGFzc05hbWUocHJlZml4Q2xzKSwgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgdW5kZWZpbmVkLCBzaXplKSwgZnVsbFdpZHRoICYmIGdldENsYXNzTmFtZShwcmVmaXhDbHMsIHVuZGVmaW5lZCwgRElBTE9HX01PRElGSUVSLmZ1bGxXaWR0aCksIGZpeGVkICYmIGdldENsYXNzTmFtZShwcmVmaXhDbHMsIHVuZGVmaW5lZCwgRElBTE9HX01PRElGSUVSLmZpeGVkKSwgaGFzTWVkaWEgJiYgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgdW5kZWZpbmVkLCBESUFMT0dfTU9ESUZJRVIud2l0aE1lZGlhKSwgY2xhc3NOYW1lKSwgY2hpbGRyZW46IFtjbG9zZUNvbnRyb2xOb2RlLCBoYXNNZWRpYSAmJiBfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5tZWRpYSksIGNoaWxkcmVuOiBtZWRpYSB9KSwgX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmlubmVyKSwgY2hpbGRyZW46IFsoYmFja0NvbnRyb2xOb2RlIHx8IChmaXhlZCAmJiAoaWxsdXN0cmF0aW9uTm9kZSB8fCB0aXRsZU5vZGUpKSkgJiYgKF9qc3hzKFwiZGl2XCIsIHsgc3R5bGU6IGhlYWRlclN0eWxlLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmhlYWRlciksIGNoaWxkcmVuOiBbYmFja0NvbnRyb2xOb2RlLCBmaXhlZCAmJiBpbGx1c3RyYXRpb25Ob2RlICYmIChfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5pbGx1c3RyYXRpb24pLCBjaGlsZHJlbjogaWxsdXN0cmF0aW9uTm9kZSB9KSksIGZpeGVkICYmIHRpdGxlTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IGlkOiB0aXRsZUlkLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULnRpdGxlKSwgY2hpbGRyZW46IHRpdGxlTm9kZSB9KSldIH0pKSwgX2pzeHMoXCJkaXZcIiwgeyBzdHlsZTogYm9keVN0eWxlLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmJvZHkpLCBjaGlsZHJlbjogWyFmaXhlZCAmJiBpbGx1c3RyYXRpb25Ob2RlICYmIChfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5pbGx1c3RyYXRpb24pLCBjaGlsZHJlbjogaWxsdXN0cmF0aW9uTm9kZSB9KSksICFmaXhlZCAmJiB0aXRsZU5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBpZDogdGl0bGVJZCwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC50aXRsZSksIGNoaWxkcmVuOiB0aXRsZU5vZGUgfSkpLCBjaGlsZHJlbk5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBzdHlsZTogY29udGVudFN0eWxlLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmNvbnRlbnQpLCBjaGlsZHJlbjogY2hpbGRyZW5Ob2RlIH0pKV0gfSksIGZvb3Rlck5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBzdHlsZTogZm9vdGVyU3R5bGUsIGNsYXNzTmFtZTogY2xhc3NOYW1lcyhnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5mb290ZXIpLCBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5mb290ZXIsIHNpemUpKSwgY2hpbGRyZW46IGZvb3Rlck5vZGUgfSkpXSB9KV0gfSkpIH0pXSB9KSB9KSk7XG59KTtcbkRpYWxvZ0Jhc2UuZGlzcGxheU5hbWUgPSAnRGlhbG9nJztcbmV4cG9ydCBjb25zdCBEaWFsb2cgPSBtZW1vKERpYWxvZ0Jhc2UpO1xuRGlhbG9nLmRpc3BsYXlOYW1lID0gJ0RpYWxvZyc7XG5leHBvcnQgZGVmYXVsdCBEaWFsb2c7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -13,6 +13,7 @@ export interface DialogProps extends Omit<HTMLAttributes<HTMLDivElement>, 'child
13
13
  showBackIcon?: boolean;
14
14
  fullWidth?: boolean;
15
15
  fixed?: boolean;
16
+ width?: number | string;
16
17
  title?: ReactNode;
17
18
  children?: ReactNode;
18
19
  illustration?: ReactNode | IconName;
@@ -8,9 +8,11 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports["default"] = exports.Col = void 0;
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
12
  var _jsxRuntime = require("react/jsx-runtime");
12
13
  var _react = require("react");
13
14
  var _classnames = _interopRequireWildcard(require("../../utils/classnames"));
15
+ var _devWarn = require("../../utils/devWarn");
14
16
  var _constants = require("./constants");
15
17
  var _helper = require("./helper");
16
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
@@ -23,6 +25,46 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
23
25
  }
24
26
  return t;
25
27
  };
28
+ var COL_RANGE_KEYS = ['span', 'offset', 'order', 'push', 'pull'];
29
+ // Dev-only guard: span/offset/order/push/pull — both top-level AND the responsive
30
+ // sm/md/lg equivalents — map to classes generated for 0–GRID_COLUMNS only; values
31
+ // outside that range silently produce a class with no matching CSS. Warns once per
32
+ // distinct misuse (via the shared devWarnOnce) instead of on every render.
33
+ var warnColRange = function warnColRange(scope, values) {
34
+ COL_RANGE_KEYS.forEach(function (key) {
35
+ var value = values[key];
36
+ if (value != null && (value < 0 || value > _constants.GRID_COLUMNS)) {
37
+ var usage = scope ? "".concat(scope, "={{ ").concat(key, ": ").concat(value, " }}") : "".concat(key, "={").concat(value, "}");
38
+ (0, _devWarn.devWarnOnce)("grid-col-range:".concat(scope, ":").concat(key, ":").concat(value), "[Grid.Col] `".concat(usage, "` is outside the 0\u2013").concat(_constants.GRID_COLUMNS, " range; no matching style is generated."));
39
+ }
40
+ });
41
+ };
42
+ // Gated by isProduction() so the per-render arg objects are never allocated in
43
+ // production builds.
44
+ var warnColRangeInDev = function warnColRangeInDev(props) {
45
+ if ((0, _devWarn.isProduction)()) return;
46
+ var span = props.span,
47
+ offset = props.offset,
48
+ order = props.order,
49
+ push = props.push,
50
+ pull = props.pull,
51
+ sm = props.sm,
52
+ md = props.md,
53
+ lg = props.lg;
54
+ warnColRange('', {
55
+ span: span,
56
+ offset: offset,
57
+ order: order,
58
+ push: push,
59
+ pull: pull
60
+ });
61
+ [['sm', sm], ['md', md], ['lg', lg]].forEach(function (_ref) {
62
+ var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
63
+ scope = _ref2[0],
64
+ size = _ref2[1];
65
+ if (size != null) warnColRange(scope, (0, _helper.normalizeColSize)(size));
66
+ });
67
+ };
26
68
  var buildResponsiveConfig = function buildResponsiveConfig(breakpoints, classes) {
27
69
  var classList = [];
28
70
  var flexVars = {};
@@ -36,7 +78,10 @@ var buildResponsiveConfig = function buildResponsiveConfig(breakpoints, classes)
36
78
  if (normalized.order != null) classList.push(classes("".concat(bp, "-").concat(_constants.GRID_CLASS.order, "-").concat(normalized.order)));
37
79
  if (normalized.pull != null) classList.push(classes("".concat(bp, "-").concat(_constants.GRID_CLASS.pull, "-").concat(normalized.pull)));
38
80
  if (normalized.push != null) classList.push(classes("".concat(bp, "-").concat(_constants.GRID_CLASS.push, "-").concat(normalized.push)));
39
- if (flexValue) flexVars[_constants.GRID_RESPONSIVE_CSS_VARS[bp].colFlex] = flexValue;
81
+ if (flexValue) {
82
+ classList.push(classes("".concat(bp, "-").concat(_constants.GRID_CLASS.flex)));
83
+ flexVars[_constants.GRID_RESPONSIVE_CSS_VARS[bp].colFlex] = flexValue;
84
+ }
40
85
  });
41
86
  return {
42
87
  classList: classList,
@@ -59,6 +104,16 @@ var Col = exports.Col = /*#__PURE__*/(0, _react.memo)(function (props) {
59
104
  _props$prefixCls = props.prefixCls,
60
105
  prefixCls = _props$prefixCls === void 0 ? _constants.GRID_COL_PREFIX : _props$prefixCls,
61
106
  rest = __rest(props, ["children", "span", "offset", "order", "pull", "push", "flex", "sm", "md", "lg", "className", "style", "prefixCls"]);
107
+ warnColRangeInDev({
108
+ span: span,
109
+ offset: offset,
110
+ order: order,
111
+ push: push,
112
+ pull: pull,
113
+ sm: sm,
114
+ md: md,
115
+ lg: lg
116
+ });
62
117
  var _useMemo = (0, _react.useMemo)(function () {
63
118
  var classes = (0, _classnames["default"])(prefixCls);
64
119
  var _buildResponsiveConfi = buildResponsiveConfig({
@@ -79,8 +134,9 @@ var Col = exports.Col = /*#__PURE__*/(0, _react.memo)(function (props) {
79
134
  classNameValue = _useMemo.classNameValue,
80
135
  flexValue = _useMemo.flexValue,
81
136
  flexVars = _useMemo.flexVars;
137
+ // User-supplied `style` wins over the computed flex CSS vars.
82
138
  var mergedStyle = (0, _react.useMemo)(function () {
83
- return Object.assign(Object.assign(Object.assign({}, style), flexValue && (0, _defineProperty2["default"])({}, _constants.GRID_CSS_VARS.colFlex, flexValue)), flexVars);
139
+ return Object.assign(Object.assign(Object.assign({}, flexValue && (0, _defineProperty2["default"])({}, _constants.GRID_CSS_VARS.colFlex, flexValue)), flexVars), style);
84
140
  }, [style, flexValue, flexVars]);
85
141
  return (0, _jsxRuntime.jsx)("div", Object.assign({}, rest, {
86
142
  style: mergedStyle,
@@ -90,4 +146,4 @@ var Col = exports.Col = /*#__PURE__*/(0, _react.memo)(function (props) {
90
146
  });
91
147
  Col.displayName = 'Col';
92
148
  var _default = exports["default"] = Col;
93
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvR3JpZC9Db2wuanMiLCJjb21wb25lbnRzL3NyYy9jb21wb25lbnRzL0dyaWQvQ29sLnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2NvbnN0YW50cyIsIl9oZWxwZXIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJfX3Jlc3QiLCJzIiwicCIsInByb3RvdHlwZSIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJsZW5ndGgiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsImJ1aWxkUmVzcG9uc2l2ZUNvbmZpZyIsImJyZWFrcG9pbnRzIiwiY2xhc3NlcyIsImNsYXNzTGlzdCIsImZsZXhWYXJzIiwiR1JJRF9CUkVBS1BPSU5UUyIsImZvckVhY2giLCJicCIsInNpemUiLCJub3JtYWxpemVkIiwibm9ybWFsaXplQ29sU2l6ZSIsImZsZXhWYWx1ZSIsIm5vcm1hbGl6ZUZsZXgiLCJmbGV4Iiwic3BhbiIsInB1c2giLCJjb25jYXQiLCJvZmZzZXQiLCJHUklEX0NMQVNTIiwib3JkZXIiLCJwdWxsIiwiR1JJRF9SRVNQT05TSVZFX0NTU19WQVJTIiwiY29sRmxleCIsIkNvbCIsImV4cG9ydHMiLCJtZW1vIiwicHJvcHMiLCJjaGlsZHJlbiIsInNtIiwibWQiLCJsZyIsImNsYXNzTmFtZSIsInN0eWxlIiwiX3Byb3BzJHByZWZpeENscyIsInByZWZpeENscyIsIkdSSURfQ09MX1BSRUZJWCIsInJlc3QiLCJfdXNlTWVtbyIsInVzZU1lbW8iLCJjbGFzc25hbWVzIiwiX2J1aWxkUmVzcG9uc2l2ZUNvbmZpIiwibm9ybWFsaXplZEZsZXgiLCJuZXh0Q2xhc3NOYW1lIiwiam9pbkNscyIsImFwcGx5IiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsImNsYXNzTmFtZVZhbHVlIiwibWVyZ2VkU3R5bGUiLCJhc3NpZ24iLCJfZGVmaW5lUHJvcGVydHkyIiwiR1JJRF9DU1NfVkFSUyIsIl9qc3giLCJkaXNwbGF5TmFtZSIsIl9kZWZhdWx0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBV0EsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDWEEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsV0FBQSxHQUFBQyx1QkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksVUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssT0FBQSxHQUFBTCxPQUFBO0FBQTJELFNBQUFNLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBSix3QkFBQUksQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsT0FBQVEsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMs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SUFqQnJFZ0MsY0FBYyxHQUFBVCxRQUFBLENBQWRTLGNBQWM7SUFBRW5DLFNBQVMsR0FBQTBCLFFBQUEsQ0FBVDFCLFNBQVM7SUFBRVAsUUFBUSxHQUFBaUMsUUFBQSxDQUFSakMsUUFBUTtFQW1CM0MsSUFBTTJDLFdBQVcsR0FBa0IsSUFBQVQsY0FBTyxFQUFDO0lBQUEsT0FBTXRELE1BQUEsQ0FBQWdFLE1BQUEsQ0FBQWhFLE1BQUEsQ0FBQWdFLE1BQUEsQ0FBQWhFLE1BQUEsQ0FBQWdFLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDNUNoQixLQUFLLENBQUEsRUFDSnJCLFNBQVMsUUFBQXNDLGdCQUFBLGlCQUFPQyx3QkFBYSxDQUFDNUIsT0FBTyxFQUFHWCxTQUFTLENBQUcsQ0FBQSxFQUNyRFAsUUFBUSxDQUFBO0VBQUEsQ0FDWCxFQUFFLENBQUM0QixLQUFLLEVBQUVyQixTQUFTLEVBQUVQLFFBQVEsQ0FBQyxDQUFDO0VBRWpDLE9BQ0UsSUFBQStDLGVBQUEsRUFBQSxLQUFBLEVBQUFuRSxNQUFBLENBQUFnRSxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQ01aLElBQUksRUFBQTtJQUNSSixLQUFLLEVBQUVlLFdBQVc7SUFDbEJoQixTQUFTLEVBQUVlLGNBQWM7SUFBQW5CLFFBQUEsRUFFeEJBO0VBQVEsQ0FBQSxDQUFBLENBQ0w7QUFFVixDQUFDLENBQUM7QUFFRkosR0FBRyxDQUFDNkIsV0FBVyxHQUFHLEtBQUs7QUFBQyxJQUFBQyxRQUFBLEdBQUE3QixPQUFBLGNBRVRELEdBQUciLCJmaWxlIjoiY29tcG9uZW50cy9HcmlkL0NvbC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGNsYXNzbmFtZXMsIHsgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgR1JJRF9CUkVBS1BPSU5UUywgR1JJRF9DTEFTUywgR1JJRF9DT0xfUFJFRklYLCBHUklEX0NTU19WQVJTLCBHUklEX1JFU1BPTlNJVkVfQ1NTX1ZBUlMgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBub3JtYWxpemVDb2xTaXplLCBub3JtYWxpemVGbGV4IH0gZnJvbSAnLi9oZWxwZXInO1xuY29uc3QgYnVpbGRSZXNwb25zaXZlQ29uZmlnID0gKGJyZWFrcG9pbnRzLCBjbGFzc2VzKSA9PiB7XG4gICAgY29uc3QgY2xhc3NMaXN0ID0gW107XG4gICAgY29uc3QgZmxleFZhcnMgPSB7fTtcbiAgICBHUklEX0JSRUFLUE9JTlRTLmZvckVhY2goYnAgPT4ge1xuICAgICAgICBjb25zdCBzaXplID0gYnJlYWtwb2ludHNbYnBdO1xuICAgICAgICBpZiAoc2l6ZSA9PSBudWxsKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkID0gbm9ybWFsaXplQ29sU2l6ZShzaXplKTtcbiAgICAgICAgY29uc3QgZmxleFZhbHVlID0gbm9ybWFsaXplRmxleChub3JtYWxpemVkLmZsZXgpO1xuICAgICAgICBpZiAobm9ybWFsaXplZC5zcGFuICE9IG51bGwgJiYgIWZsZXhWYWx1ZSlcbiAgICAgICAgICAgIGNsYXNzTGlzdC5wdXNoKGNsYXNzZXMoYCR7YnB9LSR7bm9ybWFsaXplZC5zcGFufWApKTtcbiAgICAgICAgaWYgKG5vcm1hbGl6ZWQub2Zmc2V0ICE9IG51bGwpXG4gICAgICAgICAgICBjbGFzc0xpc3QucHVzaChjbGFzc2VzKGAke2JwfS0ke0dSSURfQ0xBU1Mub2Zmc2V0fS0ke25vcm1hbGl6ZWQub2Zmc2V0fWApKTtcbiAgICAgICAgaWYgKG5vcm1hbGl6ZWQub3JkZXIgIT0gbnVsbClcbiAgICAgICAgICAgIGNsYXNzTGlzdC5wdXNoKGNsYXNzZXMoYCR7YnB9LSR7R1JJRF9DTEFTUy5vcmRlcn0tJHtub3JtYWxpemVkLm9yZGVyfWApKTtcbiAgICAgICAgaWYgKG5vcm1hbGl6ZWQucHVsbCAhPSBudWxsKVxuICAgICAgICAgICAgY2xhc3NMaXN0LnB1c2goY2xhc3NlcyhgJHticH0tJHtHUklEX0NMQVNTLnB1bGx9LSR7bm9ybWFsaXplZC5wdWxsfWApKTtcbiAgICAgICAgaWYgKG5vcm1hbGl6ZWQucHVzaCAhPSBudWxsKVxuICAgICAgICAgICAgY2xhc3NMaXN0LnB1c2goY2xhc3NlcyhgJHticH0tJHtHUklEX0NMQVNTLnB1c2h9LSR7bm9ybWFsaXplZC5wdXNofWApKTtcbiAgICAgICAgaWYgKGZsZXhWYWx1ZSlcbiAgICAgICAgICAgIGZsZXhWYXJzW0dSSURfUkVTUE9OU0lWRV9DU1NfVkFSU1ticF0uY29sRmxleF0gPSBmbGV4VmFsdWU7XG4gICAgfSk7XG4gICAgcmV0dXJuIHsgY2xhc3NMaXN0LCBmbGV4VmFycyB9O1xufTtcbmV4cG9ydCBjb25zdCBDb2wgPSBtZW1vKHByb3BzID0+IHtcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBzcGFuLCBvZmZzZXQsIG9yZGVyLCBwdWxsLCBwdXNoLCBmbGV4LCBzbSwgbWQsIGxnLCBjbGFzc05hbWUsIHN0eWxlLCBwcmVmaXhDbHMgPSBHUklEX0NPTF9QUkVGSVggfSA9IHByb3BzLCByZXN0ID0gX19yZXN0KHByb3BzLCBbXCJjaGlsZHJlblwiLCBcInNwYW5cIiwgXCJvZmZzZXRcIiwgXCJvcmRlclwiLCBcInB1bGxcIiwgXCJwdXNoXCIsIFwiZmxleFwiLCBcInNtXCIsIFwibWRcIiwgXCJsZ1wiLCBcImNsYXNzTmFtZVwiLCBcInN0eWxlXCIsIFwicHJlZml4Q2xzXCJdKTtcbiAgICBjb25zdCB7IGNsYXNzTmFtZVZhbHVlLCBmbGV4VmFsdWUsIGZsZXhWYXJzIH0gPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICAgICAgY29uc3QgeyBjbGFzc0xpc3QsIGZsZXhWYXJzIH0gPSBidWlsZFJlc3BvbnNpdmVDb25maWcoeyBzbSwgbWQsIGxnIH0sIGNsYXNzZXMpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRmxleCA9IG5vcm1hbGl6ZUZsZXgoZmxleCk7XG4gICAgICAgIGNvbnN0IG5leHRDbGFzc05hbWUgPSBqb2luQ2xzKGNsYXNzZXMoKSwgc3BhbiAhPSBudWxsICYmICFub3JtYWxpemVkRmxleCAmJiBjbGFzc2VzKGAke3NwYW59YCksIG9mZnNldCAhPSBudWxsICYmIGNsYXNzZXMoYCR7R1JJRF9DTEFTUy5vZmZzZXR9LSR7b2Zmc2V0fWApLCBvcmRlciAhPSBudWxsICYmIGNsYXNzZXMoYCR7R1JJRF9DTEFTUy5vcmRlcn0tJHtvcmRlcn1gKSwgcHVzaCAhPSBudWxsICYmIGNsYXNzZXMoYCR7R1JJRF9DTEFTUy5wdXNofS0ke3B1c2h9YCksIHB1bGwgIT0gbnVsbCAmJiBjbGFzc2VzKGAke0dSSURfQ0xBU1MucHVsbH0tJHtwdWxsfWApLCAuLi5jbGFzc0xpc3QsIGNsYXNzTmFtZSk7XG4gICAgICAgIHJldHVybiB7IGNsYXNzTmFtZVZhbHVlOiBuZXh0Q2xhc3NOYW1lLCBmbGV4VmFsdWU6IG5vcm1hbGl6ZWRGbGV4LCBmbGV4VmFycyB9O1xuICAgIH0sIFtjbGFzc05hbWUsIGZsZXgsIGxnLCBtZCwgb2Zmc2V0LCBvcmRlciwgcHJlZml4Q2xzLCBwdWxsLCBwdXNoLCBzbSwgc3Bhbl0pO1xuICAgIGNvbnN0IG1lcmdlZFN0eWxlID0gdXNlTWVtbygoKSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHN0eWxlKSwgKGZsZXhWYWx1ZSAmJiB7IFtHUklEX0NTU19WQVJTLmNvbEZsZXhdOiBmbGV4VmFsdWUgfSkpLCBmbGV4VmFycykpLCBbc3R5bGUsIGZsZXhWYWx1ZSwgZmxleFZhcnNdKTtcbiAgICByZXR1cm4gKF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyBzdHlsZTogbWVyZ2VkU3R5bGUsIGNsYXNzTmFtZTogY2xhc3NOYW1lVmFsdWUsIGNoaWxkcmVuOiBjaGlsZHJlbiB9KSkpO1xufSk7XG5Db2wuZGlzcGxheU5hbWUgPSAnQ29sJztcbmV4cG9ydCBkZWZhdWx0IENvbDsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
149
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvR3JpZC9Db2wuanMiLCJjb21wb25lbnRzL3NyYy9jb21wb25lbnRzL0dyaWQvQ29sLnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2Rldldhcm4iLCJfY29uc3RhbnRzIiwiX2hlbHBlciIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIl9fcmVzdCIsInMiLCJwIiwicHJvdG90eXBlIiwiaW5kZXhPZiIsImdldE93blByb3BlcnR5U3ltYm9scyIsImxlbmd0aCIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwiQ09MX1JBTkdFX0tFWVMiLCJ3YXJuQ29sUmFuZ2UiLCJzY29wZSIsInZhbHVlcyIsImZvckVhY2giLCJrZXkiLCJ2YWx1ZSIsIkdSSURfQ09MVU1OUyIsInVzYWdlIiwiY29uY2F0IiwiZGV2V2Fybk9uY2UiLCJ3YXJuQ29sUmFuZ2VJbkRldiIsInByb3BzIiwiaXNQcm9kdWN0aW9uIiwic3BhbiIsIm9mZnNldCIsIm9yZGVyIiwicHVzaCIsInB1bGwiLCJzbSIsIm1kIiwibGciLCJfcmVmIiwiX3JlZjIiLCJfc2xpY2VkVG9BcnJheTIiLCJzaXplIiwibm9ybWFsaXplQ29sU2l6ZSIsImJ1aWxkUmVzcG9uc2l2ZUNvbmZpZyIsImJyZWFrcG9pbnRzIiwiY2xhc3NlcyIsImNsYXNzTGlzdCIsImZsZXhWYXJzIiwiR1JJRF9CUkVBS1BPSU5UUyIsImJwIiwibm9ybWFsaXplZCIsImZsZXhWYWx1ZSIsIm5vcm1hbGl6ZUZsZXgiLCJmbGV4IiwiR1JJRF9DTEFTUyIsIkdSSURfUkVTUE9OU0lWRV9DU1NfVkFSUyIsImNvbEZsZXgiLCJDb2wiLCJleHBvcnRzIiwibWVtbyIsImNoaWxkcmVuIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwiR1JJRF9DT0xfUFJFRklYIiwicmVzdCIsIl91c2VNZW1vIiwidXNlTWVtbyIsImNsYXNzbmFtZXMiLCJfYnVpbGRSZXNwb25zaXZlQ29uZmkiLCJub3JtYWxpemVkRmxleCIsIm5leHRDbGFzc05hbWUiLCJqb2luQ2xzIiwiYXBwbHkiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiY2xhc3NOYW1lVmFsdWUiLCJtZXJnZWRTdHlsZSIsImFzc2lnbiIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJHUklEX0NTU19WQVJTIiwiX2pzeCIsImRpc3BsYXlOYW1lIiwiX2RlZmF1bHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBV0EsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDWEEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsV0FBQSxHQUFBQyx1QkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksUUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssVUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sT0FBQSxHQUFBTixPQUFBO0FBQTJELFNBQUFPLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBTCx3QkFBQUssQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEs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QUFFVixDQUFDLENBQUM7QUFFRkgsR0FBRyxDQUFDeUIsV0FBVyxHQUFHLEtBQUs7QUFBQyxJQUFBQyxRQUFBLEdBQUF6QixPQUFBLGNBRVRELEdBQUciLCJmaWxlIjoiY29tcG9uZW50cy9HcmlkL0NvbC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGNsYXNzbmFtZXMsIHsgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgZGV2V2Fybk9uY2UsIGlzUHJvZHVjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2Rldldhcm4nO1xuaW1wb3J0IHsgR1JJRF9CUkVBS1BPSU5UUywgR1JJRF9DTEFTUywgR1JJRF9DT0xfUFJFRklYLCBHUklEX0NPTFVNTlMsIEdSSURfQ1NTX1ZBUlMsIEdSSURfUkVTUE9OU0lWRV9DU1NfVkFSUyB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IG5vcm1hbGl6ZUNvbFNpemUsIG5vcm1hbGl6ZUZsZXggfSBmcm9tICcuL2hlbHBlcic7XG5jb25zdCBDT0xfUkFOR0VfS0VZUyA9IFsnc3BhbicsICdvZmZzZXQnLCAnb3JkZXInLCAncHVzaCcsICdwdWxsJ107XG4vLyBEZXYtb25seSBndWFyZDogc3Bhbi9vZmZzZXQvb3JkZXIvcHVzaC9wdWxsIOKAlCBib3RoIHRvcC1sZXZlbCBBTkQgdGhlIHJlc3BvbnNpdmVcbi8vIHNtL21kL2xnIGVxdWl2YWxlbnRzIOKAlCBtYXAgdG8gY2xhc3NlcyBnZW5lcmF0ZWQgZm9yIDDigJNHUklEX0NPTFVNTlMgb25seTsgdmFsdWVzXG4vLyBvdXRzaWRlIHRoYXQgcmFuZ2Ugc2lsZW50bHkgcHJvZHVjZSBhIGNsYXNzIHdpdGggbm8gbWF0Y2hpbmcgQ1NTLiBXYXJucyBvbmNlIHBlclxuLy8gZGlzdGluY3QgbWlzdXNlICh2aWEgdGhlIHNoYXJlZCBkZXZXYXJuT25jZSkgaW5zdGVhZCBvZiBvbiBldmVyeSByZW5kZXIuXG5jb25zdCB3YXJuQ29sUmFuZ2UgPSAoc2NvcGUsIHZhbHVlcykgPT4ge1xuICAgIENPTF9SQU5HRV9LRVlTLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZXNba2V5XTtcbiAgICAgICAgaWYgKHZhbHVlICE9IG51bGwgJiYgKHZhbHVlIDwgMCB8fCB2YWx1ZSA+IEdSSURfQ09MVU1OUykpIHtcbiAgICAgICAgICAgIGNvbnN0IHVzYWdlID0gc2NvcGUgPyBgJHtzY29wZX09e3sgJHtrZXl9OiAke3ZhbHVlfSB9fWAgOiBgJHtrZXl9PXske3ZhbHVlfX1gO1xuICAgICAgICAgICAgZGV2V2Fybk9uY2UoYGdyaWQtY29sLXJhbmdlOiR7c2NvcGV9OiR7a2V5fToke3ZhbHVlfWAsIGBbR3JpZC5Db2xdIFxcYCR7dXNhZ2V9XFxgIGlzIG91dHNpZGUgdGhlIDDigJMke0dSSURfQ09MVU1OU30gcmFuZ2U7IG5vIG1hdGNoaW5nIHN0eWxlIGlzIGdlbmVyYXRlZC5gKTtcbiAgICAgICAgfVxuICAgIH0pO1xufTtcbi8vIEdhdGVkIGJ5IGlzUHJvZHVjdGlvbigpIHNvIHRoZSBwZXItcmVuZGVyIGFyZyBvYmplY3RzIGFyZSBuZXZlciBhbGxvY2F0ZWQgaW5cbi8vIHByb2R1Y3Rpb24gYnVpbGRzLlxuY29uc3Qgd2FybkNvbFJhbmdlSW5EZXYgPSAocHJvcHMpID0+IHtcbiAgICBpZiAoaXNQcm9kdWN0aW9uKCkpXG4gICAgICAgIHJldHVybjtcbiAgICBjb25zdCB7IHNwYW4sIG9mZnNldCwgb3JkZXIsIHB1c2gsIHB1bGwsIHNtLCBtZCwgbGcgfSA9IHByb3BzO1xuICAgIHdhcm5Db2xSYW5nZSgnJywgeyBzcGFuLCBvZmZzZXQsIG9yZGVyLCBwdXNoLCBwdWxsIH0pO1xuICAgIFtbJ3NtJywgc21dLCBbJ21kJywgbWRdLCBbJ2xnJywgbGddXS5mb3JFYWNoKChbc2NvcGUsIHNpemVdKSA9PiB7XG4gICAgICAgIGlmIChzaXplICE9IG51bGwpXG4gICAgICAgICAgICB3YXJuQ29sUmFuZ2Uoc2NvcGUsIG5vcm1hbGl6ZUNvbFNpemUoc2l6ZSkpO1xuICAgIH0pO1xufTtcbmNvbnN0IGJ1aWxkUmVzcG9uc2l2ZUNvbmZpZyA9IChicmVha3BvaW50cywgY2xhc3NlcykgPT4ge1xuICAgIGNvbnN0IGNsYXNzTGlzdCA9IFtdO1xuICAgIGNvbnN0IGZsZXhWYXJzID0ge307XG4gICAgR1JJRF9CUkVBS1BPSU5UUy5mb3JFYWNoKGJwID0+IHtcbiAgICAgICAgY29uc3Qgc2l6ZSA9IGJyZWFrcG9pbnRzW2JwXTtcbiAgICAgICAgaWYgKHNpemUgPT0gbnVsbClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZCA9IG5vcm1hbGl6ZUNvbFNpemUoc2l6ZSk7XG4gICAgICAgIGNvbnN0IGZsZXhWYWx1ZSA9IG5vcm1hbGl6ZUZsZXgobm9ybWFsaXplZC5mbGV4KTtcbiAgICAgICAgaWYgKG5vcm1hbGl6ZWQuc3BhbiAhPSBudWxsICYmICFmbGV4VmFsdWUpXG4gICAgICAgICAgICBjbGFzc0xpc3QucHVzaChjbGFzc2VzKGAke2JwfS0ke25vcm1hbGl6ZWQuc3Bhbn1gKSk7XG4gICAgICAgIGlmIChub3JtYWxpemVkLm9mZnNldCAhPSBudWxsKVxuICAgICAgICAgICAgY2xhc3NMaXN0LnB1c2goY2xhc3NlcyhgJHticH0tJHtHUklEX0NMQVNTLm9mZnNldH0tJHtub3JtYWxpemVkLm9mZnNldH1gKSk7XG4gICAgICAgIGlmIChub3JtYWxpemVkLm9yZGVyICE9IG51bGwpXG4gICAgICAgICAgICBjbGFzc0xpc3QucHVzaChjbGFzc2VzKGAke2JwfS0ke0dSSURfQ0xBU1Mub3JkZXJ9LSR7bm9ybWFsaXplZC5vcmRlcn1gKSk7XG4gICAgICAgIGlmIChub3JtYWxpemVkLnB1bGwgIT0gbnVsbClcbiAgICAgICAgICAgIGNsYXNzTGlzdC5wdXNoKGNsYXNzZXMoYCR7YnB9LSR7R1JJRF9DTEFTUy5wdWxsfS0ke25vcm1hbGl6ZWQucHVsbH1gKSk7XG4gICAgICAgIGlmIChub3JtYWxpemVkLnB1c2ggIT0gbnVsbClcbiAgICAgICAgICAgIGNsYXNzTGlzdC5wdXNoKGNsYXNzZXMoYCR7YnB9LSR7R1JJRF9DTEFTUy5wdXNofS0ke25vcm1hbGl6ZWQucHVzaH1gKSk7XG4gICAgICAgIGlmIChmbGV4VmFsdWUpIHtcbiAgICAgICAgICAgIGNsYXNzTGlzdC5wdXNoKGNsYXNzZXMoYCR7YnB9LSR7R1JJRF9DTEFTUy5mbGV4fWApKTtcbiAgICAgICAgICAgIGZsZXhWYXJzW0dSSURfUkVTUE9OU0lWRV9DU1NfVkFSU1ticF0uY29sRmxleF0gPSBmbGV4VmFsdWU7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4geyBjbGFzc0xpc3QsIGZsZXhWYXJzIH07XG59O1xuZXhwb3J0IGNvbnN0IENvbCA9IG1lbW8ocHJvcHMgPT4ge1xuICAgIGNvbnN0IHsgY2hpbGRyZW4sIHNwYW4sIG9mZnNldCwgb3JkZXIsIHB1bGwsIHB1c2gsIGZsZXgsIHNtLCBtZCwgbGcsIGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9IEdSSURfQ09MX1BSRUZJWCB9ID0gcHJvcHMsIHJlc3QgPSBfX3Jlc3QocHJvcHMsIFtcImNoaWxkcmVuXCIsIFwic3BhblwiLCBcIm9mZnNldFwiLCBcIm9yZGVyXCIsIFwicHVsbFwiLCBcInB1c2hcIiwgXCJmbGV4XCIsIFwic21cIiwgXCJtZFwiLCBcImxnXCIsIFwiY2xhc3NOYW1lXCIsIFwic3R5bGVcIiwgXCJwcmVmaXhDbHNcIl0pO1xuICAgIHdhcm5Db2xSYW5nZUluRGV2KHsgc3Bhbiwgb2Zmc2V0LCBvcmRlciwgcHVzaCwgcHVsbCwgc20sIG1kLCBsZyB9KTtcbiAgICBjb25zdCB7IGNsYXNzTmFtZVZhbHVlLCBmbGV4VmFsdWUsIGZsZXhWYXJzIH0gPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICAgICAgY29uc3QgeyBjbGFzc0xpc3QsIGZsZXhWYXJzIH0gPSBidWlsZFJlc3BvbnNpdmVDb25maWcoeyBzbSwgbWQsIGxnIH0sIGNsYXNzZXMpO1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRmxleCA9IG5vcm1hbGl6ZUZsZXgoZmxleCk7XG4gICAgICAgIGNvbnN0IG5leHRDbGFzc05hbWUgPSBqb2luQ2xzKGNsYXNzZXMoKSwgc3BhbiAhPSBudWxsICYmICFub3JtYWxpemVkRmxleCAmJiBjbGFzc2VzKGAke3NwYW59YCksIG9mZnNldCAhPSBudWxsICYmIGNsYXNzZXMoYCR7R1JJRF9DTEFTUy5vZmZzZXR9LSR7b2Zmc2V0fWApLCBvcmRlciAhPSBudWxsICYmIGNsYXNzZXMoYCR7R1JJRF9DTEFTUy5vcmRlcn0tJHtvcmRlcn1gKSwgcHVzaCAhPSBudWxsICYmIGNsYXNzZXMoYCR7R1JJRF9DTEFTUy5wdXNofS0ke3B1c2h9YCksIHB1bGwgIT0gbnVsbCAmJiBjbGFzc2VzKGAke0dSSURfQ0xBU1MucHVsbH0tJHtwdWxsfWApLCAuLi5jbGFzc0xpc3QsIGNsYXNzTmFtZSk7XG4gICAgICAgIHJldHVybiB7IGNsYXNzTmFtZVZhbHVlOiBuZXh0Q2xhc3NOYW1lLCBmbGV4VmFsdWU6IG5vcm1hbGl6ZWRGbGV4LCBmbGV4VmFycyB9O1xuICAgIH0sIFtjbGFzc05hbWUsIGZsZXgsIGxnLCBtZCwgb2Zmc2V0LCBvcmRlciwgcHJlZml4Q2xzLCBwdWxsLCBwdXNoLCBzbSwgc3Bhbl0pO1xuICAgIC8vIFVzZXItc3VwcGxpZWQgYHN0eWxlYCB3aW5zIG92ZXIgdGhlIGNvbXB1dGVkIGZsZXggQ1NTIHZhcnMuXG4gICAgY29uc3QgbWVyZ2VkU3R5bGUgPSB1c2VNZW1vKCgpID0+IChPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgKGZsZXhWYWx1ZSAmJiB7IFtHUklEX0NTU19WQVJTLmNvbEZsZXhdOiBmbGV4VmFsdWUgfSkpLCBmbGV4VmFycyksIHN0eWxlKSksIFtzdHlsZSwgZmxleFZhbHVlLCBmbGV4VmFyc10pO1xuICAgIHJldHVybiAoX2pzeChcImRpdlwiLCBPYmplY3QuYXNzaWduKHt9LCByZXN0LCB7IHN0eWxlOiBtZXJnZWRTdHlsZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVWYWx1ZSwgY2hpbGRyZW46IGNoaWxkcmVuIH0pKSk7XG59KTtcbkNvbC5kaXNwbGF5TmFtZSA9ICdDb2wnO1xuZXhwb3J0IGRlZmF1bHQgQ29sOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -3,7 +3,10 @@ import type { GridRowProps } from './interface';
3
3
  import './style';
4
4
  export interface GridProps extends GridRowProps {
5
5
  }
6
- export declare const Grid: import("react").NamedExoticComponent<PropsWithChildren<GridProps>> & {
6
+ export declare const Grid: {
7
+ (props: PropsWithChildren<GridProps>): import("react/jsx-runtime").JSX.Element;
8
+ displayName: string;
9
+ } & {
7
10
  Row: import("react").NamedExoticComponent<PropsWithChildren<GridRowProps>>;
8
11
  Col: import("react").NamedExoticComponent<PropsWithChildren<import("./interface").GridColProps>>;
9
12
  };
@@ -5,17 +5,18 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = exports.Grid = void 0;
7
7
  var _jsxRuntime = require("react/jsx-runtime");
8
- var _react = require("react");
9
8
  var _Row = require("./Row");
10
9
  var _Col = require("./Col");
11
10
  require("./style");
12
- var GridInner = /*#__PURE__*/(0, _react.memo)(function (props) {
11
+ // `Row` is already memoized, so no extra `memo` wrapper is needed here — this
12
+ // thin alias just exposes `Row` under the `Grid` name with `Grid.Row`/`Grid.Col`.
13
+ var GridInner = function GridInner(props) {
13
14
  return (0, _jsxRuntime.jsx)(_Row.Row, Object.assign({}, props));
14
- });
15
+ };
15
16
  GridInner.displayName = 'Grid';
16
17
  var Grid = exports.Grid = Object.assign(GridInner, {
17
18
  Row: _Row.Row,
18
19
  Col: _Col.Col
19
20
  });
20
21
  var _default = exports["default"] = Grid;
21
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvR3JpZC9HcmlkLmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9HcmlkL0dyaWQudHN4Il0sIm5hbWVzIjpbIl9qc3hSdW50aW1lIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9Sb3ciLCJfQ29sIiwiR3JpZElubmVyIiwibWVtbyIsInByb3BzIiwiX2pzeCIsIlJvdyIsIk9iamVjdCIsImFzc2lnbiIsImRpc3BsYXlOYW1lIiwiR3JpZCIsImV4cG9ydHMiLCJDb2wiLCJfZGVmYXVsdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDQUEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBR0EsSUFBQUUsSUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsSUFBQSxHQUFBSCxPQUFBO0FBQ0FBLE9BQUE7QUFJQSxJQUFNSSxTQUFTLGdCQUFHLElBQUFDLFdBQUksRUFBK0IsVUFBQUMsS0FBSztFQUFBLE9BQUksSUFBQUMsZUFBQSxFQUFDQyxRQUFHLEVBQUFDLE1BQUEsQ0FBQUMsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFLSixLQUFLLENBQUEsQ0FBSTtBQUFBLEVBQUM7QUFFakZGLFNBQVMsQ0FBQ08sV0FBVyxHQUFHLE1BQU07QUFFdkIsSUFBTUMsSUFBSSxHQUFBQyxPQUFBLENBQUFELElBQUEsR0FBR0gsTUFBTSxDQUFDQyxNQUFNLENBQUNOLFNBQVMsRUFBRTtFQUFFSSxHQUFHLEVBQUhBLFFBQUc7RUFBRU0sR0FBRyxFQUFIQTtBQUFHLENBQUUsQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FBQUYsT0FBQSxjQUU1Q0QsSUFBSSIsImZpbGUiOiJjb21wb25lbnRzL0dyaWQvR3JpZC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgUm93IH0gZnJvbSAnLi9Sb3cnO1xuaW1wb3J0IHsgQ29sIH0gZnJvbSAnLi9Db2wnO1xuaW1wb3J0ICcuL3N0eWxlJztcbmNvbnN0IEdyaWRJbm5lciA9IG1lbW8ocHJvcHMgPT4gX2pzeChSb3csIE9iamVjdC5hc3NpZ24oe30sIHByb3BzKSkpO1xuR3JpZElubmVyLmRpc3BsYXlOYW1lID0gJ0dyaWQnO1xuZXhwb3J0IGNvbnN0IEdyaWQgPSBPYmplY3QuYXNzaWduKEdyaWRJbm5lciwgeyBSb3csIENvbCB9KTtcbmV4cG9ydCBkZWZhdWx0IEdyaWQ7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
22
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvR3JpZC9HcmlkLmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9HcmlkL0dyaWQudHN4Il0sIm5hbWVzIjpbIl9qc3hSdW50aW1lIiwicmVxdWlyZSIsIl9Sb3ciLCJfQ29sIiwiR3JpZElubmVyIiwicHJvcHMiLCJfanN4IiwiUm93IiwiT2JqZWN0IiwiYXNzaWduIiwiZGlzcGxheU5hbWUiLCJHcmlkIiwiZXhwb3J0cyIsIkNvbCIsIl9kZWZhdWx0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNFQSxJQUFBQyxJQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxJQUFBLEdBQUFGLE9BQUE7QUFDQUEsT0FBQTtBQUlBO0FBQ0E7QUFDQSxJQUFNRyxTQUFTLEdBQUcsU0FBWkEsU0FBU0EsQ0FBSUMsS0FBbUM7RUFBQSxPQUFLLElBQUFDLGVBQUEsRUFBQ0MsUUFBRyxFQUFBQyxNQUFBLENBQUFDLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFBS0osS0FBSyxDQUFBLENBQUk7QUFBQTtBQUU3RUQsU0FBUyxDQUFDTSxXQUFXLEdBQUcsTUFBTTtBQUV2QixJQUFNQyxJQUFJLEdBQUFDLE9BQUEsQ0FBQUQsSUFBQSxHQUFHSCxNQUFNLENBQUNDLE1BQU0sQ0FBQ0wsU0FBUyxFQUFFO0VBQUVHLEdBQUcsRUFBSEEsUUFBRztFQUFFTSxHQUFHLEVBQUhBO0FBQUcsQ0FBRSxDQUFDO0FBQUMsSUFBQUMsUUFBQSxHQUFBRixPQUFBLGNBRTVDRCxJQUFJIiwiZmlsZSI6ImNvbXBvbmVudHMvR3JpZC9HcmlkLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsganN4IGFzIF9qc3ggfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IFJvdyB9IGZyb20gJy4vUm93JztcbmltcG9ydCB7IENvbCB9IGZyb20gJy4vQ29sJztcbmltcG9ydCAnLi9zdHlsZSc7XG4vLyBgUm93YCBpcyBhbHJlYWR5IG1lbW9pemVkLCBzbyBubyBleHRyYSBgbWVtb2Agd3JhcHBlciBpcyBuZWVkZWQgaGVyZSDigJQgdGhpc1xuLy8gdGhpbiBhbGlhcyBqdXN0IGV4cG9zZXMgYFJvd2AgdW5kZXIgdGhlIGBHcmlkYCBuYW1lIHdpdGggYEdyaWQuUm93YC9gR3JpZC5Db2xgLlxuY29uc3QgR3JpZElubmVyID0gKHByb3BzKSA9PiBfanN4KFJvdywgT2JqZWN0LmFzc2lnbih7fSwgcHJvcHMpKTtcbkdyaWRJbm5lci5kaXNwbGF5TmFtZSA9ICdHcmlkJztcbmV4cG9ydCBjb25zdCBHcmlkID0gT2JqZWN0LmFzc2lnbihHcmlkSW5uZXIsIHsgUm93LCBDb2wgfSk7XG5leHBvcnQgZGVmYXVsdCBHcmlkOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -35,10 +35,12 @@ var Row = exports.Row = /*#__PURE__*/(0, _react.memo)(function (props) {
35
35
  var classes = (0, _classnames["default"])(prefixCls);
36
36
  var gutterVars = (0, _helper.buildGutterVars)(gutter);
37
37
  var _buildJustifyVars = (0, _helper.buildJustifyVars)(justify),
38
- justifyValue = _buildJustifyVars.staticValue,
39
38
  justifyVars = _buildJustifyVars.cssVars;
40
- var mergedStyle = Object.assign(Object.assign(Object.assign({}, style), gutterVars), justifyVars);
41
- var classNameValue = (0, _classnames.joinCls)(classes(), align && classes("".concat(_constants.GRID_CLASS.align, "-").concat(align)), justifyValue && classes("".concat(_constants.GRID_CLASS.justify, "-").concat(justifyValue)), wrap === false && classes(_constants.GRID_CLASS.noWrap), className);
39
+ var _buildAlignVars = (0, _helper.buildAlignVars)(align),
40
+ alignVars = _buildAlignVars.cssVars;
41
+ // User-supplied `style` wins over the computed gutter/justify/align CSS vars.
42
+ var mergedStyle = Object.assign(Object.assign(Object.assign(Object.assign({}, gutterVars), justifyVars), alignVars), style);
43
+ var classNameValue = (0, _classnames.joinCls)(classes(), wrap === false && classes(_constants.GRID_CLASS.noWrap), className);
42
44
  return (0, _jsxRuntime.jsx)("div", Object.assign({}, rest, {
43
45
  style: mergedStyle,
44
46
  className: classNameValue,
@@ -47,4 +49,4 @@ var Row = exports.Row = /*#__PURE__*/(0, _react.memo)(function (props) {
47
49
  });
48
50
  Row.displayName = 'Row';
49
51
  var _default = exports["default"] = Row;
50
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvR3JpZC9Sb3cuanMiLCJjb21wb25lbnRzL3NyYy9jb21wb25lbnRzL0dyaWQvUm93LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2NvbnN0YW50cyIsIl9oZWxwZXIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJfX3Jlc3QiLCJzIiwicCIsInByb3RvdHlwZSIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJsZW5ndGgiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsIlJvdyIsImV4cG9ydHMiLCJtZW1vIiwicHJvcHMiLCJjaGlsZHJlbiIsImd1dHRlciIsImFsaWduIiwianVzdGlmeSIsIl9wcm9wcyR3cmFwIiwid3JhcCIsIkdSSURfREVGQVVMVF9XUkFQIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwiR1JJRF9ST1dfUFJFRklYIiwicmVzdCIsImNsYXNzZXMiLCJjbGFzc25hbWVzIiwiZ3V0dGVyVmFycyIsImJ1aWxkR3V0dGVyVmFycyIsIl9idWlsZEp1c3RpZnlWYXJzIiwiYnVpbGRKdXN0aWZ5VmFycyIsImp1c3RpZnlWYWx1ZSIsInN0YXRpY1ZhbHVlIiwianVzdGlmeVZhcnMiLCJjc3NWYXJzIiwibWVyZ2VkU3R5bGUiLCJhc3NpZ24iLCJjbGFzc05hbWVWYWx1ZSIsImpvaW5DbHMiLCJjb25jYXQiLCJHUklEX0NMQVNTIiwibm9XcmFwIiwiX2pzeCIsImRpc3BsYXlOYW1lIiwiX2RlZmF1bHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFDLHVCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxVQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxPQUFBLEdBQUFMLE9BQUE7QUFBNkQsU0FBQU0seUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFKLHdCQUFBSSxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUksVUFBQSxTQUFBSixDQUFBLGVBQUFBLENBQUEsZ0JBQUFLLE9BQUEsQ0FBQUwsQ0FBQSwwQkFBQUEsQ0FBQSxzQkFBQUEsQ0FBQSxRQUFBRyxDQUFBLEdBQUFKLHdCQUFBLENBQUFHLENBQUEsT0FBQUMsQ0FBQSxJQUFBQSxDQUFBLENBQUFHLEdBQUEsQ0FBQU4sQ0FBQSxVQUFBRyxDQUFBLENBQUFJLEdBQUEsQ0FBQVAsQ0FBQSxPQUFBUSxDQUFBLEtBQUFDLFNBQUEsVUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxDQUFBLElBQUFkLENBQUEsb0JBQUFjLENBQUEsT0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFoQixDQUFBLEVBQUFjLENBQUEsU0FBQUcsQ0FBQSxHQUFBUCxDQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQWIsQ0FBQSxFQUFBYyxDQUFBLFVBQUFHLENBQUEsS0FBQUEsQ0FBQSxDQUFBVixHQUFBLElBQUFVLENBQUEsQ0FBQUMsR0FBQSxJQUFBUCxNQUFBLENBQUFDLGNBQUEsQ0FBQUosQ0FBQSxFQUFBTSxDQUFBLEVBQUFHLENBQUEsSUFBQVQsQ0FBQSxDQUFBTSxDQUFBLElBQUFkLENBQUEsQ0FBQWMsQ0FBQSxZQUFBTixDQUFBLGNBQUFSLENBQUEsRUFBQUcsQ0FBQSxJQUFBQSxDQUFBLENBQUFlLEdBQUEsQ0FBQWxCLENBQUEsRUFBQVEsQ0FBQSxHQUFBQSxDQUFBO0FESDdELElBQUlXLE1BQU0sR0FBSSxVQUFRLFNBQUtBLE1BQU0sSUFBSyxVQUFVQyxDQUFDLEVBQUVwQixDQUFDLEVBQUU7RUFDbEQsSUFBSUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNWLEtBQUssSUFBSWtCLENBQUMsSUFBSUQsQ0FBQyxFQUFFLElBQUlULE1BQU0sQ0FBQ1csU0FBUyxDQUFDUCxjQUFjLENBQUNDLElBQUksQ0FBQ0ksQ0FBQyxFQUFFQyxDQUFDLENBQUMsSUFBSXJCLENBQUMsQ0FBQ3VCLE9BQU8sQ0FBQ0YsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUMvRWxCLENBQUMsQ0FBQ2tCLENBQUMsQ0FBQyxHQUFHRCxDQUFDLENBQUNDLENBQUMsQ0FBQztFQUNmLElBQUlELENBQUMsSUFBSSxJQUFJLElBQUksT0FBT1QsTUFBTSxDQUFDYSxxQkFBcUIsS0FBSyxVQUFVLEVBQy9ELEtBQUssSUFBSVAsQ0FBQyxHQUFHLENBQUMsRUFBRUksQ0FBQyxHQUFHVixNQUFNLENBQUNhLHFCQUFxQixDQUFDSixDQUFDLENBQUMsRUFBRUgsQ0FBQyxHQUFHSSxDQUFDLENBQUNJLE1BQU0sRUFBRVIsQ0FBQyxFQUFFLEVBQUU7SUFDcEUsSUFBSWpCLENBQUMsQ0FBQ3VCLE9BQU8sQ0FBQ0YsQ0FBQyxDQUFDSixDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSU4sTUFBTSxDQUFDVyxTQUFTLENBQUNJLG9CQUFvQixDQUFDVixJQUFJLENBQUNJLENBQUMsRUFBRUMsQ0FBQyxDQUFDSixDQUFDLENBQUMsQ0FBQyxFQUMxRWQsQ0FBQyxDQUFDa0IsQ0FBQyxDQUFDSixDQUFDLENBQUMsQ0FBQyxHQUFHRyxDQUFDLENBQUNDLENBQUMsQ0FBQ0osQ0FBQyxDQUFDLENBQUM7RUFDekI7RUFDSixPQUFPZCxDQUFDO0FBQ1osQ0FBQztBQ0hNLElBQU13QixHQUFHLEdBQUFDLE9BQUEsQ0FBQUQsR0FBQSxnQkFBRyxJQUFBRSxXQUFJLEVBQWtDLFVBQUFDLEtBQUssRUFBRztFQUMvRCxJQUNFQyxRQUFRLEdBU05ELEtBQUssQ0FUUEMsUUFBUTtJQUNSQyxNQUFNLEdBUUpGLEtBQUssQ0FSUEUsTUFBTTtJQUNOQyxLQUFLLEdBT0hILEtBQUssQ0FQUEcsS0FBSztJQUNMQyxPQUFPLEdBTUxKLEtBQUssQ0FOUEksT0FBTztJQUFBQyxXQUFBLEdBTUxMLEtBQUssQ0FMUE0sSUFBSTtJQUFKQSxJQUFJLEdBQUFELFdBQUEsY0FBR0UsNEJBQWlCLEdBQUFGLFdBQUE7SUFDeEJHLFNBQVMsR0FJUFIsS0FBSyxDQUpQUSxTQUFTO0lBQ1RDLEtBQUssR0FHSFQsS0FBSyxDQUhQUyxLQUFLO0lBQUFDLGdCQUFBLEdBR0hWLEtBQUssQ0FGUFcsU0FBUztJQUFUQSxTQUFTLEdBQUFELGdCQUFBLGNBQUdFLDBCQUFlLEdBQUFGLGdCQUFBO0lBQ3hCRyxJQUFJLEdBQUF4QixNQUFBLENBQ0xXLEtBQUssRUFWSCxDQUFBLFVBQUEsRUFBQSxRQUFBLEVBQUEsT0FBQSxFQUFBLFNBQUEsRUFBQSxNQUFBLEVBQUEsV0FBQSxFQUFBLE9BQUEsRUFBQSxXQUFBLENBVUwsQ0FBUTtFQUVULElBQU1jLE9BQU8sR0FBRyxJQUFBQyxzQkFBVSxFQUFDSixTQUFTLENBQUM7RUFDckMsSUFBTUssVUFBVSxHQUFHLElBQUFDLHVCQUFlLEVBQUNmLE1BQU0sQ0FBQztFQUMxQyxJQUFBZ0IsaUJBQUEsR0FBNEQsSUFBQUMsd0JBQWdCLEVBQUNmLE9BQU8sQ0FBQztJQUFoRWdCLFlBQVksR0FBQUYsaUJBQUEsQ0FBekJHLFdBQVc7SUFBeUJDLFdBQVcsR0FBQUosaUJBQUEsQ0FBcEJLLE9BQU87RUFFMUMsSUFBTUMsV0FBVyxHQUFBM0MsTUFBQSxDQUFBNEMsTUFBQSxDQUFBNUMsTUFBQSxDQUFBNEMsTUFBQSxDQUFBNUMsTUFBQSxDQUFBNEMsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUF1QmhCLEtBQUssQ0FBQSxFQUFLTyxVQUFVLENBQUEsRUFBS00sV0FBVyxDQUFFO0VBRTlFLElBQU1JLGNBQWMsR0FBRyxJQUFBQyxtQkFBTyxFQUM1QmIsT0FBTyxDQUFBLENBQUUsRUFDVFgsS0FBSyxJQUFJVyxPQUFPLElBQUFjLE1BQUEsQ0FBSUMscUJBQVUsQ0FBQzFCLEtBQUssT0FBQXlCLE1BQUEsQ0FBSXpCLEtBQUssQ0FBRSxDQUFDLEVBQ2hEaUIsWUFBWSxJQUFJTixPQUFPLElBQUFjLE1BQUEsQ0FBSUMscUJBQVUsQ0FBQ3pCLE9BQU8sT0FBQXdCLE1BQUEsQ0FBSVIsWUFBWSxDQUFFLENBQUMsRUFDaEVkLElBQUksS0FBSyxLQUFLLElBQUlRLE9BQU8sQ0FBQ2UscUJBQVUsQ0FBQ0MsTUFBTSxDQUFDLEVBQzVDdEIsU0FBUyxDQUNWO0VBRUQsT0FDRSxJQUFBdUIsZUFBQSxFQUFBLEtBQUEsRUFBQWxELE1BQUEsQ0FBQTRDLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDTVosSUFBSSxFQUFBO0lBQ1JKLEtBQUssRUFBRWUsV0FBVztJQUNsQmhCLFNBQVMsRUFBRWtCLGNBQWM7SUFBQXpCLFFBQUEsRUFFeEJBO0VBQVEsQ0FBQSxDQUFBLENBQ0w7QUFFVixDQUFDLENBQUM7QUFFRkosR0FBRyxDQUFDbUMsV0FBVyxHQUFHLEtBQUs7QUFBQyxJQUFBQyxRQUFBLEdBQUFuQyxPQUFBLGNBRVRELEdBQUciLCJmaWxlIjoiY29tcG9uZW50cy9HcmlkL1Jvdy5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4IH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGNsYXNzbmFtZXMsIHsgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgR1JJRF9DTEFTUywgR1JJRF9ERUZBVUxUX1dSQVAsIEdSSURfUk9XX1BSRUZJWCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IGJ1aWxkR3V0dGVyVmFycywgYnVpbGRKdXN0aWZ5VmFycyB9IGZyb20gJy4vaGVscGVyJztcbmV4cG9ydCBjb25zdCBSb3cgPSBtZW1vKHByb3BzID0+IHtcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBndXR0ZXIsIGFsaWduLCBqdXN0aWZ5LCB3cmFwID0gR1JJRF9ERUZBVUxUX1dSQVAsIGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9IEdSSURfUk9XX1BSRUZJWCB9ID0gcHJvcHMsIHJlc3QgPSBfX3Jlc3QocHJvcHMsIFtcImNoaWxkcmVuXCIsIFwiZ3V0dGVyXCIsIFwiYWxpZ25cIiwgXCJqdXN0aWZ5XCIsIFwid3JhcFwiLCBcImNsYXNzTmFtZVwiLCBcInN0eWxlXCIsIFwicHJlZml4Q2xzXCJdKTtcbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3NuYW1lcyhwcmVmaXhDbHMpO1xuICAgIGNvbnN0IGd1dHRlclZhcnMgPSBidWlsZEd1dHRlclZhcnMoZ3V0dGVyKTtcbiAgICBjb25zdCB7IHN0YXRpY1ZhbHVlOiBqdXN0aWZ5VmFsdWUsIGNzc1ZhcnM6IGp1c3RpZnlWYXJzIH0gPSBidWlsZEp1c3RpZnlWYXJzKGp1c3RpZnkpO1xuICAgIGNvbnN0IG1lcmdlZFN0eWxlID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHN0eWxlKSwgZ3V0dGVyVmFycyksIGp1c3RpZnlWYXJzKTtcbiAgICBjb25zdCBjbGFzc05hbWVWYWx1ZSA9IGpvaW5DbHMoY2xhc3NlcygpLCBhbGlnbiAmJiBjbGFzc2VzKGAke0dSSURfQ0xBU1MuYWxpZ259LSR7YWxpZ259YCksIGp1c3RpZnlWYWx1ZSAmJiBjbGFzc2VzKGAke0dSSURfQ0xBU1MuanVzdGlmeX0tJHtqdXN0aWZ5VmFsdWV9YCksIHdyYXAgPT09IGZhbHNlICYmIGNsYXNzZXMoR1JJRF9DTEFTUy5ub1dyYXApLCBjbGFzc05hbWUpO1xuICAgIHJldHVybiAoX2pzeChcImRpdlwiLCBPYmplY3QuYXNzaWduKHt9LCByZXN0LCB7IHN0eWxlOiBtZXJnZWRTdHlsZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVWYWx1ZSwgY2hpbGRyZW46IGNoaWxkcmVuIH0pKSk7XG59KTtcblJvdy5kaXNwbGF5TmFtZSA9ICdSb3cnO1xuZXhwb3J0IGRlZmF1bHQgUm93OyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
52
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvR3JpZC9Sb3cuanMiLCJjb21wb25lbnRzL3NyYy9jb21wb25lbnRzL0dyaWQvUm93LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX2NvbnN0YW50cyIsIl9oZWxwZXIiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJfX3Jlc3QiLCJzIiwicCIsInByb3RvdHlwZSIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJsZW5ndGgiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsIlJvdyIsImV4cG9ydHMiLCJtZW1vIiwicHJvcHMiLCJjaGlsZHJlbiIsImd1dHRlciIsImFsaWduIiwianVzdGlmeSIsIl9wcm9wcyR3cmFwIiwid3JhcCIsIkdSSURfREVGQVVMVF9XUkFQIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwiR1JJRF9ST1dfUFJFRklYIiwicmVzdCIsImNsYXNzZXMiLCJjbGFzc25hbWVzIiwiZ3V0dGVyVmFycyIsImJ1aWxkR3V0dGVyVmFycyIsIl9idWlsZEp1c3RpZnlWYXJzIiwiYnVpbGRKdXN0aWZ5VmFycyIsImp1c3RpZnlWYXJzIiwiY3NzVmFycyIsIl9idWlsZEFsaWduVmFycyIsImJ1aWxkQWxpZ25WYXJzIiwiYWxpZ25WYXJzIiwibWVyZ2VkU3R5bGUiLCJhc3NpZ24iLCJjbGFzc05hbWVWYWx1ZSIsImpvaW5DbHMiLCJHUklEX0NMQVNTIiwi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QUM7SUFBbkNxQixTQUFTLEdBQUFGLGVBQUEsQ0FBbEJELE9BQU87RUFFZjtFQUNBLElBQU1JLFdBQVcsR0FBQTVDLE1BQUEsQ0FBQTZDLE1BQUEsQ0FBQTdDLE1BQUEsQ0FBQTZDLE1BQUEsQ0FBQTdDLE1BQUEsQ0FBQTZDLE1BQUEsQ0FBQTdDLE1BQUEsQ0FBQTZDLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFBdUJWLFVBQVUsQ0FBQSxFQUFLSSxXQUFXLENBQUEsRUFBS0ksU0FBUyxDQUFBLEVBQUtmLEtBQUssQ0FBRTtFQUU1RixJQUFNa0IsY0FBYyxHQUFHLElBQUFDLG1CQUFPLEVBQUNkLE9BQU8sQ0FBQSxDQUFFLEVBQUVSLElBQUksS0FBSyxLQUFLLElBQUlRLE9BQU8sQ0FBQ2UscUJBQVUsQ0FBQ0MsTUFBTSxDQUFDLEVBQUV0QixTQUFTLENBQUM7RUFFbEcsT0FDRSxJQUFBdUIsZUFBQSxFQUFBLEtBQUEsRUFBQWxELE1BQUEsQ0FBQTZDLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDTWIsSUFBSSxFQUFBO0lBQ1JKLEtBQUssRUFBRWdCLFdBQVc7SUFDbEJqQixTQUFTLEVBQUVtQixjQUFjO0lBQUExQixRQUFBLEVBRXhCQTtFQUFRLENBQUEsQ0FBQSxDQUNMO0FBRVYsQ0FBQyxDQUFDO0FBRUZKLEdBQUcsQ0FBQ21DLFdBQVcsR0FBRyxLQUFLO0FBQUMsSUFBQUMsUUFBQSxHQUFBbkMsT0FBQSxjQUVURCxHQUFHIiwiZmlsZSI6ImNvbXBvbmVudHMvR3JpZC9Sb3cuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgbWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc25hbWVzLCB7IGpvaW5DbHMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IEdSSURfQ0xBU1MsIEdSSURfREVGQVVMVF9XUkFQLCBHUklEX1JPV19QUkVGSVggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBidWlsZEFsaWduVmFycywgYnVpbGRHdXR0ZXJWYXJzLCBidWlsZEp1c3RpZnlWYXJzIH0gZnJvbSAnLi9oZWxwZXInO1xuZXhwb3J0IGNvbnN0IFJvdyA9IG1lbW8ocHJvcHMgPT4ge1xuICAgIGNvbnN0IHsgY2hpbGRyZW4sIGd1dHRlciwgYWxpZ24sIGp1c3RpZnksIHdyYXAgPSBHUklEX0RFRkFVTFRfV1JBUCwgY2xhc3NOYW1lLCBzdHlsZSwgcHJlZml4Q2xzID0gR1JJRF9ST1dfUFJFRklYIH0gPSBwcm9wcywgcmVzdCA9IF9fcmVzdChwcm9wcywgW1wiY2hpbGRyZW5cIiwgXCJndXR0ZXJcIiwgXCJhbGlnblwiLCBcImp1c3RpZnlcIiwgXCJ3cmFwXCIsIFwiY2xhc3NOYW1lXCIsIFwic3R5bGVcIiwgXCJwcmVmaXhDbHNcIl0pO1xuICAgIGNvbnN0IGNsYXNzZXMgPSBjbGFzc25hbWVzKHByZWZpeENscyk7XG4gICAgY29uc3QgZ3V0dGVyVmFycyA9IGJ1aWxkR3V0dGVyVmFycyhndXR0ZXIpO1xuICAgIGNvbnN0IHsgY3NzVmFyczoganVzdGlmeVZhcnMgfSA9IGJ1aWxkSnVzdGlmeVZhcnMoanVzdGlmeSk7XG4gICAgY29uc3QgeyBjc3NWYXJzOiBhbGlnblZhcnMgfSA9IGJ1aWxkQWxpZ25WYXJzKGFsaWduKTtcbiAgICAvLyBVc2VyLXN1cHBsaWVkIGBzdHlsZWAgd2lucyBvdmVyIHRoZSBjb21wdXRlZCBndXR0ZXIvanVzdGlmeS9hbGlnbiBDU1MgdmFycy5cbiAgICBjb25zdCBtZXJnZWRTdHlsZSA9IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGd1dHRlclZhcnMpLCBqdXN0aWZ5VmFycyksIGFsaWduVmFycyksIHN0eWxlKTtcbiAgICBjb25zdCBjbGFzc05hbWVWYWx1ZSA9IGpvaW5DbHMoY2xhc3NlcygpLCB3cmFwID09PSBmYWxzZSAmJiBjbGFzc2VzKEdSSURfQ0xBU1Mubm9XcmFwKSwgY2xhc3NOYW1lKTtcbiAgICByZXR1cm4gKF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyBzdHlsZTogbWVyZ2VkU3R5bGUsIGNsYXNzTmFtZTogY2xhc3NOYW1lVmFsdWUsIGNoaWxkcmVuOiBjaGlsZHJlbiB9KSkpO1xufSk7XG5Sb3cuZGlzcGxheU5hbWUgPSAnUm93JztcbmV4cG9ydCBkZWZhdWx0IFJvdzsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -1,4 +1,4 @@
1
- import type { GridBreakpoint, GridJustify } from './interface';
1
+ import type { GridAlign, GridBreakpoint, GridJustify } from './interface';
2
2
  export declare const GRID_ALIGN: {
3
3
  readonly top: "top";
4
4
  readonly middle: "middle";
@@ -22,27 +22,29 @@ export declare const GRID_DEFAULT_GUTTER: [number, number];
22
22
  export declare const GRID_FLEX_AUTO = "auto";
23
23
  export declare const GRID_BREAKPOINTS: GridBreakpoint[];
24
24
  export declare const GRID_JUSTIFY_CSS: Record<GridJustify, string>;
25
+ export declare const GRID_ALIGN_CSS: Record<GridAlign, string>;
25
26
  export declare const GRID_BREAKPOINT_MIN_WIDTH: Record<GridBreakpoint, number>;
26
27
  export declare const GRID_CSS_VARS: {
27
28
  readonly gutterX: "--om-grid-gutter-x";
28
29
  readonly gutterY: "--om-grid-gutter-y";
29
30
  readonly justify: "--om-grid-justify";
31
+ readonly align: "--om-grid-align";
30
32
  readonly colFlex: "--om-grid-col-flex";
31
33
  };
32
34
  interface GridResponsiveCSSVars {
33
35
  gutterX: string;
34
36
  gutterY: string;
35
37
  justify: string;
38
+ align: string;
36
39
  colFlex: string;
37
40
  }
38
41
  export declare const GRID_RESPONSIVE_CSS_VARS: Record<GridBreakpoint, GridResponsiveCSSVars>;
39
42
  export declare const GRID_CLASS: {
40
43
  readonly noWrap: "no-wrap";
41
- readonly align: "align";
42
- readonly justify: "justify";
43
44
  readonly offset: "offset";
44
45
  readonly order: "order";
45
46
  readonly push: "push";
46
47
  readonly pull: "pull";
48
+ readonly flex: "flex";
47
49
  };
48
50
  export {};