botframework-webchat-component
Version:
React component of botframework-webchat
152 lines (150 loc) • 25 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = createSuggestedActionStyle;
/* eslint no-magic-numbers: "off" */
function createSuggestedActionStyle(_ref) {
var accent = _ref.accent,
paddingRegular = _ref.paddingRegular,
paddingWide = _ref.paddingWide,
primaryFont = _ref.primaryFont,
suggestedActionBorderRadius = _ref.suggestedActionBorderRadius,
suggestedActionBackgroundColor = _ref.suggestedActionBackgroundColor,
suggestedActionBorderColor = _ref.suggestedActionBorderColor,
suggestedActionBorderStyle = _ref.suggestedActionBorderStyle,
suggestedActionBorderWidth = _ref.suggestedActionBorderWidth,
suggestedActionTextColor = _ref.suggestedActionTextColor,
suggestedActionBackgroundColorOnActive = _ref.suggestedActionBackgroundColorOnActive,
suggestedActionBorderColorOnActive = _ref.suggestedActionBorderColorOnActive,
suggestedActionBorderStyleOnActive = _ref.suggestedActionBorderStyleOnActive,
suggestedActionBorderWidthOnActive = _ref.suggestedActionBorderWidthOnActive,
suggestedActionTextColorOnActive = _ref.suggestedActionTextColorOnActive,
suggestedActionBackgroundColorOnDisabled = _ref.suggestedActionBackgroundColorOnDisabled,
suggestedActionBorderColorOnDisabled = _ref.suggestedActionBorderColorOnDisabled,
suggestedActionBorderStyleOnDisabled = _ref.suggestedActionBorderStyleOnDisabled,
suggestedActionBorderWidthOnDisabled = _ref.suggestedActionBorderWidthOnDisabled,
suggestedActionTextColorOnDisabled = _ref.suggestedActionTextColorOnDisabled,
suggestedActionBackgroundColorOnFocus = _ref.suggestedActionBackgroundColorOnFocus,
suggestedActionBorderColorOnFocus = _ref.suggestedActionBorderColorOnFocus,
suggestedActionBorderStyleOnFocus = _ref.suggestedActionBorderStyleOnFocus,
suggestedActionBorderWidthOnFocus = _ref.suggestedActionBorderWidthOnFocus,
suggestedActionTextColorOnFocus = _ref.suggestedActionTextColorOnFocus,
suggestedActionBackgroundColorOnHover = _ref.suggestedActionBackgroundColorOnHover,
suggestedActionBorderColorOnHover = _ref.suggestedActionBorderColorOnHover,
suggestedActionBorderStyleOnHover = _ref.suggestedActionBorderStyleOnHover,
suggestedActionBorderWidthOnHover = _ref.suggestedActionBorderWidthOnHover,
suggestedActionTextColorOnHover = _ref.suggestedActionTextColorOnHover,
suggestedActionKeyboardFocusIndicatorBorderColor = _ref.suggestedActionKeyboardFocusIndicatorBorderColor,
suggestedActionKeyboardFocusIndicatorBorderRadius = _ref.suggestedActionKeyboardFocusIndicatorBorderRadius,
suggestedActionKeyboardFocusIndicatorBorderStyle = _ref.suggestedActionKeyboardFocusIndicatorBorderStyle,
suggestedActionKeyboardFocusIndicatorBorderWidth = _ref.suggestedActionKeyboardFocusIndicatorBorderWidth,
suggestedActionKeyboardFocusIndicatorInset = _ref.suggestedActionKeyboardFocusIndicatorInset,
suggestedActionHeight = _ref.suggestedActionHeight,
suggestedActionImageHeight = _ref.suggestedActionImageHeight,
suggestedActionsStackedLayoutButtonMaxHeight = _ref.suggestedActionsStackedLayoutButtonMaxHeight,
subtle = _ref.subtle,
suggestedActionActiveBackground = _ref.suggestedActionActiveBackground,
suggestedActionBackground = _ref.suggestedActionBackground,
suggestedActionDisabledBackground = _ref.suggestedActionDisabledBackground,
suggestedActionFocusBackground = _ref.suggestedActionFocusBackground,
suggestedActionHoverBackground = _ref.suggestedActionHoverBackground;
return {
'&.webchat__suggested-action': {
alignItems: 'center',
background: suggestedActionBackground,
// Deprecated as of 4.15.0. Remove on or after 2021-09-16.
backgroundColor: suggestedActionBackgroundColor,
borderColor: suggestedActionBorderColor || accent,
borderRadius: suggestedActionBorderRadius,
borderStyle: suggestedActionBorderStyle,
borderWidth: suggestedActionBorderWidth,
color: suggestedActionTextColor || accent,
fontFamily: primaryFont,
fontSize: 'inherit',
height: suggestedActionHeight,
justifyContent: 'center',
maxWidth: '100%',
outline: 0,
paddingLeft: paddingWide,
paddingRight: paddingWide,
position: 'relative',
whiteSpace: 'nowrap',
width: '100%',
// Order of style preferences (based on effort of user gesture): disabled > active > hover > focus.
// Keyboard focus indicator styles applied by :focus-visible do not conflict with :active/:hover/:focus, so it is not included here.
'&:disabled, &[aria-disabled="true"]': {
background: suggestedActionDisabledBackground,
backgroundColor: suggestedActionBackgroundColorOnDisabled,
borderColor: suggestedActionBorderColorOnDisabled,
borderStyle: suggestedActionBorderStyleOnDisabled,
borderWidth: suggestedActionBorderWidthOnDisabled,
color: suggestedActionTextColorOnDisabled || subtle
},
'&:not(:disabled):not([aria-disabled="true"])': {
'&:active': {
background: suggestedActionActiveBackground,
backgroundColor: suggestedActionBackgroundColorOnActive,
borderColor: suggestedActionBorderColorOnActive,
borderStyle: suggestedActionBorderStyleOnActive,
borderWidth: suggestedActionBorderWidthOnActive,
color: suggestedActionTextColorOnActive
},
'&:not(:active)': {
'&:hover': {
background: suggestedActionHoverBackground,
backgroundColor: suggestedActionBackgroundColorOnHover,
borderColor: suggestedActionBorderColorOnHover,
borderStyle: suggestedActionBorderStyleOnHover,
borderWidth: suggestedActionBorderWidthOnHover,
color: suggestedActionTextColorOnHover
},
'&:not(:hover)': {
'&:focus': {
background: suggestedActionFocusBackground,
backgroundColor: suggestedActionBackgroundColorOnFocus,
borderColor: suggestedActionBorderColorOnFocus,
borderStyle: suggestedActionBorderStyleOnFocus,
borderWidth: suggestedActionBorderWidthOnFocus,
color: suggestedActionTextColorOnFocus
}
}
}
},
// On unsupported browser, :focus-visible and :not(:focus-visible) is always false.
// And it will turn the whole CSS selector ":unsupported, .truthy" to false.
'&:not(:focus-visible) .webchat__suggested-action__keyboard-focus-indicator': {
display: 'none'
},
'&:not(.webchat__suggested-action--focus-visible) .webchat__suggested-action__keyboard-focus-indicator': {
display: 'none'
},
'&:not(.webchat__suggested-action--rtl) .webchat__suggested-action__image + .webchat__suggested-action__text': {
paddingLeft: paddingRegular
},
'&.webchat__suggested-action--rtl .webchat__suggested-action__image + .webchat__suggested-action__text': {
paddingRight: paddingRegular
},
'&.webchat__suggested-action--wrapping': {
height: 'auto',
maxHeight: suggestedActionsStackedLayoutButtonMaxHeight || '100%',
minHeight: typeof suggestedActionsStackedLayoutButtonMaxHeight === 'number' && typeof suggestedActionHeight === 'number' ? Math.min(suggestedActionsStackedLayoutButtonMaxHeight, suggestedActionHeight) : suggestedActionHeight
},
'& .webchat__suggested-action__image': {
height: suggestedActionImageHeight
},
'& .webchat__suggested-action__keyboard-focus-indicator': {
borderColor: suggestedActionKeyboardFocusIndicatorBorderColor,
borderRadius: suggestedActionKeyboardFocusIndicatorBorderRadius,
borderStyle: suggestedActionKeyboardFocusIndicatorBorderStyle,
borderWidth: suggestedActionKeyboardFocusIndicatorBorderWidth,
bottom: suggestedActionKeyboardFocusIndicatorInset,
left: suggestedActionKeyboardFocusIndicatorInset,
position: 'absolute',
right: suggestedActionKeyboardFocusIndicatorInset,
top: suggestedActionKeyboardFocusIndicatorInset
}
}
};
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVTdWdnZXN0ZWRBY3Rpb25TdHlsZSIsIl9yZWYiLCJhY2NlbnQiLCJwYWRkaW5nUmVndWxhciIsInBhZGRpbmdXaWRlIiwicHJpbWFyeUZvbnQiLCJzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJSYWRpdXMiLCJzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3IiLCJzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJDb2xvciIsInN1Z2dlc3RlZEFjdGlvbkJvcmRlclN0eWxlIiwic3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGgiLCJzdWdnZXN0ZWRBY3Rpb25UZXh0Q29sb3IiLCJzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkFjdGl2ZSIsInN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25BY3RpdmUiLCJzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZU9uQWN0aXZlIiwic3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkFjdGl2ZSIsInN1Z2dlc3RlZEFjdGlvblRleHRDb2xvck9uQWN0aXZlIiwic3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25EaXNhYmxlZCIsInN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25EaXNhYmxlZCIsInN1Z2dlc3RlZEFjdGlvbkJvcmRlclN0eWxlT25EaXNhYmxlZCIsInN1Z2dlc3RlZEFjdGlvbkJvcmRlcldpZHRoT25EaXNhYmxlZCIsInN1Z2dlc3RlZEFjdGlvblRleHRDb2xvck9uRGlzYWJsZWQiLCJzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkZvY3VzIiwic3VnZ2VzdGVkQWN0aW9uQm9yZGVyQ29sb3JPbkZvY3VzIiwic3VnZ2VzdGVkQWN0aW9uQm9yZGVyU3R5bGVPbkZvY3VzIiwic3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkZvY3VzIiwic3VnZ2VzdGVkQWN0aW9uVGV4dENvbG9yT25Gb2N1cyIsInN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uSG92ZXIiLCJzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJDb2xvck9uSG92ZXIiLCJzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZU9uSG92ZXIiLCJzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJXaWR0aE9uSG92ZXIiLCJzdWdnZXN0ZWRBY3Rpb25UZXh0Q29sb3JPbkhvdmVyIiwic3VnZ2VzdGVkQWN0aW9uS2V5Ym9hcmRGb2N1c0luZGljYXRvckJvcmRlckNvbG9yIiwic3VnZ2VzdGVkQWN0aW9uS2V5Ym9hcmRGb2N1c0luZGljYXRvckJvcmRlclJhZGl1cyIsInN1Z2dlc3RlZEFjdGlvbktleWJvYXJkRm9jdXNJbmRpY2F0b3JCb3JkZXJTdHlsZSIsInN1Z2dlc3RlZEFjdGlvbktleWJvYXJkRm9jdXNJbmRpY2F0b3JCb3JkZXJXaWR0aCIsInN1Z2dlc3RlZEFjdGlvbktleWJvYXJkRm9jdXNJbmRpY2F0b3JJbnNldCIsInN1Z2dlc3RlZEFjdGlvbkhlaWdodCIsInN1Z2dlc3RlZEFjdGlvbkltYWdlSGVpZ2h0Iiwic3VnZ2VzdGVkQWN0aW9uc1N0YWNrZWRMYXlvdXRCdXR0b25NYXhIZWlnaHQiLCJzdWJ0bGUiLCJzdWdnZXN0ZWRBY3Rpb25BY3RpdmVCYWNrZ3JvdW5kIiwic3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZCIsInN1Z2dlc3RlZEFjdGlvbkRpc2FibGVkQmFja2dyb3VuZCIsInN1Z2dlc3RlZEFjdGlvbkZvY3VzQmFja2dyb3VuZCIsInN1Z2dlc3RlZEFjdGlvbkhvdmVyQmFja2dyb3VuZCIsImFsaWduSXRlbXMiLCJiYWNrZ3JvdW5kIiwiYmFja2dyb3VuZENvbG9yIiwiYm9yZGVyQ29sb3IiLCJib3JkZXJSYWRpdXMiLCJib3JkZXJTdHlsZSIsImJvcmRlcldpZHRoIiwiY29sb3IiLCJmb250RmFtaWx5IiwiZm9udFNpemUiLCJoZWlnaHQiLCJqdXN0aWZ5Q29udGVudCIsIm1heFdpZHRoIiwib3V0bGluZSIsInBhZGRpbmdMZWZ0IiwicGFkZGluZ1JpZ2h0IiwicG9zaXRpb24iLCJ3aGl0ZVNwYWNlIiwid2lkdGgiLCJkaXNwbGF5IiwibWF4SGVpZ2h0IiwibWluSGVpZ2h0IiwiTWF0aCIsIm1pbiIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsInRvcCJdLCJzb3VyY2VSb290IjoiY29tcG9uZW50Oi8vLyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1N0eWxlcy9TdHlsZVNldC9TdWdnZXN0ZWRBY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50IG5vLW1hZ2ljLW51bWJlcnM6IFwib2ZmXCIgKi9cblxuaW1wb3J0IHsgU3RyaWN0U3R5bGVPcHRpb25zIH0gZnJvbSAnYm90ZnJhbWV3b3JrLXdlYmNoYXQtYXBpJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlU3VnZ2VzdGVkQWN0aW9uU3R5bGUoe1xuICBhY2NlbnQsXG4gIHBhZGRpbmdSZWd1bGFyLFxuICBwYWRkaW5nV2lkZSxcbiAgcHJpbWFyeUZvbnQsXG4gIHN1Z2dlc3RlZEFjdGlvbkJvcmRlclJhZGl1cyxcblxuICBzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3IsXG4gIHN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yLFxuICBzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZSxcbiAgc3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGgsXG4gIHN1Z2dlc3RlZEFjdGlvblRleHRDb2xvcixcblxuICBzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkFjdGl2ZSxcbiAgc3VnZ2VzdGVkQWN0aW9uQm9yZGVyQ29sb3JPbkFjdGl2ZSxcbiAgc3VnZ2VzdGVkQWN0aW9uQm9yZGVyU3R5bGVPbkFjdGl2ZSxcbiAgc3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkFjdGl2ZSxcbiAgc3VnZ2VzdGVkQWN0aW9uVGV4dENvbG9yT25BY3RpdmUsXG5cbiAgc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25EaXNhYmxlZCxcbiAgc3VnZ2VzdGVkQWN0aW9uQm9yZGVyQ29sb3JPbkRpc2FibGVkLFxuICBzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZU9uRGlzYWJsZWQsXG4gIHN1Z2dlc3RlZEFjdGlvbkJvcmRlcldpZHRoT25EaXNhYmxlZCxcbiAgc3VnZ2VzdGVkQWN0aW9uVGV4dENvbG9yT25EaXNhYmxlZCxcblxuICBzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkZvY3VzLFxuICBzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJDb2xvck9uRm9jdXMsXG4gIHN1Z2dlc3RlZEFjdGlvbkJvcmRlclN0eWxlT25Gb2N1cyxcbiAgc3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkZvY3VzLFxuICBzdWdnZXN0ZWRBY3Rpb25UZXh0Q29sb3JPbkZvY3VzLFxuXG4gIHN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uSG92ZXIsXG4gIHN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25Ib3ZlcixcbiAgc3VnZ2VzdGVkQWN0aW9uQm9yZGVyU3R5bGVPbkhvdmVyLFxuICBzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJXaWR0aE9uSG92ZXIsXG4gIHN1Z2dlc3RlZEFjdGlvblRleHRDb2xvck9uSG92ZXIsXG5cbiAgc3VnZ2VzdGVkQWN0aW9uS2V5Ym9hcmRGb2N1c0luZGljYXRvckJvcmRlckNvbG9yLFxuICBzdWdnZXN0ZWRBY3Rpb25LZXlib2FyZEZvY3VzSW5kaWNhdG9yQm9yZGVyUmFkaXVzLFxuICBzdWdnZXN0ZWRBY3Rpb25LZXlib2FyZEZvY3VzSW5kaWNhdG9yQm9yZGVyU3R5bGUsXG4gIHN1Z2dlc3RlZEFjdGlvbktleWJvYXJkRm9jdXNJbmRpY2F0b3JCb3JkZXJXaWR0aCxcbiAgc3VnZ2VzdGVkQWN0aW9uS2V5Ym9hcmRGb2N1c0luZGljYXRvckluc2V0LFxuXG4gIHN1Z2dlc3RlZEFjdGlvbkhlaWdodCxcbiAgc3VnZ2VzdGVkQWN0aW9uSW1hZ2VIZWlnaHQsXG4gIHN1Z2dlc3RlZEFjdGlvbnNTdGFja2VkTGF5b3V0QnV0dG9uTWF4SGVpZ2h0LFxuICBzdWJ0bGUsXG5cbiAgLy8gRGVwcmVjYXRlZFxuICBzdWdnZXN0ZWRBY3Rpb25BY3RpdmVCYWNrZ3JvdW5kLFxuICBzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kLFxuICBzdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJhY2tncm91bmQsXG4gIHN1Z2dlc3RlZEFjdGlvbkZvY3VzQmFja2dyb3VuZCxcbiAgc3VnZ2VzdGVkQWN0aW9uSG92ZXJCYWNrZ3JvdW5kXG59OiBTdHJpY3RTdHlsZU9wdGlvbnMpIHtcbiAgcmV0dXJuIHtcbiAgICAnJi53ZWJjaGF0X19zdWdnZXN0ZWQtYWN0aW9uJzoge1xuICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICBiYWNrZ3JvdW5kOiBzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kLCAvLyBEZXByZWNhdGVkIGFzIG9mIDQuMTUuMC4gUmVtb3ZlIG9uIG9yIGFmdGVyIDIwMjEtMDktMTYuXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IHN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvcixcbiAgICAgIGJvcmRlckNvbG9yOiBzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJDb2xvciB8fCBhY2NlbnQsXG4gICAgICBib3JkZXJSYWRpdXM6IHN1Z2dlc3RlZEFjdGlvbkJvcmRlclJhZGl1cyxcbiAgICAgIGJvcmRlclN0eWxlOiBzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJTdHlsZSxcbiAgICAgIGJvcmRlcldpZHRoOiBzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJXaWR0aCxcbiAgICAgIGNvbG9yOiBzdWdnZXN0ZWRBY3Rpb25UZXh0Q29sb3IgfHwgYWNjZW50LFxuICAgICAgZm9udEZhbWlseTogcHJpbWFyeUZvbnQsXG4gICAgICBmb250U2l6ZTogJ2luaGVyaXQnLFxuICAgICAgaGVpZ2h0OiBzdWdnZXN0ZWRBY3Rpb25IZWlnaHQsXG4gICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICBtYXhXaWR0aDogJzEwMCUnLFxuICAgICAgb3V0bGluZTogMCxcbiAgICAgIHBhZGRpbmdMZWZ0OiBwYWRkaW5nV2lkZSxcbiAgICAgIHBhZGRpbmdSaWdodDogcGFkZGluZ1dpZGUsXG4gICAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcbiAgICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxuICAgICAgd2lkdGg6ICcxMDAlJyxcblxuICAgICAgLy8gT3JkZXIgb2Ygc3R5bGUgcHJlZmVyZW5jZXMgKGJhc2VkIG9uIGVmZm9ydCBvZiB1c2VyIGdlc3R1cmUpOiBkaXNhYmxlZCA+IGFjdGl2ZSA+IGhvdmVyID4gZm9jdXMuXG4gICAgICAvLyBLZXlib2FyZCBmb2N1cyBpbmRpY2F0b3Igc3R5bGVzIGFwcGxpZWQgYnkgOmZvY3VzLXZpc2libGUgZG8gbm90IGNvbmZsaWN0IHdpdGggOmFjdGl2ZS86aG92ZXIvOmZvY3VzLCBzbyBpdCBpcyBub3QgaW5jbHVkZWQgaGVyZS5cbiAgICAgICcmOmRpc2FibGVkLCAmW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdJzoge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzdWdnZXN0ZWRBY3Rpb25EaXNhYmxlZEJhY2tncm91bmQsXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25EaXNhYmxlZCxcbiAgICAgICAgYm9yZGVyQ29sb3I6IHN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25EaXNhYmxlZCxcbiAgICAgICAgYm9yZGVyU3R5bGU6IHN1Z2dlc3RlZEFjdGlvbkJvcmRlclN0eWxlT25EaXNhYmxlZCxcbiAgICAgICAgYm9yZGVyV2lkdGg6IHN1Z2dlc3RlZEFjdGlvbkJvcmRlcldpZHRoT25EaXNhYmxlZCxcbiAgICAgICAgY29sb3I6IHN1Z2dlc3RlZEFjdGlvblRleHRDb2xvck9uRGlzYWJsZWQgfHwgc3VidGxlXG4gICAgICB9LFxuXG4gICAgICAnJjpub3QoOmRpc2FibGVkKTpub3QoW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdKSc6IHtcbiAgICAgICAgJyY6YWN0aXZlJzoge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHN1Z2dlc3RlZEFjdGlvbkFjdGl2ZUJhY2tncm91bmQsXG4gICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBzdWdnZXN0ZWRBY3Rpb25CYWNrZ3JvdW5kQ29sb3JPbkFjdGl2ZSxcbiAgICAgICAgICBib3JkZXJDb2xvcjogc3VnZ2VzdGVkQWN0aW9uQm9yZGVyQ29sb3JPbkFjdGl2ZSxcbiAgICAgICAgICBib3JkZXJTdHlsZTogc3VnZ2VzdGVkQWN0aW9uQm9yZGVyU3R5bGVPbkFjdGl2ZSxcbiAgICAgICAgICBib3JkZXJXaWR0aDogc3VnZ2VzdGVkQWN0aW9uQm9yZGVyV2lkdGhPbkFjdGl2ZSxcbiAgICAgICAgICBjb2xvcjogc3VnZ2VzdGVkQWN0aW9uVGV4dENvbG9yT25BY3RpdmVcbiAgICAgICAgfSxcblxuICAgICAgICAnJjpub3QoOmFjdGl2ZSknOiB7XG4gICAgICAgICAgJyY6aG92ZXInOiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBzdWdnZXN0ZWRBY3Rpb25Ib3ZlckJhY2tncm91bmQsXG4gICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHN1Z2dlc3RlZEFjdGlvbkJhY2tncm91bmRDb2xvck9uSG92ZXIsXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogc3VnZ2VzdGVkQWN0aW9uQm9yZGVyQ29sb3JPbkhvdmVyLFxuICAgICAgICAgICAgYm9yZGVyU3R5bGU6IHN1Z2dlc3RlZEFjdGlvbkJvcmRlclN0eWxlT25Ib3ZlcixcbiAgICAgICAgICAgIGJvcmRlcldpZHRoOiBzdWdnZXN0ZWRBY3Rpb25Cb3JkZXJXaWR0aE9uSG92ZXIsXG4gICAgICAgICAgICBjb2xvcjogc3VnZ2VzdGVkQWN0aW9uVGV4dENvbG9yT25Ib3ZlclxuICAgICAgICAgIH0sXG5cbiAgICAgICAgICAnJjpub3QoOmhvdmVyKSc6IHtcbiAgICAgICAgICAgICcmOmZvY3VzJzoge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBzdWdnZXN0ZWRBY3Rpb25Gb2N1c0JhY2tncm91bmQsXG4gICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogc3VnZ2VzdGVkQWN0aW9uQmFja2dyb3VuZENvbG9yT25Gb2N1cyxcbiAgICAgICAgICAgICAgYm9yZGVyQ29sb3I6IHN1Z2dlc3RlZEFjdGlvbkJvcmRlckNvbG9yT25Gb2N1cyxcbiAgICAgICAgICAgICAgYm9yZGVyU3R5bGU6IHN1Z2dlc3RlZEFjdGlvbkJvcmRlclN0eWxlT25Gb2N1cyxcbiAgICAgICAgICAgICAgYm9yZGVyV2lkdGg6IHN1Z2dlc3RlZEFjdGlvbkJvcmRlcldpZHRoT25Gb2N1cyxcbiAgICAgICAgICAgICAgY29sb3I6IHN1Z2dlc3RlZEFjdGlvblRleHRDb2xvck9uRm9jdXNcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG5cbiAgICAgIC8vIE9uIHVuc3VwcG9ydGVkIGJyb3dzZXIsIDpmb2N1cy12aXNpYmxlIGFuZCA6bm90KDpmb2N1cy12aXNpYmxlKSBpcyBhbHdheXMgZmFsc2UuXG4gICAgICAvLyBBbmQgaXQgd2lsbCB0dXJuIHRoZSB3aG9sZSBDU1Mgc2VsZWN0b3IgXCI6dW5zdXBwb3J0ZWQsIC50cnV0aHlcIiB0byBmYWxzZS5cbiAgICAgICcmOm5vdCg6Zm9jdXMtdmlzaWJsZSkgLndlYmNoYXRfX3N1Z2dlc3RlZC1hY3Rpb25fX2tleWJvYXJkLWZvY3VzLWluZGljYXRvcic6IHtcbiAgICAgICAgZGlzcGxheTogJ25vbmUnXG4gICAgICB9LFxuXG4gICAgICAnJjpub3QoLndlYmNoYXRfX3N1Z2dlc3RlZC1hY3Rpb24tLWZvY3VzLXZpc2libGUpIC53ZWJjaGF0X19zdWdnZXN0ZWQtYWN0aW9uX19rZXlib2FyZC1mb2N1cy1pbmRpY2F0b3InOiB7XG4gICAgICAgIGRpc3BsYXk6ICdub25lJ1xuICAgICAgfSxcblxuICAgICAgJyY6bm90KC53ZWJjaGF0X19zdWdnZXN0ZWQtYWN0aW9uLS1ydGwpIC53ZWJjaGF0X19zdWdnZXN0ZWQtYWN0aW9uX19pbWFnZSArIC53ZWJjaGF0X19zdWdnZXN0ZWQtYWN0aW9uX190ZXh0Jzoge1xuICAgICAgICBwYWRkaW5nTGVmdDogcGFkZGluZ1JlZ3VsYXJcbiAgICAgIH0sXG5cbiAgICAgICcmLndlYmNoYXRfX3N1Z2dlc3RlZC1hY3Rpb24tLXJ0bCAud2ViY2hhdF9fc3VnZ2VzdGVkLWFjdGlvbl9faW1hZ2UgKyAud2ViY2hhdF9fc3VnZ2VzdGVkLWFjdGlvbl9fdGV4dCc6IHtcbiAgICAgICAgcGFkZGluZ1JpZ2h0OiBwYWRkaW5nUmVndWxhclxuICAgICAgfSxcblxuICAgICAgJyYud2ViY2hhdF9fc3VnZ2VzdGVkLWFjdGlvbi0td3JhcHBpbmcnOiB7XG4gICAgICAgIGhlaWdodDogJ2F1dG8nLFxuICAgICAgICBtYXhIZWlnaHQ6IHN1Z2dlc3RlZEFjdGlvbnNTdGFja2VkTGF5b3V0QnV0dG9uTWF4SGVpZ2h0IHx8ICcxMDAlJyxcbiAgICAgICAgbWluSGVpZ2h0OlxuICAgICAgICAgIHR5cGVvZiBzdWdnZXN0ZWRBY3Rpb25zU3RhY2tlZExheW91dEJ1dHRvbk1heEhlaWdodCA9PT0gJ251bWJlcicgJiYgdHlwZW9mIHN1Z2dlc3RlZEFjdGlvbkhlaWdodCA9PT0gJ251bWJlcidcbiAgICAgICAgICAgID8gTWF0aC5taW4oc3VnZ2VzdGVkQWN0aW9uc1N0YWNrZWRMYXlvdXRCdXR0b25NYXhIZWlnaHQsIHN1Z2dlc3RlZEFjdGlvbkhlaWdodClcbiAgICAgICAgICAgIDogc3VnZ2VzdGVkQWN0aW9uSGVpZ2h0XG4gICAgICB9LFxuXG4gICAgICAnJiAud2ViY2hhdF9fc3VnZ2VzdGVkLWFjdGlvbl9faW1hZ2UnOiB7XG4gICAgICAgIGhlaWdodDogc3VnZ2VzdGVkQWN0aW9uSW1hZ2VIZWlnaHRcbiAgICAgIH0sXG5cbiAgICAgICcmIC53ZWJjaGF0X19zdWdnZXN0ZWQtYWN0aW9uX19rZXlib2FyZC1mb2N1cy1pbmRpY2F0b3InOiB7XG4gICAgICAgIGJvcmRlckNvbG9yOiBzdWdnZXN0ZWRBY3Rpb25LZXlib2FyZEZvY3VzSW5kaWNhdG9yQm9yZGVyQ29sb3IsXG4gICAgICAgIGJvcmRlclJhZGl1czogc3VnZ2VzdGVkQWN0aW9uS2V5Ym9hcmRGb2N1c0luZGljYXRvckJvcmRlclJhZGl1cyxcbiAgICAgICAgYm9yZGVyU3R5bGU6IHN1Z2dlc3RlZEFjdGlvbktleWJvYXJkRm9jdXNJbmRpY2F0b3JCb3JkZXJTdHlsZSxcbiAgICAgICAgYm9yZGVyV2lkdGg6IHN1Z2dlc3RlZEFjdGlvbktleWJvYXJkRm9jdXNJbmRpY2F0b3JCb3JkZXJXaWR0aCxcbiAgICAgICAgYm90dG9tOiBzdWdnZXN0ZWRBY3Rpb25LZXlib2FyZEZvY3VzSW5kaWNhdG9ySW5zZXQsXG4gICAgICAgIGxlZnQ6IHN1Z2dlc3RlZEFjdGlvbktleWJvYXJkRm9jdXNJbmRpY2F0b3JJbnNldCxcbiAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgIHJpZ2h0OiBzdWdnZXN0ZWRBY3Rpb25LZXlib2FyZEZvY3VzSW5kaWNhdG9ySW5zZXQsXG4gICAgICAgIHRvcDogc3VnZ2VzdGVkQWN0aW9uS2V5Ym9hcmRGb2N1c0luZGljYXRvckluc2V0XG4gICAgICB9XG4gICAgfVxuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFJZSxTQUFTQSwwQkFBMEJBLENBQUFDLElBQUEsRUFzRDNCO0VBQUEsSUFyRHJCQyxNQUFNLEdBQUFELElBQUEsQ0FBTkMsTUFBTTtJQUNOQyxjQUFjLEdBQUFGLElBQUEsQ0FBZEUsY0FBYztJQUNkQyxXQUFXLEdBQUFILElBQUEsQ0FBWEcsV0FBVztJQUNYQyxXQUFXLEdBQUFKLElBQUEsQ0FBWEksV0FBVztJQUNYQywyQkFBMkIsR0FBQUwsSUFBQSxDQUEzQkssMkJBQTJCO0lBRTNCQyw4QkFBOEIsR0FBQU4sSUFBQSxDQUE5Qk0sOEJBQThCO0lBQzlCQywwQkFBMEIsR0FBQVAsSUFBQSxDQUExQk8sMEJBQTBCO0lBQzFCQywwQkFBMEIsR0FBQVIsSUFBQSxDQUExQlEsMEJBQTBCO0lBQzFCQywwQkFBMEIsR0FBQVQsSUFBQSxDQUExQlMsMEJBQTBCO0lBQzFCQyx3QkFBd0IsR0FBQVYsSUFBQSxDQUF4QlUsd0JBQXdCO0lBRXhCQyxzQ0FBc0MsR0FBQVgsSUFBQSxDQUF0Q1csc0NBQXNDO0lBQ3RDQyxrQ0FBa0MsR0FBQVosSUFBQSxDQUFsQ1ksa0NBQWtDO0lBQ2xDQyxrQ0FBa0MsR0FBQWIsSUFBQSxDQUFsQ2Esa0NBQWtDO0lBQ2xDQyxrQ0FBa0MsR0FBQWQsSUFBQSxDQUFsQ2Msa0NBQWtDO0lBQ2xDQyxnQ0FBZ0MsR0FBQWYsSUFBQSxDQUFoQ2UsZ0NBQWdDO0lBRWhDQyx3Q0FBd0MsR0FBQWhCLElBQUEsQ0FBeENnQix3Q0FBd0M7SUFDeENDLG9DQUFvQyxHQUFBakIsSUFBQSxDQUFwQ2lCLG9DQUFvQztJQUNwQ0Msb0NBQW9DLEdBQUFsQixJQUFBLENBQXBDa0Isb0NBQW9DO0lBQ3BDQyxvQ0FBb0MsR0FBQW5CLElBQUEsQ0FBcENtQixvQ0FBb0M7SUFDcENDLGtDQUFrQyxHQUFBcEIsSUFBQSxDQUFsQ29CLGtDQUFrQztJQUVsQ0MscUNBQXFDLEdBQUFyQixJQUFBLENBQXJDcUIscUNBQXFDO0lBQ3JDQyxpQ0FBaUMsR0FBQXRCLElBQUEsQ0FBakNzQixpQ0FBaUM7SUFDakNDLGlDQUFpQyxHQUFBdkIsSUFBQSxDQUFqQ3VCLGlDQUFpQztJQUNqQ0MsaUNBQWlDLEdBQUF4QixJQUFBLENBQWpDd0IsaUNBQWlDO0lBQ2pDQywrQkFBK0IsR0FBQXpCLElBQUEsQ0FBL0J5QiwrQkFBK0I7SUFFL0JDLHFDQUFxQyxHQUFBMUIsSUFBQSxDQUFyQzBCLHFDQUFxQztJQUNyQ0MsaUNBQWlDLEdBQUEzQixJQUFBLENBQWpDMkIsaUNBQWlDO0lBQ2pDQyxpQ0FBaUMsR0FBQTVCLElBQUEsQ0FBakM0QixpQ0FBaUM7SUFDakNDLGlDQUFpQyxHQUFBN0IsSUFBQSxDQUFqQzZCLGlDQUFpQztJQUNqQ0MsK0JBQStCLEdBQUE5QixJQUFBLENBQS9COEIsK0JBQStCO0lBRS9CQyxnREFBZ0QsR0FBQS9CLElBQUEsQ0FBaEQrQixnREFBZ0Q7SUFDaERDLGlEQUFpRCxHQUFBaEMsSUFBQSxDQUFqRGdDLGlEQUFpRDtJQUNqREMsZ0RBQWdELEdBQUFqQyxJQUFBLENBQWhEaUMsZ0RBQWdEO0lBQ2hEQyxnREFBZ0QsR0FBQWxDLElBQUEsQ0FBaERrQyxnREFBZ0Q7SUFDaERDLDBDQUEwQyxHQUFBbkMsSUFBQSxDQUExQ21DLDBDQUEwQztJQUUxQ0MscUJBQXFCLEdBQUFwQyxJQUFBLENBQXJCb0MscUJBQXFCO0lBQ3JCQywwQkFBMEIsR0FBQXJDLElBQUEsQ0FBMUJxQywwQkFBMEI7SUFDMUJDLDRDQUE0QyxHQUFBdEMsSUFBQSxDQUE1Q3NDLDRDQUE0QztJQUM1Q0MsTUFBTSxHQUFBdkMsSUFBQSxDQUFOdUMsTUFBTTtJQUdOQywrQkFBK0IsR0FBQXhDLElBQUEsQ0FBL0J3QywrQkFBK0I7SUFDL0JDLHlCQUF5QixHQUFBekMsSUFBQSxDQUF6QnlDLHlCQUF5QjtJQUN6QkMsaUNBQWlDLEdBQUExQyxJQUFBLENBQWpDMEMsaUNBQWlDO0lBQ2pDQyw4QkFBOEIsR0FBQTNDLElBQUEsQ0FBOUIyQyw4QkFBOEI7SUFDOUJDLDhCQUE4QixHQUFBNUMsSUFBQSxDQUE5QjRDLDhCQUE4QjtFQUU5QixPQUFPO0lBQ0wsNkJBQTZCLEVBQUU7TUFDN0JDLFVBQVUsRUFBRSxRQUFRO01BQ3BCQyxVQUFVLEVBQUVMLHlCQUF5QjtNQUFFO01BQ3ZDTSxlQUFlLEVBQUV6Qyw4QkFBOEI7TUFDL0MwQyxXQUFXLEVBQUV6QywwQkFBMEIsSUFBSU4sTUFBTTtNQUNqRGdELFlBQVksRUFBRTVDLDJCQUEyQjtNQUN6QzZDLFdBQVcsRUFBRTFDLDBCQUEwQjtNQUN2QzJDLFdBQVcsRUFBRTFDLDBCQUEwQjtNQUN2QzJDLEtBQUssRUFBRTFDLHdCQUF3QixJQUFJVCxNQUFNO01BQ3pDb0QsVUFBVSxFQUFFakQsV0FBVztNQUN2QmtELFFBQVEsRUFBRSxTQUFTO01BQ25CQyxNQUFNLEVBQUVuQixxQkFBcUI7TUFDN0JvQixjQUFjLEVBQUUsUUFBUTtNQUN4QkMsUUFBUSxFQUFFLE1BQU07TUFDaEJDLE9BQU8sRUFBRSxDQUFDO01BQ1ZDLFdBQVcsRUFBRXhELFdBQVc7TUFDeEJ5RCxZQUFZLEVBQUV6RCxXQUFXO01BQ3pCMEQsUUFBUSxFQUFFLFVBQVU7TUFDcEJDLFVBQVUsRUFBRSxRQUFRO01BQ3BCQyxLQUFLLEVBQUUsTUFBTTtNQUViO01BQ0E7TUFDQSxxQ0FBcUMsRUFBRTtRQUNyQ2pCLFVBQVUsRUFBRUosaUNBQWlDO1FBQzdDSyxlQUFlLEVBQUUvQix3Q0FBd0M7UUFDekRnQyxXQUFXLEVBQUUvQixvQ0FBb0M7UUFDakRpQyxXQUFXLEVBQUVoQyxvQ0FBb0M7UUFDakRpQyxXQUFXLEVBQUVoQyxvQ0FBb0M7UUFDakRpQyxLQUFLLEVBQUVoQyxrQ0FBa0MsSUFBSW1CO01BQy9DLENBQUM7TUFFRCw4Q0FBOEMsRUFBRTtRQUM5QyxVQUFVLEVBQUU7VUFDVk8sVUFBVSxFQUFFTiwrQkFBK0I7VUFDM0NPLGVBQWUsRUFBRXBDLHNDQUFzQztVQUN2RHFDLFdBQVcsRUFBRXBDLGtDQUFrQztVQUMvQ3NDLFdBQVcsRUFBRXJDLGtDQUFrQztVQUMvQ3NDLFdBQVcsRUFBRXJDLGtDQUFrQztVQUMvQ3NDLEtBQUssRUFBRXJDO1FBQ1QsQ0FBQztRQUVELGdCQUFnQixFQUFFO1VBQ2hCLFNBQVMsRUFBRTtZQUNUK0IsVUFBVSxFQUFFRiw4QkFBOEI7WUFDMUNHLGVBQWUsRUFBRXJCLHFDQUFxQztZQUN0RHNCLFdBQVcsRUFBRXJCLGlDQUFpQztZQUM5Q3VCLFdBQVcsRUFBRXRCLGlDQUFpQztZQUM5Q3VCLFdBQVcsRUFBRXRCLGlDQUFpQztZQUM5Q3VCLEtBQUssRUFBRXRCO1VBQ1QsQ0FBQztVQUVELGVBQWUsRUFBRTtZQUNmLFNBQVMsRUFBRTtjQUNUZ0IsVUFBVSxFQUFFSCw4QkFBOEI7Y0FDMUNJLGVBQWUsRUFBRTFCLHFDQUFxQztjQUN0RDJCLFdBQVcsRUFBRTFCLGlDQUFpQztjQUM5QzRCLFdBQVcsRUFBRTNCLGlDQUFpQztjQUM5QzRCLFdBQVcsRUFBRTNCLGlDQUFpQztjQUM5QzRCLEtBQUssRUFBRTNCO1lBQ1Q7VUFDRjtRQUNGO01BQ0YsQ0FBQztNQUVEO01BQ0E7TUFDQSw0RUFBNEUsRUFBRTtRQUM1RXVDLE9BQU8sRUFBRTtNQUNYLENBQUM7TUFFRCx1R0FBdUcsRUFBRTtRQUN2R0EsT0FBTyxFQUFFO01BQ1gsQ0FBQztNQUVELDZHQUE2RyxFQUFFO1FBQzdHTCxXQUFXLEVBQUV6RDtNQUNmLENBQUM7TUFFRCx1R0FBdUcsRUFBRTtRQUN2RzBELFlBQVksRUFBRTFEO01BQ2hCLENBQUM7TUFFRCx1Q0FBdUMsRUFBRTtRQUN2Q3FELE1BQU0sRUFBRSxNQUFNO1FBQ2RVLFNBQVMsRUFBRTNCLDRDQUE0QyxJQUFJLE1BQU07UUFDakU0QixTQUFTLEVBQ1AsT0FBTzVCLDRDQUE0QyxLQUFLLFFBQVEsSUFBSSxPQUFPRixxQkFBcUIsS0FBSyxRQUFRLEdBQ3pHK0IsSUFBSSxDQUFDQyxHQUFHLENBQUM5Qiw0Q0FBNEMsRUFBRUYscUJBQXFCLENBQUMsR0FDN0VBO01BQ1IsQ0FBQztNQUVELHFDQUFxQyxFQUFFO1FBQ3JDbUIsTUFBTSxFQUFFbEI7TUFDVixDQUFDO01BRUQsd0RBQXdELEVBQUU7UUFDeERXLFdBQVcsRUFBRWpCLGdEQUFnRDtRQUM3RGtCLFlBQVksRUFBRWpCLGlEQUFpRDtRQUMvRGtCLFdBQVcsRUFBRWpCLGdEQUFnRDtRQUM3RGtCLFdBQVcsRUFBRWpCLGdEQUFnRDtRQUM3RG1DLE1BQU0sRUFBRWxDLDBDQUEwQztRQUNsRG1DLElBQUksRUFBRW5DLDBDQUEwQztRQUNoRDBCLFFBQVEsRUFBRSxVQUFVO1FBQ3BCVSxLQUFLLEVBQUVwQywwQ0FBMEM7UUFDakRxQyxHQUFHLEVBQUVyQztNQUNQO0lBQ0Y7RUFDRixDQUFDO0FBQ0gifQ==