{"ast":null,"code":"import { __awaiter, __generator } from \"tslib\";\nimport { r as registerInstance, e as createEvent, h, H as Host, i as getElement } from \"./index-7a8b7a1c.js\";\nimport { c as config, b as getIonMode } from \"./ionic-global-63a97a32.js\";\nimport { g as getTimeGivenProgression } from \"./cubic-bezier-eea9a7a9.js\";\nimport { G as GESTURE_CONTROLLER } from \"./gesture-controller-31cb6bb9.js\";\nimport { m as isEndSide, l as assert, j as clamp } from \"./helpers-dd7e4b7b.js\";\nimport { m as menuController } from \"./index-0d58a5bf.js\";\nimport { c as createColorClasses, h as hostContext } from \"./theme-ff3fc52f.js\";\nimport \"./hardware-back-button-4a6b37fb.js\";\nimport \"./animation-096c6391.js\";\nvar menuIosCss = \":host{--width:304px;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--background:var(--ion-background-color, #fff);left:0;right:0;top:0;bottom:0;display:none;position:absolute;contain:strict}:host(.show-menu){display:block}.menu-inner{left:0;right:auto;top:0;bottom:0;-webkit-transform:translate3d(-9999px,  0,  0);transform:translate3d(-9999px,  0,  0);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);contain:strict}[dir=rtl] .menu-inner,:host-context([dir=rtl]) .menu-inner{left:unset;right:unset;left:auto;right:0}[dir=rtl] .menu-inner,:host-context([dir=rtl]) .menu-inner{-webkit-transform:translate3d(calc(-1 * -9999px),  0,  0);transform:translate3d(calc(-1 * -9999px),  0,  0)}:host(.menu-side-start) .menu-inner{--ion-safe-area-right:0px;right:auto;left:0}:host(.menu-side-end) .menu-inner{--ion-safe-area-left:0px;right:0;left:auto;}ion-backdrop{display:none;opacity:0.01;z-index:-1}@media (max-width: 340px){.menu-inner{--width:264px}}:host(.menu-type-reveal){z-index:0}:host(.menu-type-reveal.show-menu) .menu-inner{-webkit-transform:translate3d(0,  0,  0);transform:translate3d(0,  0,  0)}:host(.menu-type-overlay){z-index:1000}:host(.menu-type-overlay) .show-backdrop{display:block;cursor:pointer}:host(.menu-pane-visible){width:var(--width);min-width:var(--min-width);max-width:var(--max-width)}:host(.menu-pane-visible) .menu-inner{left:0;right:0;width:auto;-webkit-transform:none !important;transform:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}:host(.menu-pane-visible) ion-backdrop{display:hidden !important;}:host(.menu-type-push){z-index:1000}:host(.menu-type-push) .show-backdrop{display:block}\";\nvar menuMdCss = \":host{--width:304px;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--background:var(--ion-background-color, #fff);left:0;right:0;top:0;bottom:0;display:none;position:absolute;contain:strict}:host(.show-menu){display:block}.menu-inner{left:0;right:auto;top:0;bottom:0;-webkit-transform:translate3d(-9999px,  0,  0);transform:translate3d(-9999px,  0,  0);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);contain:strict}[dir=rtl] .menu-inner,:host-context([dir=rtl]) .menu-inner{left:unset;right:unset;left:auto;right:0}[dir=rtl] .menu-inner,:host-context([dir=rtl]) .menu-inner{-webkit-transform:translate3d(calc(-1 * -9999px),  0,  0);transform:translate3d(calc(-1 * -9999px),  0,  0)}:host(.menu-side-start) .menu-inner{--ion-safe-area-right:0px;right:auto;left:0}:host(.menu-side-end) .menu-inner{--ion-safe-area-left:0px;right:0;left:auto;}ion-backdrop{display:none;opacity:0.01;z-index:-1}@media (max-width: 340px){.menu-inner{--width:264px}}:host(.menu-type-reveal){z-index:0}:host(.menu-type-reveal.show-menu) .menu-inner{-webkit-transform:translate3d(0,  0,  0);transform:translate3d(0,  0,  0)}:host(.menu-type-overlay){z-index:1000}:host(.menu-type-overlay) .show-backdrop{display:block;cursor:pointer}:host(.menu-pane-visible){width:var(--width);min-width:var(--min-width);max-width:var(--max-width)}:host(.menu-pane-visible) .menu-inner{left:0;right:0;width:auto;-webkit-transform:none !important;transform:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}:host(.menu-pane-visible) ion-backdrop{display:hidden !important;}:host(.menu-type-overlay) .menu-inner{-webkit-box-shadow:4px 0px 16px rgba(0, 0, 0, 0.18);box-shadow:4px 0px 16px rgba(0, 0, 0, 0.18)}\";\nvar iosEasing = \"cubic-bezier(0.32,0.72,0,1)\";\nvar mdEasing = \"cubic-bezier(0.0,0.0,0.2,1)\";\nvar iosEasingReverse = \"cubic-bezier(1, 0, 0.68, 0.28)\";\nvar mdEasingReverse = \"cubic-bezier(0.4, 0, 0.6, 1)\";\n\nvar Menu = function () {\n  function t(t) {\n    registerInstance(this, t);\n    this.ionWillOpen = createEvent(this, \"ionWillOpen\", 7);\n    this.ionWillClose = createEvent(this, \"ionWillClose\", 7);\n    this.ionDidOpen = createEvent(this, \"ionDidOpen\", 7);\n    this.ionDidClose = createEvent(this, \"ionDidClose\", 7);\n    this.ionMenuChange = createEvent(this, \"ionMenuChange\", 7);\n    this.lastOnEnd = 0;\n    this.blocker = GESTURE_CONTROLLER.createBlocker({\n      disableScroll: true\n    });\n    this.isAnimating = false;\n    this._isOpen = false;\n    this.isPaneVisible = false;\n    this.isEndSide = false;\n    this.disabled = false;\n    this.side = \"start\";\n    this.swipeGesture = true;\n    this.maxEdgeStart = 50;\n  }\n\n  t.prototype.typeChanged = function (t, e) {\n    var n = this.contentEl;\n\n    if (n) {\n      if (e !== undefined) {\n        n.classList.remove(\"menu-content-\" + e);\n      }\n\n      n.classList.add(\"menu-content-\" + t);\n      n.removeAttribute(\"style\");\n    }\n\n    if (this.menuInnerEl) {\n      this.menuInnerEl.removeAttribute(\"style\");\n    }\n\n    this.animation = undefined;\n  };\n\n  t.prototype.disabledChanged = function () {\n    this.updateState();\n    this.ionMenuChange.emit({\n      disabled: this.disabled,\n      open: this._isOpen\n    });\n  };\n\n  t.prototype.sideChanged = function () {\n    this.isEndSide = isEndSide(this.side);\n  };\n\n  t.prototype.swipeGestureChanged = function () {\n    this.updateState();\n  };\n\n  t.prototype.connectedCallback = function () {\n    return __awaiter(this, void 0, void 0, function () {\n      var t, e, n, i;\n      var o = this;\n      return __generator(this, function (r) {\n        switch (r.label) {\n          case 0:\n            if (this.type === undefined) {\n              this.type = config.get(\"menuType\", \"overlay\");\n            }\n\n            t = this.el;\n            e = t.parentNode;\n\n            if (this.contentId === undefined) {\n              console.warn('[DEPRECATED][ion-menu] Using the [main] attribute is deprecated, please use the \"contentId\" property instead:\\nBEFORE:\\n  <ion-menu>...</ion-menu>\\n  <div main>...</div>\\n\\nAFTER:\\n  <ion-menu contentId=\"main-content\"></ion-menu>\\n  <div id=\"main-content\">...</div>\\n');\n            }\n\n            n = this.contentId !== undefined ? document.getElementById(this.contentId) : e && e.querySelector && e.querySelector(\"[main]\");\n\n            if (!n || !n.tagName) {\n              console.error('Menu: must have a \"content\" element to listen for drag events on.');\n              return [2];\n            }\n\n            this.contentEl = n;\n            n.classList.add(\"menu-content\");\n            this.typeChanged(this.type, undefined);\n            this.sideChanged();\n\n            menuController._register(this);\n\n            i = this;\n            return [4, import(\"./index-f49d994d.js\")];\n\n          case 1:\n            i.gesture = r.sent().createGesture({\n              el: document,\n              gestureName: \"menu-swipe\",\n              gesturePriority: 30,\n              threshold: 10,\n              blurOnStart: true,\n              canStart: function (t) {\n                return o.canStart(t);\n              },\n              onWillStart: function () {\n                return o.onWillStart();\n              },\n              onStart: function () {\n                return o.onStart();\n              },\n              onMove: function (t) {\n                return o.onMove(t);\n              },\n              onEnd: function (t) {\n                return o.onEnd(t);\n              }\n            });\n            this.updateState();\n            return [2];\n        }\n      });\n    });\n  };\n\n  t.prototype.componentDidLoad = function () {\n    return __awaiter(this, void 0, void 0, function () {\n      return __generator(this, function (t) {\n        this.ionMenuChange.emit({\n          disabled: this.disabled,\n          open: this._isOpen\n        });\n        this.updateState();\n        return [2];\n      });\n    });\n  };\n\n  t.prototype.disconnectedCallback = function () {\n    this.blocker.destroy();\n\n    menuController._unregister(this);\n\n    if (this.animation) {\n      this.animation.destroy();\n    }\n\n    if (this.gesture) {\n      this.gesture.destroy();\n      this.gesture = undefined;\n    }\n\n    this.animation = undefined;\n    this.contentEl = this.backdropEl = this.menuInnerEl = undefined;\n  };\n\n  t.prototype.onSplitPaneChanged = function (t) {\n    this.isPaneVisible = t.detail.isPane(this.el);\n    this.updateState();\n  };\n\n  t.prototype.onBackdropClick = function (t) {\n    if (this._isOpen && this.lastOnEnd < t.timeStamp - 100) {\n      var e = t.composedPath ? !t.composedPath().includes(this.menuInnerEl) : false;\n\n      if (e) {\n        t.preventDefault();\n        t.stopPropagation();\n        this.close();\n      }\n    }\n  };\n\n  t.prototype.isOpen = function () {\n    return Promise.resolve(this._isOpen);\n  };\n\n  t.prototype.isActive = function () {\n    return Promise.resolve(this._isActive());\n  };\n\n  t.prototype.open = function (t) {\n    if (t === void 0) {\n      t = true;\n    }\n\n    return this.setOpen(true, t);\n  };\n\n  t.prototype.close = function (t) {\n    if (t === void 0) {\n      t = true;\n    }\n\n    return this.setOpen(false, t);\n  };\n\n  t.prototype.toggle = function (t) {\n    if (t === void 0) {\n      t = true;\n    }\n\n    return this.setOpen(!this._isOpen, t);\n  };\n\n  t.prototype.setOpen = function (t, e) {\n    if (e === void 0) {\n      e = true;\n    }\n\n    return menuController._setOpen(this, t, e);\n  };\n\n  t.prototype._setOpen = function (t, e) {\n    if (e === void 0) {\n      e = true;\n    }\n\n    return __awaiter(this, void 0, void 0, function () {\n      return __generator(this, function (n) {\n        switch (n.label) {\n          case 0:\n            if (!this._isActive() || this.isAnimating || t === this._isOpen) {\n              return [2, false];\n            }\n\n            this.beforeAnimation(t);\n            return [4, this.loadAnimation()];\n\n          case 1:\n            n.sent();\n            return [4, this.startAnimation(t, e)];\n\n          case 2:\n            n.sent();\n            this.afterAnimation(t);\n            return [2, true];\n        }\n      });\n    });\n  };\n\n  t.prototype.loadAnimation = function () {\n    return __awaiter(this, void 0, void 0, function () {\n      var t, e;\n      return __generator(this, function (n) {\n        switch (n.label) {\n          case 0:\n            t = this.menuInnerEl.offsetWidth;\n\n            if (t === this.width && this.animation !== undefined) {\n              return [2];\n            }\n\n            this.width = t;\n\n            if (this.animation) {\n              this.animation.destroy();\n              this.animation = undefined;\n            }\n\n            e = this;\n            return [4, menuController._createAnimation(this.type, this)];\n\n          case 1:\n            e.animation = n.sent();\n\n            if (!config.getBoolean(\"animated\", true)) {\n              this.animation.duration(0);\n            }\n\n            this.animation.fill(\"both\");\n            return [2];\n        }\n      });\n    });\n  };\n\n  t.prototype.startAnimation = function (t, e) {\n    return __awaiter(this, void 0, void 0, function () {\n      var n, i, o, r, a;\n      return __generator(this, function (s) {\n        switch (s.label) {\n          case 0:\n            n = !t;\n            i = getIonMode(this);\n            o = i === \"ios\" ? iosEasing : mdEasing;\n            r = i === \"ios\" ? iosEasingReverse : mdEasingReverse;\n            a = this.animation.direction(n ? \"reverse\" : \"normal\").easing(n ? r : o).onFinish(function () {\n              if (a.getDirection() === \"reverse\") {\n                a.direction(\"normal\");\n              }\n            });\n            if (!e) return [3, 2];\n            return [4, a.play()];\n\n          case 1:\n            s.sent();\n            return [3, 3];\n\n          case 2:\n            a.play({\n              sync: true\n            });\n            s.label = 3;\n\n          case 3:\n            return [2];\n        }\n      });\n    });\n  };\n\n  t.prototype._isActive = function () {\n    return !this.disabled && !this.isPaneVisible;\n  };\n\n  t.prototype.canSwipe = function () {\n    return this.swipeGesture && !this.isAnimating && this._isActive();\n  };\n\n  t.prototype.canStart = function (t) {\n    var e = !!document.querySelector(\"ion-modal.show-modal\");\n\n    if (e || !this.canSwipe()) {\n      return false;\n    }\n\n    if (this._isOpen) {\n      return true;\n    } else if (menuController._getOpenSync()) {\n      return false;\n    }\n\n    return checkEdgeSide(window, t.currentX, this.isEndSide, this.maxEdgeStart);\n  };\n\n  t.prototype.onWillStart = function () {\n    this.beforeAnimation(!this._isOpen);\n    return this.loadAnimation();\n  };\n\n  t.prototype.onStart = function () {\n    if (!this.isAnimating || !this.animation) {\n      assert(false, \"isAnimating has to be true\");\n      return;\n    }\n\n    this.animation.progressStart(true, this._isOpen ? 1 : 0);\n  };\n\n  t.prototype.onMove = function (t) {\n    if (!this.isAnimating || !this.animation) {\n      assert(false, \"isAnimating has to be true\");\n      return;\n    }\n\n    var e = computeDelta(t.deltaX, this._isOpen, this.isEndSide);\n    var n = e / this.width;\n    this.animation.progressStep(this._isOpen ? 1 - n : n);\n  };\n\n  t.prototype.onEnd = function (t) {\n    var e = this;\n\n    if (!this.isAnimating || !this.animation) {\n      assert(false, \"isAnimating has to be true\");\n      return;\n    }\n\n    var n = this._isOpen;\n    var i = this.isEndSide;\n    var o = computeDelta(t.deltaX, n, i);\n    var r = this.width;\n    var a = o / r;\n    var s = t.velocityX;\n    var d = r / 2;\n    var l = s >= 0 && (s > .2 || t.deltaX > d);\n    var u = s <= 0 && (s < -.2 || t.deltaX < -d);\n    var h = n ? i ? l : u : i ? u : l;\n    var c = !n && h;\n\n    if (n && !h) {\n      c = true;\n    }\n\n    this.lastOnEnd = t.currentTime;\n    var p = h ? .001 : -.001;\n    var m = a < 0 ? .01 : a;\n    p += getTimeGivenProgression([0, 0], [.4, 0], [.6, 1], [1, 1], clamp(0, m, .9999))[0] || 0;\n    var f = this._isOpen ? !h : h;\n    this.animation.easing(\"cubic-bezier(0.4, 0.0, 0.6, 1)\").onFinish(function () {\n      return e.afterAnimation(c);\n    }, {\n      oneTimeCallback: true\n    }).progressEnd(f ? 1 : 0, this._isOpen ? 1 - p : p, 300);\n  };\n\n  t.prototype.beforeAnimation = function (t) {\n    assert(!this.isAnimating, \"_before() should not be called while animating\");\n    this.el.classList.add(SHOW_MENU);\n\n    if (this.backdropEl) {\n      this.backdropEl.classList.add(SHOW_BACKDROP);\n    }\n\n    this.blocker.block();\n    this.isAnimating = true;\n\n    if (t) {\n      this.ionWillOpen.emit();\n    } else {\n      this.ionWillClose.emit();\n    }\n  };\n\n  t.prototype.afterAnimation = function (t) {\n    assert(this.isAnimating, \"_before() should be called while animating\");\n    this._isOpen = t;\n    this.isAnimating = false;\n\n    if (!this._isOpen) {\n      this.blocker.unblock();\n    }\n\n    if (t) {\n      if (this.contentEl) {\n        this.contentEl.classList.add(MENU_CONTENT_OPEN);\n      }\n\n      this.ionDidOpen.emit();\n    } else {\n      this.el.classList.remove(SHOW_MENU);\n\n      if (this.contentEl) {\n        this.contentEl.classList.remove(MENU_CONTENT_OPEN);\n      }\n\n      if (this.backdropEl) {\n        this.backdropEl.classList.remove(SHOW_BACKDROP);\n      }\n\n      if (this.animation) {\n        this.animation.stop();\n      }\n\n      this.ionDidClose.emit();\n    }\n  };\n\n  t.prototype.updateState = function () {\n    var t = this._isActive();\n\n    if (this.gesture) {\n      this.gesture.enable(t && this.swipeGesture);\n    }\n\n    if (!t && this._isOpen) {\n      this.forceClosing();\n    }\n\n    if (!this.disabled) {\n      menuController._setActiveMenu(this);\n    }\n\n    assert(!this.isAnimating, \"can not be animating\");\n  };\n\n  t.prototype.forceClosing = function () {\n    assert(this._isOpen, \"menu cannot be closed\");\n    this.isAnimating = true;\n    var t = this.animation.direction(\"reverse\");\n    t.play({\n      sync: true\n    });\n    this.afterAnimation(false);\n  };\n\n  t.prototype.render = function () {\n    var t;\n    var e = this;\n    var n = this,\n        i = n.isEndSide,\n        o = n.type,\n        r = n.disabled,\n        a = n.isPaneVisible;\n    var s = getIonMode(this);\n    return h(Host, {\n      role: \"navigation\",\n      class: (t = {}, t[s] = true, t[\"menu-type-\" + o] = true, t[\"menu-enabled\"] = !r, t[\"menu-side-end\"] = i, t[\"menu-side-start\"] = !i, t[\"menu-pane-visible\"] = a, t)\n    }, h(\"div\", {\n      class: \"menu-inner\",\n      part: \"container\",\n      ref: function (t) {\n        return e.menuInnerEl = t;\n      }\n    }, h(\"slot\", null)), h(\"ion-backdrop\", {\n      ref: function (t) {\n        return e.backdropEl = t;\n      },\n      class: \"menu-backdrop\",\n      tappable: false,\n      stopPropagation: false,\n      part: \"backdrop\"\n    }));\n  };\n\n  Object.defineProperty(t.prototype, \"el\", {\n    get: function () {\n      return getElement(this);\n    },\n    enumerable: false,\n    configurable: true\n  });\n  Object.defineProperty(t, \"watchers\", {\n    get: function () {\n      return {\n        type: [\"typeChanged\"],\n        disabled: [\"disabledChanged\"],\n        side: [\"sideChanged\"],\n        swipeGesture: [\"swipeGestureChanged\"]\n      };\n    },\n    enumerable: false,\n    configurable: true\n  });\n  return t;\n}();\n\nvar computeDelta = function (t, e, n) {\n  return Math.max(0, e !== n ? -t : t);\n};\n\nvar checkEdgeSide = function (t, e, n, i) {\n  if (n) {\n    return e >= t.innerWidth - i;\n  } else {\n    return e <= i;\n  }\n};\n\nvar SHOW_MENU = \"show-menu\";\nvar SHOW_BACKDROP = \"show-backdrop\";\nvar MENU_CONTENT_OPEN = \"menu-content-open\";\nMenu.style = {\n  ios: menuIosCss,\n  md: menuMdCss\n};\n\nvar updateVisibility = function (t) {\n  return __awaiter(void 0, void 0, void 0, function () {\n    var e, n;\n    return __generator(this, function (i) {\n      switch (i.label) {\n        case 0:\n          return [4, menuController.get(t)];\n\n        case 1:\n          e = i.sent();\n          n = e;\n          if (!n) return [3, 3];\n          return [4, e.isActive()];\n\n        case 2:\n          n = i.sent();\n          i.label = 3;\n\n        case 3:\n          return [2, !!n];\n      }\n    });\n  });\n};\n\nvar menuButtonIosCss = ':host{--background:transparent;--color-focused:currentColor;--border-radius:initial;--padding-top:0;--padding-bottom:0;color:var(--color);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-font-kerning:none;font-kerning:none}.button-native{border-radius:var(--border-radius);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.button-native{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;z-index:1}ion-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;pointer-events:none}:host(.menu-button-hidden){display:none}:host(.menu-button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity, 0)}}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-focused:currentColor;--background-focused-opacity:.1;--border-radius:4px;--color:var(--ion-color-primary, #3880ff);--padding-start:5px;--padding-end:5px;height:32px;font-size:31px}:host(.ion-activated){opacity:0.4}@media (any-hover: hover){:host(:hover){opacity:0.6}}';\nvar menuButtonMdCss = ':host{--background:transparent;--color-focused:currentColor;--border-radius:initial;--padding-top:0;--padding-bottom:0;color:var(--color);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-font-kerning:none;font-kerning:none}.button-native{border-radius:var(--border-radius);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.button-native{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;z-index:1}ion-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;pointer-events:none}:host(.menu-button-hidden){display:none}:host(.menu-button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity, 0)}}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-focused:currentColor;--background-focused-opacity:.12;--background-hover:currentColor;--background-hover-opacity:.04;--border-radius:50%;--color:initial;--padding-start:8px;--padding-end:8px;width:48px;height:48px;font-size:24px}:host(.ion-color.ion-focused)::after{background:var(--ion-color-base)}@media (any-hover: hover){:host(.ion-color:hover) .button-native::after{background:var(--ion-color-base)}}';\n\nvar MenuButton = function () {\n  function t(t) {\n    var e = this;\n    registerInstance(this, t);\n    this.visible = false;\n    this.disabled = false;\n    this.autoHide = true;\n    this.type = \"button\";\n\n    this.onClick = function () {\n      return __awaiter(e, void 0, void 0, function () {\n        return __generator(this, function (t) {\n          return [2, menuController.toggle(this.menu)];\n        });\n      });\n    };\n  }\n\n  t.prototype.componentDidLoad = function () {\n    this.visibilityChanged();\n  };\n\n  t.prototype.visibilityChanged = function () {\n    return __awaiter(this, void 0, void 0, function () {\n      var t;\n      return __generator(this, function (e) {\n        switch (e.label) {\n          case 0:\n            t = this;\n            return [4, updateVisibility(this.menu)];\n\n          case 1:\n            t.visible = e.sent();\n            return [2];\n        }\n      });\n    });\n  };\n\n  t.prototype.render = function () {\n    var t;\n    var e = this,\n        n = e.color,\n        i = e.disabled;\n    var o = getIonMode(this);\n    var r = config.get(\"menuIcon\", o === \"ios\" ? \"menu-outline\" : \"menu-sharp\");\n    var a = this.autoHide && !this.visible;\n    var s = {\n      type: this.type\n    };\n    return h(Host, {\n      onClick: this.onClick,\n      \"aria-disabled\": i ? \"true\" : null,\n      \"aria-hidden\": a ? \"true\" : null,\n      class: createColorClasses(n, (t = {}, t[o] = true, t[\"button\"] = true, t[\"menu-button-hidden\"] = a, t[\"menu-button-disabled\"] = i, t[\"in-toolbar\"] = hostContext(\"ion-toolbar\", this.el), t[\"in-toolbar-color\"] = hostContext(\"ion-toolbar[color]\", this.el), t[\"ion-activatable\"] = true, t[\"ion-focusable\"] = true, t))\n    }, h(\"button\", Object.assign({}, s, {\n      disabled: i,\n      class: \"button-native\",\n      part: \"native\",\n      \"aria-label\": \"menu\"\n    }), h(\"span\", {\n      class: \"button-inner\"\n    }, h(\"slot\", null, h(\"ion-icon\", {\n      part: \"icon\",\n      icon: r,\n      mode: o,\n      lazy: false,\n      \"aria-hidden\": \"true\"\n    }))), o === \"md\" && h(\"ion-ripple-effect\", {\n      type: \"unbounded\"\n    })));\n  };\n\n  Object.defineProperty(t.prototype, \"el\", {\n    get: function () {\n      return getElement(this);\n    },\n    enumerable: false,\n    configurable: true\n  });\n  return t;\n}();\n\nMenuButton.style = {\n  ios: menuButtonIosCss,\n  md: menuButtonMdCss\n};\nvar menuToggleCss = \":host(.menu-toggle-hidden){display:none}\";\n\nvar MenuToggle = function () {\n  function t(t) {\n    var e = this;\n    registerInstance(this, t);\n    this.visible = false;\n    this.autoHide = true;\n\n    this.onClick = function () {\n      return menuController.toggle(e.menu);\n    };\n  }\n\n  t.prototype.connectedCallback = function () {\n    this.visibilityChanged();\n  };\n\n  t.prototype.visibilityChanged = function () {\n    return __awaiter(this, void 0, void 0, function () {\n      var t;\n      return __generator(this, function (e) {\n        switch (e.label) {\n          case 0:\n            t = this;\n            return [4, updateVisibility(this.menu)];\n\n          case 1:\n            t.visible = e.sent();\n            return [2];\n        }\n      });\n    });\n  };\n\n  t.prototype.render = function () {\n    var t;\n    var e = getIonMode(this);\n    var n = this.autoHide && !this.visible;\n    return h(Host, {\n      onClick: this.onClick,\n      \"aria-hidden\": n ? \"true\" : null,\n      class: (t = {}, t[e] = true, t[\"menu-toggle-hidden\"] = n, t)\n    }, h(\"slot\", null));\n  };\n\n  return t;\n}();\n\nMenuToggle.style = menuToggleCss;\nexport { Menu as ion_menu, MenuButton as ion_menu_button, MenuToggle as ion_menu_toggle };","map":{"version":3,"sources":["/Users/adekanbidansteve/github/klasha/react-klasha/ionic-test/node_modules/@ionic/core/dist/esm-es5/ion-menu_3.entry.js"],"names":["__awaiter","__generator","r","registerInstance","e","createEvent","h","H","Host","i","getElement","c","config","b","getIonMode","g","getTimeGivenProgression","G","GESTURE_CONTROLLER","m","isEndSide","l","assert","j","clamp","menuController","createColorClasses","hostContext","menuIosCss","menuMdCss","iosEasing","mdEasing","iosEasingReverse","mdEasingReverse","Menu","t","ionWillOpen","ionWillClose","ionDidOpen","ionDidClose","ionMenuChange","lastOnEnd","blocker","createBlocker","disableScroll","isAnimating","_isOpen","isPaneVisible","disabled","side","swipeGesture","maxEdgeStart","prototype","typeChanged","n","contentEl","undefined","classList","remove","add","removeAttribute","menuInnerEl","animation","disabledChanged","updateState","emit","open","sideChanged","swipeGestureChanged","connectedCallback","o","label","type","get","el","parentNode","contentId","console","warn","document","getElementById","querySelector","tagName","error","_register","gesture","sent","createGesture","gestureName","gesturePriority","threshold","blurOnStart","canStart","onWillStart","onStart","onMove","onEnd","componentDidLoad","disconnectedCallback","destroy","_unregister","backdropEl","onSplitPaneChanged","detail","isPane","onBackdropClick","timeStamp","composedPath","includes","preventDefault","stopPropagation","close","isOpen","Promise","resolve","isActive","_isActive","setOpen","toggle","_setOpen","beforeAnimation","loadAnimation","startAnimation","afterAnimation","offsetWidth","width","_createAnimation","getBoolean","duration","fill","a","s","direction","easing","onFinish","getDirection","play","sync","canSwipe","_getOpenSync","checkEdgeSide","window","currentX","progressStart","computeDelta","deltaX","progressStep","velocityX","d","u","currentTime","p","f","oneTimeCallback","progressEnd","SHOW_MENU","SHOW_BACKDROP","block","unblock","MENU_CONTENT_OPEN","stop","enable","forceClosing","_setActiveMenu","render","role","class","part","ref","tappable","Object","defineProperty","enumerable","configurable","Math","max","innerWidth","style","ios","md","updateVisibility","menuButtonIosCss","menuButtonMdCss","MenuButton","visible","autoHide","onClick","menu","visibilityChanged","color","assign","icon","mode","lazy","menuToggleCss","MenuToggle","ion_menu","ion_menu_button","ion_menu_toggle"],"mappings":"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","sourcesContent":["import{__awaiter,__generator}from\"tslib\";import{r as registerInstance,e as createEvent,h,H as Host,i as getElement}from\"./index-7a8b7a1c.js\";import{c as config,b as getIonMode}from\"./ionic-global-63a97a32.js\";import{g as getTimeGivenProgression}from\"./cubic-bezier-eea9a7a9.js\";import{G as GESTURE_CONTROLLER}from\"./gesture-controller-31cb6bb9.js\";import{m as isEndSide,l as assert,j as clamp}from\"./helpers-dd7e4b7b.js\";import{m as menuController}from\"./index-0d58a5bf.js\";import{c as createColorClasses,h as hostContext}from\"./theme-ff3fc52f.js\";import\"./hardware-back-button-4a6b37fb.js\";import\"./animation-096c6391.js\";var menuIosCss=\":host{--width:304px;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--background:var(--ion-background-color, #fff);left:0;right:0;top:0;bottom:0;display:none;position:absolute;contain:strict}:host(.show-menu){display:block}.menu-inner{left:0;right:auto;top:0;bottom:0;-webkit-transform:translate3d(-9999px,  0,  0);transform:translate3d(-9999px,  0,  0);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);contain:strict}[dir=rtl] .menu-inner,:host-context([dir=rtl]) .menu-inner{left:unset;right:unset;left:auto;right:0}[dir=rtl] .menu-inner,:host-context([dir=rtl]) .menu-inner{-webkit-transform:translate3d(calc(-1 * -9999px),  0,  0);transform:translate3d(calc(-1 * -9999px),  0,  0)}:host(.menu-side-start) .menu-inner{--ion-safe-area-right:0px;right:auto;left:0}:host(.menu-side-end) .menu-inner{--ion-safe-area-left:0px;right:0;left:auto;}ion-backdrop{display:none;opacity:0.01;z-index:-1}@media (max-width: 340px){.menu-inner{--width:264px}}:host(.menu-type-reveal){z-index:0}:host(.menu-type-reveal.show-menu) .menu-inner{-webkit-transform:translate3d(0,  0,  0);transform:translate3d(0,  0,  0)}:host(.menu-type-overlay){z-index:1000}:host(.menu-type-overlay) .show-backdrop{display:block;cursor:pointer}:host(.menu-pane-visible){width:var(--width);min-width:var(--min-width);max-width:var(--max-width)}:host(.menu-pane-visible) .menu-inner{left:0;right:0;width:auto;-webkit-transform:none !important;transform:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}:host(.menu-pane-visible) ion-backdrop{display:hidden !important;}:host(.menu-type-push){z-index:1000}:host(.menu-type-push) .show-backdrop{display:block}\";var menuMdCss=\":host{--width:304px;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--background:var(--ion-background-color, #fff);left:0;right:0;top:0;bottom:0;display:none;position:absolute;contain:strict}:host(.show-menu){display:block}.menu-inner{left:0;right:auto;top:0;bottom:0;-webkit-transform:translate3d(-9999px,  0,  0);transform:translate3d(-9999px,  0,  0);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);contain:strict}[dir=rtl] .menu-inner,:host-context([dir=rtl]) .menu-inner{left:unset;right:unset;left:auto;right:0}[dir=rtl] .menu-inner,:host-context([dir=rtl]) .menu-inner{-webkit-transform:translate3d(calc(-1 * -9999px),  0,  0);transform:translate3d(calc(-1 * -9999px),  0,  0)}:host(.menu-side-start) .menu-inner{--ion-safe-area-right:0px;right:auto;left:0}:host(.menu-side-end) .menu-inner{--ion-safe-area-left:0px;right:0;left:auto;}ion-backdrop{display:none;opacity:0.01;z-index:-1}@media (max-width: 340px){.menu-inner{--width:264px}}:host(.menu-type-reveal){z-index:0}:host(.menu-type-reveal.show-menu) .menu-inner{-webkit-transform:translate3d(0,  0,  0);transform:translate3d(0,  0,  0)}:host(.menu-type-overlay){z-index:1000}:host(.menu-type-overlay) .show-backdrop{display:block;cursor:pointer}:host(.menu-pane-visible){width:var(--width);min-width:var(--min-width);max-width:var(--max-width)}:host(.menu-pane-visible) .menu-inner{left:0;right:0;width:auto;-webkit-transform:none !important;transform:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}:host(.menu-pane-visible) ion-backdrop{display:hidden !important;}:host(.menu-type-overlay) .menu-inner{-webkit-box-shadow:4px 0px 16px rgba(0, 0, 0, 0.18);box-shadow:4px 0px 16px rgba(0, 0, 0, 0.18)}\";var iosEasing=\"cubic-bezier(0.32,0.72,0,1)\";var mdEasing=\"cubic-bezier(0.0,0.0,0.2,1)\";var iosEasingReverse=\"cubic-bezier(1, 0, 0.68, 0.28)\";var mdEasingReverse=\"cubic-bezier(0.4, 0, 0.6, 1)\";var Menu=function(){function t(t){registerInstance(this,t);this.ionWillOpen=createEvent(this,\"ionWillOpen\",7);this.ionWillClose=createEvent(this,\"ionWillClose\",7);this.ionDidOpen=createEvent(this,\"ionDidOpen\",7);this.ionDidClose=createEvent(this,\"ionDidClose\",7);this.ionMenuChange=createEvent(this,\"ionMenuChange\",7);this.lastOnEnd=0;this.blocker=GESTURE_CONTROLLER.createBlocker({disableScroll:true});this.isAnimating=false;this._isOpen=false;this.isPaneVisible=false;this.isEndSide=false;this.disabled=false;this.side=\"start\";this.swipeGesture=true;this.maxEdgeStart=50}t.prototype.typeChanged=function(t,e){var n=this.contentEl;if(n){if(e!==undefined){n.classList.remove(\"menu-content-\"+e)}n.classList.add(\"menu-content-\"+t);n.removeAttribute(\"style\")}if(this.menuInnerEl){this.menuInnerEl.removeAttribute(\"style\")}this.animation=undefined};t.prototype.disabledChanged=function(){this.updateState();this.ionMenuChange.emit({disabled:this.disabled,open:this._isOpen})};t.prototype.sideChanged=function(){this.isEndSide=isEndSide(this.side)};t.prototype.swipeGestureChanged=function(){this.updateState()};t.prototype.connectedCallback=function(){return __awaiter(this,void 0,void 0,(function(){var t,e,n,i;var o=this;return __generator(this,(function(r){switch(r.label){case 0:if(this.type===undefined){this.type=config.get(\"menuType\",\"overlay\")}t=this.el;e=t.parentNode;if(this.contentId===undefined){console.warn('[DEPRECATED][ion-menu] Using the [main] attribute is deprecated, please use the \"contentId\" property instead:\\nBEFORE:\\n  <ion-menu>...</ion-menu>\\n  <div main>...</div>\\n\\nAFTER:\\n  <ion-menu contentId=\"main-content\"></ion-menu>\\n  <div id=\"main-content\">...</div>\\n')}n=this.contentId!==undefined?document.getElementById(this.contentId):e&&e.querySelector&&e.querySelector(\"[main]\");if(!n||!n.tagName){console.error('Menu: must have a \"content\" element to listen for drag events on.');return[2]}this.contentEl=n;n.classList.add(\"menu-content\");this.typeChanged(this.type,undefined);this.sideChanged();menuController._register(this);i=this;return[4,import(\"./index-f49d994d.js\")];case 1:i.gesture=r.sent().createGesture({el:document,gestureName:\"menu-swipe\",gesturePriority:30,threshold:10,blurOnStart:true,canStart:function(t){return o.canStart(t)},onWillStart:function(){return o.onWillStart()},onStart:function(){return o.onStart()},onMove:function(t){return o.onMove(t)},onEnd:function(t){return o.onEnd(t)}});this.updateState();return[2]}}))}))};t.prototype.componentDidLoad=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.ionMenuChange.emit({disabled:this.disabled,open:this._isOpen});this.updateState();return[2]}))}))};t.prototype.disconnectedCallback=function(){this.blocker.destroy();menuController._unregister(this);if(this.animation){this.animation.destroy()}if(this.gesture){this.gesture.destroy();this.gesture=undefined}this.animation=undefined;this.contentEl=this.backdropEl=this.menuInnerEl=undefined};t.prototype.onSplitPaneChanged=function(t){this.isPaneVisible=t.detail.isPane(this.el);this.updateState()};t.prototype.onBackdropClick=function(t){if(this._isOpen&&this.lastOnEnd<t.timeStamp-100){var e=t.composedPath?!t.composedPath().includes(this.menuInnerEl):false;if(e){t.preventDefault();t.stopPropagation();this.close()}}};t.prototype.isOpen=function(){return Promise.resolve(this._isOpen)};t.prototype.isActive=function(){return Promise.resolve(this._isActive())};t.prototype.open=function(t){if(t===void 0){t=true}return this.setOpen(true,t)};t.prototype.close=function(t){if(t===void 0){t=true}return this.setOpen(false,t)};t.prototype.toggle=function(t){if(t===void 0){t=true}return this.setOpen(!this._isOpen,t)};t.prototype.setOpen=function(t,e){if(e===void 0){e=true}return menuController._setOpen(this,t,e)};t.prototype._setOpen=function(t,e){if(e===void 0){e=true}return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(n){switch(n.label){case 0:if(!this._isActive()||this.isAnimating||t===this._isOpen){return[2,false]}this.beforeAnimation(t);return[4,this.loadAnimation()];case 1:n.sent();return[4,this.startAnimation(t,e)];case 2:n.sent();this.afterAnimation(t);return[2,true]}}))}))};t.prototype.loadAnimation=function(){return __awaiter(this,void 0,void 0,(function(){var t,e;return __generator(this,(function(n){switch(n.label){case 0:t=this.menuInnerEl.offsetWidth;if(t===this.width&&this.animation!==undefined){return[2]}this.width=t;if(this.animation){this.animation.destroy();this.animation=undefined}e=this;return[4,menuController._createAnimation(this.type,this)];case 1:e.animation=n.sent();if(!config.getBoolean(\"animated\",true)){this.animation.duration(0)}this.animation.fill(\"both\");return[2]}}))}))};t.prototype.startAnimation=function(t,e){return __awaiter(this,void 0,void 0,(function(){var n,i,o,r,a;return __generator(this,(function(s){switch(s.label){case 0:n=!t;i=getIonMode(this);o=i===\"ios\"?iosEasing:mdEasing;r=i===\"ios\"?iosEasingReverse:mdEasingReverse;a=this.animation.direction(n?\"reverse\":\"normal\").easing(n?r:o).onFinish((function(){if(a.getDirection()===\"reverse\"){a.direction(\"normal\")}}));if(!e)return[3,2];return[4,a.play()];case 1:s.sent();return[3,3];case 2:a.play({sync:true});s.label=3;case 3:return[2]}}))}))};t.prototype._isActive=function(){return!this.disabled&&!this.isPaneVisible};t.prototype.canSwipe=function(){return this.swipeGesture&&!this.isAnimating&&this._isActive()};t.prototype.canStart=function(t){var e=!!document.querySelector(\"ion-modal.show-modal\");if(e||!this.canSwipe()){return false}if(this._isOpen){return true}else if(menuController._getOpenSync()){return false}return checkEdgeSide(window,t.currentX,this.isEndSide,this.maxEdgeStart)};t.prototype.onWillStart=function(){this.beforeAnimation(!this._isOpen);return this.loadAnimation()};t.prototype.onStart=function(){if(!this.isAnimating||!this.animation){assert(false,\"isAnimating has to be true\");return}this.animation.progressStart(true,this._isOpen?1:0)};t.prototype.onMove=function(t){if(!this.isAnimating||!this.animation){assert(false,\"isAnimating has to be true\");return}var e=computeDelta(t.deltaX,this._isOpen,this.isEndSide);var n=e/this.width;this.animation.progressStep(this._isOpen?1-n:n)};t.prototype.onEnd=function(t){var e=this;if(!this.isAnimating||!this.animation){assert(false,\"isAnimating has to be true\");return}var n=this._isOpen;var i=this.isEndSide;var o=computeDelta(t.deltaX,n,i);var r=this.width;var a=o/r;var s=t.velocityX;var d=r/2;var l=s>=0&&(s>.2||t.deltaX>d);var u=s<=0&&(s<-.2||t.deltaX<-d);var h=n?i?l:u:i?u:l;var c=!n&&h;if(n&&!h){c=true}this.lastOnEnd=t.currentTime;var p=h?.001:-.001;var m=a<0?.01:a;p+=getTimeGivenProgression([0,0],[.4,0],[.6,1],[1,1],clamp(0,m,.9999))[0]||0;var f=this._isOpen?!h:h;this.animation.easing(\"cubic-bezier(0.4, 0.0, 0.6, 1)\").onFinish((function(){return e.afterAnimation(c)}),{oneTimeCallback:true}).progressEnd(f?1:0,this._isOpen?1-p:p,300)};t.prototype.beforeAnimation=function(t){assert(!this.isAnimating,\"_before() should not be called while animating\");this.el.classList.add(SHOW_MENU);if(this.backdropEl){this.backdropEl.classList.add(SHOW_BACKDROP)}this.blocker.block();this.isAnimating=true;if(t){this.ionWillOpen.emit()}else{this.ionWillClose.emit()}};t.prototype.afterAnimation=function(t){assert(this.isAnimating,\"_before() should be called while animating\");this._isOpen=t;this.isAnimating=false;if(!this._isOpen){this.blocker.unblock()}if(t){if(this.contentEl){this.contentEl.classList.add(MENU_CONTENT_OPEN)}this.ionDidOpen.emit()}else{this.el.classList.remove(SHOW_MENU);if(this.contentEl){this.contentEl.classList.remove(MENU_CONTENT_OPEN)}if(this.backdropEl){this.backdropEl.classList.remove(SHOW_BACKDROP)}if(this.animation){this.animation.stop()}this.ionDidClose.emit()}};t.prototype.updateState=function(){var t=this._isActive();if(this.gesture){this.gesture.enable(t&&this.swipeGesture)}if(!t&&this._isOpen){this.forceClosing()}if(!this.disabled){menuController._setActiveMenu(this)}assert(!this.isAnimating,\"can not be animating\")};t.prototype.forceClosing=function(){assert(this._isOpen,\"menu cannot be closed\");this.isAnimating=true;var t=this.animation.direction(\"reverse\");t.play({sync:true});this.afterAnimation(false)};t.prototype.render=function(){var t;var e=this;var n=this,i=n.isEndSide,o=n.type,r=n.disabled,a=n.isPaneVisible;var s=getIonMode(this);return h(Host,{role:\"navigation\",class:(t={},t[s]=true,t[\"menu-type-\"+o]=true,t[\"menu-enabled\"]=!r,t[\"menu-side-end\"]=i,t[\"menu-side-start\"]=!i,t[\"menu-pane-visible\"]=a,t)},h(\"div\",{class:\"menu-inner\",part:\"container\",ref:function(t){return e.menuInnerEl=t}},h(\"slot\",null)),h(\"ion-backdrop\",{ref:function(t){return e.backdropEl=t},class:\"menu-backdrop\",tappable:false,stopPropagation:false,part:\"backdrop\"}))};Object.defineProperty(t.prototype,\"el\",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(t,\"watchers\",{get:function(){return{type:[\"typeChanged\"],disabled:[\"disabledChanged\"],side:[\"sideChanged\"],swipeGesture:[\"swipeGestureChanged\"]}},enumerable:false,configurable:true});return t}();var computeDelta=function(t,e,n){return Math.max(0,e!==n?-t:t)};var checkEdgeSide=function(t,e,n,i){if(n){return e>=t.innerWidth-i}else{return e<=i}};var SHOW_MENU=\"show-menu\";var SHOW_BACKDROP=\"show-backdrop\";var MENU_CONTENT_OPEN=\"menu-content-open\";Menu.style={ios:menuIosCss,md:menuMdCss};var updateVisibility=function(t){return __awaiter(void 0,void 0,void 0,(function(){var e,n;return __generator(this,(function(i){switch(i.label){case 0:return[4,menuController.get(t)];case 1:e=i.sent();n=e;if(!n)return[3,3];return[4,e.isActive()];case 2:n=i.sent();i.label=3;case 3:return[2,!!n]}}))}))};var menuButtonIosCss=':host{--background:transparent;--color-focused:currentColor;--border-radius:initial;--padding-top:0;--padding-bottom:0;color:var(--color);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-font-kerning:none;font-kerning:none}.button-native{border-radius:var(--border-radius);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.button-native{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;z-index:1}ion-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;pointer-events:none}:host(.menu-button-hidden){display:none}:host(.menu-button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity, 0)}}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-focused:currentColor;--background-focused-opacity:.1;--border-radius:4px;--color:var(--ion-color-primary, #3880ff);--padding-start:5px;--padding-end:5px;height:32px;font-size:31px}:host(.ion-activated){opacity:0.4}@media (any-hover: hover){:host(:hover){opacity:0.6}}';var menuButtonMdCss=':host{--background:transparent;--color-focused:currentColor;--border-radius:initial;--padding-top:0;--padding-bottom:0;color:var(--color);text-align:center;text-decoration:none;text-overflow:ellipsis;text-transform:none;white-space:nowrap;-webkit-font-kerning:none;font-kerning:none}.button-native{border-radius:var(--border-radius);font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;border:0;outline:none;background:var(--background);line-height:1;cursor:pointer;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}@supports ((-webkit-margin-start: 0) or (margin-inline-start: 0)) or (-webkit-margin-start: 0){.button-native{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}.button-inner{display:-ms-flexbox;display:flex;position:relative;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-negative:0;flex-shrink:0;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;z-index:1}ion-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;pointer-events:none}:host(.menu-button-hidden){display:none}:host(.menu-button-disabled){cursor:default;opacity:0.5;pointer-events:none}:host(.ion-focused) .button-native{color:var(--color-focused)}:host(.ion-focused) .button-native::after{background:var(--background-focused);opacity:var(--background-focused-opacity)}.button-native::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}@media (any-hover: hover){:host(:hover) .button-native{color:var(--color-hover)}:host(:hover) .button-native::after{background:var(--background-hover);opacity:var(--background-hover-opacity, 0)}}:host(.ion-color) .button-native{color:var(--ion-color-base)}:host(.in-toolbar:not(.in-toolbar-color)){color:var(--ion-toolbar-color, var(--color))}:host{--background-focused:currentColor;--background-focused-opacity:.12;--background-hover:currentColor;--background-hover-opacity:.04;--border-radius:50%;--color:initial;--padding-start:8px;--padding-end:8px;width:48px;height:48px;font-size:24px}:host(.ion-color.ion-focused)::after{background:var(--ion-color-base)}@media (any-hover: hover){:host(.ion-color:hover) .button-native::after{background:var(--ion-color-base)}}';var MenuButton=function(){function t(t){var e=this;registerInstance(this,t);this.visible=false;this.disabled=false;this.autoHide=true;this.type=\"button\";this.onClick=function(){return __awaiter(e,void 0,void 0,(function(){return __generator(this,(function(t){return[2,menuController.toggle(this.menu)]}))}))}}t.prototype.componentDidLoad=function(){this.visibilityChanged()};t.prototype.visibilityChanged=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(e){switch(e.label){case 0:t=this;return[4,updateVisibility(this.menu)];case 1:t.visible=e.sent();return[2]}}))}))};t.prototype.render=function(){var t;var e=this,n=e.color,i=e.disabled;var o=getIonMode(this);var r=config.get(\"menuIcon\",o===\"ios\"?\"menu-outline\":\"menu-sharp\");var a=this.autoHide&&!this.visible;var s={type:this.type};return h(Host,{onClick:this.onClick,\"aria-disabled\":i?\"true\":null,\"aria-hidden\":a?\"true\":null,class:createColorClasses(n,(t={},t[o]=true,t[\"button\"]=true,t[\"menu-button-hidden\"]=a,t[\"menu-button-disabled\"]=i,t[\"in-toolbar\"]=hostContext(\"ion-toolbar\",this.el),t[\"in-toolbar-color\"]=hostContext(\"ion-toolbar[color]\",this.el),t[\"ion-activatable\"]=true,t[\"ion-focusable\"]=true,t))},h(\"button\",Object.assign({},s,{disabled:i,class:\"button-native\",part:\"native\",\"aria-label\":\"menu\"}),h(\"span\",{class:\"button-inner\"},h(\"slot\",null,h(\"ion-icon\",{part:\"icon\",icon:r,mode:o,lazy:false,\"aria-hidden\":\"true\"}))),o===\"md\"&&h(\"ion-ripple-effect\",{type:\"unbounded\"})))};Object.defineProperty(t.prototype,\"el\",{get:function(){return getElement(this)},enumerable:false,configurable:true});return t}();MenuButton.style={ios:menuButtonIosCss,md:menuButtonMdCss};var menuToggleCss=\":host(.menu-toggle-hidden){display:none}\";var MenuToggle=function(){function t(t){var e=this;registerInstance(this,t);this.visible=false;this.autoHide=true;this.onClick=function(){return menuController.toggle(e.menu)}}t.prototype.connectedCallback=function(){this.visibilityChanged()};t.prototype.visibilityChanged=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(e){switch(e.label){case 0:t=this;return[4,updateVisibility(this.menu)];case 1:t.visible=e.sent();return[2]}}))}))};t.prototype.render=function(){var t;var e=getIonMode(this);var n=this.autoHide&&!this.visible;return h(Host,{onClick:this.onClick,\"aria-hidden\":n?\"true\":null,class:(t={},t[e]=true,t[\"menu-toggle-hidden\"]=n,t)},h(\"slot\",null))};return t}();MenuToggle.style=menuToggleCss;export{Menu as ion_menu,MenuButton as ion_menu_button,MenuToggle as ion_menu_toggle};"]},"metadata":{},"sourceType":"module"}