text: define(["exports", "../../lit-element/lit-element.js", "./lib/a11y-menu-button-item.js", "../absolute-position-behavior/absolute-position-behavior.js"], function (_exports, _litElement, _a11yMenuButtonItem, _absolutePositionBehavior) {
    "use strict";
  
    Object.defineProperty(_exports, "__esModule", {
      value: true
    });
    _exports.A11yMenuButtonBehaviors = _exports.A11yMenuButton = void 0;
  
    var _templateObject_6bd13d30af6311ebbe560fe9c4727db1, _templateObject2_6bd13d30af6311ebbe560fe9c4727db1, _templateObject3_6bd13d30af6311ebbe560fe9c4727db1, _templateObject4_6bd13d30af6311ebbe560fe9c4727db1, _templateObject5_6bd13d30af6311ebbe560fe9c4727db1, _templateObject6_6bd13d30af6311ebbe560fe9c4727db1;
  
    function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = babelHelpers.getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = babelHelpers.getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return babelHelpers.possibleConstructorReturn(this, result); }; }
  
    function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
  
    var A11yMenuButtonBehaviors = function A11yMenuButtonBehaviors(SuperClass) {
      return /*#__PURE__*/function (_SuperClass) {
        babelHelpers.inherits(_class, _SuperClass);
  
        var _super = _createSuper(_class);
  
        function _class() {
          var _this;
  
          babelHelpers.classCallCheck(this, _class);
          _this = _super.call(this);
          _this.__menuItems = [];
          _this.position = "bottom";
          _this.positionAlign = "start";
          _this.offset = 0;
  
          _this.addEventListener("keydown", _this._handleKeydown);
  
          _this.addEventListener("click", _this._handleClick);
  
          _this.addEventListener("focus", _this._handleFocus);
  
          _this.addEventListener("blur", _this._handleBlur);
  
          _this.addEventListener("mouseover", _this._handleMouseover);
  
          _this.addEventListener("mouseout", _this._handleMouseout);
  
          _this.addEventListener("add-a11y-menu-button-item", _this._handleAddItem);
  
          _this.addEventListener("remove-a11y-menu-button-item", _this._handleRemoveItem);
  
          return _this;
        }
        /**
         * template for dropdown menu
         *
         * @readonly
         */
  
  
        babelHelpers.createClass(_class, [{
          key: "render",
          value: function render() {
            return (0, _litElement.html)(_templateObject_6bd13d30af6311ebbe560fe9c4727db1 || (_templateObject_6bd13d30af6311ebbe560fe9c4727db1 = babelHelpers.taggedTemplateLiteral([" ", " ", " "])), this.buttonTemplate, this.menuTemplate);
          }
        }, {
          key: "menuTemplate",
          get: function get() {
            var _this2 = this;
  
            return (0, _litElement.html)(_templateObject2_6bd13d30af6311ebbe560fe9c4727db1 || (_templateObject2_6bd13d30af6311ebbe560fe9c4727db1 = babelHelpers.taggedTemplateLiteral(["\n        <absolute-position-behavior\n          ?auto=\"", "\"\n          for=\"menubutton\"\n          position=\"", "\"\n          position-align=\"", "\"\n          .offset=\"", "\"\n          fit-to-visible-bounds\n          part=\"menu-outer\"\n        >\n          <ul\n            id=\"menu\"\n            role=\"menu\"\n            aria-labelledby=\"menubutton\"\n            ?hidden=\"", "\"\n            @mousover=\"", "\"\n            @mousout=\"", "\"\n            part=\"menu\"\n          >\n            ", "\n          </ul>\n        </absolute-position-behavior>\n      "])), this.expanded, this.position, this.positionAlign, this.offset, !this.expanded, function (e) {
              return _this2.hover = true;
            }, function (e) {
              return _this2.hover = false;
            }, this.listItemTemplate);
          }
          /**
           * template for button
           *
           * @readonly
           */
  
        }, {
          key: "buttonTemplate",
          get: function get() {
            return (0, _litElement.html)(_templateObject3_6bd13d30af6311ebbe560fe9c4727db1 || (_templateObject3_6bd13d30af6311ebbe560fe9c4727db1 = babelHelpers.taggedTemplateLiteral(["\n        <button\n          id=\"menubutton\"\n          aria-haspopup=\"true\"\n          aria-controls=\"menu\"\n          aria-expanded=\"", "\"\n          part=\"button\"\n        >\n          <slot name=\"button\"></slot>\n        </button>\n      "])), this.expanded ? "true" : "false");
          }
          /**
           * template for slotted list items
           *
           * @readonly
           */
  
        }, {
          key: "listItemTemplate",
          get: function get() {
            return (0, _litElement.html)(_templateObject4_6bd13d30af6311ebbe560fe9c4727db1 || (_templateObject4_6bd13d30af6311ebbe560fe9c4727db1 = babelHelpers.taggedTemplateLiteral(["<slot></slot>"])));
          }
          /**
           * key code translations as object
           *
           * @readonly
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "keyCode",
          get: function get() {
            return {
              TAB: 9,
              RETURN: 13,
              ESC: 27,
              SPACE: 32,
              PAGEUP: 33,
              PAGEDOWN: 34,
              END: 35,
              HOME: 36,
              LEFT: 37,
              UP: 38,
              RIGHT: 39,
              DOWN: 40
            };
          }
          /**
           * closes menu
           *
           * @param {boolean} force close even if other items have focus
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "close",
          value: function close(force) {
            if (force || !this.focused && !this.hovered) {
              this.expanded = false;
              /**
               * Fires when menu is closed
               * @event close
               */
  
              this.dispatchEvent(new CustomEvent("close", {
                bubbles: true,
                cancelable: true,
                composed: true,
                detail: event
              }));
            }
          }
          /**
           * opens menu
           *
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "open",
          value: function open() {
            this.expanded = true;
            /**
             * Fires when menu is opened
             * @event close
             */
  
            this.dispatchEvent(new CustomEvent("open", {
              bubbles: true,
              cancelable: true,
              composed: true,
              detail: event
            }));
          }
          /**
           * gives focus to menu
           *
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "focus",
          value: function focus() {
            if (this.shadowRoot && this.shadowRoot.querySelector("#menubutton")) {
              this.shadowRoot.querySelector("#menubutton").focus();
            }
          }
          /**
           * focuses on a menu item
           *
           * @param {object} item menu item
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "focusOn",
          value: function focusOn(item) {
            item = item || this.firstItem();
  
            if (item) {
              this.open();
              this.focused = true;
              this.currentItem = item;
              item.focus();
            }
          }
          /**
           * focuses on item based on character pressed
           *
           * @param {string} char character pressed
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "focusByCharacter",
          value: function focusByCharacter(char) {
            var _this3 = this;
  
            var start,
                index,
                char = char.toLowerCase(),
                firstChars = function firstChars(startIndex, char) {
              for (var i = startIndex; i < _this3.firstChars.length; i++) {
                if (char === _this3.firstChars[i]) {
                  return i;
                }
              }
  
              return -1;
            }; // Get start index for search based on position of currentItem
  
  
            start = this.__menuItems.indexOf(this.currentItem) + 1;
  
            if (start === this.__menuItems.length) {
              start = 0;
            } // Check remaining slots in menu
  
  
            index = firstChars(start, char); // If not found in remaining slots, check from beginning
  
            if (index === -1) {
              index = firstChars(0, char);
            } // If match was found...
  
  
            if (index > -1) {
              this.__menuItems[index].focus();
            }
          }
          /**
           * gets first menu item
           *
           * @returns {object}
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "firstItem",
          value: function firstItem() {
            return this.querySelector("a11y-menu-button-item");
          }
          /**
           * gets previous menu item
           *
           * @returns {object}
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "previousItem",
          value: function previousItem() {
            return this.currentItem ? this.currentItem.previousElementSibling : undefined;
          }
          /**
           * gets next menu item
           *
           * @returns {object}
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "nextItem",
          value: function nextItem() {
            return this.currentItem ? this.currentItem.nextElementSibling : undefined;
          }
          /**
           * gets last menu item
           *
           * @returns {object}
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "lastItem",
          value: function lastItem() {
            return this.querySelector("a11y-menu-button-item:last-child");
          }
          /**
           * when a new menu item is added to slot,
           * updates menu items list and adds event listeners for item
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleAddItem",
          value: function _handleAddItem(event) {
            var _this4 = this;
  
            event.stopPropagation();
            this.__menuItems = this.querySelectorAll("a11y-menu-button-item");
  
            if (event.detail) {
              event.detail.addEventListener("keydown", function (e) {
                return _this4._handleItemKeydown(e, event.detail);
              });
              event.detail.addEventListener("click", this._handleItemClick.bind(this));
              event.detail.addEventListener("focus", this._handleFocus.bind(this));
              event.detail.addEventListener("blur", this._handleBlur.bind(this));
              event.detail.addEventListener("mouseover", this._handleMouseover.bind(this));
              event.detail.addEventListener("mouseout", this._handleMouseout.bind(this));
            }
          }
          /**
           * when a new menu item is removed from slot,
           * updates menu items list and removes event listeners for item
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleRemoveItem",
          value: function _handleRemoveItem(event) {
            var _this5 = this;
  
            event.stopPropagation();
            this.__menuItems = this.querySelectorAll("a11y-menu-button-item");
  
            if (event.detail) {
              event.detail.removeEventListener("keydown", function (e) {
                return _this5._handleItemKeydown(e, event.detail);
              });
              event.detail.removeEventListener("click", this._handleItemClick.bind(this));
              event.detail.removeEventListener("focus", this._handleFocus.bind(this));
              event.detail.removeEventListener("blur", this._handleItemBlur.bind(this));
              event.detail.removeEventListener("mouseover", this._handleMouseover.bind(this));
              event.detail.removeEventListener("mouseout", this._handleMouseout.bind(this));
            }
          }
          /**
           * when menu item is clicked,
           * focus on menu button and close menu
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleItemClick",
          value: function _handleItemClick(event) {
            this.focus();
            this.close(true);
            this.dispatchEvent(new CustomEvent("item-click", {
              bubbles: true,
              cancelable: true,
              composed: true,
              detail: event
            }));
          }
          /**
           * handles menu item keydown
           *
           * @param {event} event
           * @param {object} item
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleItemKeydown",
          value: function _handleItemKeydown(event, item) {
            var flag = false,
                char = event.key,
                isPrintableCharacter = function isPrintableCharacter(str) {
              return str.length === 1 && str.match(/\S/);
            };
  
            if (event.ctrlKey || event.altKey || event.metaKey || event.keyCode === this.keyCode.SPACE || event.keyCode === this.keyCode.RETURN) {
              return;
            }
  
            if (event.shiftKey) {
              if (isPrintableCharacter(char)) {
                this.menu.setFocusByFirstCharacter(this, char);
                flag = true;
              }
  
              if (event.keyCode === this.keyCode.TAB) {
                this.focus();
                this.close(true);
              }
            } else {
              switch (event.keyCode) {
                case this.keyCode.ESC:
                  this.focus();
                  this.close(true);
                  flag = true;
                  break;
  
                case this.keyCode.UP:
                  this.focusOn(this.previousItem() || this.lastItem());
                  flag = true;
                  break;
  
                case this.keyCode.DOWN:
                  this.focusOn(this.nextItem() || this.firstItem());
                  flag = true;
                  break;
  
                case this.keyCode.HOME:
                case this.keyCode.PAGEUP:
                  this.currentItem = this.firstItem();
                  flag = true;
                  break;
  
                case this.keyCode.END:
                case this.keyCode.PAGEDOWN:
                  this.currentItem = this.lastItem();
                  flag = true;
                  break;
  
                case this.keyCode.TAB:
                  this.focus();
                  this.close(true);
                  break;
  
                default:
                  if (isPrintableCharacter(char)) {
                    this.menu.setFocusByFirstCharacter(this, char);
                  }
  
                  break;
              }
            }
  
            if (flag) {
              event.stopPropagation();
              event.preventDefault();
            }
          }
          /**
           * handles when menu item loses focus
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleItemBlur",
          value: function _handleItemBlur(event) {
            this.focused = false;
            setTimeout(this.close(), 300);
          }
          /**
           * handles menu button keydown
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleKeydown",
          value: function _handleKeydown(event) {
            var flag = false;
  
            switch (event.keyCode) {
              case this.keyCode.SPACE:
              case this.keyCode.RETURN:
              case this.keyCode.DOWN:
                this.focusOn(this.firstItem());
                flag = true;
                break;
  
              case this.keyCode.UP:
                if (this.popupMenu) {
                  this.focusOn(this.lastItem());
                  flag = true;
                }
  
                break;
  
              default:
                break;
            }
  
            if (flag) {
              event.stopPropagation();
              event.preventDefault();
            }
          }
          /**
           * handles when menu is clicked
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleClick",
          value: function _handleClick(event) {
            if (this.expanded) {
              this.close(true);
            } else {
              this.focusOn(this.firstItem());
            }
          }
          /**
           * handles when menu has focus
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleFocus",
          value: function _handleFocus(event) {
            this.focused = true;
          }
          /**
           * handles when menu loses focus
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleBlur",
          value: function _handleBlur(event) {
            this.focused = false;
          }
          /**
           * handles menu mouseover
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleMouseover",
          value: function _handleMouseover(event) {
            this.hovered = true;
            this.open();
          }
          /**
           * handles menu mouseout
           *
           * @param {event} event
           * @memberof A11yMenuButton
           */
  
        }, {
          key: "_handleMouseout",
          value: function _handleMouseout(event) {
            this.hovered = false;
            setTimeout(this.close(), 300);
          }
        }], [{
          key: "menuButtonCoreStyles",
          get:
          /**
           * the core styles needed to make a menu button
           *
           * @readonly
           * @static
           */
          function get() {
            return [(0, _litElement.css)(_templateObject5_6bd13d30af6311ebbe560fe9c4727db1 || (_templateObject5_6bd13d30af6311ebbe560fe9c4727db1 = babelHelpers.taggedTemplateLiteral(["\n          :host {\n            padding: 0;\n            display: inline-flex;\n            position: relative;\n            z-index: 1;\n          }\n          :host([expanded]) {\n            z-index: var(--a11y-menu-button-focus-z-index, 1000);\n          }\n          button[part=\"button\"] {\n            display: block;\n            text-decoration: inherit;\n            font-family: inherit;\n            font-size: inherit;\n            margin: 0;\n            width: 100%;\n          }\n          absolute-position-behavior {\n            z-index: -1;\n            overflow: hidden;\n          }\n          :host([expanded]) absolute-position-behavior {\n            z-index: var(--a11y-menu-button-focus-z-index, 1000);\n          }\n          :host(:not([expanded])) absolute-position-behavior {\n            border-color: none !important;\n          }\n          ul {\n            margin: 0;\n            padding: 0;\n            list-style: none;\n          }\n        "])))];
          }
          /**
           * styles that can be customized by
           * extending and overriding this getter
           *
           * @readonly
           * @static
           */
  
        }, {
          key: "menuButtonThemeStyles",
          get: function get() {
            return [(0, _litElement.css)(_templateObject6_6bd13d30af6311ebbe560fe9c4727db1 || (_templateObject6_6bd13d30af6311ebbe560fe9c4727db1 = babelHelpers.taggedTemplateLiteral(["\n          button[part=\"button\"] {\n            padding: var(--a11y-menu-button-vertical-padding, 2px)\n              var(--a11y-menu-button-horizontal-padding, 5px);\n            text-align: var(--a11y-menu-button-text-align, center);\n            background-color: var(--a11y-menu-button-bg-color, white);\n            color: var(--a11y-menu-button-color, currentColor);\n            background-color: var(--a11y-menu-button-bg-color, white);\n            border-radius: var(--a11y-menu-button-border-radius, 0);\n            border-left: var(--a11y-menu-button-border-left, unset);\n            border-top: var(--a11y-menu-button-border-top, unset);\n            border-right: var(--a11y-menu-button-border-right, unset);\n            border-bottom: var(--a11y-menu-button-border-bottom, unset);\n            border: var(--a11y-menu-button-border, 1px solid #ddd);\n            box-shadow: var(--a11y-menu-button-box-shadow, unset);\n            transition: all 0.25s ease-in-out;\n          }\n          button[part=\"button\"]:focus,\n          button[part=\"button\"]:hover {\n            color: var(\n              --a11y-menu-button-focus-color,\n              var(--a11y-menu-button-color, currentColor)\n            );\n            background-color: var(\n              --a11y-menu-button-focus-bg-color,\n              var(--a11y-menu-button-bg-color, white)\n            );\n            border-left: var(\n              --a11y-menu-button-focus-border-left,\n              var(--a11y-menu-button-border-left, unset)\n            );\n            border-top: var(\n              --a11y-menu-button-focus-border-top,\n              var(--a11y-menu-button-border-top, unset)\n            );\n            border-right: var(\n              --a11y-menu-button-focus-border-right,\n              var(--a11y-menu-button-border-right, unset)\n            );\n            border-bottom: var(\n              --a11y-menu-button-focus-border-bottom,\n              var(--a11y-menu-button-border-bottom, unset)\n            );\n            border: var(\n              --a11y-menu-button-focus-border,\n              var(--a11y-menu-button-border, 1px solid #ddd)\n            );\n            box-shadow: var(\n              --a11y-menu-button-box-shadow,\n              var(--a11y-menu-button-focus-box-shadow, unset)\n            );\n          }\n          :host([expanded]) absolute-position-behavior {\n            width: var(--a11y-menu-button-list-width, unset);\n            height: var(--a11y-menu-button-list-height, unset);\n            border: var(\n              --a11y-menu-button-list-border,\n              var(--a11y-menu-button-border, 1px solid #ddd)\n            );\n            background-color: var(\n              --a11y-menu-button-bg-color,\n              var(--a11y-menu-button-list-bg-color, white)\n            );\n            box-shadow: var(--a11y-menu-button-list-box-shadow, unset);\n          }\n        "])))];
          }
        }, {
          key: "styles",
          get: function get() {
            return [].concat(babelHelpers.toConsumableArray(this.menuButtonCoreStyles), babelHelpers.toConsumableArray(this.menuButtonThemeStyles));
          }
        }, {
          key: "tag",
          get: function get() {
            return "a11y-menu-button";
          }
        }, {
          key: "properties",
          get: function get() {
            return {
              /**
               * Whether toggle is disabled
               */
              currentItem: {
                type: Object
              },
  
              /**
               * Whether toggle is disabled
               */
              disabled: {
                attribute: "disabled",
                type: Boolean
              },
  
              /**
               * Whether toggle is disabled
               */
              expanded: {
                attribute: "expanded",
                type: Boolean,
                reflect: true
              },
  
              /**
               * Whether button is toggled
               */
              focused: {
                attribute: "focused",
                type: Boolean
              },
  
              /**
               * Whether button is toggled
               */
              hovered: {
                attribute: "hovered",
                type: Boolean
              },
  
              /**
               * spacing between top of list and menu button
               */
              offset: {
                type: Number,
                attribute: "offset"
              },
  
              /**
               * Positions list to top, right, bottom, left of its content.
               */
              position: {
                type: String,
                attribute: "position",
                reflect: true
              },
  
              /**
               * Aligns list at start, or end fo target. Default is centered.
               */
              positionAlign: {
                type: String,
                attribute: "position-align",
                reflect: true
              },
  
              /**
               * menu items in array form to move from prev to next
               */
              __menuItems: {
                type: Array
              }
            };
          }
        }]);
        return _class;
      }(SuperClass);
    };
    /**
     * a11y-menu-button
     * A toggle button for an property in editable-table interface (editable-table.html).
     *
    ### Styling
    
    `<a11y-menu-button>` provides custom properties for styling:
    
    Custom property | Description | Default
    ----------------|-------------|----------
    --a11y-menu-button-vertical-padding | vertical padding for menu button | 2px
    --a11y-menu-button-horizontal-padding | horizontal padding for menu button | 5px
    --a11y-menu-button-text-align | text alignment for menu button | center
    --a11y-menu-button-bg-color | default background color | white
    --a11y-menu-button-color | default text color | black
    --a11y-menu-button-box-shadow | menu button box-shadow | unset
    --a11y-menu-button-border-radius | menu button border-radius | 0
    --a11y-menu-button-border | default border | 1px solid #ddd
    --a11y-menu-button-border-left | overrides default left-border | unset
    --a11y-menu-button-border-top | overrides default top-border | unset
    --a11y-menu-button-border-right | overrides default right-border | unset
    --a11y-menu-button-border-bottom | overrides default bottom-border | unset
    --a11y-menu-button-focus-bg-color | background color for menu button when focused | --a11y-menu-button-bg-color
    --a11y-menu-button-focus-color | text color for menu button when focused | --a11y-menu-button-color
    --a11y-menu-button-focus-border | border for menu button when focused | --a11y-menu-button-border
    --a11y-menu-button-focus-border-left | menu button left-border when focused | --a11y-menu-button-border-left
    --a11y-menu-button-focus-border-top | menu button top-border when focused | --a11y-menu-button-border-top
    --a11y-menu-button-focus-border-right | menu button right-border when focused | --a11y-menu-button-border-right
    --a11y-menu-button-focus-border-bottom | menu button bottom-border when focused | --a11y-menu-button-border-bottom
    --a11y-menu-button-focus-box-shadow | menu button box-shadow when focused | --a11y-menu-button-box-shadow
    --a11y-menu-button-list-width | width of menu list | unset
    --a11y-menu-button-list-height | height of menu list | unset
    --a11y-menu-button-list-left | left position of menu list | 0
    --a11y-menu-button-list-top | top position of menu list | unset
    --a11y-menu-button-list-bottom | bottom position of menu list | unset
    --a11y-menu-button-list-right | right position of menu list | unset
    --a11y-menu-button-list-bg-color | overrides default background color for list box | --a11y-menu-button-bg-color
    --a11y-menu-button-border | overrides default border for list box | --a11y-menu-button-list-border
    --a11y-menu-button-list-box-shadow | overrides default box shadow for list box | unset
     *
     * @demo ./demo/index.html
     * @element a11y-menu-button
     */
  
  
    _exports.A11yMenuButtonBehaviors = A11yMenuButtonBehaviors;
  
    var A11yMenuButton = /*#__PURE__*/function (_A11yMenuButtonBehavi) {
      babelHelpers.inherits(A11yMenuButton, _A11yMenuButtonBehavi);
  
      var _super2 = _createSuper(A11yMenuButton);
  
      function A11yMenuButton() {
        babelHelpers.classCallCheck(this, A11yMenuButton);
        return _super2.apply(this, arguments);
      }
  
      return A11yMenuButton;
    }(A11yMenuButtonBehaviors(_litElement.LitElement));
  
    _exports.A11yMenuButton = A11yMenuButton;
    window.customElements.define(A11yMenuButton.tag, A11yMenuButton);
  });