@1money/component-ui 0.1.24-alpha.2 → 0.1.25-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/business/Select/Asset/AssetSelect.js +5 -2
- package/es/business/Select/Asset/interface.d.ts +6 -0
- package/es/components/Select/Select.js +4 -4
- package/es/components/Select/SelectCustom.js +4 -4
- package/es/components/Select/interface.d.ts +24 -2
- package/es/components/Select/style/Select.css +1 -0
- package/es/components/Select/useSelectShell.d.ts +2 -1
- package/es/components/Select/useSelectShell.js +45 -10
- package/es/index.css +1 -1
- package/lib/business/Select/Asset/AssetSelect.js +5 -2
- package/lib/business/Select/Asset/interface.d.ts +6 -0
- package/lib/components/Select/Select.js +4 -4
- package/lib/components/Select/SelectCustom.js +4 -4
- package/lib/components/Select/interface.d.ts +24 -2
- package/lib/components/Select/style/Select.css +1 -0
- package/lib/components/Select/useSelectShell.d.ts +2 -1
- package/lib/components/Select/useSelectShell.js +45 -10
- package/lib/index.css +1 -1
- package/package.json +1 -1
- package/scripts/mcp-server/examples.generated.json +24 -0
- package/scripts/mcp-server/index.generated.json +25 -1
|
@@ -10,7 +10,6 @@ import SelectFieldShell from './SelectFieldShell';
|
|
|
10
10
|
import { useSelectShell } from './useSelectShell';
|
|
11
11
|
import { getFontSize, normalizeSize } from './utils';
|
|
12
12
|
import './style';
|
|
13
|
-
var DEFAULT_MAX_HEIGHT = 320;
|
|
14
13
|
var isRenderableTemplate = function isRenderableTemplate(value) {
|
|
15
14
|
return value !== null && value !== undefined && value !== false;
|
|
16
15
|
};
|
|
@@ -57,8 +56,8 @@ export var SelectCustom = function SelectCustom(props) {
|
|
|
57
56
|
portal = _props$portal === void 0 ? true : _props$portal,
|
|
58
57
|
panelClassName = props.panelClassName,
|
|
59
58
|
panelFooter = props.panelFooter,
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
listMaxHeight = props.listMaxHeight,
|
|
60
|
+
listHeight = props.listHeight,
|
|
62
61
|
placement = props.placement,
|
|
63
62
|
panelWidth = props.panelWidth,
|
|
64
63
|
offset = props.offset,
|
|
@@ -95,6 +94,7 @@ export var SelectCustom = function SelectCustom(props) {
|
|
|
95
94
|
placement: placement,
|
|
96
95
|
panelWidth: panelWidth,
|
|
97
96
|
listMaxHeight: listMaxHeight,
|
|
97
|
+
listHeight: listHeight,
|
|
98
98
|
animation: animation,
|
|
99
99
|
role: roleProp,
|
|
100
100
|
offset: offset
|
|
@@ -237,4 +237,4 @@ export var SelectCustom = function SelectCustom(props) {
|
|
|
237
237
|
};
|
|
238
238
|
SelectCustom.displayName = 'SelectCustom';
|
|
239
239
|
export default /*#__PURE__*/memo(SelectCustom);
|
|
240
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS50c3giXSwibmFtZXMiOlsianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZsb2F0aW5nRm9jdXNNYW5hZ2VyIiwiRmxvYXRpbmdQb3J0YWwiLCJ1c2VJbnRlcmFjdGlvbnMiLCJtZW1vIiwidXNlSWQiLCJ1c2VSZWYiLCJ1c2VFdmVudENhbGxiYWNrIiwidXNlTG9jYWxlIiwiSWNvbnMiLCJTcGlubmVyIiwiam9pbkNscyIsImRlZmF1bHQiLCJyb290Q2xhc3NuYW1lcyIsIlNlbGVjdEZpZWxkU2hlbGwiLCJ1c2VTZWxlY3RTaGVsbCIsImdldEZvbnRTaXplIiwibm9ybWFsaXplU2l6ZSIsIkRFRkFVTFRfTUFYX0hFSUdIVCIsImlzUmVuZGVyYWJsZVRlbXBsYXRlIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJTZWxlY3RDdXN0b20iLCJwcm9wcyIsImxvY2FsZSIsIl9wcm9wcyRjbGFzc05hbWUiLCJjbGFzc05hbWUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwic3R5bGUiLCJpZCIsIm5hbWUiLCJhcmlhTGFiZWwiLCJhcmlhTGFiZWxsZWRCeSIsIl9wcm9wcyRzaXplIiwic2l6ZSIsIl9wcm9wcyRzdGF0dXMiLCJzdGF0dXMiLCJfcHJvcHMkdmFyaWFudCIsInZhcmlhbnQiLCJfcHJvcHMkZGlzYWJsZWQiLCJkaXNhYmxlZCIsImRpc2FibGVkUHJvcCIsIl9wcm9wcyRyZWFkT25seSIsInJlYWRPbmx5IiwiX3Byb3BzJGxvYWRpbmciLCJsb2FkaW5nIiwibGFiZWwiLCJsYWJlbENsYXNzTmFtZSIsImluZm8iLCJkZXNjcmlwdGlvbiIsImZlZWRiYWNrIiwiX3Byb3BzJHJlcXVpcmVkIiwicmVxdWlyZWQiLCJwcmVmaXgiLCJfcHJvcHMkcGxhY2Vob2xkZXIiLCJwbGFjZWhvbGRlciIsInNlbGVjdGVkVGVtcGxhdGUiLCJfcHJvcHMkYXJyb3ciLCJhcnJvdyIsIm9wZW4iLCJfcHJvcHMkZGVmYXVsdE9wZW4iLCJkZWZhdWx0T3BlbiIsIl9wcm9wcyRwb3J0YWwiLCJwb3J0YWwiLCJwYW5lbENsYXNzTmFtZSIsInBhbmVsRm9vdGVyIiwiX3Byb3BzJGxpc3RNYXhIZWlnaHQiLCJsaXN0TWF4SGVpZ2h0IiwicGxhY2VtZW50IiwicGFuZWxXaWR0aCIsIm9mZnNldCIsIl9wcm9wcyRyb2xlIiwicm9sZSIsInJvbGVQcm9wIiwiYW5pbWF0aW9uIiwib25PcGVuQ2hhbmdlIiwib25CbHVyIiwiY2hpbGRyZW4iLCJyZWYiLCJpbnRlcmFjdGl2ZSIsImNsYXNzZXMiLCJhdXRvSWQiLCJ0cmlnZ2VySWQiLCJsYWJlbElkIiwiZGVzY3JpcHRpb25JZCIsImZlZWRiYWNrSWQiLCJub3JtYWxpemVkU2l6ZSIsImZsb2F0aW5nUmVmIiwidHJpZ2dlclJlZiIsImhhbmRsZVRyaWdnZXJSZWYiLCJub2RlIiwiY3VycmVudCIsIl91c2VTZWxlY3RTaGVsbCIsImlzT3BlbiIsInNldE9wZW4iLCJyZWZzIiwiY29udGV4dCIsImZsb2F0aW5nU3R5bGVzIiwidHJhbnNpdGlvblN0eWxlcyIsImlzTW91bnRlZCIsImJhc2VJbnRlcmFjdGlvbnMiLCJzZXRSZWZlcmVuY2UiLCJzZXRGbG9hdGluZyIsIl91c2VJbnRlcmFjdGlvbnMiLCJnZXRSZWZlcmVuY2VQcm9wcyIsImdldEZsb2F0aW5nUHJvcHMiLCJub3RpZnlCbHVySWZPdXRzaWRlIiwicmVsYXRlZFRhcmdldCIsImV2ZW50IiwiX2EiLCJfYiIsIm5leHRUYXJnZXQiLCJ3aXRoaW5UcmlnZ2VyIiwiY29udGFpbnMiLCJ3aXRoaW5GbG9hdGluZyIsImhhbmRsZVRyaWdnZXJCbHVyIiwiY2xvc2UiLCJmb2N1cyIsInByZXZlbnRTY3JvbGwiLCJ0cmlnZ2VyQ29udGVudCIsImZvbnRTaXplIiwiaGFzU2VsZWN0aW9uIiwidmFsdWVMYWJlbENsYXNzIiwidHJpZ2dlckNsYXNzTmFtZSIsImNvbmNhdCIsImljb25TaXplIiwiZmxvYXRpbmdBcmlhTGFiZWxsZWRCeSIsImRlc2NyaWJlZEJ5SWRzIiwiZmlsdGVyIiwiQm9vbGVhbiIsImpvaW4iLCJwYW5lbEN0eCIsInBhbmVsQm9keSIsIk9iamVjdCIsImFzc2lnbiIsInR5cGUiLCJzdHJva2VXaWR0aCIsImNvbG9yIiwicGFuZWxOb2RlIiwibW9kYWwiLCJpbml0aWFsRm9jdXMiLCJyZXR1cm5Gb2N1cyIsImRpc3BsYXlOYW1lIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxHQUFHLElBQUlDLElBQUksRUFBRUMsSUFBSSxJQUFJQyxLQUFLLFFBQVEsbUJBQW1CO0FDQTlELFNBQVNDLG9CQUFvQixFQUFFQyxjQUFjLEVBQUVDLGVBQWUsUUFBUSxvQkFBb0I7QUFDMUYsU0FBU0MsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLE1BQU0sUUFBUSxPQUFPO0FBQzNDLE9BQU9DLGdCQUFnQixNQUFNLGdDQUFnQztBQUM3RCxTQUFTQyxTQUFTLFFBQVEsbUJBQW1CO0FBQzdDLFNBQVNDLEtBQUssUUFBUSxVQUFVO0FBQ2hDLFNBQVNDLE9BQU8sUUFBUSxZQUFZO0FBQ3BDLFNBQVNDLE9BQU8sRUFBRUMsT0FBTyxJQUFJQyxjQUFjLFFBQVEsd0JBQXdCO0FBRzNFLE9BQU9DLGdCQUFnQixNQUFNLG9CQUFvQjtBQUNqRCxTQUFTQyxjQUFjLFFBQVEsa0JBQWtCO0FBQ2pELFNBQVNDLFdBQVcsRUFBRUMsYUFBYSxRQUFRLFNBQVM7QUFDcEQsT0FBTyxTQUFTO0FBRWhCLElBQU1DLGtCQUFrQixHQUFHLEdBQUc7QUFFOUIsSUFBTUMsb0JBQW9CLEdBQUcsU0FBdkJBLG9CQUFvQkEsQ0FBSUMsS0FBYztFQUFBLE9BQzFDQSxLQUFLLEtBQUssSUFBSSxJQUFJQSxLQUFLLEtBQUtDLFNBQVMsSUFBSUQsS0FBSyxLQUFLLEtBQUs7QUFBQTtBQUUxRCxPQUFPLElBQU1FLFlBQVksR0FBMEIsU0FBdENBLFlBQVlBLENBQTJCQyxLQUFLLEVBQUk7RUFD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Q2hCN0UsU0FBUyxFQUFFZixPQUFPLENBQUNzRSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUVoQixjQUFjLENBQUM7VUFDcERwQyxLQUFLLEVBQUF5RyxNQUFBLENBQUFDLE1BQUEsQ0FBQUQsTUFBQSxDQUFBQyxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQU9yQyxjQUFjLENBQUEsRUFBS0MsZ0JBQWdCO1FEdEkzQyxDQ3VJTCxDQUFDLEVBQUE7VUFBQXJCLFFBQUEsRUFBQSxDQUVGaEYsSUFBQSxDQUFBLEtBQUEsRUFBQTtZQUFLNEIsU0FBUyxFQUFFdUQsT0FBTyxDQUFDLFlBQVksQ0FBQztZQUFBSCxRQUFBLEVBQUd1RDtVQUFTLENBQUEsQ0FBTyxFQUN2RG5FLFdBQVcsSUFBSSxJQUFJLElBQ2xCcEUsSUFBQSxDQUFBLEtBQUEsRUFBQTtZQUFLNEIsU0FBUyxFQUFFdUQsT0FBTyxDQUFDLGNBQWMsQ0FBQztZQUFBSCxRQUFBLEVBQUdaO1VBQVcsQ0FBQSxDQUN0RDtRQUFBLENBQUEsQ0FBQTtNQUNHLENBQUEsQ0FFVDtNQUVELE9BQU9GLE1BQU0sR0FBR2xFLElBQUEsQ0FBQ0ksY0FBYyxFQUFBO1FBQUE0RSxRQUFBLEVBQUU2RDtNQUFTLENBQUEsQ0FBa0IsR0FBR0EsU0FBUztJQUMxRSxDQUFDLENBQUMsQ0FBRTtFQUFBLENBQUEsQ0FDYTtBQUV2QixDQUFDO0FBRURySCxZQUFZLENBQUN5SCxXQUFXLEdBQUcsY0FBYztBQUV6Qyw0QkFBZTNJLElBQUksQ0FBQ2tCLFlBQVksQ0FBQyIsImZpbGUiOiJjb21wb25lbnRzL1NlbGVjdC9TZWxlY3RDdXN0b20uanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgRmxvYXRpbmdGb2N1c01hbmFnZXIsIEZsb2F0aW5nUG9ydGFsLCB1c2VJbnRlcmFjdGlvbnMgfSBmcm9tICdAZmxvYXRpbmctdWkvcmVhY3QnO1xuaW1wb3J0IHsgbWVtbywgdXNlSWQsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB1c2VFdmVudENhbGxiYWNrIGZyb20gJ0AxbW9uZXkvaG9va3MvdXNlRXZlbnRDYWxsYmFjayc7XG5pbXBvcnQgeyB1c2VMb2NhbGUgfSBmcm9tICcuLi9Db25maWdQcm92aWRlcic7XG5pbXBvcnQgeyBJY29ucyB9IGZyb20gJy4uL0ljb25zJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuLi9TcGlubmVyJztcbmltcG9ydCB7IGpvaW5DbHMsIGRlZmF1bHQgYXMgcm9vdENsYXNzbmFtZXMgfSBmcm9tICcuLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCBTZWxlY3RGaWVsZFNoZWxsIGZyb20gJy4vU2VsZWN0RmllbGRTaGVsbCc7XG5pbXBvcnQgeyB1c2VTZWxlY3RTaGVsbCB9IGZyb20gJy4vdXNlU2VsZWN0U2hlbGwnO1xuaW1wb3J0IHsgZ2V0Rm9udFNpemUsIG5vcm1hbGl6ZVNpemUgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCAnLi9zdHlsZSc7XG5jb25zdCBERUZBVUxUX01BWF9IRUlHSFQgPSAzMjA7XG5jb25zdCBpc1JlbmRlcmFibGVUZW1wbGF0ZSA9ICh2YWx1ZSkgPT4gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gZmFsc2U7XG5leHBvcnQgY29uc3QgU2VsZWN0Q3VzdG9tID0gKHByb3BzKSA9PiB7XG4gICAgY29uc3QgbG9jYWxlID0gdXNlTG9jYWxlKCdTZWxlY3QnKTtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSA9ICcnLCBwcmVmaXhDbHMgPSAnc2VsZWN0Jywgc3R5bGUsIGlkLCBuYW1lLCAnYXJpYS1sYWJlbCc6IGFyaWFMYWJlbCwgJ2FyaWEtbGFiZWxsZWRieSc6IGFyaWFMYWJlbGxlZEJ5LCBzaXplID0gJ2xhcmdlJywgc3RhdHVzID0gJ2RlZmF1bHQnLCB2YXJpYW50ID0gJ2ZpbGwnLCBkaXNhYmxlZDogZGlzYWJsZWRQcm9wID0gZmFsc2UsIHJlYWRPbmx5ID0gZmFsc2UsIGxvYWRpbmcgPSBmYWxzZSwgbGFiZWwsIGxhYmVsQ2xhc3NOYW1lLCBpbmZvLCBkZXNjcmlwdGlvbiwgZmVlZGJhY2ssIHJlcXVpcmVkID0gdHJ1ZSwgcHJlZml4LCBwbGFjZWhvbGRlciA9IGxvY2FsZS5wbGFjZWhvbGRlciwgc2VsZWN0ZWRUZW1wbGF0ZSwgYXJyb3cgPSB0cnVlLCBvcGVuLCBkZWZhdWx0T3BlbiA9IGZhbHNlLCBwb3J0YWwgPSB0cnVlLCBwYW5lbENsYXNzTmFtZSwgcGFuZWxGb290ZXIsIGxpc3RNYXhIZWlnaHQgPSBERUZBVUxUX01BWF9IRUlHSFQsIHBsYWNlbWVudCwgcGFuZWxXaWR0aCwgb2Zmc2V0LCByb2xlOiByb2xlUHJvcCA9ICdkaWFsb2cnLCBhbmltYXRpb24sIG9uT3BlbkNoYW5nZSwgb25CbHVyLCBjaGlsZHJlbiwgcmVmLCB9ID0gcHJvcHM7XG4gICAgY29uc3QgZGlzYWJsZWQgPSBkaXNhYmxlZFByb3AgfHwgbG9hZGluZztcbiAgICBjb25zdCBpbnRlcmFjdGl2ZSA9ICFkaXNhYmxlZCAmJiAhcmVhZE9ubHk7XG4gICAgY29uc3QgY2xhc3NlcyA9IHJvb3RDbGFzc25hbWVzKHByZWZpeENscyk7XG4gICAgY29uc3QgYXV0b0lkID0gdXNlSWQoKTtcbiAgICBjb25zdCB0cmlnZ2VySWQgPSBpZCAhPT0gbnVsbCAmJiBpZCAhPT0gdm9pZCAwID8gaWQgOiBhdXRvSWQ7XG4gICAgY29uc3QgbGFiZWxJZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZGVzY3JpcHRpb25JZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZmVlZGJhY2tJZCA9IHVzZUlkKCk7XG4gICAgY29uc3Qgbm9ybWFsaXplZFNpemUgPSBub3JtYWxpemVTaXplKHNpemUpO1xuICAgIGNvbnN0IGZsb2F0aW5nUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHRyaWdnZXJSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgaGFuZGxlVHJpZ2dlclJlZiA9IHVzZUV2ZW50Q2FsbGJhY2soKG5vZGUpID0+IHtcbiAgICAgICAgdHJpZ2dlclJlZi5jdXJyZW50ID0gbm9kZTtcbiAgICAgICAgaWYgKHJlZikge1xuICAgICAgICAgICAgcmVmLmN1cnJlbnQgPSBub2RlO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgY29uc3QgeyBpc09wZW4sIHNldE9wZW4sIHJlZnMsIGNvbnRleHQsIGZsb2F0aW5nU3R5bGVzLCB0cmFuc2l0aW9uU3R5bGVzLCBpc01vdW50ZWQsIGJhc2VJbnRlcmFjdGlvbnMsIH0gPSB1c2VTZWxlY3RTaGVsbCh7XG4gICAgICAgIG9wZW4sXG4gICAgICAgIGRlZmF1bHRPcGVuLFxuICAgICAgICBvbk9wZW5DaGFuZ2UsXG4gICAgICAgIGRpc2FibGVkLFxuICAgICAgICByZWFkT25seSxcbiAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICBwYW5lbFdpZHRoLFxuICAgICAgICBsaXN0TWF4SGVpZ2h0LFxuICAgICAgICBhbmltYXRpb24sXG4gICAgICAgIHJvbGU6IHJvbGVQcm9wLFxuICAgICAgICBvZmZzZXQsXG4gICAgfSk7XG4gICAgY29uc3Qgc2V0UmVmZXJlbmNlID0gdXNlRXZlbnRDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICByZWZzLnNldFJlZmVyZW5jZShub2RlKTtcbiAgICAgICAgaGFuZGxlVHJpZ2dlclJlZihub2RlKTtcbiAgICB9KTtcbiAgICBjb25zdCBzZXRGbG9hdGluZyA9IHVzZUV2ZW50Q2FsbGJhY2soKG5vZGUpID0+IHtcbiAgICAgICAgcmVmcy5zZXRGbG9hdGluZyhub2RlKTtcbiAgICAgICAgZmxvYXRpbmdSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgfSk7XG4gICAgY29uc3QgeyBnZXRSZWZlcmVuY2VQcm9wcywgZ2V0RmxvYXRpbmdQcm9wcyB9ID0gdXNlSW50ZXJhY3Rpb25zKGJhc2VJbnRlcmFjdGlvbnMpO1xuICAgIGNvbnN0IG5vdGlmeUJsdXJJZk91dHNpZGUgPSB1c2VFdmVudENhbGxiYWNrKChyZWxhdGVkVGFyZ2V0LCBldmVudCkgPT4ge1xuICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICBjb25zdCBuZXh0VGFyZ2V0ID0gcmVsYXRlZFRhcmdldDtcbiAgICAgICAgY29uc3Qgd2l0aGluVHJpZ2dlciA9ICEhKG5leHRUYXJnZXQgJiYgKChfYSA9IHRyaWdnZXJSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNvbnRhaW5zKG5leHRUYXJnZXQpKSk7XG4gICAgICAgIGNvbnN0IHdpdGhpbkZsb2F0aW5nID0gISEobmV4dFRhcmdldCAmJiAoKF9iID0gZmxvYXRpbmdSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmNvbnRhaW5zKG5leHRUYXJnZXQpKSk7XG4gICAgICAgIGlmICghd2l0aGluVHJpZ2dlciAmJiAhd2l0aGluRmxvYXRpbmcpIHtcbiAgICAgICAgICAgIG9uQmx1ciA9PT0gbnVsbCB8fCBvbkJsdXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQmx1cihldmVudCk7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVUcmlnZ2VyQmx1ciA9IHVzZUV2ZW50Q2FsbGJhY2soKGV2ZW50KSA9PiB7XG4gICAgICAgIG5vdGlmeUJsdXJJZk91dHNpZGUoZXZlbnQucmVsYXRlZFRhcmdldCwgZXZlbnQpO1xuICAgIH0pO1xuICAgIGNvbnN0IGNsb3NlID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgc2V0T3BlbihmYWxzZSk7XG4gICAgICAgIChfYSA9IHRyaWdnZXJSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICB9KTtcbiAgICBjb25zdCB0cmlnZ2VyQ29udGVudCA9IHR5cGVvZiBzZWxlY3RlZFRlbXBsYXRlID09PSAnZnVuY3Rpb24nXG4gICAgICAgID8gc2VsZWN0ZWRUZW1wbGF0ZSh7XG4gICAgICAgICAgICBvcGVuOiBpc09wZW4sXG4gICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgIHJlYWRPbmx5LFxuICAgICAgICAgICAgc2l6ZTogbm9ybWFsaXplZFNpemUsXG4gICAgICAgICAgICBmb250U2l6ZTogZ2V0Rm9udFNpemUobm9ybWFsaXplZFNpemUpLFxuICAgICAgICB9KVxuICAgICAgICA6IHNlbGVjdGVkVGVtcGxhdGU7XG4gICAgY29uc3QgaGFzU2VsZWN0aW9uID0gaXNSZW5kZXJhYmxlVGVtcGxhdGUodHJpZ2dlckNvbnRlbnQpO1xuICAgIGNvbnN0IHZhbHVlTGFiZWxDbGFzcyA9IGhhc1NlbGVjdGlvbiA/ICd2YWx1ZScgOiAncGxhY2Vob2xkZXInO1xuICAgIGNvbnN0IHRyaWdnZXJDbGFzc05hbWUgPSBjbGFzc2VzKCd0cmlnZ2VyJywgam9pbkNscyhjbGFzc2VzKGB0cmlnZ2VyLSR7bm9ybWFsaXplZFNpemV9YCksIGNsYXNzZXMoYHRyaWdnZXItJHt2YXJpYW50fWApLCBpc09wZW4gJiYgY2xhc3NlcygndHJpZ2dlci1vcGVuJyksIGhhc1NlbGVjdGlvbiA/IGNsYXNzZXMoJ3RyaWdnZXItZmlsbGVkJykgOiBjbGFzc2VzKCd0cmlnZ2VyLXBsYWNlaG9sZGVyJyksIHN0YXR1cyAhPT0gJ2RlZmF1bHQnICYmIGNsYXNzZXMoYHRyaWdnZXItJHtzdGF0dXN9YCksIGRpc2FibGVkICYmIGNsYXNzZXMoJ3RyaWdnZXItZGlzYWJsZWQnKSwgcmVhZE9ubHkgJiYgIWRpc2FibGVkICYmIGNsYXNzZXMoJ3RyaWdnZXItcmVhZG9ubHknKSkpO1xuICAgIGNvbnN0IGljb25TaXplID0gbm9ybWFsaXplZFNpemUgPT09ICdsYXJnZScgPyAyMCA6IDE2O1xuICAgIGNvbnN0IGZsb2F0aW5nQXJpYUxhYmVsbGVkQnkgPSBhcmlhTGFiZWxsZWRCeSAhPT0gbnVsbCAmJiBhcmlhTGFiZWxsZWRCeSAhPT0gdm9pZCAwID8gYXJpYUxhYmVsbGVkQnkgOiAobGFiZWwgPyBsYWJlbElkIDogdW5kZWZpbmVkKTtcbiAgICBjb25zdCBkZXNjcmliZWRCeUlkcyA9IFtkZXNjcmlwdGlvbiA/IGRlc2NyaXB0aW9uSWQgOiBudWxsLCBmZWVkYmFjayA/IGZlZWRiYWNrSWQgOiBudWxsXVxuICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgIC5qb2luKCcgJykgfHwgdW5kZWZpbmVkO1xuICAgIGNvbnN0IHBhbmVsQ3R4ID0ge1xuICAgICAgICBjbG9zZSxcbiAgICAgICAgb3BlbjogaXNPcGVuLFxuICAgICAgICBzaXplOiBub3JtYWxpemVkU2l6ZSxcbiAgICAgICAgZm9udFNpemU6IGdldEZvbnRTaXplKG5vcm1hbGl6ZWRTaXplKSxcbiAgICB9O1xuICAgIGNvbnN0IHBhbmVsQm9keSA9IHR5cGVvZiBjaGlsZHJlbiA9PT0gJ2Z1bmN0aW9uJyA/IGNoaWxkcmVuKHBhbmVsQ3R4KSA6IGNoaWxkcmVuO1xuICAgIHJldHVybiAoX2pzeHMoU2VsZWN0RmllbGRTaGVsbCwgeyBjbGFzc2VzOiBjbGFzc2VzLCBjbGFzc05hbWU6IGNsYXNzTmFtZSwgc2l6ZTogbm9ybWFsaXplZFNpemUsIHZhcmlhbnQ6IHZhcmlhbnQsIHN0YXR1czogc3RhdHVzLCBkaXNhYmxlZDogZGlzYWJsZWQsIHJlYWRPbmx5OiByZWFkT25seSwgbG9hZGluZzogbG9hZGluZywgbGFiZWw6IGxhYmVsLCBsYWJlbENsYXNzTmFtZTogbGFiZWxDbGFzc05hbWUsIGluZm86IGluZm8sIGRlc2NyaXB0aW9uOiBkZXNjcmlwdGlvbiwgZmVlZGJhY2s6IGZlZWRiYWNrLCByZXF1aXJlZDogcmVxdWlyZWQsIGxhYmVsSWQ6IGxhYmVsSWQsIGRlc2NyaXB0aW9uSWQ6IGRlc2NyaXB0aW9uSWQsIGZlZWRiYWNrSWQ6IGZlZWRiYWNrSWQsIGNoaWxkcmVuOiBbX2pzeHMoXCJidXR0b25cIiwgT2JqZWN0LmFzc2lnbih7fSwgZ2V0UmVmZXJlbmNlUHJvcHMoe1xuICAgICAgICAgICAgICAgIHJlZjogc2V0UmVmZXJlbmNlLFxuICAgICAgICAgICAgICAgIGlkOiB0cmlnZ2VySWQsXG4gICAgICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAnYXJpYS1yZWFkb25seSc6IHJlYWRPbmx5IHx8IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBzdHlsZSxcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IHRyaWdnZXJDbGFzc05hbWUsXG4gICAgICAgICAgICAgICAgb25CbHVyOiBoYW5kbGVUcmlnZ2VyQmx1cixcbiAgICAgICAgICAgICAgICAnYXJpYS1sYWJlbCc6IGFyaWFMYWJlbCxcbiAgICAgICAgICAgICAgICAnYXJpYS1sYWJlbGxlZGJ5JzogZmxvYXRpbmdBcmlhTGFiZWxsZWRCeSxcbiAgICAgICAgICAgICAgICAnYXJpYS1kZXNjcmliZWRieSc6IGRlc2NyaWJlZEJ5SWRzLFxuICAgICAgICAgICAgfSksIHsgY2hpbGRyZW46IFtfanN4cyhcInNwYW5cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2NvbnRlbnQnKSwgY2hpbGRyZW46IFtwcmVmaXggJiYgX2pzeChcInNwYW5cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3ByZWZpeCcpLCBjaGlsZHJlbjogcHJlZml4IH0pLCBfanN4KFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3Nlcyh2YWx1ZUxhYmVsQ2xhc3MsIGpvaW5DbHMoY2xhc3NlcyhgJHt2YWx1ZUxhYmVsQ2xhc3N9LSR7bm9ybWFsaXplZFNpemV9YCksIGRpc2FibGVkICYmIGNsYXNzZXMoYCR7dmFsdWVMYWJlbENsYXNzfS1kaXNhYmxlZGApKSksIGNoaWxkcmVuOiBoYXNTZWxlY3Rpb24gPyB0cmlnZ2VyQ29udGVudCA6IHBsYWNlaG9sZGVyIH0pXSB9KSwgYXJyb3cgJiYgKF9qc3goXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdpY29uJyksIGNoaWxkcmVuOiBsb2FkaW5nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBfanN4KFNwaW5uZXIsIHsgc2l6ZTogaWNvblNpemUsIHN0cm9rZVdpZHRoOiAyIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiByZWFkT25seVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBfanN4KEljb25zLCB7IG5hbWU6IGlzT3BlbiA/ICdjaGV2cm9uVXAnIDogJ2NoZXZyb25Eb3duJywgc2l6ZTogaWNvblNpemUsIGNvbG9yOiBcImN1cnJlbnRDb2xvclwiIH0pIH0pKV0gfSkpLCBpc01vdW50ZWQgJiYgaW50ZXJhY3RpdmUgJiYgKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBwYW5lbE5vZGUgPSAoX2pzeChGbG9hdGluZ0ZvY3VzTWFuYWdlciwgeyBjb250ZXh0OiBjb250ZXh0LCBtb2RhbDogZmFsc2UsIGluaXRpYWxGb2N1czogLTEsIHJldHVybkZvY3VzOiBmYWxzZSwgY2hpbGRyZW46IF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIGdldEZsb2F0aW5nUHJvcHMoe1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVmOiBzZXRGbG9hdGluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZTogam9pbkNscyhjbGFzc2VzKCdwYW5lbCcpLCBwYW5lbENsYXNzTmFtZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBmbG9hdGluZ1N0eWxlcyksIHRyYW5zaXRpb25TdHlsZXMpLFxuICAgICAgICAgICAgICAgICAgICB9KSwgeyBjaGlsZHJlbjogW19qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ3BhbmVsLWJvZHknKSwgY2hpbGRyZW46IHBhbmVsQm9keSB9KSwgcGFuZWxGb290ZXIgIT0gbnVsbCAmJiAoX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncGFuZWwtZm9vdGVyJyksIGNoaWxkcmVuOiBwYW5lbEZvb3RlciB9KSldIH0pKSB9KSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbCA/IF9qc3goRmxvYXRpbmdQb3J0YWwsIHsgY2hpbGRyZW46IHBhbmVsTm9kZSB9KSA6IHBhbmVsTm9kZTtcbiAgICAgICAgICAgIH0pKCldIH0pKTtcbn07XG5TZWxlY3RDdXN0b20uZGlzcGxheU5hbWUgPSAnU2VsZWN0Q3VzdG9tJztcbmV4cG9ydCBkZWZhdWx0IG1lbW8oU2VsZWN0Q3VzdG9tKTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
240
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS50c3giXSwibmFtZXMiOlsianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZsb2F0aW5nRm9jdXNNYW5hZ2VyIiwiRmxvYXRpbmdQb3J0YWwiLCJ1c2VJbnRlcmFjdGlvbnMiLCJtZW1vIiwidXNlSWQiLCJ1c2VSZWYiLCJ1c2VFdmVudENhbGxiYWNrIiwidXNlTG9jYWxlIiwiSWNvbnMiLCJTcGlubmVyIiwiam9pbkNscyIsImRlZmF1bHQiLCJyb290Q2xhc3NuYW1lcyIsIlNlbGVjdEZpZWxkU2hlbGwiLCJ1c2VTZWxlY3RTaGVsbCIsImdldEZvbnRTaXplIiwibm9ybWFsaXplU2l6ZSIsImlzUmVuZGVyYWJsZVRlbXBsYXRlIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJTZWxlY3RDdXN0b20iLCJwcm9wcyIsImxvY2FsZSIsIl9wcm9wcyRjbGFzc05hbWUiLCJjbGFzc05hbWUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwic3R5bGUiLCJpZCIsIm5hbWUiLCJhcmlhTGFiZWwiLCJhcmlhTGFiZWxsZWRCeSIsIl9wcm9wcyRzaXplIiwic2l6ZSIsIl9wcm9wcyRzdGF0dXMiLCJzdGF0dXMiLCJfcHJvcHMkdmFyaWFudCIsInZhcmlhbnQiLCJfcHJvcHMkZGlzYWJsZWQiLCJkaXNhYmxlZCIsImRpc2FibGVkUHJvcCIsIl9wcm9wcyRyZWFkT25seSIsInJlYWRPbmx5IiwiX3Byb3BzJGxvYWRpbmciLCJsb2FkaW5nIiwibGFiZWwiLCJsYWJlbENsYXNzTmFtZSIsImluZm8iLCJkZXNjcmlwdGlvbiIsImZlZWRiYWNrIiwiX3Byb3BzJHJlcXVpcmVkIiwicmVxdWlyZWQiLCJwcmVmaXgiLCJfcHJvcHMkcGxhY2Vob2xkZXIiLCJwbGFjZWhvbGRlciIsInNlbGVjdGVkVGVtcGxhdGUiLCJfcHJvcHMkYXJyb3ciLCJhcnJvdyIsIm9wZW4iLCJfcHJvcHMkZGVmYXVsdE9wZW4iLCJkZWZhdWx0T3BlbiIsIl9wcm9wcyRwb3J0YWwiLCJwb3J0YWwiLCJwYW5lbENsYXNzTmFtZSIsInBhbmVsRm9vdGVyIiwibGlzdE1heEhlaWdodCIsImxpc3RIZWlnaHQiLCJwbGFjZW1lbnQiLCJwYW5lbFdpZHRoIiwib2Zmc2V0IiwiX3Byb3BzJHJvbGUiLCJyb2xlIiwicm9sZVByb3AiLCJhbmltYXRpb24iLCJvbk9wZW5DaGFuZ2UiLCJvbkJsdXIiLCJjaGlsZHJlbiIsInJlZiIsImludGVyYWN0aXZlIiwiY2xhc3NlcyIsImF1dG9JZCIsInRyaWdnZXJJZCIsImxhYmVsSWQiLCJkZXNjcmlwdGlvbklkIiwiZmVlZGJhY2tJZCIsIm5vcm1hbGl6ZWRTaXplIiwiZmxvYXRpbmdSZWYiLCJ0cmlnZ2VyUmVmIiwiaGFuZGxlVHJpZ2dlclJlZiIsIm5vZGUiLCJjdXJyZW50IiwiX3VzZVNlbGVjdFNoZWxsIiwiaXNPcGVuIiwic2V0T3BlbiIsInJlZnMiLCJjb250ZXh0IiwiZmxvYXRpbmdTdHlsZXMiLCJ0cmFuc2l0aW9uU3R5bGVzIiwiaXNNb3VudGVkIiwiYmFzZUludGVyYWN0aW9ucyIsInNldFJlZmVyZW5jZSIsInNldEZsb2F0aW5nIiwiX3VzZUludGVyYWN0aW9ucyIsImdldFJlZmVyZW5jZVByb3BzIiwiZ2V0RmxvYXRpbmdQcm9wcyIsIm5vdGlmeUJsdXJJZk91dHNpZGUiLCJyZWxhdGVkVGFyZ2V0IiwiZXZlbnQiLCJfYSIsIl9iIiwibmV4dFRhcmdldCIsIndpdGhpblRyaWdnZXIiLCJjb250YWlucyIsIndpdGhpbkZsb2F0aW5nIiwiaGFuZGxlVHJpZ2dlckJsdXIiLCJjbG9zZSIsImZvY3VzIiwicHJldmVudFNjcm9sbCIsInRyaWdnZXJDb250ZW50IiwiZm9udFNpemUiLCJoYXNTZWxlY3Rpb24iLCJ2YWx1ZUxhYmVsQ2xhc3MiLCJ0cmlnZ2VyQ2xhc3NOYW1lIiwiY29uY2F0IiwiaWNvblNpemUiLCJmbG9hdGluZ0FyaWFMYWJlbGxlZEJ5IiwiZGVzY3JpYmVkQnlJZHMiLCJmaWx0ZXIiLCJCb29sZWFuIiwiam9pbiIsInBhbmVsQ3R4IiwicGFuZWxCb2R5IiwiT2JqZWN0IiwiYXNzaWduIiwidHlwZSIsInN0cm9rZVdpZHRoIiwiY29sb3IiLCJwYW5lbE5vZGUiLCJtb2RhbCIsImluaXRpYWxGb2N1cyIsInJldHVybkZvY3VzIiwiZGlzcGxheU5hbWUiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLEdBQUcsSUFBSUMsSUFBSSxFQUFFQyxJQUFJLElBQUlDLEtBQUssUUFBUSxtQkFBbUI7QUNBOUQsU0FBU0Msb0JBQW9CLEVBQUVDLGNBQWMsRUFBRUMsZUFBZSxRQUFRLG9CQUFvQjtBQUMxRixTQUFTQyxJQUFJLEVBQUVDLEtBQUssRUFBRUMsTUFBTSxRQUFRLE9BQU87QUFDM0MsT0FBT0MsZ0JBQWdCLE1BQU0sZ0NBQWdDO0FBQzdELFNBQVNDLFNBQVMsUUFBUSxtQkFBbUI7QUFDN0MsU0FBU0MsS0FBSyxRQUFRLFVBQVU7QUFDaEMsU0FBU0MsT0FBTyxRQUFRLFlBQVk7QUFDcEMsU0FBU0MsT0FBTyxFQUFFQyxPQUFPLElBQUlDLGNBQWMsUUFBUSx3QkFBd0I7QUFHM0UsT0FBT0MsZ0JBQWdCLE1BQU0sb0JBQW9CO0FBQ2pELFNBQVNDLGNBQWMsUUFBUSxrQkFBa0I7QUFDakQsU0FBU0MsV0FBVyxFQUFFQyxhQUFhLFFBQVEsU0FBUztBQUNwRCxPQUFPLFNBQVM7QUFFaEIsSUFBTUMsb0JBQW9CLEdBQUcsU0FBdkJBLG9CQUFvQkEsQ0FBSUMsS0FBYztFQUFBLE9BQzFDQSxLQUFLLEtBQUssSUFBSSxJQUFJQSxLQUFLLEtBQUtDLFNBQVMsSUFBSUQsS0FBSyxLQUFLLEtBQUs7QUFBQTtBQUUxRCxPQUFPLElBQU1FLFlBQVksR0FBMEIsU0FBdENBLFlBQVlBLENBQTJCQyxLQUFLLEVBQUk7RUFDM0QsSUFBTUMsTUFBTSxHQUFHZixTQUFTLENBQUMsUUFBUSxDQUFDO0VBQ2xDLElBQUFnQixnQkFBQSxH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RWhCLGNBQWMsQ0FBQztVQUNwRHBDLEtBQUssRUFBQXlHLE1BQUEsQ0FBQUMsTUFBQSxDQUFBRCxNQUFBLENBQUFDLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFBT3JDLGNBQWMsQ0FBQSxFQUFLQyxnQkFBZ0I7UUR0STNDLENDdUlMLENBQUMsRUFBQTtVQUFBckIsUUFBQSxFQUFBLENBRUYvRSxJQUFBLENBQUEsS0FBQSxFQUFBO1lBQUsyQixTQUFTLEVBQUV1RCxPQUFPLENBQUMsWUFBWSxDQUFDO1lBQUFILFFBQUEsRUFBR3VEO1VBQVMsQ0FBQSxDQUFPLEVBQ3ZEbkUsV0FBVyxJQUFJLElBQUksSUFDbEJuRSxJQUFBLENBQUEsS0FBQSxFQUFBO1lBQUsyQixTQUFTLEVBQUV1RCxPQUFPLENBQUMsY0FBYyxDQUFDO1lBQUFILFFBQUEsRUFBR1o7VUFBVyxDQUFBLENBQ3REO1FBQUEsQ0FBQSxDQUFBO01BQ0csQ0FBQSxDQUVUO01BRUQsT0FBT0YsTUFBTSxHQUFHakUsSUFBQSxDQUFDSSxjQUFjLEVBQUE7UUFBQTJFLFFBQUEsRUFBRTZEO01BQVMsQ0FBQSxDQUFrQixHQUFHQSxTQUFTO0lBQzFFLENBQUMsQ0FBQyxDQUFFO0VBQUEsQ0FBQSxDQUNhO0FBRXZCLENBQUM7QUFFRHJILFlBQVksQ0FBQ3lILFdBQVcsR0FBRyxjQUFjO0FBRXpDLDRCQUFlMUksSUFBSSxDQUFDaUIsWUFBWSxDQUFDIiwiZmlsZSI6ImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdEN1c3RvbS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBGbG9hdGluZ0ZvY3VzTWFuYWdlciwgRmxvYXRpbmdQb3J0YWwsIHVzZUludGVyYWN0aW9ucyB9IGZyb20gJ0BmbG9hdGluZy11aS9yZWFjdCc7XG5pbXBvcnQgeyBtZW1vLCB1c2VJZCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHVzZUV2ZW50Q2FsbGJhY2sgZnJvbSAnQDFtb25leS9ob29rcy91c2VFdmVudENhbGxiYWNrJztcbmltcG9ydCB7IHVzZUxvY2FsZSB9IGZyb20gJy4uL0NvbmZpZ1Byb3ZpZGVyJztcbmltcG9ydCB7IEljb25zIH0gZnJvbSAnLi4vSWNvbnMnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJy4uL1NwaW5uZXInO1xuaW1wb3J0IHsgam9pbkNscywgZGVmYXVsdCBhcyByb290Q2xhc3NuYW1lcyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IFNlbGVjdEZpZWxkU2hlbGwgZnJvbSAnLi9TZWxlY3RGaWVsZFNoZWxsJztcbmltcG9ydCB7IHVzZVNlbGVjdFNoZWxsIH0gZnJvbSAnLi91c2VTZWxlY3RTaGVsbCc7XG5pbXBvcnQgeyBnZXRGb250U2l6ZSwgbm9ybWFsaXplU2l6ZSB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0ICcuL3N0eWxlJztcbmNvbnN0IGlzUmVuZGVyYWJsZVRlbXBsYXRlID0gKHZhbHVlKSA9PiB2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBmYWxzZTtcbmV4cG9ydCBjb25zdCBTZWxlY3RDdXN0b20gPSAocHJvcHMpID0+IHtcbiAgICBjb25zdCBsb2NhbGUgPSB1c2VMb2NhbGUoJ1NlbGVjdCcpO1xuICAgIGNvbnN0IHsgY2xhc3NOYW1lID0gJycsIHByZWZpeENscyA9ICdzZWxlY3QnLCBzdHlsZSwgaWQsIG5hbWUsICdhcmlhLWxhYmVsJzogYXJpYUxhYmVsLCAnYXJpYS1sYWJlbGxlZGJ5JzogYXJpYUxhYmVsbGVkQnksIHNpemUgPSAnbGFyZ2UnLCBzdGF0dXMgPSAnZGVmYXVsdCcsIHZhcmlhbnQgPSAnZmlsbCcsIGRpc2FibGVkOiBkaXNhYmxlZFByb3AgPSBmYWxzZSwgcmVhZE9ubHkgPSBmYWxzZSwgbG9hZGluZyA9IGZhbHNlLCBsYWJlbCwgbGFiZWxDbGFzc05hbWUsIGluZm8sIGRlc2NyaXB0aW9uLCBmZWVkYmFjaywgcmVxdWlyZWQgPSB0cnVlLCBwcmVmaXgsIHBsYWNlaG9sZGVyID0gbG9jYWxlLnBsYWNlaG9sZGVyLCBzZWxlY3RlZFRlbXBsYXRlLCBhcnJvdyA9IHRydWUsIG9wZW4sIGRlZmF1bHRPcGVuID0gZmFsc2UsIHBvcnRhbCA9IHRydWUsIHBhbmVsQ2xhc3NOYW1lLCBwYW5lbEZvb3RlciwgbGlzdE1heEhlaWdodCwgbGlzdEhlaWdodCwgcGxhY2VtZW50LCBwYW5lbFdpZHRoLCBvZmZzZXQsIHJvbGU6IHJvbGVQcm9wID0gJ2RpYWxvZycsIGFuaW1hdGlvbiwgb25PcGVuQ2hhbmdlLCBvbkJsdXIsIGNoaWxkcmVuLCByZWYsIH0gPSBwcm9wcztcbiAgICBjb25zdCBkaXNhYmxlZCA9IGRpc2FibGVkUHJvcCB8fCBsb2FkaW5nO1xuICAgIGNvbnN0IGludGVyYWN0aXZlID0gIWRpc2FibGVkICYmICFyZWFkT25seTtcbiAgICBjb25zdCBjbGFzc2VzID0gcm9vdENsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICBjb25zdCBhdXRvSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IHRyaWdnZXJJZCA9IGlkICE9PSBudWxsICYmIGlkICE9PSB2b2lkIDAgPyBpZCA6IGF1dG9JZDtcbiAgICBjb25zdCBsYWJlbElkID0gdXNlSWQoKTtcbiAgICBjb25zdCBkZXNjcmlwdGlvbklkID0gdXNlSWQoKTtcbiAgICBjb25zdCBmZWVkYmFja0lkID0gdXNlSWQoKTtcbiAgICBjb25zdCBub3JtYWxpemVkU2l6ZSA9IG5vcm1hbGl6ZVNpemUoc2l6ZSk7XG4gICAgY29uc3QgZmxvYXRpbmdSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgdHJpZ2dlclJlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBoYW5kbGVUcmlnZ2VyUmVmID0gdXNlRXZlbnRDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICB0cmlnZ2VyUmVmLmN1cnJlbnQgPSBub2RlO1xuICAgICAgICBpZiAocmVmKSB7XG4gICAgICAgICAgICByZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zdCB7IGlzT3Blbiwgc2V0T3BlbiwgcmVmcywgY29udGV4dCwgZmxvYXRpbmdTdHlsZXMsIHRyYW5zaXRpb25TdHlsZXMsIGlzTW91bnRlZCwgYmFzZUludGVyYWN0aW9ucywgfSA9IHVzZVNlbGVjdFNoZWxsKHtcbiAgICAgICAgb3BlbixcbiAgICAgICAgZGVmYXVsdE9wZW4sXG4gICAgICAgIG9uT3BlbkNoYW5nZSxcbiAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgIHJlYWRPbmx5LFxuICAgICAgICBwbGFjZW1lbnQsXG4gICAgICAgIHBhbmVsV2lkdGgsXG4gICAgICAgIGxpc3RNYXhIZWlnaHQsXG4gICAgICAgIGxpc3RIZWlnaHQsXG4gICAgICAgIGFuaW1hdGlvbixcbiAgICAgICAgcm9sZTogcm9sZVByb3AsXG4gICAgICAgIG9mZnNldCxcbiAgICB9KTtcbiAgICBjb25zdCBzZXRSZWZlcmVuY2UgPSB1c2VFdmVudENhbGxiYWNrKChub2RlKSA9PiB7XG4gICAgICAgIHJlZnMuc2V0UmVmZXJlbmNlKG5vZGUpO1xuICAgICAgICBoYW5kbGVUcmlnZ2VyUmVmKG5vZGUpO1xuICAgIH0pO1xuICAgIGNvbnN0IHNldEZsb2F0aW5nID0gdXNlRXZlbnRDYWxsYmFjaygobm9kZSkgPT4ge1xuICAgICAgICByZWZzLnNldEZsb2F0aW5nKG5vZGUpO1xuICAgICAgICBmbG9hdGluZ1JlZi5jdXJyZW50ID0gbm9kZTtcbiAgICB9KTtcbiAgICBjb25zdCB7IGdldFJlZmVyZW5jZVByb3BzLCBnZXRGbG9hdGluZ1Byb3BzIH0gPSB1c2VJbnRlcmFjdGlvbnMoYmFzZUludGVyYWN0aW9ucyk7XG4gICAgY29uc3Qgbm90aWZ5Qmx1cklmT3V0c2lkZSA9IHVzZUV2ZW50Q2FsbGJhY2soKHJlbGF0ZWRUYXJnZXQsIGV2ZW50KSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGNvbnN0IG5leHRUYXJnZXQgPSByZWxhdGVkVGFyZ2V0O1xuICAgICAgICBjb25zdCB3aXRoaW5UcmlnZ2VyID0gISEobmV4dFRhcmdldCAmJiAoKF9hID0gdHJpZ2dlclJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY29udGFpbnMobmV4dFRhcmdldCkpKTtcbiAgICAgICAgY29uc3Qgd2l0aGluRmxvYXRpbmcgPSAhIShuZXh0VGFyZ2V0ICYmICgoX2IgPSBmbG9hdGluZ1JlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY29udGFpbnMobmV4dFRhcmdldCkpKTtcbiAgICAgICAgaWYgKCF3aXRoaW5UcmlnZ2VyICYmICF3aXRoaW5GbG9hdGluZykge1xuICAgICAgICAgICAgb25CbHVyID09PSBudWxsIHx8IG9uQmx1ciA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25CbHVyKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZVRyaWdnZXJCbHVyID0gdXNlRXZlbnRDYWxsYmFjaygoZXZlbnQpID0+IHtcbiAgICAgICAgbm90aWZ5Qmx1cklmT3V0c2lkZShldmVudC5yZWxhdGVkVGFyZ2V0LCBldmVudCk7XG4gICAgfSk7XG4gICAgY29uc3QgY2xvc2UgPSB1c2VFdmVudENhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBzZXRPcGVuKGZhbHNlKTtcbiAgICAgICAgKF9hID0gdHJpZ2dlclJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZm9jdXMoeyBwcmV2ZW50U2Nyb2xsOiB0cnVlIH0pO1xuICAgIH0pO1xuICAgIGNvbnN0IHRyaWdnZXJDb250ZW50ID0gdHlwZW9mIHNlbGVjdGVkVGVtcGxhdGUgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyBzZWxlY3RlZFRlbXBsYXRlKHtcbiAgICAgICAgICAgIG9wZW46IGlzT3BlbixcbiAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICBzaXplOiBub3JtYWxpemVkU2l6ZSxcbiAgICAgICAgICAgIGZvbnRTaXplOiBnZXRGb250U2l6ZShub3JtYWxpemVkU2l6ZSksXG4gICAgICAgIH0pXG4gICAgICAgIDogc2VsZWN0ZWRUZW1wbGF0ZTtcbiAgICBjb25zdCBoYXNTZWxlY3Rpb24gPSBpc1JlbmRlcmFibGVUZW1wbGF0ZSh0cmlnZ2VyQ29udGVudCk7XG4gICAgY29uc3QgdmFsdWVMYWJlbENsYXNzID0gaGFzU2VsZWN0aW9uID8gJ3ZhbHVlJyA6ICdwbGFjZWhvbGRlcic7XG4gICAgY29uc3QgdHJpZ2dlckNsYXNzTmFtZSA9IGNsYXNzZXMoJ3RyaWdnZXInLCBqb2luQ2xzKGNsYXNzZXMoYHRyaWdnZXItJHtub3JtYWxpemVkU2l6ZX1gKSwgY2xhc3NlcyhgdHJpZ2dlci0ke3ZhcmlhbnR9YCksIGlzT3BlbiAmJiBjbGFzc2VzKCd0cmlnZ2VyLW9wZW4nKSwgaGFzU2VsZWN0aW9uID8gY2xhc3NlcygndHJpZ2dlci1maWxsZWQnKSA6IGNsYXNzZXMoJ3RyaWdnZXItcGxhY2Vob2xkZXInKSwgc3RhdHVzICE9PSAnZGVmYXVsdCcgJiYgY2xhc3NlcyhgdHJpZ2dlci0ke3N0YXR1c31gKSwgZGlzYWJsZWQgJiYgY2xhc3NlcygndHJpZ2dlci1kaXNhYmxlZCcpLCByZWFkT25seSAmJiAhZGlzYWJsZWQgJiYgY2xhc3NlcygndHJpZ2dlci1yZWFkb25seScpKSk7XG4gICAgY29uc3QgaWNvblNpemUgPSBub3JtYWxpemVkU2l6ZSA9PT0gJ2xhcmdlJyA/IDIwIDogMTY7XG4gICAgY29uc3QgZmxvYXRpbmdBcmlhTGFiZWxsZWRCeSA9IGFyaWFMYWJlbGxlZEJ5ICE9PSBudWxsICYmIGFyaWFMYWJlbGxlZEJ5ICE9PSB2b2lkIDAgPyBhcmlhTGFiZWxsZWRCeSA6IChsYWJlbCA/IGxhYmVsSWQgOiB1bmRlZmluZWQpO1xuICAgIGNvbnN0IGRlc2NyaWJlZEJ5SWRzID0gW2Rlc2NyaXB0aW9uID8gZGVzY3JpcHRpb25JZCA6IG51bGwsIGZlZWRiYWNrID8gZmVlZGJhY2tJZCA6IG51bGxdXG4gICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgLmpvaW4oJyAnKSB8fCB1bmRlZmluZWQ7XG4gICAgY29uc3QgcGFuZWxDdHggPSB7XG4gICAgICAgIGNsb3NlLFxuICAgICAgICBvcGVuOiBpc09wZW4sXG4gICAgICAgIHNpemU6IG5vcm1hbGl6ZWRTaXplLFxuICAgICAgICBmb250U2l6ZTogZ2V0Rm9udFNpemUobm9ybWFsaXplZFNpemUpLFxuICAgIH07XG4gICAgY29uc3QgcGFuZWxCb2R5ID0gdHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nID8gY2hpbGRyZW4ocGFuZWxDdHgpIDogY2hpbGRyZW47XG4gICAgcmV0dXJuIChfanN4cyhTZWxlY3RGaWVsZFNoZWxsLCB7IGNsYXNzZXM6IGNsYXNzZXMsIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBzaXplOiBub3JtYWxpemVkU2l6ZSwgdmFyaWFudDogdmFyaWFudCwgc3RhdHVzOiBzdGF0dXMsIGRpc2FibGVkOiBkaXNhYmxlZCwgcmVhZE9ubHk6IHJlYWRPbmx5LCBsb2FkaW5nOiBsb2FkaW5nLCBsYWJlbDogbGFiZWwsIGxhYmVsQ2xhc3NOYW1lOiBsYWJlbENsYXNzTmFtZSwgaW5mbzogaW5mbywgZGVzY3JpcHRpb246IGRlc2NyaXB0aW9uLCBmZWVkYmFjazogZmVlZGJhY2ssIHJlcXVpcmVkOiByZXF1aXJlZCwgbGFiZWxJZDogbGFiZWxJZCwgZGVzY3JpcHRpb25JZDogZGVzY3JpcHRpb25JZCwgZmVlZGJhY2tJZDogZmVlZGJhY2tJZCwgY2hpbGRyZW46IFtfanN4cyhcImJ1dHRvblwiLCBPYmplY3QuYXNzaWduKHt9LCBnZXRSZWZlcmVuY2VQcm9wcyh7XG4gICAgICAgICAgICAgICAgcmVmOiBzZXRSZWZlcmVuY2UsXG4gICAgICAgICAgICAgICAgaWQ6IHRyaWdnZXJJZCxcbiAgICAgICAgICAgICAgICB0eXBlOiAnYnV0dG9uJyxcbiAgICAgICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgICAgICdhcmlhLXJlYWRvbmx5JzogcmVhZE9ubHkgfHwgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIHN0eWxlLFxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZTogdHJpZ2dlckNsYXNzTmFtZSxcbiAgICAgICAgICAgICAgICBvbkJsdXI6IGhhbmRsZVRyaWdnZXJCbHVyLFxuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsJzogYXJpYUxhYmVsLFxuICAgICAgICAgICAgICAgICdhcmlhLWxhYmVsbGVkYnknOiBmbG9hdGluZ0FyaWFMYWJlbGxlZEJ5LFxuICAgICAgICAgICAgICAgICdhcmlhLWRlc2NyaWJlZGJ5JzogZGVzY3JpYmVkQnlJZHMsXG4gICAgICAgICAgICB9KSwgeyBjaGlsZHJlbjogW19qc3hzKFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnY29udGVudCcpLCBjaGlsZHJlbjogW3ByZWZpeCAmJiBfanN4KFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncHJlZml4JyksIGNoaWxkcmVuOiBwcmVmaXggfSksIF9qc3goXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKHZhbHVlTGFiZWxDbGFzcywgam9pbkNscyhjbGFzc2VzKGAke3ZhbHVlTGFiZWxDbGFzc30tJHtub3JtYWxpemVkU2l6ZX1gKSwgZGlzYWJsZWQgJiYgY2xhc3NlcyhgJHt2YWx1ZUxhYmVsQ2xhc3N9LWRpc2FibGVkYCkpKSwgY2hpbGRyZW46IGhhc1NlbGVjdGlvbiA/IHRyaWdnZXJDb250ZW50IDogcGxhY2Vob2xkZXIgfSldIH0pLCBhcnJvdyAmJiAoX2pzeChcInNwYW5cIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2ljb24nKSwgY2hpbGRyZW46IGxvYWRpbmdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IF9qc3goU3Bpbm5lciwgeyBzaXplOiBpY29uU2l6ZSwgc3Ryb2tlV2lkdGg6IDIgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHJlYWRPbmx5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IF9qc3goSWNvbnMsIHsgbmFtZTogaXNPcGVuID8gJ2NoZXZyb25VcCcgOiAnY2hldnJvbkRvd24nLCBzaXplOiBpY29uU2l6ZSwgY29sb3I6IFwiY3VycmVudENvbG9yXCIgfSkgfSkpXSB9KSksIGlzTW91bnRlZCAmJiBpbnRlcmFjdGl2ZSAmJiAoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhbmVsTm9kZSA9IChfanN4KEZsb2F0aW5nRm9jdXNNYW5hZ2VyLCB7IGNvbnRleHQ6IGNvbnRleHQsIG1vZGFsOiBmYWxzZSwgaW5pdGlhbEZvY3VzOiAtMSwgcmV0dXJuRm9jdXM6IGZhbHNlLCBjaGlsZHJlbjogX2pzeHMoXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7fSwgZ2V0RmxvYXRpbmdQcm9wcyh7XG4gICAgICAgICAgICAgICAgICAgICAgICByZWY6IHNldEZsb2F0aW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lOiBqb2luQ2xzKGNsYXNzZXMoJ3BhbmVsJyksIHBhbmVsQ2xhc3NOYW1lKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGZsb2F0aW5nU3R5bGVzKSwgdHJhbnNpdGlvblN0eWxlcyksXG4gICAgICAgICAgICAgICAgICAgIH0pLCB7IGNoaWxkcmVuOiBbX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncGFuZWwtYm9keScpLCBjaGlsZHJlbjogcGFuZWxCb2R5IH0pLCBwYW5lbEZvb3RlciAhPSBudWxsICYmIChfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdwYW5lbC1mb290ZXInKSwgY2hpbGRyZW46IHBhbmVsRm9vdGVyIH0pKV0gfSkpIH0pKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gcG9ydGFsID8gX2pzeChGbG9hdGluZ1BvcnRhbCwgeyBjaGlsZHJlbjogcGFuZWxOb2RlIH0pIDogcGFuZWxOb2RlO1xuICAgICAgICAgICAgfSkoKV0gfSkpO1xufTtcblNlbGVjdEN1c3RvbS5kaXNwbGF5TmFtZSA9ICdTZWxlY3RDdXN0b20nO1xuZXhwb3J0IGRlZmF1bHQgbWVtbyhTZWxlY3RDdXN0b20pOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
@@ -139,7 +139,18 @@ export interface SelectProps extends Omit<HTMLAttributes<HTMLDivElement>, 'defau
|
|
|
139
139
|
optionClassName?: string;
|
|
140
140
|
/** Class applied to each option-group heading (the label above a group's options). */
|
|
141
141
|
groupLabelClassName?: string;
|
|
142
|
-
|
|
142
|
+
/**
|
|
143
|
+
* Maximum height of the entire panel in px, including search and footer.
|
|
144
|
+
* 'auto' reserves one option height from available clipping space (unless
|
|
145
|
+
* listHeight is set), and shrinks with the content.
|
|
146
|
+
* Defaults to 320 when listHeight is absent; otherwise no implicit cap.
|
|
147
|
+
*/
|
|
148
|
+
listMaxHeight?: number | 'auto';
|
|
149
|
+
/**
|
|
150
|
+
* Fixed height of the entire panel in px, retaining space for short lists.
|
|
151
|
+
* Clamped by an explicit listMaxHeight and the available clipping space.
|
|
152
|
+
*/
|
|
153
|
+
listHeight?: number;
|
|
143
154
|
/**
|
|
144
155
|
* Gap between panel and trigger.
|
|
145
156
|
* - `number`: shorthand for `mainAxis` (perpendicular distance, in px).
|
|
@@ -216,7 +227,18 @@ export interface SelectCustomProps extends Omit<HTMLAttributes<HTMLDivElement>,
|
|
|
216
227
|
portal?: boolean;
|
|
217
228
|
panelClassName?: string;
|
|
218
229
|
panelFooter?: ReactNode;
|
|
219
|
-
|
|
230
|
+
/**
|
|
231
|
+
* Maximum height of the entire panel in px, including search and footer.
|
|
232
|
+
* 'auto' reserves one option height from available clipping space (unless
|
|
233
|
+
* listHeight is set), and shrinks with the content.
|
|
234
|
+
* Defaults to 320 when listHeight is absent; otherwise no implicit cap.
|
|
235
|
+
*/
|
|
236
|
+
listMaxHeight?: number | 'auto';
|
|
237
|
+
/**
|
|
238
|
+
* Fixed height of the entire panel in px, retaining space for short lists.
|
|
239
|
+
* Clamped by an explicit listMaxHeight and the available clipping space.
|
|
240
|
+
*/
|
|
241
|
+
listHeight?: number;
|
|
220
242
|
/**
|
|
221
243
|
* Floating-ui placement of the panel relative to the trigger.
|
|
222
244
|
* @default 'bottom-start'
|
|
@@ -14,7 +14,8 @@ export interface UseSelectShellOptions {
|
|
|
14
14
|
readOnly?: boolean;
|
|
15
15
|
placement?: Placement;
|
|
16
16
|
panelWidth?: number | string;
|
|
17
|
-
listMaxHeight?: number;
|
|
17
|
+
listMaxHeight?: number | 'auto';
|
|
18
|
+
listHeight?: number;
|
|
18
19
|
animation?: FloatingAnimation;
|
|
19
20
|
role?: UseRoleProps['role'];
|
|
20
21
|
offset?: SelectShellOffset;
|
|
@@ -7,7 +7,7 @@ import useEventCallback from '@1money/hooks/useEventCallback';
|
|
|
7
7
|
import { useFloatingAnimation } from '../../hooks/useFloatingAnimation';
|
|
8
8
|
var DEFAULT_PLACEMENT = 'bottom-start';
|
|
9
9
|
var DEFAULT_LIST_MAX_HEIGHT = 320;
|
|
10
|
-
var
|
|
10
|
+
var PANEL_VIEWPORT_PADDING = 8;
|
|
11
11
|
export function useSelectShell(options) {
|
|
12
12
|
var open = options.open,
|
|
13
13
|
_options$defaultOpen = options.defaultOpen,
|
|
@@ -20,8 +20,9 @@ export function useSelectShell(options) {
|
|
|
20
20
|
_options$placement = options.placement,
|
|
21
21
|
placement = _options$placement === void 0 ? DEFAULT_PLACEMENT : _options$placement,
|
|
22
22
|
panelWidth = options.panelWidth,
|
|
23
|
+
listHeight = options.listHeight,
|
|
23
24
|
_options$listMaxHeigh = options.listMaxHeight,
|
|
24
|
-
listMaxHeight = _options$listMaxHeigh === void 0 ? DEFAULT_LIST_MAX_HEIGHT : _options$listMaxHeigh,
|
|
25
|
+
listMaxHeight = _options$listMaxHeigh === void 0 ? listHeight == null ? DEFAULT_LIST_MAX_HEIGHT : 'auto' : _options$listMaxHeigh,
|
|
25
26
|
animation = options.animation,
|
|
26
27
|
_options$role = options.role,
|
|
27
28
|
roleType = _options$role === void 0 ? 'select' : _options$role,
|
|
@@ -44,29 +45,63 @@ export function useSelectShell(options) {
|
|
|
44
45
|
open: isOpen,
|
|
45
46
|
onOpenChange: setOpen,
|
|
46
47
|
placement: placement,
|
|
47
|
-
whileElementsMounted:
|
|
48
|
+
whileElementsMounted: function whileElementsMounted(reference, floating, update) {
|
|
49
|
+
var cleanup = autoUpdate(reference, floating, update);
|
|
50
|
+
// The panel can stay capped while a size/custom-render change resizes
|
|
51
|
+
// its rows, so observing only the panel would miss the new row height.
|
|
52
|
+
var option = null;
|
|
53
|
+
var observer = typeof ResizeObserver === 'undefined' ? null : new ResizeObserver(update);
|
|
54
|
+
var observeOption = function observeOption() {
|
|
55
|
+
var nextOption = floating.querySelector('[role="option"]');
|
|
56
|
+
if (nextOption === option) return;
|
|
57
|
+
observer === null || observer === void 0 ? void 0 : observer.disconnect();
|
|
58
|
+
option = nextOption;
|
|
59
|
+
if (option) observer === null || observer === void 0 ? void 0 : observer.observe(option);
|
|
60
|
+
update();
|
|
61
|
+
};
|
|
62
|
+
observeOption();
|
|
63
|
+
// Filtering/loading can replace the first option without resizing the panel.
|
|
64
|
+
var mutations = new MutationObserver(observeOption);
|
|
65
|
+
mutations.observe(floating, {
|
|
66
|
+
childList: true,
|
|
67
|
+
subtree: true
|
|
68
|
+
});
|
|
69
|
+
return function () {
|
|
70
|
+
cleanup();
|
|
71
|
+
observer === null || observer === void 0 ? void 0 : observer.disconnect();
|
|
72
|
+
mutations.disconnect();
|
|
73
|
+
};
|
|
74
|
+
},
|
|
48
75
|
transform: false,
|
|
49
76
|
middleware: [offset({
|
|
50
77
|
mainAxis: offsetMainAxis,
|
|
51
78
|
crossAxis: offsetCrossAxis,
|
|
52
79
|
alignmentAxis: offsetAlignmentAxis
|
|
53
80
|
}, [offsetMainAxis, offsetCrossAxis, offsetAlignmentAxis]), flip({
|
|
54
|
-
padding:
|
|
81
|
+
padding: PANEL_VIEWPORT_PADDING
|
|
55
82
|
}), shift({
|
|
56
|
-
padding:
|
|
83
|
+
padding: PANEL_VIEWPORT_PADDING
|
|
57
84
|
}), floatingSize({
|
|
85
|
+
padding: PANEL_VIEWPORT_PADDING,
|
|
58
86
|
apply: function apply(_ref) {
|
|
59
87
|
var rects = _ref.rects,
|
|
60
88
|
elements = _ref.elements,
|
|
61
89
|
availableHeight = _ref.availableHeight;
|
|
62
|
-
var
|
|
90
|
+
var _a, _b;
|
|
63
91
|
var resolvedWidth = panelWidth == null ? "".concat(rects.reference.width, "px") : typeof panelWidth === 'number' ? "".concat(panelWidth, "px") : panelWidth;
|
|
92
|
+
elements.floating.style.width = resolvedWidth;
|
|
93
|
+
// Auto panels leave one option of breathing room at the outer edge.
|
|
94
|
+
// Measure after setting width so wrapped labels use their real height.
|
|
95
|
+
// Custom/empty panels without an option have no row to reserve.
|
|
96
|
+
var reservedHeight = listMaxHeight === 'auto' && listHeight == null ? (_b = (_a = elements.floating.querySelector('[role="option"]')) === null || _a === void 0 ? void 0 : _a.offsetHeight) !== null && _b !== void 0 ? _b : 0 : 0;
|
|
97
|
+
var nextMaxHeight = Math.max(0, listMaxHeight === 'auto' ? availableHeight - reservedHeight : Math.min(listMaxHeight, availableHeight));
|
|
64
98
|
Object.assign(elements.floating.style, {
|
|
65
|
-
|
|
66
|
-
|
|
99
|
+
maxHeight: "".concat(nextMaxHeight, "px"),
|
|
100
|
+
// Clear a previous fixed height when props switch back to auto.
|
|
101
|
+
height: listHeight == null ? '' : "".concat(Math.max(0, Math.min(listHeight, nextMaxHeight)), "px")
|
|
67
102
|
});
|
|
68
103
|
}
|
|
69
|
-
}, [panelWidth, listMaxHeight])]
|
|
104
|
+
}, [panelWidth, listMaxHeight, listHeight])]
|
|
70
105
|
}),
|
|
71
106
|
refs = _useFloating.refs,
|
|
72
107
|
floatingStyles = _useFloating.floatingStyles,
|
|
@@ -104,4 +139,4 @@ export function useSelectShell(options) {
|
|
|
104
139
|
};
|
|
105
140
|
}
|
|
106
141
|
export default useSelectShell;
|
|
107
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L3VzZVNlbGVjdFNoZWxsLnRzIiwiY29tcG9uZW50cy9TZWxlY3QvdXNlU2VsZWN0U2hlbGwuanMiXSwibmFtZXMiOlsiYXV0b1VwZGF0ZSIsImZsaXAiLCJvZmZzZXQiLCJzaGlmdCIsInNpemUiLCJmbG9hdGluZ1NpemUiLCJ1c2VDbGljayIsInVzZURpc21pc3MiLCJ1c2VGbG9hdGluZyIsInVzZVJvbGUiLCJ1c2VNZW1vIiwidXNlQ29udHJvbGxlZFN0YXRlIiwidXNlRXZlbnRDYWxsYmFjayIsInVzZUZsb2F0aW5nQW5pbWF0aW9uIiwiREVGQVVMVF9QTEFDRU1FTlQiLCJERUZBVUxUX0xJU1RfTUFYX0hFSUdIVCIsIlBBTkVMX01JTl9IRUlHSFQiLCJ1c2VTZWxlY3RTaGVsbCIsIm9wdGlvbnMiLCJvcGVuIiwiX29wdGlvbnMkZGVmYXVsdE9wZW4iLCJkZWZhdWx0T3BlbiIsIm9uT3BlbkNoYW5nZSIsIl9vcHRpb25zJGRpc2FibGVkIiwiZGlzYWJsZWQiLCJfb3B0aW9ucyRyZWFkT25seSIsInJlYWRPbmx5IiwiX29wdGlvbnMkcGxhY2VtZW50IiwicGxhY2VtZW50IiwicGFuZWxXaWR0aCIsIl9vcHRpb25zJGxpc3RNYXhIZWlnaCIsImxpc3RNYXhIZWlnaHQiLCJhbmltYXRpb24iLCJfb3B0aW9ucyRyb2xlIiwicm9sZSIsInJvbGVUeXBlIiwiX29wdGlvbnMkb2Zmc2V0Iiwib2Zmc2V0UHJvcCIsImludGVyYWN0aXZlIiwib2Zmc2V0SXNPYmplY3QiLCJfdHlwZW9mIiwib2Zmc2V0TWFpbkF4aXMiLCJtYWluQXhpcyIsIm9mZnNldENyb3NzQXhpcyIsImNyb3NzQXhpcyIsInVuZGVmaW5lZCIsIm9mZnNldEFsaWdubWVudEF4aXMiLCJhbGlnbm1lbnRBeGlzIiwiX3VzZUNvbnRyb2xsZWRTdGF0ZSIsIl91c2VDb250cm9sbGVkU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJpc09wZW4iLCJzZXRPcGVuU3RhdGUiLCJzZXRPcGVuIiwibmV4dE9wZW4iLCJfdXNlRmxvYXRpbmciLCJ3aGlsZUVsZW1lbnRzTW91bnRlZCIsInRyYW5zZm9ybSIsIm1pZGRsZXdhcmUiLCJwYWRkaW5nIiwiYXBwbHkiLCJfcmVmIiwicmVjdHMiLCJlbGVtZW50cyIsImF2YWlsYWJsZUhlaWdodCIsIm5leHRNYXhIZWlnaHQiLCJNYXRoIiwibWF4IiwibWluIiwicmVzb2x2ZWRXaWR0aCIsImNvbmNhdCIsInJlZmVyZW5jZSIsIndpZHRoIiwiT2JqZWN0IiwiYXNzaWduIiwiZmxvYXRpbmciLCJzdHlsZSIsIm1heEhlaWdodCIsInJlZnMiLCJmbG9hdGluZ1N0eWxlcyIsImNvbnRleHQiLCJyZXNvbHZlZFBsYWNlbWVudCIsInJlc29sdmVkQW5pbWF0aW9uIiwia2luZCIsIl91c2VGbG9hdGluZ0FuaW1hdGlvbiIsImlzTW91bnRlZCIsInRyYW5zaXRpb25TdHlsZXMiLCJzdHlsZXMiLCJjbGljayIsImVuYWJsZWQiLCJkaXNtaXNzIiwib3V0c2lkZVByZXNzRXZlbnQiLCJiYXNlSW50ZXJhY3Rpb25zIl0sIm1hcHBpbmdzIjoiOztBQUFBLFNBQ0VBLFVBQVUsRUFDVkMsSUFBSSxFQUNKQyxNQUFNLEVBQ05DLEtBQUssRUFDTEMsSUFBSSxJQUFJQyxZQUFZLEVBQ3BCQyxRQUFRLEVBQ1JDLFVBQVUsRUFDVkMsV0FBVyxFQUNYQyxPQUFPLFFBQ0Ysb0JBQW9CO0FBQzNCLFNBQVNDLE9BQU8sUUFBUSxPQUFPO0FBQy9CLE9BQU9DLGtCQUFrQixNQUFNLGtDQUFrQztBQUNqRSxPQUFPQyxnQkFBZ0IsTUFBTSxnQ0FBZ0M7QUFDN0QsU0FBU0Msb0JBQW9CLFFBQVEsa0NBQWtDO0FBMEN2RSxJQUFNQyxpQkFBaUIsR0FBYyxjQUFjO0FBQ25ELElBQU1DLHVCQUF1QixHQUFHLEdBQUc7QUFDbkMsSUFBTUMsZ0JBQWdCLEdBQUcsR0FBRztBQUU1QixPQUFNLFNBQVVDLGNBQWNBLENBQzVCQyxPQUE4QixFQUFBO0VBRTlC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QUEsR0FBVEEsU0FBUyxHQUFJLENBQUEsQ0FBRyxDQUFFO0VBQUEsR0FDdkQsQ0FBQ0EsU0FBUyxDQUFDLENBQ1o7RUFDRCxJQUFBb0QscUJBQUEsR0FBZ0R2RSxvQkFBb0IsQ0FDbEVtRSxPQUFPLEVBQ1BDLGlCQUFpQixFQUNqQkMsaUJBQWlCLENBQ2xCO0lBSk9HLFNBQVMsR0FBQUQscUJBQUEsQ0FBVEMsU0FBUztJQUFVQyxnQkFBZ0IsR0FBQUYscUJBQUEsQ0FBeEJHLE1BQU07RUFNekIsSUFBTUMsS0FBSyxHQUFHbEYsUUFBUSxDQUFDMEUsT0FBTyxFQUFFO0lBQUVTLE9BQU8sRUFBRW5EO0VBQVcsQ0FBRSxDQUFDO0VBQ3pELElBQU1vRCxPQUFPLEdBQUduRixVQUFVLENBQUN5RSxPQUFPLEVBQUU7SUFDbENTLE9BQU8sRUFBRW5ELFdBQVc7SUFDcEJxRCxpQkFBaUIsRUFBRTtFQzlGbkIsQ0QrRkQsQ0FBQztFQUNGLElBQU16RCxJQUFJLEdBQUd6QixPQUFPLENBQUN1RSxPQUFPLEVBQUU7SUFBRTlDLElBQUksRUFBRUM7RUFBUSxDQUFFLENBQUM7RUFFakQsSUFBTXlELGdCQUFnQixHQUFtQixDQUFDSixLQUFLLEVBQUVFLE9BQU8sRUFBRXhELElBQUksQ0FBQztFQUUvRCxPQUFPO0lBQ0xpQixNQUFNLEVBQU5BLE1BQU07SUFDTkUsT0FBTyxFQUFQQSxPQUFPO0lBQ1B5QixJQUFJLEVBQUpBLElBQUk7SUFDSkUsT0FBTyxFQUFQQSxPQUFPO0lBQ1BwRCxTQUFTLEVBQUVxRCxpQkFBaUI7SUFDNUJGLGNBQWMsRUFBZEEsY0FBYztJQUNkTyxnQkFBZ0IsRUFBaEJBLGdCQUFnQjtJQUNoQkQsU0FBUyxFQUFUQSxTQUFTO0lBQ1RPLGdCQUFnQixFQUFoQkE7RUNoR0EsQ0RpR0Q7QUFDSDtBQUVBLGVBQWUzRSxjQUFjIiwiZmlsZSI6ImNvbXBvbmVudHMvU2VsZWN0L3VzZVNlbGVjdFNoZWxsLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCJpbXBvcnQgeyBhdXRvVXBkYXRlLCBmbGlwLCBvZmZzZXQsIHNoaWZ0LCBzaXplIGFzIGZsb2F0aW5nU2l6ZSwgdXNlQ2xpY2ssIHVzZURpc21pc3MsIHVzZUZsb2F0aW5nLCB1c2VSb2xlLCB9IGZyb20gJ0BmbG9hdGluZy11aS9yZWFjdCc7XG5pbXBvcnQgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHVzZUNvbnRyb2xsZWRTdGF0ZSBmcm9tICdAMW1vbmV5L2hvb2tzL3VzZUNvbnRyb2xsZWRTdGF0ZSc7XG5pbXBvcnQgdXNlRXZlbnRDYWxsYmFjayBmcm9tICdAMW1vbmV5L2hvb2tzL3VzZUV2ZW50Q2FsbGJhY2snO1xuaW1wb3J0IHsgdXNlRmxvYXRpbmdBbmltYXRpb24gfSBmcm9tICcuLi8uLi9ob29rcy91c2VGbG9hdGluZ0FuaW1hdGlvbic7XG5jb25zdCBERUZBVUxUX1BMQUNFTUVOVCA9ICdib3R0b20tc3RhcnQnO1xuY29uc3QgREVGQVVMVF9MSVNUX01BWF9IRUlHSFQgPSAzMjA7XG5jb25zdCBQQU5FTF9NSU5fSEVJR0hUID0gMTIwO1xuZXhwb3J0IGZ1bmN0aW9uIHVzZVNlbGVjdFNoZWxsKG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IG9wZW4sIGRlZmF1bHRPcGVuID0gZmFsc2UsIG9uT3BlbkNoYW5nZSwgZGlzYWJsZWQgPSBmYWxzZSwgcmVhZE9ubHkgPSBmYWxzZSwgcGxhY2VtZW50ID0gREVGQVVMVF9QTEFDRU1FTlQsIHBhbmVsV2lkdGgsIGxpc3RNYXhIZWlnaHQgPSBERUZBVUxUX0xJU1RfTUFYX0hFSUdIVCwgYW5pbWF0aW9uLCByb2xlOiByb2xlVHlwZSA9ICdzZWxlY3QnLCBvZmZzZXQ6IG9mZnNldFByb3AgPSA0LCB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBpbnRlcmFjdGl2ZSA9ICFkaXNhYmxlZCAmJiAhcmVhZE9ubHk7XG4gICAgY29uc3Qgb2Zmc2V0SXNPYmplY3QgPSB0eXBlb2Ygb2Zmc2V0UHJvcCA9PT0gJ29iamVjdCcgJiYgb2Zmc2V0UHJvcCAhPT0gbnVsbDtcbiAgICBjb25zdCBvZmZzZXRNYWluQXhpcyA9IG9mZnNldElzT2JqZWN0ID8gb2Zmc2V0UHJvcC5tYWluQXhpcyA6IG9mZnNldFByb3A7XG4gICAgY29uc3Qgb2Zmc2V0Q3Jvc3NBeGlzID0gb2Zmc2V0SXNPYmplY3QgPyBvZmZzZXRQcm9wLmNyb3NzQXhpcyA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCBvZmZzZXRBbGlnbm1lbnRBeGlzID0gb2Zmc2V0SXNPYmplY3QgPyBvZmZzZXRQcm9wLmFsaWdubWVudEF4aXMgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgW2lzT3Blbiwgc2V0T3BlblN0YXRlXSA9IHVzZUNvbnRyb2xsZWRTdGF0ZShkZWZhdWx0T3Blbiwgb3Blbik7XG4gICAgY29uc3Qgc2V0T3BlbiA9IHVzZUV2ZW50Q2FsbGJhY2soKG5leHRPcGVuKSA9PiB7XG4gICAgICAgIHNldE9wZW5TdGF0ZShuZXh0T3Blbik7XG4gICAgICAgIG9uT3BlbkNoYW5nZSA9PT0gbnVsbCB8fCBvbk9wZW5DaGFuZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uT3BlbkNoYW5nZShuZXh0T3Blbik7XG4gICAgfSk7XG4gICAgY29uc3QgeyByZWZzLCBmbG9hdGluZ1N0eWxlcywgY29udGV4dCwgcGxhY2VtZW50OiByZXNvbHZlZFBsYWNlbWVudCwgfSA9IHVzZUZsb2F0aW5nKHtcbiAgICAgICAgb3BlbjogaXNPcGVuLFxuICAgICAgICBvbk9wZW5DaGFuZ2U6IHNldE9wZW4sXG4gICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgd2hpbGVFbGVtZW50c01vdW50ZWQ6IGF1dG9VcGRhdGUsXG4gICAgICAgIHRyYW5zZm9ybTogZmFsc2UsXG4gICAgICAgIG1pZGRsZXdhcmU6IFtcbiAgICAgICAgICAgIG9mZnNldCh7XG4gICAgICAgICAgICAgICAgbWFpbkF4aXM6IG9mZnNldE1haW5BeGlzLFxuICAgICAgICAgICAgICAgIGNyb3NzQXhpczogb2Zmc2V0Q3Jvc3NBeGlzLFxuICAgICAgICAgICAgICAgIGFsaWdubWVudEF4aXM6IG9mZnNldEFsaWdubWVudEF4aXMsXG4gICAgICAgICAgICB9LCBbb2Zmc2V0TWFpbkF4aXMsIG9mZnNldENyb3NzQXhpcywgb2Zmc2V0QWxpZ25tZW50QXhpc10pLFxuICAgICAgICAgICAgZmxpcCh7IHBhZGRpbmc6IDggfSksXG4gICAgICAgICAgICBzaGlmdCh7IHBhZGRpbmc6IDggfSksXG4gICAgICAgICAgICBmbG9hdGluZ1NpemUoe1xuICAgICAgICAgICAgICAgIGFwcGx5KHsgcmVjdHMsIGVsZW1lbnRzLCBhdmFpbGFibGVIZWlnaHQgfSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXh0TWF4SGVpZ2h0ID0gTWF0aC5tYXgoUEFORUxfTUlOX0hFSUdIVCwgTWF0aC5taW4obGlzdE1heEhlaWdodCwgYXZhaWxhYmxlSGVpZ2h0KSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkV2lkdGggPSBwYW5lbFdpZHRoID09IG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgID8gYCR7cmVjdHMucmVmZXJlbmNlLndpZHRofXB4YFxuICAgICAgICAgICAgICAgICAgICAgICAgOiB0eXBlb2YgcGFuZWxXaWR0aCA9PT0gJ251bWJlcidcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGAke3BhbmVsV2lkdGh9cHhgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBwYW5lbFdpZHRoO1xuICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGVsZW1lbnRzLmZsb2F0aW5nLnN0eWxlLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcmVzb2x2ZWRXaWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogYCR7bmV4dE1heEhlaWdodH1weGAsXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LCBbcGFuZWxXaWR0aCwgbGlzdE1heEhlaWdodF0pLFxuICAgICAgICBdLFxuICAgIH0pO1xuICAgIGNvbnN0IHJlc29sdmVkQW5pbWF0aW9uID0gdXNlTWVtbygoKSA9PiBhbmltYXRpb24gPT09IGZhbHNlXG4gICAgICAgID8gZmFsc2VcbiAgICAgICAgOiBPYmplY3QuYXNzaWduKHsga2luZDogJ2hlaWdodCcgfSwgKGFuaW1hdGlvbiAhPT0gbnVsbCAmJiBhbmltYXRpb24gIT09IHZvaWQgMCA/IGFuaW1hdGlvbiA6IHt9KSksIFthbmltYXRpb25dKTtcbiAgICBjb25zdCB7IGlzTW91bnRlZCwgc3R5bGVzOiB0cmFuc2l0aW9uU3R5bGVzIH0gPSB1c2VGbG9hdGluZ0FuaW1hdGlvbihjb250ZXh0LCByZXNvbHZlZFBsYWNlbWVudCwgcmVzb2x2ZWRBbmltYXRpb24pO1xuICAgIGNvbnN0IGNsaWNrID0gdXNlQ2xpY2soY29udGV4dCwgeyBlbmFibGVkOiBpbnRlcmFjdGl2ZSB9KTtcbiAgICBjb25zdCBkaXNtaXNzID0gdXNlRGlzbWlzcyhjb250ZXh0LCB7XG4gICAgICAgIGVuYWJsZWQ6IGludGVyYWN0aXZlLFxuICAgICAgICBvdXRzaWRlUHJlc3NFdmVudDogJ21vdXNlZG93bicsXG4gICAgfSk7XG4gICAgY29uc3Qgcm9sZSA9IHVzZVJvbGUoY29udGV4dCwgeyByb2xlOiByb2xlVHlwZSB9KTtcbiAgICBjb25zdCBiYXNlSW50ZXJhY3Rpb25zID0gW2NsaWNrLCBkaXNtaXNzLCByb2xlXTtcbiAgICByZXR1cm4ge1xuICAgICAgICBpc09wZW4sXG4gICAgICAgIHNldE9wZW4sXG4gICAgICAgIHJlZnMsXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIHBsYWNlbWVudDogcmVzb2x2ZWRQbGFjZW1lbnQsXG4gICAgICAgIGZsb2F0aW5nU3R5bGVzLFxuICAgICAgICB0cmFuc2l0aW9uU3R5bGVzLFxuICAgICAgICBpc01vdW50ZWQsXG4gICAgICAgIGJhc2VJbnRlcmFjdGlvbnMsXG4gICAgfTtcbn1cbmV4cG9ydCBkZWZhdWx0IHVzZVNlbGVjdFNoZWxsOyJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
142
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L3VzZVNlbGVjdFNoZWxsLnRzIiwiY29tcG9uZW50cy9TZWxlY3QvdXNlU2VsZWN0U2hlbGwuanMiXSwibmFtZXMiOlsiYXV0b1VwZGF0ZSIsImZsaXAiLCJvZmZzZXQiLCJzaGlmdCIsInNpemUiLCJmbG9hdGluZ1NpemUiLCJ1c2VDbGljayIsInVzZURpc21pc3MiLCJ1c2VGbG9hdGluZyIsInVzZVJvbGUiLCJ1c2VNZW1vIiwidXNlQ29udHJvbGxlZFN0YXRlIiwidXNlRXZlbnRDYWxsYmFjayIsInVzZUZsb2F0aW5nQW5pbWF0aW9uIiwiREVGQVVMVF9QTEFDRU1FTlQiLCJERUZBVUxUX0xJU1RfTUFYX0hFSUdIVCIsIlBBTkVMX1ZJRVdQT1JUX1BBRERJTkciLCJ1c2VTZWxlY3RTaGVsbCIsIm9wdGlvbnMiLCJvcGVuIiwiX29wdGlvbnMkZGVmYXVsdE9wZW4iLCJkZWZhdWx0T3BlbiIsIm9uT3BlbkNoYW5nZSIsIl9vcHRpb25zJGRpc2FibGVkIiwiZGlzYWJsZWQiLCJfb3B0aW9ucyRyZWFkT25seSIsInJlYWRPbmx5IiwiX29wdGlvbnMkcGxhY2VtZW50IiwicGxhY2VtZW50IiwicGFuZWxXaWR0aCIsImxpc3RIZWlnaHQiLCJfb3B0aW9ucyRsaXN0TWF4SGVpZ2giLCJsaXN0TWF4SGVpZ2h0IiwiYW5pbWF0aW9uIiwiX29wdGlvbnMkcm9sZSIsInJvbGUiLCJyb2xlVHlwZSIsIl9vcHRpb25zJG9mZnNldCIsIm9mZnNldFByb3AiLCJpbnRlcmFjdGl2ZSIsIm9mZnNldElzT2JqZWN0IiwiX3R5cGVvZiIsIm9mZnNldE1haW5BeGlzIiwibWFpbkF4aXMiLCJvZmZzZXRDcm9zc0F4aXMiLCJjcm9zc0F4aXMiLCJ1bmRlZmluZWQiLCJvZmZzZXRBbGlnbm1lbnRBeGlzIiwiYWxpZ25tZW50QXhpcyIsIl91c2VDb250cm9sbGVkU3RhdGUiLCJfdXNlQ29udHJvbGxlZFN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiaXNPcGVuIiwic2V0T3BlblN0YXRlIiwic2V0T3BlbiIsIm5leHRPcGVuIiwiX3VzZUZsb2F0aW5nIiwid2hpbGVFbGVtZW50c01vdW50ZWQiLCJyZWZlcmVuY2UiLCJmbG9hdGluZyIsInVwZGF0ZSIsImNsZWFudXAiLCJvcHRpb24iLCJvYnNlcnZlciIsIlJlc2l6ZU9ic2VydmVyIiwib2JzZXJ2ZU9wdGlvbiIsIm5leHRPcHRpb24iLCJxdWVyeVNlbGVjdG9yIiwiZGlzY29ubmVjdCIsIm9ic2VydmUiLCJtdXRhdGlvbnMiLCJNdXRhdGlvbk9ic2VydmVyIiwiY2hpbGRMaXN0Iiwic3VidHJlZSIsInRyYW5zZm9ybSIsIm1pZGRsZXdhcmUiLCJwYWRkaW5nIiwiYXBwbHkiLCJfcmVmIiwicmVjdHMiLCJlbGVtZW50cyIsImF2YWlsYWJsZUhlaWdodCIsIl9hIiwiX2IiLCJyZXNvbHZlZFdpZHRoIiwiY29uY2F0Iiwid2lkdGgiLCJzdHlsZSIsInJlc2VydmVkSGVpZ2h0Iiwib2Zmc2V0SGVpZ2h0IiwibmV4dE1heEhlaWdodCIsIk1hdGgiLCJtYXgiLCJtaW4iLCJPYmplY3QiLCJhc3NpZ24iLCJtYXhIZWlnaHQiLCJoZWlnaHQiLCJyZWZzIiwiZmxvYXRpbmdTdHlsZXMiLCJjb250ZXh0IiwicmVzb2x2ZWRQbGFjZW1lbnQiLCJyZXNvbHZlZEFuaW1hdGlvbiIsImtpbmQiLCJfdXNlRmxvYXRpbmdBbmltYXRpb24iLCJpc01vdW50ZWQiLCJ0cmFuc2l0aW9uU3R5bGVzIiwic3R5bGVzIiwiY2xpY2siLCJlbmFibGVkIiwiZGlzbWlzcyIsIm91dHNpZGVQcmVzc0V2ZW50IiwiYmFzZUludGVyYWN0aW9ucyJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxTQUNFQSxVQUFVLEVBQ1ZDLElBQUksRUFDSkMsTUFBTSxFQUNOQyxLQUFLLEVBQ0xDLElBQUksSUFBSUMsWUFBWSxFQUNwQkMsUUFBUSxFQUNSQyxVQUFVLEVBQ1ZDLFdBQVcsRUFDWEMsT0FBTyxRQUNGLG9CQUFvQjtBQUMzQixT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Y0FBYyIsImZpbGUiOiJjb21wb25lbnRzL1NlbGVjdC91c2VTZWxlY3RTaGVsbC5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiaW1wb3J0IHsgYXV0b1VwZGF0ZSwgZmxpcCwgb2Zmc2V0LCBzaGlmdCwgc2l6ZSBhcyBmbG9hdGluZ1NpemUsIHVzZUNsaWNrLCB1c2VEaXNtaXNzLCB1c2VGbG9hdGluZywgdXNlUm9sZSwgfSBmcm9tICdAZmxvYXRpbmctdWkvcmVhY3QnO1xuaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB1c2VDb250cm9sbGVkU3RhdGUgZnJvbSAnQDFtb25leS9ob29rcy91c2VDb250cm9sbGVkU3RhdGUnO1xuaW1wb3J0IHVzZUV2ZW50Q2FsbGJhY2sgZnJvbSAnQDFtb25leS9ob29rcy91c2VFdmVudENhbGxiYWNrJztcbmltcG9ydCB7IHVzZUZsb2F0aW5nQW5pbWF0aW9uIH0gZnJvbSAnLi4vLi4vaG9va3MvdXNlRmxvYXRpbmdBbmltYXRpb24nO1xuY29uc3QgREVGQVVMVF9QTEFDRU1FTlQgPSAnYm90dG9tLXN0YXJ0JztcbmNvbnN0IERFRkFVTFRfTElTVF9NQVhfSEVJR0hUID0gMzIwO1xuY29uc3QgUEFORUxfVklFV1BPUlRfUEFERElORyA9IDg7XG5leHBvcnQgZnVuY3Rpb24gdXNlU2VsZWN0U2hlbGwob3B0aW9ucykge1xuICAgIGNvbnN0IHsgb3BlbiwgZGVmYXVsdE9wZW4gPSBmYWxzZSwgb25PcGVuQ2hhbmdlLCBkaXNhYmxlZCA9IGZhbHNlLCByZWFkT25seSA9IGZhbHNlLCBwbGFjZW1lbnQgPSBERUZBVUxUX1BMQUNFTUVOVCwgcGFuZWxXaWR0aCwgbGlzdEhlaWdodCwgbGlzdE1heEhlaWdodCA9IGxpc3RIZWlnaHQgPT0gbnVsbCA/IERFRkFVTFRfTElTVF9NQVhfSEVJR0hUIDogJ2F1dG8nLCBhbmltYXRpb24sIHJvbGU6IHJvbGVUeXBlID0gJ3NlbGVjdCcsIG9mZnNldDogb2Zmc2V0UHJvcCA9IDQsIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGludGVyYWN0aXZlID0gIWRpc2FibGVkICYmICFyZWFkT25seTtcbiAgICBjb25zdCBvZmZzZXRJc09iamVjdCA9IHR5cGVvZiBvZmZzZXRQcm9wID09PSAnb2JqZWN0JyAmJiBvZmZzZXRQcm9wICE9PSBudWxsO1xuICAgIGNvbnN0IG9mZnNldE1haW5BeGlzID0gb2Zmc2V0SXNPYmplY3QgPyBvZmZzZXRQcm9wLm1haW5BeGlzIDogb2Zmc2V0UHJvcDtcbiAgICBjb25zdCBvZmZzZXRDcm9zc0F4aXMgPSBvZmZzZXRJc09iamVjdCA/IG9mZnNldFByb3AuY3Jvc3NBeGlzIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IG9mZnNldEFsaWdubWVudEF4aXMgPSBvZmZzZXRJc09iamVjdCA/IG9mZnNldFByb3AuYWxpZ25tZW50QXhpcyA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCBbaXNPcGVuLCBzZXRPcGVuU3RhdGVdID0gdXNlQ29udHJvbGxlZFN0YXRlKGRlZmF1bHRPcGVuLCBvcGVuKTtcbiAgICBjb25zdCBzZXRPcGVuID0gdXNlRXZlbnRDYWxsYmFjaygobmV4dE9wZW4pID0+IHtcbiAgICAgICAgc2V0T3BlblN0YXRlKG5leHRPcGVuKTtcbiAgICAgICAgb25PcGVuQ2hhbmdlID09PSBudWxsIHx8IG9uT3BlbkNoYW5nZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25PcGVuQ2hhbmdlKG5leHRPcGVuKTtcbiAgICB9KTtcbiAgICBjb25zdCB7IHJlZnMsIGZsb2F0aW5nU3R5bGVzLCBjb250ZXh0LCBwbGFjZW1lbnQ6IHJlc29sdmVkUGxhY2VtZW50LCB9ID0gdXNlRmxvYXRpbmcoe1xuICAgICAgICBvcGVuOiBpc09wZW4sXG4gICAgICAgIG9uT3BlbkNoYW5nZTogc2V0T3BlbixcbiAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICB3aGlsZUVsZW1lbnRzTW91bnRlZChyZWZlcmVuY2UsIGZsb2F0aW5nLCB1cGRhdGUpIHtcbiAgICAgICAgICAgIGNvbnN0IGNsZWFudXAgPSBhdXRvVXBkYXRlKHJlZmVyZW5jZSwgZmxvYXRpbmcsIHVwZGF0ZSk7XG4gICAgICAgICAgICAvLyBUaGUgcGFuZWwgY2FuIHN0YXkgY2FwcGVkIHdoaWxlIGEgc2l6ZS9jdXN0b20tcmVuZGVyIGNoYW5nZSByZXNpemVzXG4gICAgICAgICAgICAvLyBpdHMgcm93cywgc28gb2JzZXJ2aW5nIG9ubHkgdGhlIHBhbmVsIHdvdWxkIG1pc3MgdGhlIG5ldyByb3cgaGVpZ2h0LlxuICAgICAgICAgICAgbGV0IG9wdGlvbiA9IG51bGw7XG4gICAgICAgICAgICBjb25zdCBvYnNlcnZlciA9IHR5cGVvZiBSZXNpemVPYnNlcnZlciA9PT0gJ3VuZGVmaW5lZCcgPyBudWxsIDogbmV3IFJlc2l6ZU9ic2VydmVyKHVwZGF0ZSk7XG4gICAgICAgICAgICBjb25zdCBvYnNlcnZlT3B0aW9uID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5leHRPcHRpb24gPSBmbG9hdGluZy5xdWVyeVNlbGVjdG9yKCdbcm9sZT1cIm9wdGlvblwiXScpO1xuICAgICAgICAgICAgICAgIGlmIChuZXh0T3B0aW9uID09PSBvcHRpb24pXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICBvYnNlcnZlciA9PT0gbnVsbCB8fCBvYnNlcnZlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogb2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgICAgIG9wdGlvbiA9IG5leHRPcHRpb247XG4gICAgICAgICAgICAgICAgaWYgKG9wdGlvbilcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIgPT09IG51bGwgfHwgb2JzZXJ2ZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9ic2VydmVyLm9ic2VydmUob3B0aW9uKTtcbiAgICAgICAgICAgICAgICB1cGRhdGUoKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBvYnNlcnZlT3B0aW9uKCk7XG4gICAgICAgICAgICAvLyBGaWx0ZXJpbmcvbG9hZGluZyBjYW4gcmVwbGFjZSB0aGUgZmlyc3Qgb3B0aW9uIHdpdGhvdXQgcmVzaXppbmcgdGhlIHBhbmVsLlxuICAgICAgICAgICAgY29uc3QgbXV0YXRpb25zID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIob2JzZXJ2ZU9wdGlvbik7XG4gICAgICAgICAgICBtdXRhdGlvbnMub2JzZXJ2ZShmbG9hdGluZywgeyBjaGlsZExpc3Q6IHRydWUsIHN1YnRyZWU6IHRydWUgfSk7XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNsZWFudXAoKTtcbiAgICAgICAgICAgICAgICBvYnNlcnZlciA9PT0gbnVsbCB8fCBvYnNlcnZlciA9PT0gdm9pZCAwID8gdm9pZCAwIDogb2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgICAgIG11dGF0aW9ucy5kaXNjb25uZWN0KCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgICAgICB0cmFuc2Zvcm06IGZhbHNlLFxuICAgICAgICBtaWRkbGV3YXJlOiBbXG4gICAgICAgICAgICBvZmZzZXQoe1xuICAgICAgICAgICAgICAgIG1haW5BeGlzOiBvZmZzZXRNYWluQXhpcyxcbiAgICAgICAgICAgICAgICBjcm9zc0F4aXM6IG9mZnNldENyb3NzQXhpcyxcbiAgICAgICAgICAgICAgICBhbGlnbm1lbnRBeGlzOiBvZmZzZXRBbGlnbm1lbnRBeGlzLFxuICAgICAgICAgICAgfSwgW29mZnNldE1haW5BeGlzLCBvZmZzZXRDcm9zc0F4aXMsIG9mZnNldEFsaWdubWVudEF4aXNdKSxcbiAgICAgICAgICAgIGZsaXAoeyBwYWRkaW5nOiBQQU5FTF9WSUVXUE9SVF9QQURESU5HIH0pLFxuICAgICAgICAgICAgc2hpZnQoeyBwYWRkaW5nOiBQQU5FTF9WSUVXUE9SVF9QQURESU5HIH0pLFxuICAgICAgICAgICAgZmxvYXRpbmdTaXplKHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBQQU5FTF9WSUVXUE9SVF9QQURESU5HLFxuICAgICAgICAgICAgICAgIGFwcGx5KHsgcmVjdHMsIGVsZW1lbnRzLCBhdmFpbGFibGVIZWlnaHQgfSkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXNvbHZlZFdpZHRoID0gcGFuZWxXaWR0aCA9PSBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGAke3JlY3RzLnJlZmVyZW5jZS53aWR0aH1weGBcbiAgICAgICAgICAgICAgICAgICAgICAgIDogdHlwZW9mIHBhbmVsV2lkdGggPT09ICdudW1iZXInXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgJHtwYW5lbFdpZHRofXB4YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogcGFuZWxXaWR0aDtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudHMuZmxvYXRpbmcuc3R5bGUud2lkdGggPSByZXNvbHZlZFdpZHRoO1xuICAgICAgICAgICAgICAgICAgICAvLyBBdXRvIHBhbmVscyBsZWF2ZSBvbmUgb3B0aW9uIG9mIGJyZWF0aGluZyByb29tIGF0IHRoZSBvdXRlciBlZGdlLlxuICAgICAgICAgICAgICAgICAgICAvLyBNZWFzdXJlIGFmdGVyIHNldHRpbmcgd2lkdGggc28gd3JhcHBlZCBsYWJlbHMgdXNlIHRoZWlyIHJlYWwgaGVpZ2h0LlxuICAgICAgICAgICAgICAgICAgICAvLyBDdXN0b20vZW1wdHkgcGFuZWxzIHdpdGhvdXQgYW4gb3B0aW9uIGhhdmUgbm8gcm93IHRvIHJlc2VydmUuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc2VydmVkSGVpZ2h0ID0gbGlzdE1heEhlaWdodCA9PT0gJ2F1dG8nICYmIGxpc3RIZWlnaHQgPT0gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgPyAoX2IgPSAoX2EgPSBlbGVtZW50cy5mbG9hdGluZy5xdWVyeVNlbGVjdG9yKCdbcm9sZT1cIm9wdGlvblwiXScpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Eub2Zmc2V0SGVpZ2h0KSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiAwXG4gICAgICAgICAgICAgICAgICAgICAgICA6IDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG5leHRNYXhIZWlnaHQgPSBNYXRoLm1heCgwLCBsaXN0TWF4SGVpZ2h0ID09PSAnYXV0bydcbiAgICAgICAgICAgICAgICAgICAgICAgID8gYXZhaWxhYmxlSGVpZ2h0IC0gcmVzZXJ2ZWRIZWlnaHRcbiAgICAgICAgICAgICAgICAgICAgICAgIDogTWF0aC5taW4obGlzdE1heEhlaWdodCwgYXZhaWxhYmxlSGVpZ2h0KSk7XG4gICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oZWxlbWVudHMuZmxvYXRpbmcuc3R5bGUsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heEhlaWdodDogYCR7bmV4dE1heEhlaWdodH1weGAsXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBDbGVhciBhIHByZXZpb3VzIGZpeGVkIGhlaWdodCB3aGVuIHByb3BzIHN3aXRjaCBiYWNrIHRvIGF1dG8uXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGxpc3RIZWlnaHQgPT0gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGAke01hdGgubWF4KDAsIE1hdGgubWluKGxpc3RIZWlnaHQsIG5leHRNYXhIZWlnaHQpKX1weGAsXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LCBbcGFuZWxXaWR0aCwgbGlzdE1heEhlaWdodCwgbGlzdEhlaWdodF0pLFxuICAgICAgICBdLFxuICAgIH0pO1xuICAgIGNvbnN0IHJlc29sdmVkQW5pbWF0aW9uID0gdXNlTWVtbygoKSA9PiBhbmltYXRpb24gPT09IGZhbHNlXG4gICAgICAgID8gZmFsc2VcbiAgICAgICAgOiBPYmplY3QuYXNzaWduKHsga2luZDogJ2hlaWdodCcgfSwgKGFuaW1hdGlvbiAhPT0gbnVsbCAmJiBhbmltYXRpb24gIT09IHZvaWQgMCA/IGFuaW1hdGlvbiA6IHt9KSksIFthbmltYXRpb25dKTtcbiAgICBjb25zdCB7IGlzTW91bnRlZCwgc3R5bGVzOiB0cmFuc2l0aW9uU3R5bGVzIH0gPSB1c2VGbG9hdGluZ0FuaW1hdGlvbihjb250ZXh0LCByZXNvbHZlZFBsYWNlbWVudCwgcmVzb2x2ZWRBbmltYXRpb24pO1xuICAgIGNvbnN0IGNsaWNrID0gdXNlQ2xpY2soY29udGV4dCwgeyBlbmFibGVkOiBpbnRlcmFjdGl2ZSB9KTtcbiAgICBjb25zdCBkaXNtaXNzID0gdXNlRGlzbWlzcyhjb250ZXh0LCB7XG4gICAgICAgIGVuYWJsZWQ6IGludGVyYWN0aXZlLFxuICAgICAgICBvdXRzaWRlUHJlc3NFdmVudDogJ21vdXNlZG93bicsXG4gICAgfSk7XG4gICAgY29uc3Qgcm9sZSA9IHVzZVJvbGUoY29udGV4dCwgeyByb2xlOiByb2xlVHlwZSB9KTtcbiAgICBjb25zdCBiYXNlSW50ZXJhY3Rpb25zID0gW2NsaWNrLCBkaXNtaXNzLCByb2xlXTtcbiAgICByZXR1cm4ge1xuICAgICAgICBpc09wZW4sXG4gICAgICAgIHNldE9wZW4sXG4gICAgICAgIHJlZnMsXG4gICAgICAgIGNvbnRleHQsXG4gICAgICAgIHBsYWNlbWVudDogcmVzb2x2ZWRQbGFjZW1lbnQsXG4gICAgICAgIGZsb2F0aW5nU3R5bGVzLFxuICAgICAgICB0cmFuc2l0aW9uU3R5bGVzLFxuICAgICAgICBpc01vdW50ZWQsXG4gICAgICAgIGJhc2VJbnRlcmFjdGlvbnMsXG4gICAgfTtcbn1cbmV4cG9ydCBkZWZhdWx0IHVzZVNlbGVjdFNoZWxsOyJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|