{"version":3,"sources":["webpack:///./super_sidebar/components/super_sidebar_toggle.vue","webpack:///./super_sidebar/components/super_sidebar_toggle.vue?1ba0","webpack:///super_sidebar/components/super_sidebar_toggle.vue","webpack:///./super_sidebar/components/super_sidebar_toggle.vue?2df3","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/components/base/new_dropdowns/disclosure/utils.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/components/base/new_dropdowns/disclosure/constants.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown_item.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/components/base/new_dropdowns/disclosure/disclosure_dropdown_group.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/components/base/breadcrumb/breadcrumb_item.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/components/base/breadcrumb/breadcrumb.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-item.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button.js","webpack:////build/gitlab/src/gitlab-foss/node_modules/@gitlab/ui/dist/components/base/dropdown/dropdown_item.js"],"names":["components","GlButton","directives","GlTooltip","GlTooltipDirective","mixins","Tracking","mixin","props","type","String","required","default","i18n","primaryNavigationSidebar","__","tooltipCollapse","placement","container","title","tooltipExpand","data","sidebarState","computed","isTypeCollapse","isTypeExpand","tooltip","$options","ariaExpanded","mounted","$root","$on","onTooltipShow","beforeUnmount","$off","methods","toggle","track","label","property","toggleSuperSidebarCollapsed","focusOtherToggle","_this","$nextTick","document","querySelector","JS_TOGGLE_EXPAND_CLASS","focus","bvEvent","target","$el","isCollapsed","isPeek","isHoverPeek","preventDefault","component","_c","this","_self","name","rawName","value","expression","attrs","on","isItem","item","Boolean","_item$text","text","length","Array","isArray","items","itemValidator","isGroup","group","every","itemsValidator","hasOnlyListItemsVue2","defaultSlot","nodes","tags","filter","vNode","tag","_vNode$componentOptio","componentOptions","includes","isValidSlotTagVue2","hasOnlyListItemsVue3","fragment","find","node","children","trim","_vNode$type","isValidSlotTagVue3","hasOnlyListItems","version","startsWith","DISCLOSURE_DROPDOWN_ITEM_NAME","DISCLOSURE_DROPDOWN_GROUP_NAME","DISCLOSURE_DROPDOWN_GROUP_BORDER_POSITIONS","top","bottom","DROPDOWN_SELECTOR","ITEM_SELECTOR","__vue_script__","events","GL_DROPDOWN_SHOWN","GL_DROPDOWN_HIDDEN","GL_DROPDOWN_BEFORE_CLOSE","GL_DROPDOWN_FOCUS_CONTENT","GlBaseDropdown","GlDisclosureDropdownItem","GlDisclosureDropdownGroup","validator","toggleText","textSrOnly","category","primary","variant","size","icon","disabled","loading","toggleId","toggleClass","Object","noCaret","keys","toggleAriaLabelledBy","listAriaLabelledBy","block","dropdownOffset","Number","undefined","fluidWidth","autoClose","positioningStrategy","strategy","startOpened","disclosureId","nextFocusedItemIndex","_this$items","$scopedSlots","$slots","open","$refs","baseDropdown","close","$emit","event","code","elements","getFocusableListItemElements","stop","focusItem","focusNextItem","handleAutoClose","_this$$refs$content","content","querySelectorAll","from","offset","currentIndex","indexOf","nextIndex","index","_elements$index","closeAndFocus","action","window","requestAnimationFrame","e","closest","uniqueItemId","GL_DROPDOWN_CONTENTS_CLASS","__vue_component__","render","_vm","_h","$createElement","ref","staticClass","disclosureArrow","_d","onShow","onHide","onBeforeClose","onKeydown","scopedSlots","_u","key","fn","_t","proxy","_v","disclosureTag","class","_l","handleAction","groupItem","staticRenderFns","ITEM_CLASS","BLink","_this$item","_this$item2","href","to","isLink","is","extraAttrs","listeners","click","_item$action","call","_this$item3","_this$item3$extraAttr","_this$item4","_this$item4$extraAttr","_this$item5","_this$item$wrapperCla","_this$item6","wrapperClass","itemVariant","keydown","isCustomContent","MouseEvent","bubbles","cancelable","_this$$refs$item","dispatchEvent","_g","classes","listIndex","wrapperListeners","itemComponent","_b","componentIndex","_s","BORDER_CLASSES","bordered","borderPosition","_this$group","showHeader","nameId","borderClass","_e","groupLabeledBy","inheritAttrs","ariaCurrent","sm","GlBreadcrumbItem","GlAvatar","GlDisclosureDropdown","ariaLabel","showMoreLabel","autoResize","fittingItems","overflowingItems","totalBreadcrumbsWidth","widthPerItem","resizeDone","opacity","watch","handler","deep","newValue","enableAutoResize","disableAutoResize","debounceMakeBreadcrumbsFit","makeBreadcrumbsFit","resetItems","breadcrumbs","forEach","b","width","clientWidth","containerWidth","startSlicingAt","stopSlicingAt","widthNeeded","push","splice","isLastItem","resizeObserver","ResizeObserver","observe","measureAndMakeBreadcrumbsFit","unobserve","hideItemClass","style","$attrs","$listeners","dropdownSize","refInFor","getAriaCurrentAttr","avatarPath","avatarSize","linkProps","linkClass","BDropdownItem","inject","getBvDropdown","bvAttrs","role","bvDropdown","hide","closeDropdown","h","active","onClick","$props","computedAttrs","normalizeSlot","activeClass","buttonClass","BDropdownItemButton","GlIcon","avatarUrl","iconColor","iconName","iconRightAriaLabel","iconRightName","isChecked","isCheckItem","isCheckCentered","secondaryText","bootstrapComponent","bootstrapComponentProps","checkedClasses","iconColorCss","$event","stopPropagation","handleClickIconRight","apply","arguments"],"mappings":"0FAAA,I,wECAiS,ECOlR,CACfA,WAAA,CACAC,cAEAC,WAAA,CACAC,UAAAC,KAEAC,OAAA,CAAAC,IAAAC,SACAC,MAAA,CACAC,KAAA,CACAA,KAAAC,OACAC,UAAA,EACAC,QAAA,WAGAC,KAAA,CACAC,yBAAAC,YAAA,+BAEAC,gBAAA,CACAC,UAAA,SACAC,UAAA,gBACAC,MAAAJ,YAAA,iBAEAK,cAAA,CACAH,UAAA,QACAE,MAAAJ,YAAA,yBAEAM,SACAC,IAEAC,SAAA,CACAC,iBACA,wBAAAf,MAEAgB,eACA,sBAAAhB,MAEAiB,UACA,YAAAD,aAAA,KAAAE,SAAAP,cAAA,KAAAO,SAAAX,iBAEAY,eACA,OAAAlB,OAAA,KAAAc,kBAGAK,UACA,KAAAC,MAAAC,IAAA,yBAAAC,gBAEAC,gBACA,KAAAH,MAAAI,KAAA,yBAAAF,gBAEAG,QAAA,CACAC,SACA,KAAAC,MAAA,KAAAZ,aAAA,uBACAa,MAAA,aACAC,SAAA,gBAEAC,aAAA,KAAAf,cAAA,GACA,KAAAgB,oBAEAA,mBAAA,IAAAC,EAAA,KACA,KAAAC,WAAA,WACAD,EAAAjB,cACAmB,SAAAC,cAAA,IAAAC,KAAAC,YAIAf,cAAAgB,GAEAA,EAAAC,SAAA,KAAAC,KACA,KAAA1B,iBAAA,KAAA2B,aACA,KAAA1B,cAAA,KAAA0B,aACA,KAAAC,QACA,KAAAC,aAIAL,EAAAM,oB,YC5EIC,EAAY,YACd,GHRW,WAA+C,OAAOC,EAA5BC,KAAYC,MAAMF,IAAa,YAAY,CAACtD,WAAW,CAAC,CAACyD,KAAK,aAAaC,QAAQ,eAAeC,MAAlGJ,KAA6G/B,QAASoC,WAAW,YAAYC,MAAM,CAAC,gBAAgB,gBAAgB,gBAApLN,KAAwM7B,aAAa,aAArN6B,KAAsO9B,SAASd,KAAKC,yBAAyB,KAAO,UAAU,SAAW,YAAYkD,GAAG,CAAC,MAAzTP,KAAqUrB,YAEtV,IGSpB,EACA,KACA,KACA,MAIa,IAAAmB,E,6CClBf,8MAKA,MAIMU,EAASC,GAAQC,QAAQD,IAJTA,KACpB,IAAIE,EACJ,OAAQF,SAAyE,QAA5BE,EAAaF,EAAKG,YAAiC,IAAfD,OAA9C,EAA+EA,EAAWE,QAAU,IAAMC,MAAMC,QAAQN,aAAmC,EAASA,EAAKO,QAE9KC,CAAcR,GAChDS,EAAUC,GAAST,QAAQS,IAAUL,MAAMC,QAAQI,EAAMH,QAAUN,QAAQS,EAAMH,MAAMH,SAE7FM,EAAMH,MAAMI,MAAMZ,GAGZa,EAAiBL,GAASA,EAAMI,MAAMZ,IAAWQ,EAAMI,MAAMF,GAU7DI,EAAuBC,IAC3B,MAAMC,EAAQD,IACd,IAAKT,MAAMC,QAAQS,GACjB,OAAO,EAET,MAAMC,EAAOD,EAAME,OAAOC,GAASA,EAAMC,KACzC,OAAOH,EAAKZ,QAAUY,EAAKL,MAAMQ,GAdRD,KACzB,IAAIE,EAFaD,EAGjB,OAAOlB,QAAQiB,KAHEC,GAGyE,QAApDC,EAAwBF,EAAMG,wBAAwD,IAA1BD,OAAmC,EAASA,EAAsBD,MAAQD,EAAMC,IAH1J,CAAC,+BAAgC,8BAA+B,MAAMG,SAASH,KAe/DI,CAAmBJ,KAEvDK,EAAuBV,IAC3B,MAAMC,EAAQD,IACRW,EAAWV,EAAMW,KAAKC,GAAQtB,MAAMC,QAAQqB,EAAKC,WAAaD,EAAKC,SAASxB,QAElF,OADoBqB,EAAWA,EAASG,SAAWb,GAGlDE,OAAOC,IAAU,IAASA,EAAMf,OAASe,EAAMf,KAAK0B,OAAOzB,OAAS,GAAGO,MAAMO,GAlBrDA,KACzB,IAAIY,EACJ,MAAO,CAAC,IAA+B,KAAgCR,SAAwC,QAA9BQ,EAAcZ,EAAM3E,YAAkC,IAAhBuF,OAAyB,EAASA,EAAYrC,OAAwB,OAAfyB,EAAM3E,MAgB7FwF,CAAmBb,KAEtGc,EAAmBlB,KAClB,IAAWA,KAGZ,UAAImB,QAAQC,WAAW,KAClBV,EAAqBV,GAEvBD,EAAqBC,K,kCChD9B,4GAAMqB,EAAgC,2BAChCC,EAAiC,4BACjCC,EAA6C,CACjDC,IAAK,MACLC,OAAQ,W,kCCJV,uJAYA,MAAMC,EAAoB,IAAI,IACxBC,EAAgB,IAAI,IAsU1B,MAAMC,EArUO,CACXjD,KAAM,uBACNkD,OAAQ,CACNC,kBAAA,IACAC,mBAAA,IACAC,yBAAA,IACAC,0BAAA,KAEFjH,WAAY,CACVkH,eAAA,IACAC,yBAAA,IACAC,0BAAA,KAEF5G,MAAO,CAILiE,MAAO,CACLhE,KAAM8D,MACN5D,UAAU,EACVC,QAAS,IAAM,GACfyG,UAAW,KAKbC,WAAY,CACV7G,KAAMC,OACNC,UAAU,EACVC,QAAS,IAKX2G,WAAY,CACV9G,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAKX4G,SAAU,CACR/G,KAAMC,OACNC,UAAU,EACVC,QAAS,IAAsB6G,QAC/BJ,UAAWxD,GAASA,KAAS,KAK/B6D,QAAS,CACPjH,KAAMC,OACNC,UAAU,EACVC,QAAS,IAAuBA,QAChCyG,UAAWxD,GAASA,KAAS,KAK/B8D,KAAM,CACJlH,KAAMC,OACNC,UAAU,EACVC,QAAS,SACTyG,UAAWxD,GAASA,KAAS,KAK/B+D,KAAM,CACJnH,KAAMC,OACNC,UAAU,EACVC,QAAS,IAKXiH,SAAU,CACRpH,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAMXkH,QAAS,CACPrH,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAMXmH,SAAU,CACRtH,KAAMC,OACNC,UAAU,EACVC,QAAS,IAAM,IAAS,yBAK1BoH,YAAa,CACXvH,KAAM,CAACC,OAAQ6D,MAAO0D,QACtBtH,UAAU,EACVC,QAAS,MAKXsH,QAAS,CACPzH,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAKXK,UAAW,CACTR,KAAMC,OACNC,UAAU,EACVC,QAAS,eACTyG,UAAWxD,GAASoE,OAAOE,KAAK,KAAoB3C,SAAS3B,IAM/DuE,qBAAsB,CACpB3H,KAAMC,OACNC,UAAU,EACVC,QAAS,MAMXyH,mBAAoB,CAClB5H,KAAMC,OACNC,UAAU,EACVC,QAAS,MAKX0H,MAAO,CACL7H,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAMX2H,eAAgB,CACd9H,KAAM,CAAC+H,OAAQP,QACftH,UAAU,EACVC,aAAS6H,GAMXC,WAAY,CACVjI,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAKX+H,UAAW,CACTlI,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAOXgI,oBAAqB,CACnBnI,KAAMC,OACNC,UAAU,EACVC,QAAS,IACTyG,UAAWwB,GAAY,CAAC,IAAmB,KAAgBrD,SAASqD,IAKtEC,YAAa,CACXrI,KAAM0D,QACNxD,UAAU,EACVC,SAAS,IAGbS,KAAI,KACK,CACL0H,aAAc,IAAS,eACvBC,qBAAsB,OAG1BzH,SAAU,CACR,gBACE,IAAI0H,EACJ,OAAmC,QAA9BA,EAAcxF,KAAKgB,aAAmC,IAAhBwE,GAA0BA,EAAY3E,QAEjF,YAAiBb,KAAKyF,aAAatI,SAAW6C,KAAK0F,OAAOvI,SACjD,KAEF,OAET,kBACE,OAAOuD,QAAQV,KAAKyF,aAAa9G,UAGrC,UACMqB,KAAKqF,aACPrF,KAAK2F,QAGTjH,QAAS,CACP,OACEsB,KAAK4F,MAAMC,aAAaF,QAE1B,QACE3F,KAAK4F,MAAMC,aAAaC,SAE1B,SAME9F,KAAK+F,MAAM,MAEb,cAAcC,GAMZhG,KAAK+F,MAAM,IAA0BC,IAEvC,SAMEhG,KAAK+F,MAAM,KACX/F,KAAKuF,qBAAuB,MAE9B,UAAUS,GACR,MAAM,KACJC,GACED,EACEE,EAAWlG,KAAKmG,+BACtB,GAAID,EAASrF,OAAS,EAAG,OACzB,IAAIuF,GAAO,EACPH,IAAS,IACXjG,KAAKqG,UAAU,EAAGH,GACTD,IAAS,IAClBjG,KAAKqG,UAAUH,EAASrF,OAAS,EAAGqF,GAC3BD,IAAS,IAClBjG,KAAKsG,cAAcN,EAAOE,GAAW,GAC5BD,IAAS,IAClBjG,KAAKsG,cAAcN,EAAOE,EAAU,GAC3BD,IAAS,KAASA,IAAS,IACpCjG,KAAKuG,gBAAgBP,GAErBI,GAAO,EAELA,GACF,YAAUJ,IAGd,+BACE,IAAIQ,EACJ,MAAMxF,EAAuD,QAA9CwF,EAAsBxG,KAAK4F,MAAMa,eAA6C,IAAxBD,OAAiC,EAASA,EAAoBE,iBAAiBxD,GACpJ,OAAO,YAAcpC,MAAM6F,KAAK3F,GAAS,MAE3C,cAAcgF,EAAOE,EAAUU,GAC7B,MAAM,OACJpH,GACEwG,EACEa,EAAeX,EAASY,QAAQtH,GAChCuH,EAAY,IAAMF,EAAeD,EAAQ,EAAGV,EAASrF,OAAS,GACpEb,KAAKqG,UAAUU,EAAWb,IAE5B,UAAUc,EAAOd,GACf,IAAIe,EACJjH,KAAKuF,qBAAuByB,EACY,QAAvCC,EAAkBf,EAASc,UAAwC,IAApBC,GAAsCA,EAAgB3H,SAExG,gBACEU,KAAK4F,MAAMC,aAAaqB,iBAE1B,aAAaC,GAGXC,OAAOC,sBAAsB,KAM3BrH,KAAK+F,MAAM,SAAUoB,MAGzB,gBAAgBG,GACVtH,KAAKkF,WAAaoC,EAAE9H,OAAO+H,QAAQrE,IAAkBoE,EAAE9H,OAAO+H,QAAQtE,KAAuBjD,KAAK4F,MAAMC,aAAapG,KACvHO,KAAKkH,iBAGTM,aAAY,IACH,IAAS,oBAElBhH,OAAA,KAEFiH,2BAAA,KAWA,MAeMC,EAAoB,IACxB,CAAEC,OApBe,WAAa,IAAIC,EAAI5H,KAAS6H,EAAGD,EAAIE,eAAmB/H,EAAG6H,EAAI3H,MAAMF,IAAI8H,EAAG,OAAO9H,EAAG,mBAAmB,CAACgI,IAAI,eAAeC,YAAY,yBAAyB1H,MAAM,CAAC,kBAAkBsH,EAAIjD,qBAAqB,gBAAgBiD,EAAIhC,MAAMqC,gBAAgB,YAAYL,EAAItD,SAAS,cAAcsD,EAAI/D,WAAW,eAAe+D,EAAIrD,YAAY,eAAeqD,EAAI9D,WAAW,SAAW8D,EAAI7D,SAAS,QAAU6D,EAAI3D,QAAQ,KAAO2D,EAAI1D,KAAK,KAAO0D,EAAIzD,KAAK,SAAWyD,EAAIxD,SAAS,QAAUwD,EAAIvD,QAAQ,WAAWuD,EAAInD,QAAQ,UAAYmD,EAAIpK,UAAU,MAAQoK,EAAI/C,MAAM,OAAS+C,EAAI9C,eAAe,cAAc8C,EAAI3C,WAAW,uBAAuB2C,EAAIzC,qBAAqB5E,GAAGqH,EAAIM,GAAG,GAAG,CAACN,EAAI1J,SAASkF,OAAOC,kBAAkBuE,EAAIO,OAAOP,EAAI1J,SAASkF,OAAOE,mBAAmBsE,EAAIQ,OAAOR,EAAI1J,SAASkF,OAAOG,yBAAyBqE,EAAIS,cAAcT,EAAI1J,SAASkF,OAAOI,0BAA0BoE,EAAIU,YAAYC,YAAYX,EAAIY,GAAG,CAAEZ,EAAmB,gBAAE,CAACa,IAAI,SAASC,GAAG,WAAW,MAAO,CAACd,EAAIe,GAAG,YAAYC,OAAM,GAAM,MAAM,MAAK,IAAO,CAAChB,EAAIiB,GAAG,KAAKjB,EAAIe,GAAG,UAAUf,EAAIiB,GAAG,KAAK9I,EAAG6H,EAAIkB,cAAc,CAACf,IAAI,UAAUnG,IAAI,YAAYmH,MAAMnB,EAAI1J,SAASuJ,2BAA2BnH,MAAM,CAAC,GAAKsH,EAAItC,aAAa,kBAAkBsC,EAAIhD,oBAAsBgD,EAAItD,SAAS,cAAc,qBAAqB,SAAW,MAAM/D,GAAG,CAAC,QAAUqH,EAAIU,UAAU,MAAQV,EAAIrB,kBAAkB,CAACqB,EAAIe,GAAG,WAAU,WAAW,MAAO,CAACf,EAAIoB,GAAIpB,EAAS,OAAE,SAASnH,EAAKuG,GAAO,MAAO,CAAEY,EAAIpH,OAAOC,GAAO,CAACV,EAAG,8BAA8B,CAAC0I,IAAIb,EAAIJ,eAAelH,MAAM,CAAC,KAAOG,GAAMF,GAAG,CAAC,OAASqH,EAAIqB,cAAcV,YAAYX,EAAIY,GAAG,CAAE,cAAeZ,EAAInC,aAAc,CAACgD,IAAI,YAAYC,GAAG,WAAW,MAAO,CAACd,EAAIe,GAAG,YAAY,KAAK,CAAC,KAAOlI,MAASmI,OAAM,GAAM,MAAM,MAAK,MAAS,CAAC7I,EAAG,+BAA+B,CAAC0I,IAAIhI,EAAKP,KAAKI,MAAM,CAAC,SAAqB,IAAV0G,EAAY,MAAQvG,GAAMF,GAAG,CAAC,OAASqH,EAAIqB,cAAcV,YAAYX,EAAIY,GAAG,CAAEZ,EAAInC,aAAa,eAAgB,CAACgD,IAAI,cAAcC,GAAG,WAAW,MAAO,CAACd,EAAIe,GAAG,cAAc,KAAK,CAAC,MAAQlI,MAASmI,OAAM,GAAM,KAAMhB,EAAInC,aAAa,aAAc,CAACgD,IAAI,UAAUC,GAAG,WAAW,OAAOd,EAAIoB,GAAIvI,EAAU,OAAE,SAASyI,GAAW,OAAOnJ,EAAG,8BAA8B,CAAC0I,IAAIb,EAAIJ,eAAelH,MAAM,CAAC,KAAO4I,GAAW3I,GAAG,CAAC,OAASqH,EAAIqB,cAAcV,YAAYX,EAAIY,GAAG,CAAC,CAACC,IAAI,YAAYC,GAAG,WAAW,MAAO,CAACd,EAAIe,GAAG,YAAY,KAAK,CAAC,KAAOO,MAAcN,OAAM,IAAO,MAAK,SAAWA,OAAM,GAAM,MAAM,MAAK,eAAgB,GAAGhB,EAAIiB,GAAG,KAAKjB,EAAIe,GAAG,WAAW,IAoBn5EQ,gBAnBA,SAGEnE,EAkB5B7B,OAhBuB6B,GAIc,OAFLA,GAkBhC,OACAA,OACAA,OACAA,GAGW,O,kCCtXf,mIAQA,MAAMoE,EAAa,uBAiInB,MAAMjG,EAhIO,CACXjD,KAAM,IACNkJ,aACA7M,WAAY,CACV8M,MAAA,KAEFtM,MAAO,CACL0D,KAAM,CACJzD,KAAMwH,OACNtH,UAAU,EACVC,QAAS,KACTyG,UAAW,KAKbK,QAAS,CACPjH,KAAMC,OACNE,QAAS,KACTyG,UAAUxD,QACqC4E,IAAtC,IAA2B5E,GAEpClD,UAAU,IAGdY,SAAU,CACR,SACE,IAAIwL,EAAYC,EAChB,MAA0G,iBAA9D,QAA5BD,EAAatJ,KAAKS,YAAiC,IAAf6I,OAAwB,EAASA,EAAWE,OAA0H,iBAA9D,QAA7BD,EAAcvJ,KAAKS,YAAkC,IAAhB8I,OAAyB,EAASA,EAAYE,KAEpN,kBACE,OAAO/I,QAAQV,KAAKyF,aAAatI,UAEnC,gBACE,MAAM,KACJsD,GACET,KACJ,OAAIA,KAAK0J,OAAe,CACtBC,GAAI,IACJrJ,MAAO,CACLkJ,KAAM/I,EAAK+I,KACXC,GAAIhJ,EAAKgJ,MACNhJ,EAAKmJ,YAEVC,UAAW,CACTC,MAAO9J,KAAKmH,SAGT,CACLwC,GAAI,SACJrJ,MAAO,IACDG,aAAmC,EAASA,EAAKmJ,WACrD5M,KAAM,UAER6M,UAAW,CACTC,MAAO,KACL,IAAIC,EACJtJ,SAA6E,QAAhCsJ,EAAetJ,EAAK0G,cAAqC,IAAjB4C,GAAmCA,EAAaC,UAAKhF,EAAWvE,GACrJT,KAAKmH,aAKb,YACE,IAAI8C,EAAaC,EACjB,OAAqC,QAA7BD,EAAcjK,KAAKS,YAAkC,IAAhBwJ,GAA+E,QAApDC,EAAwBD,EAAYL,kBAAkD,IAA1BM,GAAoCA,EAAsB9F,SAAW,KAAO,GAElN,iBACE,IAAI+F,EAAaC,EACjB,OAAqC,QAA7BD,EAAcnK,KAAKS,YAAkC,IAAhB0J,GAA+E,QAApDC,EAAwBD,EAAYP,kBAAkD,IAA1BQ,GAAoCA,EAAsBhG,SAAW,MAAQ,GAEnN,cACE,IAAIiG,EACJ,OAAOrK,KAAKiE,UAA0C,QAA7BoG,EAAcrK,KAAKS,YAAkC,IAAhB4J,OAAyB,EAASA,EAAYpG,UAE9G,UACE,IAAIqG,EAAuBC,EAC3B,MAAO,CAACvK,KAAK9B,SAASkL,WAA2I,QAA9HkB,EAAsD,QAA7BC,EAAcvK,KAAKS,YAAkC,IAAhB8J,OAAyB,EAASA,EAAYC,oBAAoD,IAA1BF,EAAmCA,EAAwB,GAGpOtK,KAAKyK,aAAoC,YAArBzK,KAAKyK,YAEzB,wBAAwBzK,KAAKyK,YAAgB,KAE/C,mBACE,MAAMZ,EAAY,CAChBa,QAAS1K,KAAKsI,WAKhB,OAHItI,KAAK2K,kBACPd,EAAUC,MAAQ9J,KAAKmH,QAElB0C,IAGXnL,QAAS,CACP,UAAUsH,GACR,MAAM,KACJC,GACED,EACJ,GAAIC,IAAS,KAASA,IAAS,IAC7B,GAAIjG,KAAK2K,gBACP3K,KAAKmH,aACA,CACL,YAAUnB,GAKV,MAAMsB,EAAI,IAAIsD,WAAW,QAAS,CAChCC,SAAS,EACTC,YAAY,IAKZ,IAAIC,EAHN,GAAI/K,KAAK0J,OACP1J,KAAK4F,MAAMnF,KAAKhB,IAAIuL,cAAc1D,QAGO,QAAxCyD,EAAmB/K,KAAK4F,MAAMnF,YAAuC,IAArBsK,GAAuCA,EAAiBC,cAAc1D,KAK/H,SACEtH,KAAK+F,MAAM,SAAU/F,KAAKS,SAa9B,MAeMiH,EAAoB,IACxB,CAAEC,OApBe,WAAa,IAAIC,EAAI5H,KAAS6H,EAAGD,EAAIE,eAAmB/H,EAAG6H,EAAI3H,MAAMF,IAAI8H,EAAG,OAAO9H,EAAG,KAAK6H,EAAIqD,GAAG,CAAClC,MAAMnB,EAAIsD,QAAQ5K,MAAM,CAAC,SAAWsH,EAAIuD,UAAU,cAAc,6BAA6BvD,EAAIwD,kBAAkB,CAACxD,EAAIe,GAAG,WAAU,WAAW,MAAO,CAAC5I,EAAG6H,EAAIyD,cAAc1B,GAAG/B,EAAIqD,GAAGrD,EAAI0D,GAAG,CAACvD,IAAI,OAAOnG,IAAI,YAAYoG,YAAY,+BAA+B1H,MAAM,CAAC,SAAWsH,EAAI2D,iBAAiB,YAAY3D,EAAIyD,cAAc/K,OAAM,GAAOsH,EAAIyD,cAAcxB,WAAW,CAAC9J,EAAG,OAAO,CAACiI,YAAY,qCAAqC,CAACJ,EAAIe,GAAG,aAAY,WAAW,MAAO,CAACf,EAAIiB,GAAG,eAAejB,EAAI4D,GAAG5D,EAAInH,KAAKG,MAAM,mBAAkB,UAAS,IAoBznBuI,gBAnBA,SAGEnE,EAkB5B7B,OAhBuB6B,GAIc,OAFLA,GAkBhC,OACAA,OACAA,OACAA,GAGW,O,kCC5Kf,kFAMA,MAAMyG,EAAiB,CACrB,CAAC,IAA2C1I,KAAM,2DAClD,CAAC,IAA2CC,QAAS,4DAiEvD,MAAMG,EA/DO,CACXjD,KAAM,IACN3D,WAAY,CACVmH,yBAAA,KAEF3G,MAAO,CAILoE,MAAO,CACLnE,KAAMwH,OACNtH,UAAU,EACVC,QAAS,KACTyG,UAAW,KAQb8H,SAAU,CACR1O,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAMXwO,eAAgB,CACd3O,KAAMC,OACNC,UAAU,EACVC,QAAS,IAA2C4F,IACpDa,UAAWxD,GAASoE,OAAOE,KAAK,KAA4C3C,SAAS3B,KAGzFtC,SAAU,CACR,cACE,OAAOkC,KAAK0L,SAAWD,EAAezL,KAAK2L,gBAAkB,MAE/D,aACE,IAAIC,EACJ,OAAO5L,KAAKyF,aAAa,iBAAkD,QAA9BmG,EAAc5L,KAAKmB,aAAmC,IAAhByK,OAAyB,EAASA,EAAY1L,OAEnI,iBACE,OAAOF,KAAK6L,WAAa7L,KAAK8L,OAAS,OAG3C,UACE9L,KAAK8L,OAAS,IAAS,kCAEzBpN,QAAS,CACP,aAAayI,GACXnH,KAAK+F,MAAM,SAAUoB,IAEvBK,aAAY,IACH,IAAS,sBAapB,MAeME,EAAoB,IACxB,CAAEC,OApBe,WAAa,IAAIC,EAAI5H,KAAS6H,EAAGD,EAAIE,eAAmB/H,EAAG6H,EAAI3H,MAAMF,IAAI8H,EAAG,OAAO9H,EAAG,KAAK,CAACgJ,MAAMnB,EAAImE,aAAa,CAAEnE,EAAc,WAAE7H,EAAG,MAAM,CAACiI,YAAY,yDAAyD1H,MAAM,CAAC,GAAKsH,EAAIkE,SAAS,CAAClE,EAAIe,GAAG,eAAc,WAAW,MAAO,CAACf,EAAIiB,GAAGjB,EAAI4D,GAAG5D,EAAIzG,MAAMjB,YAAW,GAAG0H,EAAIoE,KAAKpE,EAAIiB,GAAG,KAAK9I,EAAG,KAAK,CAACiI,YAAY,+BAA+B1H,MAAM,CAAC,kBAAkBsH,EAAIqE,iBAAiB,CAACrE,EAAIe,GAAG,WAAU,WAAW,OAAOf,EAAIoB,GAAIpB,EAAIzG,MAAW,OAAE,SAASV,GAAM,OAAOV,EAAG,8BAA8B,CAAC0I,IAAIb,EAAIJ,eAAelH,MAAM,CAAC,KAAOG,GAAMF,GAAG,CAAC,OAASqH,EAAIqB,cAAcV,YAAYX,EAAIY,GAAG,CAAC,CAACC,IAAI,YAAYC,GAAG,WAAW,MAAO,CAACd,EAAIe,GAAG,YAAY,KAAK,CAAC,KAAOlI,MAASmI,OAAM,IAAO,MAAK,YAAa,MAoB5uBO,gBAnBA,SAGEnE,EAkB5B7B,OAhBuB6B,GAIc,OAFLA,GAkBhC,OACAA,OACAA,OACAA,GAGW,O,wJChEf,MAAM7B,EAxCO,CACXjD,KAAM,mBACN3D,WAAY,CACV8M,MAAA,KAEF6C,cAAc,EACdnP,MAAO,CACL6D,KAAM,CACJ5D,KAAMC,OACNC,UAAU,EACVC,QAAS,MAEXsM,GAAI,CACFzM,KAAM,CAACC,OAAQuH,QACftH,UAAU,EACVC,QAAS,MAEXqM,KAAM,CACJxM,KAAMC,OACNC,UAAU,EACVC,QAAS,MAEXgP,YAAa,CACXnP,KAAM,CAACC,OAAQyD,SACfxD,UAAU,EACVC,SAAS,EACTyG,UAAUxD,IACmC,IAApC,EAAC,EAAO,QAAQ0G,QAAQ1G,IAGnC8D,KAAM,CACJlH,KAAMC,OACNC,UAAU,EACVC,QAAS,IAAsBiP,GAC/BxI,UAAWxD,GAASoE,OAAOE,KAAK,KAAuB3C,SAAS3B,MC+KtE,MAAM,EA3MO,CACXF,KAAM,eACN3D,WAAY,CACV8P,iBDqDwB,IACxB,CAAE1E,OApBe,WAAa,IAAIC,EAAI5H,KAAS6H,EAAGD,EAAIE,eAAmB/H,EAAG6H,EAAI3H,MAAMF,IAAI8H,EAAG,OAAO9H,EAAG,KAAK,CAACgJ,MAAO,yCAA2CnB,EAAI1D,MAAO,CAACnE,EAAG,SAAS,CAACO,MAAM,CAAC,KAAOsH,EAAI4B,KAAK,GAAK5B,EAAI6B,GAAG,eAAe7B,EAAIuE,cAAc,CAACvE,EAAIe,GAAG,WAAU,WAAW,MAAO,CAACf,EAAIiB,GAAGjB,EAAI4D,GAAG5D,EAAIhH,YAAW,IAAI,IAoBxSuI,gBAnBA,SAGEnE,EAkB5B7B,OAhBuB6B,GAIc,OAFLA,GAkBhC,OACAA,OACAA,OACAA,GC9DAsH,SAAA,IACAC,qBAAA,KAEF9P,WAAY,CACVC,UAAW,KAEbwP,cAAc,EACdnP,MAAO,CAILiE,MAAO,CACLhE,KAAM8D,MACN5D,UAAU,EACVC,QAAS,IAAM,CAAC,CACdyD,KAAM,GACN4I,KAAM,KAER5F,UAAW5C,GACFA,EAAMI,MAAMX,IACjB,MAAMiE,EAAOF,OAAOE,KAAKjE,GACzB,OAAOiE,EAAK3C,SAAS,UAAY2C,EAAK3C,SAAS,SAAW2C,EAAK3C,SAAS,UAI9EyK,UAAW,CACTxP,KAAMC,OACNC,UAAU,EACVC,QAAS,cAKXsP,cAAe,CACbzP,KAAMC,OACNC,UAAU,EACVC,QAAS,IAAM,YAAU,6BAA8B,0BAKzDuP,WAAY,CACV1P,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAKX+G,KAAM,CACJlH,KAAMC,OACNC,UAAU,EACVC,QAAS,IAAsBiP,GAC/BxI,UAAWxD,GAASoE,OAAOE,KAAK,KAAuB3C,SAAS3B,KAGpE,OACE,MAAO,CACLuM,aAAc,IAAI3M,KAAKgB,OAEvB4L,iBAAkB,GAElBC,sBAAuB,EAEvBC,aAAc,GAEdC,YAAY,IAGhBjP,SAAU,CACR,iBACE,OAAOkC,KAAK4M,iBAAiB/L,OAAS,GAExC,kBACE,OAAOb,KAAK+M,WAAa,GAAK,CAC5BC,QAAS,IAGb,YAQE,OAAIhN,KAAK+M,YAA2C,IAA7B/M,KAAK2M,aAAa9L,OAChC,CACL,cAAe,EACf,gBAAiB,WACjB,aAAc,SACd,YAAa,UAGV,IAET,eACE,MAAqB,OAAdb,KAAKkE,KAAgB,QAAU,UAExC,aACE,MAAqB,OAAdlE,KAAKkE,KAAgB,GAAK,KAGrC+I,MAAO,CACLjM,MAAO,CACLkM,QAAS,+BACTC,MAAM,GAER,WAAWC,GACLA,EAAUpN,KAAKqN,mBAAwBrN,KAAKsN,sBAGpD,UACEtN,KAAKuN,2BAA6B,IAASvN,KAAKwN,mBAAoB,KAEtE,UACMxN,KAAK0M,WACP1M,KAAKqN,mBAELrN,KAAK+M,YAAa,GAGtB,gBACE/M,KAAKsN,qBAEP5O,QAAS,CACP,aACEsB,KAAK2M,aAAe,IAAI3M,KAAKgB,OAC7BhB,KAAK4M,iBAAmB,IAE1B,qCACE5M,KAAKyN,aACAzN,KAAK0M,aACV1M,KAAK+M,YAAa,QAGZ/M,KAAKd,YACXc,KAAK6M,sBAAwB,EACxB7M,KAAK4F,MAAM8H,cAChB1N,KAAK4F,MAAM8H,YAAYC,QAAQ,CAACC,EAAG5G,KACjC,MAAM6G,EAAQD,EAAEnO,IAAIqO,YACpB9N,KAAK6M,uBAAyBgB,EAC9B7N,KAAK8M,aAAa9F,GAAS6G,IAE7B7N,KAAKwN,wBAEP,qBACExN,KAAK+M,YAAa,EAClB/M,KAAKyN,aACL,MAAMM,EAAiB/N,KAAKP,IAAIqO,YAGhC,GAAI9N,KAAK6M,sBAAwBkB,EAAgB,CAE/C,MAAMC,EAAiB,EAGjBC,EAAgBjO,KAAKgB,MAAMH,OAAS,EAC1C,IAAIqN,EAAclO,KAAK6M,sBACvB,IAAK,IAAI7F,EAAQgH,EAAgBhH,EAAQiH,IAEvCjO,KAAK4M,iBAAiBuB,KAAKnO,KAAK2M,aAAaqB,IAC7ChO,KAAK2M,aAAayB,OAAOJ,EAAgB,GACzCE,GAAelO,KAAK8M,aAAa9F,KAG7BkH,EAhBY,GAgBgBH,IAPsB/G,GAAS,IAUnEhH,KAAK+M,YAAa,GAEpB,WAAW/F,GACT,OAAOA,IAAUhH,KAAK2M,aAAa9L,OAAS,GAE9C,mBAAmBmG,GACjB,QAAOhH,KAAKqO,WAAWrH,IAAS,QAElC,mBACEhH,KAAKsO,iBAAmBtO,KAAKsO,eAAiB,IAAIC,eAAevO,KAAKuN,6BACtEvN,KAAKsO,eAAeE,QAAQxO,KAAKP,KACjCO,KAAKyO,gCAEP,oBACMzO,KAAKsO,iBACPtO,KAAKsO,eAAeI,UAAU1O,KAAKP,KACnCO,KAAKsO,eAAiB,MAExBtO,KAAKyN,cAEPkB,cAAclO,GAIJA,EAAKG,KAAqB,GAAd,cAaxB,MAeM,EAAoB,IACxB,CAAE+G,OApBe,WAAa,IAAIC,EAAI5H,KAAS6H,EAAGD,EAAIE,eAAmB/H,EAAG6H,EAAI3H,MAAMF,IAAI8H,EAAG,OAAO9H,EAAG,MAAM,CAACiI,YAAY,iBAAiB4G,MAAOhH,EAAmB,gBAAEtH,MAAM,CAAC,aAAasH,EAAI4E,YAAY,CAACzM,EAAG,KAAK6H,EAAIqD,GAAGrD,EAAI0D,GAAG,CAACtD,YAAY,iCAAiC,KAAKJ,EAAIiH,QAAO,GAAOjH,EAAIkH,YAAY,CAAElH,EAAkB,eAAE7H,EAAG,KAAK,CAACgJ,MAAO,yCAA2CnB,EAAI1D,MAAO,CAACnE,EAAG,yBAAyB,CAACO,MAAM,CAAC,MAAQsH,EAAIgF,iBAAiB,cAAchF,EAAI6E,cAAc,cAAc,GAAG,eAAe,GAAG,WAAW,GAAG,KAAO,aAAa,KAAO7E,EAAImH,iBAAiB,GAAGnH,EAAIoE,KAAKpE,EAAIiB,GAAG,KAAKjB,EAAIoB,GAAIpB,EAAgB,cAAE,SAASnH,EAAKuG,GAAO,OAAOjH,EAAG,qBAAqB,CAAC0I,IAAIzB,EAAMe,IAAI,cAAciH,UAAS,EAAKjG,MAAMnB,EAAI+G,cAAclO,GAAMmO,MAAOhH,EAAa,UAAEtH,MAAM,CAAC,KAAOG,EAAKG,KAAK,KAAOH,EAAK+I,KAAK,GAAK/I,EAAKgJ,GAAG,KAAO7B,EAAI1D,KAAK,eAAe0D,EAAIqH,mBAAmBjI,KAAS,CAAEvG,EAAe,WAAEV,EAAG,YAAY,CAACiI,YAAY,+DAA+D1H,MAAM,CAAC,IAAMG,EAAKyO,WAAW,KAAOtH,EAAIuH,WAAW,cAAc,OAAO,MAAQ,OAAO,cAAc,YAAYvH,EAAIoE,KAAKjM,EAAG,OAAO,CAACiI,YAAY,mBAAmB,CAACJ,EAAIiB,GAAGjB,EAAI4D,GAAG/K,EAAKG,UAAU,OAAM,MAoB5qCuI,gBAnBA,SAGEnE,EAkB5B,OAhBuBA,GAIc,OAFLA,GAkBhC,OACAA,OACAA,OACAA,GAGW,O,8JC3Of,MAAMoK,EAAY,YAAK,IAAS,CAAC,QAAS,cACpC,EAAQ,YAAsB,YAAS,IACxCA,EACHC,UAAW,YAAS,KACpBpL,QAAS,YAAS,OAChB,KAKEqL,EAA6B,YAAO,CACxCpP,KAAM,IACNtD,OAAQ,CAAC0D,EAAA,EAAY,KACrBiP,OAAQ,CACNC,cAAe,CACbrS,QAAS,IAAM,IAAM,OAGzB+O,cAAc,EACdnP,MAAK,EACLe,SAAU,CACR,aACE,OAAOkC,KAAKwP,iBAEd,gBACE,MAAO,IACFxP,KAAKyP,QACRC,KAAM,cAIZhR,QAAS,CACP,gBAEE,YAAU,KACJsB,KAAK2P,YACP3P,KAAK2P,WAAWC,MAAK,MAI3B,QAAQ5J,GACNhG,KAAK+F,MAAM,IAAkBC,GAC7BhG,KAAK6P,kBAGT,OAAOC,GACL,MAAM,UACJT,EAAS,QACTpL,EAAO,OACP8L,EAAM,SACN3L,EAAQ,QACR4L,EAAO,QACPP,GACEzP,KACJ,OAAO8P,EAAE,KAAM,CACb/G,MAAO0G,EAAQ1G,MACf6F,MAAOa,EAAQb,MACftO,MAAO,CACLoP,KAAM,iBAEP,CAACI,EAAE,IAAO,CACX9H,YAAa,gBACbe,MAAO,CAACsG,EAAW,CACjB,CAAC,QAAQpL,GAAYA,KAAa8L,GAAU3L,KAE9CrH,MAAO,YAAWqS,EAAWpP,KAAKiQ,QAClC3P,MAAON,KAAKkQ,cACZ3P,GAAI,CACFuJ,MAAOkG,GAETjI,IAAK,QACJ/H,KAAKmQ,sBC1EN,EAAQ,YAAsB,CAClCJ,OAAQ,YAAS,KAAmB,GACpCK,YAAa,YAAS,IAAkB,UACxCC,YAAa,YAAS,KACtBjM,SAAU,YAAS,KAAmB,GACtCH,QAAS,YAAS,KAClByL,KAAM,YAAS,IAAkB,aAChC,KAKGY,EAAmC,YAAO,CAC9CpQ,KAAM,IACNtD,OAAQ,CAAC0D,EAAA,EAAY,KACrBiP,OAAQ,CACNC,cAAe,CACbrS,QAAS,IAAM,IAAM,OAGzB+O,cAAc,EACdnP,MAAK,EACLe,SAAU,CACR,aACE,OAAOkC,KAAKwP,iBAEd,gBACE,MAAO,IACFxP,KAAKyP,QACRC,KAAM1P,KAAK0P,KACX1S,KAAM,SACNoH,SAAUpE,KAAKoE,SACf,gBAAiBpE,KAAK+P,OAAS,OAAS,QAI9CrR,QAAS,CACP,gBACMsB,KAAK2P,YACP3P,KAAK2P,WAAWC,MAAK,IAGzB,QAAQ5J,GACNhG,KAAK+F,MAAM,IAAkBC,GAC7BhG,KAAK6P,kBAGT,OAAOC,GACL,MAAM,OACJC,EAAM,QACN9L,EAAO,QACPwL,GACEzP,KACJ,OAAO8P,EAAE,KAAM,CACb/G,MAAO0G,EAAQ1G,MACf6F,MAAOa,EAAQb,MACftO,MAAO,CACLoP,KAAM,iBAEP,CAACI,EAAE,SAAU,CACd9H,YAAa,gBACbe,MAAO,CAAC/I,KAAKqQ,YAAa,CACxB,CAACrQ,KAAKoQ,aAAcL,EACpB,CAAC,QAAQ9L,GAAYA,KAAa8L,GAAU/P,KAAKoE,YAEnD9D,MAAON,KAAKkQ,cACZ3P,GAAI,CACFuJ,MAAO9J,KAAKgQ,SAEdjI,IAAK,UACJ/H,KAAKmQ,sB,yECyBZ,MAAMhN,EAjGO,CACXjD,KAAM,iBACN3D,WAAY,CACVgU,OAAA,IACAjE,SAAA,IACA9P,SAAA,KAEF0P,cAAc,EACdnP,MAAO,CACLyT,UAAW,CACTxT,KAAMC,OACNC,UAAU,EACVC,QAAS,IAEXsT,UAAW,CACTzT,KAAMC,OACNC,UAAU,EACVC,QAAS,IAEXuT,SAAU,CACR1T,KAAMC,OACNC,UAAU,EACVC,QAAS,IAEXwT,mBAAoB,CAClB3T,KAAMC,OACNC,UAAU,EACVC,QAAS,IAEXyT,cAAe,CACb5T,KAAMC,OACNC,UAAU,EACVC,QAAS,IAEX0T,UAAW,CACT7T,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAEX2T,YAAa,CACX9T,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAEX4T,gBAAiB,CACf/T,KAAM0D,QACNxD,UAAU,EACVC,SAAS,GAEX6T,cAAe,CACbhU,KAAMC,OACNC,UAAU,EACVC,QAAS,IAEXuS,KAAM,CACJ1S,KAAMC,OACNC,UAAU,EACVC,QAAS,OAGbW,SAAU,CACR,qBACE,MAAM,KACJ0L,EAAI,GACJC,GACEzJ,KAAK6O,OAET,OAAOrF,GAAQC,EAAK6F,EAAgBgB,GAEtC,0BACE,MAAMvT,EAAQ,IACTiD,KAAK6O,QAGV,OADI7O,KAAK0P,OAAM3S,EAAM2S,KAAO1P,KAAK0P,MAC1B3S,GAET,eACE,OAAO,IAAmBiD,KAAKyQ,YAAc,wBAE/C,sBACE,OAAOzQ,KAAK6Q,WAAa7Q,KAAK8Q,aAEhC,iBACE,OAAI9Q,KAAK+Q,gBACA,GAEF,0BAGXrS,QAAS,CACP,uBACEsB,KAAK+F,MAAM,uBAaf,MAeM2B,EAAoB,IACxB,CAAEC,OApBe,WAAa,IAAIC,EAAI5H,KAAS6H,EAAGD,EAAIE,eAAmB/H,EAAG6H,EAAI3H,MAAMF,IAAI8H,EAAG,OAAO9H,EAAG6H,EAAIqJ,mBAAmBrJ,EAAIqD,GAAGrD,EAAI0D,GAAG,CAAC1J,IAAI,YAAYoG,YAAY,oBAAoB,YAAYJ,EAAIsJ,yBAAwB,GAAOtJ,EAAIkH,YAAY,CAAElH,EAAuB,oBAAE7H,EAAG,UAAU,CAACgJ,MAAM,CAAC,8BAA+B,CAAE,gBAAiBnB,EAAIiJ,WAAajJ,EAAIuJ,gBAAgB7Q,MAAM,CAAC,KAAO,qBAAqB,cAAc,4BAA4BsH,EAAIoE,KAAKpE,EAAIiB,GAAG,KAAMjB,EAAY,SAAE7H,EAAG,UAAU,CAACgJ,MAAM,CAAC,wBAAyBnB,EAAIwJ,cAAc9Q,MAAM,CAAC,KAAOsH,EAAI8I,YAAY9I,EAAIoE,KAAKpE,EAAIiB,GAAG,KAAMjB,EAAa,UAAE7H,EAAG,YAAY,CAACO,MAAM,CAAC,KAAO,GAAG,IAAMsH,EAAI4I,aAAa5I,EAAIoE,KAAKpE,EAAIiB,GAAG,KAAK9I,EAAG,MAAM,CAACiI,YAAY,iCAAiC,CAACjI,EAAG,IAAI,CAACiI,YAAY,iCAAiC,CAACJ,EAAIe,GAAG,YAAY,GAAGf,EAAIiB,GAAG,KAAMjB,EAAiB,cAAE7H,EAAG,IAAI,CAACiI,YAAY,mCAAmC,CAACJ,EAAIiB,GAAGjB,EAAI4D,GAAG5D,EAAIoJ,kBAAkBpJ,EAAIoE,OAAOpE,EAAIiB,GAAG,KAAMjB,EAAiB,cAAE7H,EAAG,YAAY,CAACO,MAAM,CAAC,KAAO,QAAQ,KAAOsH,EAAIgJ,cAAc,aAAahJ,EAAI+I,oBAAsB/I,EAAIgJ,eAAerQ,GAAG,CAAC,MAAQ,SAAS8Q,GAAyD,OAAjDA,EAAOC,kBAAkBD,EAAOxR,iBAAwB+H,EAAI2J,qBAAqBC,MAAM,KAAMC,eAAe7J,EAAIoE,MAAM,IAoBjuC7C,gBAnBA,SAGEnE,EAkB5B7B,OAhBuB6B,GAIc,OAFLA,GAkBhC,OACAA,OACAA,OACAA,GAGW","file":"commons-pages.groups.new-pages.import.gitlab_projects.new-pages.import.manifest.new-pages.projects.n-44c6c18e.5694c6d6.chunk.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\",value:(_vm.tooltip),expression:\"tooltip\"}],attrs:{\"aria-controls\":\"super-sidebar\",\"aria-expanded\":_vm.ariaExpanded,\"aria-label\":_vm.$options.i18n.primaryNavigationSidebar,\"icon\":\"sidebar\",\"category\":\"tertiary\"},on:{\"click\":_vm.toggle}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/babel-loader/lib/index.js??ref--14-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./super_sidebar_toggle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/babel-loader/lib/index.js??ref--14-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./super_sidebar_toggle.vue?vue&type=script&lang=js\"","\n\n\n \n\n","import { render, staticRenderFns } from \"./super_sidebar_toggle.vue?vue&type=template&id=34f472e6\"\nimport script from \"./super_sidebar_toggle.vue?vue&type=script&lang=js\"\nexport * from \"./super_sidebar_toggle.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport isFunction from 'lodash/isFunction';\nimport isString from 'lodash/isString';\nimport { DISCLOSURE_DROPDOWN_ITEM_NAME, DISCLOSURE_DROPDOWN_GROUP_NAME } from './constants';\n\nconst itemValidator = item => {\n var _item$text;\n return (item === null || item === void 0 ? void 0 : (_item$text = item.text) === null || _item$text === void 0 ? void 0 : _item$text.length) > 0 && !Array.isArray(item === null || item === void 0 ? void 0 : item.items);\n};\nconst isItem = item => Boolean(item) && itemValidator(item);\nconst isGroup = group => Boolean(group) && Array.isArray(group.items) && Boolean(group.items.length) &&\n// eslint-disable-next-line unicorn/no-array-callback-reference\ngroup.items.every(isItem);\n\n// eslint-disable-next-line unicorn/no-array-callback-reference\nconst itemsValidator = items => items.every(isItem) || items.every(isGroup);\nconst isListItem = tag => ['gl-disclosure-dropdown-group', 'gl-disclosure-dropdown-item', 'li'].includes(tag);\nconst isValidSlotTagVue2 = vNode => {\n var _vNode$componentOptio;\n return Boolean(vNode) && isListItem(((_vNode$componentOptio = vNode.componentOptions) === null || _vNode$componentOptio === void 0 ? void 0 : _vNode$componentOptio.tag) || vNode.tag);\n};\nconst isValidSlotTagVue3 = vNode => {\n var _vNode$type;\n return [DISCLOSURE_DROPDOWN_ITEM_NAME, DISCLOSURE_DROPDOWN_GROUP_NAME].includes((_vNode$type = vNode.type) === null || _vNode$type === void 0 ? void 0 : _vNode$type.name) || vNode.type === 'li';\n};\nconst hasOnlyListItemsVue2 = defaultSlot => {\n const nodes = defaultSlot();\n if (!Array.isArray(nodes)) {\n return false;\n }\n const tags = nodes.filter(vNode => vNode.tag);\n return tags.length && tags.every(tag => isValidSlotTagVue2(tag));\n};\nconst hasOnlyListItemsVue3 = defaultSlot => {\n const nodes = defaultSlot();\n const fragment = nodes.find(node => Array.isArray(node.children) && node.children.length);\n const targetNodes = fragment ? fragment.children : nodes;\n return targetNodes\n // Remove empty text vNodes\n .filter(vNode => !isString(vNode.text) || vNode.text.trim().length > 0).every(vNode => isValidSlotTagVue3(vNode));\n};\nconst hasOnlyListItems = defaultSlot => {\n if (!isFunction(defaultSlot)) {\n return false;\n }\n if (Vue.version.startsWith('3')) {\n return hasOnlyListItemsVue3(defaultSlot);\n }\n return hasOnlyListItemsVue2(defaultSlot);\n};\n\nexport { hasOnlyListItems, isGroup, isItem, itemsValidator };\n","const DISCLOSURE_DROPDOWN_ITEM_NAME = 'GlDisclosureDropdownItem';\nconst DISCLOSURE_DROPDOWN_GROUP_NAME = 'GlDisclosureDropdownGroup';\nconst DISCLOSURE_DROPDOWN_GROUP_BORDER_POSITIONS = {\n top: 'top',\n bottom: 'bottom'\n};\n\nexport { DISCLOSURE_DROPDOWN_GROUP_BORDER_POSITIONS, DISCLOSURE_DROPDOWN_GROUP_NAME, DISCLOSURE_DROPDOWN_ITEM_NAME };\n","import clamp from 'lodash/clamp';\nimport uniqueId from 'lodash/uniqueId';\nimport { stopEvent, filterVisible } from '../../../../utils/utils';\nimport { GL_DROPDOWN_SHOWN, GL_DROPDOWN_HIDDEN, GL_DROPDOWN_BEFORE_CLOSE, GL_DROPDOWN_FOCUS_CONTENT, POSITION_ABSOLUTE, POSITION_FIXED, HOME, END, ARROW_UP, ARROW_DOWN, ENTER, SPACE, GL_DROPDOWN_CONTENTS_CLASS } from '../constants';\nimport { buttonCategoryOptions, dropdownVariantOptions, buttonSizeOptions, dropdownPlacements } from '../../../../utils/constants';\nimport GlBaseDropdown, { BASE_DROPDOWN_CLASS } from '../base_dropdown/base_dropdown';\nimport GlDisclosureDropdownItem, { ITEM_CLASS } from './disclosure_dropdown_item';\nimport GlDisclosureDropdownGroup from './disclosure_dropdown_group';\nimport { itemsValidator, hasOnlyListItems, isItem } from './utils';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\n//\nconst DROPDOWN_SELECTOR = `.${BASE_DROPDOWN_CLASS}`;\nconst ITEM_SELECTOR = `.${ITEM_CLASS}`;\nvar script = {\n name: 'GlDisclosureDropdown',\n events: {\n GL_DROPDOWN_SHOWN,\n GL_DROPDOWN_HIDDEN,\n GL_DROPDOWN_BEFORE_CLOSE,\n GL_DROPDOWN_FOCUS_CONTENT\n },\n components: {\n GlBaseDropdown,\n GlDisclosureDropdownItem,\n GlDisclosureDropdownGroup\n },\n props: {\n /**\n * Items to display in the dropdown\n */\n items: {\n type: Array,\n required: false,\n default: () => [],\n validator: itemsValidator\n },\n /**\n * Toggle button text\n */\n toggleText: {\n type: String,\n required: false,\n default: ''\n },\n /**\n * Toggle text to be read by screen readers only\n */\n textSrOnly: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Styling option - dropdown's toggle category\n */\n category: {\n type: String,\n required: false,\n default: buttonCategoryOptions.primary,\n validator: value => value in buttonCategoryOptions\n },\n /**\n * Styling option - dropdown's toggle variant\n */\n variant: {\n type: String,\n required: false,\n default: dropdownVariantOptions.default,\n validator: value => value in dropdownVariantOptions\n },\n /**\n * The size of the dropdown toggle\n */\n size: {\n type: String,\n required: false,\n default: 'medium',\n validator: value => value in buttonSizeOptions\n },\n /**\n * Icon name that will be rendered in the toggle button\n */\n icon: {\n type: String,\n required: false,\n default: ''\n },\n /**\n * Set to \"true\" to disable the dropdown\n */\n disabled: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Set to \"true\" when dropdown content (items) is loading\n * It will render a small loader in the dropdown toggle and make it disabled\n */\n loading: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Custom toggle id.\n * For instance, it can be referenced by tooltip or popover\n */\n toggleId: {\n type: String,\n required: false,\n default: () => uniqueId('dropdown-toggle-btn-')\n },\n /**\n * Additional CSS classes to customize toggle appearance\n */\n toggleClass: {\n type: [String, Array, Object],\n required: false,\n default: null\n },\n /**\n * Set to \"true\" to hide the caret\n */\n noCaret: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Align disclosure dropdown with respect to the toggle button\n */\n placement: {\n type: String,\n required: false,\n default: 'bottom-start',\n validator: value => Object.keys(dropdownPlacements).includes(value)\n },\n /**\n * The `aria-labelledby` attribute value for the toggle button\n * Provide the string of ids seperated by space\n */\n toggleAriaLabelledBy: {\n type: String,\n required: false,\n default: null\n },\n /**\n * The `aria-labelledby` attribute value for the list of options\n * Provide the string of ids seperated by space\n */\n listAriaLabelledBy: {\n type: String,\n required: false,\n default: null\n },\n /**\n * Render the toggle button as a block element\n */\n block: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Custom offset to be applied to Floating UI's offset middleware.\n * https://floating-ui.com/docs/offset\n */\n dropdownOffset: {\n type: [Number, Object],\n required: false,\n default: undefined\n },\n /**\n * Lets the dropdown extend to match its content's width, up to a maximum width\n * defined by the `$gl-new-dropdown-max-width` variable.\n */\n fluidWidth: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Close the dropdown on item click (action)\n */\n autoClose: {\n type: Boolean,\n required: false,\n default: true\n },\n /**\n * Strategy to be applied by computePosition. If the dropdown's container is too short for it to\n * fit in, setting this to fixed will let it position itself above its container.\n * https://floating-ui.com/docs/computePosition#strategy\n */\n positioningStrategy: {\n type: String,\n required: false,\n default: POSITION_ABSOLUTE,\n validator: strategy => [POSITION_ABSOLUTE, POSITION_FIXED].includes(strategy)\n },\n /**\n * Opens dropdown on render\n */\n startOpened: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n data() {\n return {\n disclosureId: uniqueId('disclosure-'),\n nextFocusedItemIndex: null\n };\n },\n computed: {\n disclosureTag() {\n var _this$items;\n if ((_this$items = this.items) !== null && _this$items !== void 0 && _this$items.length ||\n // eslint-disable-next-line @gitlab/vue-prefer-dollar-scopedslots\n hasOnlyListItems(this.$scopedSlots.default || this.$slots.default)) {\n return 'ul';\n }\n return 'div';\n },\n hasCustomToggle() {\n return Boolean(this.$scopedSlots.toggle);\n }\n },\n mounted() {\n if (this.startOpened) {\n this.open();\n }\n },\n methods: {\n open() {\n this.$refs.baseDropdown.open();\n },\n close() {\n this.$refs.baseDropdown.close();\n },\n onShow() {\n /**\n * Emitted when dropdown is shown\n *\n * @event shown\n */\n this.$emit(GL_DROPDOWN_SHOWN);\n },\n onBeforeClose(event) {\n /**\n * Emitted when dropdown is about to be closed\n *\n * @event beforeClose\n */\n this.$emit(GL_DROPDOWN_BEFORE_CLOSE, event);\n },\n onHide() {\n /**\n * Emitted when dropdown is hidden\n *\n * @event hidden\n */\n this.$emit(GL_DROPDOWN_HIDDEN);\n this.nextFocusedItemIndex = null;\n },\n onKeydown(event) {\n const {\n code\n } = event;\n const elements = this.getFocusableListItemElements();\n if (elements.length < 1) return;\n let stop = true;\n if (code === HOME) {\n this.focusItem(0, elements);\n } else if (code === END) {\n this.focusItem(elements.length - 1, elements);\n } else if (code === ARROW_UP) {\n this.focusNextItem(event, elements, -1);\n } else if (code === ARROW_DOWN) {\n this.focusNextItem(event, elements, 1);\n } else if (code === ENTER || code === SPACE) {\n this.handleAutoClose(event);\n } else {\n stop = false;\n }\n if (stop) {\n stopEvent(event);\n }\n },\n getFocusableListItemElements() {\n var _this$$refs$content;\n const items = (_this$$refs$content = this.$refs.content) === null || _this$$refs$content === void 0 ? void 0 : _this$$refs$content.querySelectorAll(ITEM_SELECTOR);\n return filterVisible(Array.from(items || []));\n },\n focusNextItem(event, elements, offset) {\n const {\n target\n } = event;\n const currentIndex = elements.indexOf(target);\n const nextIndex = clamp(currentIndex + offset, 0, elements.length - 1);\n this.focusItem(nextIndex, elements);\n },\n focusItem(index, elements) {\n var _elements$index;\n this.nextFocusedItemIndex = index;\n (_elements$index = elements[index]) === null || _elements$index === void 0 ? void 0 : _elements$index.focus();\n },\n closeAndFocus() {\n this.$refs.baseDropdown.closeAndFocus();\n },\n handleAction(action) {\n // See https://gitlab.com/gitlab-org/gitlab-ui/-/merge_requests/4376 for\n // detailed explanation why we need requestAnimationFrame\n window.requestAnimationFrame(() => {\n /**\n * Emitted when one of disclosure dropdown items is clicked\n *\n * @event action\n */\n this.$emit('action', action);\n });\n },\n handleAutoClose(e) {\n if (this.autoClose && e.target.closest(ITEM_SELECTOR) && e.target.closest(DROPDOWN_SELECTOR) === this.$refs.baseDropdown.$el) {\n this.closeAndFocus();\n }\n },\n uniqueItemId() {\n return uniqueId(`disclosure-item-`);\n },\n isItem\n },\n GL_DROPDOWN_CONTENTS_CLASS\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-base-dropdown',{ref:\"baseDropdown\",staticClass:\"gl-disclosure-dropdown\",attrs:{\"aria-labelledby\":_vm.toggleAriaLabelledBy,\"arrow-element\":_vm.$refs.disclosureArrow,\"toggle-id\":_vm.toggleId,\"toggle-text\":_vm.toggleText,\"toggle-class\":_vm.toggleClass,\"text-sr-only\":_vm.textSrOnly,\"category\":_vm.category,\"variant\":_vm.variant,\"size\":_vm.size,\"icon\":_vm.icon,\"disabled\":_vm.disabled,\"loading\":_vm.loading,\"no-caret\":_vm.noCaret,\"placement\":_vm.placement,\"block\":_vm.block,\"offset\":_vm.dropdownOffset,\"fluid-width\":_vm.fluidWidth,\"positioning-strategy\":_vm.positioningStrategy},on:_vm._d({},[_vm.$options.events.GL_DROPDOWN_SHOWN,_vm.onShow,_vm.$options.events.GL_DROPDOWN_HIDDEN,_vm.onHide,_vm.$options.events.GL_DROPDOWN_BEFORE_CLOSE,_vm.onBeforeClose,_vm.$options.events.GL_DROPDOWN_FOCUS_CONTENT,_vm.onKeydown]),scopedSlots:_vm._u([(_vm.hasCustomToggle)?{key:\"toggle\",fn:function(){return [_vm._t(\"toggle\")]},proxy:true}:null],null,true)},[_vm._v(\" \"),_vm._t(\"header\"),_vm._v(\" \"),_c(_vm.disclosureTag,{ref:\"content\",tag:\"component\",class:_vm.$options.GL_DROPDOWN_CONTENTS_CLASS,attrs:{\"id\":_vm.disclosureId,\"aria-labelledby\":_vm.listAriaLabelledBy || _vm.toggleId,\"data-testid\":\"disclosure-content\",\"tabindex\":\"-1\"},on:{\"keydown\":_vm.onKeydown,\"click\":_vm.handleAutoClose}},[_vm._t(\"default\",function(){return [_vm._l((_vm.items),function(item,index){return [(_vm.isItem(item))?[_c('gl-disclosure-dropdown-item',{key:_vm.uniqueItemId(),attrs:{\"item\":item},on:{\"action\":_vm.handleAction},scopedSlots:_vm._u([('list-item' in _vm.$scopedSlots)?{key:\"list-item\",fn:function(){return [_vm._t(\"list-item\",null,{\"item\":item})]},proxy:true}:null],null,true)})]:[_c('gl-disclosure-dropdown-group',{key:item.name,attrs:{\"bordered\":index !== 0,\"group\":item},on:{\"action\":_vm.handleAction},scopedSlots:_vm._u([(_vm.$scopedSlots['group-label'])?{key:\"group-label\",fn:function(){return [_vm._t(\"group-label\",null,{\"group\":item})]},proxy:true}:null,(_vm.$scopedSlots['list-item'])?{key:\"default\",fn:function(){return _vm._l((item.items),function(groupItem){return _c('gl-disclosure-dropdown-item',{key:_vm.uniqueItemId(),attrs:{\"item\":groupItem},on:{\"action\":_vm.handleAction},scopedSlots:_vm._u([{key:\"list-item\",fn:function(){return [_vm._t(\"list-item\",null,{\"item\":groupItem})]},proxy:true}],null,true)})})},proxy:true}:null],null,true)})]]})]})],2),_vm._v(\" \"),_vm._t(\"footer\")],2)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\nexport { DROPDOWN_SELECTOR, ITEM_SELECTOR };\n","import { BLink } from '../../../../vendor/bootstrap-vue/src/components/link/link';\nimport { ENTER, SPACE } from '../constants';\nimport { stopEvent } from '../../../../utils/utils';\nimport { dropdownItemVariantOptions } from '../../../../utils/constants';\nimport { isItem } from './utils';\nimport { DISCLOSURE_DROPDOWN_ITEM_NAME } from './constants';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nconst ITEM_CLASS = 'gl-new-dropdown-item';\nvar script = {\n name: DISCLOSURE_DROPDOWN_ITEM_NAME,\n ITEM_CLASS,\n components: {\n BLink\n },\n props: {\n item: {\n type: Object,\n required: false,\n default: null,\n validator: isItem\n },\n /**\n * The variant of the dropdown item.\n */\n variant: {\n type: String,\n default: null,\n validator(value) {\n return dropdownItemVariantOptions[value] !== undefined;\n },\n required: false\n }\n },\n computed: {\n isLink() {\n var _this$item, _this$item2;\n return typeof ((_this$item = this.item) === null || _this$item === void 0 ? void 0 : _this$item.href) === 'string' || typeof ((_this$item2 = this.item) === null || _this$item2 === void 0 ? void 0 : _this$item2.to) === 'string';\n },\n isCustomContent() {\n return Boolean(this.$scopedSlots.default);\n },\n itemComponent() {\n const {\n item\n } = this;\n if (this.isLink) return {\n is: BLink,\n attrs: {\n href: item.href,\n to: item.to,\n ...item.extraAttrs\n },\n listeners: {\n click: this.action\n }\n };\n return {\n is: 'button',\n attrs: {\n ...(item === null || item === void 0 ? void 0 : item.extraAttrs),\n type: 'button'\n },\n listeners: {\n click: () => {\n var _item$action;\n item === null || item === void 0 ? void 0 : (_item$action = item.action) === null || _item$action === void 0 ? void 0 : _item$action.call(undefined, item);\n this.action();\n }\n }\n };\n },\n listIndex() {\n var _this$item3, _this$item3$extraAttr;\n return (_this$item3 = this.item) !== null && _this$item3 !== void 0 && (_this$item3$extraAttr = _this$item3.extraAttrs) !== null && _this$item3$extraAttr !== void 0 && _this$item3$extraAttr.disabled ? null : 0;\n },\n componentIndex() {\n var _this$item4, _this$item4$extraAttr;\n return (_this$item4 = this.item) !== null && _this$item4 !== void 0 && (_this$item4$extraAttr = _this$item4.extraAttrs) !== null && _this$item4$extraAttr !== void 0 && _this$item4$extraAttr.disabled ? null : -1;\n },\n itemVariant() {\n var _this$item5;\n return this.variant || ((_this$item5 = this.item) === null || _this$item5 === void 0 ? void 0 : _this$item5.variant);\n },\n classes() {\n var _this$item$wrapperCla, _this$item6;\n return [this.$options.ITEM_CLASS, (_this$item$wrapperCla = (_this$item6 = this.item) === null || _this$item6 === void 0 ? void 0 : _this$item6.wrapperClass) !== null && _this$item$wrapperCla !== void 0 ? _this$item$wrapperCla : '',\n // This isn't a Tailwind class, so this lint rule isn't relevant.\n // It just so happens this class has the same prefix `gl-`.\n this.itemVariant && this.itemVariant !== 'default' ?\n // eslint-disable-next-line @gitlab/tailwind-no-interpolation\n `gl-new-dropdown-item-${this.itemVariant}` : ''];\n },\n wrapperListeners() {\n const listeners = {\n keydown: this.onKeydown\n };\n if (this.isCustomContent) {\n listeners.click = this.action;\n }\n return listeners;\n }\n },\n methods: {\n onKeydown(event) {\n const {\n code\n } = event;\n if (code === ENTER || code === SPACE) {\n if (this.isCustomContent) {\n this.action();\n } else {\n stopEvent(event);\n /** Instead of simply navigating or calling the action, we want\n * the `a/button` to be the target of the event as it might have additional attributes.\n * E.g. `a` might have `target` attribute.\n */\n const e = new MouseEvent('click', {\n bubbles: true,\n cancelable: true\n });\n if (this.isLink) {\n this.$refs.item.$el.dispatchEvent(e);\n } else {\n var _this$$refs$item;\n (_this$$refs$item = this.$refs.item) === null || _this$$refs$item === void 0 ? void 0 : _this$$refs$item.dispatchEvent(e);\n }\n }\n }\n },\n action() {\n this.$emit('action', this.item);\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',_vm._g({class:_vm.classes,attrs:{\"tabindex\":_vm.listIndex,\"data-testid\":\"disclosure-dropdown-item\"}},_vm.wrapperListeners),[_vm._t(\"default\",function(){return [_c(_vm.itemComponent.is,_vm._g(_vm._b({ref:\"item\",tag:\"component\",staticClass:\"gl-new-dropdown-item-content\",attrs:{\"tabindex\":_vm.componentIndex}},'component',_vm.itemComponent.attrs,false),_vm.itemComponent.listeners),[_c('span',{staticClass:\"gl-new-dropdown-item-text-wrapper\"},[_vm._t(\"list-item\",function(){return [_vm._v(\"\\n \"+_vm._s(_vm.item.text)+\"\\n \")]})],2)])]})],2)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\nexport { ITEM_CLASS };\n","import uniqueId from 'lodash/uniqueId';\nimport GlDisclosureDropdownItem from './disclosure_dropdown_item';\nimport { isGroup } from './utils';\nimport { DISCLOSURE_DROPDOWN_GROUP_BORDER_POSITIONS, DISCLOSURE_DROPDOWN_GROUP_NAME } from './constants';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nconst BORDER_CLASSES = {\n [DISCLOSURE_DROPDOWN_GROUP_BORDER_POSITIONS.top]: 'gl-border-t gl-border-t-dropdown-divider gl-pt-2 gl-mt-2',\n [DISCLOSURE_DROPDOWN_GROUP_BORDER_POSITIONS.bottom]: 'gl-border-b gl-border-b-dropdown-divider gl-pb-2 gl-mb-2'\n};\nvar script = {\n name: DISCLOSURE_DROPDOWN_GROUP_NAME,\n components: {\n GlDisclosureDropdownItem\n },\n props: {\n /**\n * Group of items\n */\n group: {\n type: Object,\n required: false,\n default: null,\n validator: isGroup\n },\n /**\n * If 'true', will set top border for the group\n * to separate from other groups. You can control\n * the border position using the `borderPosition`\n * property.\n */\n bordered: {\n type: Boolean,\n required: false,\n default: false\n },\n /**\n * Controls the position of the group's border. Valid\n * values are 'top' and 'bottom'.\n */\n borderPosition: {\n type: String,\n required: false,\n default: DISCLOSURE_DROPDOWN_GROUP_BORDER_POSITIONS.top,\n validator: value => Object.keys(DISCLOSURE_DROPDOWN_GROUP_BORDER_POSITIONS).includes(value)\n }\n },\n computed: {\n borderClass() {\n return this.bordered ? BORDER_CLASSES[this.borderPosition] : null;\n },\n showHeader() {\n var _this$group;\n return this.$scopedSlots['group-label'] || ((_this$group = this.group) === null || _this$group === void 0 ? void 0 : _this$group.name);\n },\n groupLabeledBy() {\n return this.showHeader ? this.nameId : null;\n }\n },\n created() {\n this.nameId = uniqueId('gl-disclosure-dropdown-group-');\n },\n methods: {\n handleAction(action) {\n this.$emit('action', action);\n },\n uniqueItemId() {\n return uniqueId(`disclosure-item-`);\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{class:_vm.borderClass},[(_vm.showHeader)?_c('div',{staticClass:\"gl-py-2 gl-pl-4 gl-text-sm gl-font-bold gl-text-strong\",attrs:{\"id\":_vm.nameId}},[_vm._t(\"group-label\",function(){return [_vm._v(_vm._s(_vm.group.name))]})],2):_vm._e(),_vm._v(\" \"),_c('ul',{staticClass:\"gl-mb-0 gl-list-none gl-pl-0\",attrs:{\"aria-labelledby\":_vm.groupLabeledBy}},[_vm._t(\"default\",function(){return _vm._l((_vm.group.items),function(item){return _c('gl-disclosure-dropdown-item',{key:_vm.uniqueItemId(),attrs:{\"item\":item},on:{\"action\":_vm.handleAction},scopedSlots:_vm._u([{key:\"list-item\",fn:function(){return [_vm._t(\"list-item\",null,{\"item\":item})]},proxy:true}],null,true)})})})],2)])};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\nexport { BORDER_CLASSES };\n","import { BLink } from '../../../vendor/bootstrap-vue/src/components/link/link';\nimport { breadCrumbSizeOptions } from '../../../utils/constants';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlBreadcrumbItem',\n components: {\n BLink\n },\n inheritAttrs: false,\n props: {\n text: {\n type: String,\n required: false,\n default: null\n },\n to: {\n type: [String, Object],\n required: false,\n default: null\n },\n href: {\n type: String,\n required: false,\n default: null\n },\n ariaCurrent: {\n type: [String, Boolean],\n required: false,\n default: false,\n validator(value) {\n return [false, 'page'].indexOf(value) !== -1;\n }\n },\n size: {\n type: String,\n required: false,\n default: breadCrumbSizeOptions.sm,\n validator: value => Object.keys(breadCrumbSizeOptions).includes(value)\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{class:(\"gl-breadcrumb-item gl-breadcrumb-item-\" + _vm.size)},[_c('b-link',{attrs:{\"href\":_vm.href,\"to\":_vm.to,\"aria-current\":_vm.ariaCurrent}},[_vm._t(\"default\",function(){return [_vm._v(_vm._s(_vm.text))]})],2)],1)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","import debounce from 'lodash/debounce';\nimport { translate } from '../../../utils/i18n';\nimport GlAvatar from '../avatar/avatar';\nimport GlDisclosureDropdown from '../new_dropdowns/disclosure/disclosure_dropdown';\nimport { GlTooltipDirective } from '../../../directives/tooltip';\nimport { breadCrumbSizeOptions } from '../../../utils/constants';\nimport GlBreadcrumbItem from './breadcrumb_item';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\n//\nvar script = {\n name: 'GlBreadcrumb',\n components: {\n GlBreadcrumbItem,\n GlAvatar,\n GlDisclosureDropdown\n },\n directives: {\n GlTooltip: GlTooltipDirective\n },\n inheritAttrs: false,\n props: {\n /**\n * The breadcrumb items to be displayed as links.\n */\n items: {\n type: Array,\n required: true,\n default: () => [{\n text: '',\n href: ''\n }],\n validator: items => {\n return items.every(item => {\n const keys = Object.keys(item);\n return keys.includes('text') && (keys.includes('href') || keys.includes('to'));\n });\n }\n },\n ariaLabel: {\n type: String,\n required: false,\n default: 'Breadcrumb'\n },\n /**\n * The label for the collapsed dropdown toggle. Screen-reader only.\n */\n showMoreLabel: {\n type: String,\n required: false,\n default: () => translate('GlBreadcrumb.showMoreLabel', 'Show more breadcrumbs')\n },\n /**\n * Allows to disable auto-resize behavior. Items will then overflow their container instead of being collapsed into a dropdown.\n */\n autoResize: {\n type: Boolean,\n required: false,\n default: true\n },\n /**\n * Size of the breadcrumb item. Use `sm` for page breadcrumbs.\n */\n size: {\n type: String,\n required: false,\n default: breadCrumbSizeOptions.sm,\n validator: value => Object.keys(breadCrumbSizeOptions).includes(value)\n }\n },\n data() {\n return {\n fittingItems: [...this.items],\n // array of items that fit on the screen\n overflowingItems: [],\n // array of items that didn't fit and were put in a dropdown instead\n totalBreadcrumbsWidth: 0,\n // the total width of all breadcrumb items combined\n widthPerItem: [],\n // array with the individual widths of each breadcrumb item\n resizeDone: false // to apply some CSS only during/after resizing\n };\n },\n computed: {\n hasCollapsible() {\n return this.overflowingItems.length > 0;\n },\n breadcrumbStyle() {\n return this.resizeDone ? {} : {\n opacity: 0\n };\n },\n itemStyle() {\n /**\n * If the last/only item, which is always visible, has a very long title,\n * it could overflow the breadcrumb component. This CSS makes sure it\n * shows an ellipsis instead.\n * But this CSS cannot be active while we do the size calculation, as that\n * would then not take the real unshrunk width of that item into account.\n */\n if (this.resizeDone && this.fittingItems.length === 1) {\n return {\n 'flex-shrink': 1,\n 'text-overflow': 'ellipsis',\n 'overflow-x': 'hidden',\n 'text-wrap': 'nowrap'\n };\n }\n return {};\n },\n dropdownSize() {\n return this.size === 'sm' ? 'small' : 'medium';\n },\n avatarSize() {\n return this.size === 'sm' ? 16 : 24;\n }\n },\n watch: {\n items: {\n handler: 'measureAndMakeBreadcrumbsFit',\n deep: true\n },\n autoResize(newValue) {\n if (newValue) this.enableAutoResize();else this.disableAutoResize();\n }\n },\n created() {\n this.debounceMakeBreadcrumbsFit = debounce(this.makeBreadcrumbsFit, 25);\n },\n mounted() {\n if (this.autoResize) {\n this.enableAutoResize();\n } else {\n this.resizeDone = true;\n }\n },\n beforeDestroy() {\n this.disableAutoResize();\n },\n methods: {\n resetItems() {\n this.fittingItems = [...this.items];\n this.overflowingItems = [];\n },\n async measureAndMakeBreadcrumbsFit() {\n this.resetItems();\n if (!this.autoResize) return;\n this.resizeDone = false;\n\n // Wait for DOM update so all items get rendered and can be measured.\n await this.$nextTick();\n this.totalBreadcrumbsWidth = 0;\n if (!this.$refs.breadcrumbs) return;\n this.$refs.breadcrumbs.forEach((b, index) => {\n const width = b.$el.clientWidth;\n this.totalBreadcrumbsWidth += width;\n this.widthPerItem[index] = width;\n });\n this.makeBreadcrumbsFit();\n },\n makeBreadcrumbsFit() {\n this.resizeDone = false;\n this.resetItems();\n const containerWidth = this.$el.clientWidth;\n const buttonWidth = 40; // px\n\n if (this.totalBreadcrumbsWidth > containerWidth) {\n // Not all breadcrumb items fit. Start moving items over to the dropdown.\n const startSlicingAt = 0;\n\n // The last item will never be moved into the dropdown.\n const stopSlicingAt = this.items.length - 1;\n let widthNeeded = this.totalBreadcrumbsWidth;\n for (let index = startSlicingAt; index < stopSlicingAt; index += 1) {\n // Move one breadcrumb item into the dropdown\n this.overflowingItems.push(this.fittingItems[startSlicingAt]);\n this.fittingItems.splice(startSlicingAt, 1);\n widthNeeded -= this.widthPerItem[index];\n\n // Does it fit now? Then stop.\n if (widthNeeded + buttonWidth < containerWidth) break;\n }\n }\n this.resizeDone = true;\n },\n isLastItem(index) {\n return index === this.fittingItems.length - 1;\n },\n getAriaCurrentAttr(index) {\n return this.isLastItem(index) ? 'page' : false;\n },\n enableAutoResize() {\n this.resizeObserver || (this.resizeObserver = new ResizeObserver(this.debounceMakeBreadcrumbsFit));\n this.resizeObserver.observe(this.$el);\n this.measureAndMakeBreadcrumbsFit();\n },\n disableAutoResize() {\n if (this.resizeObserver) {\n this.resizeObserver.unobserve(this.$el);\n this.resizeObserver = null;\n }\n this.resetItems();\n },\n hideItemClass(item) {\n // TODO once https://gitlab.com/gitlab-org/gitlab/-/issues/520089 is addressed:\n // - Remove this hiding of empty breadcrumbs.\n // - Tighten `items` validator to require non-empty `text`.\n return !item.text ? 'gl-hidden' : '';\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',{staticClass:\"gl-breadcrumbs\",style:(_vm.breadcrumbStyle),attrs:{\"aria-label\":_vm.ariaLabel}},[_c('ol',_vm._g(_vm._b({staticClass:\"gl-breadcrumb-list breadcrumb\"},'ol',_vm.$attrs,false),_vm.$listeners),[(_vm.hasCollapsible)?_c('li',{class:(\"gl-breadcrumb-item gl-breadcrumb-item-\" + _vm.size)},[_c('gl-disclosure-dropdown',{attrs:{\"items\":_vm.overflowingItems,\"toggle-text\":_vm.showMoreLabel,\"fluid-width\":\"\",\"text-sr-only\":\"\",\"no-caret\":\"\",\"icon\":\"ellipsis_h\",\"size\":_vm.dropdownSize}})],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.fittingItems),function(item,index){return _c('gl-breadcrumb-item',{key:index,ref:\"breadcrumbs\",refInFor:true,class:_vm.hideItemClass(item),style:(_vm.itemStyle),attrs:{\"text\":item.text,\"href\":item.href,\"to\":item.to,\"size\":_vm.size,\"aria-current\":_vm.getAriaCurrentAttr(index)}},[(item.avatarPath)?_c('gl-avatar',{staticClass:\"gl-breadcrumb-avatar-tile gl-border gl-mr-2 !gl-rounded-base\",attrs:{\"src\":item.avatarPath,\"size\":_vm.avatarSize,\"aria-hidden\":\"true\",\"shape\":\"rect\",\"data-testid\":\"avatar\"}}):_vm._e(),_c('span',{staticClass:\"gl-align-middle\"},[_vm._v(_vm._s(item.text))])],1)})],2)])};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","import { extend } from '../../vue';\nimport { NAME_DROPDOWN_ITEM } from '../../constants/components';\nimport { EVENT_NAME_CLICK } from '../../constants/events';\nimport { PROP_TYPE_ARRAY_OBJECT_STRING, PROP_TYPE_STRING } from '../../constants/props';\nimport { requestAF } from '../../utils/dom';\nimport { omit, sortKeys } from '../../utils/object';\nimport { makePropsConfigurable, makeProp, pluckProps } from '../../utils/props';\nimport { attrsMixin } from '../../mixins/attrs';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\nimport { props as props$1, BLink } from '../link/link';\n\n// --- Props ---\n\nconst linkProps = omit(props$1, ['event', 'routerTag']);\nconst props = makePropsConfigurable(sortKeys({\n ...linkProps,\n linkClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n variant: makeProp(PROP_TYPE_STRING)\n}), NAME_DROPDOWN_ITEM);\n\n// --- Main component ---\n\n// @vue/component\nconst BDropdownItem = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_ITEM,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n getBvDropdown: {\n default: () => () => null\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n bvDropdown() {\n return this.getBvDropdown();\n },\n computedAttrs() {\n return {\n ...this.bvAttrs,\n role: 'menuitem'\n };\n }\n },\n methods: {\n closeDropdown() {\n // Close on next animation frame to allow time to process\n requestAF(() => {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true);\n }\n });\n },\n onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n this.closeDropdown();\n }\n },\n render(h) {\n const {\n linkClass,\n variant,\n active,\n disabled,\n onClick,\n bvAttrs\n } = this;\n return h('li', {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: {\n role: 'presentation'\n }\n }, [h(BLink, {\n staticClass: 'dropdown-item',\n class: [linkClass, {\n [`text-${variant}`]: variant && !(active || disabled)\n }],\n props: pluckProps(linkProps, this.$props),\n attrs: this.computedAttrs,\n on: {\n click: onClick\n },\n ref: 'item'\n }, this.normalizeSlot())]);\n }\n});\n\nexport { BDropdownItem, props };\n","import { extend } from '../../vue';\nimport { NAME_DROPDOWN_ITEM_BUTTON } from '../../constants/components';\nimport { EVENT_NAME_CLICK } from '../../constants/events';\nimport { PROP_TYPE_BOOLEAN, PROP_TYPE_STRING, PROP_TYPE_ARRAY_OBJECT_STRING } from '../../constants/props';\nimport { makePropsConfigurable, makeProp } from '../../utils/props';\nimport { attrsMixin } from '../../mixins/attrs';\nimport { normalizeSlotMixin } from '../../mixins/normalize-slot';\n\n// --- Props ---\n\nconst props = makePropsConfigurable({\n active: makeProp(PROP_TYPE_BOOLEAN, false),\n activeClass: makeProp(PROP_TYPE_STRING, 'active'),\n buttonClass: makeProp(PROP_TYPE_ARRAY_OBJECT_STRING),\n disabled: makeProp(PROP_TYPE_BOOLEAN, false),\n variant: makeProp(PROP_TYPE_STRING),\n role: makeProp(PROP_TYPE_STRING, 'menuitem')\n}, NAME_DROPDOWN_ITEM_BUTTON);\n\n// --- Main component ---\n\n// @vue/component\nconst BDropdownItemButton = /*#__PURE__*/extend({\n name: NAME_DROPDOWN_ITEM_BUTTON,\n mixins: [attrsMixin, normalizeSlotMixin],\n inject: {\n getBvDropdown: {\n default: () => () => null\n }\n },\n inheritAttrs: false,\n props,\n computed: {\n bvDropdown() {\n return this.getBvDropdown();\n },\n computedAttrs() {\n return {\n ...this.bvAttrs,\n role: this.role,\n type: 'button',\n disabled: this.disabled,\n 'aria-selected': this.active ? 'true' : null\n };\n }\n },\n methods: {\n closeDropdown() {\n if (this.bvDropdown) {\n this.bvDropdown.hide(true);\n }\n },\n onClick(event) {\n this.$emit(EVENT_NAME_CLICK, event);\n this.closeDropdown();\n }\n },\n render(h) {\n const {\n active,\n variant,\n bvAttrs\n } = this;\n return h('li', {\n class: bvAttrs.class,\n style: bvAttrs.style,\n attrs: {\n role: 'presentation'\n }\n }, [h('button', {\n staticClass: 'dropdown-item',\n class: [this.buttonClass, {\n [this.activeClass]: active,\n [`text-${variant}`]: variant && !(active || this.disabled)\n }],\n attrs: this.computedAttrs,\n on: {\n click: this.onClick\n },\n ref: 'button'\n }, this.normalizeSlot())]);\n }\n});\n\nexport { BDropdownItemButton, props };\n","import { BDropdownItem } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-item';\nimport { BDropdownItemButton } from '../../../vendor/bootstrap-vue/src/components/dropdown/dropdown-item-button';\nimport { variantCssColorMap } from '../../../utils/constants';\nimport GlAvatar from '../avatar/avatar';\nimport GlButton from '../button/button';\nimport GlIcon from '../icon/icon';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlDropdownItem',\n components: {\n GlIcon,\n GlAvatar,\n GlButton\n },\n inheritAttrs: false,\n props: {\n avatarUrl: {\n type: String,\n required: false,\n default: ''\n },\n iconColor: {\n type: String,\n required: false,\n default: ''\n },\n iconName: {\n type: String,\n required: false,\n default: ''\n },\n iconRightAriaLabel: {\n type: String,\n required: false,\n default: ''\n },\n iconRightName: {\n type: String,\n required: false,\n default: ''\n },\n isChecked: {\n type: Boolean,\n required: false,\n default: false\n },\n isCheckItem: {\n type: Boolean,\n required: false,\n default: false\n },\n isCheckCentered: {\n type: Boolean,\n required: false,\n default: false\n },\n secondaryText: {\n type: String,\n required: false,\n default: ''\n },\n role: {\n type: String,\n required: false,\n default: null\n }\n },\n computed: {\n bootstrapComponent() {\n const {\n href,\n to\n } = this.$attrs;\n // Support 'href' and Vue Router's 'to'\n return href || to ? BDropdownItem : BDropdownItemButton;\n },\n bootstrapComponentProps() {\n const props = {\n ...this.$attrs\n };\n if (this.role) props.role = this.role;\n return props;\n },\n iconColorCss() {\n return variantCssColorMap[this.iconColor] || 'gl-fill-icon-default';\n },\n shouldShowCheckIcon() {\n return this.isChecked || this.isCheckItem;\n },\n checkedClasses() {\n if (this.isCheckCentered) {\n return '';\n }\n return 'gl-mt-3 gl-self-start';\n }\n },\n methods: {\n handleClickIconRight() {\n this.$emit('click-icon-right');\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.bootstrapComponent,_vm._g(_vm._b({tag:\"component\",staticClass:\"gl-dropdown-item\"},'component',_vm.bootstrapComponentProps,false),_vm.$listeners),[(_vm.shouldShowCheckIcon)?_c('gl-icon',{class:['gl-dropdown-item-check-icon', { 'gl-invisible': !_vm.isChecked }, _vm.checkedClasses],attrs:{\"name\":\"mobile-issue-close\",\"data-testid\":\"dropdown-item-checkbox\"}}):_vm._e(),_vm._v(\" \"),(_vm.iconName)?_c('gl-icon',{class:['gl-dropdown-item-icon', _vm.iconColorCss],attrs:{\"name\":_vm.iconName}}):_vm._e(),_vm._v(\" \"),(_vm.avatarUrl)?_c('gl-avatar',{attrs:{\"size\":32,\"src\":_vm.avatarUrl}}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"gl-dropdown-item-text-wrapper\"},[_c('p',{staticClass:\"gl-dropdown-item-text-primary\"},[_vm._t(\"default\")],2),_vm._v(\" \"),(_vm.secondaryText)?_c('p',{staticClass:\"gl-dropdown-item-text-secondary\"},[_vm._v(_vm._s(_vm.secondaryText))]):_vm._e()]),_vm._v(\" \"),(_vm.iconRightName)?_c('gl-button',{attrs:{\"size\":\"small\",\"icon\":_vm.iconRightName,\"aria-label\":_vm.iconRightAriaLabel || _vm.iconRightName},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.handleClickIconRight.apply(null, arguments)}}}):_vm._e()],1)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n"],"sourceRoot":""}